12021-03-25  Eli Zaretskii  <eliz@gnu.org>
2
3	* Version 27.2 released.
4
52021-03-18 Basil L. Contovounesios <contovob@tcd.ie>
6
7	Fix 'frame-inner-height' in non-GUI builds
8
9	Include tab bar in frame's inner height in non-GUI builds that
10	don't define 'tab-bar-height'.  This is consistent with the
11	inclusion of the menu bar in the calculated height.  It is also
12	consistent with TTY frames of GUI builds, for which
13	'tab-bar-height' is always zero anyway (bug#47234).
14	Fix suggested by Eli Zaretskii <eliz@gnu.org>.
15
16	* lisp/frame.el (frame-inner-height): Don't assume
17	'tab-bar-height' is defined in builds --without-x.
18
192021-03-18  Eli Zaretskii  <eliz@gnu.org>
20
21	* etc/HISTORY: Update for Emacs 27.2.
22
23	* README:
24	* configure.ac:
25	* nt/README.W32:
26	* msdos/sed2v2.inp: Set version to 27.2
27
282021-03-18  Lars Ingebrigtsen  <larsi@gnus.org>
29
30	Document that `buffer-string' retains text properties
31
32	* doc/lispref/text.texi (Buffer Contents): Mention text properties
33	in the `buffer-string' documentation.
34	* src/editfns.c (Fbuffer_string): Mention text properties in the
35	doc string (bug#47220).
36
37	(cherry picked from commit 60af754170f22f5d25510af069ed0ebfec95f992)
38
392021-03-17  Fabrice Bauzac  <noon@mykolab.com>
40
41	Remove duplicate @table item from ELisp manual
42
43	* doc/lispref/objects.texi (Special Read Syntax): Remove duplicate
44	item "#@N" from the table of Special Read Syntax.  (Bug#47200)
45
462021-03-14  Daniel Martín  <mardani29@yahoo.es>
47
48	Fix reference to 'diff-font-lock-syntax' in diff-mode documentation
49
50	* doc/emacs/files.texi (Diff Mode): Add the omitted name of the
51	variable.  (Bug#47129)
52
532021-03-14  Alan Third  <alan@idiocy.org>
54
55	Fix buffer overflow in xbm_scan (bug#47094)
56
57	* src/image.c (xbm_scan): Ensure reading a string doesn't overflow the
58	buffer.
59
60	(cherry picked from commit ebc3b25409dd614c1814a0643960452683e37aa3)
61
622021-03-13  Matt Armstrong  <matt@rfc20.org>
63
64	Fix typos and omissions for (elisp)Button Buffer Commands
65
66	* doc/lispref/display.texi (Button Buffer Commands): Minor
67	typo and omission fixes `backward-button' and
68	`forward-button'.  (Bug#47051)
69
702021-03-13  Eli Zaretskii  <eliz@gnu.org>
71
72	Teach Rmail about NBSP in "Re:"
73
74	* lisp/mail/rmail.el (rmail-simplified-subject)
75	(rmail-reply-regexp): Allow NBSP in "RE:" prefixes.
76
772021-03-12  Stefan Monnier  <monnier@iro.umontreal.ca>
78
79	Revert "* lisp/mouse.el: Fix mouse-1-clock-follows-mouse = double"
80
81	This reverts commit 02a5cfce471613f671722b35536d2a78f17b0429.
82	That commit breaks because of a missing patch to `parse_modifiers_uncached`
83	in `src/keyboard.c`.  IOW, too risky for `emacs-27`.
84
85	Don't merge to `master`.
86
872021-03-11  Stefan Monnier  <monnier@iro.umontreal.ca>
88
89	* lisp/mouse.el: Fix mouse-1-clock-follows-mouse = double
90
91	This functionality was broken by commit 3d5e31eceb9dc1fb62b2b2,
92	the problem being that we end up considering as distinct the events
93	`down-double-mouse-1` and `double-down-mouse-1`.
94
95	Reported by Eyal Soha <eyalsoha@gmail.com>
96
97	(mouse--click-1-maybe-follows-link): Make sure the last element of
98	the list passed to `event-convert-list` is indeed a "basic" event.
99
1002021-03-05  Stefan Monnier  <monnier@iro.umontreal.ca>
101
102	* lisp/emacs-lisp/gv.el (edebug-after): Don't run the getter in the setter
103
104	This fixes bug#46573 which was introduced by commit
105	d79cf638f278e50c22feb53d6ba556f5ce9d7853.
106	The new code is a middle ground, which makes sure the instrumentation
107	point is used (so the coverage checker won't have ghost unreachable
108	instrumentation points) yet without artificially running the getter
109	when we only need to run the setter.
110
1112021-03-05  Masahiro Nakamura  <tsuucat@icloud.com>
112
113	* doc/misc/tramp.texi (Remote shell setup): Fix reference. (Do not merge)
114
1152021-03-05  Eli Zaretskii  <eliz@gnu.org>
116
117	Fix initialization of 'while-no-input-ignore-events'
118
119	* src/keyboard.c (syms_of_keyboard_for_pdumper): Don't reset
120	'while-no-input-ignore-events' after loading the dump file.
121	(Bug#46940)
122
1232021-03-04  Eli Zaretskii  <eliz@gnu.org>
124
125	Update documentation of reading passwords
126
127	* doc/emacs/mini.texi (Passwords): Update to match the modified
128	implementation.  (Bug#46902)  Add indexing.
129
1302021-03-02  Lars Ingebrigtsen  <larsi@gnus.org>
131
132	Improve the 'dired-do-kill-lines' doc string
133
134	* lisp/dired-aux.el (dired-do-kill-lines): Document the FMT
135	parameter (bug#46867).
136
137	(cherry picked from commit b9cb3b904008a80c69ab433f4851377967b100db)
138
1392021-02-27  Eli Zaretskii  <eliz@gnu.org>
140
141	Avoid crashes in Mew due to corrupted tool-bar label
142
143	* src/gtkutil.c (update_frame_tool_bar): Don't keep around a
144	'char *' pointer to a Lisp string's contents when calling Lisp,
145	because that could relocate string data; keep the Lisp string
146	itself instead.  This avoids crashes in Mew.  (Bug#46791)
147
1482021-02-25  Stefan Kangas  <stefan@marxist.se>
149
150	* lisp/tooltip.el (tooltip): Doc fix for GTK.
151
1522021-02-20  Stefan Kangas  <stefan@marxist.se>
153
154	* lisp/help.el (help-for-help-internal): Doc fix; use imperative.
155
1562021-02-19  Eli Zaretskii  <eliz@gnu.org>
157
158	More accurate documentation of the "r" interactive spec
159
160	* doc/lispref/commands.texi (Interactive Codes): Describe the
161	effect of 'mark-even-if-inactive'.
162
1632021-02-19  Stefan Kangas  <stefan@marxist.se>
164
165	Mention the GNU Kind Communications Guidelines in the FAQ
166
167	* doc/misc/efaq.texi (Guidelines for newsgroup postings): Mention
168	the GNU Kind Communications Guidelines.
169
1702021-02-18  Ryan Prior  <rprior@protonmail.com>  (tiny change)
171
172	Allow newlines in password prompts again in comint
173
174	* lisp/comint.el (comint-password-prompt-regexp): Match all
175	whitespace (including newline) at the end of the passphrase, not
176	just space and \t (bug#46609).
177	(comint-watch-for-password-prompt): Remove trailing newlines from
178	the prompt (bug#46609).
179
1802021-02-16  Eli Zaretskii  <eliz@gnu.org>
181
182	Avoid point movement when visiting image files
183
184	* lisp/image-mode.el (image-toggle-display-image): Preserve point
185	around the call to exif-parse-buffer, to prevent it from moving
186	into the image data.  (Bug#46552)
187
1882021-02-10  Eli Zaretskii  <eliz@gnu.org>
189
190	Avoid assertion violation in callproc.c
191
192	* src/callproc.c (call_process): Avoid assertion violation when
193	DESTINATION is a cons cell '(:file . "FOO")'.  (Bug#46426)
194
1952021-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
196
197	Clarify "changes" in CONTRIBUTE
198
199	* CONTRIBUTE: Clarify that "changes" doesn't include removing code
200	(bug#44834).
201
202	(cherry picked from commit 33c9556c9db9b8c62dcd80dd3cc665e669ea66d4)
203
2042021-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
205
206	Clarify when activate-mark-hook is run
207
208	* doc/lispref/markers.texi (The Mark):
209	* lisp/simple.el (activate-mark-hook): Clarify when the hook is
210	run (bug#23444).
211
2122021-02-07  Eli Zaretskii  <eliz@gnu.org>
213
214	Fix language-environment and font selection on MS-Windows
215
216	These changes improve setting the language-environment and font
217	selection when MS-Windows returns useless "ZZZ" as the "language
218	name", which then disrupts all the setup of the locale-dependent
219	stuff, and in particular font selection.
220	* lisp/w32-fns.el (w32-charset-info-alist): Add an element for
221	"iso8859-5", in case LANG is set to something unusable, like
222	"ZZZ".  This allows fonts capable of displaying Cyrillic
223	characters to be used even when language preferences are screwed.
224
225	* src/w32.c (init_environment): If GetLocaleInfo returns "ZZZ" as
226	the "language name" for LOCALE_USER_DEFAULT, try again with locale
227	ID based on what GetUserDefaultUILanguage returns.  (Bug#39286)
228
2292021-02-07  Petteri Hintsanen  <petterih@iki.fi>
230
231	Fix example in Sequence Functions node in the manual
232
233	* doc/lispref/sequences.texi (Sequence Functions): Fix the result
234	from the example.
235
2362021-02-06  Eli Zaretskii  <eliz@gnu.org>
237
238	Improve doc string of 'text-scale-adjust'
239
240	* lisp/face-remap.el (text-scale-adjust): Clarify that "default
241	face height" refers to the 'default' face.  (Bug#25168)
242
2432021-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
244
245	Clarify the indent-rigidly doc string
246
247	* lisp/indent.el (indent-rigidly): Clarify exiting the transient
248	mode (bug#46296).
249
2502021-02-06  Martin Rudalics  <rudalics@gmx.at>
251
252	Fix two small tab bar issues
253
254	* lisp/cus-start.el (frame-inhibit-implied-resize): Update version tag.
255	* lisp/frame.el (frame-inner-height): Do not count in tab bar.
256
2572021-02-05  Eli Zaretskii  <eliz@gnu.org>
258
259	Fix last change in syntax.texi
260
261	* doc/lispref/syntax.texi (Syntax Properties): Fix wording in last
262	change.  (Bug#46274)
263
2642021-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
265
266	Correct the lispref manual about flushing ppss info
267
268	* doc/lispref/syntax.texi (Syntax Properties): Correct the
269	information about flushing the state by copying the text from the
270	doc string (bug#46274).
271
272	(cherry picked from commit ff701ce2b261acce1dfcd1fe137268d87d5eab35)
273
2742021-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
275
276	Clarify how transient indentation modes are exited in the manual
277
278	* doc/emacs/indent.texi (Indentation Commands): Clarify that the
279	other keys don't just exit the transient mode, but are also
280	handled as normally (bug#46296).
281
2822021-02-04  Dmitry Gutov  <dgutov@yandex.ru>
283
284	Fix the previous change
285
286	* lisp/progmodes/project.el (project-find-regexp):
287	Fix the previous change (project-root is not defined in this version).
288	(project-or-external-find-regexp): Same.
289
2902021-02-04  Dmitry Gutov  <dgutov@yandex.ru>
291
292	Bind default-directory to the project root
293
294	* lisp/progmodes/project.el (project-find-regexp):
295	Bind default-directory to the project root, to save this value
296	in the resulting buffer (esp. if the project selector was used,
297	(https://lists.gnu.org/archive/html/emacs-devel/2021-02/msg00140.html).
298	(project-or-external-find-regexp): Same.
299
300	(cherry picked from commit c07ebfcbe084e8219d8c2588f23f77ba4ef39087)
301
3022021-02-04  Dmitry Gutov  <dgutov@yandex.ru>
303
304	Make sure default-directory relates to the originating buffer
305
306	* lisp/progmodes/xref.el (xref--show-xref-buffer):
307	Pick up default-directory value from the caller
308	(https://lists.gnu.org/archive/html/emacs-devel/2021-01/msg00551.html).
309	(xref-show-definitions-buffer-at-bottom): Same.
310
311	(cherry picked from commit 6e73e07a6f5cbdd1c5ae6e0f3fbd0f8f56813f1a)
312
3132021-02-04  Eli Zaretskii  <eliz@gnu.org>
314
315	Initialize signal descriptions after pdumping
316
317	* src/sysdep.c (init_signals) [!HAVE_DECL_SYS_SIGLIST]: Reinit
318	sys_siglist also after pdumping.  (Bug#46284)
319
3202021-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
321
322	Clarify the "Sentinels" node in the lispref manual
323
324	* doc/lispref/processes.texi (Sentinels): Mention "run" and that
325	the strings can be anything (bug#30461).
326
327	(cherry picked from commit 859a4cb6b22f75a3456e29d08fcfe9b8940fbe8b)
328
3292021-02-04  Alexandre Duret-Lutz  <adl@lrde.epita.fr>  (tiny change)
330
331	Fix problem with non-ASCII characters in nnmaildir
332
333	* lisp/gnus/nnmaildir.el (nnmaildir-request-article): Enable
334	multipart 8bit-content-transfer-encoded files to be displayed
335	correctly by reading as `raw-text' instead of having Emacs
336	(incorrectly) decode the files (bug#44307).
337
3382021-02-02  Eli Zaretskii  <eliz@gnu.org>
339
340	* lisp/window.el (recenter-top-bottom): Clarify doc string.
341
3422021-01-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
343
344	url-http.el: Special-case NTLM authentication
345
346	* lisp/url/url-http.el (url-http-handle-authentication): Do not
347	signal an error on NTLM authorization strings.  (Bug#43566)
348
3492021-01-31  Juri Linkov  <juri@linkov.net>
350
351	* lisp/isearch.el (isearch-lazy-highlight): Fix defcustom type (bug#46208)
352
3532021-01-30  Stefan Kangas  <stefan@marxist.se>
354
355	Sync latest SKK-JISYO.L
356
357	* leim/SKK-DIC/SKK-JISYO.L: Sync to current upstream version.
358
3592021-01-30  Alan Third  <alan@idiocy.org>
360
361	Fix build failure on macOS 10.7 (bug#46036)
362
363	* src/nsfns.m (ns_set_represented_filename): Define the NSNumber in a
364	more compatible manner.
365
3662021-01-30  Eli Zaretskii  <eliz@gnu.org>
367
368	Improve documentation of auto-resize-tool/tab-bars
369
370	* src/xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>
371	<auto-resize-tab-bars>: Doc fix.  (Bug#46178)
372
3732021-01-29  Dmitry Gutov  <dgutov@yandex.ru>
374
375	(xref-revert-buffer): Also 'erase-buffer' when handling a user-error
376
377	* lisp/progmodes/xref.el (xref-revert-buffer):
378	Also 'erase-buffer' when handling a user-error (bug#46042).
379
380	(cherry picked from commit e86b30d6fd04070b86560774ec82392dbe24ca1e)
381
3822021-01-29  Eli Zaretskii  <eliz@gnu.org>
383
384	Update files for 27.1.91 pretest
385
386	* ChangeLog.3:
387	* etc/AUTHORS
388	* lisp/ldefs-boot.el: Update.
389
3902021-01-29  Eli Zaretskii  <eliz@gnu.org>
391
392	Bump Emacs version to 27.1.91
393
394		* README:
395		* configure.ac:
396		* nt/README.W32:
397		* msdos/sed2v2.inp: Bump Emacs version to 27.1.91.
398
3992021-01-27  Eli Zaretskii  <eliz@gnu.org>
400
401	Improve documentation of 'read-regexp' and friends
402
403	* doc/emacs/glossary.texi (Glossary): Add "Tag" to the Glossary.
404	* doc/emacs/maintaining.texi (Xref): Mention that identifiers are
405	also known as "tags".
406
407	* lisp/replace.el (read-regexp, read-regexp-suggestions): Improve
408	wording of doc strings.  (Bug#46088)  (Bug#46089)
409
410	(cherry picked from commit 49eb03d6c8a181fd46adbbcf1f0a976d0a9efa87)
411
4122021-01-27  Lars Ingebrigtsen  <larsi@gnus.org>
413
414	read-regexp-suggestions doc string improvement
415
416	* lisp/replace.el (read-regexp-suggestions): Add a link to the
417	manual to explain what a tag is (bug#46089).
418
419	(cherry picked from commit f9cc2d48246fe8370e9286866e6115ba8e2acf44)
420
4212021-01-27  Lars Ingebrigtsen  <larsi@gnus.org>
422
423	Try to improve the read-regexp doc string
424
425	* lisp/replace.el (read-regexp): Attempt to clarify the semantics
426	(bug#46088).
427
428	(cherry picked from commit eded2a7ad7d456a417354a2797c18e9a578414d7)
429
4302021-01-23  Dmitry Gutov  <dgutov@yandex.ru>
431
432	Erase the buffer only after fetching the new contents
433
434	* lisp/progmodes/xref.el (xref-revert-buffer):
435	Erase the buffer only after fetching the new contents (bug#46042).
436
437	(cherry picked from commit 5821dee0949b2913c07970d6e4b8bb8e8a35f036)
438
4392021-01-23  Eli Zaretskii  <eliz@gnu.org>
440
441	Fix last change
442
443	* doc/lispref/text.texi (Undo): Add a cross-reference to the
444	description of 'undo-amalgamate-change-group'.
445	(Atomic Changes): Expand and improve the description of
446	'undo-amalgamate-change-group'.  (Bug#42303)
447
4482021-01-23  Lars Ingebrigtsen  <larsi@gnus.org>
449
450	Mention undo-amalgamate-change-group in the lispref manual
451
452	* doc/lispref/text.texi (Atomic Changes): Mention
453	undo-amalgamate-change-group (bug#42303).
454
455	(cherry picked from commit ba25a82855a2c03c25fec83f3056c166b692e94f)
456
4572021-01-22  Eli Zaretskii  <eliz@gnu.org>
458
459	Avoid sending systemd shutdown notifications if non-daemon
460
461	* src/emacs.c (Fkill_emacs): Send the shutdown notification only
462	in daemon mode.  (Bug#46022)
463
4642021-01-22  Eli Zaretskii  <eliz@gnu.org>
465
466	* src/cmds.c (Fforward_line): Doc fix.  (Bug#46027)
467
4682021-01-22  Eli Zaretskii  <eliz@gnu.org>
469
470	Improve documentation of sendmail.el defcustom's
471
472	* lisp/mail/sendmail.el (mail-archive-file-name)
473	(mail-default-reply-to, mail-self-blind, mail-default-headers):
474	Say in the doc string that 'message-default-mail-headers' shall be
475	customized when using 'message-mode' for email composition.
476	(Bug#46029)
477
4782021-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
479
480	Don't let `maybe_quit` prevent resetting `consing_until_gc` (bug#43389)
481
482	* src/alloc.c (garbage_collect): Postpone `unblock_input` a bit.
483	* src/window.c (window_parameter): Avoid `maybe_quit`.
484
485	cherry picked from commit 420661af07448857f0a17e15dc27bceeb6aff541
486
4872021-01-13  Juri Linkov  <juri@linkov.net>
488
489	Remove one of recently added warnings abound binding keys in Isearch maps
490
491	* lisp/isearch.el (minibuffer-local-isearch-map): Remove comments
492	which warn against wantonly rebinding unbound keys from
493	irrelevant keymap.
494	https://lists.gnu.org/archive/html/emacs-devel/2021-01/msg00259.html
495
4962021-01-10  Martin Rudalics  <rudalics@gmx.at>
497
498	Fix assertion failure in window_box_height (Bug#45737)
499
500	* lisp/window.el (window-sizable): Don't try to grow a mini window
501	when the root window's minimum height is already larger than its
502	actual height (Bug#45737).
503
5042021-01-09  Eli Zaretskii  <eliz@gnu.org>
505
506	Fix cl-concatenate inlining
507
508	* lisp/emacs-lisp/seq.el (seq-concatenate): Auto-load it.  Do not
509	merge to master.  (Bug#45610)
510
5112021-01-09  Tak Kunihiro  <tkk@misasa.okayama-u.ac.jp>
512
513	Fix infloop in 'pixel-scroll-mode'
514
515	* lisp/pixel-scroll.el (pixel-scroll-up, pixel-scroll-down): Avoid
516	inflooping when 'vertical-motion' doesn't move.  (Bug#45628)
517
5182021-01-08  Eli Zaretskii  <eliz@gnu.org>
519
520	Fix inhibiting the default.el loading in user init file
521
522	* lisp/startup.el (startup--load-user-init-file): Test the value
523	of 'inhibit-default-init', not just the LOAD-DEFAULTS argument,
524	because loading the user's init file could have set the value of
525	the former.
526	(command-line): Call 'startup--load-user-init-file' with last arg
527	t: there's no longer any need to test the value of
528	'inhibit-default-init' here, as it will be tested by the called
529	function.  (Bug#45708)
530
5312021-01-07  Lars Ingebrigtsen  <larsi@gnus.org>
532
533	Fix problem with 8bit content-transfer-encoding in nndoc mbox files
534
535	* lisp/gnus/nndoc.el (nndoc-possibly-change-buffer): If we're
536	reading an mbox file, it may contain messages that use
537	content-transfer-encoding 8bit, which means that we have to treat
538	the file as a sequence of byte (bug#42951).  This avoids
539	double-decoding -- once by Emacs when inserting the mbox into the
540	buffer, and once by Gnus when displaying the articles.
541
5422021-01-05  Michael Albinus  <michael.albinus@gmx.de>
543
544	* doc/misc/tramp.texi (Quick Start Guide): Fix thinko.
545
5462021-01-05  Robert Pluim  <rpluim@gmail.com>
547
548	Tell people how to remove fontconfig customizations
549
5502021-01-04  Simen Heggestøyl  <simenheg@gmail.com>
551
552	Remove extraneous closing paren
553
554	* doc/lispref/modes.texi (SMIE Indentation Example): Remove extraneous
555	closing paren.
556
5572021-01-04  Mauro Aranda  <maurooaranda@gmail.com>
558
559	Update two user option names in the Widget manual
560
561	* doc/misc/widget.texi (Basic Types): The user options
562	widget-glyph-directory and widget-glyph-enable were renamed long ago
563	to widget-image-directory and widget-image-enable, but the manual
564	kept calling them by their old names.  Update the names.
565
5662021-01-03  Paul Eggert  <eggert@cs.ucla.edu>
567
568	Mention -lcurses problem on AIX
569
570	* etc/PROBLEMS: Describe problem with Emacs 27 and -lcurses.
571	Do not merge to master.
572
5732021-01-03  Paul Eggert  <eggert@cs.ucla.edu>
574
575	Revert previous patch which was installed into wrong branch.
576
5772021-01-03  Paul Eggert  <eggert@cs.ucla.edu>
578
579	Fix broken build on AIX 7.2
580
581	Without this fix, the build on AIX 7.2 with xlc fails in the ‘CCLD
582	temacs’ step with the diagnostic ‘ld: 0711-317 ERROR: Undefined
583	symbol: BC’.  This is because -lcurses does not define BC etc.
584	* configure.ac: When building terminfo.o, define
585	TERMINFO_DEFINES_BC if the library defines BC etc.
586	* src/terminfo.c (UP, BC, PC): Define depending on
587	TERMINFO_DEFINES_BC, not on TERMINFO.
588
5892021-01-02  Eli Zaretskii  <eliz@gnu.org>
590
591	Fix last change
592
593	* doc/lispref/strings.texi (Creating Strings): Improve wording of
594	last change.  (Bug#45516)
595
5962021-01-02  Lars Ingebrigtsen  <larsi@gnus.org>
597
598	Add a reference between the Strings node and Search/Replace
599
600	* doc/lispref/strings.texi (Creating Strings): Mention
601	string-replace/replace-regexp-in-string (bug#45516).
602
603	(cherry picked from commit b9359d4183a1a6923122d3aa12b922ab89693354)
604
6052021-01-01  Eli Zaretskii  <eliz@gnu.org>
606
607	Add warning comments abound binding keys in Isearch maps
608
609	* lisp/isearch.el (isearch-mode-map)
610	(minibuffer-local-isearch-map): Add comments which warn against
611	wantonly rebinding unbound keys.
612
6132021-01-01  Alan Third  <alan@idiocy.org>
614
615	Fix crash in ns_mouse_position (bug#45541)
616
617	* src/nsterm.m (ns_mouse_position): Explicitly initialize f to NULL.
618
6192021-01-01  Paul Eggert  <eggert@cs.ucla.edu>
620
621	Fix copyright years by hand
622
623	These are dates that admin/update-copyright did not update.
624
6252021-01-01  Paul Eggert  <eggert@cs.ucla.edu>
626
627	Update copyright year to 2021
628
629	Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
630
6312020-12-31  Eli Zaretskii  <eliz@gnu.org>
632
633	Improve documentation of 'network-lookup-address-info'
634
635	* src/process.c (Fnetwork_lookup_address_info):
636	* doc/lispref/processes.texi (Misc Network): Document the error
637	message emitted by 'network-lookup-address-info' when it fails.
638
6392020-12-28  Amin Bandali  <bandali@gnu.org>
640
641	Display messages sent using ERC's /say
642
643	* lisp/erc/erc.el (erc-cmd-SAY): Call `erc-display-msg' to display the
644	user's message in the buffer, just like other [non-command] messages.
645
646	https://lists.gnu.org/r/help-gnu-emacs/2020-12/msg00066.html
647
6482020-12-26  Eli Zaretskii  <eliz@gnu.org>
649
650	Fix Rmail summary display when From: header is malformed
651
652	* lisp/mail/rmailsum.el (rmail-header-summary): Remove newlines
653	from the "From:" value, to avoid producing corrupted summary
654	display.
655
6562020-12-25  Eli Zaretskii  <eliz@gnu.org>
657
658	Add more details to the "word processor" section
659
660	* etc/TODO (Emacs as word processor): Add more details based on
661	recent discussions.
662
6632020-12-23  Philipp Stephani  <phst@google.com>
664
665	* src/Makefile.in (DO_CODESIGN): Fix expected architecture name.
666
6672020-12-23  Itai Seggev  <is+apple@cs.hmc.edu>  (tiny change)
668
669	Codesign the executable on recene MacOS systems
670
671	* src/Makefile.in (temacs$(EXEEXT)): Codesign the executable on
672	recent (ARM) MacOS systems (bug#43878).  Without this, building
673	Emacs fails.
674
6752020-12-23  Lars Ingebrigtsen  <larsi@gnus.org>
676
677	Support build of Emacs on ARM Macos machines
678
679	* configure.ac: Add support for aarch64-* on Macos (i.e., 64-bit
680	ARM) (bug#43369).
681
6822020-12-22  Bastien Guerry  <bzg@gnu.org>
683
684	Update to Org 9.4.4
685
6862020-12-21  Stefan Kangas  <stefan@marxist.se>
687
688	* lisp/so-long.el: Decrease use of passive voice.
689
690	Suggested by Richard Stallman <rms@gnu.org>.
691
6922020-12-21  Stefan Kangas  <stefan@marxist.se>
693
694	* doc/misc/efaq.texi (New in Emacs 27): Add section.
695
696	* doc/misc/efaq.texi (Latest version of Emacs): Bump version.
697
6982020-12-19  Eli Zaretskii  <eliz@gnu.org>
699
700	* lisp/face-remap.el (face-remap-set-base): Doc fix.  (Bug#45264)
701
7022020-12-19  Vasilij Schneidermann  <mail@vasilij.de>
703
704	Correct argument order in comment
705
706	* etc/ETAGS.EBNF (position): Correct comment.
707
7082020-12-18  Eli Zaretskii  <eliz@gnu.org>
709
710	Update files for the 27.1.90 pretest
711
712	* README:
713	* configure.ac:
714	* nt/README.W32:
715	* msdos/sed2v2.inp: Bump Emacs version to 27.1.90.
716	* lisp/ldefs-boot.el: Update from loaddefs.el
717
7182020-12-18  Eli Zaretskii  <eliz@fencepost.gnu.org>
719
720	* README:
721	* configure.ac:
722	* nt/README.W32:
723	* msdos/sed2v2.inp: Bump Emacs version to 27.1.90.
724
7252020-12-18  Eli Zaretskii  <eliz@gnu.org>
726
727	Minor fixes in authors.el and in tarball-making instructions
728
729	* admin/authors.el (authors): Make the error message more helpful.
730	(authors-ignored-files, authors-renamed-files-alist): Update.
731
7322020-12-16  Eli Zaretskii  <eliz@gnu.org>
733
734	Improve documentation of 'query-replace'
735
736	* doc/emacs/search.texi (Query Replace): Add 'E' to the list of
737	characters one can type at 'query-replace' prompt.  (Bug#45273)
738
7392020-12-16  Bastien Guerry  <bzg@gnu.org>
740
741	Update to Org 9.4.3
742
743	Fix #45259
744
7452020-12-14  Alan Third  <alan@idiocy.org>
746
747	Fix error with fn key in NS port (bug#44533)
748
749	* src/nsterm.m ([EmacsView keyDown:]): Move the correction for fn key
750	handling to before the modifiers are calculated.
751
752	(cherry picked from commit 7970610d48701a949ce443c94c71eac47d044197)
753
7542020-12-14  Eli Zaretskii  <eliz@gnu.org>
755
756	Fix point location when completing in gdb-mi.el
757
758	* lisp/progmodes/gdb-mi.el (def-gdb-auto-update-handler): Don't
759	force window-start position, so that redisplay doesn't move point
760	when popping completion window below the GUD one.  (Bug#45052)
761
7622020-12-13  Bastien Guerry  <bzg@gnu.org>
763
764	Update to Org 9.4.2
765
766	Mostly fixing compiler warnings.
767
7682020-12-13  Bastien Guerry  <bzg@gnu.org>
769
770	Update to Org 9.4.1
771
7722020-12-12  Alan Third  <alan@idiocy.org>
773
774	Fix crash in ns_mouse_position (bug#44313)
775
776	* src/nsterm.m (ns_destroy_window): Close the window before freeing
777	the frame resources so we don't end up accessing the frame struct
778	after it's been freed.
779
780	(cherry picked from commit 18a7267c32a909bb26bd93d24543155aeb10e042)
781
7822020-12-12  Alan Third  <alan@idiocy.org>
783
784	Fix crash when using XRender and restoring image from X (bug#44930)
785
786	* src/dispextern.h (struct image): Add original dimension elements.
787	* src/image.c (image_set_transform): Store the original dimensions.
788	(image_get_x_image): If we're using transforms use the original
789	dimensions with XGetImage.
790
7912020-12-11  Tassilo Horn  <tsdh@gnu.org>
792
793	Bind k to image-kill-buffer in doc-view-mode-map.
794
795	* lisp/doc-view.el (doc-view-mode-map): Bind k to image-kill-buffer.
796	The binding k -> doc-view-kill-proc-and-buffer has been removed in
797	2015 and the function been made an obsolete function alias to
798	image-kill-buffer (bug#45157).
799
8002020-12-09  Serge Tupchii  <serge.tupchii@protonmail.com>  (tiny change)
801
802	Fix crash (segfault) in etags on generating tags for Erlang files
803
804	* lib-src/etags.c: Set allocated and lastlen to zero, after
805	freeing last ptr in Erlang_functions to prevent dereferencing NULL
806	pointer (bug#45122).
807
808
809	(cherry picked from commit 2d8f0364fcd1d5dad2b82dd3a9af870b03854547)
810
8112020-12-09  Stefan Kangas  <stefan@marxist.se>
812
813	Update publicsuffix.txt from upstream
814
815	* etc/publicsuffix.txt: Update from
816	https://publicsuffix.org/list/public_suffix_list.dat
817	dated 2020-11-30 21:57:25 UTC.
818
8192020-12-06  Juri Linkov  <juri@linkov.net>
820
821	* lisp/vc/vc.el: Update args of backend API calls in the header comments
822
823	https://lists.gnu.org/archive/html/emacs-devel/2020-12/msg00283.html
824
8252020-12-06  Juri Linkov  <juri@linkov.net>
826
827	Backport Handle read-char-from-minibuffer and y-or-n-p from pre-command-hook
828
829	* lisp/subr.el (read-char-from-minibuffer-insert-char)
830	(read-char-from-minibuffer-insert-other, y-or-n-p-insert-y)
831	(y-or-n-p-insert-n, y-or-n-p-insert-other):
832	Check for 'minibufferp' before executing the body.
833	(read-char-from-minibuffer, y-or-n-p): Let-bind this-command
834	before calling read-from-minibuffer.  (Bug#45029)
835
8362020-12-06  Eli Zaretskii  <eliz@gnu.org>
837
838	Improve documentation of streams in batch mode
839
840	* doc/lispref/os.texi (Batch Mode):
841	* doc/lispref/streams.texi (Input Streams, Output Streams): Better
842	documentation of I/O streams in batch mode, with more
843	cross-references.
844
8452020-12-06  Eli Zaretskii  <eliz@gnu.org>
846
847	Support ks_c_5601-1987 encoding
848
849	* lisp/language/korean.el (ks_c_5601-1987): Define as an alias for
850	'korean-iso-8bit.  (It is sometimes used in email messages.)
851
8522020-12-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
853
854	Fix Xaw widget text disappearing when built with cairo (bug#43418)
855
856	* lwlib/lwlib-utils.c (crxft_font_open_name): Use FcFontMatch to
857	get a pattern to pass to cairo_ft_font_face_create_for_pattern.
858
8592020-12-05  Eli Zaretskii  <eliz@gnu.org>
860
861	Improve documentation of 'ps-print-color-p'
862
863	* doc/emacs/misc.texi (PostScript Variables): Improve and clarify
864	the description of 'ps-print-color-p'.  (Bug#44962)
865
8662020-11-30  Dmitry Gutov  <dgutov@yandex.ru>
867
868	Reset xref-show-xrefs-function temporarily
869
870	* lisp/dired-aux.el (dired-do-find-regexp-and-replace):
871	Make sure xref-show-xrefs-function has the necessary value (bug#44905).
872
8732020-11-30  Eli Zaretskii  <eliz@gnu.org>
874
875	Don't show in 'view-lossage' responses to xterm feature queries
876
877	* lisp/term/xterm.el (xterm--read-event-for-query): Prevent
878	recording the characters read as the xterm response to a query,
879	so as not to show them in 'view-lossage'.  (Bug#44908)
880
8812020-11-30  Michael Albinus  <michael.albinus@gmx.de>
882
883	Adapt Tramp versions.  Do not merge
884
885	* doc/misc/tramp.texi (Obtaining @value{tramp})
886	(Remote shell setup, Remote processes, Archive file names):
887	* doc/misc/trampver.texi:
888	* lisp/net/tramp.el:
889	* lisp/net/trampver.el (tramp-version)
890	(customize-package-emacs-version-alist): Adapt Tramp versions.
891
8922020-11-29  Akira Kyle  <akira@akirakyle.com>
893
894	Return the correct suffix in eww-make-unique-file-name
895
896	* lisp/net/eww.el (eww-make-unique-file-name): Return the correct
897	suffix (bug#44936).
898
8992020-11-28  Karl Fogel  <kfogel@red-bean.com>
900
901	Save bookmarks by using `write-file' (bug#12507)
902
903	Go back to using `write-file' to save bookmarks, instead of using
904	`write-region'.  This means numbered backups of the bookmark file may
905	get made again, depending on the value of `bookmark-version-control'.
906
907	Thanks especially to Drew Adams and Eli Zaretskii for their
908	persistence in tracking down information relevant to this change.
909
9102020-11-28  Eli Zaretskii  <eliz@gnu.org>
911
912	Fix filing messages when 'rmail-output-reset-deleted-flag' is non-nil
913
914	* lisp/mail/rmailout.el (rmail-output): Fix off-by-one error in
915	deciding when to advance to the next message under non-nil
916	'rmail-output-reset-deleted-flag'.  (Bug#44839)
917
9182020-11-28  Michael Albinus  <michael.albinus@gmx.de>
919
920	Make file copying in tramp-gvfs more robust
921
922	* test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
923	(tramp-test12-rename-file): Do not skip for tramp-gvfs.el.
924
925	* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
926	Add sanity checks.
927
9282020-11-28  Eli Zaretskii  <eliz@gnu.org>
929
930	Revert "Fix incorrect handling of module runtime and environment pointers."
931
932	This reverts commit cdc632fbe6e149318147a98cccf1b7af191f2ce8.
933	Those changes are too significant and non-trivial to be
934	suitable for a release branch at this time.
935
9362020-11-27  Philipp Stephani  <phst@google.com>
937
938	Fix incorrect handling of module runtime and environment pointers.
939
940	We used to store module runtime and environment pointers in the static
941	lists Vmodule_runtimes and Vmodule_environments.  However, this is
942	incorrect because these objects have to be kept per-thread.  With this
943	naive approach, interleaving module function calls in separate threads
944	leads to environments being removed in the wrong order, which in turn
945	can cause local module values to be incorrectly garbage-collected.
946
947	Instead, turn Vmodule_runtimes and Vmodule_environments into
948	hashtables keyed by the thread objects.  The fix is relatively
949	localized and should therefore be safe enough for the release branch.
950
951	Module assertions now have to walk the pointer list for the current
952	thread, which is more correct since they now only find environments
953	for the current thread.
954
955	Also add a unit test that exemplifies the problem.  It interleaves two
956	module calls in two threads so that the first call ends while the
957	second one is still active.  Without this change, this test triggers
958	an assertion failure.
959
960	* src/emacs-module.c (Fmodule_load, initialize_environment)
961	(finalize_environment, finalize_runtime_unwind): Store runtime and
962	environment pointers in per-thread lists.
963	(syms_of_module): Initialize runtimes and environments hashtables.
964	(module_assert_runtime, module_assert_env, value_to_lisp): Consider
965	only objects for the current thread.
966	(module_gc_hash_table_size, module_hash_push, module_hash_pop): New
967	generic hashtable helper functions.
968	(module_objects, module_push_pointer, module_pop_pointer): New helper
969	functions to main thread-specific lists of runtime and environment
970	pointers.
971	(mark_modules): Mark all environments in all threads.
972
973	* test/data/emacs-module/mod-test.c (Fmod_test_funcall): New test
974	function.
975	(emacs_module_init): Bind it.
976
977	* test/src/emacs-module-tests.el (emacs-module-tests--variable): New
978	helper type to guard access to state in a thread-safe way.
979	(emacs-module-tests--wait-for-variable)
980	(emacs-module-tests--change-variable): New helper functions.
981	(emacs-module-tests/interleaved-threads): New unit test.
982
9832020-11-26  Alan Mackenzie  <acm@muc.de>
984
985	CC Mode: Fix error in cache handling.  This fixes bug #43481
986
987	* lisp/progmodes/cc-engine.el (c-full-pp-to-literal): Handle correctly END
988	being before HERE by using parse-partial-sexp to get the end of the literal
989	containing HERE.
990
9912020-11-25  Martin Rudalics  <rudalics@gmx.at>
992
993	Revert extra focus redirection in do_switch_frame (Bug#24803)
994
995	* src/frame.c (do_switch_frame): Do not also redirect frame
996	focus when FRAME has its minibuffer window on the selected
997	frame which was intended to fix Bug#24500.  It may cause
998	Bug#24803 and lead to a nasty state where no active cursor is
999	shown on any frame, see
1000	https://lists.gnu.org/archive/html/emacs-devel/2020-11/msg01137.html.
1001
10022020-11-25  Michael Albinus  <michael.albinus@gmx.de>
1003
1004	Minor cleanup of tramp-tests.el on MS Windows
1005
1006	* test/lisp/net/tramp-tests.el (tramp-test29-start-file-process):
1007	Do not test remote pty on MS Windows.
1008
10092020-11-24  Basil L. Contovounesios  <contovob@tcd.ie>
1010
1011	Fix handling of defcustom :local tag
1012
1013	For discussion, see the following emacs-devel thread:
1014	https://lists.gnu.org/r/emacs-devel/2020-11/msg00734.html
1015
1016	* lisp/custom.el (custom-declare-variable): Delay call to
1017	make-variable-buffer-local until after user option has been
1018	initialized with a value.  Otherwise the user option may be
1019	initialized to nil.
1020	* test/lisp/custom-tests.el (custom--test-local-option)
1021	(custom--test-permanent-option): New :local user options.
1022	(custom-test-local-option): New test for defcustom :local keyword.
1023
10242020-11-24  Alan Mackenzie  <acm@muc.de>
1025
1026	CC Mode.  Fix an off by one error.  Fixes bug #41809
1027
1028	* lisp/progmodes/cc-engine.el (c-full-pp-to-literal): Change > to >= (twice).
1029
10302020-11-24  Eli Zaretskii  <eliz@gnu.org>
1031
1032	Fix display artifacts when 'display' properties cover newlines
1033
1034	* src/xdisp.c (pos_visible_p): Set glyph_row of scratch iterators
1035	to NULL, to avoid producing glyphs while we figure out the layout.
1036	(Bug#44826)
1037
10382020-11-23  Stefan Kangas  <stefankangas@gmail.com>
1039
1040	Sync latest SKK-JISYO.L
1041
1042	* leim/SKK-DIC/SKK-JISYO.L: Sync to current upstream version.
1043
1044	(cherry picked from commit 6a5f9700846551a7f3795e257356dbab865116f4)
1045
10462020-11-23  Stefan Kangas  <stefan@marxist.se>
1047
1048	Update publicsuffix.txt from upstream
1049
1050	* etc/publicsuffix.txt: Update from
1051	https://publicsuffix.org/list/public_suffix_list.dat
1052	dated 2020-10-09 08:23:34 UTC.
1053
1054	(cherry picked from commit 5b13afab0a903ead8363482529019d4fb80ec4b4)
1055
10562020-11-21  Michael Albinus  <michael.albinus@gmx.de>
1057
1058	Fix Bug#44481
1059
1060	* lisp/net/tramp.el (tramp-system-name): New defconst.
1061	(tramp-default-host, tramp-restricted-shell-hosts-alist)
1062	(tramp-local-host-regexp):
1063	* lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.  (Bug#44481)
1064
10652020-11-21  Lars Ingebrigtsen  <larsi@gnus.org>
1066
1067	Minor Edebug manual keystroke clarifications
1068
1069	* doc/lispref/edebug.texi (Edebug Misc): Also mention the `a'
1070	binding to abort (bug#44697).  Also fix `d' function reference, and
1071	add `P' reference.
1072
1073	(cherry picked from commit b613f25f97abf756101eaa2af90689a19c0b3350)
1074
10752020-11-21  Eli Zaretskii  <eliz@gnu.org>
1076
1077	Make ignoring modifiers on IME input optional
1078
1079	By default, ignore modifier keys on IME input, but add
1080	a variable to get back old behavior.
1081	* src/w32fns.c (syms_of_w32fns): New variable
1082	w32-ignore-modifiers-on-IME-input.
1083	(w32_wnd_proc): Use it to ignore modifier keys when IME input is
1084	used.  (Bug#44641)
1085
1086	* etc/NEWS: Announce the change and the new variable.
1087
10882020-11-21  Masahiro Nakamura  <tsuucat@icloud.com>
1089
1090	Ignore modifiers when processing WM_IME_CHAR messages
1091
1092	* src/w32fns.c (w32_wnd_proc): Ignore modifiers when processing
1093	WM_IME_CHAR messages.
1094
10952020-11-19  Eli Zaretskii  <eliz@gnu.org>
1096
1097	Improve documentation of 'font-spec'
1098
1099	* doc/lispref/display.texi (Low-Level Font):
1100	* src/font.c (Ffont_spec): Document 'font-spec' keys that are
1101	supported, but were undocumented.
1102
11032020-11-18  Lars Ingebrigtsen  <larsi@gnus.org>
1104
1105	Further doc fixes for dotimes about RESULT
1106
1107	* lisp/subr.el (dotimes): Be even more explicit about RESULT
1108	(bug#16206).
1109
1110	(cherry picked from commit 5b0d8d0f288fd505ca90bd30df709a5e7ab540d6)
1111
11122020-11-15  Eli Zaretskii  <eliz@gnu.org>
1113
1114	Reformat argument commentary in etags.c
1115
1116	* lib-src/etags.c (pfnote, consider_token, C_entries): Resurrect
1117	original format of comments to function arguments.
1118
11192020-11-15  Alan Mackenzie  <acm@muc.de>
1120
1121	Make the invocation of combine-change-calls in comment-region valid
1122
1123	This fixes bug #44581.  The problem was that whitespace outside of the (BEG
1124	END) region was being deleted, and this made the invocation of
1125	combine-change-calls with (BEG END) invalid.
1126
1127	* lisp/newcomment.el (comment-region-default): Amend the second argument to
1128	combine-change-calls.
1129
11302020-11-15  Alan Mackenzie  <acm@muc.de>
1131
1132	* lisp/progmodes/cc-langs.el (c-<>-notable-chars-re): Fix wrong '-' in regexp
1133
11342020-11-14  Eli Zaretskii  <eliz@gnu.org>
1135
1136	Update the various INSTALL files
1137
1138	* nt/INSTALL.W64:
1139	* nt/INSTALL:
1140	* INSTALL: Update the installation information, in particular the
1141	fact that HarfBuzz is now preferred as the shaping library.
1142
11432020-11-14  Eli Zaretskii  <eliz@gnu.org>
1144
1145	Don't leave lock files after 'replace-buffer-contents'
1146
1147	* src/editfns.c (Freplace_buffer_contents): Unlock the buffer's
1148	file if no changes have been made.  (Bug#44303)
1149
1150	(cherry picked from commit a5867ddfbd721568005175bf6c725f7834b21ea4)
1151
11522020-11-14  Eli Zaretskii  <eliz@gnu.org>
1153
1154	Fix input method translation near read-only text
1155
1156	* lisp/international/quail.el (quail-input-method): Don't disable
1157	input method when the character after point has the read-only
1158	property.  Suggested by Evgeny Zajcev <lg.zevlg@gmail.com>
1159	(Bug#44466)
1160
1161	* doc/emacs/mule.texi (Input Methods): Document that input methods
1162	are inhibited in read-only text.
1163
11642020-11-14  Eli Zaretskii  <eliz@gnu.org>
1165
1166	Fix display of truncated R2L lines on TTY frames
1167
1168	* src/xdisp.c (extend_face_to_end_of_line): Use a while-loop, not
1169	a do-while loop, to avoid appending an extra glyph at the end of a
1170	line that is one character shorter than the window-width.  This is
1171	needed to fix display of reversed glyph rows that are almost as
1172	wide as the window, because append_space_for_newline already added
1173	one space glyph.
1174
11752020-11-14  Eli Zaretskii  <eliz@gnu.org>
1176
1177	Avoid crashes when a reversed glyph row starts with a composition
1178
1179	* src/dispnew.c (build_frame_matrix_from_leaf_window): Add an
1180	assertion to prevent us from overwriting non-char glyphs with the
1181	vertical border glyph.
1182	* src/xdisp.c (extend_face_to_end_of_line): Account for one glyph
1183	possibly inserted by append_space_for_newline.  (Bug#44506)
1184	Remove a kludgey correction for an off-by-one error in column
1185	counting, which is no longer needed.
1186
11872020-11-13  Eli Zaretskii  <eliz@gnu.org>
1188
1189	Update information about refcards
1190
1191	* admin/release-process (refcards):
1192	* admin/make-tarball.txt (refcards): Update information about
1193	generating refcards and required TeX/LaTeX packages.
1194
11952020-11-11  Eli Zaretskii  <eliz@gnu.org>
1196
1197	Avoid crashes in the daemon due to user interaction
1198
1199	* src/minibuf.c (read_minibuf): Avoid crashes in the daemon if the
1200	init file invokes some kind of minibuffer interaction, by not
1201	updating the selected frame if it's the initial frame.
1202	(Bug#44583)
1203
12042020-11-11  Michael Albinus  <michael.albinus@gmx.de>
1205
1206	Some minor changes to Tramp, do not merge with master
1207
1208	* lisp/net/tramp.el (tramp-handle-directory-files)
1209	(tramp-handle-directory-files-and-attributes):
1210	* lisp/net/tramp-adb.el
1211	(tramp-adb-handle-directory-files-and-attributes):
1212	* lisp/net/tramp-rclone.el (tramp-rclone-handle-directory-files):
1213	* lisp/net/tramp-sh.el (tramp-sh-handle-directory-files-and-attributes):
1214	* lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Add _COUNT.
1215	Make the functions forward compatible.
1216
1217	* lisp/net/tramp-gvfs.el (tramp-gvfs-enabled):
1218	Increase `max-specpdl-size' temporarily.
1219
1220	* test/lisp/net/tramp-tests.el (tramp--test-share-p): New defun.
1221	(tramp-test05-expand-file-name-relative): Use it.
1222
12232020-11-10  Lars Ingebrigtsen  <larsi@gnus.org>
1224
1225	Add more doc-view requirements
1226
1227	* lisp/doc-view.el: Add more requirements.
1228
12292020-11-09  Philipp Stephani  <phst@google.com>
1230
1231	Fix undefined behavior when fetching glyphs from the display vector.
1232
1233	You can trigger this rather obscure bug by enabling selective display
1234	if the second glyph in its display vector has an invalid face.  For
1235	example, evaluate
1236
1237	(set-display-table-slot standard-display-table
1238	                        'selective-display [?A (?B . invalid)])
1239
1240	and then enable selective display.
1241
1242	* src/xdisp.c (next_element_from_display_vector): Check whether next
1243	glyph code is valid before accessing it.
1244
12452020-11-09  Mattias Engdegård  <mattiase@acm.org>
1246
1247	Fix pcase rx form snag with '?' and '??' (bug#44532)
1248
1249	This is a regression from Emacs 26.
1250	Reported by Phillip Stephani.
1251
1252	* lisp/emacs-lisp/rx.el (rx--pcase-transform): Process ? and ?? correctly.
1253	* test/lisp/emacs-lisp/rx-tests.el (rx-pcase): Add test case.
1254
1255	(cherry picked from commit 575b0681d926463960fc00d1e33decaa71d5c956)
1256
12572020-11-09  Lars Ingebrigtsen  <larsi@gnus.org>
1258
1259	Update the doc-view header line
1260
12612020-11-09  Eli Zaretskii  <eliz@gnu.org>
1262
1263	Avoid breaking Arabic shaping in 'window-text-pixel-size'
1264
1265	* src/xdisp.c (CHAR_COMPOSED_P): If the bidi_p flag is not set,
1266	pass -1 to composition_reseat_it, so that the shaping engine will
1267	figure out the directionality of the text.  This is important,
1268	e.g., when using move_it_* functions in some context that is not
1269	redisplay, such as 'window-text-pixel-size'.  (Bug#44521)
1270
12712020-11-09  Lars Ingebrigtsen  <larsi@gnus.org>
1272
1273	doc-view.el comment clarification
1274
1275	* lisp/doc-view.el: Make the commentary mention that it's not
1276	limited to a narrow range of file formats (bug#44504).
1277
12782020-11-09  Daniel Martín  <mardani29@yahoo.es>
1279
1280	Update erc documentation about C-c C-b
1281
1282	* doc/misc/erc.texi (Keystroke Summary): C-c C-b runs
1283	erc-switch-to-buffer, which is implemented in terms of
1284	read-buffer (bug#44498).
1285
12862020-11-07  Kazuhiro Ito  <kzhr@d1.dion.ne.jp>  (tiny change)
1287
1288	Fix 'uudecode-decode-region-internal' in multibyte buffers
1289
1290	* lisp/mail/uudecode.el (uudecode-decode-region-internal): Fix
1291	inserting the decoded string into a multibyte buffer.  Optimize by
1292	working with characters, not strings.  (Bug#44411)
1293
12942020-11-07  Eli Zaretskii  <eliz@gnu.org>
1295
1296	Fix 'send-string-to-terminal' writing very long strings
1297
1298	* src/dispnew.c (Fsend_string_to_terminal): Prevent partial writes
1299	by blocking SIGIO while 'fwrite' runs.  (Bug#44320)
1300
13012020-11-07  Eli Zaretskii  <eliz@gnu.org>
1302
1303	* lisp/subr.el (read-char-from-minibuffer): Doc fix.  (Bug#44451)
1304
13052020-11-07  Earl Hyatt  <ej32u@protonmail.com>
1306
1307	Fix documentation of 'windmove-swap-states-default-keybindings'
1308
1309	* doc/emacs/windows.texi (Window Convenience): Fix description of
1310	'windmove-swap-states-default-keybindings' and related index
1311	entry.  (Bug#44441)
1312
13132020-11-07  Martin Rudalics  <rudalics@gmx.at>
1314
1315	Split windows evenly when 'min-margins' parameter was set (Bug#44483)
1316
1317	* lisp/window.el (split-window): Make new window inherit any
1318	'min-margins' parameter from WINDOW so that horizontal splits
1319	reliably produce windows of same width (Bug#44483).
1320
13212020-11-07  Pip Cet  <pipcet@gmail.com>
1322
1323	Handle Cairo errors in ftcrfont_open
1324
1325	* src/ftcrfont.c (ftcrfont_open): Handle Cairo errors (bug#41627).
1326
1327	(cherry picked from commit 954a4decfcc8e41084789516773b22d0adc11d91)
1328
13292020-11-06  Stefan Kangas  <stefan@marxist.se>
1330
1331	Backport: Fix exiting the finder-commentary buffer
1332
1333	Do not merge to master.
1334
1335	* lisp/finder.el (finder-exit): Fix exiting the finder-commentary
1336	buffer.  (Bug#44384)
1337	(finder-buffer): New defconst.
1338	(finder-list-keywords): Use above new defconst.
1339
13402020-11-05  Eli Zaretskii  <eliz@gnu.org>
1341
1342	* src/w32fns.c (Fw32_register_hot_key): Doc fix.  (Bug#44456)
1343
13442020-11-04  Eli Zaretskii  <eliz@gnu.org>
1345
1346	Prevent redisplay from moving point behind user's back
1347
1348	* src/bidi.c (bidi_at_paragraph_end, bidi_find_paragraph_start):
1349	Bind inhibit-quit to a non-nil value around calls to
1350	fast_looking_at, to prevent breaking out of redisplay_window,
1351	which temporarily moves point in buffers shown in non-selected
1352	windows.  (Bug#44448)
1353
13542020-11-02  Mauro Aranda  <maurooaranda@gmail.com>
1355
1356	Document that the :match function for a widget takes an external value
1357
1358	* doc/misc/widget.texi (Basic Types): Document what an external value
1359	is.  Document that a :match function expects the value to be in the
1360	external format.  (Bug#8717)
1361
13622020-11-02  Stephen Berman  <Stephen.Berman@gmx.net>
1363
1364	Don't render XML declaration of an HTML document (bug#44348)
1365
1366	* lisp/net/eww.el (eww--preprocess-html): Prevent converting the
1367	left angle bracket in the sequence "<?" to an HTML entity.
1368
13692020-11-02  Yasuhiro KIMURA  <yasu@utahime.org>  (tiny change)
1370
1371	Recover the contents of the schemas.xml file
1372
1373	* etc/schema/schemas.xml: Recover the file, which was apparently
1374	(mostly) removed by mistake by commit 165f738382 (bug#42851).
1375
13762020-11-01  Stefan Kangas  <stefan@marxist.se>
1377
1378	Improve indexing of check-declare
1379
1380	* doc/lispref/functions.texi (Declaring Functions): Improve indexing.
1381
13822020-10-31  Eli Zaretskii  <eliz@gnu.org>
1383
1384	* doc/lispref/commands.texi (Key Sequence Input): Fix indexing.
1385
1386	(cherry picked from commit 41c4f337c8f798d4700dcd13b73ad4ccdb3257eb)
1387
13882020-10-31  Jared Finder  <jared@finder.org>
1389
1390	Updating docs with all special window prefix keys.
1391
1392	* doc/lispref/commands.texi (Key Sequence Input): Add documentation for
1393	missing special window areas.  Explicitly call out window or frame.
1394
1395	(cherry picked from commit a105db13e11fd15cc72804bf33672122d1c3f2e1)
1396
13972020-10-30  Glenn Morris  <rgm@gnu.org>
1398
1399	Improve reproducibility of generated -pkg.el files
1400
1401	* lisp/emacs-lisp/package.el (package-generate-description-file):
1402	Don't include the full name of the source file in the header,
1403	since that varies non-reproducibly according to the build directory.
1404	https://bugs.debian.org/972861
1405	Note that elpa.gnu.org's admin/archive-contents.el does this by hand
1406	and already only includes the nondirectory part.
1407
14082020-10-29  Noah Friedman  <friedman@splode.com>
1409
1410	Make sure pixel sizes are zero when setting window size for ptys.
1411
1412	* sysdep.c (set_window_size): Initialize data to zero to avoid
1413	passing any garbage from the stack to ioctl.
1414
14152020-10-29  Ken Brown  <kbrown@cornell.edu>
1416
1417	Fix failure of 'emacs --daemon' on Cygwin
1418
1419	* src/emacs.c (DAEMON_MUST_EXEC): Define unconditionally on
1420	Cygwin, not just if HAVE_NTGUI is defined.  This fixes the failure
1421	of 'emacs --daemon' to start on the non-w32 Cygwin builds.
1422	(Bug#44285)
1423
14242020-10-28  Alan Mackenzie  <acm@muc.de>
1425
1426	CC Mode: Only recognize foo (*bar) as a function pointer when followed by (
1427
1428	* lisp/progmodes/cc-engine.el (c-forward-over-decl-or-cast-1): (after CASE 2)
1429	test variables got-suffix-after-parens and at-decl-end before invoking
1430	c-fdoc-shift-type-backward.
1431
14322020-10-27  Clemens Radermacher  <clemens.radermacher@posteo.de>
1433
1434	Fix NEWS entry for fix of Bug#44080
1435
14362020-10-27  Eli Zaretskii  <eliz@gnu.org>
1437
1438	* src/buffer.c (syms_of_buffer) <fill-column>: Improve doc string.
1439
14402020-10-27  Clemens Radermacher  <clemens.radermacher@posteo.de>
1441
1442	Don't skip empty lines when fitting mini frame to buffer (Bug#44080)
1443
1444	* lisp/window.el (fit-mini-frame-to-buffer,
1445	window--resize-mini-frame, fit-frame-to-buffer,
1446	fit-frame-to-buffer-1): By default, fit a mini frame without skipping its
1447	buffer's leading or trailing empty lines.
1448	* src/frame.c (resize-mini-frames): Update doc-string.
1449	* lisp/cus-start.el (resize-mini-frames): Update for customize.
1450	* doc/lispref/minibuf.texi (resize-mini-frames): Update description.
1451
14522020-10-26  Eli Zaretskii  <eliz@gnu.org>
1453
1454	Improve documentation of display-fill-column-indicator
1455
1456	* lisp/display-fill-column-indicator.el
1457	(display-fill-column-indicator-mode): Mention the globalized
1458	version in the doc string.
1459
1460	* doc/emacs/display.texi (Displaying Boundaries): Improve and
1461	clarify the documentation of display-fill-column-indicator.
1462	Suggest using the minor mode as the primary means for turning the
1463	feature on.
1464
1465	* src/xdisp.c (syms_of_xdisp) <display-fill-column-indicator>
1466	<display-fill-column-indicator-character>: Doc fix.  (Bug#44226)
1467
14682020-10-25  Michael Albinus  <michael.albinus@gmx.de>
1469
1470	* INSTALL: Mention efaq.texi for installation of intlfonts.
1471
14722020-10-24  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
1473	    Qiantan Hong  <qhong@mit.edu>
1474
1475	Use WebKit sandboxing
1476
1477	* src/xwidget.c (Fmake_xwidget): Enable sandboxing if WebKit 2.26
1478	or later.  Do this early, as required for sandboxing (Bug#43071).
1479
14802020-10-24  Michael Albinus  <michael.albinus@gmx.de>
1481
1482	Fix tramp-sh-handle-make-process; don't merge with master
1483
1484	* lisp/net/tramp-sh.el (tramp-sh-handle-make-process): Accept nil
1485	COMMAND.  (Bug#44151)
1486
1487	* test/lisp/net/tramp-tests.el (tramp-test29-start-file-process):
1488	Extend test.
1489
14902020-10-23  Michael Albinus  <michael.albinus@gmx.de>
1491
1492	Fix an error in tramp-sh-handle-make-process.  Dont' merge with master
1493
1494	* lisp/net/tramp-sh.el (tramp-sh-handle-make-process): Don't use heredoc
1495	script whent the argument contains a string.
1496
14972020-10-22  Stefan Kangas  <stefan@marxist.se>
1498
1499	Recommend lexical-binding in Coding Conventions
1500
1501	* doc/lispref/tips.texi (Coding Conventions, Library Headers):
1502	Recommend using lexical-binding.
1503
15042020-10-21  Eli Zaretskii  <eliz@gnu.org>
1505
1506	Avoid rare crashes while producing line numbers
1507
1508	* src/xdisp.c (maybe_produce_line_number): Prevent freeing of
1509	realized faces for as long as we are using lnum_face_id and
1510	current_lnum_face_id for producing glyphs.  (Bug#44111)
1511
15122020-10-17  Eli Zaretskii  <eliz@gnu.org>
1513
1514	Improve documentation of 'Info-hide-note-references' in info.texi
1515
1516	* doc/misc/info.texi (Help-Xref): Improve the wording.
1517	(Emacs Info Variables): Update the documentation of
1518	'Info-hide-note-references'.  (Bug#44043)
1519
15202020-10-17  Stefan Kangas  <stefan@marxist.se>
1521
1522	* admin/release-process: Add note to update files from upstream.
1523
1524	(cherry picked from commit 86dd9d12aa5a273da2efd4ce8c6e35ae343f1494)
1525
15262020-10-17  Eli Zaretskii  <eliz@gnu.org>
1527
1528	* lisp/info.el (Info-hide-note-references): Doc fix.  (Bug#44043)
1529
15302020-10-16  Alan Mackenzie  <acm@muc.de>
1531
1532	Make lisp/progmodes/js.el dependent on CC Mode in the Makefile.
1533
1534	This will prevent version mismatches between compile time and runtime
1535	versions.  This fixes bug #43037.
1536
1537	* lisp/Makefile.in: Make js.el dependent on cc-{defs,engine,mode}.elc.
1538
15392020-10-16  Eli Zaretskii  <eliz@gnu.org>
1540
1541	Yet another fix for 'set-minibuffer-message'
1542
1543	* lisp/minibuffer.el (set-minibuffer-message): Handle the case of
1544	separate minibuffer-only frame.  Suggested by Gregory Heytings
1545	<ghe@sdf.org>.
1546
15472020-10-16  Eli Zaretskii  <eliz@gnu.org>
1548
1549	Fix posn-at-x-y in builds --without-x
1550
1551	* src/keyboard.c (make_lispy_position): Don't exclude the
1552	window_or_frame = frame case from TTY-only builds.  Reported by
1553	Jared Finder <jared@finder.org>.
1554
1555	* doc/lispref/commands.texi (Click Events): Document the format of
1556	POSITION in click events on the frame's internal border.
1557
15582020-10-15  Lars Ingebrigtsen  <larsi@gnus.org>
1559
1560	Clarify the seq-reduce documentation
1561
1562	* doc/lispref/sequences.texi (Sequence Functions): Ditto.
1563
1564	* lisp/emacs-lisp/seq.el (seq-reduce): Clarify the order of the
1565	arguments (bug#43995).
1566
15672020-10-12  Michael Albinus  <michael.albinus@gmx.de>
1568
1569	Make tramp-completion-reread-directory-timeout obsolete (Bug#43932)
1570
1571	* doc/misc/tramp.texi (File name completion, Frequently Asked Questions):
1572	Remove `tramp-completion-reread-directory-timeout'.  (Bug#43932)
1573
1574	* etc/NEWS: Mention tramp-completion-reread-directory-timeout as obsolete.
1575
1576	* lisp/net/tramp.el (tramp-completion-reread-directory-timeout):
1577	Make it obsolete.
1578
15792020-10-11  Gregory Heytings  <ghe@sdf.org>  (tiny change)
1580
1581	Fix 'message' when there's active minibuffer on another frame
1582
1583	* lisp/minibuffer.el (set-minibuffer-message): Don't reuse the
1584	active minibuffer for displaying messages unless the active
1585	minibuffer is on the same frame as the selected window.
1586
15872020-10-10  Stefan Monnier  <monnier@iro.umontreal.ca>
1588
1589	* lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Doc tweak
1590
1591	Try and clarify the meaning of `init-value`.
1592
1593	(cherry picked from commit 46c0f28c0e4e212687e90ec0ecb239d994105a19)
1594
15952020-10-10  Eli Zaretskii  <eliz@gnu.org>
1596
1597	A better fix for bug#43886
1598
1599	* src/xfaces.c (load_color2, Fcolor_distance): Revert last change.
1600	* src/term.c (clear_tty_hooks): Don't clear defined_color_hook.
1601
16022020-10-09  Eli Zaretskii  <eliz@gnu.org>
1603
1604	Avoid crashes when a theme is loaded with one frame suspended
1605
1606	* src/xfaces.c (load_color2, Fcolor_distance): Don't try to call
1607	the frame's defined_color_hook if the frame is suspended.
1608	(Bug#43886)
1609
16102020-10-09  Pankaj Jangid  <pankaj.jangid@gmail.com>  (tiny change)
1611
1612	Removed an incorrectly placed extra word in the semantic docs
1613
1614	* doc/misc/semantic.texi (Parser code): Copy edit (bug#43861).
1615
16162020-10-08  Eli Zaretskii  <eliz@gnu.org>
1617
1618	Fix current-line hscrolling when overlays change
1619
1620	* src/xdisp.c (redisplay_internal): Disable "optimization 1" when
1621	auto-hscrolling current line and we're redisplaying the selected
1622	window.  (Bug#43835)
1623
16242020-10-08  Michael Albinus  <michael.albinus@gmx.de>
1625
1626	Extend tests for shell-command-dont-erase-buffer
1627
1628	* test/lisp/simple-tests.el
1629	(simple-tests-shell-command-dont-erase-buffer): Extend test.
1630
1631	* test/lisp/net/tramp-tests.el
1632	(tramp-test32-shell-command-dont-erase-buffer): Adapt test.  Tag
1633	it :unstable.
1634
16352020-10-07  Hong Xu  <hong@hong.me>
1636
1637	Clarify what ``chrooted environment means'' for TRAMP
1638
1639	* doc/misc/tramp.texi (Frequently Asked Questions): Clarify what
1640	``chrooted environment means'' for TRAMP (bug#43839).
1641
16422020-10-05  Daniel Martín  <mardani29@yahoo.es>
1643
1644	Add missing full stop in MS-DOS processes documentation
1645
1646	* doc/emacs/msdos-xtra.texi (MS-DOS Processes): Minor copy edig
1647	(bug#43820).
1648
16492020-10-05  Eli Zaretskii  <eliz@gnu.org>
1650
1651	Fix merging of region face for non-ASCII characters
1652
1653	* src/xdisp.c (extend_face_to_end_of_line): Restore the correct
1654	original face used by the iterator on this line, not the ASCII
1655	face.  (Bug#43363)
1656
16572020-10-03  Alan Third  <alan@idiocy.org>
1658	    Daniel Martín  <mardani29@yahoo.es>
1659
1660	Make drag and drop on NS open all URLs (bug#43470)
1661
1662	* lisp/term/ns-win.el (ns-drag-n-drop): Merge generic and copy
1663	actions.
1664
16652020-10-02  Lars Ingebrigtsen  <larsi@gnus.org>
1666
1667	Fix electric-buffer-list buffer selection
1668
1669	* lisp/ebuff-menu.el (electric-buffer-list): Ensure that point is
1670	restored, which isn't always the case if
1671	global-display-line-numbers-mode (bug#43755).  This enables
1672	selecting buffers again.
1673
16742020-10-02  Eli Zaretskii  <eliz@gnu.org>
1675
1676	* doc/misc/flymake.texi (Using Flymake): Fix a typo.  (Bug#43758)
1677
16782020-10-02  Robert Pluim  <rpluim@gmail.com>
1679
1680	Don't error if no GPG signing key configured
1681
1682	* lisp/gnus/mml-sec.el (mml-secure-epg-sign): Partially revert
1683	"Make mml-secure-epg-sign bug out if we can't find an identity".
1684	It causes signing to fail for people who have not set up
1685	mml-secure-{smime,openpgp}-sign-with-sender, which is a regression
1686	from Emacs-26 (Bug#40118).  In such a situation gpg will use its
1687	default key.
1688
1689	Do not merge to master. On master Emacs will query the user.
1690
16912020-10-01  Michael R. Mauger  <michael@mauger.com>
1692
1693	2020-03-29  Michael R. Mauger  <michael@mauger.com>
1694
1695	       * lisp/progmodes/sql.el (sql-add-product): Re-correct argument
1696	       spec.  Previous change was due to my mistake; I have
1697	       resolved back to the prior behavior (Bug#39960).
1698	       * test/lisp/progmodes/sql-tests.el (sql-test-add-product): Added
1699	       test to insure I don't make the same mistake again.
1700
17012020-10-01  Lars Ingebrigtsen  <larsi@gnus.org>
1702
1703	Make aliases introduced in previous patch obsolete
1704
1705	* lisp/emacs-lisp/debug.el (debugger-toggle-locals):
1706	(debug-help-follow): Make reinstated aliases obsolete.
1707
17082020-10-01  Gemini Lasswell  <gazally@runbox.com>
1709
1710	Restore some public debugging functions removed in Emacs 27
1711
1712	* lisp/emacs-lisp/backtrace.el (backtrace--to-string): New function.
1713	(backtrace-to-string): Use it.  Fix whitespace (bug#40728).
1714	* lisp/emacs-lisp/debug.el (debugger-insert-backtrace): New function.
1715	Mark it as obsolete.
1716	(debugger-toggle-locals, debug-help-follow): New aliases.
1717
17182020-10-01  Michael Albinus  <michael.albinus@gmx.de>
1719
1720	Clarification in Tramp manual
1721
1722	* doc/misc/tramp.texi: Harmonize "Git" spelling.
1723	(Frequently Asked Questions): Describe Emacs version mismatch.
1724
17252020-10-01  Michael Albinus  <michael.albinus@gmx.de>
1726
1727	Check Emacs version used for Tramp compilation
1728
1729	* lisp/net/tramp-compat.el (tramp-compat-emacs-compiled-version):
1730	New defconst.  Raise a warning, when it is not equal to the Emacs
1731	version.
1732
17332020-09-29  Eli Zaretskii  <eliz@gnu.org>
1734
1735	Don't signal an error when saving files on WdebDAV volumes
1736
1737	* src/w32.c (acl_get_file): If get_file_security raises the
1738	ERROR_ACCESS_DENIED error, treat that like unsupported ACLs.
1739
17402020-09-28  Eli Zaretskii  <eliz@gnu.org>
1741
1742	* lisp/hi-lock.el (hi-lock-find-patterns): Autoload it.  (Bug#43670)
1743
17442020-09-27  Eli Zaretskii  <eliz@gnu.org>
1745
1746	Minor copyedits in the Emacs user manual
1747
1748	* doc/emacs/emacs.texi (Top): Remove "real-time" from the Emacs
1749	description; add "advanced", to be consistent with what we say in
1750	the Introduction section.  (Bug#43633)
1751
17522020-09-26  Eli Zaretskii  <eliz@gnu.org>
1753
1754	Followup to a recent change in menu-bar.el
1755
1756	* lisp/fileloop.el (fileloop--operate-function): Mention in a
1757	comment that menu-bar.el relies on the default value.
1758
17592020-09-26  Eli Zaretskii  <eliz@gnu.org>
1760
1761	Enable "Continue Tags Search" menu item only when it can be used
1762
1763	* lisp/menu-bar.el (menu-bar-search-menu) <tags-continue>: Enable
1764	only when there was a previous tags search.  (Bug#43569)
1765	(menu-bar-replace-menu) <tags-repl-continue>: Enable only when
1766	there was a previous tags-replace.
1767
17682020-09-26  Paul Eggert  <eggert@cs.ucla.edu>
1769
1770	Fix soap-client URL
1771
1772	* lisp/net/soap-client.el (soap-create-envelope):
1773	Fix URL that I broke in 2019-09-23T06:53:30Z!eggert@cs.ucla.edu.
1774	Problem reported by Thomas Fitzsimmons.
1775
17762020-09-25  Paul Eggert  <eggert@cs.ucla.edu>
1777
1778	Fix out-of-source ‘make check’ emacs-module-tests
1779
1780	Problem reported by Koki Fukuda in:
1781	https://lists.gnu.org/r/emacs-devel/2020-07/msg00169.html
1782	* test/Makefile.in (MODULE_CFLAGS):
1783	Include from the same directories included from in ../src.
1784	* test/src/emacs-module-tests.el (module/describe-function-1):
1785	Strip path to source directory.
1786
1787	(cherry picked from commit c86f3fe0d023cdd25edbbce91c5b32654f2b734e)
1788
17892020-09-25  Eli Zaretskii  <eliz@gnu.org>
1790
1791	Fix support for Zip64 zip files
1792
1793	* lisp/arc-mode.el (archive-zip-summarize): Fix detection of Zip64
1794	central directory.  Support 64-bit file size field used by Zip64.
1795	(Bug#43597)
1796
17972020-09-25  Eli Zaretskii  <eliz@gnu.org>
1798
1799	* lisp/hi-lock.el (hi-lock-auto-select-face): Doc fix.  (Bug#43600)
1800
18012020-09-25  Eli Zaretskii  <eliz@gnu.org>
1802
1803	Avoid infinite recursion with 'relative' line numbers display
1804
1805	* src/xdisp.c (display_count_lines_visually): Bind
1806	'display-line-numbers' to 'relative' around 'start_display' as
1807	well, since that can invoke 'move_it_to' internally, thus
1808	causing infinite recursion.  (Bug#43589)
1809
18102020-09-20  Eli Zaretskii  <eliz@gnu.org>
1811
1812	Minor improvement in the ELisp manual's Introduction
1813
1814	* doc/lispref/intro.texi (Printing Notation): Clarify what
1815	"execute code" means in this context.  (Bug#43463)
1816
18172020-09-20  Eli Zaretskii  <eliz@gnu.org>
1818
1819	Mention in PROBLEMS the problems with fonts and Uniscribe
1820
1821	* etc/PROBLEMS: Mention font-related problems with Uniscribe on
1822	MS-Windows.  (Bug#39340)
1823
18242020-09-19  Eli Zaretskii  <eliz@gnu.org>
1825
1826	Minor copyedits in 'line-height' documentation
1827
1828	* doc/lispref/display.texi (Line Height): Describe the possible
1829	values of the 'line-height' property in a more consistent format.
1830
18312020-09-19  Gregor Zattler  <telegraph@gmx.net>
1832
1833	* doc/misc/eww.texi: Document the `w' key's double function
1834
1835	* doc/misc/eww.texi (Basics): Describe what the `w' command does
1836	in eww (bug#43517).
1837
18382020-09-19  Eli Zaretskii  <eliz@gnu.org>
1839
1840	Fix a rare segfault in syntax.c
1841
1842	* src/syntax.c (Fforward_comment): Prevent the loop for COUNT < 0
1843	from going outside the valid range of character/byte positions.
1844	(Bug#43499)
1845
1846	* doc/lispref/syntax.texi (Syntax Class Table): Mention the
1847	"comment-fence" and "string-fence" as alternative names of 2
1848	syntax classes.
1849
18502020-09-19  Alan Mackenzie  <acm@muc.de>
1851
1852	Add doc to syntax-propertize-function saying it must do a 100% job
1853
1854	and cannot be combined with other ways of applying syntax-table text
1855	properties.
1856
1857	* lisp/emacs-lisp/syntax.el (syntax-propertize-function): Amend doc string.
1858
1859	* doc/lispref/syntax.texi (Syntax Properties): Amend the description of the
1860	variable.
1861
18622020-09-19  Eli Zaretskii  <eliz@gnu.org>
1863
1864	Minor copyedits of doc of 'with-silent-modifications'
1865
1866	* doc/lispref/text.texi (Changing Properties):
1867	* doc/lispref/buffers.texi (Buffer Modification): Improve
1868	documentation and indexing of 'with-silent-modifications'.
1869
18702020-09-18  Eli Zaretskii  <eliz@gnu.org>
1871
1872	Improve documentation of 'max-mini-window-height'
1873
1874	* src/xdisp.c (syms_of_xdisp):
1875	* doc/lispref/minibuf.texi (Minibuffer Windows): More accurate
1876	wording in the documentation of 'max-mini-window-height', to
1877	clarify the meaning of an integer value.
1878
18792020-09-18  Daniel Martín  <mardani29@yahoo.es>
1880
1881	Use modern constant names for the NS pasteboard
1882
1883	Use the same pasteboard constant names defined in
1884	ns_drag_types. (Bug#43470).
1885
1886	* src/nsterm.m: Rename NSURLPboardType to NSPasteboardTypeURL,
1887	NSStringPboardType to NSPasteboardTypeString, and
1888	NSTabularTextPboardType to NSPasteboardTypeTabularText
1889
18902020-09-16  Eli Zaretskii  <eliz@gnu.org>
1891
1892	Fix doc string of 'toggle-menu-bar-mode-from-frame'
1893
1894	* lisp/menu-bar.el (toggle-menu-bar-mode-from-frame): Improve the
1895	wording of the doc string.  (Bug#43383)
1896
18972020-09-12  Glenn Morris  <rgm@gnu.org>
1898
1899	Make vc-bzr tests work with brz 3.1 (bug#43314)
1900
1901	* test/lisp/vc/vc-bzr-tests.el (vc-bzr-test-bug9726)
1902	(vc-bzr-test-bug9781, vc-bzr-test-faulty-bzr-autoloads):
1903	Make them work with brz 3.1.
1904
19052020-09-12  Lars Ingebrigtsen  <larsi@gnus.org>
1906
1907	diff-no-select doc string clarification
1908
1909	* lisp/vc/diff.el (diff-no-select): Update doc string from the trunk,
1910	don't merge.
1911
19122020-09-12  Eli Zaretskii  <eliz@gnu.org>
1913
1914	Fix compilation on TERMINFO platforms with GCC 10
1915
1916	* src/terminfo.c [TERMINFO]: Don't redefine UP, BC, and CP, as
1917	that could cause linking errors due to multiple definitions.
1918	(Bug#43195)
1919
19202020-09-10  Lars Ingebrigtsen  <larsi@gnus.org>
1921
1922	Fix the font-lock-debug-fontify NEWS entry
1923
1924	* etc/NEWS: Fix the name of `font-lock-debug-fontify' (bug#43319).
1925
19262020-09-08  Eli Zaretskii  <eliz@gnu.org>
1927
1928	Avoid crashes when trying to load bad GIF files
1929
1930	* src/image.c (gif_load): Handle the case when GifErrorString
1931	returns NULL.  (Bug#43281)
1932
19332020-09-04  Alan Mackenzie  <acm@muc.de>
1934
1935	C++ Mode: handle comma separated brace initializers.
1936
1937	This includes both indentation and fontification.
1938
1939	* lisp/progmodes/cc-engine.el (c-do-declarators): Handle brace initializers
1940	without = correctly.
1941	(c-looking-at-or-maybe-in-bracelist): Use c-do-declarators with a simple
1942	inline function to check that after-type-id-pos points to the start of a
1943	declarator.
1944
1945	* lisp/progmodes/cc-langs.el (c-recognize-bare-brace-inits): New lang
1946	const/variable.
1947
19482020-09-04  Stefan Monnier  <monnier@iro.umontreal.ca>
1949
1950	* lisp/display-fill-column-indicator.el: Fix bug#41145
1951
1952	(global-display-fill-column-indicator-mode): Specify the implicit
1953	defustom's group explicitly.
1954
1955	* lisp/cus-dep.el (custom-make-dependencies): Also look at
1956	define(-globalized)-minor-mode since it can also define custom vars.
1957
19582020-09-04  Michael Albinus  <michael.albinus@gmx.de>
1959
1960	Backport recent change in tramp-tests.el from master, don't merge
1961
1962	* test/lisp/net/tramp-tests.el (tramp-test05-expand-file-name):
1963	No need to expect different results in Emacs 28 and later.
1964
19652020-09-03  Michael Albinus  <michael.albinus@gmx.de>
1966
1967	Fix bug in dbus.el; do not merge with master
1968
1969	* lisp/net/dbus.el (dbus-register-property)
1970	(dbus-property-handler): Handle properties of the same interface
1971	at different object paths properly.  (Bug#43146)
1972
19732020-09-01  Stefan Kangas  <stefankangas@gmail.com>
1974
1975	Fix help message with help-window-select
1976
1977	* lisp/help.el (help-print-return-message):
1978	(help-window-display-message): Recommend 'scroll-up-command' instead
1979	of 'scroll-up' when 'help-window-select' is non-nil.  (Bug#43122)
1980
19812020-08-31  Eric Abrahamsen  <eric@ericabrahamsen.net>
1982
1983	Remove obsolete "Wide Characters" section of Gnus manual
1984
1985	* doc/misc/gnus.texi: This hasn't been valid since 2016.
1986
19872020-08-31  Stefan Kangas  <stefankangas@gmail.com>
1988
1989	Fix typo in Introduction to Emacs Lisp
1990
1991	* doc/lispintro/emacs-lisp-intro.texi (type-of-animal in detail):
1992	Remove extraneous parenthesis.
1993
19942020-08-30  Stefan Kangas  <stefankangas@gmail.com>
1995
1996	Update Elisp Manual reference to which-function-mode
1997
1998	* doc/lispref/modes.texi (Mode Line Top, Mode Line Variables)
1999	Don't refer to obsolete alias for 'which-function-mode'.
2000	(Bug#13716)
2001
20022020-08-30  Michael Albinus  <michael.albinus@gmx.de>
2003
2004	Some precisions to bug handling
2005
2006	* admin/admin.el (reminder-for-release-blocking-bugs): Add date to subject.
2007
2008	* admin/notes/bug-triage:
2009	* admin/notes/bugtracker: Minor precisions.
2010
20112020-08-29  Alan Mackenzie  <acm@muc.de>
2012
2013	CC Mode: Fix processing for when c-multiline-string-start-char is a character
2014
2015	* lisp/progmodes/cc-mode.el (c-pps-to-string-delim)
2016	(c-multiline-string-check-final-quote): Replace c-clear-char-property by
2017	c-clear-syn-tab.
2018	(c-multiline-string-check-final-quote): Replace c-put-char-property by
2019	c-put-syn-tab.
2020
20212020-08-29  Eli Zaretskii  <eliz@gnu.org>
2022
2023	Fix description of %-constructs in 'mode-line-format'
2024
2025	* doc/lispref/modes.texi (%-Constructs): Document %@ and remove
2026	%M, which is no longer supported.   (Bug#43092)
2027
20282020-08-27  Michael Albinus  <michael.albinus@gmx.de>
2029
2030	Adapt tramp-tests.el, don't merge with master
2031
2032	* test/lisp/net/tramp-tests.el (tramp-test05-expand-file-name)
2033	(tramp-test05-expand-file-name-relative): Adapt tests.
2034	(tramp--test-emacs28-p): New defun.
2035
20362020-08-27  Michael Albinus  <michael.albinus@gmx.de>
2037
2038	Adapt reminder-for-release-blocking-bugs
2039
2040	* admin/admin.el (reminder-for-release-blocking-bugs):
2041	Require `debbugs-gnu' also in `interactive' form.
2042
2043	* admin/release-process: Rename RELEASE-CRITICAL to RELEASE-BLOCKING.
2044	Adapt Emacs version.  Describe `reminder-for-release-blocking-bugs'.
2045
20462020-08-25  Paul Eggert  <eggert@cs.ucla.edu>
2047
2048	Fix replace-region-contents performance bug
2049
2050	Backport from master.
2051	* src/editfns.c (rbc_quitcounter): Remove; the quitcounter
2052	is now part of the context.
2053	(EXTRA_CONTEXT_FIELDS): Remove unused member early_abort_tests.
2054	Add jmp, quitcounter.
2055	(Freplace_buffer_contents): Use setjmp/longjmp to recover from
2056	a compareseq that runs too long.  Omit unnecessary rarely_quit
2057	call.
2058	(buffer_chars_equal): Occasionally check for early abort and
2059	longjmp out if so (Bug#43016).
2060
20612020-08-25  Michael Albinus  <michael.albinus@gmx.de>
2062
2063	* admin/admin.el (reminder-for-release-blocking-bugs): New command.
2064
20652020-08-25  Michael Albinus  <michael.albinus@gmx.de>
2066
2067	Sync with Tramp 2.4.5-pre
2068
2069	* doc/misc/tramp.texi: Adapt Tramp and Emacs version numbers.
2070	(Remote processes): Describe `process-file-return-signal-string'
2071	and $INSIDE_EMACS.
2072	(Frequently Asked Questions): Mention Emacs 28.
2073	Describe `tramp-smb-options'.
2074
2075	* doc/misc/trampver.texi: Change version to "2.4.5-pre".
2076
2077	* lisp/net/tramp-adb.el (process-file-return-signal-string): Declare.
2078	(tramp-adb-handle-write-region): Flush the cache after the file
2079	has been written.
2080	(tramp-adb-handle-set-file-modes, tramp-adb-handle-set-file-times):
2081	Add optional _FLAG.
2082	(tramp-adb-handle-copy-file, tramp-adb-handle-rename-file)
2083	(tramp-adb-handle-process-file): Use `tramp-file-local-name'.
2084	(tramp-adb-get-signal-strings): New defun.
2085	(tramp-adb-handle-process-file): Use it.
2086	(tramp-adb-handle-make-process): Implement `stderr'.  Use
2087	`insert-file-contents-literally'.
2088	(tramp-adb-send-command-and-check): Add optional argument
2089	EXIT-STATUS.
2090	(tramp-adb-handle-process-file): Use it.
2091
2092	* lisp/net/tramp-archive.el (tramp-archive-file-name-handler):
2093	Increase `max-specpdl-size' temporarily.
2094
2095	* lisp/net/tramp-cache.el (top):
2096	Use `insert-file-contents-literally'.
2097
2098	* lisp/net/tramp-cmds.el (tramp-rename-files):
2099	Use `tramp-file-local-name'.
2100
2101	* lisp/net/tramp-gvfs.el (tramp-gvfs-enabled): Prevent crash for
2102	older Emacsen.
2103	(top): Adapt `tramp-gvfs-unload-hook'.
2104	(tramp-gvfs-handle-file-system-info): Fix error.
2105	(tramp-gvfs-handle-set-file-modes, tramp-gvfs-handle-set-file-times):
2106	Add optional _FLAG.
2107
2108	* lisp/net/tramp-rclone.el (tramp-rclone-flush-directory-cache):
2109	Fix a problem with older Emacsen.
2110
2111	* lisp/net/tramp-sh.el (process-file-return-signal-string): Declare.
2112	(tramp-sh-extra-args): Add "-noediting" as bash arg.
2113	(tramp-hexdump-encode, tramp-hexdump-awk-encode)
2114	(tramp-od-encode, tramp-od-awk-encode): New defconst.
2115	(tramp-awk-encode, tramp-awk-decode): Adapt.
2116	(tramp-awk-coding-test): Remove.
2117	(tramp-remote-coding-commands): Add hexdump/awk encoding.  (Bug#35639)
2118	(tramp-find-inline-encoding): Adapt handling of awk, hexdump and od.
2119	(tramp-get-remote-busybox, tramp-get-remote-awk)
2120	(tramp-get-remote-hexdump, tramp-get-remote-od): New defuns.
2121	(tramp-sh-handle-make-symbolic-link):
2122	(tramp-do-copy-or-rename-file-directly)
2123	(tramp-sh-handle-process-file, tramp-set-remote-path)
2124	(tramp-find-inline-encoding, tramp-get-remote-touch):
2125	Use `tramp-file-local-name'.
2126	(tramp-do-file-attributes-with-stat): Simplify shell command.
2127	Suppress errors (interpret as nil).
2128	(tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times):
2129	Add optional _FLAG.
2130	(tramp-sh-handle-make-process): Do not visit with
2131	`insert-file-contents'.  Delete tmp file only if exists.  Support
2132	`stderr' as file name.  Delete temporary stderr file.  Flush
2133	connection properties in time.
2134	(tramp-sh-get-signal-strings): New defun.
2135	(tramp-sh-handle-process-file): Use it.
2136	(tramp-sh-handle-write-region): Copy to temp file only if FILENAME
2137	exists.  (Bug#40156)
2138	(tramp-set-remote-path): Send the command in several chunks if it
2139	is too large.  (Bug#42538)
2140	(tramp-open-connection-setup-interactive-shell): Move up "set +o
2141	vi +o emacs" command.   (Bug#39399)
2142	(tramp-send-command-and-read): Suppress `signal-hook-function'
2143	when reading expression.
2144	(tramp-send-command-and-check): Add optional argument EXIT-STATUS.
2145	(tramp-sh-handle-process-file): Use it.  (Bug#41099)
2146
2147	* lisp/net/tramp-smb.el (tramp-smb-conf): Fix docstring.
2148	(tramp-smb-options): New defcustom.
2149	(tramp-smb-handle-copy-directory, tramp-smb-handle-file-acl)
2150	(tramp-smb-handle-set-file-acl, tramp-smb-maybe-open-connection):
2151	Use it.
2152	(tramp-smb-errors): Add "NT_STATUS_INVALID_PARAMETER".
2153	(tramp-smb-handle-make-symbolic-link)
2154	(tramp-smb-handle-process-file): Use `tramp-file-local-name'.
2155
2156	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-do-copy-or-rename-file):
2157	(tramp-sudoedit-handle-set-file-uid-gid):
2158	Use `tramp-unquote-file-local-name'.
2159	(tramp-sudoedit-handle-make-symbolic-link):
2160	Use `tramp-file-local-name'.
2161	(tramp-sudoedit-handle-file-system-info): Fix a scoping error.
2162	(tramp-sudoedit-handle-set-file-modes):
2163	(tramp-sudoedit-handle-set-file-times): Add optional _FLAG.
2164
2165	* lisp/net/tramp.el: Bump version to 2.4.5-pre.
2166	(tramp-file-local-name, tramp-unquote-file-local-name): New defuns.
2167	(tramp-set-connection-local-variables-for-buffer)
2168	(tramp-equal-remote, tramp-handle-make-auto-save-file-name):
2169	Use `tramp-tramp-file-p'.
2170	(tramp-parse-file): Use `insert-file-contents-literally'.
2171	(tramp-handle-file-modes, tramp-handle-file-times):
2172	Add optional _FLAG.
2173	(tramp-handle-shell-command): Fix `window-start' in output buffer.
2174	(Bug#39171)
2175	Handle `shell-command-dont-erase-buffer'.  (Bug#39067)
2176	Reorganize error-buffer handling.  Set `default-directory'.
2177	(Bug#39253)
2178	(tramp-handle-shell-command, tramp-handle-start-file-process):
2179	Implement asynchronous `error-buffer'.
2180	(tramp-action-process-alive): Read pending output.
2181	(tramp-read-passwd): Use `tramp-compat-temporary-file-directory'.
2182	(Bug#39389, Bug#39489)
2183	(tramp-interrupt-process): Improve command.
2184
2185	* lisp/net/trampver.el: Change version to "2.4.5-pre".
2186	(tramp-repository-branch, tramp-repository-version):
2187	Bind `debug-on-error' to nil.
2188
2189	* test/lisp/net/tramp-tests.el (tramp-get-remote-gid)
2190	(process-file-return-signal-string)
2191	(shell-command-dont-erase-buffer): Declare.
2192	(tramp-test10-write-region, tramp-test28-process-file)
2193	(tramp-test29-start-file-process, tramp-test30-make-process)
2194	(tramp-test31-interrupt-process, tramp-test32-shell-command):
2195	Extend test.
2196	(tramp-test10-write-region, tramp-test21-file-links): Use function
2197	symbols.
2198	(tramp-test18-file-attributes): Check `file-ownership-preserved-p'
2199	only if possible.
2200	(tramp--test-async-shell-command): New defun.
2201	(tramp--test-shell-command-to-string-asynchronously): Use it.
2202	(tramp-test32-shell-command-dont-erase-buffer): New test.
2203
22042020-08-24  Phillip Lord  <phillip.lord@russet.org.uk>
2205
2206	Fix error in GMP test
2207
2208	* etc/w32-feature.el: Update to use system-configuration-features for
2209	  GMP test.
2210
22112020-08-24  Phillip Lord  <phillip.lord@russet.org.uk>
2212
2213	Add Feature testing for Windows binaries
2214
2215	* etc/w32-feature.el: New file
2216
22172020-08-20  Stefan Kangas  <stefankangas@gmail.com>
2218
2219	Revert "; * etc/NEWS: Remove temporary note on documentation.  (Bug#42917)"
2220
2221	This reverts commit 121be3e1181e609734fc4cc9d2d54cf7eec18ab2.
2222
22232020-08-19  Glenn Morris  <rgm@gnu.org>
2224
2225	* admin/admin.el (set-version): Trap yet another NEWS error.
2226
22272020-08-19  Mattias Engdegård  <mattiase@acm.org>
2228
2229	Fix cond jump table compilation (bug#42919)
2230
2231	This bug affected compilation of
2232
2233	 (cond ((member '(some list) variable) ...) ...)
2234
2235	While equal is symmetric, member is not; in the latter case the
2236	arguments must be a variable and a constant list, in that order.
2237
2238	Reported by Ikumi Keita.
2239
2240	* lisp/emacs-lisp/bytecomp.el (byte-compile--cond-switch-prefix):
2241	Don't treat equality and member predicates in the same way; only
2242	the former are symmetric in their arguments.
2243	* test/lisp/emacs-lisp/bytecomp-tests.el
2244	(byte-opt-testsuite-arith-data): Add test cases.
2245
22462020-08-17  Paul Eggert  <eggert@cs.ucla.edu>
2247
2248	Let Emacs start even if curdir is inaccessible
2249
2250	* lisp/startup.el (normal-top-level): Also delete PWD if
2251	file-attributes fails for either $PWD or default-directory,
2252	instead of failing out of the top level.
2253	This fixes a regression from Emacs 26 (Bug#42903).
2254
22552020-08-17  Paul Eggert  <eggert@cs.ucla.edu>
2256
2257	* etc/NEWS: Mention GnuPG 2.0 through 2.1.5 issue (Bug#42845).
2258
22592020-08-17  Robert Pluim  <rpluim@gmail.com>
2260
2261	Fix bug with ~/Emacs file not being read at init
2262
2263	* src/xrdb.c (get_user_app): Put "/" between homedir
2264	and %L or %N (Bug#42827).
2265
22662020-08-15  Tino Calancha  <tino.calancha@gmail.com>
2267
2268	Prevent from frozen frame after `C-z' in Lucid builds
2269
2270	Some WMs (e.g. mutter in Gnome Shell) don't unmap iconized windows,
2271	thus we won't get a MapNotify when deconifying them.
2272	Check if we are deconifying a window elsewhere (Bug#42655).
2273
2274	- src/xterm.c (handle_one_xevent):
2275	Check for window deconify when receiving a FocusIn signal.
2276
22772020-08-15  Eli Zaretskii  <eliz@gnu.org>
2278
2279	Document the 'flex' completion style
2280
2281	* doc/emacs/mini.texi (Completion Styles): Document the 'flex'
2282	completion style.  (Bug#42763)
2283
22842020-08-14  Lars Ingebrigtsen  <larsi@gnus.org>
2285
2286	Note that Emacs needs systemd support if systemd is used to stop/start
2287
2288	* etc/NEWS: Note that Emacs needs to be built with systemd support
2289	systemd is used to stop/start Emacs (bug#42242).  Change suggested by
2290	Bhavin Gandhi <bhavin7392@gmail.com>
2291
22922020-08-14  Mattias Engdegård  <mattiase@acm.org>
2293
2294	Regexps cannot infloop; fix manual
2295
2296	* doc/lispref/searching.texi (Regexp Special): Edit erroneous
2297	statements about infinite looping in regexps.
2298
2299	(cherry picked from commit 63268253d21c57d991cba3f3b083d74f154a26fe)
2300
23012020-08-13  Paul Eggert  <eggert@cs.ucla.edu>
2302
2303	Fix startup working dir bug on NeXTSTEP
2304
2305	* src/emacs.c (main) [NS_IMPL_COCOA]: Update emacs_wd
2306	after a NS GUI chdirs successfully (Bug#42836).
2307
23082020-08-13  Eli Zaretskii  <eliz@gnu.org>
2309
2310	Improve documentation of function argument lists
2311
2312	* doc/lispref/functions.texi (Lambda Components)
2313	(Defining Functions): Add a cross-reference to "Argument List".
2314	(Argument List): Improve the section name.  (Bug#42750)
2315
23162020-08-13  Eli Zaretskii  <eliz@gnu.org>
2317
2318	Improve documentation of special events
2319
2320	* doc/lispref/commands.texi (Misc Events): Explain how to bind
2321	special events to commands.
2322
23232020-08-13  Eli Zaretskii  <eliz@gnu.org>
2324
2325	Fix face merging at EOL when inherited face specifies :extend
2326
2327	* src/xfaces.c (merge_face_ref): Handle correctly faces that
2328	inherit from another, and in addition specify :extend.
2329	(Bug#42552)
2330
2331	(cherry picked from commit 39c90f8dfabe158ad7ac9243aa9b9dedb9409e19)
2332
23332020-08-13  Eli Zaretskii  <eliz@gnu.org>
2334
2335	Fix face extension past EOL in overlay strings
2336
2337	* src/xdisp.c (face_at_pos): Pass ATTR_FILTER to
2338	face_for_overlay_string.
2339	* src/xfaces.c (face_for_overlay_string): Accept an additional
2340	argument ATTR_INDEX and pass it to merge_face_ref for merging the
2341	face at POS.  This ensures a face from buffer text will not be
2342	merged unless it specifies the :extend attribute.  (Bug#42552)
2343	* src/dispextern.h (face_for_overlay_string): Adjust prototype.
2344
2345	(cherry picked from commit 35564bea4d73bc266743216599d01d644aed6fd8)
2346
23472020-08-12  Phil Sainty  <psainty@orcon.net.nz>
2348
2349	Fix comint-redirect-results-list regexp usage (Bug#42662)
2350
2351	* lisp/comint.el (comint-redirect-results-list-from-process):
2352	Don't treat the literal string argument COMMAND as a regexp.
2353
23542020-08-04  Nicolas Petton  <nicolas@petton.fr>
2355
2356	* etc/HISTORY: Update the Emacs 27.1 release date.
2357
23582020-08-03  Phil Sainty  <psainty@orcon.net.nz>
2359
2360	lisp/so-long.el: Improve support for major mode hooks
2361
2362	* lisp/so-long.el (so-long-remember-all, so-long-disable-minor-modes)
2363	(so-long-override-variables): Store and use the `so-long-minor-modes'
2364	and `so-long-variable-overrides' values seen by the original major
2365	mode, so that buffer-local changes made in the major mode hook will be
2366	respected.
2367
2368	Add documentation of this and other major mode hook usage.
2369
23702020-08-02  Grégory Mounié  <Gregory.Mounie@imag.fr>  (tiny change)
2371
2372	Avoid segfaults if XIM is set but not xim_styles
2373
2374	Emacs segfaults at the X11 initialization if XIM is set
2375	and xim_styles is NULL.  This patch avoids the crash.
2376	* src/xfns.c: Check also if FRAME_X_XIM_STYLES(f) is NULL.
2377	(Bug#42676)  (Bug#42673)  (Bug#42677)
2378
23792020-07-31  Philipp Stephani  <phst@google.com>
2380
2381	Backport: Make checking for liveness of global values more precise.
2382
2383	We can't just use a hash lookup because a global and a local reference
2384	might refer to the same Lisp object.
2385
2386	* src/emacs-module.c (module_free_global_ref): More precise check for
2387	global liveness.
2388
2389	(cherry picked from commit 9f01ce6327af886f26399924a9aadf16cdd4fd9f)
2390
23912020-07-31  Philipp Stephani  <phst@google.com>
2392
2393	Backport: Fix subtle bug when checking liveness of module values.
2394
2395	We can't simply look up the Lisp object in the global reference table
2396	because an invalid local and a valid global reference might refer to
2397	the same object.  Instead, we have to test the address of the global
2398	reference against the stored references.
2399
2400	* src/emacs-module.c (module_global_reference_p): New helper function.
2401	(value_to_lisp): Use it.
2402
2403	(cherry picked from commit 6355a3ec62f43c9b99d483982ff851d32dd78891)
2404
24052020-07-31  Philipp Stephani  <phst@google.com>
2406
2407	Backport: Fix memory leak for global module objects (Bug#42482).
2408
2409	Instead of storing the global values in a global 'emacs_value_storage'
2410	object, store them as hash values alongside the reference counts.
2411	That way the garbage collector takes care of cleaning them up.
2412
2413	* src/emacs-module.c (global_storage): Remove.
2414	(struct module_global_reference): New pseudovector type.
2415	(XMODULE_GLOBAL_REFERENCE): New helper function.
2416	(module_make_global_ref, module_free_global_ref): Use
2417	'module_global_reference' struct for global reference values.
2418	(value_to_lisp, module_handle_nonlocal_exit): Adapt to deletion of
2419	'global_storage'.
2420
2421	(cherry picked from commit 5c5eb9790898e4ab10bcbbdb6871947ed3018569)
2422
24232020-07-30  Nicolas Petton  <nicolas@petton.fr>
2424
2425	* admin/authors.el (authors-aliases): Remove a faulty regexp.
2426
24272020-07-29  Stefan Kangas  <stefankangas@gmail.com>
2428
2429	* doc/lispref/symbols.texi (Definitions): Fix typo.
2430
24312020-07-28  Nicolas Petton  <nicolas@petton.fr>
2432
2433	* etc/HISTORY: Add Emacs 27.1 release date.
2434
24352020-07-28  Nicolas Petton  <nicolas@petton.fr>
2436
2437	Bump Emacs version to 27.1
2438
2439	* README:
2440	* configure.ac:
2441	* msdos/sed2v2.inp:
2442	* nt/README.W32: Bump Emacs version.
2443
24442020-07-28  Nicolas Petton  <nicolas@petton.fr>
2445
2446	* etc/AUTHORS: Update.
2447
24482020-07-28  Nicolas Petton  <nicolas@petton.fr>
2449
2450	Update authors.el
2451
2452	* admin/authors.el (authors-aliases): Add author aliases.
2453
24542020-07-28  Nicolas Petton  <nicolas@petton.fr>
2455
2456	* etc/NEWS: Remove temporary markup.
2457
24582020-07-26  Philipp Stephani  <phst@google.com>
2459
2460	Add another test for global module references
2461
2462	* test/src/emacs-module-tests.el (mod-test-globref-reordered): New
2463	unit test.
2464
2465	* test/data/emacs-module/mod-test.c (Fmod_test_globref_reordered): New
2466	test module function.
2467	(emacs_module_init): Export it.
2468
24692020-07-26  Philipp Stephani  <phst@google.com>
2470
2471	Backport: add another test case for module assertions.
2472
2473	This backports commit 9f01ce6327 from master.  Since the bug isn’t
2474	present on emacs-27, just backport the new test case.
2475
2476	* test/data/emacs-module/mod-test.c (Fmod_test_globref_invalid_free):
2477	New test module function.
2478	(emacs_module_init): Export it.
2479
2480	* test/src/emacs-module-tests.el
2481	(module--test-assertions--globref-invalid-free): New unit test.
2482
24832020-07-26  Philipp Stephani  <phst@google.com>
2484
2485	Backport: Add module test for edge case.
2486
2487	This backports commit 6355a3ec62 from master.  Since the bug isn’t
2488	present in emacs-27, just backport the test case.
2489
2490	* test/data/emacs-module/mod-test.c
2491	(Fmod_test_invalid_store_copy): New test module function.
2492	(emacs_module_init): Export it.
2493
2494	* test/src/emacs-module-tests.el
2495	(module--test-assertions--load-non-live-object-with-global-copy):
2496	New unit test.
2497
24982020-07-25  Eli Zaretskii  <eliz@gnu.org>
2499
2500	Fix last change
2501
2502	* src/composite.c (composition_reseat_it): Fix of the commentary,
2503	and a minor change of the last fix.
2504
25052020-07-25  Pip Cet  <pipcet@gmail.com>
2506
2507	Fix Arabic shaping when column-number-mode is in effect
2508
2509	* src/indent.c (scan_for_column, compute_motion): Pass -1,
2510	instead of NEUTRAL_DIR, to 'composition_reseat_it'.
2511	* src/composite.c (composition_reseat_it): Interpret negative
2512	value of BIDI_LEVEL to mean the caller doesn't know what is the
2513	bidi direction of the text.  (Bug#41005)
2514
25152020-07-24  Eli Zaretskii  <eliz@gnu.org>
2516
2517	Fix description of kmacro-* commands in the user manual
2518
2519	* doc/emacs/kmacro.texi (Basic Keyboard Macro): Separate old-style
2520	macro definition commands from the new style in the summary
2521	table.  (Bug#42492)
2522
25232020-07-24  Lars Ingebrigtsen  <larsi@gnus.org>
2524
2525	Fix viewing of encrypted S/MIME messages
2526
2527	* lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt): Don't
2528	add a content-type header if there already is one (bug#41659).
2529
25302020-07-21  Ken Manheimer  <ken.manheimer@gmail.com>
2531
2532	Revert "Rectify allout-widgets region undecoration so item at start is not missed."
2533
2534	This reverts commit 33d85cb768b40794bffcd9ab22fbdec1211a74e5.
2535
2536	Backporting it to emacs-27 was not appropriate.
2537
25382020-07-21  Ken Manheimer  <ken.manheimer@gmail.com>
2539
2540	Revert "Resolve missing button-region keymap bindings."
2541
2542	This reverts commit dd7c191291c8eb1afeac0f1512745491c5c7a317.
2543
2544	Backporting it to emacs-27 was not appropriate.
2545
25462020-07-21  Ken Manheimer  <ken.manheimer@gmail.com>
2547
2548	Revert "Provide missing let definition to prevent background void-variable error."
2549
2550	This reverts commit 3c410b6b4753e02269bb36914e7534eb124150dd.
2551
2552	Backporting it to emacs-27 was not appropriate.
2553
25542020-07-21  Ken Manheimer  <ken.manheimer@gmail.com>
2555
2556	Revert "Don't let item decoration be disrupted by too-shallow items."
2557
2558	This reverts commit 8684216542889fa57daa32072104afc69785907f.
2559
2560	Backporting it to emacs-27 was not appropriate.
2561
25622020-07-21  Ken Manheimer  <ken.manheimer@gmail.com>
2563
2564	Revert "Fix allout-widgets-mode handling of edits to item cue, fixing (bug#11312)"
2565
2566	This reverts commit 8e13d332481551e4c8c1c66dd0c69dd09256dffc.
2567
2568	Backporting it to emacs-27 was not appropriate.
2569
25702020-07-21  Robert Pluim  <rpluim@gmail.com>
2571
2572	Run custom-magic-reset in the customize buffer
2573
2574	If the user has navigated away from the customize buffer, then
2575	clicking on a widget in the customize buffer applies changes in the
2576	selected buffer rather than in the customize buffer.  Pass the
2577	customize buffer to 'custom-magic-reset' to avoid this.
2578
2579	* lisp/cus-edit.el (custom-magic-reset): Add optional buffer argument,
2580	apply changes in that buffer.
2581	(custom-notify): Pass the buffer containing the widget to
2582	'custom-magic-reset'.  (Bug#40788)
2583
25842020-07-20  Ken Manheimer  <ken.manheimer@gmail.com>
2585
2586	Backport: Rectify allout-widgets region undecoration so item at start is not missed.
2587
2588	* lisp/allout-widgets.el (allout-widgets-undecorate-region):
2589	Reorganize the loop so an item at the start is not skipped.
2590
2591	(cherry picked from commit 33d85cb768b40794bffcd9ab22fbdec1211a74e5)
2592
25932020-07-20  Ken Manheimer  <ken.manheimer@gmail.com>
2594
2595	Backport: Resolve missing button-region keymap bindings.
2596
2597	* lisp/allout-widgets.el (allout-item-icon-keymap,
2598	allout-item-body-keymap, allout-cue-span-keymap, allout-widgets-mode):
2599	Inherit from both (current-local-map) and (current-global-map). This
2600	provides for missing global bindings when inheriting from
2601	just (current-local-map), eg Esc-<.
2602
2603	(cherry picked from commit dd7c191291c8eb1afeac0f1512745491c5c7a317)
2604
26052020-07-20  Ken Manheimer  <ken.manheimer@gmail.com>
2606
2607	Backport: Provide missing let definition to prevent background void-variable error.
2608
2609	* lisp/allout-widgets.el (allout-widgets-exposure-change-processor)
2610	Let-declare handled-conceal, for reference through `(symbol-value)'
2611	within the let body. (Because the error happens in an
2612	after-change-functions hook, so it is caught and reported as a message
2613	by allout-widgets-hook-error-handler.)
2614
2615	(cherry picked from commit 3c410b6b4753e02269bb36914e7534eb124150dd)
2616
26172020-07-20  Ken Manheimer  <ken.manheimer@gmail.com>
2618
2619	Backport: Don't let item decoration be disrupted by too-shallow items.
2620
2621	* lisp/allout-widgets.el (allout-decorate-item-and-context): Check for
2622	parent-position having value before using it.
2623
2624	Also, shift local emacs vars topic deeper so it doesn't constitute
2625	an instance of that particular aberrant case.
2626
2627	(cherry picked from commit 8684216542889fa57daa32072104afc69785907f)
2628
26292020-07-20  Ken Manheimer  <ken.manheimer@gmail.com>
2630
2631	Backport: Fix allout-widgets-mode handling of edits to item cue, fixing (bug#11312)
2632
2633	* lisp/allout-widgets.el (allout-decorate-item-cue): Properly decorate
2634	item cue span.
2635	(allout-setup-text-properties): use allout-graphics-modification-handler
2636	as allout-cue-span-category modification hook.
2637
2638	(cherry picked from commit 8e13d332481551e4c8c1c66dd0c69dd09256dffc)
2639
26402020-07-20  Robert Pluim  <rpluim@gmail.com>
2641
2642	Document prefix arg effects for 'epa-mail-{sign,encrypt}'
2643
2644	* doc/misc/epa.texi (Mail-mode integration): Describe effect of
2645	prefix arg to 'epa-mail-encrypt' and 'epa-mail-sign'.
2646
2647	* lisp/epa-mail.el (epa-mail-sign): Describe effect of prefix arg.
2648
26492020-07-20  Robert Pluim  <rpluim@gmail.com>
2650
2651	* etc/NEWS: Correct description of :client-certificate change
2652
26532020-07-18  Eli Zaretskii  <eliz@gnu.org>
2654
2655	Revert "Fix filename completion in shell mode buffers"
2656
2657	This reverts commit e4d17d8cb479ffeeb7dfb7320a1432722ac8df75.
2658	Per bug#42383 discussions, the fix for bug#34330 probably
2659	just works around the real issue, which is in pcomplete.el.
2660
26612020-07-18  Eli Zaretskii  <eliz@gnu.org>
2662
2663	Improve documentation of 'bookmark-bmenu-mode'
2664
2665	* lisp/bookmark.el (bookmark-bmenu-mode): Add
2666	`bookmark-bmenu-search' to the doc string.  (Bug#42325)
2667
26682020-07-18  Eli Zaretskii  <eliz@gnu.org>
2669
2670	Update systems using GnuTLS certificate files
2671
2672	* lisp/net/gnutls.el (gnutls-trustfiles): Update the names of the
2673	systems in the comments.  Reported by Richard Stallman <rms@gnu.org>
2674	in
2675	https://lists.gnu.org/archive/html/emacs-devel/2020-07/msg00455.html.
2676
26772020-07-17  Eli Zaretskii  <eliz@gnu.org>
2678
2679	Improve documentation of 'kill-emacs'
2680
2681	* doc/lispref/os.texi (Killing Emacs):
2682	* src/emacs.c (Fkill_emacs): Document what non-integer, non-string
2683	argument to 'kill-emacs' means.  (Bug#42400)
2684
26852020-07-17  Eli Zaretskii  <eliz@gnu.org>
2686
2687	Improve documentation of 'display-raw-bytes-as-hex'
2688
2689	* doc/emacs/display.texi (Text Display): Mention
2690	'display-raw-bytes-as-hex'.  (Bug#42384)
2691
26922020-07-17  Robert Pluim  <rpluim@gmail.com>
2693
2694	Correct descriptions of init file
2695
2696	These still referred to XDG as being preferred.
2697
2698	* doc/emacs/custom.texi (Init File): Correct description of init
2699	file preference order (Bug#42388).
2700
2701	* doc/emacs/custom.texi (Find Init): Correct description of
2702	default init-file.
2703
27042020-07-16  Eli Zaretskii  <eliz@gnu.org>
2705
2706	Fix interrupt-process on MS-Windows
2707
2708	* src/w32proc.c (sys_kill): Test the status of the left Ctrl key
2709	for the purpose of restoring it after simulating Ctrl-C.  This
2710	avoids leaving the left Ctrl key status in depressed state when
2711	the user actually pressed the right Ctrl key.  (Bug#42350)
2712
27132020-07-11  Andrea Corallo  <akrl@sdf.org>
2714
2715	Revert "* doc/misc/flymake.texi (An annotated example backend): Typo fix."
2716
2717	This reverts commit b1ad0380d2372b8df35ff603b8918d22c27ad964.
2718
27192020-07-11  Mattias Engdegård  <mattiase@acm.org>
2720
2721	Correct 'concat' manual entry (bug#42296)
2722
2723	* doc/lispref/strings.texi (Creating Strings): 'concat' does not
2724	necessarily return a newly allocated string.  This has been the case
2725	at least since 1997 (Emacs 20.3).
2726
27272020-07-11  Andrea Corallo  <akrl@sdf.org>
2728
2729	* doc/misc/flymake.texi (An annotated example backend): Typo fix.
2730
27312020-07-11  Eli Zaretskii  <eliz@gnu.org>
2732
2733	Add commentary in gtkutil.c
2734
2735	* src/gtkutil.c: Add a comment regarding the incompatibilities
2736	vis-a-vis GTK.  Suggested by Richard Stallman <rms@gnu.org>.
2737
27382020-07-10  Basil L. Contovounesios  <contovob@tcd.ie>
2739
2740	Consistently stylize eldoc as ElDoc in prose
2741
2742	* doc/emacs/custom.texi (Specifying File Variables):
2743	* doc/emacs/modes.texi (Major Modes):
2744	* doc/emacs/programs.texi (Lisp Doc):
2745	* etc/NEWS.22:
2746	* etc/NEWS.23:
2747	* lisp/progmodes/python.el:
2748	(python-eldoc-function):
2749	* test/lisp/progmodes/python-tests.el: Consistently capitalize eldoc
2750	as ElDoc rather than Eldoc.
2751
27522020-07-09  Eli Zaretskii  <eliz@gnu.org>
2753
2754	Improve documentation of "C-u C-x ="
2755
2756	* doc/emacs/mule.texi (International Chars): Mention the
2757	composition information displayed by "C-u C-x =".  (Bug#42256)
2758
27592020-07-09  Paul Eggert  <eggert@cs.ucla.edu>
2760
2761	Mention floating rounding issues
2762
2763	* doc/lispref/numbers.texi (Float Basics): Mention floating-point
2764	rounding issues uncovered by the discussion in Bug#42417.
2765
27662020-07-09  Mattias Engdegård  <mattiase@acm.org>
2767
2768	Repair global-auto-revert-ignore-modes (bug#42271)
2769
2770	Reported by Gustavo Tavares Cabral.
2771
2772	* lisp/autorevert.el (auto-revert--global-add-current-buffer): Fix typo.
2773
27742020-07-08  Eli Zaretskii  <eliz@gnu.org>
2775
2776	One more improvement of left/right-fringe display spec docs
2777
2778	* doc/lispref/display.texi (Fringe Bitmaps): Yet another
2779	clarification of how to use FACE in left/right-fringe display
2780	spec.
2781
27822020-07-07  Eli Zaretskii  <eliz@gnu.org>
2783
2784	Another clarification of left/right-fringe display spec
2785
2786	* doc/lispref/display.texi (Fringe Bitmaps): More accurate
2787	description of what FACE means in the left/right-fringe display
2788	spec.
2789
27902020-07-07  Eli Zaretskii  <eliz@gnu.org>
2791
2792	Avoid infloop in 'format-mode-line'
2793
2794	* src/xdisp.c (decode_mode_spec): Don't use W->start if it is
2795	outside of the buffer's accessible region.  (Bug#42220)
2796
27972020-07-05  Eli Zaretskii  <eliz@gnu.org>
2798
2799	Clarify the documentation of 'left/right-fringe' display spec
2800
2801	* doc/lispref/display.texi (Other Display Specs, Fringe Bitmaps):
2802	Clarify how the optional FACE parameter of the left-fringe and
2803	right-fringe display spec is used.  Reported by Gregory Heytings
2804	<ghe@sdf.org>.
2805
28062020-07-04  Eli Zaretskii  <eliz@gnu.org>
2807
2808	Minor improvement in ELisp manual
2809
2810	* doc/lispref/frames.texi (Position Parameters): Clarify the
2811	description of the 'above' frame parameter.  (Bug#42154)
2812
28132020-07-02  Michael Albinus  <michael.albinus@gmx.de>
2814
2815	* doc/misc/tramp.texi (Customizing Methods): Fix typo.
2816
28172020-06-29  Philipp Stephani  <phst@google.com>
2818
2819	Fix undefined behavior in json.c (Bug#42113)
2820
2821	* src/json.c (lisp_to_json_toplevel_1, Fjson_parse_string): Check
2822	whether input strings are actually strings.
2823
2824	* test/src/json-tests.el (json-parse-string/wrong-type)
2825	(json-serialize/wrong-hash-key-type): New regression tests.
2826
28272020-06-28  Richard Kim  <emacs18@gmail.com>
2828
2829	Fix ACTION argument of 'display-buffer' call in gud.el
2830
2831	* lisp/progmodes/gud.el (gud-common-init): The ACTION argument of
2832	'display-buffer' should be a list of list of functions.  (Bug#41888)
2833
28342020-06-27  Eli Zaretskii  <eliz@gnu.org>
2835
2836	* src/keyboard.c (Fclear_this_command_keys): Doc fix.
2837
28382020-06-27  Eli Zaretskii  <eliz@gnu.org>
2839
2840	Improve do string of 'man'
2841
2842	* lisp/man.el (man): Mention the need to use C-q for quoting the
2843	SPC character in the man-page input.  (Bug#41859)
2844
28452020-06-26  Eli Zaretskii  <eliz@gnu.org>
2846
2847	Fix posn-at-point at beginning of a display string
2848
2849	* src/xdisp.c (pos_visible_p): Account for the line-number width
2850	when the display string at CHARPOS ends in a newline.  (Bug#42039)
2851
28522020-06-26  Eli Zaretskii  <eliz@gnu.org>
2853
2854	Improve documentation of Info node movement commands
2855
2856	* lisp/info.el (Info-next, Info-prev, Info-forward-node)
2857	(Info-backward-node): More detailed descriptions of what each
2858	commands does with respect to child and parent nodes.  (Bug#42050)
2859
28602020-06-22  Phillip Lord  <phillip.lord@russet.org.uk>
2861
2862	Add Jansson dependency to Windows Build
2863
2864	* admin/nt/dist-build/build-dep-zips.py: Add dependency
2865
28662020-06-22  Richard Copley  <rcopley@gmail.com>  (tiny change)
2867
2868	Unbreak 'reverse-region'
2869
2870	* lisp/sort.el (reverse-region): Unbreak the function.  It was
2871	broken by a fix for bug#39376.
2872
28732020-06-22  Basil L. Contovounesios  <contovob@tcd.ie>
2874
2875	Fix typos and markup in fill column indicator docs
2876
2877	* doc/emacs/display.texi (Displaying Boundaries): Fix typos and
2878	Texinfo markup.
2879
28802020-06-20  Stephen Berman  <stephen.berman@gmx.net>
2881
2882	Avoid crashes in 'defconst'
2883
2884	* src/eval.c (Fdefconst): Verify that SYMBOL is a known symbol.
2885	(Bug#41817)
2886
28872020-06-20  Richard Stallman  <rms@gnu.org>
2888
2889	Fix text about Lisp archives in the Emacs FQ
2890
2891	* doc/misc/efaq.texi (Packages that do not come with Emacs): Warn
2892	about using Lisp archives other than GNU ELPA.
2893
28942020-06-20  Eli Zaretskii  <eliz@gnu.org>
2895
2896	Don't use 'cl' functions in ELisp manual's examples
2897
2898	* doc/lispref/control.texi (pcase Macro): Use 'cl-evenp' instead
2899	of 'evenp'.  (Bug#41947)
2900
29012020-06-17  Basil L. Contovounesios  <contovob@tcd.ie>
2902
2903	Fix some Texinfo markup
2904
2905	* doc/misc/gnus-faq.texi (FAQ 3-11):
2906	* doc/emacs/frames.texi (Tab Bars): Consistently use @var with
2907	lower-case metasyntactic variables and @minus instead of a dash.
2908	(Text-Only Mouse):
2909	* doc/emacs/files.texi (Auto Revert):
2910	* doc/emacs/misc.texi (emacsclient Options)
2911	(Embedded WebKit Widgets):
2912	* doc/lispref/control.texi (pcase Macro):
2913	* doc/lispref/debugging.texi (Backtraces):
2914	* doc/lispref/files.texi (Truenames):
2915	* doc/lispref/frames.texi (Management Parameters):
2916	* doc/lispref/os.texi (Time Calculations):
2917	* doc/lispref/text.texi (Parsing JSON):
2918	* doc/misc/efaq-w32.texi (Other versions of Emacs, Debugging)
2919	(Swap Caps NT, Printing, Bash, Developing with Emacs):
2920	* doc/misc/efaq.texi (New in Emacs 25):
2921	* doc/misc/emacs-gnutls.texi (Help For Users):
2922	* doc/misc/message.texi (Using S/MIME, Passphrase caching):
2923	* test/manual/etags/tex-src/gzip.texi (Overview): Use @. when a
2924	sentence in the middle of a paragraph ends with an upper-case letter
2925	as per "(texinfo) Ending a Sentence".
2926
29272020-06-17  Basil L. Contovounesios  <contovob@tcd.ie>
2928
2929	Fix recentf typo in Emacs manual
2930
2931	* doc/emacs/files.texi (File Conveniences): Fix misspelling of
2932	recentf-list.
2933
29342020-06-17  Juri Linkov  <juri@linkov.net>
2935
2936	Rename default function to next-error-buffer-unnavigated-current (bug#40919)
2937
2938	* lisp/simple.el (next-error-find-buffer-function): Rename default function
2939	from next-error-no-navigation-try-current
2940	to next-error-buffer-unnavigated-current.
2941
29422020-06-17  Juri Linkov  <juri@linkov.net>
2943
2944	* lisp/image-mode.el (image-toggle-display-image): Fix fit of rotated images.
2945
2946	When fitting rotated image to width and height, swap width and height
2947	when changing orientation between portrait and landscape (bug#41886).
2948
29492020-06-16  Michael Albinus  <michael.albinus@gmx.de>
2950
2951	* doc/misc/tramp.texi (Predefined connection information): Add "tmpdir".
2952
29532020-06-13  João Távora  <joaotavora@gmail.com>
2954
2955	Delete, don't kill, dir dir fragments in icomplete-fido-backward-updir
2956
2957	Reported by: Andrew Schwartzmeyer <andrew@schwartzmeyer.com>
2958
2959	* lisp/icomplete.el (icomplete-fido-backward-updir): Don't save
2960	dir fragments to kill ring.
2961
29622020-06-13  Basil L. Contovounesios  <contovob@tcd.ie>
2963
2964	Revert markup change in with-coding-priority docs
2965
2966	This partially reverts commit fc759eb9b3
2967	"Fix with-coding-priority markup in Elisp manual"
2968	of 2019-10-13T15:36:02Z!contovob@tcd.ie.
2969
2970	For discussion, see the following thread:
2971	https://lists.gnu.org/archive/html/emacs-devel/2019-10/msg00550.html
2972	https://lists.gnu.org/archive/html/emacs-devel/2020-06/msg00473.html
2973
2974	* doc/lispref/nonascii.texi (Specifying Coding Systems): Use more
2975	specific cross-reference to progn even if info.el displays it
2976	suboptimally.
2977
29782020-06-10  Juri Linkov  <juri@linkov.net>
2979
2980	* lisp/emulation/cua-rect.el (cua--rectangle-region-insert): New function.
2981
2982	Add cua--insert-rectangle around region-insert-function (bug#41440).
2983
29842020-06-09  Juri Linkov  <juri@linkov.net>
2985
2986	* lisp/simple.el (shell-command-on-region): Fix docstring.
2987
2988	* lisp/simple.el (shell-command-on-region): Mention REGION-NONCONTIGUOUS-P
2989	in docstring (bug#41440)
2990
2991	* etc/NEWS: Better example for 'windmove-display-default-keybindings'.
2992
29932020-06-08  Basil L. Contovounesios  <contovob@tcd.ie>
2994
2995	Clean up D-Bus documentation (bug#41744)
2996
2997	* doc/lispref/errors.texi (Standard Errors): The error symbol
2998	dbus-error is defined even when Emacs is built without D-Bus.
2999
3000	* doc/misc/dbus.texi (Bus Names, Introspection)
3001	(Nodes and Interfaces, Methods and Signal)
3002	(Properties and Annotations, Arguments and Signatures)
3003	(Synchronous Methods, Receiving Method Calls, Signals)
3004	(Alternative Buses, Errors and Events): Clarify wording.  Fix
3005	indentation of and simplify examples where possible.  Improve
3006	Texinfo markup and cross-referencing where possible.
3007	(Type Conversion): Ditto.  Remove mentions of Emacs' fixnum range
3008	now that we have bignums.
3009
3010	* lisp/net/dbus.el (dbus-return-values-table)
3011	(dbus-call-method-asynchronously, dbus-send-signal)
3012	(dbus-register-signal, dbus-register-method)
3013	(dbus-string-to-byte-array, dbus-byte-array-to-string)
3014	(dbus-escape-as-identifier, dbus-check-event, dbus-event-bus-name)
3015	(dbus-event-message-type, dbus-event-serial-number)
3016	(dbus-event-service-name, dbus-event-path-name)
3017	(dbus-event-interface-name, dbus-event-member-name)
3018	(dbus-list-activatable-names, dbus-list-queued-owners, dbus-ping)
3019	(dbus-introspect-get-interface-names, dbus-introspect-get-interface)
3020	(dbus-introspect-get-method, dbus-introspect-get-signal)
3021	(dbus-introspect-get-property, dbus-introspect-get-annotation-names)
3022	(dbus-introspect-get-annotation, dbus-introspect-get-argument-names)
3023	(dbus-introspect-get-argument, dbus-introspect-get-signature)
3024	(dbus-set-property, dbus-register-property)
3025	(dbus-get-all-managed-objects, dbus-init-bus): Clarify docstring and
3026	improve formatting where possible.
3027	(dbus-call-method): Ditto.  Remove mentions of Emacs' fixnum range
3028	now that we have bignums.
3029
30302020-06-08  Juri Linkov  <juri@linkov.net>
3031
3032	* lisp/image-mode.el (image-transform-original): New command (bug#41222).
3033
3034	(image-mode-map): Bind it to "so" and add to menu.
3035
30362020-06-08  Juri Linkov  <juri@linkov.net>
3037
3038	Move tab-bar and tab-line faces to faces.el (part of bug#41200)
3039
3040	These are basic faces, so they need to be defined in
3041	faces.el, otherwise (get 'tab-line 'face) returns 0.
3042
3043	* lisp/faces.el (tab-bar, tab-line): Move faces here
3044	from tab-bar.el and tab-line.el.
3045
3046	* lisp/tab-bar.el (tab-bar): Move face to faces.el.
3047	(tab-bar-faces): Add '((tab-bar custom-face))
3048	to the second arg MEMBERS of 'defgroup'.
3049
3050	* lisp/tab-line.el (tab-line): Move face to faces.el.
3051	(tab-line-faces): Add '((tab-line custom-face))
3052	to the second arg MEMBERS of 'defgroup'.
3053
30542020-06-07  Basil L. Contovounesios  <contovob@tcd.ie>
3055
3056	Fix typo in "(elisp) Type Keywords"
3057
3058	* doc/lispref/customize.texi (Type Keywords): Fix typo of 'choice'
3059	composite type.  (Bug#41749)
3060
30612020-06-07  Tassilo Horn  <tsdh@gnu.org>
3062
3063	Gnus nnir-summary-line-format has no effect
3064
3065	* lisp/gnus/nnir.el (nnir-mode): Update summary format specs if
3066	nnir-summary-line-format is set and different from
3067	gnus-summary-line-format.
3068	(nnir-open-server): Run nnir-mode in gnus-summary-generate-hook
3069	instead of gnus-summary-prepared-hook.
3070
30712020-06-06  Eli Zaretskii  <eliz@gnu.org>
3072
3073	Improve documentation of 'window-text-pixel-size'
3074
3075	* doc/lispref/display.texi (Size of Displayed Text): Clarify the
3076	description of 'window-text-pixel-size'.
3077
30782020-06-06  Eli Zaretskii  <eliz@gnu.org>
3079
3080	* src/xdisp.c (Fwindow_text_pixel_size): Doc fix.  (Bug#41737)
3081
30822020-06-06  Basil L. Contovounesios  <contovob@tcd.ie>
3083
3084	Minor improvements to EDE and EIEIO manuals
3085
3086	For discussion, see the following threads:
3087	https://lists.gnu.org/archive/html/emacs-devel/2020-05/msg00630.html
3088	https://lists.gnu.org/archive/html/emacs-devel/2020-06/msg00099.html
3089
3090	* doc/misc/ede.texi (ede-generic-project): Clean up example.
3091	* doc/misc/eieio.texi (Accessing Slots): Document slot-value as a
3092	generalized variable and set-slot-value as obsolete.
3093	(Predicates): Fix typo.
3094	(Introspection): Document eieio-class-slots in place of the obsolete
3095	object-slots.
3096
30972020-06-06  João Távora  <joaotavora@gmail.com>
3098
3099	Have Fido mode also imitate Ido mode in ignore-case options
3100
3101	Suggested by Sean Whitton <spwhitton@spwhitton.name>.
3102
3103	* lisp/icomplete.el (icomplete--fido-mode-setup): Set ignore-case
3104	options.
3105
31062020-06-05  Basil L. Contovounesios  <contovob@tcd.ie>
3107
3108	Update package-menu-quick-help
3109
3110	* lisp/emacs-lisp/package.el (package--quick-help-keys): Filtering
3111	is now bound to the prefix '/', not the key 'f' (bug#41721).
3112	Advertise only the standard 'g' binding now that both it and 'r' are
3113	bound to revert-buffer (bug#35504).
3114	(package--prettify-quick-help-key): Avoid modifying string literals.
3115	(package-menu-filter): Reintroduce as obsolete alias of
3116	package-menu-filter-by-keyword for backward
3117	compatibility (bug#36981).
3118
31192020-06-05  Eli Zaretskii  <eliz@gnu.org>
3120
3121	Improve documentation of 'sort-subr'
3122
3123	* doc/lispref/text.texi (Sorting): Clarify the meaning and use of
3124	PREDICATE argument to 'sort-subr'.  (Bug#41706)
3125
31262020-06-05  Andrii Kolomoiets  <andreyk.mad@gmail.com>
3127
3128	Update Ukrainian transliteration
3129
3130	* lisp/language/cyril-util.el (standard-display-cyrillic-translit):
3131	Add missing letter "ґ"; tweak letter "г".  (Bug#41683)
3132
31332020-06-05  Eli Zaretskii  <eliz@gnu.org>
3134
3135	Fix Arabic shaping when eww/shr fill the text to be rendered
3136
3137	* src/hbfont.c (hbfont_shape): Don't use DIRECTION if the current
3138	buffer has bidi reordering disabled.  (Bug#41005)
3139
31402020-06-03  Basil L. Contovounesios  <contovob@tcd.ie>
3141
3142	Silence some byte-compiler warnings in tests
3143
3144	* test/lisp/emacs-lisp/cl-generic-tests.el:
3145	* test/lisp/progmodes/elisp-mode-tests.el: Declare functions
3146	referred to within macroexpansions.
3147	(xref-elisp-overloadable-no-default)
3148	(xref-elisp-overloadable-co-located-default)
3149	(xref-elisp-overloadable-separate-default): Prefix unused arguments
3150	with underscore.
3151
3152	* test/lisp/international/ccl-tests.el:
3153	* test/lisp/wdired-tests.el:
3154	* test/lisp/emacs-lisp/package-tests.el: Declare functions used.
3155	(package-test-update-archives, package-test-signed): Use
3156	revert-buffer in place of its obsolete alias package-menu-refresh.
3157
3158	* test/lisp/eshell/eshell-tests.el:
3159	* test/lisp/mail/footnote-tests.el:
3160	* test/src/buffer-tests.el: Require dependencies used.
3161
3162	* test/lisp/image/exif-tests.el: Remove unneeded (require 'seq).
3163	(test-exit-direct-ascii-value): Actually perform the test.
3164	* test/lisp/progmodes/sql-tests.el (sql-test-add-existing-product):
3165	Fix typo.
3166
3167	* test/lisp/simple-tests.el (with-shell-command-dont-erase-buffer):
3168	* test/src/data-tests.el (test-bool-vector-bv-from-hex-string)
3169	(test-bool-vector-apply-mock-op): Remove unused local variables.
3170
31712020-06-03  Basil L. Contovounesios  <contovob@tcd.ie>
3172
3173	* test/lisp/battery-tests.el: New file.
3174
31752020-06-02  Basil L. Contovounesios  <contovob@tcd.ie>
3176
3177	Improve format-spec documentation (bug#41571)
3178
3179	* doc/lispref/text.texi (Interpolated Strings): Move from here...
3180	* doc/lispref/strings.texi (Custom Format Strings): ...to here,
3181	renaming the node and clarifying the documentation.
3182	(Formatting Strings): End node with sentence referring to the next
3183	one.
3184	* lisp/format-spec.el (format-spec): Clarify docstring.
3185
31862020-06-01  Eli Zaretskii  <eliz@gnu.org>
3187
3188	Don't call 'mbrtowc' on WINDOWSNT
3189
3190	* src/emacs.c (using_utf8): Don't call 'mbrtowc' on WINDOWSNT
3191	systems, as it's not available on Windows 9X.
3192
31932020-06-01  João Távora  <joaotavora@gmail.com>
3194
3195	* doc/emacs/buffers.texi (Icomplete): Mention icomplete-minibuffer-setup-hook.
3196
31972020-06-01  Paul Eggert  <eggert@cs.ucla.edu>
3198
3199	Be more aggressive in marking objects during GC
3200
3201	Simplified version of a patch from Pip Cet (Bug#41321#299).
3202	* src/alloc.c (maybe_lisp_pointer): Remove.  All uses removed.
3203	(mark_memory): Also look at the pointer offset by ‘lispsym’,
3204	for symbols.
3205
32062020-05-31  Alan Mackenzie  <acm@muc.de>
3207
3208	Fix bug #41618 "(byte-compile 'foo) errors when foo is a macro."
3209
3210	* lisp/emacs-lisp/bytecomp.el (byte-compile): Disentangle the eval of the
3211	final form from the pushing of 'macro onto it, doing the former first.
3212
32132020-05-31  Eli Zaretskii  <eliz@gnu.org>
3214
3215	Avoid crashes due to bidi cache being reset during redisplay
3216
3217	If automatic character composition triggers GC, and
3218	'garbage-collection-messages' are turned on, we could have the
3219	bidi cache reset while processing RTL text, which would then
3220	consistently crash.
3221	* src/xdisp.c (display_echo_area_1): Protect the bidi cache
3222	against changes inside 'try_window'.
3223
32242020-05-31  Juri Linkov  <juri@linkov.net>
3225
3226	* lisp/tab-bar.el (switch-to-buffer-other-tab): Normalize buffer.
3227
3228	* lisp/tab-bar.el (switch-to-buffer-other-tab): Use
3229	'window-normalize-buffer-to-switch-to' on 'buffer-or-name',
3230	like does 'pop-to-buffer' used by 'switch-to-buffer-other-frame',
3231	instead of raising the error "Invalid buffer" on a non-existent buffer name.
3232
32332020-05-30  Eli Zaretskii  <eliz@gnu.org>
3234
3235	Fix mingw.org's MinGW GCC 9 warning about 'execve'
3236
3237	* nt/inc/ms-w32.h (execve) [__GNUC__ > 9]: Provide a different
3238	prototype for mingw.org's MinGW as well, to match the GCC builtin.
3239
32402020-05-28  Glenn Morris  <rgm@gnu.org>
3241
3242	Tiny texinfo markup fixes
3243
3244	* doc/lispref/edebug.texi (Edebug Views):
3245	* doc/lispref/loading.texi (Library Search):
3246	* doc/lispref/os.texi (User Identification): Markup fixes.
3247
32482020-05-27  Dmitry Gutov  <dgutov@yandex.ru>
3249
3250	Make next-error behavior a bit more flexible
3251
3252	* lisp/simple.el (next-error-no-navigation-try-current):
3253	Extract from the case #2 in next-error-find-buffer (bug#40919).
3254	(next-error-find-buffer-function): Use it as the default.
3255
32562020-05-27  Noam Postavsky  <npostavs@gmail.com>
3257
3258	* etc/NEWS.25: Belatedly announce upcase-dwim and downcase-dwim.
3259
32602020-05-25  Eli Zaretskii  <eliz@gnu.org>
3261
3262	Fix access to single-byte characters in buffer text
3263
3264	* src/xdisp.c (get_visually_first_element)
3265	(Fbidi_find_overridden_directionality):
3266	* src/cmds.c (Fend_of_line): Use FETCH_BYTE instead of FETCH_CHAR,
3267	and byte position instead of character position, to access
3268	individual bytes of buffer text.  This avoids producing invalid
3269	characters and accessing wrong buffer positions.  (Bug#41520)
3270
32712020-05-25  Noam Postavsky  <npostavs@gmail.com>
3272
3273	Revert "Fix eshell-mode-map initialization"
3274
3275	It makes eshell-return-exits-minibuffer permanently affect the
3276	eshell-mode-map (Bug#41370).
3277
3278	Do not merge to master, we will fix it properly there.
3279
32802020-05-25  Matthias Meulien  <orontee@gmail.com>
3281
3282	Fix tab-bar-tab-name-ellipsis initialization
3283
3284	* lisp/tab-bar.el (tab-bar-tab-name-truncated): Evaluate displayable
3285	character when generating tab name.
3286
32872020-05-24  Basil L. Contovounesios  <contovob@tcd.ie>
3288
3289	Fix Elisp manual entry for format-spec
3290
3291	* doc/lispref/text.texi (Interpolated Strings): Fix typos.  Don't
3292	document modifier for default space padding as it's redundant and
3293	inconsistent with the docstring and implementation of format-spec.
3294
32952020-05-24  Eli Zaretskii  <eliz@gnu.org>
3296
3297	Fix rare assertion violations in 'etags'
3298
3299	* lib-src/etags.c (pfnote): Instead of raising an assertion when
3300	we get an empty tag name, return immediately.  (Bug#41465)
3301
3302	* test/manual/etags/ETAGS.good_1:
3303	* test/manual/etags/ETAGS.good_2:
3304	* test/manual/etags/ETAGS.good_3:
3305	* test/manual/etags/ETAGS.good_4:
3306	* test/manual/etags/ETAGS.good_5:
3307	* test/manual/etags/ETAGS.good_6: Adapt to latest changes in
3308	etags.
3309
33102020-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
3311
3312	* lisp/subr.el (save-match-data): Clarify use in docstring
3313
33142020-05-23  Eli Zaretskii  <eliz@gnu.org>
3315
3316	Improve the documentation of setting up fontsets
3317
3318	* doc/lispref/display.texi (Fontsets): Improve the accuracy of a
3319	cross-reference to "Character Properties".
3320
3321	* doc/emacs/mule.texi (Fontsets, Modifying Fontsets): Improve the
3322	documentation of fontsets and how to modify them.
3323
33242020-05-23  Eli Zaretskii  <eliz@gnu.org>
3325
3326	* doc/emacs/killing.texi (Rectangles): Improve indexing.
3327
33282020-05-23  Eli Zaretskii  <eliz@gnu.org>
3329
3330	Fix accessing files on networked drives on MS-Windows
3331
3332	* src/w32.c (acl_get_file): Set errno to ENOTSUP if
3333	get_file_security returns ERROR_NOT_SUPPORTED.  (Bug#41463)
3334
33352020-05-22  Alan Mackenzie  <acm@muc.de>
3336
3337	CC Mode: Fix bug #39972, by fixing c-display-defun-name for nested defuns
3338
3339	* lisp/progmodes/cc-mode.el (c-common-init): Build
3340	add-log-current-defun-function out of c-defun-name-and-limits instead of the
3341	former c-defun-name.
3342
33432020-05-21  Paul Eggert  <eggert@cs.ucla.edu>
3344
3345	Redo RCS Id for pdumper
3346
3347	* lisp/version.el: Don’t put an RCS Id style string into the
3348	executable via purecopy, as this does not work with the pdumper.
3349	* src/emacs.c (RCS_Id): New constant, for 'ident'.
3350
3351	(cherry picked from commit 3d1bcfba5e21b29be8669aa2a8f27b344c9e02fd)
3352
33532020-05-21  Stefan Kangas  <stefankangas@gmail.com>
3354
3355	Second attempt at improving indexing in control.texi
3356
3357	* doc/lispref/control.texi (Processing of Errors): Improve indexing by
3358	adding the word form "handle" in addition to "handling".  With thanks
3359	to Eli Zaretskii.
3360
33612020-05-19  Stefan Kangas  <stefankangas@gmail.com>
3362
3363	* doc/lispref/control.texi (Processing of Errors): Improve indexing.
3364
33652020-05-17  Paul Eggert  <eggert@cs.ucla.edu>
3366
3367	Minor fixups for mutability doc
3368
3369	* doc/lispref/objects.texi (Mutability): Minor fixups in
3370	response to a comment by Dmitry Gutov (Bug#40671#477).
3371
33722020-05-17  Paul Eggert  <eggert@cs.ucla.edu>
3373
3374	Don’t use “constant” for values you shouldn’t change
3375
3376	Inspired by patch proposed by Dmitry Gutov (Bug#40671#393)
3377	and by further comments by him and by Michael Heerdegen
3378	in the same bug report.
3379	* doc/lispintro/emacs-lisp-intro.texi (setcar):
3380	Don’t push mutability here.
3381	* doc/lispref/eval.texi (Self-Evaluating Forms, Quoting)
3382	(Backquote):
3383	* doc/lispref/lists.texi (Modifying Lists):
3384	* doc/lispref/objects.texi (Lisp Data Types, Mutability):
3385	* doc/lispref/sequences.texi (Array Functions, Vectors):
3386	* doc/lispref/strings.texi (String Basics, Modifying Strings):
3387	Don’t use the word “constant” to describe all values that
3388	a program should not change.
3389	* doc/lispref/objects.texi (Mutability):
3390	Rename from “Constants and Mutability”.  All uses changed.
3391	In a footnote, contrast the Emacs behavior with that of Common
3392	Lisp, Python, etc. for clarity, and say the goal is to be nicer.
3393
33942020-05-16  Eli Zaretskii  <eliz@gnu.org>
3395
3396	Improve documentation of manually installing Lisp packages
3397
3398	* doc/emacs/building.texi (Lisp Libraries): Describe how to
3399	manually load packages in the init file.  Mention the 'site-lisp'
3400	subdirectory of the default 'load-path'.
3401
3402	* doc/emacs/package.texi (Packages): Describe manual installation
3403	of ELisp packages.  Suggested by Jean-Christophe Helary
3404	<jean.christophe.helary@traduction-libre.org>.
3405
34062020-05-16  Eli Zaretskii  <eliz@gnu.org>
3407
3408	Reflect the emacs-devel ELPA/MELPA dispute in FAQ
3409
3410	* doc/misc/efaq.texi (Packages that do not come with Emacs): Warn
3411	that some MELPA packages may require non-free software.
3412
34132020-05-15  Tassilo Horn  <tsdh@gnu.org>
3414
3415	Consider face inheritance when checking region face background.
3416
3417	Some themes (like dracula) make the region face inherit from some
3418	other face.  If the background color of the region was inherited,
3419	`indicate-copied-region' did the switch-point-and-mark-twice dance
3420	which is not visible in case the region is highlighted.  It just
3421	looked like Emacs would hang for a second after M-w.
3422
3423	* lisp/simple.el (indicate-copied-region): Consider face inheritance
3424	when checking region face background.
3425
34262020-05-15  Leo Vivier  <leo.vivier+dev@gmail.com>
3427
3428	Fix dired default file operation (bug#41261)
3429
3430	* lisp/dired-aux.el (dired-dwim-target-directories): Restore
3431	pre-emacs-27 behavior of 'dired-dwim-target'.
3432
34332020-05-14  Philipp Stephani  <phst@google.com>
3434
3435	Fix documentation related to 'command-switch-alist'.
3436
3437	While there, add a unit test to verify the behavior.
3438
3439	* doc/lispref/os.texi (Command-Line Arguments): Fix documentation: the
3440	option string in 'command-switch-alist' does include leading hyphens.
3441	Also mention that 'command-switch-alist' parsing ignores equals signs
3442	in options.
3443
3444	* test/lisp/startup-tests.el
3445	(startup-tests/command-switch-alist): New unit test.
3446
34472020-05-13  Simon Lang  <simon.lang@outlook.com>  (tiny change)
3448
3449	Improve ediff readability in misterioso theme (Bug#41221)
3450
3451	* etc/themes/misterioso-theme.el: Add ediff faces.
3452
34532020-05-13  Clément Pit-Claudel  <clement.pitclaudel@live.com>
3454
3455	Fix a crash in handle_display_spec
3456
3457	* src/xdisp.c (handle_display_spec): Check that the cdr of the
3458	disable-eval spec is a cons before taking its car.  (Bug#41232)
3459
34602020-05-13  Martin Rudalics  <rudalics@gmx.at>
3461
3462	In x_hide_tip reset tip_last_frame for GTK+ tooltips only (Bug#41200)
3463
3464	* src/xfns.c (x_hide_tip): Reset tip_last_frame only when
3465	using GTK+ system tooltips (Bug#41200).
3466
34672020-05-12  João Távora  <joaotavora@gmail.com>
3468
3469	Fix docstring of flymake-make-diagnostic (bug#40351)
3470
3471	* lisp/progmodes/flymake.el (flymake-make-diagnostic): Fix docstring
3472
34732020-05-10  Paul Eggert  <eggert@cs.ucla.edu>
3474
3475	Go back to “Bahá’í”
3476
3477	* doc/emacs/calendar.texi (Holidays): Revert previous change, as
3478	bahai.org spells it “Bahá’í” (with U+2019 RIGHT SINGLE QUOTATION
3479	MARK) and that’s good enough for us.
3480
34812020-05-10  Eli Zaretskii  <eliz@gnu.org>
3482
3483	* lisp/dired.el (dired-toggle-marks): Doc fix.  (Bug#41097)
3484
34852020-05-09  Philipp Stephani  <phst@google.com>
3486
3487	Small fix for type of 'display-fill-column-indicator-character'
3488
3489	* lisp/cus-start.el (standard): Don't mark t as safe file-local value
3490	for 'display-fill-column-indicator-character', as that value isn't
3491	allowed.
3492
34932020-05-09  Eli Zaretskii  <eliz@gnu.org>
3494
3495	Fix customization of 'display-fill-column-indicator-character'
3496
3497	* lisp/cus-start.el (display-fill-column-indicator-character): Fix
3498	the customization form.  (Bug#41145)
3499
35002020-05-09  Philipp Stephani  <phst@google.com>
3501
3502	Refer to fill column indicator Info node in some places.
3503
3504	* src/xdisp.c (syms_of_xdisp): Add reference to manual in
3505	documentation strings for variables related to fill column indicators.
3506
3507	* lisp/display-fill-column-indicator.el (display-fill-column-indicator)
3508	(display-fill-column-indicator-mode): Add reference to manual.
3509
35102020-05-09  Martin Rudalics  <rudalics@gmx.at>
3511
3512	Fix GTK's Tool Bar menu radio buttons
3513
3514	* lisp/menu-bar.el (menu-bar-showhide-tool-bar-menu): Fix typo
3515	that makes the radio buttons pretend that the tool bar is always
3516	shown on the left side of the frame.
3517
35182020-05-09  Eli Zaretskii  <eliz@gnu.org>
3519
3520	Minor clarifications in NEWS
3521
3522	* etc/NEWS: Tell how to revert to previous behaviors regarding
3523	displaying messages when the minibuffer is active.  (Bug#41087)
3524
35252020-05-08  Philipp Stephani  <phst@google.com>
3526
3527	Improve documentation of 'with-suppressed-warnings'.
3528
3529	* lisp/emacs-lisp/byte-run.el (with-suppressed-warnings): Refer to
3530	'byte-compile-warnings' instead of 'byte-compile-warning-types', as
3531	only the former variable documents the available warning types.
3532
35332020-05-08  Eli Zaretskii  <eliz@gnu.org>
3534
3535	Fix a typo in a comment
3536
3537	* lisp/display-fill-column-indicator.el: Fix a typo in a comment.
3538	Suggested by david s <ds@fastmail.com>.
3539
35402020-05-08  Eli Zaretskii  <eliz@gnu.org>
3541
3542	Improve documentation of Hi Lock mode
3543
3544	* lisp/hi-lock.el (hi-lock-mode, hi-lock-face-buffer)
3545	(hi-lock-face-phrase-buffer, hi-lock-face-symbol-at-point):
3546	Clarify when 'hi-lock-mode' will use Font Lock and when it will
3547	use overlays.  (Bug#41124)
3548
35492020-05-08  Eli Zaretskii  <eliz@gnu.org>
3550
3551	Fix typos in the Emacs user manual
3552
3553	* doc/emacs/calendar.texi (Holidays): Fix usage of non-ASCII
3554	accents.
3555	* doc/emacs/custom.texi (Init Rebinding): Fix a cross-reference.
3556	* doc/emacs/dired.texi (Operating on Files): Make the
3557	cross-reference to "VC Delete/Rename" be to a different manual in
3558	the printed version.  (Bug#41100)
3559
35602020-05-08  Björn Holby  <bjorn.holby@gmail.com>  (tiny change)
3561
3562	Fix references to Speedbar in VHDL mode
3563
3564	* lisp/progmodes/vhdl-mode.el (vhdl-speedbar-initialize): Update
3565	references to Speedbar variables.  (Bug#41084)
3566
35672020-05-08  Eli Zaretskii  <eliz@gnu.org>
3568
3569	Fix handling of FROM = t and TO = t by 'window-text-pixel-size'
3570
3571	* src/xdisp.c (Fwindow_text_pixel_size): Use byte position for
3572	accessing buffer text, not character positions.  (Bug#41125)
3573
35742020-05-06  Eli Zaretskii  <eliz@gnu.org>
3575
3576	* doc/emacs/modes.texi (Major Modes): Fix quoting.  (Bug#41110)
3577
35782020-05-06  Noam Postavsky  <npostavs@gmail.com>
3579
3580	Fix docstring quoting
3581
3582	* lisp/gnus/message.el (message-sendmail-extra-arguments): Fix
3583	escaping of quotes in docstring.
3584
35852020-05-06  Noam Postavsky  <npostavs@gmail.com>
3586
3587	Revert "cl-loop: Calculate the array length just once"
3588
3589	Don't merge to master.  This is a safe-for-release fix for Bug#40727.
3590
35912020-05-06  Noam Postavsky  <npostavs@gmail.com>
3592
3593	Revert "cl-loop: Add missing guard condition"
3594
3595	Don't merge to master.  This is a safe-for-release fix for Bug#40727.
3596
35972020-05-06  Noam Postavsky  <npostavs@gmail.com>
3598
3599	Revert "Refix conditional step clauses in cl-loop"
3600
3601	Don't merge to master.  This is a safe-for-release fix for Bug#40727.
3602
36032020-05-05  Eli Zaretskii  <eliz@gnu.org>
3604
3605	Improve "Help Summary" section in user manual
3606
3607	* doc/emacs/help.texi (Help Summary): Add cross-references to
3608	sections with details of each Help command.
3609
36102020-05-05  Stefan Kangas  <stefankangas@gmail.com>
3611
3612	Clarify message-sendmail-extra-arguments docstring
3613
3614	* lisp/gnus/message.el (message-sendmail-extra-arguments): Clarify
3615	docstring.
3616
36172020-05-05  Philipp Stephani  <phst@google.com>
3618
3619	* src/editfns.c (Fformat): Small documentation fix.
3620
36212020-05-04  Alan Mackenzie  <acm@muc.de>
3622
3623	Remove calls to non-existent functions from edebug.el.
3624
3625	Do not merge to master.
3626
3627	*lisp/emacs-lisp/edebug.el (edebug--display-1)
3628	(edebug-toggle-disable-breakpoint): Remove calls to
3629	edebug--overlay-breakpoints and edebug--overlay-breakpoints-removed which had
3630	been overlooked in a recent changed to edebug.
3631
36322020-05-04  Dmitry Gutov  <dgutov@yandex.ru>
3633
3634	Honor search-upper-case
3635
3636	* lisp/fileloop.el (fileloop--case-fold):
3637	Extract from existing code.  Honor search-upper-case (bug#40940).
3638	(fileloop-initialize-replace, fileloop-initialize-search): Use it.
3639	Update the docstring.
3640
36412020-05-04  Basil L. Contovounesios  <contovob@tcd.ie>
3642
3643	Fix eww-follow-link on URLs with #target
3644
3645	* lisp/net/eww.el (eww-display-html): Ensure shr-target-id is set as
3646	callers depend on this (bug#28441, bug#40532).
3647
36482020-05-04  Juri Linkov  <juri@linkov.net>
3649
3650	Revert part of recent commit 85544f8ef5 (bug#40808)
3651
3652	* lisp/isearch.el (isearch-lazy-highlight-search): Remove recent fix of
3653	lazy-highlighting of hidden matches.  In emacs-27 leave only the fix for
3654	lazy-counting of hidden matches when isearch-lazy-count is non-nil.
3655
36562020-05-03  Stefan Kangas  <stefankangas@gmail.com>
3657
3658	Improve doc strings of makunbound and fmakunbound
3659
3660	* src/data.c (Fmakunbound, Ffmakunbound): Improve doc
3661	strings.  (Bug#41026)
3662
36632020-05-03  Alan Mackenzie  <acm@muc.de>
3664
3665	Revert "Mark breakpoints in edebug with highlights".  This fixes bug #40992
3666
3667	Do not merge to master.
3668
3669	This reverts commit e8b3a15cb6ff187ce08afcb43bd9a0b7907268ca.
3670
36712020-05-02  Paul Eggert  <eggert@cs.ucla.edu>
3672
3673	Make memq etc. examples more like they were
3674
3675	Problem reported by Štěpán Němec in:
3676	https://lists.gnu.org/r/emacs-devel/2020-05/msg00130.html
3677	* doc/lispref/lists.texi (Sets And Lists, Association Lists):
3678	Revert examples to be more like the way they were, using
3679	self-evaluating expressions.  Be more consistent about listing
3680	unspecified results.
3681
36822020-05-02  Eli Zaretskii  <eliz@gnu.org>
3683
3684	Document effect of 'search-upper-case' on replacement commands
3685
3686	* doc/emacs/search.texi (Replacement and Lax Matches): Document
3687	the role of 'search-upper-case' in replacement commands.
3688	(Lax Search): Document the value 'not-yanks' of
3689	'search-upper-case' where the variable itself is documented.
3690
3691	* lisp/replace.el (query-replace-regexp, query-replace): Mention
3692	'search-upper-case' and its effect in doc strings.  (Bug#40940)
3693
36942020-05-01  Eli Zaretskii  <eliz@gnu.org>
3695
3696	* lisp/desktop.el (desktop-save): Doc fix.  (Bug#41007)
3697
36982020-04-30  Stefan Kangas  <stefankangas@gmail.com>
3699
3700	Recommend to avoid unnecessary abbreviations in doc
3701
3702	* doc/lispref/tips.texi (Documentation Tips): Recommend to avoid
3703	unnecessary abbreviations.  (Bug#40011)
3704
37052020-04-30  Eli Zaretskii  <eliz@gnu.org>
3706
3707	Revert "Fix calculator division truncation (bug#40892)"
3708
3709	This reverts commit 82140c510c4d27e639b4bca1e9bf158f0f66c375.
3710	(Bug#40892)
3711
37122020-04-30  Mattias Engdegård  <mattiase@acm.org>
3713
3714	Fix calculator division truncation (bug#40892)
3715
3716	* lisp/calculator.el (calculator-string-to-number): Convert decimal
3717	numbers input to float, fixing a regression introduced in f248292ede.
3718	Reported by Aitor Soroa.
3719
37202020-04-29  Dmitry Gutov  <dgutov@yandex.ru>
3721
3722	Expand file name for remote dirs as well
3723
3724	* lisp/progmodes/project.el (project--files-in-directory):
3725	Expand file name for remote dirs as well (bug#40940).
3726
37272020-04-29  Eli Zaretskii  <eliz@gnu.org>
3728
3729	Fix project.el commands in "transient" projects
3730
3731	* lisp/progmodes/project.el (project--files-in-directory): Run
3732	local DIR directory names through 'expand-file-name', so that "~/"
3733	is expanded, in case the shell doesn't or the shell's notion of
3734	the home directory is different from that of Emacs.  (Bug#40940)
3735
37362020-04-29  Eli Zaretskii  <eliz@gnu.org>
3737
3738	Make sure alist-related functions say so in their doc
3739
3740	* src/fns.c (Fassq, assq_no_quit, Fassoc, assoc_no_quit, Frassq)
3741	(Frassoc): Rename argument LIST to ALIST.  Doc strings updated.
3742
37432020-04-29  Eli Zaretskii  <eliz@gnu.org>
3744
3745	* lisp/env.el (substitute-env-vars): Doc fix.  (Bug#40948)
3746
37472020-04-29  Juri Linkov  <juri@linkov.net>
3748
3749	* lisp/isearch.el: Fix lazy-highlighting and lazy-counting of hidden matches
3750
3751	* lisp/isearch.el (isearch-lazy-highlight-search): Let-bind
3752	search-invisible to t when search-invisible is 'open' or when both
3753	isearch-lazy-count and search-invisible are non-nil.  (Bug#40808)
3754
37552020-04-28  Eli Zaretskii  <eliz@gnu.org>
3756
3757	Fix error in ERC when 'erc-server-coding-system' is customized
3758
3759	* lisp/erc/erc-backend.el (erc-split-line): Handle the case where
3760	'erc-coding-system-for-target' returns a coding-system's symbol.
3761	(Bug#40914)
3762
37632020-04-28  Eli Zaretskii  <eliz@gnu.org>
3764
3765	Avoid crashes on TTY frames with over-long compositions
3766
3767	* src/term.c (encode_terminal_code): Each character from an
3768	automatic composition is a multibyte character, so its multibyte
3769	representation can take up to MAX_MULTIBYTE_LENGTH bytes.
3770	Account for that when allocating storage for characters to be
3771	encoded.  (Bug#40913)
3772
37732020-04-27  Stefan Kangas  <stefankangas@gmail.com>
3774
3775	Fix typo in custom.texi
3776
3777	* doc/emacs/custom.texi (Variables): Fix typo.  Pointed out by
3778	ej32u@protonmail.com.  (Bug#40890)
3779
37802020-04-27  Michael Albinus  <michael.albinus@gmx.de>
3781
3782	* test/lisp/simple-tests.el (with-shell-command-dont-erase-buffer):
3783
3784	Use `shell-quote-argument' instead of quoting 'like this'.
3785
37862020-04-27  Juri Linkov  <juri@linkov.net>
3787
3788	* lisp/image-mode.el (image-mode-map): Update menu items.
3789
3790	* lisp/image-mode.el (image-mode-map): Move "Fit Image to Window (Best Fit)"
3791	higher.  Add "Zoom In" (image-increase-size), "Zoom Out" (image-decrease-size)
3792	and "Rotate Clockwise" (image-rotate).  Use name "Set Rotation..."
3793	for image-transform-set-rotation.  Swap "Next Image" and "Previous Image".
3794	Swap "Next Frame" and "Previous Frame".
3795
37962020-04-27  Juri Linkov  <juri@linkov.net>
3797
3798	Fix bugs in tab-bar and tab-line and mention remaining features in manual.
3799
3800	* doc/emacs/frames.texi (Tab Bars): Mention tab-bar-new-tab-to,
3801	tab-bar-close-last-tab-choice, tab-bar-close-tab-select, tab-undo,
3802	tab-select, tab-bar-history-mode.
3803
3804	* doc/emacs/windows.texi (Tab Line): Mention tab-line-tabs-function.
3805
3806	* lisp/tab-bar.el (tab-bar-select-tab-modifiers): Mention
3807	tab-bar-tab-hints in docstring.
3808	(tab-bar-tab-hints): Mention tab-bar-select-tab-modifiers
3809	in docstring.
3810	(tab-bar-select-tab): Mention tab-bar-select-tab-modifiers
3811	in docstring.
3812	(tab-bar-switch-to-tab): Expand the docstring.
3813	(tab-bar-new-tab-to): Fix bug in handling 'left' value.
3814	(tab-bar-close-tab): Fix bug in handling 'left' value.
3815	(tab-bar-undo-close-tab): Use funcall tab-bar-tabs-function
3816	instead of direct call to tab-bar-tabs.
3817	(tab-bar-history-back, tab-bar-history-forward): Add docstrings.
3818	(tab-bar-history-mode): Expand docstring.
3819
3820	* lisp/tab-line.el (tab-line-format): Fix bug for handling window
3821	switching that should set face 'tab-line-tab-current'.
3822
38232020-04-26  Michael Albinus  <michael.albinus@gmx.de>
3824
3825	Make shell-command tests fit for tcsh.
3826
3827	* test/lisp/simple-tests.el (with-shell-command-dont-erase-buffer):
3828	Fix debug spec.  Format command to run also under tcsh.
3829	(simple-tests-shell-command-39067)
3830	(simple-tests-shell-command-dont-erase-buffer): Quote newline in string.
3831
38322020-04-25  Paul Eggert  <eggert@cs.ucla.edu>
3833
3834	Remove doc duplication
3835
3836	* doc/lispref/objects.texi (Constants and Mutability): Remove
3837	duplication.  From a suggestion by Andreas Schwab (Bug#40671#150).
3838
38392020-04-25  Michael Albinus  <michael.albinus@gmx.de>
3840
3841	* etc/NEWS: Fix inconsistencies.
3842
38432020-04-25  Noam Postavsky  <npostavs@gmail.com>
3844
3845	Clarify semantics of trace-function CONTEXT argument
3846
3847	* lisp/emacs-lisp/trace.el (trace-function-foreground): Explain that
3848	CONTEXT should be a function, when called from Lisp.
3849
38502020-04-25  Noam Postavsky  <npostavs@gmail.com>
3851
3852	Don't let a code literal get modified in mml parsing (Bug#39884)
3853
3854	* lisp/gnus/mml.el (mml-parse-1): Make a fresh cons for the tag type,
3855	because 'mml-generate-mime' destructively modifies it.
3856
38572020-04-25  Eli Zaretskii  <eliz@gnu.org>
3858
3859	* lisp/simple.el (kill-ring-save): Doc fix.  (Bug#40797)
3860
38612020-04-25  Clément Pit-Claudel  <cpitclaudel@gmail.com>
3862
3863	Minor doc clarification regarding fringe bitmaps
3864
3865	* doc/lispref/display.texi (Customizing Bitmaps): Add a note
3866	regarding the order of bits being the opposite of that in
3867	XBM images.  (Bug#40784)
3868
38692020-04-25  Eli Zaretskii  <eliz@gnu.org>
3870
3871	Fix documentation of fringe bitmaps
3872
3873	* doc/lispref/display.texi (Fringe Bitmaps): The 'empty-line'
3874	fringe indicator _is_ used.  (Bug#40799)
3875
38762020-04-25  Paul Eggert  <eggert@cs.ucla.edu>
3877
3878	Tweak mutability doc a bit more
3879
3880	Inspired by a comment from Michael Heerdegen (Bug#40671#114).
3881	* doc/lispref/objects.texi (Constants and Mutability): Tweak further.
3882
38832020-04-24  Mattias Engdegård  <mattiase@acm.org>
3884
3885	Calc: fix autoload errors (bug#40800)
3886
3887	Reported by Hugo Daschbach.
3888
3889	* lisp/calc/calc-ext.el (calc-init-extensions):
3890	Remove calc-kbd-report key binding and autoload; it was removed in 2005.
3891	calc-keypad-x-{left,right,middle}-click were renamed to
3892	calc-keypad-{left,right,middle}-click in 2001; fix the autoloads.
3893	calc-twos-complement-mode is a variable, not a function; remove the
3894	autoload.
3895	* lisp/calc/calc-prog.el: Remove commented-out calc-kbd-report.
3896
38972020-04-24  Stefan Kangas  <stefankangas@gmail.com>
3898
3899	Improve indexing of ELisp manual
3900
3901	* doc/lispref/tips.texi (Tips): Add index entry 'best practices'.
3902
39032020-04-24  Juri Linkov  <juri@linkov.net>
3904
3905	* lisp/image-mode.el (image-transform-resize): Remove FIXME comment.
3906
3907	The user customizable variable 'image-auto-resize' is documented now
3908	in the manual.
3909
39102020-04-23  Tassilo Horn  <tsdh@gnu.org>
3911
3912	Improve the default value of 'doc-view-ghostscript-program'.
3913
3914	* lisp/doc-view.el (doc-view-ghostscript-program): Use plain command
3915	name instead of qualified name returned by executable-find (as
3916	suggested by Stefan Monnier).  (Bug#36357)
3917
39182020-04-23  Juri Linkov  <juri@linkov.net>
3919
3920	Change doc-view-mode-map prefix key 's' to 'c'.
3921
3922	* doc/emacs/misc.texi (DocView Slicing): Change prefix key 's' to 'c'.
3923
3924	* lisp/doc-view.el (doc-view-mode-map): Change prefix key 's' to 'c'.
3925
3926	* lisp/image-mode.el (image-mode-map): Add image-transform-set-scale to menu.
3927
3928	* doc/emacs/files.texi (Image Mode): Describe commands
3929	image-transform-fit-both, image-transform-set-scale, image-transform-reset.
3930
3931	* etc/NEWS: Rearrange image sections.
3932
3933	https://lists.gnu.org/archive/html/emacs-devel/2020-04/msg01315.html
3934
39352020-04-22  Paul Eggert  <eggert@cs.ucla.edu>
3936
3937	Improve wording about constants
3938
3939	Thanks to Štěpán Němec and Drew Adams for reviews of recent changes.
3940	* doc/lispref/eval.texi (Quoting): Give an example.
3941	* doc/lispref/lists.texi (Association Lists): Simplify example code.
3942	* doc/lispref/objects.texi (Lisp Data Types)
3943	(Constants and Mutability): Clarify wording.
3944
39452020-04-22  Tassilo Horn  <tsdh@gnu.org>
3946
3947	Improve the default value of 'doc-view-ghostscript-program'.
3948
3949	* lisp/doc-view.el (doc-view-ghostscript-program): On Windows, try
3950	gswin64c, gswin32c, rungs, and mgs.  (Bug#36357)
3951
39522020-04-21  Eli Zaretskii  <eliz@gnu.org>
3953
3954	Minor improvements in documentation of the last change
3955
3956	* etc/NEWS:
3957	* doc/emacs/files.texi (Image Mode): Minor copyedits of last change.
3958
39592020-04-21  Juri Linkov  <juri@linkov.net>
3960
3961	Add image-auto-resize defcustoms to image-mode.el
3962
3963	* lisp/image-mode.el (image-auto-resize)
3964	(image-auto-resize-on-window-resize): New defcustoms.
3965	(image-mode-map): Bind "sb" to image-transform-fit-both.
3966	(image-mode): Set image-transform-resize to image-auto-resize initially.
3967	(image-mode--setup-mode): Add hook on image-auto-resize-on-window-resize.
3968	(image-toggle-display-image): Check if image-transform-resize is t.
3969	(image-transform-properties): Check image-transform-resize for nil and t.
3970	(image-transform-fit-both): New command.
3971	(image-transform-reset): Reset image-transform-resize to image-auto-resize.
3972
3973	* doc/emacs/files.texi (Image Mode): Mention image-auto-resize and
3974	image-auto-resize-on-window-resize.
3975
3976	https://lists.gnu.org/archive/html/emacs-devel/2020-04/msg01160.html
3977
39782020-04-21  Juri Linkov  <juri@linkov.net>
3979
3980	Improve the documentation of tab-bar and tab-line
3981
3982	* doc/emacs/frames.texi (Tab Bars): Add xref to "Tab Line".
3983	Document more commands.
3984
3985	* doc/emacs/windows.texi (Windows):
3986	* doc/emacs/emacs.texi (Top): Add "Tab Line" menu.
3987
3988	* doc/emacs/windows.texi (Window Convenience):
3989	Move tab-line documentation to new node "Tab Line".
3990	(Tab Line): New node.
3991
3992	* doc/emacs/glossary.texi (Glossary):
3993	* doc/emacs/modes.texi (Minor Modes):
3994	* doc/emacs/display.texi (Standard Faces): Add xref to "Tab Line".
3995
39962020-04-20  Paul Eggert  <eggert@cs.ucla.edu>
3997
3998	Tweak wording re constant variables
3999
4000	* doc/lispref/objects.texi (Constants and Mutability): Tweak.
4001	Problem reported by Michael Heerdegen (Bug#40693#44).
4002
40032020-04-20  Paul Eggert  <eggert@cs.ucla.edu>
4004
4005	Tweak setcar-related wording
4006
4007	* doc/lispref/eval.texi (Self-Evaluating Forms):
4008	Change “primitives” to “operations”.
4009	Problem reported by Štěpán Němec in:
4010	https://lists.gnu.org/r/emacs-devel/2020-04/msg01146.html
4011
40122020-04-20  Juri Linkov  <juri@linkov.net>
4013
4014	* lisp/image-mode.el: Add prefix key 's' and reduce dependency on ImageMagick.
4015
4016	* lisp/image-mode.el (image-mode-map): Regroup existing keybindings and
4017	add new ones with the prefix key 's'.
4018	Remove condition ":visible (eq image-type 'imagemagick)" from menu.
4019	(image-toggle-display-image): Don't rotate again after user rotated manually.
4020	(image-transform-check-size): Remove check for imagemagick.
4021	(image-transform-properties, image-transform-set-scale)
4022	(image-transform-fit-to-height, image-transform-fit-to-width)
4023	(image-transform-set-rotation, image-transform-reset):
4024	Remove mentions of ImageMagick from docstrings since these commands
4025	now work without ImageMagick.
4026
40272020-04-20  Juri Linkov  <juri@linkov.net>
4028
4029	* doc/emacs/windows.texi (Window Convenience): Decribe more windmove features.
4030
4031	* doc/emacs/windows.texi (Window Convenience): Add descriptions of
4032	windmove-display-default-keybindings,
4033	windmove-delete-default-keybindings,
4034	windmove-swap-states-in-direction.
4035
4036	* etc/NEWS: Regroup to move some parts closer to related sections.
4037
40382020-04-20  Paul Eggert  <eggert@cs.ucla.edu>
4039
4040	Fix mutability glitches reported by Drew Adams
4041
4042	See Bug#40693#32.
4043	* doc/lispref/eval.texi (Self-Evaluating Forms, Backquote):
4044	Say that these yield constant conses, vectors and strings,
4045	not constant symbols.
4046	* doc/lispref/objects.texi (Constants and Mutability): Say that an
4047	attempt to modify a constant variable signals an error, instead of
4048	saying that it has undefined behavior.
4049
40502020-04-19  Paul Eggert  <eggert@cs.ucla.edu>
4051
4052	Improve mutability doc
4053
4054	See Eli Zaretskii’s suggestions (Bug#40671#33).
4055	* doc/lispref/lists.texi (Setcar, Setcdr, Rearrangement):
4056	* doc/lispref/sequences.texi (Sequence Functions)
4057	(Array Functions):
4058	Add commentary to examples.
4059	* doc/lispref/lists.texi (Sets And Lists):
4060	Revert change to delq example.
4061
40622020-04-19  Paul Eggert  <eggert@cs.ucla.edu>
4063
4064	Improve mutability documentation
4065
4066	This change was inspired by comments from Štěpán Němec in:
4067	https://lists.gnu.org/r/emacs-devel/2020-04/msg01063.html
4068	* doc/lispref/objects.texi (Lisp Data Types): Mention mutability.
4069	(Constants and mutability): New section.
4070	* doc/lispintro/emacs-lisp-intro.texi (Lists diagrammed)
4071	(Indent Tabs Mode): Improve wording.
4072	* doc/lispref/eval.texi (Self-Evaluating Forms):
4073	Say that they return constants.
4074	* doc/lispref/lists.texi (Sets And Lists):
4075	Fix memql mistake/confusion that I recently introduced.
4076
40772020-04-19  Paul Eggert  <eggert@cs.ucla.edu>
4078
4079	Document that quoting yields constants
4080
4081	* doc/lispref/eval.texi (Quoting, Backquote):
4082	Mention that quoted expressions yield a constant (Bug#40693).
4083
40842020-04-19  Stefan Monnier  <monnier@iro.umontreal.ca>
4085
4086	* doc/lispref/keymaps.texi (Extended Menu Items, Easy Menu) <:key-sequence>:
4087
4088	Clarify the documentation further
4089
40902020-04-19  Mattias Engdegård  <mattiase@acm.org>
4091
4092	Remove #' and function quoting from lambda forms in manual
4093
4094	* doc/lispref/abbrevs.texi (Abbrev Expansion):
4095	* doc/lispref/backups.texi (Reverting):
4096	* doc/lispref/functions.texi (Mapping Functions):
4097	* doc/lispref/help.texi (Accessing Documentation):
4098	* doc/lispref/sequences.texi (Char-Tables):
4099	* doc/lispref/syntax.texi (Categories):
4100	* doc/lispref/text.texi (Sorting):
4101	Remove function quoting from lambda in examples where it still occurs,
4102	since examples should follow our best style and be consistent.
4103
41042020-04-19  Stefan Monnier  <monnier@iro.umontreal.ca>
4105
4106	* src/regex-emacs.c (re_match_2_internal): Rework comment in last change
4107
4108	Explain why we don't need to worry about Lisp modifying the buffer.
4109
4110	* src/syntax.c (parse_sexp_propertize): Fix name in error message.
4111
41122020-04-19  Juri Linkov  <juri@linkov.net>
4113
4114	Add new node "Image Mode" to Emacs Manual.
4115
4116	* doc/emacs/dired.texi (Image-Dired): Add xref to "Image Mode".
4117
4118	* doc/emacs/emacs.texi (Top): Add new node "Image Mode" to menu.
4119
4120	* doc/emacs/files.texi (Files): Add new node "Image Mode" to menu.
4121	(File Conveniences): Split part of node to new node "Image Mode".
4122
4123	* doc/emacs/frames.texi (Mouse Commands): Add xref to "Image Mode".
4124
4125	* doc/emacs/misc.texi (Embedded WebKit Widgets): Rename xref from
4126	"File Conveniences" to "Image Mode".
4127
41282020-04-18  Paul Eggert  <eggert@cs.ucla.edu>
4129
4130	* doc/lispref/display.texi (Customizing Bitmaps): Fix typo.
4131
41322020-04-18  Paul Eggert  <eggert@cs.ucla.edu>
4133
4134	Document constant vs mutable objects better
4135
4136	This patch builds on a suggested patch by Mattias Engdegård
4137	and on further comments by Eli Zaretskii.
4138	Original bug report by Kevin Vigouroux (Bug#40671).
4139	* doc/lispintro/emacs-lisp-intro.texi (set & setq, Review)
4140	(setcar, Lists diagrammed, Mail Aliases, Indent Tabs Mode):
4141	setq is a special form, not a function or command.
4142	* doc/lispintro/emacs-lisp-intro.texi (setcar):
4143	* doc/lispref/lists.texi (Modifying Lists, Rearrangement):
4144	* doc/lispref/sequences.texi (Sequence Functions)
4145	(Array Functions, Vectors):
4146	* doc/lispref/strings.texi (String Basics, Modifying Strings):
4147	Mention mutable vs constant objects.
4148	* doc/lispintro/emacs-lisp-intro.texi (setcar, setcdr)
4149	(kill-new function, cons & search-fwd Review):
4150	* doc/lispref/edebug.texi (Printing in Edebug):
4151	* doc/lispref/keymaps.texi (Changing Key Bindings):
4152	* doc/lispref/lists.texi (Setcar, Setcdr, Rearrangement)
4153	(Sets And Lists, Association Lists, Plist Access):
4154	* doc/lispref/sequences.texi (Sequence Functions)
4155	(Array Functions):
4156	* doc/lispref/strings.texi (Text Comparison):
4157	Fix examples so that they do not try to change constants.
4158
41592020-04-18  Eli Zaretskii  <eliz@gnu.org>
4160
4161	Improve documentation of 'sort-lines'
4162
4163	* lisp/sort.el (sort-lines): Clarify the interactive invocation.
4164	(Bug#40697)
4165
41662020-04-18  Štěpán Němec  <stepnem@gmail.com>
4167
4168	Mention 'spam-stat-process-directory-age' in the documentation
4169
4170	I was at a loss as to why my attempt to set up spam-stat seemed to
4171	have no effect, only to find (digging in the code) that it was
4172	ignoring most of the sample files due to this undocumented variable.
4173
4174	* doc/misc/gnus.texi (Creating a spam-stat dictionary): Document
4175	the variable 'spam-stat-process-directory-age'.  (bug#39780)
4176
41772020-04-18  Eli Zaretskii  <eliz@gnu.org>
4178
4179	Avoid crashes in regex-emacs.c due to GC
4180
4181	* src/regex-emacs.c (re_match_2_internal): Prevent GC from
4182	invalidating C pointers to buffer text.  (Bug#40661)
4183
41842020-04-18  Eli Zaretskii  <eliz@gnu.org>
4185
4186	Fix "C-u M-!" when 'shell-command-dont-erase-buffer' is non-nil
4187
4188	* lisp/simple.el (shell-command-dont-erase-buffer): Clarify the
4189	effect of the various values in the doc string.
4190	(shell-command-save-pos-or-erase, shell-command): Don't move or
4191	push point if the output will go to the current buffer.
4192	(Bug#40690)
4193	(shell-command): Mention 'shell-command-dont-erase-buffer' in the
4194	doc string.
4195
4196	* test/lisp/simple-tests.el
4197	(with-shell-command-dont-erase-buffer): Don't is shell quoting
4198	'like this', as it doesn't work on MS-Windows; quote "like this"
4199	instead.
4200	(simple-tests-shell-command-dont-erase-buffer): Adapt the test to
4201	the new modus operandi.
4202
4203	* doc/emacs/misc.texi (Single Shell): Document the effect of the
4204	various values of 'shell-command-dont-erase-buffer'.
4205
4206	* etc/NEWS: Expand and reword the entry regarding changes in
4207	'shell-command-dont-erase-buffer'.
4208
42092020-04-17  Paul Eggert  <eggert@cs.ucla.edu>
4210
4211	Fix cl-most-positive-float doc typo
4212
4213	* doc/misc/cl.texi (Implementation Parameters):
4214	Fix typo in documentation of cl-most-positive-float.
4215
42162020-04-16  jakub-w  <jakub-w@riseup.net>  (tiny change)
4217
4218	Fix a typo in calculator.el
4219
4220	* lisp/calculator.el (calculator-expt): Overflowing exponentiation
4221	caused the function to return -1.0e+INF if the base was an odd,
4222	negative number, no matter what the exponent was.
4223
42242020-04-16  Amin Bandali  <bandali@gnu.org>
4225
4226	* lisp/erc/erc.el: Add URL to the new ERC page on the Emacs site
4227
42282020-04-16  Nicolas Petton  <nicolas@petton.fr>
4229
4230	Bump Emacs version to 27.0.91
4231
4232	* README:
4233	* configure.ac:
4234	* msdos/sed2v2.inp:
4235	* nt/README.W32: Bump Emacs version.
4236
42372020-04-16  João Távora  <joaotavora@gmail.com>
4238
4239	Correct Fido-mode's backspacing of directories with spaces
4240
4241	(Bug#40625)
4242
4243	* lisp/icomplete.el (icomplete-fido-backward-updir): Use
4244	zap-up-to-char.
4245
42462020-04-15  João Távora  <joaotavora@gmail.com>
4247
4248	Default completion-flex-nospace to nil
4249
4250	By default, the flex completion style _does_ match spaces.
4251
4252	(Bug#40625)
4253
4254	* lisp/icomplete.el (icomplete--fido-mode-setup): Force
4255	completion-flex-nospace to nil.
4256
4257	* lisp/minibuffer.el (completion-flex-nospace): Default to nil.
4258
42592020-04-15  Eli Zaretskii  <eliz@gnu.org>
4260
4261	Improve an example in w32 FAQ
4262
4263	* doc/misc/efaq-w32.texi (Font names): Modify the expression to
4264	insert a lits of all installed fonts so as to avoid producing too
4265	long lines.  Suggested by ndame <ndame@protonmail.com>.
4266
42672020-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
4268
4269	* lisp/htmlfontify.el (hfy-force-fontification): Fix bug#40642
4270
4271	Don't presume that `jit-lock-mode` is enabled.
4272	Do not merge to `master`.
4273
42742020-04-15  Nicolas Petton  <nicolas@petton.fr>
4275
4276	* admin/authors.el: Add an author alias.
4277
42782020-04-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4279
4280	Limit RLIMIT_NOFILE to FD_SETSIZE on macOS
4281
4282	* src/nsterm.m ([EmacsApp applicationDidFinishLaunching:]): Call
4283	CoreFoundation functions that increase RLIMIT_NOFILE behind our back
4284	during startup, and then set RLIMIT_NOFILE back to FD_SETSIZE to avoid
4285	crashes in setup_process_coding_system  (Bug#39164).
4286
42872020-04-15  Martin Rudalics  <rudalics@gmx.at>
4288
4289	Fix Elisp manual entry on 'set-window-configuration'
4290
4291	* doc/lispref/windows.texi (Window Configurations): Fix
4292	description of 'set-window-configuration'.
4293
42942020-04-14  Nicolas Petton  <nicolas@petton.fr>
4295
4296	* admin/authors.el: Add missing author aliases.
4297
42982020-04-14  Mattias Engdegård  <mattiase@acm.org>
4299
4300	Fix edge case errors in filename-matching regexps
4301
4302	These changes fix actual or latent bugs in regexps that match
4303	file names, such as PATTERN arguments to 'directory-files'.  See
4304	https://lists.gnu.org/archive/html/emacs-devel/2020-04/msg00265.html
4305
4306	* admin/authors.el (authors-obsolete-files-regexps)
4307	(authors-renamed-files-regexps):
4308	* lisp/auth-source-pass.el (auth-source-pass-entries):
4309	* lisp/calendar/todo-mode.el (todo-show, todo-find-filtered-items-file)
4310	(todo-filter-items, todo-reset-nondiary-marker, todo-reset-done-string)
4311	(todo-reset-comment-string, todo-reset-highlight-item):
4312	* lisp/cedet/semantic/db-ebrowse.el (semanticdb-load-ebrowse-caches):
4313	* lisp/cedet/semantic/texi.el (semantic-texi-associated-files):
4314	* lisp/cedet/srecode/map.el (srecode-map-update-map):
4315	* lisp/dired.el (dired-re-no-dot):
4316	* lisp/emacs-lisp/autoload.el (update-directory-autoloads):
4317	* lisp/emacs-lisp/shadow.el (load-path-shadows-find):
4318	* lisp/files.el (auto-mode-alist, directory-files-no-dot-files-regexp):
4319	* lisp/finder.el (finder-compile-keywords):
4320	* lisp/generic-x.el (inetd-conf-generic-mode, named-boot-generic-mode)
4321	(resolve-conf-generic-mode, etc-modules-conf-generic-mode):
4322	* lisp/gnus/gnus-agent.el (gnus-agent-read-agentview)
4323	(gnus-agent-regenerate-group, gnus-agent-update-files-total-fetched-for):
4324	* lisp/gnus/gnus-cache.el (gnus-cache-articles-in-group):
4325	* lisp/gnus/gnus-score.el (gnus-score-search-global-directories):
4326	* lisp/gnus/gnus-util.el (gnus-delete-directory):
4327	* lisp/gnus/gnus-uu.el (gnus-uu-dir-files):
4328	* lisp/gnus/nndraft.el (nndraft-request-group):
4329	* lisp/gnus/nnmh.el (nnmh-request-group, nnmh-request-create-group):
4330	(nnmh-request-delete-group, nnmh-active-number, nnmh-update-gnus-unreads):
4331	* lisp/gnus/nnspool.el (nnspool-request-group):
4332	* lisp/gnus/spam-stat.el (spam-stat-process-directory)
4333	(spam-stat-test-directory):
4334	* lisp/help-fns.el (help-fns--first-release):
4335	* lisp/help.el (view-emacs-news):
4336	* lisp/international/quail.el (quail-update-leim-list-file):
4337	* lisp/international/titdic-cnv.el (batch-titdic-convert):
4338	* lisp/mail/mspools.el (mspools-set-vm-spool-files)
4339	(mspools-get-spool-files):
4340	* lisp/mail/rmail.el (rmail-secondary-file-regexp)
4341	(rmail-speedbar-match-folder-regexp):
4342	* lisp/net/ange-ftp.el (ange-ftp-delete-directory):
4343	* lisp/net/tramp.el (tramp-use-absolute-autoload-file-names):
4344	* lisp/obsolete/gulp.el (gulp-send-requests):
4345	* lisp/obsolete/vc-arch.el (vc-arch-trim-revlib):
4346	* lisp/org/ob-core.el (org-babel-remove-temporary-directory):
4347	* lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp, ebnf-style-database):
4348	* lisp/progmodes/executable.el (executable-command-find-posix-p):
4349	* lisp/startup.el (command-line):
4350	* lisp/textmodes/refer.el (refer-get-bib-files):
4351	* lisp/url/url-about.el (url-probe-protocols):
4352	* lisp/vc/vc-rcs.el (vc-rcs-register, vc-rcs-unregister):
4353	* test/lisp/net/tramp-archive-tests.el
4354	(tramp-archive-test19-directory-files-and-attributes):
4355	* test/lisp/net/tramp-tests.el (tramp-test19-directory-files-and-attributes):
4356	Replace ^ and $ with \` and \', respectively.
4357	Use (rx (or (not ".") "...")), translated into "[^.]\\|\\.\\.\\.",
4358	to match anything but "." and "..", instead of several incorrect
4359	regexps.
4360
43612020-04-14  Eli Zaretskii  <eliz@gnu.org>
4362
4363	Clarify the doc string of 'yank'
4364
4365	* lisp/simple.el (yank): Mention 'current-kill' in the doc string,
4366	so that people could find all the gory details of what is "the most
4367	recent kill" for this purpose.  (Bug#40375)
4368
43692020-04-14  Amin Bandali  <bandali@gnu.org>
4370
4371	New function erc-track-switch-buffer-other-window
4372
4373	* lisp/erc/erc-track.el (erc-track-switch-buffer): Factor out the
4374	implementation from here ...
4375	(erc-track--switch-buffer): ... to here.
4376	(erc-track-switch-buffer-other-window): New function, like
4377	`erc-track-switch-buffer', but uses `switch-to-buffer-other-window'
4378	instead, to open the buffer in another window.
4379
43802020-04-14  Amin Bandali  <bandali@gnu.org>
4381
4382	New function erc-switch-to-buffer-other-window
4383
4384	* lisp/erc/erc.el (erc-switch-to-buffer): Factor out the buffer choice
4385	implementation from here ...
4386	(erc--switch-to-buffer): ... to here.
4387	(erc-switch-to-buffer-other-window): New function, like
4388	`erc-switch-to-buffer', but uses `switch-to-buffer-other-window'
4389	instead, to open the buffer in another window.
4390
43912020-04-13  Štěpán Němec  <stepnem@gmail.com>
4392
4393	Clarify documentation on inhibit-modification-hooks intended usage
4394
4395	Cf. bug#40332 and the discussion at
4396	https://lists.gnu.org/archive/html/emacs-devel/2020-03/msg00921.html
4397
4398	* doc/lispref/text.texi (Change Hooks):
4399	* src/insdel.c (syms_of_insdel): Clarify the intended usage of
4400	'inhibit-modification-hooks'.
4401
44022020-04-13  Štěpán Němec  <stepnem@gmail.com>
4403
4404	gnus-shorten-url: Improve and avoid args-out-of-range error
4405
4406	'gnus-shorten-url' (used by 'gnus-summary-browse-url') ignored
4407	fragment identifiers and didn't check substring bounds, in some cases
4408	leading to runtime errors, e.g.:
4409
4410	  (gnus-shorten-url "https://some.url.with/path/and#also_a_long_target" 40)
4411	  ;; => Lisp error: (args-out-of-range "/path/and" -18 nil)
4412
4413	This commit makes it account for #fragments and fixes faulty string
4414	computation.  (bug#39980)
4415
4416	Do not merge to master, where the helper is put to subr-x.el.
4417
4418	* lisp/gnus/gnus-sum.el (gnus--string-truncate-left): New helper
4419	function (copied from 'ediff-truncate-string-left').
4420	(gnus-shorten-url): Use it and don't drop #fragments.
4421
44222020-04-13  Eli Zaretskii  <eliz@gnu.org>
4423
4424	Minor wording change in Introduction to Programming in Emacs Lisp
4425
4426	* doc/lispintro/emacs-lisp-intro.texi (Prevent confusion): Mention
4427	that dynamic scoping is only the default in Emacs Lisp, not the
4428	only scoping rule.  (Bug#40594)
4429
44302020-04-13  Eli Zaretskii  <eliz@gnu.org>
4431
4432	Fix 'flymake-show-diagnostics-buffer' when line numbers are displayed
4433
4434	* lisp/progmodes/flymake.el (flymake--diagnostics-buffer-entries):
4435	Do nothing if 'flymake--diagnostics-buffer-source' is not a
4436	buffer.  (Bug#40529)
4437
44382020-04-12  Eli Zaretskii  <eliz@gnu.org>
4439
4440	Fix last changes describing mail commands
4441
4442	* doc/emacs/sending.texi (Sending Mail): Fix the description of
4443	the behavior of 'C-x m' without prefix argument.  (Bug#40561)
4444
44452020-04-12  João Távora  <joaotavora@gmail.com>
4446
4447	Do setup Flymake in file-less Elisp buffers
4448
4449	(Bug#40573)
4450
4451	* lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Change
4452	condition for setting flymake-diagnostic-functions.
4453
44542020-04-12  Philipp Stephani  <phst@google.com>
4455
4456	Fix error message for ‘cl-struct-unknown-slot’ (bug#39995)
4457
4458	* lisp/emacs-lisp/cl-macs.el (cl-struct-unknown-slot): Remove spurious
4459	format specifiers.
4460
44612020-04-12  Eli Zaretskii  <eliz@gnu.org>
4462
4463	Fix and improve documentation of mail-related features
4464
4465	* lisp/simple.el (compose-mail): Clarify the effect of the
4466	CONTINUE argument.
4467	* lisp/mail/sendmail.el (mail-from-style): Update the RFC value in
4468	the obsolescence warning text.
4469
4470	* doc/emacs/sending.texi (Sending Mail): Fix the description of
4471	the behavior of 'C-x m' wrt prefix argument.
4472	(Mail Headers): Remove the description of 'mail-from-style'.
4473
4474	* etc/NEWS: Mention that 'mail-from-style' is obsolete.
4475
4476	(Bug#40561)
4477
44782020-04-12  Martin Rudalics  <rudalics@gmx.at>
4479
4480	Fix build failure with Fx_gtk_debug
4481
4482	* src/xfns.c (Fx_gtk_debug, Sx_gtk_debug): Define only for GTK
4483	versions >= 3.14.0 so gtk_window_set_interactive_debugging is
4484	defined.  Reported by Andreas Schwab  <schwab@linux-m68k.org>.
4485
44862020-04-11  Alan Mackenzie  <acm@muc.de>
4487
4488	Mention jit-lock deferred as an alternative to fast-but-imprecise-scrolling
4489
4490	* doc/emacs/display.texi (Scrolling): Add a paragraph on using jit-lock
4491	deferred fontification as a way of obviating Emacs hanging after
4492	auto-repeated scrolling.
4493
44942020-04-10  Stefan Monnier  <monnier@iro.umontreal.ca>
4495
4496	* doc/lispref/keymaps.texi (Extended Menu Items): Tweak :key-sequence
4497
4498	Don't make it sound like `:key-sequence nil` is any different than the
4499	absence of `:key-sequence`.  And the performance advantage of
4500	`:key-sequence` disappeared long ago.
4501
45022020-04-10  Eli Zaretskii  <eliz@gnu.org>
4503
4504	Fix redisplay when scrolling under redisplay-dont-pause
4505
4506	* src/dispnew.c (update_window): Reset the window's
4507	'must_be_updated_p' flag if the window's update was completed
4508	without interruption.  This fixes redisplay glitches when
4509	'redisplay-dont-pause' is nil, at least on MS-Windows, because
4510	'expose_window' doesn't redraw the exposed rectangle when the
4511	window's 'must_be_updated_p' flag is set.
4512
45132020-04-09  Eli Zaretskii  <eliz@gnu.org>
4514
4515	Fix face extension in pulse.el
4516
4517	* lisp/cedet/pulse.el (pulse-reset-face): Propagate the :extend
4518	attribute of FACE to the face used for displaying the pulse.
4519	Reported by Adam Porter <adam@alphapapa.net>.
4520
45212020-04-09  Michael Albinus  <michael.albinus@gmx.de>
4522
4523	* doc/misc/tramp.texi (Bug Reports): Avoid line breaks in traces.
4524
45252020-04-09  Eli Zaretskii  <eliz@gnu.org>
4526
4527	Avoid assertion violation in intervals.c
4528
4529	* src/intervals.c (delete_interval): Allow negative values of
4530	LENGTH (i).  This happens when delete_interval is called from
4531	set_intervals_multibyte_1, because the caller zeroes out the
4532	total_length field of the interval to be deleted.  See
4533	https://lists.gnu.org/archive/html/emacs-devel/2020-04/msg00131.html
4534	for more details.  See also a related old discussion at
4535	https://lists.gnu.org/archive/html/emacs-devel/2012-07/msg00399.html.
4536
45372020-04-08  Eli Zaretskii  <eliz@gnu.org>
4538
4539	Improve documentation of 'jit-lock-contextually'
4540
4541	* lisp/jit-lock.el (jit-lock-contextually): Clarify the jit-lock
4542	operation when 'jit-lock-contextually' is non-nil and non-t.
4543
4544	* doc/lispref/modes.texi (Syntactic Font Lock)
4545	(Other Font Lock Variables): Document the relation between
4546	'jit-lock-register', 'font-lock-keywords-only', and syntactic
4547	refontification.
4548
45492020-04-08  Dmitry Gutov  <dgutov@yandex.ru>
4550
4551	Speed up 'resize-mode' child frames a little
4552
4553	* src/gtkutil.c (xg_frame_set_char_size): Skip resizing if the
4554	target dimensions are unchanged for child frames with
4555	'resize-mode' resize policy as well.
4556
45572020-04-06  Martin Rudalics  <rudalics@gmx.at>
4558
4559	Fix some problems with moving and resizing child frames
4560
4561	(1) Provide new option 'x-gtk-resize-child-frames' which allows
4562	to either hide a child frame during resizing or asks GTK to
4563	resize it "immediately".  This is needed because desktops like
4564	GNOME shell otherwise won't allow resizing child frames at all.
4565	(2) Do not try to synchronize the position of a child frame
4566	after moving it.  Needed because the present implementation
4567	introduces a 0.5 secs delay which makes dragging child frames
4568	virtually impossible with Lucid and Motif toolkits on desktops
4569	like GNOME shell that use invisible outer frame borders.
4570
4571	For further information see the thread starting with
4572	https://lists.gnu.org/archive/html/emacs-devel/2020-01/msg00343.html
4573
4574	* src/frame.c (syms_of_frame): New symbol Qxg_frame_set_char_size_4.
4575	* src/gtkutil.c (xg_frame_set_char_size): Hide child frame
4576	during resizing when 'x-gtk-resize-child-frames' equals 'hide'.
4577	* src/xfns.c (x_set_parent_frame, Fx_create_frame): Set
4578	gtk_container_resize_mode to GTK_RESIZE_IMMEDIATE for child
4579	frames when'x-gtk-resize-child-frames' equals 'resize-mode'.
4580	(Fx_gtk_debug): New function to toggle interactive GTK debugging
4581	from within Emacs.
4582	(syms_of_xfns): New symbols Qhide and Qresize_mode.
4583	(x-gtk-resize-child-frames): New option that allows to resize
4584	child frames on desktops like GNOME shell (with the mutter WM)
4585	that otherwise refuse to resize them.
4586	* src/xterm.c (x_set_offset): Don't x_sync_with_move for child
4587	frames, it makes moving child frames virtually impossible with
4588	the Lucid and Motif toolkits.
4589
45902020-04-05  Philipp Stephani  <phst@google.com>
4591
4592	Fix syntax error in man page.
4593
4594	* doc/man/emacs.1.in: Fix syntax of --script argument.  The Info
4595	manual states that --script has to be followed by a space, and the
4596	syntax with the equals sign doesn't actually work.
4597
45982020-04-05  Noam Postavsky  <npostavs@gmail.com>
4599
4600	Handle filling of indented ChangeLog function entries
4601
4602	* lisp/vc/log-edit.el (log-edit-fill-entry): Relax regexp a bit to
4603	recognize function entries with leading blanks.
4604	* test/lisp/vc/log-edit-tests.el: New test.
4605
46062020-04-05  Noam Postavsky  <npostavs@gmail.com>
4607
4608	Fix void-variable n-reb in re-builder (Bug#40409)
4609
4610	* lisp/emacs-lisp/re-builder.el (reb-while): Take the current value of
4611	the counter instead of its name.
4612	(reb-mark-non-matching-parenthesis): Bind n-reb to 0 at the start and
4613	don't wrongly treat it as dynamicly bound.
4614
46152020-04-03  Philipp Stephani  <phst@google.com>
4616
4617	Fix small bug in copy_string_contents.
4618
4619	* src/emacs-module.c (module_copy_string_contents): Fix incorrect
4620	variable use.  In this branch 'lisp_str_utf8' is always nil, so it
4621	makes little sense to add it as error data.
4622
46232020-04-03  Eli Zaretskii  <eliz@gnu.org>
4624
4625	Fix invocations of gpg from Gnus
4626
4627	* lisp/epg-config.el (epg-config--make-gpg-configuration): Bind
4628	coding-system-for-read/write to 'undecided', to countermand
4629	possible values of 'no-conversion' or somesuch by the callers.
4630	(Bug#40248)
4631
46322020-04-03  Martin Rudalics  <rudalics@gmx.at>
4633
4634	Don't draw GTK's internal border and tab bar on top of each other
4635
4636	* src/xterm.c (x_clear_under_internal_border): For GTK builds
4637	have 'margin' count in the height of the tab bar to avoid that
4638	tab bar and internal border are drawn on top of each other.
4639
46402020-04-03  Amin Bandali  <bandali@gnu.org>
4641
4642	Tweak htmlfontify's generated output
4643
4644	* lisp/htmlfontify.el (hfy-default-header): declare the character
4645	encoding for the generated HTML file.  This helps browsers display
4646	UTF-8 characters like the copyright symbol correctly.
4647	(hfy-sprintf-stylesheet): apply the default style to all of the text
4648	consistently, so that unstyled bits (which are not wrapped in span
4649	tags and are directly part of the surrounding pre tag's "innerHTML")
4650	have a look consistent with the rest of the document.
4651
46522020-03-30  Dmitry Gutov  <dgutov@yandex.ru>
4653
4654	Handle project--files-in-directory finding no files better
4655
4656	* lisp/progmodes/project.el (project--find-regexp-in-files):
4657	Signal user-error when passed an empty list of files.
4658
4659	* lisp/progmodes/xref.el (xref-matches-in-files):
4660	Make sure FILES is not empty.
4661
46622020-03-30  Alan Mackenzie  <acm@muc.de>
4663
4664	Let imenu to work on the menu bar when its list is a single non-nested member.
4665
4666	* lisp/imenu.el (imenu-update-menubar): No longer accept a list of length 1 as
4667	being sufficient evidence for a nested list structure.  Instead, additionally
4668	check whether or not certain elements are atoms.
4669
46702020-03-30  Juri Linkov  <juri@linkov.net>
4671
4672	* lisp/image/image-converter.el: Fix customization of image-converter.
4673
4674	* lisp/image/image-converter.el (image-convert-p): Update
4675	image-converter-regexp when image-converter was customized (bug#39994).
4676
46772020-03-29  Andreas Schwab  <schwab@linux-m68k.org>
4678
4679	Fix url-cookie.el for lexical binding
4680
4681	* lisp/url/url-cookie.el (url-cookie-handle-set-cookie): Use setq
4682	instead of set to modify lexical binding.
4683
46842020-03-29  Noam Postavsky  <npostavs@gmail.com>
4685
4686	Don't suggest setting face-remapping-alist to a literal (Bug#39812)
4687
4688	* src/xfaces.c (syms_of_xfaces) <face-remapping-alist>: Use copy-tree
4689	in the costring example code, and note why.
4690
46912020-03-27  Mattias Engdegård  <mattiase@acm.org>
4692
4693	Calc: don't treat nil as an integer (bug#40155)
4694
4695	Make Math-num-integerp return false for nil, following Math-integerp
4696	which was changed in the bignum reform.  This fixes a crash in
4697	calc-graph-fast.
4698
4699	Reported by Narendra Joshi.
4700
4701	* lisp/calc/calc-macs.el (Math-num-integerp): Not true for nil.
4702	* test/lisp/calc/calc-tests.el (calc-Math-integerp): New tests.
4703
47042020-03-25  Eli Zaretskii  <eliz@gnu.org>
4705
4706	* lisp/files.el (directory-files-recursively): Doc fix.  (Bug#40202)
4707
47082020-03-25  Michael Albinus  <michael.albinus@gmx.de>
4709
4710	Document how to disable Tramp file archives
4711
4712	* doc/misc/tramp.texi (Archive file names): Explain how to disable
4713	file archives.
4714
47152020-03-24  Lars Ingebrigtsen  <larsi@gnus.org>
4716
4717	Don't add repeated xlmns:xlink declarations in svg-create
4718
4719	* lisp/svg.el (svg-create): Fix previous unconditional addition of
4720	the xmlns:xlink declaration -- callers may already add one, and
4721	having it twice is something most svg libraries doesn't like.
4722
47232020-03-23  Mattias Engdegård  <mattiase@acm.org>
4724
4725	Calc: Declare dynamic variable bound in lexbind code (bug#40185)
4726
4727	* lisp/calc/calc.el: Declare math-comp-selected as dynamic.
4728
47292020-03-23  Eli Zaretskii  <eliz@gnu.org>
4730
4731	Don't build the Gnulib 'utimens' module on MinGW
4732
4733	* nt/gnulib-cfg.mk (OMIT_GNULIB_MODULE_utimens): Omit the
4734	'utimens' module in the MinGW build: 'utimens' is not used by
4735	Emacs, and 'fdutimens' is implemented in w32.c.
4736
47372020-03-23  Phillip Lord  <phillip.lord@russet.org.uk>
4738
4739	Add Harfbuzz dependency
4740
4741	* admin/nt/dist-build/build-dep-zips.py: Add harfbuzz as a dependency.
4742
47432020-03-23  Noam Postavsky  <npostavs@gmail.com>
4744
4745	Don't signal during backtrace unrewind (Bug#40088)
4746
4747	backtrace_eval_unrewind is used to temporarily reverse
4748	let-bindings (it's called with a positive argument to reverse
4749	bindings, and then a negative argument to re-apply them) by
4750	backtrace--locals and backtrace-eval.  For the SPECPDL_LET_DEFAULT and
4751	SPECPDL_LET_LOCAL cases (which occur for let-bindings on buffer-local
4752	variables), the code calls Fdefault_value and Fbuffer_local_value on
4753	the symbol.
4754
4755	For symbols which are unbound at top-level, the first (with positive
4756	argument) call to backtrace_eval_unrewind will set the symbol's value
4757	to unbound (putting the current value in the specpdl's "old value"
4758	slot).  On the second (with negative argument) call,
4759	backtrace_eval_unrewind attempts to retrieve the symbol's value with
4760	Fdefault_value or Fbuffer_local_value, but that raises a void-variable
4761	signal.  This interrupts the restoration of the let-bindings, so any
4762	other variables more recent on the stack will now have the wrong
4763	value.
4764
4765	* src/data.c (default_value): Make non-static.
4766	* src/lisp.h: Declare it.
4767	* src/eval.c (backtrace_eval_unrewind): Replace the calls to
4768	Fdefault_value and Fbuffer_local_value with default_value and
4769	buffer_local_value, respectively.  The latter do exactly the same as
4770	the former, except if the symbol's value is Qunbound they just return
4771	it instead of signaling void-variable.
4772
47732020-03-23  Noam Postavsky  <npostavs@gmail.com>
4774
4775	Fix a couple of problems in changelog generating functions
4776
4777	* lisp/vc/diff-mode.el (diff-add-log-current-defuns): If there is a
4778	scan-error when calling end-of-defun, go to end of hunk.  This can
4779	easily happen since we are calling end-of-defun on a partial code
4780	fragment from a diff.
4781	* lisp/vc/log-edit.el (log-edit-generate-changelog-from-diff): Bind
4782	display-buffer-overriding-action around the log-edit-show-diff call
4783	only.  Otherwise, it can affect, for example, debugger windows
4784	triggered by the diff-add-log-current-defuns call.
4785
47862020-03-23  Noam Postavsky  <npostavs@gmail.com>
4787
4788	Fix cl-concatenate (Bug#40180)
4789
4790	* lisp/emacs-lisp/cl-extra.el (cl-concatenate): Use apply, to avoid
4791	adding extra nesting of args.
4792	* test/lisp/emacs-lisp/cl-extra-tests.el (cl-concatenate): New test.
4793
47942020-03-21  Eli Zaretskii  <eliz@gnu.org>
4795
4796	Improve documentation of project.el commands
4797
4798	* lisp/progmodes/project.el (project-find-regexp): Require 'grep'
4799	to be able to call 'grep-read-files'.
4800	(project-search, project-query-replace-regexp): Doc fixes.
4801
4802	* doc/emacs/maintaining.texi (Projects): New section.
4803	* doc/emacs/emacs.texi (Top): Add "Projects" to the detailed menu.
4804
48052020-03-20  Zhu Zihao  <all_but_last@163.com>  (tiny change)
4806
4807	Make svg images with links valid
4808
4809	* lisp/svg.el (svg-create): Specify xlink namespace for svg images
4810	(bug#40010).
4811
48122020-03-20  Juri Linkov  <juri@linkov.net>
4813
4814	* lisp/tab-line.el (tab-line-new-button-show): New defcustom.
4815
4816	* lisp/tab-line.el (tab-line-format-template): Use tab-line-new-button-show.
4817	(tab-line-new-tab-choice): Remove choice 'nil' with "No button".
4818	(tab-line-separator): Add docstring.
4819
48202020-03-19  Lars Ingebrigtsen  <larsi@gnus.org>
4821
4822	Don't have exif bugging out on short strings
4823
4824	* lisp/image/exif.el (exif--direct-ascii-value): New function
4825	(bug#40127).
4826	(exif--parse-directory): Use it to get the correct values for
4827	in-directory (i.e., shorter than 4 octets) strings.
4828
48292020-03-19  Robert Pluim  <rpluim@gmail.com>
4830
4831	Use correct registry name for windows-1251 charset
4832
4833	* src/ftfont.c (fc_charset_table): The registry to use to lookup
4834	windows-1251 charset is microsoft-cp1251, not windows-1251.
4835	(Bug#40097)
4836
48372020-03-19  Amin Bandali  <bandali@gnu.org>
4838
4839	ERC: Update maintainer address
4840
48412020-03-18  Philipp Stephani  <phst@google.com>
4842
4843	Remove raw carriage return characters from test file.
4844
4845	This protects against tools that mangle newline characters in text
4846	files.
4847
4848	* test/lisp/electric-tests.el (electric-pair-mode-newline-between-parens)
4849	(electric-layout-mode-newline-between-parens-without-e-p-m)
4850	(electric-layout-mode-newline-between-parens-without-e-p-m-2): Escape
4851	carriage return characters.
4852
48532020-03-17  Robert Pluim  <rpluim@gmail.com>
4854
4855	Recalculate default font when switching font backend
4856
4857	This is an updated version of the patch by Dmitry Antipov
4858	<dmantipov@yandex.ru> in
4859	<https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23386#43>.
4860
4861	Fixes Bug#23386
4862
4863	* src/dispextern.h (struct redisplay_interface): New member
4864	default_font_parameter.
4865	* src/xterm.h: Add prototype for x_default_font_parameter.
4866	* src/xterm.c (x_redisplay_interface): Initialize
4867	default_font_parameter member.
4868	* src/xfns.c (x_default_font_parameter): Make non-static.
4869	* src/w32term.h: Add prototype for w32_default_font_parameter
4870	* src/w32fns.c (w32_default_font_parameter): Make non-static.
4871	* src/w32term.c (w32_redisplay_interface): Initialize
4872	default_font_parameter member.
4873	* src/nsterm.m (ns_redisplay_interface): Add dummy
4874	ns_default_font_parameter (there is currently only one possible font
4875	backend on macOS).  Initialize default_font_parameter member.
4876	* src/frame.c (gui_set_font_backend): Recalculate default font using
4877	RIF default_font_parameter to avoid crash when changing font backend.
4878
48792020-03-17  Juri Linkov  <juri@linkov.net>
4880
4881	* lisp/tab-line.el: Fix tab-line-format and tab-line-format-template.
4882
4883	* lisp/tab-line.el (tab-line-format): Use buffer-name in the cache key
4884	instead of just buffer object to invalidate the cache on buffer renaming.
4885	(tab-line-format-template): Always leave the separator after the last tab
4886	like tab-bar.el already does.
4887
48882020-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
4889
4890	* etc/NEWS: Make the `--eval` example slightly more precise
4891
48922020-03-15  Juri Linkov  <juri@linkov.net>
4893
4894	* lisp/image/image-converter.el: Support more ImageMagick versions (bug#39994)
4895
4896	* lisp/image/image-converter.el (image-converter--probe): Match
4897	a possible additional second column in some ImageMagick versions
4898	of "convert -list format".
4899
49002020-03-14  Eli Zaretskii  <eliz@gnu.org>
4901
4902	Support Unicode 13.0
4903
4904	* admin/unidata/BidiBrackets.txt:
4905	* admin/unidata/BidiMirroring.txt:
4906	* admin/unidata/Blocks.txt:
4907	* admin/unidata/NormalizationTest.txt:
4908	* admin/unidata/SpecialCasing.txt:
4909	* admin/unidata/UnicodeData.txt:
4910	* admin/unidata/copyright.html:
4911	* test/manual/BidiCharacterTest.txt: Updated files imported from
4912	Unicode v13.0.
4913
4914	* admin/unidata/blocks.awk: Add "Symbols for Legacy Computing" to
4915	known aliases.
4916
4917	* lisp/international/fontset.el (script-representative-chars)
4918	(setup-default-fontset): Add new scripts.
4919	* lisp/international/characters.el: Set syntax for Symbols for
4920	Legacy Computing characters.  Update setting of char-width-table.
4921	* lisp/international/mule-cmds.el (ucs-names): Update ranges of
4922	characters for which we want names in 'ucs-names'.
4923
4924	* test/lisp/international/ucs-normalize-tests.el
4925	(ucs-normalize-tests--failing-lines-part1)
4926	(ucs-normalize-tests--failing-lines-part2): Update according to
4927	'ucs-normalize-check-failing-lines'.
4928
49292020-03-14  Lars Ingebrigtsen  <larsi@gnus.org>
4930
4931	Fix regression in wisent-total-conflicts
4932
4933	* lisp/cedet/semantic/wisent/comp.el (wisent-total-conflicts):
4934	There may not be a current source file.  In that case, don't try
4935	to keep track of the number of expected conflicts (bug#39911).
4936
49372020-03-14  Alan Mackenzie  <acm@muc.de>
4938
4939	* lisp/progmodes/cc-defs.el (c-version): update to 5.34.1 for Emacs 27.1
4940
4941	Don't merge to master.
4942
49432020-03-14  Philipp Stephani  <phst@google.com>
4944
4945	* lisp/textmodes/fill.el (fill-nobreak-predicate): Fix documentation.
4946
49472020-03-14  Stefan Kangas  <stefankangas@gmail.com>
4948
4949	Improve Package Menu hiding docstrings
4950
4951	* lisp/emacs-lisp/package.el (package-menu-toggle-hiding): Add
4952	reference to 'package-menu-hidden-regexps'.
4953	* lisp/emacs-lisp/package.el (package-menu-hide-package): Improve
4954	docstring to say that hiding is saved in a user option.  Fix a
4955	typo.  (Bug#39436)
4956
49572020-03-14  Eli Zaretskii  <eliz@gnu.org>
4958
4959	Fix display of Big5 characters when using Fontconfig
4960
4961	* src/ftfont.c (fc_charset_table): Fix the value of the big-5
4962	representative codepoint.  Reported by Brian Schack
4963	<bschack-cocoa@usa.net>.  (Bug#40057)
4964
4965	* src/macfont.m (cf_charset_table): Adjust the comment.
4966
49672020-03-13  Eli Zaretskii  <eliz@gnu.org>
4968
4969	Fix a recent documentation change
4970
4971	* doc/emacs/frames.texi (Mouse Commands): More detailed
4972	description of how tilting the mouse-wheel works.
4973
4974	* lisp/mwheel.el (mouse-wheel-tilt-scroll)
4975	(mouse-wheel-flip-direction): Fix the wording of doc strings.
4976	(Bug#39979)
4977
49782020-03-13  Eli Zaretskii  <eliz@gnu.org>
4979
4980	Fix last change
4981
4982	* lisp/tab-bar.el (tab-bar-new-button-show): Fix wording of the
4983	doc string.
4984
49852020-03-13  Juri Linkov  <juri@linkov.net>
4986
4987	* lisp/tab-bar.el: Last-minute changes.
4988
4989	* lisp/tab-bar.el (tab-bar-mode): Check for non-nil
4990	tab-bar-new-button and tab-bar-close-button.
4991	(tab-bar-new-button-show): New defcustom.
4992	(tab-bar-make-keymap-1): Check for tab-bar-new-button-show.
4993	(tab-bar-separator): Add docstring.
4994
49952020-03-12  Stefan Monnier  <monnier@iro.umontreal.ca>
4996
4997	* lisp/subr.el (cancel-change-group): Fix bug#39680
4998
4999	Don't re-use an existing `pending-undo-list` even if (eq last-command 'undo)
5000	since there might have been changes to the buffer since that `undo` command
5001	and the `pending-undo-list` can hence be invalid for the current
5002	buffer contents.
5003
50042020-03-12  İ. Göktuğ Kayaalp  <self@gkayaalp.com>
5005
5006	Improve docs for horizontal scrolling with mouse and touchpad (Bug#39979)
5007
5008	* lisp/mwheel.el (mouse-wheel-tilt-scroll,
5009	mouse-wheel-flip-direction): Improve docstrings.
5010	* doc/emacs/frames.texi (Mouse Commands): Mention touchpads.
5011
50122020-03-10  Juri Linkov  <juri@linkov.net>
5013
5014	* lisp/emacs-lisp/package.el (package-install): Fix typo in docstring.
5015
50162020-03-09  Paul Eggert  <eggert@cs.ucla.edu>
5017
5018	Port .gdbinit to clang with -gdwarf-4
5019
5020	* src/.gdbinit (xgetsym): Port to clang with -gdwarf-4, which
5021	doesn’t output the type of lispsym anywhere other than emacs.o
5022	(Bug#39962).
5023
50242020-03-09  Mattias Engdegård  <mattiase@acm.org>
5025
5026	Simplify rx example in manual
5027
5028	* doc/lispref/searching.texi (Rx Notation):
5029	Use the 'not' shorthand introduced in Emacs 27.
5030
50312020-03-09  Paul Eggert  <eggert@cs.ucla.edu>
5032
5033	* src/timefns.c: Add comments.
5034
50352020-03-08  Paul Eggert  <eggert@cs.ucla.edu>
5036
5037	* src/timefns.c: Add comments.
5038
50392020-03-08  Andrew Eggenberger  <andrew.eggenberger@gmail.com>  (tiny change)
5040
5041	Eliminate use of cl-concatenate in 'seq' package
5042
5043	Fixes (Bug#39761) by making cl-extra dependent on seq rather than
5044	vice versa.
5045	* lisp/emacs-lisp/seq.el (seq-concatenate): Move cl-concatenate's
5046	code here instead of calling it.
5047	* lisp/emacs-lisp/cl-extra.el (cl-concatenate): Use cl-concatenate.
5048
50492020-03-07  Paul Eggert  <eggert@cs.ucla.edu>
5050
5051	Fix bug with JIT stealth timers
5052
5053	* lisp/emacs-lisp/timer.el (run-at-time): Don’t assume that Lisp
5054	time values must be conses (Bug#39944).
5055
50562020-03-07  Paul Eggert  <eggert@cs.ucla.edu>
5057
5058	* doc/lispref/os.texi (time-subtract): Doc fix.
5059
50602020-03-07  Alan Third  <alan@idiocy.org>
5061
5062	NS port documentation updates
5063
5064	* doc/emacs/macos.texi (Mac / GNUstep Customization): Document some
5065	more of the ns- variables and remove incorrect font back-end
5066	information.
5067	* etc/NEWS: Update the documentation status of macOS news entries.
5068
50692020-03-07  João Távora  <joaotavora@gmail.com>
5070
5071	Let fido-mode users force a minibuffer-exit
5072
5073	* lisp/icomplete.el (icomplete-fido-exit):
5074	Add FORCE arg.  Rewrite docstring. (bug#38992)
5075
50762020-03-07  Dmitry Gutov  <dgutov@yandex.ru>
5077
5078	icomplete-fido-exit: New command for the M-j binding
5079
5080	* lisp/icomplete.el (icomplete-fido-exit): New command.
5081	(icomplete-fido-mode-map): Use it (bug#38992).
5082
50832020-03-07  Dmitry Gutov  <dgutov@yandex.ru>
5084
5085	minibuffer-force-complete-and-exit: Allow input with no matches
5086
5087	* lisp/minibuffer.el (minibuffer--require-match): New variable.
5088	(completing-read-default): Bind it to the REQUIRE-MATCH value.
5089	(minibuffer-force-complete-and-exit): Consult it to allow input
5090	with no matches when a match is not required (bug#38992).
5091
5092	* lisp/icomplete.el (icomplete-exhibit): Use it to render the
5093	correct parens around matches.
5094
50952020-03-07  Eli Zaretskii  <eliz@gnu.org>
5096
5097	Document that 'byte-compile-dynamic' is obsolete
5098
5099	* doc/lispref/compile.texi (Dynamic Loading): Document that this
5100	is deprecated.
5101
5102	* etc/NEWS: mark the 'byte-compile-dynamic' entry as documented.
5103
51042020-03-07  Eli Zaretskii  <eliz@gnu.org>
5105
5106	Document the changes in 'read-answer'
5107
5108	* doc/lispref/minibuf.texi (Multiple Queries): Document the
5109	fact that 'read-answer' can now accept non-character input
5110	events.
5111
51122020-03-07  Eli Zaretskii  <eliz@gnu.org>
5113
5114	Document changes in lexical-binding
5115
5116	* doc/lispref/variables.texi (Using Lexical Binding): Document
5117	that lexical-binding is now turned on by default in more cases.
5118
5119	* etc/NEWS: Fix wording of the NEWS entry about the above, and mark it
5120	as fully documented.
5121
51222020-03-06  Amin Bandali  <mab@gnu.org>
5123
5124	Update ERC mailing list address
5125
5126	* lisp/erc/erc.el (erc-official-location): As part of bringing ERC
5127	under the Emacs umbrella, erc-discuss has been renamed to emacs-erc,
5128	and will be *the* mailing list for discussions and announcements about
5129	ERC going forward.  The other two lists, erc-announce and erc-commit,
5130	are now retired.  For more details, see the announcement at
5131	<https://lists.gnu.org/archive/html/emacs-erc/2020-03/msg00001.html>.
5132
51332020-03-06  Roland Winkler  <winkler@gnu.org>
5134
5135	Use regexp-opt to define bibtex-autokey-transcriptions.  (Bug#39686)
5136
51372020-03-06  Eli Zaretskii  <eliz@gnu.org>
5138
5139	Improve documentation of 'table-generate-source'
5140
5141	* lisp/textmodes/table.el (table-generate-source): Doc fix.
5142	(Bug#39935)
5143
5144	* etc/NEWS: Fix wording of the 'table-generate-source' entry and
5145	mark it as documented.
5146
51472020-03-06  Eli Zaretskii  <eliz@gnu.org>
5148
5149	Attempt to avoid rare segfaults in show_mouse_face
5150
5151	* src/xdisp.c (show_mouse_face): Don't display the active region
5152	if called on a frame different from the one recorded in HLINFO.
5153	(Bug#37671)
5154
51552020-03-05  Eli Zaretskii  <eliz@gnu.org>
5156
5157	Avoid crashes when a fontset has strange entries
5158
5159	* src/fontset.c (reorder_font_vector): Skip nil entries in the
5160	loop that assigns scores to rfont_def's.
5161	(fontset_compare_rfontdef): Cope with nil.  This has the effect of
5162	moving any nil entries to the end of the font-group, and avoids
5163	crashing if an element other than the last in the font-group is
5164	nil.  (Bug#39892)
5165
51662020-03-05  Mattias Engdegård  <mattiase@acm.org>
5167
5168	Fix rx error with ? and ??
5169
5170	The ? and ?? rx operators are special in that they can be written as
5171	characters (space and '?' respectively).  This confused the definition
5172	look-up mechanism in rare cases.
5173
5174	* lisp/emacs-lisp/rx.el (rx--expand-def): Don't look up non-symbols.
5175	* test/lisp/emacs-lisp/rx-tests.el (rx-charset-or): Test.
5176
51772020-03-05  Mattias Engdegård  <mattiase@acm.org>
5178
5179	* lisp/emacs-lisp/rx.el (rx--string-to-intervals): Fix error string.
5180
51812020-03-05  Justin Burkett  <justin@burkett.cc>  (tiny change)
5182
5183	Fix args in 'window-text-pixel-size' call in 'fit-window-to-buffer'
5184
5185	* lisp/window.el (fit-window-to-buffer): Fix arguments in
5186	'window-text-pixel-size' call.
5187
51882020-03-04  João Távora  <joaotavora@gmail.com>
5189
5190	Have pulse.el preserve existing overlay priorities
5191
5192	(Bug#39821)
5193
5194	* lisp/cedet/pulse.el (pulse-momentary-highlight-overlay): Save
5195	overlay priority.
5196	(pulse-momentary-unhighlight): Restore.
5197
51982020-03-04  Alan Mackenzie  <acm@muc.de>
5199
5200	CC Mode: Fix the handling of two adjacent after-change-functionses.
5201
5202	The bug involved failing to set c-new-END correctly, which lead to an
5203	args-out-of-range error when after-change-functions was invoked twice without
5204	an intervening invocation of before-change-functions.
5205
5206	* lisp/progmodes/cc-mode.el (c-after-change): Correct a coding error in the
5207	handling of c-just-done-before-change.
5208
52092020-03-04  Alan Mackenzie  <acm@muc.de>
5210
5211	Fix combine-change-calls-1 for when buffer-undo-list is t
5212
5213	* lisp/subr.el (combine-change-calls-1): Bind before/after-change-functions to
5214	nil also when buffer-undo-list is t.
5215
52162020-03-04  Mattias Engdegård  <mattiase@acm.org>
5217
5218	Don't misinterpret doc string as initial value
5219
5220	* lisp/loadhist.el (loadhist--restore-autoload):
5221	* lisp/progmodes/vhdl-mode.el (vhdl-font-lock-keywords-0):
5222	Prevent the doc string from being used as initial value.
5223
52242020-03-04  Stefan Kangas  <stefankangas@gmail.com>
5225
5226	Bump checkdoc-version to match library header
5227
5228	* lisp/emacs-lisp/checkdoc.el (checkdoc-version): Bump version.
5229
52302020-03-04  Noam Postavsky  <npostavs@gmail.com>
5231
5232	Explain how to unset mode bindings (Bug#39802)
5233
5234	* doc/emacs/custom.texi (Init Rebinding): Explain that passing nil to
5235	define-key will unbind keys, and extend the example accordingly.
5236
52372020-03-04  Noam Postavsky  <npostavs@gmail.com>
5238
5239	Fix describe-variable on values with circular syntax (Bug#39805)
5240
5241	* lisp/help-fns.el (describe-variable): Set syntax tables before
5242	calling pp-buffer.
5243
52442020-03-04  Juri Linkov  <juri@linkov.net>
5245
5246	Improve documentation of next-error-highlight-no-select (bug#38778)
5247
5248	* doc/emacs/building.texi (Compilation Mode):
5249	Mention next-error-highlight-no-select.
5250
5251	* lisp/simple.el (next-error-highlight): Add reference to
5252	next-error-highlight-no-select.
5253	(next-error-highlight-no-select): Add reference to
5254	next-error-highlight.
5255
52562020-03-03  Andreas Schwab  <schwab@linux-m68k.org>
5257
5258	Fix implicit declaration of getenv and atol
5259
5260	* src/gtkutil.c: Include <stdlib.h>.
5261
52622020-03-03  Eli Zaretskii  <eliz@gnu.org>
5263
5264	Fix handling MS-Windows keyboard input above the BMP
5265
5266	* src/w32term.c (w32_read_socket): If we get a WM_UNICHAR message
5267	with a surrogate codepoint, assemble the corresponding character
5268	code above the BMP from its UTF-16 encoding, communicated in two
5269	consecutive WM_UNICHAR messages.
5270
52712020-03-03  Mattias Engdegård  <mattiase@acm.org>
5272
5273	* etc/NEWS: More complete description of rx 'not' changes.
5274
52752020-03-02  Juri Linkov  <juri@linkov.net>
5276
5277	* doc/emacs/mini.texi (Yes or No Prompts): 'y-or-n-p' now uses the minibuffer.
5278
52792020-03-02  Robert Pluim  <rpluim@gmail.com>
5280
5281	Don't attempt to cache glyph metrics for FONT_INVALID_CODE
5282
5283	This was causing massive slowdown in redisplay when eg #xfe0f
5284	(VARIATION SELECTOR-16) was present, as the cache ended up very large,
5285	unused, and being recreated on every call to font_fill_lglyph_metrics
5286	(Bug#39133).
5287
5288	* src/composite.c (fill_gstring_body): Hoist FONT_OBJECT_P check out
5289	of loop.  Calculate glyph code and check for FONT_INVALID_CODE before
5290	calling font_fill_lglyph_metrics.  Pass glyph code to it.
5291
5292	* src/font.c (font_fill_lglyph_metrics): Add code parameter, move
5293	glyph code calculation up the call stack into fill_gstring_body.
5294
5295	* src/font.h: Adjust font_fill_lglyph_metrics prototype.
5296
52972020-03-01  Sergey Trofimov  <sarg@sarg.org.ru>  (tiny change)
5298
5299	Fix fit-frame-to-buffer for multi-monitor setup
5300
5301	* lisp/window.el (fit-frame-to-buffer): Call
5302	'frame-monitor-attributes' instead of
5303	'display-monitor-attributes-list'.  Fix geometry calculations for
5304	multiple monitors.
5305
53062020-03-01  Mattias Engdegård  <mattiase@acm.org>
5307
5308	rx: Improve 'or' compositionality (bug#37659)
5309
5310	Perform 'regexp-opt' on nested 'or' forms, and after expansion of
5311	user-defined and 'eval' forms.  Characters are now turned into strings
5312	for wider 'regexp-opt' scope.  This preserves the longest-match
5313	semantics for string in 'or' forms over composition.
5314
5315	* doc/lispref/searching.texi (Rx Constructs): Document.
5316	* lisp/emacs-lisp/rx.el (rx--normalise-or-arg)
5317	(rx--all-string-or-args): New.
5318	(rx--translate-or): Normalize arguments first, and check for strings
5319	in subforms.
5320	(rx--expand-eval): Extracted from rx--translate-eval.
5321	(rx--translate-eval): Call rx--expand-eval.
5322	* test/lisp/emacs-lisp/rx-tests.el (rx-or, rx-def-in-or): Add tests.
5323	* etc/NEWS: Announce.
5324
53252020-02-29  Juri Linkov  <juri@linkov.net>
5326
5327	* lisp/tab-line.el: Fix auto-hscrolling (bug#39649)
5328
5329	Distinguish offsets between manual-vs-automatic scrolling
5330	as integers-vs-floats instead of positive-vs-negative integers.
5331
5332	* lisp/tab-line.el (tab-line-format-template): Use 'numberp'
5333	instead of 'integerp', and 'truncate' instead of 'abs'.
5334	(tab-line-format): When the window-buffer was updated, set window-parameter
5335	to float to enable auto-hscroll after it was disabled on manual scrolling.
5336	(tab-line-auto-hscroll-buffer): New variable with internal buffer.
5337	(tab-line-auto-hscroll): Erase in tab-line-auto-hscroll-buffer.
5338	Use 'numberp' instead of 'integerp', 'truncate' instead of 'abs',
5339	and 'float' instead of '-'.
5340	(tab-line-hscroll): Use 'numberp' instead of 'integerp',
5341	and 'truncate' instead of 'abs'.
5342
53432020-02-29  Mattias Engdegård  <mattiase@acm.org>
5344
5345	Fix rx charset generation
5346
5347	* lisp/emacs-lisp/rx.el (rx--charset-p): Don't overquote.
5348	(rx--generate-alt): Generate '.' for negated newline.
5349	* test/lisp/emacs-lisp/rx-tests.el (rx-any, rx-charset-or): Test.
5350
53512020-02-28  Mattias Engdegård  <mattiase@acm.org>
5352
5353	Fix overquoting in mule.el
5354
5355	* lisp/international/mule.el (sgml-xml-auto-coding-function):
5356	Remove accidental quote.
5357
53582020-02-28  Paul Eggert  <eggert@cs.ucla.edu>
5359
5360	* src/timefns.c (time_arith): Omit incorrect comment.
5361
53622020-02-28  Mattias Engdegård  <mattiase@acm.org>
5363
5364	* lisp/vc/vc-cvs.el (vc-cvs-ignore): Copy-edit doc string
5365
53662020-02-28  Štěpán Němec  <stepnem@gmail.com>
5367
5368	checkdoc: Don't mistake "cf." for sentence end
5369
5370	* lisp/emacs-lisp/checkdoc.el (checkdoc-sentencespace-region-engine):
5371	Recognize "cf." as an abbreviation, not a sentence end.
5372
53732020-02-27  Nicolas Petton  <nicolas@petton.fr>
5374
5375	Bump Emacs version to 27.0.90
5376
5377	* README:
5378	* configure.ac:
5379	* msdos/sed2v2.inp:
5380	* nt/README.W32: Bump Emacs version.
5381
53822020-02-27  Nicolas Petton  <nicolas@petton.fr>
5383
5384	* etc/AUTHORS: Update.
5385
53862020-02-27  Nicolas Petton  <nicolas@petton.fr>
5387
5388	* admin/authors.el (authors-ignored-files): Fix entries.
5389
53902020-02-26  Eric Abrahamsen  <eric@ericabrahamsen.net>
5391
5392	Fix documented slot name of eieio-instance-tracker class
5393
5394	* doc/misc/eieio.texi (eieio-instance-tracker): The code has the slot
5395	  name as `tracking-symbol', not `tracker-symbol'.
5396
53972020-02-26  Robert Pluim  <rpluim@gmail.com>
5398
5399	Range-check width passed to define-fringe-bitmap
5400
5401	This prevents a crash when attempting to create a zero-width bitmap.
5402
5403	* src/fringe.c (Fdefine_fringe_bitmap): Check value of width,
5404	signal an error if outside documented range (Bug#39662).
5405
54062020-02-26  Nicolas Petton  <nicolas@petton.fr>
5407
5408	* admin/authors.el: Add missing entries
5409
54102020-02-26  Noam Postavsky  <npostavs@gmail.com>
5411
5412	Define libgnutls-version properly
5413
5414	* src/gnutls.c (syms_of_gnutls) <libgnutls-version>: Define with
5415	DEFVAR_LISP and add docstring, so that this variable will accessible by
5416	help facilities.
5417
54182020-02-25  Dmitry Gutov  <dgutov@yandex.ru>
5419
5420	vc-dir-ignore: More accurately choose base directory
5421
5422	* lisp/vc/vc-dir.el:
5423	(vc-dir-ignore): Use it (bug#37189).
5424
5425	* lisp/vc/vc.el:
5426	(vc--ignore-base-dir): Extract from vc-ignore.
5427
54282020-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
5429
5430	* lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Change last fix
5431
5432	Make sure we always work in the selected-window's buffer.
5433
54342020-02-23  Alan Mackenzie  <acm@muc.de>
5435
5436	CC Mode: Protect against consecutive calls to before-change-functions ...
5437
5438	without an intervening call to after-change-functions.  This would have been a
5439	workaround to bug #38691 had the causes of that bug not been removed.
5440
5441	* lisp/progmodes/cc-mode.el (c-just-done-before-change): Add an extra value to
5442	this variable, 'whole-buffer, this being set by c-before-change as a signal to
5443	c-after-change that although c-before-change has run, it has assumed the
5444	entire buffer as the change region.
5445	(c-before-change, c-after-change): Adapt to the new meaning of the above.
5446
54472020-02-23  Noam Postavsky  <npostavs@gmail.com>
5448
5449	Shorten some ppss struct field names
5450
5451	* lisp/emacs-lisp/syntax.el (ppss): Capitalize docstrings.
5452	(ppss-comment-depth): Renamed from ppss-comment-nesting.
5453	(ppss-quoted-p): Renamed from ppss-after-quote-p.
5454	(ppss-min-depth): Renamed from ppss-minimum-paren-depth.
5455	(ppss-open-parens): Renamed from ppss-open-paren-positions.
5456	* etc/NEWS: Announce the ppss-* accessors.
5457
54582020-02-23  Alan Mackenzie  <acm@muc.de>
5459
5460	Java Mode: Fix fontification of variable decl inside `for'
5461
5462	* lisp/progmodes/cc-engine.el (c-forward-declarator): In place of a test for
5463	C++ Mode, test for either C++ Mode or Java Mode.
5464
54652020-02-23  Alan Mackenzie  <acm@muc.de>
5466
5467	CC Mode: Fontify foo in "const auto foo :" correctly
5468
5469	* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): While attempting to
5470	find a declaration's identifier, recast the latest found id. as that
5471	identifier when there is no other type identifier and the result of the most
5472	recent c-forward-type call is 'maybe or 'found.  In the latter case, remove
5473	the id. from the found types list, too.
5474
54752020-02-23  Juri Linkov  <juri@linkov.net>
5476
5477	* lisp/replace.el (occur-engine-line): Revert part of fb16313025 (bug#39597)
5478
54792020-02-23  Dmitry Gutov  <dgutov@yandex.ru>
5480
5481	Move more logic to vc-ignore from vc-default-ignore
5482
5483	* lisp/vc/vc-dir.el (vc-dir-ignore):
5484	Pass relative file names to vc-ignore.
5485
5486	* lisp/vc/vc.el (vc-ignore): Move the responsibility of
5487	constructing the ignore pattern (right now, most often a relative
5488	file name) using a file name received from the user, here.
5489	(vc-default-ignore): ...from here (bug#37189, see discussion).
5490	Also clarify the docstring.
5491
54922020-02-22  Eli Zaretskii  <eliz@gnu.org>
5493
5494	Warn about the likes of "[:alnum:]" in regexps
5495
5496	* doc/lispref/searching.texi (Char Classes): Warn about erroneous
5497	usage of named character classes.  Suggested by Stephen Leake
5498	<stephen_leake@stephe-leake.org>.
5499
55002020-02-22  Wolfgang Scherer  <wolfgang.scherer@gmx.de>
5501
5502	Don't write absolute filenames and duplicate strings to CVS ignore files
5503
5504	* lisp/vc/vc-cvs.el (vc-cvs-ignore): Expand filename correctly
5505	and pass on only the basename as the pattern.
5506	(vc-cvs-append-to-ignore) Do not write duplicate strings to
5507	.cvsignore.  New optional parameter SORT to more explicitly
5508	control sorting of the ignore entries.  (Bug#37215)
5509	* lisp/vc/pcvs.el (cvs-mode-ignore): Call 'vc-cvs-append-to-ignore'
5510	with SORT argument.
5511
55122020-02-21  Federico Tedin  <federicotedin@gmail.com>
5513
5514	Fix cursor-sensor--detect when current buf != selected window's buf
5515
5516	* lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Avoid
5517	trying to read text properties from position taken from another
5518	buffer.  (Bug#38740)
5519
55202020-02-21  Eli Zaretskii  <eliz@gnu.org>
5521
5522	* doc/emacs/sending.texi (Mail Sending): Fix index entries.
5523
55242020-02-21  Allen Li  <darkfeline@felesatra.moe>
5525
5526	Document 'message-send-mail-function' in the Emacs manual
5527
5528	Most of the manual here addresses Message mode, yet talks about
5529	'send-mail-function' which is used for Mail mode.
5530	Fixing this completely requires more involved work, but for now at
5531	least document the difference here.
5532
5533	* doc/emacs/sending.texi (Mail Sending): Mention
5534	'message-send-mail-function'.  (Bug#39639)
5535
55362020-02-21  Allen Li  <darkfeline@felesatra.moe>
5537
5538	Fix reference to 'message-send-and-exit' in Emacs manual
5539
5540	Most of the manual here addresses Message mode, and C-c C-c directly
5541	above cites the Message mode command, not the Mail mode command.
5542
5543	* doc/emacs/sending.texi (Mail Sending): Fix reference.  (Bug#39639)
5544
55452020-02-21  Steven Allen  <steven@stebalien.com>
5546
5547	Skip shell prompt on current line in Eshell even if it's protected
5548
5549	When the eshell prompt is protected (e.g., with rear non-sticky,
5550	inhibited movements, etc.), 'beginning-of-line' won't move to the
5551	actual beginning of the line and therefore won't skip over the
5552	prompt.
5553	* lisp/eshell/em-prompt.el (eshell-previous-prompt): Use
5554	'forward-line' to go to the beginning of the line, even if it's
5555	protected.  (Bug#39627)
5556
55572020-02-20  Mattias Engdegård  <mattiase@acm.org>
5558
5559	Fix broken regexps
5560
5561	Incorrect escaping prevented these from working as intended.
5562	Found by relint.
5563
5564	* lisp/progmodes/cc-defs.el (c-search-backward-char-property):
5565	Add missing backslash.
5566	* lisp/progmodes/simula.el (simula-mode):
5567	Remove one backslash too many.
5568
55692020-02-19  Paul Eggert  <eggert@cs.ucla.edu>
5570
5571	* Makefile.in (PREFERRED_BRANCH): Now emacs-27.
5572
55732020-02-19  Paul Eggert  <eggert@cs.ucla.edu>
5574
5575	Fix bug when visiting euc-jp-encoded directories
5576
5577	Problem reported by Kan Sasaki (Bug#39672).
5578	* src/fileio.c (Ffile_directory_p):
5579	Encode filename before giving it to file_directory_p.
5580	This fixes a typo introduced in
5581	2019-09-18T02:18:14Z!eggert@cs.ucla.edu.
5582
55832020-02-17  Paul Eggert  <eggert@cs.ucla.edu>
5584
5585	Clarify when fixnums are used.
5586
5587	* doc/lispref/numbers.texi (Integer Basics): Clarify.
5588	Based on a suggestion by Noam Postavsky (Bug#39557#32).
5589
55902020-02-17  Paul Eggert  <eggert@cs.ucla.edu>
5591
5592	Reorder discussion of integer basics
5593
5594	* doc/lispref/numbers.texi (Integer Basics): Put the fixnum/bignum
5595	discussion at the end of the section, not at the start (Bug#39557).
5596
55972020-02-17  Mattias Engdegård  <mattiase@acm.org>
5598
5599	Make OMake support slightly less expensive (bug#39595)
5600
5601	When run with -p or -P, OMake regurgitates error messages that
5602	prevented further progress, indented by 6 spaces.  Use that fact
5603	to ameliorate the modification done to other error message regexps.
5604
5605	* lisp/progmodes/compile.el (compilation-parse-errors):
5606	When 'omake' is enabled, allow error messages to be indented by 0 or 6
5607	spaces instead of any number of spaces, to avoid pathological
5608	behaviour.
5609	(compilation-error-regexp-alist-alist): Anchor the 'omake' pattern to
5610	bol for performance.  Repair the 'ruby-Test::Unit' pattern, which
5611	relied on the previously over-generous 'omake' hack.
5612	* etc/compilation.txt (OMake): Add examples.
5613	* test/lisp/progmodes/compile-tests.el (compile-tests--test-regexps-data)
5614	(compile-test-error-regexps): Add test for OMake (indented error).
5615
56162020-02-17  Mattias Engdegård  <mattiase@acm.org>
5617
5618	Speed up 'msft' and 'watcom' compilation error regexps
5619
5620	They have similar structure, and both suffer from being able to
5621	match leading spaces in multiple ways which leads to bad performance
5622	when backtracking (bug#39595).
5623
5624	* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
5625	Improved 'msft' and 'watcom' regexps.
5626
56272020-02-17  Mattias Engdegård  <mattiase@acm.org>
5628
5629	Speed up 'maven' compilation error message regexp
5630
5631	Anchor the regexp at line-start to prevent quadratic behaviour when
5632	it doesn't match (bug#39595).  It's unclear whether the type tag, like
5633	[ERROR], is always present; we keep it optional just in case.
5634
5635	* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
5636	Rewrite 'maven' regexp, using rx for clarity.
5637	* etc/compilation.txt (maven): More examples.
5638	* test/lisp/progmodes/compile-tests.el
5639	(compile-tests--test-regexps-data): No leading spaces; they seems to
5640	stem from a misunderstanding in bug#11517.
5641
56422020-02-16  Alan Mackenzie  <acm@muc.de>
5643
5644	Amend c-backward-sws better to handle multiline block comments
5645
5646	In particular, multiline comments lacking escaped newlines.
5647
5648	* lisp/progmodes/cc-engine.el (c-backward-sws): Whilst searching backward for
5649	a putative beginning of macro, move back over block comments whose innards
5650	lack escaped newlines.
5651
56522020-02-16  Alan Mackenzie  <acm@muc.de>
5653
5654	Reformulate c-end-of-macro, handling multiline block comments better
5655
5656	* lisp/progmodes/cc-langs.el (c-last-open-c-comment-start-on-line-re): Comment
5657	out.
5658	(c-open-c-comment-on-logical-line-re): Remove.
5659
5660	* lisp/progmodes/cc-engine.el (c-end-of-macro): Handle multiline block
5661	comments lacking escaped newlines using parse-partial-sexp rather than the
5662	former variables removed from cc-langs.el.
5663
56642020-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5665
5666	Fix unexec failure on macOS 10.15.4
5667
5668	* src/unexmacosx.c (unexec_regions_merge): Align region start addresses to
5669	page boundaries and then merge regions.
5670
56712020-02-15  Eli Zaretskii  <eliz@gnu.org>
5672
5673	Fix 'reverse-region' when less than one line is in region
5674
5675	* lisp/sort.el (reverse-region): Signal a user-error if the region
5676	includes less than one full line, thus avoiding an inadvertent
5677	deletion of text following the current line.  Fix the doc string.
5678	Fix comments to start with a capital letter.  (Bug#39376)
5679
56802020-02-15  Pieter van Oostrum  <pieter@vanoostrum.org>
5681
5682	Correct default regexp in 'package-menu-hide-package'
5683
5684	* lisp/emacs-lisp/package.el (package-menu-mode-menu): Correct default
5685	regexp, so it only selects the package at point.
5686	(Bug#39436)
5687
56882020-02-15  Pieter van Oostrum  <pieter@vanoostrum.org>
5689
5690	Remove obsolete menu entry "Redisplay buffer"
5691
5692	* lisp/emacs-lisp/package.el (package-menu-mode-menu): Remove obsolete
5693	menu entry "Redisplay buffer".
5694	(package-menu-mode-menu): Menu entry "Refresh Package List":
5695	make the doc string more accurate.
5696	(Bug#39436)
5697
56982020-02-14  Mattias Engdegård  <mattiase@acm.org>
5699
5700	Remove redundant 'msft' compilation error rule (bug#39595)
5701
5702	When the 'msft' rule was moved and modified, the old copy was left
5703	in place by mistake.
5704
5705	* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
5706	Remove old rule.
5707
57082020-02-13  Stefan Monnier  <monnier@iro.umontreal.ca>
5709
5710	* doc/lispref/variables.texi (special-variable-p): Clarify limits
5711
57122020-02-13  Mattias Engdegård  <mattiase@acm.org>
5713
5714	Remove the optional KEEP-ORDER argument to regexp-opt
5715
5716	This argument was added for the 'or' clause in rx, but it turned out
5717	to be a bad idea (bug#37659), and there seems to be little other use
5718	for it.
5719
5720	* lisp/emacs-lisp/regexp-opt.el (regexp-opt): Remove KEEP-ORDER.
5721	* doc/lispref/searching.texi (Regexp Functions):
5722	* etc/NEWS: Remove it from the documentation.
5723	* test/lisp/emacs-lisp/regexp-opt-tests.el (regexp-opt-test--match-all)
5724	(regexp-opt-test--check-perm, regexp-opt-test--explain-perm)
5725	(regexp-opt-keep-order, regexp-opt-longest-match): Simplify test.
5726
57272020-02-13  Alan Mackenzie  <acm@muc.de>
5728
5729	Make after-change-functions called from call-process get the correct BEG
5730
5731	This fixes bug #39585.
5732
5733	* src/callproc.c (call_process): Supply the correct CHARPOS to
5734	signal_after_change (twice).
5735
57362020-02-13  Bastien  <bzg@gnu.org>
5737
5738	doc/misc/org.texi: Fix @dircategory
5739
5740	* doc/misc/org.texi: Fix @dircategory.
5741
57422020-02-12  Eli Zaretskii  <eliz@gnu.org>
5743
5744	Fix display of minibuffer prompt in ido.el
5745
5746	* lisp/minibuffer.el (minibuffer--message-overlay-pos): New
5747	function.
5748	(set-minibuffer-message): Use it to determine where to show the
5749	overlay with the temporary message.
5750	* lisp/ido.el (ido-exhibit): Revert "Render Ido suggestions using
5751	an overlay"; this restores the original code which inserted the
5752	match-status information into the minibuffer, instead of
5753	displaying it in an overlay with an after-string.  Put the special
5754	'minibuffer-message' text property at the beginning of the
5755	inserted text.  (Bug#39379)
5756
5757	* etc/NEWS:
5758	* doc/lispref/display.texi (Displaying Messages):
5759	* doc/lispref/text.texi (Special Properties): Document the
5760	'minibuffer-message' text property and its effect.
5761
57622020-02-12  Mattias Engdegård  <mattiase@acm.org>
5763
5764	rx: Use longest match for all-string 'or' forms (bug#37659)
5765
5766	Revert to the Emacs 26 semantics that always gave the longest match
5767	for rx 'or' forms with only string arguments.  This guarantee was
5768	never well documented, but it is useful and people likely have come to
5769	rely on it.  For example, prior to this change,
5770
5771	 (rx (or ">" ">="))
5772
5773	matched ">" even if the text contained ">=".
5774
5775	* lisp/emacs-lisp/rx.el (rx--translate-or): Don't tell regexp-opt to
5776	preserve the matching order.
5777	* doc/lispref/searching.texi (Rx Constructs): Document the
5778	longest-match guarantee for all-string 'or' forms.
5779	* test/lisp/emacs-lisp/rx-tests.el (rx-or): Update test.
5780
57812020-02-11  Wolfgang Scherer  <Wolfgang.Scherer@gmx.de>
5782
5783	Make sure not to mark directories
5784
5785	* lisp/vc/vc-dir.el (vc-dir-mark-all-files):
5786	Make sure not to mark directories (bug#37182).
5787
57882020-02-11  Dmitry Gutov  <dgutov@yandex.ru>
5789
5790	vc-hg-dir-status-files: Fix when DIR is not repository root
5791
5792	* lisp/vc/vc-hg.el (vc-hg-dir-status-files):
5793	Make sure it works correctly in a subdirectory of the repo root.
5794	Bind default-directory to DIR and add 're: -I .' to the arguments
5795	(bug#39380).
5796
57972020-02-11  Alan Third  <alan@idiocy.org>
5798
5799	Revert "Fix display of working text on NS (Bug#23412, Bug#1453)"
5800
5801	This reverts commit ba042176d8931cdf9441b3b4919ec74b75019494.
5802
5803	Do not merge to master (bug#38851)
5804
58052020-02-10  Alan Mackenzie  <acm@muc.de>
5806
5807	c-end-of-macro: Handle block coment lines with unescaped NLs correctly
5808
5809	* lisp/progmodes/cc-langs.el (c-last-open-c-comment-start-on-line-re): Make
5810	obsolete, and supersede by ...
5811	(c-open-c-comment-on-logical-line-re): New language variable.
5812
5813	* lisp/progmodes/cc-engine.el (c-end-of-macro): Inside macros, handle
5814	multiline block comments whose line ends are not escaped correctly.
5815
58162020-02-09  Eli Zaretskii  <eliz@gnu.org>
5817
5818	Fix set-fontset-font with ADD arg non-nil
5819
5820	* src/fontset.c (fontset_add): Fix off-by-one error at TO.
5821	(Bug#39482)
5822
58232020-02-09  Alan Mackenzie  <acm@muc.de>
5824
5825	Correct "different than" to "different from" where appropriate
5826
5827	(doc/emacs/screen.texi)
5828	(doc/lispintro/emacs-lisp-intro.texi)
5829	(doc/misc/calc.texi)
5830	(doc/misc/gnus.texi)
5831	(doc/misc/sc.texi)
5832	(lisp/align.el)
5833	(lisp/allout-widgets.el)
5834	(lisp/allout.el)
5835	(lisp/emacs-lisp/gv.el)
5836	(lisp/font-lock.el)
5837	(lisp/gnus/mm-util.el)
5838	(lisp/mail/feedmail.el)
5839	(lisp/mail/sendmail.el)
5840	(lisp/mail/supercite.el)
5841	(lisp/org/org-attach.el)
5842	(lisp/progmodes/cc-langs.el)
5843	(lisp/progmodes/idlw-shell.el)
5844	(lisp/ps-print.el)
5845	(lisp/simple.el)
5846	(src/cmds.c)
5847	(src/editfns.c)
5848	(src/frame.h)
5849	(src/regex-emacs.c)
5850	(src/xfaces.c): Replace "different than" by "different from".
5851
58522020-02-08  Eli Zaretskii  <eliz@gnu.org>
5853
5854	More accurate documentation of 'package-menu-hide-package'
5855
5856	* doc/emacs/package.texi (Package Menu): Improve the description
5857	of the 'H' command.
5858
5859	* lisp/emacs-lisp/package.el (package-menu-mode-menu): More
5860	accurate wording of the help-echo string.
5861	(package-menu-hide-package): Make the doc string more accurate.
5862	(Bug#39436)
5863
58642020-02-06  Stefan Kangas  <stefankangas@gmail.com>
5865
5866	Revert "Signal user-error on duplicate package refresh"
5867
5868	That commit caused errors when the connection was dropped in the
5869	middle of a package refresh.  To avoid any further issues this close
5870	to the pretest, we simply remove this feature.  (Bug#39187)
5871
5872	Don't merge to master, where we will instead try to fix the bug.
5873
58742020-02-05  Juri Linkov  <juri@linkov.net>
5875
5876	Wrap some set-auto-mode calls with delay-mode-hooks (bug#39190)
5877
5878	* lisp/gnus/mm-view.el (mm-display-inline-fontify):
5879	* lisp/vc/diff-mode.el (diff-syntax-fontify-props):
5880	* lisp/vc/vc.el (vc-find-revision-no-save):
5881	Add delay-mode-hooks around set-auto-mode calls
5882	to not run hooks that might assume buffer-file-name
5883	really associates buffer with a file.
5884
58852020-02-04  Dmitry Gutov  <dgutov@yandex.ru>
5886
5887	Support ido-vertical-mode better
5888
5889	* lisp/ido.el (ido-exhibit):
5890	Prepend a space to INF if it starts with a newline (bug#39379).
5891
58922020-02-04  Juri Linkov  <juri@linkov.net>
5893
5894	Fix faces tab-bar and tab-line.
5895
5896	* lisp/tab-bar.el (tab-bar) <defface>:
5897	* lisp/tab-line.el (tab-line) <defface>:
5898	Check for min-colors 88 instead of type x.
5899
59002020-02-03  Robert Pluim  <rpluim@gmail.com>
5901
5902	Cater for 3-argument version of pthread_setname_np
5903
5904	Fixes Bug#39363.
5905
5906	* configure.ac: Add check for 3-argument version of
5907	pthread_setname_np.
5908	* src/systhread.c (sys_thread_set_name)
5909	[HAVE_PTHREAD_SETNAME_NP_3ARG]: Call pthread_setname_np with
5910	3 arguments.
5911
59122020-02-02  Mattias Engdegård  <mattiase@acm.org>
5913
5914	Clarify lexvar restrictions for add-to-ordered-list, add-to-history
5915
5916	* lisp/subr.el (add-to-ordered-list, add-to-history):
5917	* doc/lispref/lists.texi (List Variables):
5918	* doc/lispref/minibuf.texi (Minibuffer History):
5919	Note in the doc string and manual that the variable arguments to
5920	add-to-ordered-list and add-to-history cannot refer to a lexical
5921	variable (bug#39373).
5922
59232020-02-01  Mattias Engdegård  <mattiase@acm.org>
5924
5925	Replace add-to-list to lexical variable with push (bug#39373)
5926
5927	Since 'add-to-list', being a plain function, cannot access lexical
5928	variables, such use must be rewritten for correctness.
5929	(Some instances actually do work thanks to a compiler macro,
5930	but it's not something code should rely on.)
5931
5932	* lisp/autoinsert.el (auto-insert-alist):
5933	* lisp/cedet/mode-local.el (mode-local-print-bindings):
5934	* lisp/net/tramp-cache.el (tramp-flush-connection-properties)
5935	(tramp-list-connections):
5936	* lisp/net/zeroconf.el (zeroconf-list-service-names)
5937	(zeroconf-list-service-types, zeroconf-list-services):
5938	* lisp/org/org.el (org-reload):
5939	* lisp/whitespace.el (whitespace-report-region):
5940	* test/lisp/emacs-lisp/map-tests.el (test-map-do):
5941	Replace add-to-list with push.
5942
59432020-02-01  Mattias Engdegård  <mattiase@acm.org>
5944
5945	Clarify add-to-list documentation (bug#39373)
5946
5947	While add-to-list often works with lexical variables, this is a hack
5948	that isn't always effective; better tell the user not to try.
5949
5950	* doc/lispref/lists.texi (List Variables): Add a note about lexical
5951	variables to the add-to-list description.  Fix the equivalent code.
5952	* lisp/subr.el (add-to-list): Amend doc string.
5953
59542020-02-01  Stephen Gildea  <stepheng+emacs@gildea.com>
5955
5956	MH-E: alter content in mh-display-msg, not mh-show-mode
5957
5958	* lisp/mh-e/mh-show.el (mh-display-msg, mh-show-mode):  buffer-altering
5959	code formerly in mh-show-mode is moved to the location in mh-display-msg
5960	where mh-show-mode used to be called before the fix to MH-E bug #470
5961	moved the call earlier.
5962
59632020-02-01  Stephen Gildea  <stepheng+emacs@gildea.com>
5964
5965	Update documentation for mh-show-mode-hook
5966
5967	* lisp/mh-e/mh-e.el, doc/misc/mh-e.texi (mh-show-mode-hook): Now that
5968	the fix for MH-E bug #470 calls mh-show-mode-hook earlier, update the
5969	documentation to no longer say that the message contents are available.
5970
59712020-02-01  Stephen Gildea  <stepheng+emacs@gildea.com>
5972
5973	Example goto-addr hook: MH-E already uses goto-address
5974
5975	* lisp/net/goto-addr.el, doc/emacs/misc.texi: Do not use MH-E as the
5976	example of how to add a hook to goto-address, because MH-E calls
5977	goto-address internally.
5978
59792020-01-31  Ken Brown  <kbrown@cornell.edu>
5980
5981	Extend workaround for Cygwin O_PATH bug
5982
5983	* configure.ac (HAVE_CYGWIN_O_PATH_BUG): Extend to Cygwin versions
5984	3.1.0 through 3.1.2.  (Bug#39371)
5985
59862020-01-31  Paul Pogonyshev  <pogonyshev@gmail.com>
5987
5988	* lisp/emacs-lisp/debug.el (debug): Merge the non-interactive cases
5989
5990	bug#38927
5991
5992	(cherry picked from commit 502059433ce0e9699eb73d21656ce6e9e127d63b)
5993
59942020-01-31  Ansgar Burchardt  <ansgar@43-1.org>
5995
5996	Add more blackboard bold characters to TeX input method
5997
5998	This patch adds all capital blackboard bold letters and those for "1"
5999	and "2". Most characters are in common use in mathematics, but it does
6000	not seem useful to exclude the few not widely used.
6001
6002	Reference: https://en.wikipedia.org/wiki/Blackboard_bold
6003
6004	* lisp/leim/quail/latin-ltx.el (latin-ltx--define-rules): Add all
6005	the blackboard bold commands from AMSTeX.  (Bug#21103)
6006
60072020-01-31  Yuan Fu  <casouri@gmail.com>
6008
6009	Protect against errors in gdb-mi.el handlers
6010
6011	* lisp/progmodes/gdb-mi.el (gdb-handle-reply): Handle errors
6012	in 'handler-function' so the cleanup code after it runs
6013	safely.  (Bug#39178)
6014
60152020-01-31  Eli Zaretskii  <eliz@gnu.org>
6016
6017	Allow exiting the Python interpreter of a GDB session
6018
6019	* lisp/progmodes/gdb-mi.el (gdb-delchar-or-quit): Send EOF to GDB
6020	if we are in an embedded interpreter.  This allows to exit from
6021	"pi" cleanly.  (Bug#39140)
6022
60232020-01-31  Federico Tedin  <federicotedin@gmail.com>
6024
6025	Ensure minibuffer input is added to history in read_minibuf
6026
6027	* src/minibuf.c (read_minibuf): Parse input string after saving
6028	the string to the history list instead of before, in case parsing
6029	signals an error or is interrupted by C-g.  (Bug#39291)
6030
60312020-01-29  Juri Linkov  <juri@linkov.net>
6032
6033	Tab-bar related fixes.
6034
6035	* lisp/cus-start.el (tab-bar-mode): Use dedicated group 'tab-bar'.
6036
6037	* lisp/tab-bar.el (tab-bar-history-mode): Add :group 'tab-bar'.
6038	(tab-bar-get-buffer-tab): Add optional arg 'ignore-current-tab'.
6039
6040	* lisp/desktop.el (desktop-buffers-not-to-save-function): Add docstring.
6041
60422020-01-29  Nicolas Petton  <nicolas@petton.fr>
6043
6044	* admin/authors.el: Add missing entries.
6045
60462020-01-27  Stephen Gildea  <stepheng+emacs@gildea.com>
6047
6048	dns-mode-soa-auto-increment-serial: safe if symbolp
6049
6050	* lisp/textmodes/dns-mode.el (dns-mode-soa-auto-increment-serial):
6051	Mark variable as safe as a file local variable when symbolp.
6052
60532020-01-27  Juri Linkov  <juri@linkov.net>
6054
6055	* lisp/wdired.el: Clean out isearch-filter-predicate (bug#37496)
6056
6057	* lisp/wdired.el (wdired-change-to-dired-mode): Use remove-function to
6058	remove wdired-isearch-filter-read-only (whose value was added in
6059	wdired-change-to-wdired-mode) from local value of isearch-filter-predicate.
6060
60612020-01-27  Alan Mackenzie  <acm@muc.de>
6062
6063	Finish the documentation for c-noise-macro-{,with-parens-}names.
6064
6065	The doc strings and pertinent CC Mode manual page failed to mention that these
6066	variables could also be regular expressions.  Amend them.
6067
6068	* lisp/progmodes/cc-vars.el (c-noise-macro-names)
6069	(c-noise-macro-with-parens-names): Amend the doc strings.
6070
6071	* doc/misc/cc-mode.texi (Noise Macros): Amend the descriptions of the two
6072	variables.
6073
60742020-01-26  Mattias Engdegård  <mattiase@acm.org>
6075
6076	Correct regexp for flags in `format' doc string
6077
6078	* src/editfns.c (Fformat): Use the correct regexp for describing the
6079	flags in a %-sequence (place the hyphen last).
6080
60812020-01-26  Mattias Engdegård  <mattiase@acm.org>
6082
6083	Moderate recommendation to escape '(' in doc strings
6084
6085	Thanks to 57e2ca5c50 and related changes, opening brackets at the
6086	leftmost column inside doc strings are no longer mistaken for the
6087	start of a defun.
6088
6089	* doc/lispref/tips.texi (Documentation Tips): Clarify recommendation
6090	and move it down the list.
6091	* etc/NEWS: Announce.
6092
60932020-01-26  Alan Mackenzie  <acm@muc.de>
6094
6095	Objective C Mode: Make c-forward-type work with "unsigned long", etc.
6096
6097	This allows the correct fontification of and correct functioning of C-c C-z
6098	(c-display-defun-name) in ns_get_pixel in Emacs's src/nsimage.m.
6099
6100	* lisp/progmodes/cc-langs.el (c-primitive-type-prefix-kwds): For objc, use the
6101	same value as for c and c++ rather than the default nil.
6102
61032020-01-26  Marco Wahl  <marcowahlsoft@gmail.com>
6104
6105	Fix help text about configure module support
6106
61072020-01-25  Stefan Kangas  <stefankangas@gmail.com>
6108
6109	* doc/lispref/streams.texi (Output Functions): Improve indexing.
6110
61112020-01-25  Stefan Kangas  <stefankangas@gmail.com>
6112
6113	Improve doc string of 'newline'
6114
6115	* lisp/simple.el (newline): Doc fix.  Move 'use-hard-newlines' down,
6116	since it's less important than the meaning of the prefix argument, and
6117	is less frequently used than 'electric-indent-mode' and
6118	'auto-fill-mode'.  Change the wording to no longer call it an
6119	option.
6120
61212020-01-24  Paul Eggert  <eggert@cs.ucla.edu>
6122
6123	Improve doc of eq on bignums etc.
6124
6125	* doc/lispref/numbers.texi (Integer Basics):
6126	* doc/lispref/objects.texi (Integer Type, Equality Predicates):
6127	Be clearer about eq vs eql vs = on bignums, floats, and strings.
6128
61292020-01-24  Mario Lang  <mlang@blind.guru>
6130
6131	Do not refer to obsolete alias
6132
61332020-01-24  Alan Third  <alan@idiocy.org>
6134
6135	Remove EmacsOpenPanel and EmacsSavePanel (bug#38031)
6136
61372020-01-24  Eli Zaretskii  <eliz@gnu.org>
6138
6139	* doc/emacs/files.texi (Auto Save Files): Improve indexing (bug#39259).
6140
61412020-01-24  Eli Zaretskii  <eliz@gnu.org>
6142
6143	Fix inaccurate wording in the Emacs manual
6144
6145	* doc/emacs/custom.texi (Modifier Keys):
6146	* doc/emacs/basic.texi (Inserting Text): Fix minor inaccuracies in
6147	describing the 'Alt' modifier.  (Bug#39254)
6148
61492020-01-23  Amin Bandali  <mab@gnu.org>
6150
6151	Update ERC module URLs
6152
6153	* lisp/erc/erc-autoaway.el, lisp/erc/erc-button.el,
6154	lisp/erc/erc-compat.el, lisp/erc/erc-fill.el, lisp/erc/erc-imenu.el,
6155	lisp/erc/erc-join.el, lisp/erc/erc-lang.el, lisp/erc/erc-match.el,
6156	lisp/erc/erc-pcomplete.el, lisp/erc/erc-ring.el,
6157	lisp/erc/erc-spelling.el, lisp/erc/erc-stamp.el,
6158	lisp/erc/erc-track.el: Update URL to friendlier form, over https.
6159	* lisp/erc/erc-ibuffer.el: Remove URL to nonexistent page.
6160	* lisp/erc/erc-list.el, lisp/erc/erc-log.el, lisp/erc/erc-notify.el,
6161	lisp/erc/erc-replace.el, lisp/erc/erc-services.el,
6162	lisp/erc/erc-sound.el, lisp/erc/erc-speedbar.el,
6163	lisp/erc/erc-truncate.el: Add URL to corresponding EmacsWiki page.
6164
61652020-01-23  Lars Ingebrigtsen  <larsi@gnus.org>
6166
6167	Minor doc string clarification in use-hard-newlines
6168
6169	* lisp/textmodes/paragraphs.el (use-hard-newlines): Clarify that
6170	this minor mode isn't global (bug#20461).
6171
61722020-01-23  Tino Calancha  <tino.calancha@gmail.com>
6173
6174	Backport: Fix bug 39218
6175
6176	* lisp/simple.el (shell-command):
6177	Ensure a shell command ending with `&' is run asynchronously.
6178
61792020-01-22  Stefan Kangas  <stefankangas@gmail.com>
6180
6181	Prefer saying "Info manual" to "info page" in docs
6182
6183	Pointed out by Eli Zaretskii in:
6184	https://debbugs.gnu.org/cgi/bugreport.cgi?bug=39215#14
6185	* doc/emacs/Makefile.in:
6186	* doc/lispintro/Makefile.in:
6187	* doc/lispref/Makefile.in:
6188	* doc/misc/Makefile.in:
6189	* lisp/dired-x.el (top-level):
6190	* lisp/gnus/gnus-sum.el (gnus-summary-mode):
6191	* lisp/progmodes/cperl-mode.el (cperl-info-page): Doc fix; prefer
6192	saying "Info manual" over "info page".
6193
61942020-01-22  Juri Linkov  <juri@linkov.net>
6195
6196	Tab-bar related finishing touches.
6197
6198	* lisp/tab-bar.el (tab-bar-tab-name-ellipsis): Use shorter name
6199	instead of tab-bar-tab-name-truncated-ellipsis.
6200	(tab-bar-new-tab-to) <defcustom>: Add 'function' option.
6201	(tab-bar-new-tab-to) <function>: Use it.
6202
6203	* lisp/tab-line.el (tab-line-close-tab): Add missing arg 'tab' to
6204	tab-line-close-tab-function funcall.
6205
62062020-01-22  Alan Mackenzie  <acm@muc.de>
6207
6208	Make call_process call signal_after_change.  This fixes bug #38691.
6209
6210	Now, functions such as call-proess-region invoke after-change-functions
6211	correctly.
6212
6213	* src/callproc.c (call_process): Call prepare_to_modify_buffer in a single
6214	place, no longer delegating the task to insert_1_both, etc.  Call
6215	signal_after_change in each of two code branches, such that
6216	before-change-functions and after-change-functions are always called in
6217	balanced pairs.
6218
62192020-01-22  Paul Eggert  <eggert@cs.ucla.edu>
6220
6221	* lisp/simple.el: Minor fixes to commentary.
6222
62232020-01-22  Eli Zaretskii  <eliz@gnu.org>
6224
6225	Fix a few typos
6226
6227	* etc/NEWS: Fix a typo.
6228
6229	* src/xdisp.c (try_window_reusing_current_matrix, try_window_id):
6230	* src/dispnew.c (scrolling_window): Fix typos in comments.
6231
62322020-01-22  Christophe Deleuze  <christophe.deleuze@free.fr>
6233
6234	Fix doc strings for image-dired rotation commands
6235
6236	* lisp/image-dired.el (image-dired-rotate-thumbnail-left)
6237	(image-dired-rotate-thumbnail-right)
6238	(image-dired-rotate-original-left)
6239	(image-dired-rotate-original-right): Move the text in the doc
6240	strings about rotating the originals to the correct commands
6241	(bug#38928).
6242
62432020-01-22  Dmitry Gutov  <dgutov@yandex.ru>
6244
6245	Render Ido suggestions using an overlay
6246
6247	* lisp/ido.el (ido--overlay): New variable.
6248	(ido-exhibit): Render with 'after-string' on an overlay
6249	(bug#38457).
6250
62512020-01-22  Michael Albinus  <michael.albinus@gmx.de>
6252
6253	* doc/misc/tramp.texi (Bug Reports): Encourage use of "emacs -Q".
6254
62552020-01-21  Stefan Monnier  <monnier@iro.umontreal.ca>
6256
6257	* lisp/vc/smerge-mode.el (smerge-match-conflict): Fix bug#38456
6258
6259	This situation is not an internal error, but a perfectly normal occurrence,
6260	so a `cl-assert` is not right
6261
62622020-01-21  Robert Pluim  <rpluim@gmail.com>
6263
6264	Correct statement about ftcr and recommend HarfBuzz
6265
6266	* doc/lispref/frames.texi (Font and Color Parameters): Correct
6267	statement about availability of ftcr in the presence of HarfBuzz.
6268	Recommend HarfBuzz.
6269
62702020-01-21  Eli Zaretskii  <eliz@gnu.org>
6271
6272	Avoid leaving artifacts when the system caret is used on w32
6273
6274	* src/xdisp.c (try_window_reusing_current_matrix, try_window_id):
6275	* src/dispnew.c (scrolling_window) [HAVE_NTGUI]: If
6276	w32-use-visible-system-caret is non-nil, disallow scrolling the
6277	display are in scroll_run_hook.  This avoids copying traces of the
6278	caret, about which Emacs knows nothing, and thus considers those
6279	pixels show the default background.  (Bug#39188)
6280	(gui_update_window_end): Block input only around part of the code,
6281	as we did before this code was extracted from backend-specific
6282	implementations.
6283
6284	* src/w32term.c (w32_update_window_begin, w32_update_window_end):
6285	Only hide/show the caret when redisplaying the window where the
6286	caret is shown.
6287
62882020-01-21  Eli Zaretskii  <eliz@gnu.org>
6289
6290	Improve display of temporary echo messages
6291
6292	* lisp/minibuffer.el (set-minibuffer-message): Fix cursor position
6293	for the temporary display of an echo-area message when minibuffer
6294	is active.  Ensure the message is visible even if the end of the
6295	completion candidates presented by the likes of Icomplete mode is
6296	not visible due to its length, under resize-mini-windows = nil.
6297	(Bug#38457)
6298
62992020-01-20  Juri Linkov  <juri@linkov.net>
6300
6301	* lisp/menu-bar.el: Remove desktop-save-mode from release branch (bug#37594)
6302
63032020-01-20  Juri Linkov  <juri@linkov.net>
6304
6305	Allow optional truncation of tab names in tab-bar and tab-line (bug#38693)
6306
6307	* lisp/tab-line.el (tab-line-tab-name-truncated-max): New defcustom.
6308	(tab-line-tab-name-truncated-buffer): Use tab-line-tab-name-truncated-max
6309	consistently with similar options in tab-bar.el.
6310	(tab-line-tabs-limit): Remove variable.
6311	(tab-line-tabs-window-buffers): Remove use of tab-line-tabs-limit
6312	that was an experimental feature before horizontal scrolling was implemented.
6313	(tab-line-close-tab-function): Rename from tab-line-close-tab-action
6314	and allow a customizaed function as option.
6315	(tab-line-close-tab): Call function if tab-line-close-tab-function
6316	is customized to a function.
6317
6318	* lisp/tab-bar.el (tab-bar-tab-name-function): Add option
6319	tab-bar-tab-name-truncated.
6320	(tab-bar-tab-name-truncated-max): New defcustom.
6321	(tab-bar-tab-name-truncated-ellipsis): New variable.
6322	(tab-bar-tab-name-truncated): New function.
6323
63242020-01-20  Juri Linkov  <juri@linkov.net>
6325
6326	Small fixes in documentation.
6327
6328	* doc/emacs/dired.texi (Operating on Files): Fix name of dired-vc-rename-file.
6329
6330	* doc/emacs/fixit.texi (Undo): Update new values of undo limits
6331	doubled in bug#31104.
6332
63332020-01-20  Robert Pluim  <rpluim@gmail.com>
6334
6335	Improve explanation of available font backends under X
6336
6337	* doc/emacs/frames.texi (Font and Color Parameters): Clarify that you can't
6338	have HarfBuzz and non-HarfBuzz at the same time for xft and cairo
6339	font backends.
6340
63412020-01-20  Pip Cet  <pipcet@gmail.com>
6342
6343	Clear output data pointer on NS
6344
6345	* src/nsterm.m (ns_free_frame_resources): Clear the output data
6346	pointer to prevent attempting to reuse freed resources (Bug#38748).
6347
63482020-01-20  Michael Albinus  <michael.albinus@gmx.de>
6349
6350	* admin/release-process: Adapt bug numbers for release critical bugs.
6351
6352	Mention debbugs-gnu-emacs-release-blocking-reports.
6353
63542020-01-20  Mattias Engdegård  <mattiase@acm.org>
6355
6356	Fix shell-tests failures
6357
6358	* test/lisp/shell-tests.el (shell-tests-completion-before-semi):
6359	Go back to actually testing completion before semicolon.
6360	(shell-tests-completion-after-semi): Test completion after semicolon,
6361	correctly (bug#39075).
6362
63632020-01-20  Mattias Engdegård  <mattiase@acm.org>
6364
6365	* test/lisp/simple-tests.el: Full path to Emacs binary (bug#39067).
6366
63672020-01-19  Juri Linkov  <juri@linkov.net>
6368
6369	* lisp/tab-line.el (tab-line-auto-hscroll): Fix for long tab names.
6370
6371	Check for nil value returned by previous-single-property-change that
6372	happens when tab name is longer than window width.
6373
63742020-01-19  Juri Linkov  <juri@linkov.net>
6375
6376	* lisp/menu-bar.el (menu-bar-options-menu): Add desktop-save-mode (bug#37594)
6377
63782020-01-19  Tino Calancha  <tino.calancha@gmail.com>
6379
6380	Fix shell-command-dont-erase-buffer feature
6381
6382	* lisp/simple.el (shell-command-dont-erase-buffer):
6383	The default, nil, is backward compatible, i.e. it erases the buffer
6384	only if the output buffer is not the current one; the new value 'erase
6385	always erases the output buffer.
6386	Update docstring.
6387
6388	(shell-command-save-pos-or-erase):
6389	Add optional arg output-to-current-buffer.
6390	Rename it so that it's not internal.  All callers updated.
6391
6392	(shell-command-set-point-after-cmd): Rename it so that it's not internal.
6393	All callers updated.
6394	Adjust it to cover a side case.
6395
6396	(shell-command): Adjust logic to match the specification (Bug#39067).
6397	Enable the feature when the output buffer is the current one.
6398
6399	(shell-command-on-region): Little tweak to follow
6400	`shell-command-dont-erase-buffer' specification.
6401
6402	* test/lisp/simple-tests.el (with-shell-command-dont-erase-buffer):
6403	Add helper macro.
6404	(simple-tests-shell-command-39067)
6405	(simple-tests-shell-command-dont-erase-buffer): Add tests.
6406
6407	* doc/emacs/misc.texi (Single Shell): Update manual.
6408
6409	* etc/NEWS (Single shell commands): Announce the change.
6410
64112020-01-18  Stefan Kangas  <stefankangas@gmail.com>
6412
6413	Remove reference to Emacs 19 from FAQ
6414
6415	* doc/misc/efaq.texi (Emacs ignores X resources): Remove reference to
6416	Emacs 19.
6417
64182020-01-18  Stefan Kangas  <stefankangas@gmail.com>
6419
6420	Doc fixes in package.el
6421
6422	* lisp/emacs-lisp/package.el (package-process-define-package)
6423	(package-generate-description-file): Doc fixes.
6424	(package-generate-autoloads, package--write-file-no-coding)
6425	(package--archive-file-exists-p, package-desc-status): Add doc
6426	strings.
6427
64282020-01-18  Eric Abrahamsen  <eric@ericabrahamsen.net>
6429
6430	Ensure that gnus-summary-attach-article finds the right articles
6431
6432	* lisp/gnus/gnus-msg.el (gnus-summary-attach-article): Before
6433	iterating over the articles to attach, first close any open
6434	article. Using `set-buffer' required `gnus-summary-select-article' to
6435	re-set the buffer every time, meaning we never got off the original
6436	article.
6437
6438	(cherry picked from commit 447bb1313a6abc07776d93ee78cd976ab43856e5)
6439
64402020-01-18  Stefan Kangas  <stefankangas@gmail.com>
6441
6442	Remove some doc references to old Emacs versions
6443
6444	* doc/misc/efaq.texi (Horizontal scrolling): Remove section
6445	only relevant to Emacs 21 or older.
6446	(Repeating commands, Editing MS-DOS files):
6447	* lisp/progmodes/gdb-mi.el:
6448	* lisp/woman.el: Doc fix - remove some references to Emacs 20 and older.
6449
64502020-01-18  Pieter van Oostrum  <pieter-l@vanoostrum.org>  (tiny change)
6451
6452	Fix infloop in shell.el
6453
6454	* test/lisp/shell-tests.el (shell-tests-completion-before-semi):
6455	Amend the shell.el tests to catch errors such as bug#39057.
6456
6457	* lisp/shell.el (shell--parse-pcomplete-arguments): Skip the
6458	semi-colon as well.  This avoids inflooping when a semi-colon is
6459	typed by the user.  (Bug#39057)
6460
64612020-01-17  Amin Bandali  <mab@gnu.org>
6462
6463	Fix erc-notifications-notify for non-PRIVMSGs, broken in last commit
6464
6465	* lisp/erc/erc-desktop-notifications.el (erc-notifications-notify):
6466	Take optional argument `privp', to be non-nil when notifying for a
6467	PRIVMSG.  This is to work around bug introduced in last commit, as
6468	`erc-get-buffer' may return nil for non-PRIVMSG cases.
6469	(erc-notifications-PRIVMSG): Call erc-notifications-notify with
6470	non-nil `privp', as described above.
6471
64722020-01-17  Amin Bandali  <mab@gnu.org>
6473
6474	Fix the notification action for PRIVMSG in erc-notifications-notify
6475
6476	* lisp/erc/erc-desktop-notifications.el (erc-notifications-notify):
6477	explicitly request the buffer for `nick', rather than relying on
6478	(current-buffer) returning it.  That works fine for the very first
6479	PRIVMSG sent by `nick', but ERC seems to handle subsequent PRIVMSGs
6480	differently, where (current-buffer) would return the server buffer
6481	rather than the existing buffer for PRIVMSGs from `nick'.
6482
64832020-01-17  Amin Bandali  <mab@gnu.org>
6484
6485	ERC: New maintainer.
6486
6487	* admin/MAINTAINERS: Add entries for Amin Bandali, new maintainer for
6488	ERC, and interested in maintaining Eshell.
6489	* lisp/erc/*: New maintainer.
6490
64912020-01-17  Dmitry Gutov  <dgutov@yandex.ru>
6492
6493	Honor tags-case-fold-search during xref identifer completion
6494
6495	* etc/NEWS: New entry.
6496
6497	* lisp/progmodes/etags.el (tags-case-fold-search):
6498	Mark as safe-local.
6499	(find-tag--completion-ignore-case):
6500	Extract from tags-completion-at-point-function, find-tag-tag and
6501	etags--xref-find-definitions.
6502	(xref-backend-identifier-completion-ignore-case):
6503	New method. Use it here as well.
6504
6505	* lisp/progmodes/xref.el
6506	(xref-backend-identifier-completion-ignore-case): New generic.
6507	(xref--read-identifier): Use it here.
6508
65092020-01-17  Eli Zaretskii  <eliz@gnu.org>
6510
6511	Fix wording and punctuation of a recent commit
6512
6513	* lisp/textmodes/ispell.el (ispell-correct-p): Doc fix.
6514	* lisp/emacs-lisp/checkdoc.el (checkdoc-ispell-init): Fix
6515	capitalization and punctuation of comments.
6516
65172020-01-17  Damien Cassou  <damien@cassou.me>
6518
6519	Add unattended spell-checking to checkdoc
6520
6521	This commit makes checkdoc capable of spell-checking even when the
6522	user isn't using it interactively.  When TAKE-NOTES is non-nil,
6523	checkdoc will run spell-checking (with ispell) and report spelling
6524	mistakes.
6525
6526	Fixes: (bug#38583).
6527
6528	* lisp/textmodes/ispell.el (ispell-word): Extract part of it to
6529	`ispell--run-on-word`.
6530	(ispell--run-on-word): New function, extracted from `ispell-word`.
6531	(ispell-error-checking-word): New function.
6532	(ispell-correct-p): New function.  Use `ispell--run-on-word` and
6533	`ispell-error-checking-word`.
6534	* lisp/emacs-lisp/checkdoc.el (checkdoc-current-buffer): Pass
6535	TAKE-NOTES to `checkdoc-start`.
6536	(checkdoc-continue): Pass TAKE-NOTES to `checkdoc-this-string-valid`.
6537	(checkdoc-this-string-valid): Add optional argument TAKE-NOTES and
6538	pass it to `checkdoc-this-string-valid-engine`.
6539	(checkdoc-this-string-valid-engine): Add optional argument TAKE-NOTES
6540	and pass it to `checkdoc-ispell-docstring-engine`.
6541	(checkdoc-ispell-init): Call `ispell-set-spellchecker-params` and
6542	`ispell-accept-buffer-local-defs`.  These calls are required to
6543	properly use ispell.  The problem went unnoticed until now because
6544	checkdoc was only using ispell through the high-level command
6545	`ispell-word` which takes care of all the initialization for the user.
6546	(checkdoc-ispell-docstring-engine): Add optional argument TAKE-NOTES
6547	to force reporting of spell-checking errors.  Throw error
6548	when (checkdoc-ispell-init) fails configuring ispell.  Replace a
6549	few (if cond nil body) with (unless cond body). Replace (let ((var
6550	nil))) with (let (var)).  Replace (if (not (eq checkdoc-autofix-flag
6551	'never)) body) with just body because `checkdoc-autofix-flag` is
6552	checked at the beginning of the function.
6553
6554	(cherry picked from commit 25adbc4a5ecc3e16625c0171607e3153bbdf7ab1)
6555
65562020-01-17  Lin Sun  <lin.sun@zoom.us>
6557
6558	Fix the error message from makefile-move-to-macro
6559
6560	* lisp/cedet/ede/makefile-edit.el (makefile-macro-file-list):
6561	regexp-quote the param in makefile-move-to-macro (Bug#39094).
6562
6563	(cherry picked from commit a36495da1ec1419998c17fd64fb7439eaf940f36)
6564
65652020-01-16  Stefan Kangas  <stefankangas@gmail.com>
6566
6567	Document feature requests in the Emacs manual
6568
6569	* doc/emacs/trouble.texi (Contributing): Document how to send feature
6570	requests.  (Bug20697)
6571
65722020-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
6573
6574	* lisp/minibuffer.el (read-file-name-default): Fix bug#39057
6575
65762020-01-16  Robert Pluim  <rpluim@gmail.com>
6577
6578	Make emacs prefer an existing ~/.emacs.d to an existing XDG location
6579
6580	* doc/emacs/custom.texi (Find Init): Update description of how Emacs
6581	finds its init file directory and the interaction with
6582	$XDG_CONFIG_HOME
6583	(Early Init File): Correct XDG location of early-init.el
6584
6585	* etc/NEWS: Update description to make it clear the ~/.emacs.d is
6586	preferred, even if the XDG location exists.
6587
6588	* lisp/startup.el: Prefer ~/.emacs.d even if the XDG location exists.
6589
6590	* lib-src/emacsclient.c (open_config): Prefer home directory the XDG
6591	location.
6592
65932020-01-16  Robert Pluim  <rpluim@gmail.com>
6594
6595	Describe --with-cairo non-support for bitmapped fonts.
6596
6597	* etc/NEWS: Mention Pango's removal of support for bitmapped fonts.
6598
65992020-01-16  Robert Pluim  <rpluim@gmail.com>
6600
6601	Mention GTK font chooser changes in NEWS
6602
6603	* etc/NEWS: Mention GTK font chooser changes.
6604
66052020-01-15  Glenn Morris  <rgm@gnu.org>
6606
6607	f90: handle F2008 module function
6608
6609	* lisp/progmodes/f90.el (f90-font-lock-keywords-1)
6610	(f90-looking-at-program-block-start):
6611	Handle F2008 "module function" and subroutine.  (Bug#38415)
6612	* test/lisp/progmodes/f90-tests.el (f90-test-bug38415): New test.
6613
66142020-01-15  Juri Linkov  <juri@linkov.net>
6615
6616	Move shell-related menu items to "Shell Commands" submenu (bug#37594)
6617
6618	* lisp/menu-bar.el (menu-bar-shell-commands-menu): New variable.
6619	(menu-bar-tools-menu): Move shell-related menu items to
6620	'menu-bar-shell-commands-menu' and add menu items for
6621	'async-shell-command' and 'shell'.
6622
66232020-01-15  Stefan Kangas  <stefankangas@gmail.com>
6624
6625	* admin/notes/font-backend: Remove outdated file. (Bug#34663)
6626
66272020-01-15  Stefan Kangas  <stefankangas@gmail.com>
6628
6629	Declare the ftx font backend driver obsolete
6630
6631	* etc/NEWS: Document that the ftx font driver is now
6632	obsolete and will be removed in Emacs 28.  (Bug#34663)
6633
66342020-01-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6635
6636	Fix build failure with --with-cairo --without-png
6637
6638	* src/image.c: Don't enable PNG section only by USE_CAIRO.
6639
66402020-01-14  Stefan Kangas  <stefankangas@gmail.com>
6641
6642	Add new node "Package Statuses" to manual
6643
6644	* doc/emacs/emacs.texi (Top):
6645	* doc/emacs/package.texi (Package Menu): New node "Package
6646	Statuses".  (Bug#29420)
6647
66482020-01-14  Juri Linkov  <juri@linkov.net>
6649
6650	* lisp/isearch.el: Fix corner cases of isearch-lazy-count.
6651
6652	* lisp/isearch.el (isearch-mode): Reset isearch-lazy-count-current
6653	and isearch-lazy-count-total to nil, so when isearch-mode is started,
6654	there should be no counts from previous Isearch.
6655	(isearch-lazy-highlight-new-loop): Call isearch-message after resetting
6656	lazy-count variables only when isearch-mode is started.  This avoids
6657	the problem of inappropriate calls of isearch-message-function
6658	when query-replace in the minibuffer performs lazy-highlighting that
6659	used to call minibuffer-history-isearch-message unnecessarily.
6660
66612020-01-14  Robert Pluim  <rpluim@gmail.com>
6662
6663	Document spacing issues with Xft for some fonts
6664
6665	* etc/PROBLEMS: Document issues with Xft and some recent fonts (Bug#39082).
6666
66672020-01-13  Mattias Engdegård  <mattiase@acm.org>
6668
6669	Always use lexical-binding in lisp-interaction-mode (bug#38835)
6670
6671	* lisp/progmodes/elisp-mode.el (lisp-interaction-mode):
6672	Set lexical-binding.
6673	* lisp/startup.el (command-line, startup--get-buffer-create-scratch):
6674	Don't set lexical-binding here.
6675	* doc/lispref/variables.texi:
6676	* etc/NEWS:
6677	Make it clear that lisp-interaction-mode uses lexical-binding.
6678
66792020-01-13  Robert Pluim  <rpluim@gmail.com>
6680
6681	vc-dir: ensure we don't use a pager with git
6682
6683	* lisp/vc/vc-git.el (vc-git--call): Call git with '--no-pager' to
6684	avoid hangs caused by remote pager settings (Bug#38688).
6685
66862020-01-12  Amin Bandali  <bandali@gnu.org>
6687
6688	Improve ERC's matching of nicks and URLs (bug#38257)
6689
6690	* lisp/erc/erc-{button,match}.el (erc-{button,match}-syntax-table):
6691	Omit (, ), and '; as they're not valid nick characters, per RFC 2812
6692	section 2.3.1.  This enables correct matching/highlighting of nicks
6693	when they're surrounded by parens, like (nick), and when adjacent to
6694	an apostrophe, like nick's.
6695	* lisp/erc/erc-button.el (erc-button-url-regexp): Use the regexp from
6696	browse-url-button-regexp, which among other things, seems to handle
6697	surrounding pair of parens better.
6698
66992020-01-12  Juri Linkov  <juri@linkov.net>
6700
6701	Handle tab-bar clicks on a GPM-capable console.
6702
6703	* src/term.c (handle_one_term_event): Call tty_handle_tab_bar_click.
6704
6705	* src/xdisp.c (tty_handle_tab_bar_click): Force reset of up_modifier bit
6706	from the event modifiers.
6707
6708	* lisp/tab-line.el (tab-line-tab-current): No need to use inverse-video
6709	on console/xterm because the selected tab already uses inverse-video.
6710
67112020-01-12  Alan Third  <alan@idiocy.org>
6712
6713	;* etc/TODO: Update.
6714
67152020-01-11  Eli Zaretskii  <eliz@gnu.org>
6716
6717	Update Acknowledgments sections
6718
6719	* doc/emacs/ack.texi (Acknowledgments):
6720	* doc/emacs/emacs.texi (Acknowledgments): Update for Emacs 27.
6721
67222020-01-11  Eli Zaretskii  <eliz@gnu.org>
6723
6724	Update Antinews in ELisp manual
6725
6726	* doc/lispref/anti.texi (Antinews): Rewrite for Emacs 27.
6727	* doc/lispref/elisp.texi (Top): Update the top-level menu item for
6728	Antinews.
6729
67302020-01-11  Richard Stallman  <rms@gnu.org>
6731
6732	Improve wording in the ELisp manual
6733
6734	* doc/lispref/modes.texi (Setting Hooks): Improve and clarify
6735	wording.  (Bug#38818)
6736
67372020-01-11  Mauro Aranda  <maurooaranda@gmail.com>
6738
6739	Reset to the standard value when reverting session's customizations
6740
6741	* lisp/cus-edit.el (custom-variable-reset-saved): When there is no
6742	previous saved value, reset to the standard value.  (Bug#15214)
6743
67442020-01-11  Mauro Aranda  <maurooaranda@gmail.com>
6745
6746	Fix saving multiple themes
6747
6748	* lisp/custom.el (enable-theme): Be side-effect free when modifying
6749	custom-enabled-themes.  (Bug#19999)
6750
67512020-01-10  Mattias Engdegård  <mattiase@acm.org>
6752
6753	Calc: fix interval entry (bug#39040)
6754
6755	* lisp/calc/calc.el (calcDigit-start): Initialise calc-prev-char to
6756	something more reasonable, so that non-algebraic entry of intervals
6757	whose start is a single digit, like (1..10), works properly.
6758	Reported by Michel Schinz.
6759
67602020-01-10  Eli Zaretskii  <eliz@gnu.org>
6761
6762	Fix horizontal line display in Custom buffers
6763
6764	* lisp/cus-edit.el (custom-group-value-create): Insert a newline
6765	before calling 'custom-group--draw-horizontal-line'.  (Bug#39074)
6766
67672020-01-10  Mattias Engdegård  <mattiase@acm.org>
6768
6769	flymake: fix typo in variable binding (bug#38752)
6770
6771	This mistake was found by an experimental elisp optimiser.
6772
6773	* lisp/progmodes/flymake-proc.el (flymake-proc-stop-all-syntax-checks):
6774	Add missing brackets.
6775
67762020-01-10  Eli Zaretskii  <eliz@gnu.org>
6777
6778	Update Antinews in the Emacs manual
6779
6780	* doc/emacs/anti.texi (Antinews): Rewrite for Emacs 27.
6781	* doc/emacs/emacs.texi (Top): Update the "Antiniews" item of the
6782	top-level menu.
6783
67842020-01-09  Väinö Järvelä  <vaino@jarve.la>  (tiny change)
6785
6786	Use NSNumber instead of BOOL (bug#39047)
6787
6788	* src/nsfns.m (ns_set_represented_filename): Use correct type.
6789
67902020-01-09  João Távora  <joaotavora@gmail.com>
6791
6792	Add comment on fido-mode's file-sorting semantics
6793
6794	* lisp/icomplete.el (icomplete--sorted-completions): Add comment.
6795
67962020-01-09  João Távora  <joaotavora@gmail.com>
6797
6798	Consider non-string minibuffer-default in icomplete
6799
6800	(Bug#38992)
6801
6802	* lisp/icomplete.el (icomplete--sorted-completions): Consider
6803	non-string minibuffer-default.
6804
68052020-01-08  Eli Zaretskii  <eliz@gnu.org>
6806
6807	Fix another compilation problem in a build without threads
6808
6809	* src/systhread.c (sys_thread_set_name) [!THREADS_ENABLED]: Add
6810	a trivial implementation.
6811
68122020-01-08  Eli Zaretskii  <eliz@gnu.org>
6813
6814	Fix build without threads
6815
6816	* src/systhread.c (sys_thread_create) [!THREADS_ENABLED]: Update
6817	the function's signature to match prototype.  Reported by Glenn
6818	Morris <rgm@gnu.org>.  (Bug#38632)
6819
68202020-01-08  Eli Zaretskii  <eliz@gnu.org>
6821
6822	Fix compression of directories in Dired
6823
6824	This fixes comporession and uncompression of directories on
6825	MS-Windows, but also on other systems.  The original code used
6826	":" as the REGEXP of the directory entry in
6827	dired-compress-file-suffixes, which on Windows always matched any
6828	absolute file name, and can also match unusual file names on Posix
6829	hosts.  This false match would cause dired-compress-file to act as
6830	if we are decompressing a directory, but use a command suitable
6831	for compression, which would fail in interesting ways.
6832	We now use a REGEXP that can never match any valid file name.
6833
6834	* lisp/dired-aux.el (dired-compress-file-suffixes): Make the
6835	"compress directory" entry's REGEXP really fail to match any valid
6836	file name.
6837	(dired-compress-file): Adapt to the change in
6838	dired-compress-file-suffixes.  (Bug#39024)
6839	(dired-compress): If the current file is a directory, or if the
6840	uncompressed file is a directory, don't remove the original from
6841	the listing, since it is left in the filesystem.
6842
68432020-01-08  Michael Albinus  <michael.albinus@gmx.de>
6844
6845	Further enhancement on `tramp-file-local-name'
6846
6847	* lisp/net/tramp.el (tramp-file-local-name): Call `file-local-name'
6848	if NAME is not a Tramp file name.
6849
68502020-01-07  Alan Mackenzie  <acm@muc.de>
6851
6852	Objective C Mode imenu: cease recognizing "functions" within comments, etc.
6853
6854	This fixes bug #38749.
6855
6856	* lisp/progmodes/cc-menus.el (cc-imenu-objc-function): Put a c-literal-limits
6857	test around the innards of the main re-search-backward loop.
6858
68592020-01-07  Mattias Engdegård  <mattiase@acm.org>
6860
6861	Fix BSD and macOS builds w.r.t. pthread_setname_np (bug#38632)
6862
6863	pthread_setname_np takes only a single argument on BSD and macOS,
6864	and affects the current thread only.
6865
6866	* configure.ac: Add check for single-argument pthread_setname_np
6867	* src/systhread.c (sys_thread_set_name): New (w32 and pthread versions).
6868	(sys_thread_create): Remove name argument and name-setting.
6869	(w32_beginthread_wrapper): Remove name-setting.
6870	* src/systhread.h (sys_thread_create, sys_thread_set_name):
6871	Update prototypes.
6872	* src/thread.c (run_thread): Call sys_thread_set_name.
6873	(Fmake_thread): Adapt call to sys_thread_create.
6874	* src/thread.h (struct thread_state): Adjust comment.
6875
68762020-01-07  Robert Pluim  <rpluim@gmail.com>
6877
6878	Scale top-left coordinates in display-monitor-attributes-list
6879
6880	When using multiple monitors, and HiDPI, the top-left coordinates of
6881	the monitors need to be adjusted, not just the width and height
6882	(Bug#31223).
6883
6884	* src/xfns.c (Fx_display_monitor_attributes_list): Scale top-left
6885	coordinates.
6886
68872020-01-07  Dmitry Gutov  <dgutov@yandex.ru>
6888
6889	xref-matches-in-files: Big Tramp speed-up
6890
6891	* lisp/progmodes/xref.el (xref-matches-in-files):
6892	Greatly improve performance with remote files using Tramp
6893	(bug#34343).
6894
68952020-01-07  Michael Albinus  <michael.albinus@gmx.de>
6896
6897	* lisp/net/tramp.el (tramp-file-local-name): Remove `save-match-data'.
6898
68992020-01-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6900
6901	Fix rendering bug due to unsynchronized cairo surface size (Bug#38497)
6902
6903	* src/xterm.c (handle_one_xevent) <ConfigureNotify> [USE_CAIRO && !USE_GTK]:
6904	Call x_cr_update_surface_desired_size for a related frame as a fallback.
6905
69062020-01-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6907
6908	Avoid crash by access to cleared img->pixmap->data/img->mask->data (Bug#38774)
6909
6910	* src/image.c (prepare_image_for_display) [USE_CAIRO]: Call IMAGE_BACKGROUND
6911	and IMAGE_BACKGROUND_TRANSPARENT.
6912
69132020-01-06  Eli Zaretskii  <eliz@gnu.org>
6914
6915	Avoid assertion violations in very small-height windows
6916
6917	* src/xdisp.c (try_cursor_movement, redisplay_window)
6918	(row_containing_pos): Skip tab-line glyph rows in addition to
6919	header-line rows, when working on the top-most glyph row of a
6920	window.  This avoids assertion violations in set_cursor_from_row.
6921	(Bug#38966)
6922
69232020-01-06  Robert Pluim  <rpluim@gmail.com>
6924
6925	Use pthread_setname_np to set thread name
6926
6927	* configure.ac: Remove check for sys/prctl.h and prctl, check for
6928	pthread_setname_np instead.
6929
6930	* src/systhread.c: Remove sys/prctl.h include.
6931	(sys_thread_create) [HAVE_PTHREAD_SETNAME_NP]: Use pthread_setname_np
6932	to set the name of the newly created thread (Bug#38632).
6933
6934	* src/thread.c (Fmake_thread): Use ENCODE_SYSTEM instead of
6935	ENCODE_UTF_8 on the thread name.
6936
69372020-01-05  Paul Eggert  <eggert@cs.ucla.edu>
6938
6939	Move “Fix some broken conditional forms” to master
6940
6941	Revert 2020-01-04T19:17:12Z!eggert@cs.ucla.edu
6942	which recently I installed into the emacs-27 branch by mistake.
6943	These patches are now on master instead (via merging).
6944	Do not merge to master.
6945
69462020-01-05  Martin Rudalics  <rudalics@gmx.at>
6947
6948	Improve doc-strings of 'quit-window' and 'quit-restore-window' (Bug#38819)
6949
6950	* lisp/window.el (quit-restore-window, quit-window): Make
6951	doc-strings more consistent; add references to corresponding
6952	section of the Elisp manual (Bug#38819).
6953
69542020-01-04  Stephen Gildea  <stepheng+emacs@gildea.com>
6955
6956	Fix MH-E bug #470: Show buffer discards text properties
6957
6958	* lisp/mh-e/mh-show.el (mh-display-msg): reset font lock and set
6959	major mode *before* formatting message content.  This changes lets
6960	fonts work when the Show buffer is reused for a new message.
6961	(mh-show-mode): no longer set buffer-read-only; that is better done
6962	by mh-display-msg after setting all content.
6963
69642020-01-04  Paul Eggert  <eggert@cs.ucla.edu>
6965
6966	Fix some broken conditional forms
6967
6968	Problem reported by Mattias Engdegård in:
6969	https://lists.gnu.org/r/emacs-devel/2020-01/msg00088.html
6970	* lisp/cedet/ede/cpp-root.el (ede-create-lots-of-projects-under-dir):
6971	Remove this quick hack, which didn’t do anything anyway.
6972	* lisp/cedet/ede/pconf.el (ede-proj-configure-test-required-file):
6973	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-col):
6974	* lisp/net/nsm.el (nsm-check-tls-connection):
6975	Use ‘when’ rather than bypassing it.  This doesn’t affect behavior
6976	and is better style.
6977	* lisp/cedet/srecode/semantic.el (srecode-semantic-handle-:tag):
6978	Fix typo that suppressed an error.
6979	* lisp/filesets.el (filesets-run-cmd): Fix typo that mishandled spacing.
6980	* lisp/gnus/gnus-cloud.el (gnus-cloud-update-newsrc-data):
6981	Fix typo that caused “GROUP has older different info in the cloud
6982	as of DATE, update it here?” prompt result to always be treated as
6983	“yes”.
6984	* lisp/gnus/mml-smime.el (mml-smime-openssl-encrypt): Simplify,
6985	since smime-encrypt-buffer signals error on failure.
6986	* lisp/international/titdic-cnv.el (tsang-quick-converter): Simplify.
6987	The conversion of this file to utf-8-emacs in
6988	2019-01-08T02:18:40Z!monnier@iro.umontreal.ca removed the
6989	distinction between Big5 and CNS fulltitles in the generated docstring.
6990	* lisp/org/org-agenda.el (org-agenda-show-and-scroll-up):
6991	* lisp/textmodes/table.el (table--generate-source-cell-contents):
6992	Simplify by removing useless code.
6993	* lisp/org/ox-odt.el (org-odt--format-timestamp): Fix typo that
6994	always output time-of-day even when the timestamp lacked it.
6995
69962020-01-04  Michael Albinus  <michael.albinus@gmx.de>
6997
6998	Fix a scoping error in tramp-sudoedit.el
6999
7000	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-file-system-info):
7001	Fix a scoping error.
7002
70032020-01-04  Mattias Engdegård  <mattiase@acm.org>
7004
7005	* lisp/autorevert.el (auto-revert-notify-handler): Fix bracketing.
7006
70072020-01-04  Martin Rudalics  <rudalics@gmx.at>
7008
7009	Fix typo in 'window_box_height'
7010
7011	* src/xdisp.c (window_box_height): Add missing 'else'.
7012
70132020-01-03  Mattias Engdegård  <mattiase@acm.org>
7014
7015	Install g++ for CEDET tests
7016
7017	* .gitlab-ci.yml (before_script): Add g++.
7018	Backport from master.
7019
70202020-01-03  Michael Albinus  <michael.albinus@gmx.de>
7021
7022	* lisp/net/tramp.el: Fix typos.
7023
7024	* lisp/net/tramp.el (tramp-file-local-name): New defun.  (Bug#34343)
7025
70262020-01-03  Michael Albinus  <michael.albinus@gmx.de>
7027
7028	Adapt commentary in Tramp persistency file
7029
7030	* lisp/net/tramp-cache.el (tramp-dump-connection-properties):
7031	Adapt commentary in `tramp-persistency-file-name'.
7032
70332020-01-03  Michael Albinus  <michael.albinus@gmx.de>
7034
7035	Change Tramp version to 2.4.3.27.1
7036
7037	* doc/misc/trampver.texi:
7038	* lisp/net/trampver.el: Change version to "2.4.3.27.1".
7039	(customize-package-emacs-version-alist): Add Tramp version
7040	integrated in Emacs 27.1.
7041
70422020-01-02  Eli Zaretskii  <eliz@gnu.org>
7043
7044	Fix redisplay when mode-line-format changes mode-line's height
7045
7046	* lisp/frame.el (top-level): Add mode-line-format,
7047	tab-line-format, and header-line-format to the list of variables
7048	that should trigger an immediate redisplay of the buffer's
7049	window.  This fixes redisplay of windows when the mode line
7050	changes its height.
7051
7052	* src/xdisp.c (window_box_height): Use the window's
7053	mode_line_height, tab_line_height, and header_line_height fields
7054	in preference to CURRENT_MODE_LINE_HEIGHT,
7055	CURRENT_TAB_LINE_HEIGHT, and CURRENT_HEADER_LINE_HEIGHT,
7056	respectively.  This fixes display of vertical scroll bar when the
7057	height of the window's mode line changes.
7058	* src/dispnew.c (adjust_glyph_matrix): When resizing a window's
7059	matrix, reset the mode_line_p flag of the previous mode-line row,
7060	so that the window_box_height, CURRENT_MODE_LINE_HEIGHT, and their
7061	ilk won't use stale info.  (Bug#38828)
7062
70632020-01-02  Eli Zaretskii  <eliz@gnu.org>
7064
7065	* src/fileio.c (Fwrite_region): Improve the doc string.
7066
70672020-01-02  Martin Rudalics  <rudalics@gmx.at>
7068
7069	Fix removal of frame decorations on Windows (Bug#38705)
7070
7071	* src/w32fns.c (w32_set_undecorated): Actualize
7072	f->output_data.w32->dwStyle for subsequent calls of
7073	AdjustWindowRect (Bug#38705).
7074	* src/w32term.h (struct w32_output): Add comment for
7075	dwstyle slot.
7076
70772020-01-01  Eli Zaretskii  <eliz@gnu.org>
7078
7079	Fix compilation with GTK versions older than 3
7080
7081	* src/xfns.c (x_get_net_workarea): Change a recently moved #ifndef
7082	so that GTK builds which need this function will compile it.
7083	Reported by John <jpff@codemist.co.uk>.
7084
7085	(cherry picked from commit d36adb544d984b91c70f6194da01344e4b2b6fc9)
7086
70872020-01-01  Eli Zaretskii  <eliz@gnu.org>
7088
7089	Fix reverting customizations
7090
7091	* lisp/custom.el (custom-push-theme): Don't use setcar to modify
7092	the recorded value of PROP; instead, cons a new property list by
7093	deleting the old value and adding the new one.  (Bug#38812)
7094
70952020-01-01  Mattias Engdegård  <mattiase@acm.org>
7096
7097	* lisp/loadup.el: Set max-specpdl-size to 1800 when loading cl-generic.el.
7098
70992020-01-01  Mattias Engdegård  <mattiase@acm.org>
7100
7101	Revert "Raise default max-specpdl-size value"
7102
7103	This reverts commit bb9402e6e9c12938aee31b81e25511eb1f6335d2.
7104
71052020-01-01  Mattias Engdegård  <mattiase@acm.org>
7106
7107	Raise default max-specpdl-size value
7108
7109	Occasionally, loading cl-generic.el from source requires
7110	max_specpdl_size > 1600 when bootstrapping, and thus fails.
7111	In any case we are very close to the limit.
7112
7113	* src/eval.c (init_eval_once): Raise max_specpdl_size to 1800.
7114	* doc/lispref/variables.texi (Local Variables): Update docs.
7115
71162020-01-01  Phillip Lord  <phillip.lord@russet.org.uk>
7117
7118	Update distribution documentation
7119
7120	* admin/nt/README-ftp-server: Remove as obsolete
7121	* admin/nt/dist-build/README-windows-binaries: Add information
7122	  about installer
7123
71242019-12-31  Paul Eggert  <eggert@cs.ucla.edu>
7125
7126	Pacify gcc -Wunused-function on Ubuntu 18.04.3
7127
7128	This improves on 2019-12-25T20:01:07Z!eggert@cs.ucla.edu,
7129	by fixing a GCC warning on Ubuntu 18.04.3
7130	“‘x_get_net_workarea’ defined but not used”.
7131	* src/xfns.c (x_get_net_workarea) [!USE_GTK]: Do not define.
7132
71332019-12-31  Paul Eggert  <eggert@cs.ucla.edu>
7134
7135	Fix copyright years by hand
7136
7137	These are dates that admin/update-copyright did not update.
7138
71392019-12-31  Paul Eggert  <eggert@cs.ucla.edu>
7140
7141	Update copyright year to 2020
7142
7143	Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
7144
71452019-12-31  João Távora  <joaotavora@gmail.com>
7146
7147	Don't always resort in recently introduced icomplete--sorted-completions
7148
7149	Doing so breaks icomplete-forward-completions and
7150	icomplete-backward-completions.
7151
7152	* lisp/icomplete.el (icomplete--sorted-completions): Don't always
7153	resort.
7154
7155	(cherry picked from commit 639fb50ed4c622f99dfbde32fbdbca42ce36d385)
7156
71572019-12-31  João Távora  <joaotavora@gmail.com>
7158
7159	Don't force completion recalculation in icomplete-fido-ret
7160
7161	Besides the adverse effect of delaying completions, it tripped up the
7162	useful logic of icomplete-force-complete-and-exit in the case where a
7163	default was available, but no completions calculated yet.
7164
7165	* lisp/icomplete.el (icomplete-fido-ret): Don't force calculation
7166	of completions.
7167
7168	(cherry picked from commit 13778aa5be7bf028893672d84c2a291f491d8216)
7169
71702019-12-31  João Távora  <joaotavora@gmail.com>
7171
7172	Correctly cache sorted completions in icomplete--sorted-completions
7173
7174	* lisp/icomplete.el (icomplete--sorted-completions): Use
7175	completion--cache-all-sorted-completions.
7176
7177	(cherry picked from commit 83587bb68830bd91124f99ddf8590d1d5f63869f)
7178
71792019-12-31  João Távora  <joaotavora@gmail.com>
7180
7181	Move flex style's minibuffer-default-aware sorting to lisp/icomplete.el
7182
7183	This moves the logic from the series of commits starting in the commit named:
7184
7185	  Improve sorting of flex completion style with non-nil minibuffer-default
7186
7187	to lisp/icomplete.el, so far the only confirmed beneficiary of that
7188	functionality.
7189
7190	* lisp/icomplete.el (icomplete--sorted-completions): Consider
7191	minibuffer-default here.
7192
7193	* lisp/minibuffer.el (completion--flex-adjust-metadata): Simplify.
7194
7195	(cherry picked from commit 0d2a711dc9a65dc8eb6e995369e70cddbcd7d9a4)
7196
71972019-12-31  João Távora  <joaotavora@gmail.com>
7198
7199	Make fido-mode behave more like ido-mode when finding directories
7200
7201	Notably C-x d (M-x dired) and C-x v d (M-x vc-dir) behaved quite
7202	differently, having regular files as the default instead of ido's
7203	usual "./".
7204
7205	* lisp/icomplete.el (icomplete--sorted-completions): New helper.
7206	(icomplete-completions): Use it.
7207
7208	(cherry picked from commit ee914051fbb4fbff9073a23b5ea7668bf48b5c6a)
7209
72102019-12-31  João Távora  <joaotavora@gmail.com>
7211
7212	Slightly simplify lisp/icomplete.el with new icomplete--category helper
7213
7214	* lisp/icomplete.el (icomplete-fido-kill)
7215	(icomplete-fido-delete-char, icomplete-fido-ret)
7216	(icomplete-fido-backward-updir, icomplete-exhibit): Use
7217	icomplete--category.
7218	(icomplete--category): New helper.
7219
7220	(cherry picked from commit 24a1f520f91c278cb8cc57325ea80285a3b252cf)
7221
72222019-12-31  João Távora  <joaotavora@gmail.com>
7223
7224	Another adjustment to flex completion style's sorting function
7225
7226	* lisp/minibuffer.el (completion--flex-adjust-metadata): Adjust
7227	case when minibuffer-default is non-nil.
7228
7229	(cherry picked from commit 9c912049927cfb18b9c8b37039b38ddf51f2fe81)
7230
72312019-12-30  Mattias Engdegård  <mattiase@acm.org>
7232
7233	Make minibuffer-tests work in out-of-tree builds (bug#38816)
7234
7235	* test/lisp/minibuffer-tests.el (completion-table-test-quoting):
7236	Set default-directory.
7237
72382019-12-30  Mattias Engdegård  <mattiase@acm.org>
7239
7240	Make comint-tests more robust (bug#38813)
7241
7242	* test/lisp/comint-tests.el (comint-test-no-password-function)
7243	(comint-test-password-function-with-value)
7244	(comint-test-password-function-with-nil):
7245	Call accept-process-output as many times as needed, with a slightly
7246	more generous timeout (100 ms), after sending the Password: prompt to
7247	the process, since there must be time for some back-and-forth
7248	communication.  Also clear the process-query-on-exit flag, since it
7249	doesn't go well with noninteractive tests.
7250
72512019-12-30  Eli Zaretskii  <eliz@gnu.org>
7252
7253	Fix tar-mode reading the oldgnu Tar format
7254
7255	This makes sure an entry for a long file name will not
7256	accidentally appear as a directory, and thus its size will be
7257	disregarded, causing corrupted file headers for all the subsequent
7258	entries.  The original problem happened because the long file name
7259	truncated to 99 bytes happened to end in a slash, which tar-mode
7260	takes to be the indication of a directory.
7261	* lisp/tar-mode.el (tar-header-block-tokenize): Accept an
7262	additional argument DISABLE-SLASH; if non-nil, don't set the
7263	link-type field of the descriptor to 5 (meaning a directory) just
7264	because the name ends in a slash.  Use this argument when calling
7265	itself recursively, to read the entry of the file with a long
7266	name.  Set the link-type to 5 if the long name ends in a slash.
7267	(Bug#38777)
7268
72692019-12-30  Eli Zaretskii  <eliz@gnu.org>
7270
7271	Ensure mini-window is resized to show active minibuffer contents
7272
7273	* src/keyboard.c (read_char, command_loop_1): Resize the
7274	mini-window after clearing the echo area while minibuffer is
7275	active.  (Bug#38645)
7276
72772019-12-30  Eli Zaretskii  <eliz@gnu.org>
7278
7279	Fix mini-window resizing under resize-mini-windows = t
7280
7281	* src/window.c (grow_mini_window): Fix resizing of mini-window
7282	when the echo area is cleared, and the caller asks for the
7283	mini-window to have zero lines.  (Bug#38791)
7284
72852019-12-29  Glenn Morris  <rgm@gnu.org>
7286
7287	Fixes for makeinfo 4.13
7288
7289	* doc/lispref/customize.texi (Variable Definitions): Fix xref.
7290	* doc/lispref/internals.texi (Writing Emacs Primitives)
7291	(Module Values): Follow xref with comma.
7292
72932019-12-29  Robert Pluim  <rpluim@gmail.com>
7294
7295	Fix crash under -nw on macOS properly this time
7296
7297	* src/dispextern.h (FACE_COLOR_TO_PIXEL): Only use
7298	ns_color_index_to_rgba when we're running under the NS gui
7299	(Bug#38564).
7300
73012019-12-29  Robert Pluim  <rpluim@gmail.com>
7302
7303	Revert "Check for GUI frame in ns_color_index_to_rgba"
7304
7305	This reverts commit ea84a95bd8d43612b4a424fb93de25a68ac31d05.
7306
73072019-12-29  Robert Pluim  <rpluim@gmail.com>
7308
7309	Ignore all color fonts when using XFT
7310
7311	* etc/NEWS: Announce change to matching color fonts when using XFT.
7312
7313	* src/ftfont.c (ftfont_list) [HAVE_XFT && FC_COLOR]: Query for the
7314	color attribute of the matched font, and skip it if it is not
7315	FcFalse (Bug#37786).
7316
73172019-12-29  Mattias Engdegård  <mattiase@acm.org>
7318
7319	Avoid unbounded growth of cl-random-state components (bug#38753)
7320
7321	* lisp/emacs-lisp/cl-extra.el (cl-random):
7322	Perform the modulo 2**23 operation before updating the state instead
7323	of after.  The result is always the same, but it prevents the state
7324	from growing into arbitrary large bignums.
7325
7326	Patch from Christopher Wellons.
7327
73282019-12-29  Michael Albinus  <michael.albinus@gmx.de>
7329
7330	Sync with Tramp 2.4.3
7331
7332	* doc/misc/trampver.texi:
7333	* lisp/net/trampver.el: Change version to "2.4.3".
7334
7335	* lisp/net/tramp.el: Bump version.
7336	(tramp-handle-shell-command): The temp file for error-buffer is remote.
7337
7338	* test/lisp/net/tramp-tests.el (tramp-test30-make-process):
7339	Simplify buffer generation.
7340	(tramp-test32-shell-command): Extend test.
7341
73422019-12-29  Dmitry Gutov  <dgutov@yandex.ru>
7343
7344	Fix up requires
7345
7346	* lisp/progmodes/project.el (project-files):
7347	Remove (require 'xref).
7348	(project--files-in-directory): Add it here instead.
7349	(project-find-regexp, project-or-external-find-regexp): And here.
7350	For 'xref--show-xrefs'.
7351
73522019-12-29  Dmitry Gutov  <dgutov@yandex.ru>
7353
7354	Extract xref-matches-in-files from project--find-regexp-in-files
7355
7356	* lisp/progmodes/xref.el (xref-matches-in-files): Extract from
7357	project--find-regexp-in-files.
7358
7359	* lisp/dired-aux.el (dired-do-find-regexp): Also use it here.
7360
73612019-12-29  Dmitry Gutov  <dgutov@yandex.ru>
7362
7363	Rename xref-collect-references and xref-collect-matches
7364
7365	* lisp/progmodes/xref.el (xref-references-in-directory): Rename
7366	from xref-collect-references.  Update the sole caller.
7367	(xref-matches-in-directory): Rename from xref-collect-matches.
7368	Update all callers (all of them are in the /tests/ dir).
7369
7370	* test/lisp/progmodes/xref-tests.el (xref-tests-data-dir):
7371	Don't use the EMACS_TEST_DIRECTORY env var. It doesn't work when
7372	running interactively.
7373
73742019-12-29  Dmitry Gutov  <dgutov@yandex.ru>
7375
7376	Improve docstrings
7377
7378	* lisp/progmodes/xref.el (xref-collect-matches)
7379	(xref-collect-references): Improve docstrings.
7380
73812019-12-29  Alan Third  <alan@idiocy.org>
7382
7383	Fix when expose draws partially visible first glyph (bug#38731)
7384
7385	* src/xdisp.c (expose_area): When the face extends to the end of the
7386	line draw text from the correct x coordinate.
7387
73882019-12-28  Dmitry Gutov  <dgutov@yandex.ru>
7389
7390	Don't require semantic/fw
7391
7392	* lisp/progmodes/xref.el (xref-collect-matches): Don't require
7393	semantic/fw, we haven't been using semantic-find-file-noselect
7394	here for a while.
7395
73962019-12-28  Dmitry Gutov  <dgutov@yandex.ru>
7397
7398	Do some renames for clarity
7399
7400	* lisp/progmodes/xref.el (xref--last-file-buffer):
7401	Rename from xref--last-visiting-buffer.  Update users.
7402	(xref--find-file-buffer): Rename from xref--find-buffer-visiting
7403	to match the standard function that gets called inside.  Ditto.
7404
74052019-12-28  Eli Zaretskii  <eliz@gnu.org>
7406
7407	Rearrange NEWS, add missing documentation
7408
7409	* etc/NEWS: Rearrange and mark entries whether documented or not.
7410
7411	* doc/lispref/streams.texi (Output Variables): Document the new
7412	default of 'print-quoted'.
7413	* doc/lispref/keymaps.texi (Functions for Key Lookup): Document
7414	that KEYMAP arg to 'lookup-key' can also be a list.
7415	* doc/lispref/customize.texi (Variable Definitions): Document the
7416	:local keyword of 'defcustom'.
7417	* doc/lispref/numbers.texi (Float Basics): Document changes in
7418	'logb'.
7419	* doc/lispref/hooks.texi (Standard Hooks): Document
7420	'comint-password-function'.
7421
7422	* doc/emacs/display.texi (Text Scale): Document text-size
7423	adjustment using the mouse wheel.
7424	* doc/emacs/frames.texi (Mouse Commands): Document image scaling
7425	with the mouse wheel.
7426	* doc/emacs/windows.texi (Window Convenience): Document
7427	'global-tab-line-mode'.
7428	* doc/emacs/search.texi (Repeat Isearch, Symbol Search)
7429	(Isearch Yank): Document the new support for numeric arguments in
7430	Isearch commands.
7431	(Special Isearch): Document 'M-s M->' and 'M-s M-<'.
7432	(Search Customizations): Document 'isearch-lazy-count'.  Improve
7433	indexing.
7434	(Not Exiting Isearch): Document the new value of
7435	'isearch-allow-scroll'.
7436	* doc/emacs/maintaining.texi (Xref Commands): Document the new 'g'
7437	key binding.
7438	* doc/emacs/package.texi (Package Installation): Document changes
7439	in 'package-check-signature'.
7440	* doc/emacs/maintaining.texi (VC Change Log): Document
7441	'vc-log-search'.
7442	* doc/emacs/dired.texi (Operating on Files): Document
7443	'dired-vc-rename'.
7444
74452019-12-28  Xu Chunyang  <xuchunyang56@gmail.com>
7446
7447	Fix interactive spec in netrc-parse
7448
7449	* lisp/net/netrc.el (netrc-parse): Fix placement of interactive
7450	spec (bug#38773).
7451
74522019-12-28  Eli Zaretskii  <eliz@gnu.org>
7453
7454	Fix documentation of define-obsolete-* functions
7455
7456	* doc/lispref/functions.texi (Obsolete Functions): Make
7457	documentation of functions that obsolete symbols match the
7458	advertised calling conventions.
7459
7460	* lisp/emacs-lisp/byte-run.el (define-obsolete-function-alias)
7461	(define-obsolete-variable-alias, define-obsolete-face-alias):
7462	State in the doc strings that WHEN is a mandatory argument, to be
7463	consistent with the advertised calling convention.  (Bug#38675)
7464
74652019-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
7466
7467	Fix recent gnus-start.el breakage
7468
7469	* lisp/gnus/gnus-start.el (gnus-group-change-level): Fix previous
7470	patch that made info nil when adding new groups (thereby making
7471	gnus-newsrc-alist invalid).
7472
74732019-12-27  Dmitry Gutov  <dgutov@yandex.ru>
7474
7475	(xref--find-buffer-visiting): Speed up by using get-file-buffer
7476
7477	* lisp/progmodes/xref.el (xref--find-buffer-visiting):
7478	Speed up by using get-file-buffer.
7479	(xref--collect-matches): Remove the condition on remote-id.
7480	(https://lists.gnu.org/archive/html/emacs-devel/2019-12/msg00753.html)
7481
74822019-12-27  Dmitry Gutov  <dgutov@yandex.ru>
7483
7484	project--vc-list-files: Recurse into submodules
7485
7486	* lisp/progmodes/project.el (project-try-vc): Do not treat a Git
7487	submodule as a project root, go up to the parent repo.
7488	(project--git-submodules): New function.
7489	(project--vc-list-files): Use it.  Recurse into submodules.
7490
74912019-12-27  Eli Zaretskii  <eliz@gnu.org>
7492
7493	Minor improvements of buffer documentation
7494
7495	* doc/emacs/buffers.texi (Buffers): Say that buffers are killed
7496	when no longer needed.  Suggested by Jean-Christophe Helary
7497	<jean.christophe.helary@traduction-libre.org>.
7498
74992019-12-27  Dmitry Gutov  <dgutov@yandex.ru>
7500
7501	xref--collect-matches: Speed up on remote
7502
7503	* lisp/progmodes/xref.el (xref--collect-matches):
7504	Don't call find-buffer-visiting on remote file names, it's pretty
7505	slow (bug#34343).
7506
75072019-12-26  Phillip Lord  <phillip.lord@russet.org.uk>
7508
7509	Fix installer build
7510
7511	* admin/nt/dist-build/build-zips.sh: Ensure that NSIS build always
7512	  uses the actual build number to locate its files.
7513
75142019-12-26  Phillip Lord  <phillip.lord@russet.org.uk>
7515
7516	Update Windows build documentation
7517
7518	* admin/nt/dist-build/README-scripts: Update with branch and snapshot
7519	  information.
7520
75212019-12-26  Mattias Engdegård  <mattiase@acm.org>
7522
7523	Calc: add missing dynamic variable declarations
7524
7525	* lisp/calc/calc-alg.el (math-simplify-only, calc-simplify-mode)
7526	(math-expand-formulas, calc-poly-div-remainder)
7527	(math-living-dangerously, math-simplifying, calc-angle-mode)
7528	(calc-prefer-frac, math-poly-base-variable):
7529	Declare dynamic variables.
7530	* test/lisp/calc/calc-tests.el (calc-poly-div):
7531	Add test for at least one bug caused by missing declarations.
7532
75332019-12-26  Eli Zaretskii  <eliz@gnu.org>
7534
7535	* doc/emacs/buffers.texi (Kill Buffer): Improve indexing.
7536
75372019-12-26  Dmitry Gutov  <dgutov@yandex.ru>
7538
7539	Speed up dired-do-find-regexp
7540
7541	* lisp/dired-aux.el (dired-do-find-regexp): Speed up (bug#36857).
7542	Previously, 'find' was called for every marked file (for plain
7543	files and directories both).  Now 'find' is only called for
7544	directories.
7545
75462019-12-26  Dmitry Gutov  <dgutov@yandex.ru>
7547
7548	project--find-regexp-in-files: Support remote files
7549
7550	* lisp/progmodes/project.el (project--find-regexp-in-files):
7551	Support remote files (bug#34343).
7552
75532019-12-26  Philipp Stephani  <phst@google.com>
7554
7555	Document some restrictions for module functions.
7556
7557	* doc/lispref/internals.texi (Module Functions): Document some
7558	restrictions for module functions.
7559
75602019-12-26  Philipp Stephani  <phst@google.com>
7561
7562	Don't recommend using 'module-load' for loading modules.
7563
7564	'module-load' most likely doesn't do what users expect.  Users should
7565	use 'load' and its wrappers, which do the right thing.
7566
7567	* doc/lispref/loading.texi (Dynamic Modules): Document
7568	disadvantages of 'module-load' and recommend normal 'load' and
7569	its wrappers instead.
7570
7571	* doc/lispref/internals.texi (Module Functions): Recommend
7572	'load' over 'module-load'.
7573
75742019-12-25  Paul Eggert  <eggert@cs.ucla.edu>
7575
7576	Port x_get_monitor_attributes_fallback to !HAVE_GTK3
7577
7578	* src/xfns.c (x_get_net_workarea) [!HAVE_GTK3]:
7579	Define in this case too, since x_get_monitor_attributes_fallback
7580	contains a call to it regardless whether HAVE_GTK3 is defined.
7581
75822019-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
7583
7584	Fix compilation warning in gnus-start.el
7585
7586	* lisp/gnus/gnus-start.el (gnus-gnus-to-quick-newsrc-format): Fix
7587	compilation warning by not binding XEmacs-only variable.
7588
7589	* lisp/gnus/gnus-util.el (gnus-bind-print-variables): Ditto.
7590	(gnus-prin1, gnus-prin1-to-string, gnus-pp, gnus-pp-to-string):
7591	Adjust doc string.
7592
75932019-12-25  Eli Zaretskii  <eliz@gnu.org>
7594
7595	Improve doc string of 'files--message'
7596
7597	* lisp/files.el (files--message): Improve the wording of doc
7598	string.  (Bug#38737)
7599
76002019-12-24  Wolfgang Scherer  <wolfgang.scherer@gmx.de>
7601
7602	Improve vc--add-line, vc--remove-regexp
7603
7604	* lisp/vc/vc.el (vc--add-line): Create file if it does not exist.
7605	Use existing buffer to avoid discrepancies with filesytem.  Make sure
7606	that the file ends with a newline.
7607	(vc--remove-line): Do not create file if it does not exist.  Use
7608	existing buffer to avoid discrepancies with filesytem. (bug#37185)
7609
76102019-12-24  Dmitry Gutov  <dgutov@yandex.ru>
7611
7612	Apply the 'xref-group' property properly
7613
7614	* lisp/progmodes/xref.el (xref--insert-xrefs):
7615	Apply the 'xref-group' property properly (bug#36974).
7616
76172019-12-24  Philipp Stephani  <phst@google.com>
7618
7619	* src/pdumper.c (Fdump_emacs_portable): Reword error message.
7620
7621	(cherry picked from commit ac7b2607735a64e657d65c87d8c9f73755ff3efa)
7622
76232019-12-24  Philipp Stephani  <phst@google.com>
7624
7625	Don’t allow portable dumping in interactive mode (Bug#38453).
7626
7627	* src/pdumper.c (Fdump_emacs_portable): Don’t allow dumping in
7628	interactive mode.
7629
7630	(cherry picked from commit e7edba42c8a525722cbd40f782b0df68e4976a62)
7631
76322019-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
7633
7634	Don't default to showing X-Faces externally in Gnus
7635
7636	* lisp/gnus/gnus-art.el (gnus-article-x-face-command): It's seldom
7637	useful to display the face in an external command, so don't ever
7638	default to that.  This also fixes the problem of Emacs running as
7639	a server in mixed graphical/non-graphical environments.
7640
76412019-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
7642
7643	Fix manual typo in Special Read Syntax
7644
7645	* doc/lispref/objects.texi (Special Read Syntax): Fix typo.
7646
76472019-12-24  Robert Pluim  <rpluim@gmail.com>
7648
7649	Fix problem with emacs -nw / eww / svg
7650
7651	* lisp/net/shr.el (shr-parse-image-data): Don't bug out on
7652	non-visual Emacs versions on SVG images (bug#38507).
7653
76542019-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
7655
7656	Clarify base64 requirements and say what {en,de}code_coding_region does
7657
7658	* src/coding.c (Fencode_coding_region): Clarify what this does.
7659	(Fdecode_coding_region): Ditto.
7660
7661	* src/fns.c (Fbase64_decode_region): Clarify that this function
7662	returns bytes, not text (bug#38587).
7663	(Fbase64_encode_region): Clarify that this function takes bytes,
7664	not text.
7665
76662019-12-24  Philipp Stephani  <phst@google.com>
7667
7668	* src/emacs-module.h.in: Add reference to manual.
7669
76702019-12-23  Juanma Barranquero  <lekktu@gmail.com>
7671
7672	Trivial docstring fixes
7673
7674	* ChangeLog.3:
7675	* lisp/emacs-lisp/cl-macs.el (cl-flet):
7676	* lisp/filesets.el (filesets-menu-ensure-use-cached):
7677	* lisp/progmodes/compile.el (compilation-context-lines):
7678	* lisp/progmodes/prolog.el (prolog-paren-indent):
7679	* lisp/progmodes/sql.el (sql-password-search-wallet-function):
7680	Fix typos in docstrings.
7681
7682	* lisp/cedet/semantic/analyze.el (semantic-analyze-push-error):
7683	Doc fix.
7684
7685	* lisp/emacs-lisp/map.el (map-put, map-info): Refill docstring.
7686	(map-contains-key): Fix typo.
7687	(map-every-p): Doc fix.
7688
76892019-12-23  Dhruva Krishnamurthy  <dhruvakm@gmail.com>  (tiny change)
7690
7691	imagemagick-types needs to initialize ImageMagick
7692
7693	* src/image.c (imagemagick_initialize): New function,
7694	with body taken from imagemagick_load_image.
7695	(imagemagick_load_image, Fimagemagick_types): Use it.
7696
76972019-12-23  Eli Zaretskii  <eliz@gnu.org>
7698
7699	Cut the emacs-27 release branch
7700
7701	* lisp/cus-edit.el (customize-changed-options-previous-release):
7702	Change the value to 26.3.
7703
7704	* README:
7705	* configure.ac:
7706	* nt/README.W32:
7707	* msdos/sed2v2.inp: Bump Emacs version to 27.0.60.
7708
77092019-12-23  Philipp Stephani  <phst@google.com>
7710
7711	Document and verify that emacs_limb_t doesn’t have padding bits.
7712
7713	This is a useful property when doing further bit-twiddling with the
7714	magnitude array before/after calling extract_big_integer or
7715	make_big_integer.  For example, constructing an emacs_limb_t object
7716	using repeated shift-and-add should work as expected, but relies on
7717	the type not having padding bits.  Since the C standard already
7718	guarantees that unsigned integers use a pure binary representation,
7719	not having padding bits is enough to guarantee that the type has
7720	unique object representations in the sense of C++’s
7721	std::has_unique_object_representations.
7722
7723	* doc/lispref/internals.texi (Module Values): Document that
7724	emacs_limb_t doesn’t have padding bits.
7725
7726	* src/emacs-module.c: Verify that emacs_limb_t doesn’t have padding
7727	bits.
7728
77292019-12-23  Jimmy Aguilar Mena  <spacibba@aol.com>
7730
7731	Fix extension of underline, overline, and strike-through attributes
7732
7733	* src/xdisp.c (extend_face_to_end_of_line): Don't return early
7734	if face attributes beyond background color and box are set,
7735	since that means these attributes need to be extended past the
7736	EOL.
7737
77382019-12-23  João Távora  <joaotavora@gmail.com>
7739
7740	Comment on limitation of flex completion style's sorting function
7741
7742	* lisp/minibuffer.el (completion--flex-adjust-metadata): Add
7743	comment.
7744
77452019-12-23  João Távora  <joaotavora@gmail.com>
7746
7747	Fix a bug in completion--flex-adjust-metadata
7748
7749	If minibuffer-default coincided with the first of completions, the
7750	empty list would be returned.
7751
7752	* lisp/minibuffer.el (completion--flex-adjust-metadata): Make sure
7753	to never return empty list.
7754
77552019-12-23  Martin Rudalics  <rudalics@gmx.at>
7756
7757	Fix documentation of implied frame resizing (Bug#38684)
7758
7759	* src/frame.c (frame_inhibit_implied_resize): Fix doc-string.
7760	* doc/lispref/frames.texi (Implied Frame Resizing): Update and
7761	rewrite section.
7762
77632019-12-22  Michael R. Mauger  <michael@mauger.com>
7764
7765	Added `comint-password-function' hook
7766
7767	* etc/NEWS:
7768	* lisp/comint.el (comint-password-function): New variable.
7769	  (comint-send-invisible): Use it.
7770	* test/lisp/comint-tests.el (comint-test-no-password-function,
7771	  comint-test-password-function-with-value,
7772	  comint-test-password-function-with-nil): Test new variable.
7773
77742019-12-22  Juri Linkov  <juri@linkov.net>
7775
7776	* lisp/files.el (save-buffers-kill-emacs): Mark "*Process List*" as dedicated.
7777
7778	Using the 'dedicated' prop for display-buffer--maybe-at-bottom marks the
7779	window of the buffer "*Process List*" as dedicated, so it won't be replaced
7780	by another buffer that might be visited following links to process buffers
7781	from the buffer "*Process List*".
7782
77832019-12-22  Juri Linkov  <juri@linkov.net>
7784
7785	* lisp/tab-bar.el: Use alist-get instead of (cdr (assq ...))
7786
7787	* lisp/tab-bar.el (tab-bar-mode): Bind s-0 to tab-bar-switch-to-recent-tab.
7788
77892019-12-22  Juri Linkov  <juri@linkov.net>
7790
7791	* lisp/proced.el (proced-signal-list): Add more POSIX 1003.1-2001 signals.
7792
77932019-12-22  João Távora  <joaotavora@gmail.com>
7794
7795	Fix bug in flex completion style's sorting and simplify
7796
7797	This previous commit targetting this function introduced a bug whereby
7798	the completion table's sorting function wouldn't be called.  That is
7799	fixed by this commit, which also simplifies the function further: it
7800	now skips re-sorting the completions completely if there is no
7801	minibuffer input at all (in other words, when flex isn't doing
7802	anything useful).
7803
7804	* lisp/minibuffer.el (completion--flex-adjust-metadata): Simplify.
7805
78062019-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>
7807
7808	* lisp/gnus/gnus-start.el: Use lexical-binding
7809
7810	(gnus-group-change-level, gnus-make-hashtable-from-newsrc-alist):
7811	Use gnus-info-make.
7812	(gnus-make-hashtable-from-newsrc-alist): Prefer `gnus-info-group`
7813	to `car` when applied to a `gnus-info` object.
7814	(gnus-make-hashtable-from-killed): Remove unused vars `lists` and `list`.
7815	(gnus-gnus-to-quick-newsrc-format): Extract common code from if branches.
7816
7817	* lisp/gnus/gnus.el (gnus-info-make): New constructor.
7818
78192019-12-22  Eli Zaretskii  <eliz@gnu.org>
7820
7821	Fix wording of recent documentation changes
7822
7823	* src/xdisp.c (syms_of_xdisp):
7824	* lisp/minibuffer.el (minibuffer-message-clear-timeout):
7825	* etc/NEWS:
7826	* doc/lispref/display.texi (Displaying Messages): Minor
7827	changes of wording of a recent commit.  (Bug#38457)
7828
78292019-12-22  Michael Albinus  <michael.albinus@gmx.de>
7830
7831	Extend tramp-tests.el for other host name syntax and file name syntax
7832
7833	* test/lisp/net/tramp-tests.el (inhibit-message)
7834	(connection-local-criteria-alist)
7835	(connection-local-profile-alist, async-shell-command-width): Declare.
7836	(tramp-test01-file-name-syntax)
7837	(tramp-test02-file-name-dissect): Set syntax to `default'.
7838	(tramp-test03-file-name-defaults)
7839	(tramp-test03-file-name-host-rules)
7840	(tramp-test03-file-name-method-rules)
7841	(tramp-test04-substitute-in-file-name)
7842	(tramp-test05-expand-file-name)
7843	(tramp-test06-directory-file-name, tramp-test44-auto-load):
7844	Skip unless syntax is `default'.
7845	(tramp-test06-directory-file-name, tramp-test10-write-region)
7846	(tramp-test17-dired-with-wildcards)
7847	(tramp-test26-file-name-completion): Handle IPv6 host names.
7848	(tramp-test21-file-links): Support all syntaxes.
7849	(tramp-test30-make-process, tramp-test45-unload):
7850	Suppress compiler warnings.
7851	(tramp-test37-make-auto-save-file-name): Skip for `separate' syntax.
7852
78532019-12-22  Michael Albinus  <michael.albinus@gmx.de>
7854
7855	* lisp/net/trampver.el (inhibit-message): Declare.
7856
78572019-12-22  Michael Albinus  <michael.albinus@gmx.de>
7858
7859	Add item to Frequently Asked Questions of Tramp manual
7860
7861	* doc/misc/tramp.texi (Frequently Asked Questions): Add item for
7862	ControlMaster option on proxy hosts.  Explain changing syntax to
7863	Ange FTP.
7864
78652019-12-22  Alan Third  <alan@idiocy.org>
7866
7867	* lisp/term/ns-win.el (ns-insert-working-text): Comment is obsolete.
7868
78692019-12-22  João Távora  <joaotavora@gmail.com>
7870
7871	Improve sorting of flex completion style with non-nil minibuffer-default
7872
7873	This affects the behaviour of flex completion when there is a default
7874	completion and the user hasn't entered any input pattern to flex-match
7875	against.  It is most visible when icomplete-mode or fido-mode are
7876	being used in conjunctio.
7877
7878	When using M-x man, for instance, the default completion is picked
7879	from text around point.  Say it is "emacs" (for Emacs's man page).  It
7880	will not match the intended completion, "emacs(1)", exactly.  If the
7881	user hasn't yet given any input to the completion prompt, that
7882	completion should bubble to top so that
7883	icomplete-force-complete-and-exit will select it, but it didn't.
7884
7885	This new approach uses 'string-prefix-p' instead of 'equal' to find
7886	the default to bubble to the top.  This strategy could eventually be
7887	improved, most naturally by flex-matching the default string to all
7888	the candidates and picking the highest scoring one.
7889
7890	Additionally, the new strategy only considers minibuffer-default if
7891	there is no input in the minibuffer, which seems sensible and produces
7892	a small but noticeable speedup.
7893
7894	* lisp/minibuffer.el (completion--flex-adjust-metadata):
7895	Reformulate sorting strategy.
7896
78972019-12-22  Masahiro Nakamura  <tsuucat@icloud.com>  (tiny change)
7898
7899	Fix display of working text on NS (Bug#23412, Bug#1453)
7900
7901	* lisp/term/ns-win.el (ns-insert-working-text):
7902	(ns-delete-working-text): Change how working text is deleted to handle
7903	changed order of operations.
7904	* src/nsterm.m ([EmacsView insertText:]): Move deletion of working
7905	text until after insertion of new text.
7906
79072019-12-22  Alan Third  <alan@idiocy.org>
7908
7909	Check if file is in iCloud drive (bug#38618)
7910
7911	* src/nsfns.m (ns_set_represented_filename): Check whether the file is
7912	a `ubiquitous item', and if so don't display a proxy icon.
7913
79142019-12-21  Juri Linkov  <juri@linkov.net>
7915
7916	* lisp/tab-bar.el: Rename tab-bar-list to tab-switcher (bug#38624)
7917
79182019-12-21  Juri Linkov  <juri@linkov.net>
7919
7920	New variable set-message-function to show message at the end of the minibuffer
7921
7922	* doc/lispref/display.texi (Displaying Messages): Document
7923	set-message-function and clear-message-function.
7924
7925	* lisp/minibuffer.el (minibuffer-message-clear-timeout): New defcustom.
7926	(minibuffer-message-timer, minibuffer-message-overlay): New variables.
7927	(set-minibuffer-message, clear-minibuffer-message): New functions.
7928	(set-message-function, clear-message-function): Set variables to
7929	set-minibuffer-message and clear-minibuffer-message respectively.
7930
7931	* src/keyboard.c (read_char): Call clear_message when
7932	Vclear_message_function is a function.
7933
7934	* src/xdisp.c (set_message): Call Vset_message_function when it's a function.
7935	(clear_message): Call Vclear_message_function when it's a function.
7936	(syms_of_xdisp): New variables set-message-function and clear-message-function
7937	(bug#38457).
7938
79392019-12-21  Stephen Gildea  <stepheng+emacs@gildea.com>
7940
7941	backup-by-copying-when-privileged-mismatch applies to file gid, too.
7942
7943	* lisp/files.el (backup-by-copying-when-privileged-mismatch):  In addition
7944	to checking the file uid, a second test is added: if the file gid is not
7945	greater than backup-by-copying-when-privileged-mismatch,
7946	backup-by-copying-when-mismatch will also be forced on.
7947
7948	* doc/emacs/files.texi, doc/lispref/backups.texi: Updated documentation.
7949
7950	Also fixed a typo in the Emacs reference manual, changing "higher" to
7951	"no greater" so that the limit is no longer documented reversed.
7952
79532019-12-21  Eli Zaretskii  <eliz@gnu.org>
7954
7955	;* src/process.c (read_process_output): Fix last change.
7956
79572019-12-21  lin.sun  <lin.sun@zoom.us>
7958
7959	Add new function `python-shell-send-statement'
7960
7961	* lisp/progmodes/python.el (python-shell-send-statement): New function.
7962	(python-mode-map): Bind it to key "C-c C-e", and define a python-menu
7963	item for it.  (Bug#38426)
7964
79652019-12-21  Eli Zaretskii  <eliz@gnu.org>
7966
7967	Allow control of data amount read from subprocess in one chunk
7968
7969	* src/process.c (syms_of_process) <read-process-output-max>:
7970	New variable.
7971	(read_process_output): Use it instead of the hard-coded
7972	constant 4096.  (Bug#38561)
7973	Use SAFE_ALLOCA to support large buffers for reading process
7974	output.
7975
7976	* etc/NEWS: Mention 'read-process-output-max'.
7977
79782019-12-20  Stefan Monnier  <monnier@iro.umontreal.ca>
7979
7980	* lisp/international/mule-cmds.el: Fix bug#38642
7981
7982	(universal-coding-system-argument): Adjust the code to the way
7983	`universal-argument` works nowadays.  Handle `prefix-arg` a bit more
7984	like `command_loop` does.
7985
7986	* test/lisp/international/mule-tests.el
7987	(mule-cmds--test-universal-coding-system-argument): New test.
7988
79892019-12-20  Dmitry Gutov  <dgutov@yandex.ru>
7990
7991	Speed up vc-dir-update
7992
7993	* lisp/vc/vc-dir.el (vc-dir-update): Speed up.
7994	(https://lists.gnu.org/archive/html/emacs-devel/2019-12/msg00568.html)
7995
79962019-12-20  Alan Mackenzie  <acm@muc.de>
7997
7998	Elisp manual: mention parse-partial-sexp as the source of a parser state, etc
7999
8000	* doc/lispref/syntax.texi (Parser State): mention parse-partial-sexp as a
8001	function returning a parser state, and the function to which one supplies a
8002	parser state as an argument for continued parsing.
8003	Refine the documentation of syntax-ppss-context, and correct the text
8004	introducing it and another function.
8005
80062019-12-20  Eli Zaretskii  <eliz@gnu.org>
8007
8008	Support setting OS names of threads on MS-Windows
8009
8010	* src/w32fns.c (setup_w32_kbdhook): Don't initialize
8011	is_debugger_present here...
8012	(globals_of_w32fns): ...initialize it here.  Also initialize
8013	the new global variable set_thread_description.
8014	* src/systhread.c: [WINDOWSNT] Include mbctype.h
8015	(w32_set_thread_name): New function.
8016	(MS_VC_EXCEPTION): New macro.
8017	(THREADNAME_INFO, IsDebuggerPresent_Proc)
8018	(SetThreadDescription_Proc): New typedefs.
8019	(w32_beginthread_wrapper): Call w32_set_thread_name to set the
8020	name of the new thread.
8021	* src/thread.h (struct thread_state): New member thread_name.
8022	* src/thread.c (Fmake_thread): Set the thread_name field of
8023	the new thread object.
8024	(run_thread): Free the thread_name member after the thread
8025	exits.
8026
80272019-12-20  Michael Albinus  <michael.albinus@gmx.de>
8028
8029	Fix error in tramp-process-sentinel
8030
8031	* lisp/net/tramp.el (tramp-process-sentinel): Check, that process
8032	buffer is alive.
8033
80342019-12-19  Juri Linkov  <juri@linkov.net>
8035
8036	* lisp/tab-bar.el: Sort tab names by recency for tab switching (bug#38624)
8037
8038	* lisp/tab-bar.el (tab-bar--tabs-recent): New function with code
8039	extracted from tab-bar--tab-index-recent.
8040	(tab-bar-switch-to-tab): Use tab-bar--tabs-recent in interactive spec
8041	to sort names of tabs by recency for default values of completing-read.
8042	(tab-prefix-map): Bind RET to tab-bar-select-tab-by-name, and 'm' to tab-move.
8043
80442019-12-18  Mattias Engdegård  <mattiase@acm.org>
8045
8046	More precise 'regexp-opt' documentation
8047
8048	* lisp/emacs-lisp/regexp-opt.el (regexp-opt):
8049	* doc/lispref/searching.texi (Regexp Functions):
8050	Be more specific about how the KEEP-ORDER argument actually works.
8051	If nil, the regexp guarantees a longest match; this is the behaviour
8052	that many callers implicitly rely on.
8053
80542019-12-18  Michael Albinus  <michael.albinus@gmx.de>
8055
8056	Fix an error with remote file name in compile.el
8057
8058	* lisp/progmodes/compile.el (compilation-get-file-structure):
8059	Compute proper remote file name.  (Bug#38648)
8060
80612019-12-17  Wilson Snyder  <wsnyder@wsnyder.org>
8062
8063	Verilog-Mode collected updates.
8064
8065	* lisp/progmodes/verilog-mode.el (verilog-compiler-directives): Support
8066	indenting `uselib.
8067	(verilog-read-decls): Fix AUTO* to ignore `protected regions.
8068	(verilog-read-auto-template-middle): Fix AUTO_TEMPLATEs with multiple
8069	module templates and at-REGEXPs, msg3183.  Reported by Berk Akinci.
8070
80712019-12-17  Michael Albinus  <michael.albinus@gmx.de>
8072
8073	Improve Tramp's file-name-completion
8074
8075	* lisp/net/tramp.el (tramp-handle-file-name-completion):
8076	Filter out "./" and "../", if there's only one other result.
8077
80782019-12-17  Mattias Engdegård  <mattiase@acm.org>
8079
8080	Adjust cursor column when auto-scrolling during rectangle selection
8081
8082	* lisp/mouse.el (mouse-drag-region-rectangle):
8083	Move cursor to the correct column during auto-scrolling both when
8084	crutches are used and not (bug#38641).  Reported by Konrad Podczeck.
8085
80862019-12-16  Andrii Kolomoiets  <andreyk.mad@gmail.com>
8087
8088	Make ls-files-unknown only return proper files, not directories
8089
8090	* lisp/vc/vc-git.el (vc-git-dir-status-goto-stage):
8091	Make ls-files-unknown only return proper files, not directories
8092	(bug#38615).
8093
80942019-12-16  Dmitry Gutov  <dgutov@yandex.ru>
8095
8096	vc-git-after-dir-status-stage: Avoid erroneous up-to-date status
8097
8098	* lisp/vc/vc-git.el (vc-git-after-dir-status-stage):
8099	Don't set `up-to-date' status if the previous stage (`diff-index')
8100	has assigned some other status to the file (bug#38615).
8101
81022019-12-16  Eli Zaretskii  <eliz@gnu.org>
8103
8104	Fix face merging for display strings broken by a recent commit
8105
8106	* src/xfaces.c (face_at_string_position): Revert the last
8107	change, as it cannot possibly solve bug#38563.
8108	* src/xdisp.c (face_at_pos): Fix a typo made during last
8109	change here, which broke face merging for display strings.
8110	(Bug#38633)
8111
81122019-12-15  Juri Linkov  <juri@linkov.net>
8113
8114	* lisp/isearch.el (isearch-xterm-paste): Use code like in 'xterm-paste'.
8115
8116	Add arg 'event' and use it to get pasted text.
8117	This allows pasting text on terminals to the
8118	search string (bug#18727, bug#36950).
8119
81202019-12-15  Juri Linkov  <juri@linkov.net>
8121
8122	Revert aa89c84e00d8dc85100e6fedab7631c415e6364d (bug#38457)
8123
8124	* src/editfns.c (Fmessage): Don't use minibuffer-message.
8125	(Fmessage_in_echo_area): Remove function message-in-echo-area.
8126	(syms_of_editfns): Remove variable message-in-echo-area.
8127
8128	* lisp/isearch.el (isearch--momentary-message): Remove message-in-echo-area.
8129	* lisp/minibuffer.el (minibuffer-message): Don't record message
8130	in the *Messages* buffer.
8131	(minibuffer-completion-help): Remove message-in-echo-area.
8132
8133	* lisp/subr.el (do-after-load-evaluation): Remove discard-input (bug#38560)
8134
81352019-12-15  Juri Linkov  <juri@linkov.net>
8136
8137	* lisp/tab-line.el (tab-line-auto-hscroll): Improve.
8138
8139	Better handling of tabs scrolled to the left.
8140	Don't scroll tabs that are already visible.
8141
8142	Remove setq of buffer-undo-list because undo is disabled
8143	anyway in internal buffers with name " *temp*".
8144
81452019-12-15  Juri Linkov  <juri@linkov.net>
8146
8147	* lisp/tab-bar.el (tab-bar-handle-mouse): Handle close button.
8148
8149	* lisp/tab-bar.el (tab-bar-select-tab): Message about selected tab (bug#38624)
8150
81512019-12-15  Robert Cochran  <robert-git@cochranmail.com>
8152
8153	* lisp/tab-bar.el (tab-bar-close-other-tabs): Use tab close customs
8154
81552019-12-15  Robert Cochran  <robert-git@cochranmail.com>
8156
8157	Document variables that affect tabs in function docstrings
8158
8159	* lisp/tab-bar.el (tab-bar-new-tab-to): Mention
8160	tab-bar-post-open-functions in docstring.
8161	(tab-bar-close-tab): Mention tab-bar-prevent-tab-functions,
8162	tab-bar-tab-pre-close-functions, and tab-bar-close-last-tab-choice.
8163
81642019-12-15  Phil Sainty  <psainty@orcon.net.nz>
8165
8166	New command 'diff-buffers'
8167
8168	* lisp/vc/diff.el (diff-buffers): New command.
8169	(diff, diff-no-select, diff-file-local-copy): Improve docstrings.
8170	* doc/emacs/files.texi:
8171	* etc/NEWS: Document new command, and the previously-undocumented
8172	ability for 'diff' to compare buffers.
8173
81742019-12-14  Paul Eggert  <eggert@cs.ucla.edu>
8175
8176	Adjust intptr_t advice
8177
8178	* doc/lispref/internals.texi (C Integer Types): Say to prefer
8179	uintptr_t when pointer arithmetic might overflow intptr_t.
8180
81812019-12-14  Paul Eggert  <eggert@cs.ucla.edu>
8182
8183	Remove nothing from union output_data
8184
8185	* src/frame.h (union output_data): Remove ‘nothing’ member.
8186	It has had no effect for quite some time.
8187	All uses removed.
8188
81892019-12-14  Eli Zaretskii  <eliz@gnu.org>
8190
8191	Update documentation of pure-space overflow
8192
8193	* doc/lispref/internals.texi (Garbage Collection)
8194	(Pure Storage):
8195	* src/alloc.c (Fgarbage_collect): Update the documentation of
8196	pure-space overflow for when pdumper is used.  (Bug#38492)
8197
81982019-12-14  Stefan Monnier  <monnier@iro.umontreal.ca>
8199
8200	* lisp/minibuffer.el (completion-pcm--find-all-completions): Simplify a bit
8201
82022019-12-14  Michael Albinus  <michael.albinus@gmx.de>
8203
8204	* lisp/net/tramp.el (tramp-initial-file-name-regexp): Make it more precise.
8205
82062019-12-14  Eli Zaretskii  <eliz@gnu.org>
8207
8208	Fix cross-references in ELisp manual
8209
8210	* doc/lispref/commands.texi (Misc Events, Special Events): Fix
8211	cross-references.  (Bug#38520)
8212
82132019-12-14  Eli Zaretskii  <eliz@gnu.org>
8214
8215	Don't warn about pure-space overflow
8216
8217	* lisp/startup.el (command-line-1): Don't warn about
8218	pure-space overflow if we were dumped with pdumper.
8219	(Bug#38492)
8220
82212019-12-13  Paul Eggert  <eggert@cs.ucla.edu>
8222
8223	Fix typo that broke GNU/Linux unexec build
8224
8225	* src/emacs.c (Fdump_emacs): Remove stray closing brace that
8226	breaks the build when configured with --with-dumping=unexec on
8227	GNU/Linux.  (Apparently everybody is using pdumper now.)
8228	I introduced the bug in 2019-07-09T00:50:39Z!eggert@cs.ucla.edu.
8229
82302019-12-13  Juanma Barranquero  <lekktu@gmail.com>
8231
8232	xfaces.c: Silence spurious maybe-uninitialized compiler warning
8233
8234	* src/xfaces.c (face_inherited_attr): Initialize 'ok' to false.
8235
82362019-12-13  João Távora  <joaotavora@gmail.com>
8237
8238	Disable undo in the process buffers of a JSONRPC connection
8239
8240	* lisp/jsonrpc.el (initialize-instance jsonrpc-process-connection):
8241	Use buffer-disable-undo in stdout and stderr buffers.
8242
8243	* lisp/jsonrpc.el (Version): Bump to 1.0.9
8244
82452019-12-13  Michael Albinus  <michael.albinus@gmx.de>
8246
8247	* lisp/net/tramp.el (tramp-unload-tramp): Autoload function body.
8248
82492019-12-13  Andrii Kolomoiets  <andreyk.mad@gmail.com>
8250
8251	python-shell-completion-at-point: respect simple-operator (Bug#37808)
8252
8253	* lisp/progmodes/python.el (python-shell-completion-at-point): Also
8254	stop on simple-operator while parsing input.
8255
82562019-12-13  Mattias Engdegård  <mattiase@acm.org>
8257
8258	Allow characters and single-char strings in rx charsets
8259
8260	The `not' and `intersection' forms, and `or' inside these forms,
8261	now accept characters and single-character strings as arguments.
8262	Previously, they had to be wrapped in `any' forms.
8263	This does not add expressive power but is a convenience and is easily
8264	understood.
8265
8266	* doc/lispref/searching.texi (Rx Constructs): Amend the documentation.
8267	* etc/NEWS: Announce the change.
8268	* lisp/emacs-lisp/rx.el (rx--charset-p, rx--translate-not)
8269	(rx--charset-intervals, rx): Accept characters and 1-char strings in
8270	more places.
8271	* test/lisp/emacs-lisp/rx-tests.el (rx-not, rx-charset-or)
8272	(rx-def-in-charset-or, rx-intersection): Test the change.
8273
82742019-12-13  Noam Postavsky  <npostavs@gmail.com>
8275
8276	Add prefix to help.el uni-confusable* vars
8277
8278	* lisp/help.el (help-uni-confusables, help-uni-confusables-regexp):
8279	Rename from uni-confusable and uni-confusables-regexp, respectively.
8280	(help-uni-confusable-suggestions): Use ngettext.  Use new variable
8281	name.
8282	* lisp/emacs-lisp/lisp-mode.el (lisp--match-confusable-symbol-character):
8283	Use new variable name.
8284
82852019-12-13  Eli Zaretskii  <eliz@gnu.org>
8286
8287	A better fix for extension of overlay string's faces
8288
8289	* src/xdisp.c (face_at_pos): Revert previous change that
8290	rejected the underlying face if it failed the filtering
8291	criteria.
8292	* src/xfaces.c (face_at_string_position): Reset the base face's
8293	attribute used for filtering faces if the attribute is t.
8294	(Bug#38563)
8295
82962019-12-12  Juri Linkov  <juri@linkov.net>
8297
8298	* lisp/emacs-lisp/edebug.el (edebug-remove-instrumentation): Use 'user-error'.
8299
8300	* lisp/wid-edit.el (widget-field): Add ':extend t' to defface (bug#37774)
8301
83022019-12-12  Mattias Engdegård  <mattiase@acm.org>
8303
8304	Use `or' instead of `union' for charset union in rx
8305
8306	Design change suggested by Stefan Monnier.
8307
8308	* doc/lispref/searching.texi (Rx Constructs):
8309	* etc/NEWS: Document.
8310	* lisp/emacs-lisp/rx.el (rx--translate-or): Detect charset arguments.
8311	(rx--charset-p): New.
8312	(rx--translate-not, rx--charset-intervals, rx--translate-union):
8313	Change from `union' to `or'.
8314	(rx--translate-form, rx--builtin-forms, rx): Remove `union'.
8315	* test/lisp/emacs-lisp/rx-tests.el (rx-union, rx-def-in-union)
8316	(rx-intersection): Rename tests and change `union' to `or' and `|'.
8317
83182019-12-12  Michael Albinus  <michael.albinus@gmx.de>
8319
8320	Optimize prompt search in Tramp
8321
8322	* lisp/net/tramp.el (tramp-search-regexp): New defun.
8323	(tramp-check-for-regexp, tramp-process-sentinel):
8324	* lisp/net/tramp-adb.el (tramp-adb-send-command-and-check)
8325	(tramp-adb-wait-for-output):
8326	* lisp/net/tramp-sh.el (tramp-wait-for-output)
8327	(tramp-send-command-and-check):
8328	* lisp/net/tramp-smb.el (tramp-smb-handle-set-file-acl):
8329	Bind search length.
8330
83312019-12-12  Juanma Barranquero  <lekktu@gmail.com>
8332
8333	Avoid spurious warning about maybe-uninitialized variable
8334
8335	* src/xdisp.c (face_at_pos): Initialize base_face_id to 0
8336	to silence the compiler.
8337
83382019-12-12  Eli Zaretskii  <eliz@gnu.org>
8339
8340	Fix face extension of overlay strings on buffer text with faces
8341
8342	* src/xdisp.c (face_at_pos): Reject the face returned by
8343	'underlying_face_id' when we are filtering by face attribute,
8344	and that attribute's value fails the filter test.  (Bug#38563)
8345
83462019-12-11  Robert Pluim  <rpluim@gmail.com>
8347
8348	Treat passed strings as raw-text when percent-escaping in epg
8349
8350	The strings contained in gpg keys can contain UTF-8 data, but can also
8351	use percent-escapes to encode non-ASCII chars.  When converting those
8352	escapes, use 'raw-text' coding system rather than 'string-to-unibyte',
8353	since the latter signals an error for non-ASCII characters.
8354
8355	* lisp/epg.el (epg--decode-percent-escape): Convert the passed
8356	string to raw-text before treating percent escapes (Bug#38512).
8357
83582019-12-11  Stefan Monnier  <monnier@iro.umontreal.ca>
8359
8360	* lisp/emacs-lisp/debug.el (debug-on-entry): Allow undefined functions
8361
8362	Allow placing debug-on-entry on a function not-yet-defined, which
8363	is convenient when the problem you're investigating happens while
8364	the relevant files are loaded.
8365
83662019-12-11  Stefan Monnier  <monnier@iro.umontreal.ca>
8367
8368	* lisp/font-lock.el (font-lock-fontify-region): Widen here (bug#38049)
8369
8370	(font-lock-default-fontify-region): Instead of here.
8371
83722019-12-11  Stefan Monnier  <monnier@iro.umontreal.ca>
8373
8374	* lisp/calculator.el (cl-lib): Require at run-time as well.
8375
8376	Needed since we pass the `cl-flet` macro to `eval` in `calculator-funcall`.
8377
83782019-12-11  Stefan Monnier  <monnier@iro.umontreal.ca>
8379
8380	* lisp/gnus/message.el (message-expand-name-standard-ui): New option
8381
8382	(message--old-style-completion-functions): New var.
8383	(message-completion-function): Allow functions on
8384	`message-completion-alist` to follow the capf protocol.
8385	(message-completion-alist): Adjust docstring accordingly.
8386	Simplify regexps and make them apply more liberally.
8387	(message-expand-group): Use the capf protocol.
8388	(completion-category-defaults): Use 'substring' completion style by
8389	default for email addresses.
8390	(message--bbdb-query-with-words, message--name-table): New functions.
8391	(message-expand-name): Use them to obey `message-expand-name-standard-ui`.
8392
83932019-12-11  Stefan Monnier  <monnier@iro.umontreal.ca>
8394
8395	* lisp/net/eudc.el (eudc-query-with-words): New function
8396
8397	Extracted from eudc-expand-inline.
8398	(eudc-expand-inline): Use it.
8399
84002019-12-11  Eli Zaretskii  <eliz@gnu.org>
8401
8402	Avoid infloop in face merging due to bad face spec
8403
8404	* src/xfaces.c (face_inherited_attr): Don't infloop if
8405	get_lface_attributes fails in the inner loop.  Reported by
8406	Yuri D'Elia <wavexx@thregr.org>.
8407
84082019-12-11  Paul Eggert  <eggert@cs.ucla.edu>
8409
8410	* src/xterm.c: Remove long-obsolete comments.
8411
84122019-12-11  Robert Pluim  <rpluim@gmail.com>
8413
8414	Check for GUI frame in ns_color_index_to_rgba
8415
8416	* src/nsterm.m (ns_color_index_to_rgba): Check that we're using a GUI
8417	frame before converting color (Bug#38564).
8418
84192019-12-11  Michael Albinus  <michael.albinus@gmx.de>
8420
8421	Don't spam the echo area and the *Messages* buffer in Tramp
8422
8423	* lisp/net/tramp-sh.el (tramp-sh-handle-vc-registered):
8424	When called during `revert-buffer', don't spam the echo area and
8425	the *Messages* buffer.
8426
84272019-12-10  Paul Eggert  <eggert@cs.ucla.edu>
8428
8429	Improve tv_nsec doc
8430
8431	* doc/lispref/internals.texi (Module Values):
8432	Document tv_nsec more accurately.
8433
84342019-12-10  Paul Eggert  <eggert@cs.ucla.edu>
8435
8436	Just use size_t for emacs_limb_t
8437
8438	* src/emacs-module.h.in: Do not include limits.h; no longer needed.
8439	(emacs_limb_t, EMACS_LIMB_MAX): Now size_t and SIZE_MAX.
8440
84412019-12-10  Mattias Engdegård  <mattiase@acm.org>
8442
8443	Add `union' and `intersection' to rx (bug#37849)
8444
8445	These character set operations, together with `not' for set
8446	complement, improve the compositionality of rx, and reduce duplication
8447	in complicated cases.  Named character classes are not permitted in
8448	set operations.
8449
8450	* lisp/emacs-lisp/rx.el (rx--translate-any): Split into multiple
8451	functions.
8452	(rx--foldl, rx--parse-any, rx--generate-alt, rx--intervals-to-alt)
8453	(rx--complement-intervals, rx--intersect-intervals)
8454	(rx--union-intervals, rx--charset-intervals, rx--charset-union)
8455	(rx--charset-all, rx--charset-intersection, rx--translate-union)
8456	(rx--translate-intersection): New.
8457	(rx--translate-not, rx--translate-form, rx--builtin-forms, rx):
8458	Add `union' and `intersection'.
8459	* test/lisp/emacs-lisp/rx-tests.el (rx-union ,rx-def-in-union)
8460	(rx-intersection, rx-def-in-intersection): New tests.
8461	* doc/lispref/searching.texi (Rx Constructs):
8462	* etc/NEWS:
8463	Document `union' and `intersection'.
8464
84652019-12-10  Alan Third  <alan@idiocy.org>
8466
8467	Fix XBM files on NS (bug#26133)
8468
8469	Reinstate some of the functionality removed in commit
8470	67a878f78f879ce534232408c34dd11f42dd802b.
8471
8472	* src/nsimage.m (ns_image_from_XBM): Use new reverseBytes argument.
8473	([EmacsImage initFromXBM:width:height:fg:bg:reverseBytes:]): Add
8474	ability to reverse the contents of each byte for use with XBMs, while
8475	still working with fringe bitmaps.
8476	* src/nsterm.h
8477	([EmacsImage initFromXBM:width:height:fg:bg:reverseBytes:]): Modified
8478	function definition.
8479	* src/nsterm.m (ns_draw_fringe_bitmap): Use new reverseBytes argument.
8480
84812019-12-10  Alan Third  <alan@idiocy.org>
8482
8483	Fix dabbrev-completion (bug#17899)
8484
8485	* lisp/dabbrev.el (dabbrev--check-all-buffers): Add new variable.
8486	(dabbrev-completion): Lexical scoping means we can't use let to
8487	override global variables, so use setq.
8488	(dabbrev--reset-global-variables): Reset new variable.
8489	(dabbrev--make-friend-buffer-list): Use new variable.
8490	* test/lisp/dabbrev-tests.el (dabbrev-completion-test):
8491	(dabbrev-completion-test-with-argument): New tests.
8492
84932019-12-10  Alan Third  <alan@idiocy.org>
8494
8495	Fix mouse-position on macOS (bug#4892)
8496
8497	* src/nsterm.m (ns_mouse_position): Implement a search for the frame
8498	under the mouse pointer.
8499
85002019-12-10  Federico Tedin  <federicotedin@gmail.com>
8501
8502	Simplify call to add-to-history in read_minibuf
8503
8504	* src/minibuf.c (read_minibuf): Avoid restoring the previous buffer,
8505	as this is already done at the end of the function; call
8506	`add-to-history' after that point.
8507
85082019-12-09  Paul Eggert  <eggert@cs.ucla.edu>
8509
8510	Spelling fixes
8511
85122019-12-09  Paul Eggert  <eggert@cs.ucla.edu>
8513
8514	Prefer static to extern in ebrowse
8515
8516	* lib-src/ebrowse.c (info_where, info_cls, info_member)
8517	(info_position, options, yyival, yytext, yytext_end, yyout)
8518	(yyline, filename, is_ident, is_digit, is_white, f_append)
8519	(f_verbose, f_very_verbose, f_structs, f_regexps)
8520	(f_nested_classes, min_regexp, max_regexp, inbuffer, in)
8521	(inbuffer_size, string_start, class_table, member_table)
8522	(namespace_alias_table, global_symbols, current_namespace)
8523	(all_namespaces, namespace_stack, namespace_stack_size)
8524	(namespace_sp, tk, keyword_table, search_path)
8525	(search_path_tail, scope_buffer, scope_buffer_size)
8526	(scope_buffer_len): Now static.
8527	(options): Now const.
8528
85292019-12-09  Paul Eggert  <eggert@cs.ucla.edu>
8530
8531	* lib-src/etags.c (pot_etags_version): Remove; unused.
8532
8533	* lib-src/etags.c (Forth_suffixes): Now static.
8534
85352019-12-09  Dmitry Gutov  <dgutov@yandex.ru>
8536
8537	Rename faces used in faces-tests.el
8538
8539	* test/data/themes/faces-test-light-theme.el:
8540	* test/data/themes/faces-test-dark-theme.el: Update accordingly.
8541
8542	* test/lisp/faces-tests.el (faces--test-extend-with-themes):
8543	Don't use the diff-mode faces.  Rename the definitions.
8544
85452019-12-09  Dmitry Gutov  <dgutov@yandex.ru>
8546
8547	Make ':extend' inherited from default spec unless overridden
8548
8549	* lisp/faces.el (face-spec-recalc): Handle the :extend attribute
8550	specially and always inherit it from the default spec unless
8551	overwritten in a theme (bug#37774).
8552
8553	* test/lisp/faces-tests.el (faces--test-data-dir): New variable.
8554	(faces--test-extend-with-themes): Use test themes instead of ones
8555	from etc/themes.  Update expected values.
8556
8557	* test/data/themes/faces-test-dark-theme.el: New file.
8558
8559	* test/data/themes/faces-test-light-theme.el: New file.
8560
8561	* doc/lispref/display.texi (Face Attributes):
8562	Update the description of ':extend'.
8563
8564	* etc/NEWS: Update the entry for ':extend'.
8565
8566	* etc/themes/adwaita-theme.el:
8567	* etc/themes/deeper-blue-theme.el:
8568	* etc/themes/dichromacy-theme.el:
8569	* etc/themes/leuven-theme.el:
8570	* etc/themes/light-blue-theme.el:
8571	* etc/themes/manoj-dark-theme.el:
8572	* etc/themes/misterioso-theme.el:
8573	* etc/themes/tango-dark-theme.el:
8574	* etc/themes/tango-theme.el:
8575	* etc/themes/tsdh-dark-theme.el:
8576	* etc/themes/tsdh-light-theme.el:
8577	* etc/themes/wheatgrass-theme.el:
8578	* etc/themes/wombat-theme.el: Remove the now-redundant ':extend'
8579	attribute in all the themes.
8580
85812019-12-09  Juri Linkov  <juri@linkov.net>
8582
8583	* lisp/emacs-lisp/map-ynp.el (read-answer): Use [remap self-insert-command]
8584
8585	This reverts the last change that replaced [remap self-insert-command]
8586	with [t].  The user should have freedom of using any command
8587	in the minibuffer.  (bug#32738)
8588
85892019-12-09  Paul Eggert  <eggert@cs.ucla.edu>
8590
8591	Improve module bignum doc
8592
8593	* doc/lispref/internals.texi (Module Values): Tighten up
8594	wording and code, and make the long example self-contained.
8595	Fit things in margins.
8596
85972019-12-09  Dmitry Gutov  <dgutov@yandex.ru>
8598
8599	project-find-regexp: Default to symbol at point
8600
8601	* lisp/progmodes/project.el (project--read-regexp):
8602	Don't rely on the Xref backend to provide the default value.
8603
86042019-12-09  Eli Zaretskii  <eliz@gnu.org>
8605
8606	Add more tests for face :extend attribute
8607
8608	* test/lisp/faces-tests.el (faces--test-extend-with-themes):
8609	New set of tests for verifying the :extend attribute across
8610	theme loading and unloading, and also via face inheritance.
8611	(Bug#37774)
8612
86132019-12-08  Juri Linkov  <juri@linkov.net>
8614
8615	* lisp/emacs-lisp/map-ynp.el (read-answer): Allow more SHORT-ANSWER types.
8616
8617	Treat SHORT-ANSWER as a character is characterp returns non-nil.
8618	Otherwise, use key-description to print it.
8619	Use catch-all [t] in keymap instead of [remap self-insert-command].
8620	(bug#32738)
8621
86222019-12-08  Juri Linkov  <juri@linkov.net>
8623
8624	* doc/emacs/mini.texi (Minibuffer Edit): Add minibuffer-depth-indicate-mode.
8625
8626	* doc/emacs/search.texi (Regexp Backslash): Change xref from
8627	"(elisp) Syntax Tables" to "(elisp) Syntax Class Table".
8628
8629	* doc/lispref/display.texi (Other Display Specs): Change xref from
8630	"Images" to "Image Descriptors".
8631
8632	(bug#38519)
8633
86342019-12-08  Juri Linkov  <juri@linkov.net>
8635
8636	* lisp/simple.el (shell-command-on-region): Use set-buffer-major-mode.
8637
8638	This enables globalized minor modes explicitly after get-buffer-create
8639	creates "*Shell Command Output*" buffer (bug#38111).
8640
86412019-12-08  Juri Linkov  <juri@linkov.net>
8642
8643	Move recenter/scroll keybindings from minibuffer-local-map to read-char map
8644
8645	* lisp/minibuffer.el (minibuffer-local-map): Move remap of
8646	recenter/scroll keybindings to read-char-from-minibuffer-map.
8647
8648	* lisp/subr.el (read-char-from-minibuffer-map): Move remap of
8649	recenter/scroll keybindings here from minibuffer-local-map.
8650	(bug#38502)
8651
86522019-12-08  Juri Linkov  <juri@linkov.net>
8653
8654	* lisp/tab-line.el (tab-line-format): Use composite cache key (bug#38522)
8655
86562019-12-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
8657
8658	Continued fixes to gnus registry loading
8659
8660	* lisp/gnus/gnus-registry.el (gnus-registry-db): Do not initialize
8661	this variable to an empty database, that should only be done for new
8662	databases.
8663	(gnus-registry-load): Remove "force" argument, don't check if the
8664	database is already loaded, as we're only going to load it once.
8665	(gnus-registry-initialize): Either load the db directly, or set up a
8666	hook to do it later.
8667	(gnus-registry-install-hooks): Don't load on
8668	gnus-read-newsrc-el-hook.
8669
86702019-12-07  Juri Linkov  <juri@linkov.net>
8671
8672	* lisp/man.el (Man-width-max): New defcustom (bug#32536, bug#9385)
8673
8674	(Man-columns): New buffer-local variable.
8675	(Man-columns): New function.
8676	(Man-start-calling): Call Man-columns and set buffer-local Man-columns.
8677	(Man--window-state-change-timer): New internal variable.
8678	(Man--window-state-change): New internal function.
8679	(Man-fit-to-window): New function.
8680	(Man-mode): Add Man--window-state-change to local hook
8681	window-state-change-functions.
8682
8683	* lisp/image-mode.el (image-fit-to-window): Add window arg to
8684	window-buffer call.
8685
86862019-12-07  Robert Cochran  <robert-git@cochranmail.com>
8687
8688	Add hooks for after tab open, before close, and to prevent closing
8689
8690	* lisp/tab-bar.el (tab-bar-tab-post-open-functions,
8691	tab-bar-tab-prevent-close-functions, tab-bar-tab-pre-close-functions):
8692	New defcustoms
8693	(tab-bar-new-tab-to, tab-bar-close-tab): Use new defcustoms
8694
86952019-12-07  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
8696
8697	Ignore comments and strings when matching JSX
8698
8699	* lisp/progmodes/js.el (js-jsx--matching-close-tag-pos): Ignore
8700	comments and strings.
8701	* test/manual/indent/jsx-comment-string.jsx: New test.
8702
87032019-12-07  Alan Mackenzie  <acm@muc.de>
8704
8705	CC Mode: Allow most functions on post-self-insert-hook to be called
8706
8707	This contrasts with the previous state where no such functions got called.
8708	This fixes bug #38406.
8709
8710	* lisp/progmodes/cc-cmds.el (c--unsafe-post-self-insert-hook-functions): New
8711	variable.
8712	(c--call-post-self-insert-hook-more-safely-1): New function.
8713	(c--call-post-self-insert-hook-more-safely): New macro.
8714	(c-electric-pound, c-electric-brace, c-electric-slash, c-electric-star)
8715	(c-electric-semi&comma, c-electric-colon, c-electric-lt-gt, c-electric-paren):
8716	Invoke c--call-post-self-insert-hook-more-safely (which calls most of the hook
8717	post-self-insert-hook) at the end of each of the commands.
8718
87192019-12-07  Michael Albinus  <michael.albinus@gmx.de>
8720
8721	Add unload code to tramp-integration.el
8722
8723	* lisp/net/tramp-integration.el (info-lookup->mode-cache)
8724	(info-lookup->topic-cache, info-lookup-alist): Declare.
8725	(ido, ivy, info-look): Adapt `tramp-integration-unload-hook'.
8726
87272019-12-07  Eli Zaretskii  <eliz@gnu.org>
8728
8729	Corrections in semantic.texi
8730
8731	* doc/misc/semantic.texi (Parser code, Tag handling)
8732	(Semanticdb Internals, Analyzer Internals, Tools): Fix file
8733	names according to what was actually imported from the
8734	original CEDET.  (Bug#38451)
8735
87362019-12-07  Eli Zaretskii  <eliz@gnu.org>
8737
8738	Fix documentation of '-position' server command
8739
8740	* lisp/server.el (server-process-filter): Fix the description
8741	of "-position" command to match the reality.  (Bug#38443)
8742
87432019-12-07  Andrii Kolomoiets  <andreyk.mad@gmail.com>
8744
8745	Ensure buffer is alive in python-pdbtrack-unset-tracked-buffer
8746
8747	* lisp/progmodes/python.el (python-pdbtrack-unset-tracked-buffer):
8748	Check if buffer `python-pdbtrack-tracked-buffer' is alive.
8749	(Bug#38413)
8750
87512019-12-07  Eli Zaretskii  <eliz@gnu.org>
8752
8753	Fix fallout from fixing bug#37782
8754
8755	* src/keyboard.c (read_key_sequence): Modify the fix for
8756	bug#37782 so that it applies only to keyboard keys, not to
8757	other events, such as a new buffer.  (Bug#38132)
8758
87592019-12-07  Eli Zaretskii  <eliz@gnu.org>
8760
8761	Minor fix in the ELisp manual
8762
8763	* doc/lispref/files.texi (Saving Buffers): Remove the
8764	reference to the obsolete Fast Lock mode.  (Bug#37956)
8765
87662019-12-06  Eli Zaretskii  <eliz@gnu.org>
8767
8768	Remove duplicate macros from ses.el
8769
8770	* lisp/ses.el (1value, noreturn): Macros deleted, as we
8771	nowadays have them in subr.el.  (Bug#38514)
8772
87732019-12-06  Paul Eggert  <eggert@cs.ucla.edu>
8774
8775	Test format-time-string padding
8776
8777	Adapted from tests written by Stephen Gildea.
8778	* test/src/timefns-tests.el:
8779	(format-time-string-padding-minimal-deletes-unneeded-zeros)
8780	(format-time-string-padding-minimal-retains-needed-zeros)
8781	(format-time-string-padding-spaces)
8782	(format-time-string-padding-zeros-adds-on-insignificant-side):
8783	New tests.
8784
87852019-12-06  Paul Eggert  <eggert@cs.ucla.edu>
8786
8787	Update from Gnulib
8788
8789	This incorporates:
8790	2019-12-06 nstrftime: better width support for %N, %z
8791	2019-12-03 Avoid hassles caused by [[noreturn]] in C++
8792	2019-12-02 Fix mistakes in --enable-threads=isoc fixes from 2019-12-01
8793	* admin/merge-gnulib (AVOIDED_MODULES): Avoid pthread-h.
8794	* lib/_Noreturn.h, lib/nstrftime.c, m4/gnulib-common.m4:
8795	* m4/timer_time.m4:
8796	Copy from Gnulib.
8797	* lib/gnulib.mk.in: Regenerate.
8798
87992019-12-06  Michael Albinus  <michael.albinus@gmx.de>
8800
8801	Configure info-look.el to recognize Tramp symbols
8802
8803	* lisp/net/tramp-integration.el (info-lookup->cache)
8804	(info-lookup->mode-value, info-lookup->other-modes)
8805	(info-lookup->topic-value, info-lookup-maybe-add-help)
8806	(info-lookup-cache): Declare.
8807	(info-look): Configure info-look.el to recognize Tramp symbols.
8808
88092019-12-06  Eli Zaretskii  <eliz@gnu.org>
8810
8811	Clarify documentation of functions that use the default face
8812
8813	* lisp/simple.el (default-font-height, default-font-width)
8814	(default-line-height): Say in the doc strings that the default
8815	face these functions use is for the currently selected frame.
8816
8817	* doc/lispref/display.texi (Attribute Functions)
8818	(Low-Level Font): Document more clearly the dependence of the
8819	results of 'face-font', 'default-font-width', and
8820	'default-font-height' on the frame's definition of the default
8821	face.
8822
88232019-12-06  Eli Zaretskii  <eliz@gnu.org>
8824
8825	Fix set-marker when the position is larger than the largest buffer
8826
8827	* src/marker.c (set_marker_internal): Handle the case where
8828	POSITION is beyond PTRDIFF_MAX, which can happen if Emacs was
8829	built --with-wide-int.  Bug uncovered by the recently added
8830	overlay tests.
8831
88322019-12-05  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
8833
8834	Merge branch 'completion-first-difference_face'
8835
88362019-12-05  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
8837
8838	Fix setting completions* faces in
8839
8840	`completion-pcm--hilit-commonality` so that these faces doesn't
8841	override possible already existing faces in other UIs.
8842
8843	* lisp/minibuffer.el (completion-pcm--hilit-commonality): Use
8844	`add-face-text-property` instead of `put-text-property`.
8845
88462019-12-05  Andreas Politz  <politza@hochschule-trier.de>
8847
8848	* test/src/buffer-tests.el: Add loads of overlay tests
8849
8850	Taken from the `feature/noverlay` branch.
8851	Suggested by Vladimir Kazanov <vekazanov@gmail.com>.
8852
88532019-12-05  Paul Eggert  <eggert@cs.ucla.edu>
8854
8855	2019-12-05 regexp lint fixes
8856
8857	* lisp/org/org-agenda.el (org-agenda-filter):
8858	Fix unescaped literal ‘+’ in regexp.  Reported by Mattias Engdegård in:
8859	https://lists.gnu.org/r/emacs-devel/2019-12/msg00215.html
8860	* lisp/org/org.el (org-clone-subtree-with-time-shift):
8861	Fix a regexp typo that mishandled strings like ‘\1d’,
8862	reported by the same emaikl.
8863	* lisp/progmodes/verilog-mode.el (verilog-inject-inst):
8864	Omit unnecessary ‘?’ in regexp.  Reported by Mattias Engdegård in:
8865	https://lists.gnu.org/r/emacs-devel/2019-12/msg00217.html
8866
88672019-12-05  Eli Zaretskii  <eliz@gnu.org>
8868
8869	Another fix for :extend when :inherit is used
8870
8871	* src/xfaces.c (face_inherited_attr): Support also values of
8872	:inherit which are lists.  (Bug#37774)
8873
88742019-12-05  Eli Zaretskii  <eliz@gnu.org>
8875
8876	Minor copyedits of 'jit-lock-antiblink-grace's docs
8877
8878	* lisp/jit-lock.el (jit-lock-antiblink-grace):
8879	* etc/NEWS (value): Reword the NEWS entry and the doc string.
8880
88812019-12-05  Eli Zaretskii  <eliz@gnu.org>
8882
8883	Fix recent modifications in emacs-module-tests
8884
8885	* test/data/emacs-module/mod-test.c (extract_big_integer): Fix
8886	calculation of size of 'magnitude' when 'emacs_limb_t' is wider
8887	than 'unsigned long'.
8888
8889	* test/src/emacs-module-tests.el
8890	(module--test-assertions--load-non-live-object)
8891	(module--test-assertions--call-emacs-from-gc): On MS-Windows,
8892	check also mod-test-emacs with ".exe" appended, before
8893	skipping the tests.
8894
88952019-12-05  Federico Tedin  <federicotedin@gmail.com>
8896
8897	Make HIST arg of read-from-minibuffer work with buffer-local vars
8898
8899	* lisp/simple.el (minibuffer-history-values): New function, should be
8900	used to access the minibuffer input history variable when the
8901	minibuffer might be active.  If the variable is buffer-local, the
8902	previous buffer's value will be used.
8903	(goto-history-element): Use the new function to access the minibuffer
8904	history.
8905	(minibuffer-history-isearch-wrap): Use the new function to access the
8906	minibuffer history.
8907	* src/minibuf.c (read_minibuf): Switch to previous buffer temporarily
8908	before updating history list (Bug#38317).
8909	(read-from-minibuffer): Extend documentation to mention that the
8910	result of using the command will be added to the history list by
8911	default.
8912	* doc/lispref/minibuf.texi (Minibuffer History): Mention the
8913	possibility of using a buffer-local variable as history.
8914	* etc/NEWS: Announce changes.
8915
89162019-12-04  Paul Eggert  <eggert@cs.ucla.edu>
8917
8918	Pacify GCC 9.2.1 with recent module changes
8919
8920	* src/emacs-module.c (module_encode): Remove unused decl.
8921	(module_extract_big_integer): Pacify gcc -Wenum-compare.
8922
89232019-12-04  Paul Eggert  <eggert@cs.ucla.edu>
8924
8925	Fix regex repetition of repetitions
8926
8927	Problems reported by Mattias Engdegård in:
8928	https://lists.gnu.org/r/emacs-devel/2019-12/msg00066.html
8929	* lisp/gnus/gnus-util.el (gnus-emacs-version):
8930	* lisp/mail/rfc2368.el (rfc2368-mailto-regexp):
8931	* lisp/net/tramp-sh.el (tramp-sh-inotifywait-process-filter):
8932	* lisp/obsolete/terminal.el (te-parse-program-and-args):
8933	* lisp/org/org-table.el (org-table-wrap-region):
8934	* lisp/progmodes/verilog-mode.el (verilog-inject-inst):
8935	Avoid repetition-of-repetition in regexp.
8936
89372019-12-04  Philipp Stephani  <phst@google.com>
8938
8939	Fix small bugs introduced in commit 096be9c454
8940
8941	* src/module-env-27.h:
8942	* src/emacs-module.c (module_make_big_integer): Use 'emacs_limb_t'
8943	instead of 'unsigned long' consistently
8944
89452019-12-04  Juri Linkov  <juri@linkov.net>
8946
8947	* lisp/tab-line.el: Cache the tab-line-format template.
8948
8949	(tab-line-format): Cache the result of tab-line-format-template in window.
8950	(tab-line-format-template): New function that returns the value to cache.
8951
89522019-12-04  Juri Linkov  <juri@linkov.net>
8953
8954	* lisp/windmove.el (windmove-display-new-tab): New command.
8955
8956	(windmove-display-default-keybindings): Bind it to '?t'.
8957	(windmove-display-in-direction): Call tab-bar-new-tab when 'dir' is 'new-tab'.
8958
89592019-12-04  Juri Linkov  <juri@linkov.net>
8960
8961	* lisp/tab-bar.el (tab-bar-get-buffer-tab): Move code closer to its use.
8962
89632019-12-04  Juri Linkov  <juri@linkov.net>
8964
8965	* lisp/tab-bar.el (switch-to-buffer-other-tab): Use display-buffer-in-tab.
8966
8967	(tab-bar--tab): Use float-time instead of integer.
8968	This improves correct detection of recent tabs switched within 1 sec.
8969	(tab-bar--current-tab, tab-bar--current-tab-index)
8970	(tab-bar--tab-index, tab-bar--tab-index-by-name)
8971	(tab-bar--tab-index-recent): Add optional arg FRAME.
8972	(tab-bar-move-tab-to-frame): Add with-selected-frame for tab-bar-close-tab.
8973	(tab-bar--reusable-frames): New function.
8974	(tab-bar-get-buffer-tab): Add index to the found tab.
8975	(display-buffer-in-tab): Use `tab-name' entry instead of `name'.
8976	Add `reusable-frames' entry.  (bug#38354)
8977
89782019-12-04  João Távora  <joaotavora@gmail.com>
8979
8980	New jit-lock-antiblink-grace feature
8981
8982	* lisp/jit-lock.el (jit-lock-antiblink-grace): New defcustom.
8983	(jit-lock--antiblink-line-beginning-position)
8984	(jit-lock--antiblink-string-or-comment): New variables
8985	(jit-lock--antiblink-post-command): New helper.
8986	(jit-lock-mode): Tweak post-command-hook and
8987	jit-lock-context-timer.
8988
8989	* etc/NEWS: Mention jit-lock-antiblink-grace
8990
89912019-12-04  Philipp Stephani  <phst@google.com>
8992
8993	Use new function encode_string_utf_8 for the module API, too
8994
8995	* src/emacs-module.c (module_encode): Remove.
8996	(module_copy_string_contents): Use encode_string_utf_8.
8997	(syms_of_module): Define symbol 'unicode-string-p'.
8998
89992019-12-04  Philipp Stephani  <phst@google.com>
9000
9001	* src/emacs-module.c: Add a few more restrictions for emacs-module.h
9002
90032019-12-04  Philipp Stephani  <phst@google.com>
9004
9005	Change module interface to no longer use GMP objects directly.
9006
9007	As described in the new comment added to emacs-module.c, using GMP
9008	directly in the module interface has significant downsides: it couples
9009	the module interface directly to the implementation and requires
9010	module authors to link their module against the same GMP library as
9011	Emacs itself, which is often difficult and an unnecessary burden.  By
9012	picking a representation for the magnitude that often matches the one
9013	used by GMP, we can avoid overhead when converting from and to GMP in
9014	most cases.
9015
9016	Loading the test module in test/data/emacs-module and evaluating
9017
9018	(dotimes (_ 10000)
9019	  (mod-test-double (* 2 most-negative-fixnum)))
9020
9021	under Callgrind shows that on my (GNU/Linux) machine Emacs only spends
9022	10% of the CPU time of mod-test-double in mpz_import and mpz_export
9023	combined, even though that function does little else.  (By contrast,
9024	30% is spent in allocate_pseudovector.)
9025
9026	* src/emacs-module.h.in: Don't check EMACS_MODULE_GMP.  Don't include
9027	gmp.h.  Remove emacs_mpz structure.  Instead, define type alias
9028	emacs_limb_t and macro EMACS_LIMB_MAX.
9029
9030	* src/module-env-27.h: Change interface of extract_big_integer and
9031	make_big_integer to take a sign-magnitude representation instead of
9032	mpz_t.
9033
9034	* src/emacs-module.c: Don't check EMACS_MODULE_GMP or
9035	EMACS_MODULE_HAVE_MPZ_T.  Add a comment about the chosen
9036	implementation.
9037	(module_extract_big_integer, module_make_big_integer): Reimplement
9038	without using mpz_t in the interface.
9039
9040	* doc/lispref/internals.texi (Module Values): Adapt function
9041	documentation and example.  Stop mentioning GMP and EMACS_MODULE_GMP.
9042
9043	* test/data/emacs-module/mod-test.c: Don't define EMACS_MODULE_GMP or
9044	EMACS_MODULE_HAVE_MPZ_T.
9045	(memory_full, extract_big_integer, make_big_integer): New helper
9046	functions, identical to example in the Info documentation.
9047	(Fmod_test_nanoseconds, Fmod_test_double): Adapt to new interface.
9048
90492019-12-04  Bastien  <bzg@gnu.org>
9050
9051	etc/ORG-NEWS: Fix contents
9052
90532019-12-04  Juanma Barranquero  <lekktu@gmail.com>
9054
9055	* lisp/doc-view.el (doc-view-doc-type): Doc fix.
9056
90572019-12-04  Mattias Engdegård  <mattiase@acm.org>
9058
9059	Don't use the return value of 'push'
9060
9061	Although 'push' returns the modified list, it isn't actually
9062	documented to do so, so don't rely on it.
9063
9064	* lisp/emacs-lisp/rx.el (rx--translate-any): Add progn.
9065
90662019-12-03  Juanma Barranquero  <lekktu@gmail.com>
9067
9068	Silence warnings in Org 9.3
9069
9070	* lisp/org/ob-eshell.el (eshell-send-input): Declare.
9071	(eshell-last-output-start, eshell-last-output-end)
9072	(eshell-last-input-end): Defvar.
9073
9074	* lisp/org/org-keys.el (cl-lib): Require.
9075	(org-CUA-compatible): Move up defvaralias.
9076
90772019-12-03  Juri Linkov  <juri@linkov.net>
9078
9079	* lisp/tab-bar.el (tab-bar-move-tab-to-frame): New command (bug#38354)
9080
9081	(tab-bar-tabs, tab-bar--tab): Add optional arg FRAME.
9082	(tab-bar-get-buffer-tab): Funcall tab-bar-tabs-function with arg FRAME
9083	instead of using with-selected-frame.
9084
90852019-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
9086
9087	* lisp/gnus/message.el (message-sendmail-envelope-from): Fix typo
9088
9089	Reported by David Edmondson <dme@dme.org>.
9090
90912019-12-03  Bastien  <bzg@gnu.org>
9092
9093	Update Org to 9.3
9094
90952019-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
9096
9097	(message-sendmail-envelope-from): Obey `mail-envelope-from` even if set later
9098
9099	* lisp/gnus/message.el (message-sendmail-envelope-from): Change default.
9100	(message--sendmail-envelope-from): New function.
9101	(message-sendmail-envelope-from): Use it.
9102	* lisp/mail/emacsbug.el (report-emacs-bug): Use it.
9103
91042019-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
9105
9106	* lisp/minibuffer.el (completion-pcm--optimize-pattern): New function
9107
9108	This fixes bug#38458 where a final `point` in the pattern prevented
9109	the expected normal behavior of point moving after the completion
9110	of the final implicit `any`.
9111
9112	(completion-pcm--find-all-completions)
9113	(completion-substring--all-completions): Use it.
9114	(completion-basic--pattern): Don't both removing "" any more.
9115	(completion-basic-try-completion): Use it as well as
9116	`completion-basic--pattern`.
9117
91182019-12-03  Mattias Engdegård  <mattiase@acm.org>
9119
9120	Avoid duplicated character classes in rx
9121
9122	For example, (any digit digit) should produce "[[:digit:]]",
9123	not "[[:digit:][:digit:]]".
9124
9125	* lisp/emacs-lisp/rx.el (rx--translate-any): Deduplicate character classes.
9126	* test/lisp/emacs-lisp/rx-tests.el (rx-any): Add test case.
9127
91282019-12-02  Tobias Bading  <tbading@web.de>  (tiny change)
9129
9130	Fix incorrect GTK menus on HiDPI monitors with scaling factor > 1
9131
9132	This should fix Bug#31223, Bug#28106, Bug#23672 as well as Ubuntu bug
9133	https://bugs.launchpad.net/ubuntu/+source/emacs25/+bug/1695228
9134
9135	Also fixes the formerly unscaled Y value returned by
9136	frame-monitor-workarea (and display-monitor-attributes-list).
9137
9138	For details on why some GTK menus were empty please see thread
9139	https://lists.gnu.org/archive/html/emacs-devel/2019-11/msg01061.html
9140
9141	* src/gtkutil.c (menubar_map_cb, xg_update_frame_menubar): Scale up
9142	req.height so that the menu bar's height is in device pixels as
9143	expected.
9144	(xg_event_is_for_menubar): Scale down rec.x and rec.y so that
9145	gtk_widget_intersect() works as intended.
9146	* src/xfns.c (Fx_display_monitor_attributes_list): Scale work.x and
9147	work.y up to be in device pixels.
9148
91492019-12-02  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9150
9151	Fix typo in populating otf_capability method for HarfBuzz
9152
9153	* src/ftcrfont.c (syms_of_ftcrfont_for_pdumper) [HAVE_HARFBUZZ]:
9154	* src/ftfont.c (syms_of_ftfont_for_pdumper) [HAVE_HARFBUZZ]:
9155	* src/w32uniscribe.c (syms_of_w32uniscribe_for_pdumper) [HAVE_HARFBUZZ]:
9156	* src/xftfont.c (syms_of_xftfont_for_pdumper) [HAVE_HARFBUZZ]: Fix typos.
9157
91582019-12-02  Juri Linkov  <juri@linkov.net>
9159
9160	New functions window-state-buffers and tab-bar-get-buffer-tab (bug#38354)
9161
9162	* lisp/window.el (window-state-buffers): New function.
9163	* lisp/tab-bar.el (tab-bar-get-buffer-tab): New function.
9164
9165	* lisp/emacs-lisp/seq.el (seq-some): Add autoload cookie.
9166
9167	* lisp/desktop.el (desktop-buffers-not-to-save-function): New variable.
9168	(desktop-save-buffer-p): Use it.
9169
91702019-12-02  Juanma Barranquero  <lekktu@gmail.com>
9171
9172	Don't save/restore font-backend in framesets (bug#38442)
9173
9174	* lisp/frameset.el (frameset-persistent-filter-alist):
9175	Add :never filter for `font-backend'.
9176
91772019-12-01  Juanma Barranquero  <lekktu@gmail.com>
9178
9179	ibuf-ext.el: Fix previous change
9180
9181	* lisp/ibuf-ext.el (ibuffer-generate-filter-groups): Use
9182	`cl-destructuring-bind' instead of `cl-multiple-value-bind', as we
9183	don't want to assume how multiple-values are implemented, and we
9184	know a list is being returned anyway.  Suggested by Stefan Monnier.
9185
91862019-12-01  Dmitry Gutov  <dgutov@yandex.ru>
9187
9188	* lisp/vc/diff-mode.el (diff-context): Set 'extend t' (bug#37774).
9189
91902019-12-01  Mattias Engdegård  <mattiase@acm.org>
9191
9192	Temporary enable transient-mark-mode for rectangle selection
9193
9194	* lisp/mouse.el (mouse-drag-region-rectangle):
9195	Enable transient-mark-mode during selection (bug#38431).
9196
91972019-12-01  Michael Albinus  <michael.albinus@gmx.de>
9198
9199	Suppress superfluous messages in tramp-tests
9200
9201	* test/lisp/net/tramp-tests.el (tramp-test10-write-region)
9202	(tramp-test10-write-region-file-precious-flag)
9203	(tramp-test34-connection-local-variables)
9204	(tramp-test36-vc-registered): Let-bind `inhibit-message'.
9205
92062019-12-01  Juanma Barranquero  <lekktu@gmail.com>
9207
9208	ibuffer-mark-by-content-regexp: don't depend on `cl-some'
9209
9210	* lisp/ibuf-ext.el (ibuffer-mark-by-content-regexp): Use `cl-dolist'
9211	instead of `cl-some' to avoid a run-time dependency on cl-lib that
9212	triggers an unreported bug similar to bug#38430.
9213
92142019-12-01  Juanma Barranquero  <lekktu@gmail.com>
9215
9216	ibuffer-do-isearch: don't depend on `cl-values-list' (bug#38430)
9217
9218	* lisp/ibuf-ext.el (ibuffer-generate-filter-groups): Don't call
9219	`cl-values-list'.  Our implementation of that function just
9220	checks that its argument is a list, and then returns it.  In
9221	this specific case, the argument is guaranteed to be a list.
9222
92232019-11-30  Mattias Engdegård  <mattiase@acm.org>
9224
9225	Improved mouse rectangle selection robustness (bug#38013)
9226
9227	Make the rectangular selection work better with
9228	display-line-numbers-mode and side-by-side windows.
9229	Also make the mouse track the text cursor in a consistent way.
9230
9231	* lisp/mouse.el (mouse--rectangle-track-cursor): Added constant.
9232	(mouse-drag-region-rectangle): Take the line-number width into
9233	account, and use window-relative columns.  Track either the cursor or
9234	rectangle corner with more care.
9235
92362019-11-30  Juri Linkov  <juri@linkov.net>
9237
9238	* lisp/tab-line.el (tab-line-auto-hscroll): Don't let-bind buffer-local values
9239
9240	Use setq to set buffer-local values of truncate-lines and buffer-undo-list.
9241	This will prevent leaking of let-bound values to buffer-local values
9242	of the minibuffer.
9243
92442019-11-30  Juri Linkov  <juri@linkov.net>
9245
9246	* lisp/gnus/gnus-win.el (gnus-configure-frame): Check for window-live-p.
9247
9248	* doc/misc/gnus.texi (Tabbed Interface): New node.  (bug#37998)
9249
92502019-11-30  Juri Linkov  <juri@linkov.net>
9251
9252	* lisp/subr.el: Add discard-input to more functions.
9253
9254	* lisp/subr.el (read-char-from-minibuffer-insert-other)
9255	(y-or-n-p-insert-other): Use discard-input in case of user mistake.
9256	(do-after-load-evaluation): Add discard-input before calling 'message',
9257	so in case of the active minibuffer, calling minibuffer-message will allow
9258	sit-for to wait the complete timeout, because discard-input will discard
9259	all initial events that prevent sit-for from waiting during startup.
9260	https://lists.gnu.org/archive/html/emacs-devel/2019-11/msg00581.html
9261
92622019-11-30  Alan Mackenzie  <acm@muc.de>
9263
9264	CC Mode.  Fix fontification bug with unterminated quotes on adjacent lines
9265
9266	In particular, with these unterminated quotes on each of two adjacent lines,
9267	the following text was spuriously fontified with string face.
9268
9269	* lisp/progmodes/cc-defs.el
9270	(c-search-backward-char-property-with-value-on-char): New macro.
9271
9272	* lisp/progmodes/cc-mode.el (c-clear-string-fences): Check whether there is an
9273	unmatched quote at a lower buffer position which should match the current
9274	quote, rather than wrongly assuming the latter is unmatched and marking it
9275	with a punctuation syntax.
9276	(c-font-lock-fontify-region): Ensure all pertinent parts of the buffer have
9277	string fence properties applied before performing any syntactic operations on
9278	it; in particular, this applies to a quote at an earlier buffer position which
9279	"matches" one inside the region about to be fontified.
9280
92812019-11-30  Juri Linkov  <juri@linkov.net>
9282
9283	* lisp/image.el: Support image scaling with mouse in other buffer.
9284
9285	* lisp/image.el (image-increase-size, image-decrease-size):
9286	Add optional arg position.
9287	(image-mouse-increase-size, image-mouse-decrease-size):
9288	Use '(point-marker)' for arg position.
9289	(image--get-image): Use get-char-property from position if non-nil,
9290	and its buffer.
9291	(image--get-imagemagick-and-warn, image--change-size):
9292	Add optional arg position.
9293
92942019-11-30  Juri Linkov  <juri@linkov.net>
9295
9296	Use run-with-idle-timer instead of debounce for responsive image scaling.
9297
9298	* lisp/emacs-lisp/timer.el (debounce, debounce-reduce): Revert macro addition.
9299	https://lists.gnu.org/archive/html/emacs-devel/2019-11/msg01133.html
9300
9301	* lisp/image.el (image-increase-size, image-decrease-size):
9302	Use run-with-idle-timer.
9303	(image--change-size): Rename back from image--change-size-function.
9304
9305	* lisp/image-mode.el (image-mode--setup-mode): Remove hooks
9306	window-size-change-functions and window-selection-change-functions (bug#32672)
9307	(image-fit-to-window): Rename from image--window-change-function.
9308	(image--window-state-change): Rename from image--window-change.
9309	Use run-with-idle-timer.
9310
93112019-11-30  Juanma Barranquero  <lekktu@gmail.com>
9312
9313	Fix compilation warning in vc-hg.el
9314
9315	* lisp/vc/vc-hg.el (vc-read-revision): Declare.
9316
93172019-11-30  Eli Zaretskii  <eliz@gnu.org>
9318
9319	Minor fixes in last change
9320
9321	* doc/emacs/maintaining.texi (Switching Branches)
9322	(Pulling / Pushing, Merging): Fix markup of shell commands.
9323
93242019-11-30  Andrii Kolomoiets  <andreyk.mad@gmail.com>
9325
9326	vc-hg: prompt for branch to merge
9327
9328	* lisp/vc/vc-hg.el (vc-hg-merge-branch): Prompt for revision to merge.
9329	(vc-hg-revision-table): Use branches, tags and bookmarks as competion
9330	candidates.
9331
9332	* etc/NEWS: Mention changes of vc-hg.el
9333
9334	* doc/emacs/maintaining.texi (Switching Branches): Mention 'hg update'
9335	command.
9336	(Merging): Mention 'hg merge' command.
9337
9338	This fixes bug#22860
9339
93402019-11-30  Michal Sojka  <sojkam1@fel.cvut.cz>
9341
9342	Fix preserving cell boundaries in table.el after <delete>
9343
9344	* lisp/textmodes/table.el (table-command-remap-alist): Add
9345	entry for 'delete-forward-char'.  (Bug#38353)
9346
93472019-11-30  Eli Zaretskii  <eliz@gnu.org>
9348
9349	Add ':extend' attribute to faces and themes
9350
9351	* etc/themes/wombat-theme.el:
9352	* etc/themes/wheatgrass-theme.el:
9353	* etc/themes/tsdh-light-theme.el:
9354	* etc/themes/tsdh-dark-theme.el:
9355	* etc/themes/tango-theme.el:
9356	* etc/themes/tango-dark-theme.el:
9357	* etc/themes/misterioso-theme.el:
9358	* etc/themes/manoj-dark-theme.el:
9359	* etc/themes/light-blue-theme.el:
9360	* etc/themes/leuven-theme.el:
9361	* etc/themes/dichromacy-theme.el:
9362	* etc/themes/deeper-blue-theme.el:
9363	* etc/themes/adwaita-theme.el: Add ':extend' attribute to all
9364	faces that are by default defined with it.
9365
9366	* lisp/vc/smerge-mode.el (smerge-upper, smerge-lower)
9367	(smerge-base):
9368	* lisp/vc/log-view.el (log-view-file, log-view-message):
9369	* lisp/vc/ediff-init.el (ediff-current-diff-A)
9370	(ediff-current-diff-B, ediff-current-diff-C)
9371	(ediff-current-diff-Ancestor, ediff-even-diff-A)
9372	(ediff-even-diff-B, ediff-even-diff-C)
9373	(ediff-even-diff-Ancestor, ediff-odd-diff-A)
9374	(ediff-odd-diff-B, ediff-odd-diff-C)
9375	(ediff-odd-diff-Ancestor):
9376	* lisp/vc/diff-mode.el (diff-header, diff-file-header)
9377	(diff-removed, diff-added): Make sure all definitions of faces
9378	have the same value of the ':extend' property, otherwise
9379	customizing background color or underline etc. attributes of
9380	these faces on some displays will produce effects different
9381	from other displays.
9382
93832019-11-30  Juanma Barranquero  <lekktu@gmail.com>
9384
9385	* src/lread.c (syms_of_lread): Doc fix.
9386
93872019-11-29  Alan Third  <alan@idiocy.org>
9388
9389	Fix image scaling with masks (bug#38109)
9390
9391	* src/image.c (lookup_image): Move call to image_set_transform after
9392	postprocess_image.
9393	(image_create_x_image_and_pixmap_1): Use new function.
9394	(image_set_transform): Apply the transform to the mask too.
9395	(x_create_xrender_picture): New function.
9396	(Create_Pixmap_From_Bitmap_Data):
9397	(xpm_load): Use new function.
9398	* src/xterm.c (x_composite_image): Use PictOpOver when there is a mask
9399	so the transparency is honoured.
9400	(x_draw_image_foreground_1): Use x_composite_image.
9401
94022019-11-29  Stefan Monnier  <monnier@iro.umontreal.ca>
9403
9404	* lisp/gnus/gnus.el (gnus-info): Define with `cl-defstruct`
9405
9406	This makes the accessors into (inlined) functions (instead of macros),
9407	which simplifies some uses, and it makes the gnus-info-set-<foo>
9408	macros redundant since we can use `setf` instead.  Remove them and
9409	update all users.
9410
9411	(gnus-info-group, gnus-info-rank, gnus-info-read, gnus-info-marks)
9412	(gnus-info-method, gnus-info-params): Auto-defined by defstruct.
9413	(gnus-info-level, gnus-info-score): Define as a function.  Add gv-setter.
9414	(gnus-info-set-group, gnus-info-set-rank, gnus-info-set-read): Remove,
9415	use `setf` instead.
9416	(gnus-info-set-marks, gnus-info-set-method, gnus-info-set-params):
9417	Define as a function.
9418	(gnus-info-set-entry): Delete function.
9419	(gnus-info--grow-entry): New function, extracted from it.
9420	(gnus-info--set-level, gnus-info--set-score): New functions, extracted
9421	from the `gnus-info-set-level` and `gnus-info-set-score` which they replace.
9422	(gnus-get-info): Define as a function.
9423
9424	* lisp/gnus/gnus-group.el (gnus-group-edit-group-done):
9425	Use the `extend` arg of `gnus-info-set-method`.
9426	(gnus-group-sort-selected-flat): eta-reduce.
9427
94282019-11-29  Stefan Monnier  <monnier@iro.umontreal.ca>
9429
9430	* lisp/textmodes/mhtml-mode.el: Fix bug#38372
9431
9432	The `sgml-syntax-propertize-rules` rely on the `sgml--syntax-propertize-ppss`
9433	setup by `sgml-syntax-propertize` so it is not correct/safe to use
9434	them directly like html used to do.
9435
9436	Change `sgml-syntax-propertize` so it can be used by mhtml,
9437	and then adjust mhtml-mode accordingly.
9438
9439	* lisp/textmodes/mhtml-mode.el: Remove redundant `eval-and-compile`.
9440	Only require cl-lib at compile-time.
9441	(mhtml--syntax-propertize): New const, extracted from mhtml-syntax-propertize.
9442	(mhtml-syntax-propertize): Use `sgml-syntax-propertize`.
9443
9444	* lisp/textmodes/sgml-mode.el (sgml--syntax-propertize): New const,
9445	extracted from sgml-syntax-propertize.
9446	(sgml-syntax-propertize): Add optional `rules-function` arg.
9447
94482019-11-29  Robert Pluim  <rpluim@gmail.com>
9449
9450	Add nsm-should-check IPv6 local subnet tests
9451
9452	* test/lisp/net/nsm-tests.el (nsm-check-local-subnet-ipv6): Now
9453	that IPv6 addresses are returned from network-interface-list, test
9454	nsm-should check and nsm-network-same-subnet for IPv6 as well.
9455
94562019-11-29  Eli Zaretskii  <eliz@gnu.org>
9457
9458	Support showing one revision with Mercurial
9459
9460	* lisp/vc/vc-hg.el (vc-hg-print-log): Support 'with-diff'
9461	invocation of "C-1 C-x v L".
9462
94632019-11-29  Phil Sainty  <psainty@orcon.net.nz>
9464
9465	* lisp/so-long.el (so-long-variable-overrides): Set bidi-inhibit-bpa
9466
9467	(Bug#38407)
9468
94692019-11-29  Eli Zaretskii  <eliz@gnu.org>
9470
9471	Document 'zap-up-to-char'
9472
9473	* doc/emacs/killing.texi (Other Kill Commands): Document
9474	'zap-up-to-char'.
9475
9476	* lisp/simple.el (zap-to-char): Mention 'zap-up-to-char' in
9477	the doc string.  (Bug#38392)
9478
94792019-11-29  Eli Zaretskii  <eliz@gnu.org>
9480
9481	Support showing one revision with Subversion
9482
9483	* lisp/vc/vc-svn.el (vc-svn-print-log): Support 'with-diff'
9484	invocation of "C-1 C-x v L".
9485
94862019-11-29  Eli Zaretskii  <eliz@gnu.org>
9487
9488	Minor fix in 'vc-print-root-log's prompt for revision ID
9489
9490	* lisp/vc/vc.el (vc-print-root-log): Remove text properties
9491	from the default revision suggestion.
9492
94932019-11-29  Eli Zaretskii  <eliz@gnu.org>
9494
9495	Support showing one revision with Bazaar
9496
9497	* lisp/vc/vc-bzr.el (vc-bzr-print-log): Support 'with-diff'
9498	invocation of "C-1 C-x v L".
9499
95002019-11-29  Eli Zaretskii  <eliz@gnu.org>
9501
9502	Improve indexing of VC log commands
9503
9504	* doc/emacs/maintaining.texi (VC Change Log): Add missing
9505	index entries.
9506
95072019-11-29  Eli Zaretskii  <eliz@gnu.org>
9508
9509	Improve documentation and UI of 'C-x v L'
9510
9511	* lisp/vc/vc.el (vc-print-root-log): Improve the wording of
9512	the doc string and of the prompt for the root directory.
9513
9514	* etc/NEWS: Improve and expand the wording of the changes in
9515	'C-x v L'.
9516
9517	* doc/emacs/maintaining.texi (VC Change Log): Improve and
9518	clarify wording of the 'C-x v L' description.
9519
95202019-11-28  Noam Postavsky  <npostavs@gmail.com>
9521
9522	Improve errors & warnings due to fancy quoted vars (Bug#32939)
9523
9524	Add some hints to the message for byte compiler free & unused variable
9525	warnings, and 'void-variable' errors where the variable has confusable
9526	quote characters in it.
9527	* lisp/help.el (uni-confusables), uni-confusables-regexp): New
9528	constants.
9529	(help-command-error-confusable-suggestions): New function, added to
9530	`command-error-function'.
9531	(help-uni-confusable-suggestions): New function.
9532	* lisp/emacs-lisp/bytecomp.el (byte-compile-variable-ref):
9533	* lisp/emacs-lisp/cconv.el (cconv--analyze-use): Use it.
9534
9535	* lisp/emacs-lisp/lisp-mode.el
9536	(lisp--match-confusable-symbol-character): New function.
9537	(lisp-fdefs): Use it to fontify confusable characters with
9538	font-lock-warning-face when they occur in symbol names.
9539	* doc/lispref/modes.texi (Faces for Font Lock):
9540	* doc/lispref/objects.texi (Basic Char Syntax): Recommend backslash
9541	escaping of confusable characters, and mention new fontification.
9542	* etc/NEWS: Announce the new fontification behavior.
9543	* test/lisp/emacs-lisp/lisp-mode-tests.el (lisp-fontify-confusables):
9544	New test.
9545
95462019-11-28  Noam Postavsky  <npostavs@gmail.com>
9547
9548	Stop signaling an error when reading "smart quotes" in symbols
9549
9550	Revert commits from 2018-01-28 "Fix round tripping of read->print for
9551	symbols with strange quotes", and 2017-07-22 "Signal error for symbol
9552	names with strange quotes (Bug#2967)".
9553	* etc/NEWS: Remove corresponding entries.
9554	* src/character.c (confusable_symbol_character_p):
9555	* test/src/lread-tests.el (lread-tests--old-style-backquotes): Remove.
9556	* src/lread.c (read1): Don't signal error on confusable character.
9557	* src/print.c (print_object): Don't escape confusable characters.
9558
95592019-11-28  Filipp Gunbin  <fgunbin@fastmail.fm>
9560
9561	Do not call custom-reevaluate-setting in dired-isearch-filenames-end
9562
9563	  * lisp/dired-aux.el (dired-isearch-filenames-end)
9564	  (dired-isearch-filenames, dired-isearch-filenames-regexp): Use
9565	  temporary local variable for dired-isearch-filenames instead of
9566	  custom-reevaluate-setting (Bug#30187).  Without this fix, the value
9567	  set in .emacs with plain setq would be lost after one isearch.
9568
95692019-11-28  Eli Zaretskii  <eliz@gnu.org>
9570
9571	Improve PY-b5 input methods
9572
9573	* leim/leim-ext.el ("quail/PY-b5"): Assign key sequence for
9574	U+25CB (WHITE CIRCLE).  (Bug#3179)
9575
95762019-11-28  Eli Zaretskii  <eliz@gnu.org>
9577
9578	Allow disabling the BPA part of bidi reordering
9579
9580	* src/xdisp.c (syms_of_xdisp): New variable 'bidi-inhibit-bpa'.
9581	* src/bidi.c (bidi_paired_bracket_type): If 'bidi-inhibit-bpa'
9582	is non-nil, return BIDI_BRACKET_NONE for all characters.
9583
9584	* lisp/frame.el: Add 'bidi-inhibit-bpa' to the list of
9585	variables whose changes require redisplay.  (Bug#38407)
9586
95872019-11-28  Robert Pluim  <rpluim@gmail.com>
9588
9589	Support wlan in network-interface-list on pre-Vista Windows
9590
9591	* src/w32.c (network_interface_list): Check for 'Wireless' in
9592	adapter description to support pre-Vista Windows.
9593
95942019-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
9595
9596	* lisp/subr.el (do-after-load-evaluation): Fix thinko
9597
95982019-11-27  Juri Linkov  <juri@linkov.net>
9599
9600	Menu bar rearrangements, move Print menu items to submenu, etc. (bug#37594)
9601
9602	* lisp/menu-bar.el (menu-bar-print-menu): New defvar.
9603	(menu-bar-file-menu): Move print entries to submenu.
9604	Add menu entries for tab-new, tab-close, make-frame-on-monitor.
9605	(menu-bar-showhide-menu): Add menu entry for global-tab-line-mode.
9606	Don't add toggle-tab-bar-mode-from-frame on ns where it's unavailable.
9607	(menu-bar-tools-menu): Add rgrep.
9608
9609	* lisp/bindings.el (next-buffer, previous-buffer): Advertise bindings
9610	'C-x right' and 'C-x left' instead of 'XF86Forward' and 'XF86Back'.
9611
96122019-11-27  Juri Linkov  <juri@linkov.net>
9613
9614	'C-1 C-x v L' asks for revision and shows its log entry with diff (bug#38044)
9615
9616	* doc/emacs/maintaining.texi (VC Change Log): Explain the numeric prefix arg
9617	of 'C-x v L' (vc-print-root-log).
9618
9619	* lisp/vc/vc-git.el (vc-git-print-log): Add command line option "-p"
9620	when vc-log-view-type is 'with-diff'.
9621	(vc-git-log-view-mode): Use long style when vc-log-view-type is 'with-diff'.
9622
9623	* lisp/vc/vc.el (vc-print-log-internal): Add optional arg 'type'.
9624	(vc-log-internal-common): Use 'region-history-mode' when type is
9625	'with-diff' and backend supports 'region-history-mode'.
9626	(vc-print-root-log): Add optional arg 'revision'.  In interactive spec
9627	read a revision when current-prefix-arg is 1.  Use current-prefix-arg
9628	"as is" when it is a number.  Show revision in long style with diff
9629	when limit is 1 and revision is non-nil.
9630
96312019-11-27  Juri Linkov  <juri@linkov.net>
9632
9633	* lisp/image-mode.el: Resize image on window resizing (bug#32672)
9634
9635	* lisp/image-mode.el (image--window-change): New function.
9636	(image--window-change-function): New variable.
9637	(image-mode--setup-mode): Add buffer-local hook image--window-change
9638	to window-size-change-functions, window-state-change-functions,
9639	window-selection-change-functions.
9640
96412019-11-27  Eli Zaretskii  <eliz@gnu.org>
9642
9643	Make some anonymous faces extend to EOL
9644
9645	* lisp/vc/log-edit.el (log-edit-font-lock-keywords):
9646	* lisp/mpc.el (mpc-separator):
9647	* lisp/help.el (describe-key):
9648	* lisp/help-fns.el (describe-symbol): Make the anonymous faces
9649	extend to EOL.
9650
96512019-11-27  Mattias Engdegård  <mattiase@acm.org>
9652
9653	Mouse rectangular region selection (bug#38013)
9654
9655	Make it possible to select a rectangular region using the mouse.
9656	The standard binding is C-M-mouse-1.
9657
9658	* lisp/mouse.el (mouse-scroll-subr): Add ADJUST argument.
9659	(mouse-drag-region-rectangle): New.
9660	* lisp/rect.el (rectangle--reset-point-crutches): New.
9661	(rectangle--reset-crutches): Use 'rectangle--reset-point-crutches'.
9662	* src/xdisp.c (remember_mouse_glyph, syms_of_xdisp):
9663	Add 'mouse-fine-grained-tracking'.
9664	* doc/lispref/commands.texi (Motion Events):
9665	Document 'mouse-fine-grained-tracking'.
9666	* doc/emacs/frames.texi (Mouse Commands):
9667	* doc/emacs/killing.texi (Rectangles):
9668	* etc/NEWS: Document rectangular selection with the mouse.
9669
96702019-11-27  Andrii Kolomoiets  <andreyk.mad@gmail.com>
9671
9672	Call vc-setup-buffer in vc-hg-log-incoming and vc-hg-log-outgoing
9673
9674	* lisp/vc/vc-hg.el (vc-hg-log-incoming, vc-hg-log-outgoing):
9675	Call vc-setup-buffer.
9676
96772019-11-27  Lars Ingebrigtsen  <larsi@gnus.org>
9678
9679	Fix documentation of eieio-class-name
9680
9681	* doc/misc/eieio.texi (Predicates): Update the documentation of
9682	eieio-class-name to say what it really returns (bug#38365).
9683
96842019-11-27  Lars Ingebrigtsen  <larsi@gnus.org>
9685
9686	Make message-allow-no-recipients 'always work
9687
9688	* lisp/gnus/message.el (message-send): Make
9689	message-allow-no-recipients 'always work.
9690
96912019-11-27  Mattias Engdegård  <mattiase@acm.org>
9692
9693	Fine-grained NS modifier key settings (bug#38296)
9694
9695	For the ns-KEY-modifier and ns-right-KEY-modifier variables, KEY
9696	being 'control', 'command', 'alternate' and 'function', allow
9697	values on the form (:ordinary SYMBOL :function :SYMBOL :mouse SYMBOL),
9698	so that the key can be used for different modifiers (or none) in
9699	different contexts.  This is particularly useful for using the macOS
9700	Option key for extended character entry while still using it as an
9701	Emacs modifier for function keys and mouse clicks.
9702
9703	* src/nsterm.m (mod_of_kind, right_mod, nil_or_none): Helper functions.
9704	(EV_MODIFIERS2): Add KIND argument.
9705	(EV_MODIFIERS): Adapt call to EV_MODIFIERS2.
9706	(ns_get_shifted_character): Use correct event kind for modifiers.
9707	(ns-alternate-modifier, ns-right-alternate-modifier)
9708	(ns-command-modifier, ns-right-command-modifier)
9709	(ns-control-modifier, ns-right-control-modifier)
9710	(ns-function-modifier): Rewrite doc strings for new data format.
9711	(QCordinary, QCfunction, QCmouse): Define symbols.
9712	* lisp/cus-start.el: Conform to new data types.
9713	* doc/emacs/macos.texi (Mac / GNUstep Basics)
9714	(Mac / GNUstep Customization): Improved documentation.
9715	* etc/NEWS: Mention the change.
9716
97172019-11-26  Juri Linkov  <juri@linkov.net>
9718
9719	message uses minibuffer-message in the active minibuffer (bug#17272 bug#19064)
9720
9721	* doc/lispref/display.texi (Displaying Messages): Explain the
9722	behavior of using minibuffer-message if the minibuffer is active.
9723
9724	* src/editfns.c (Fmessage_in_echo_area): New function with body
9725	copied from Fmessage.
9726	(Fmessage): Call minibuffer-message in the active minibuffer,
9727	otherwise call Fmessage_in_echo_area.
9728	(message-in-echo-area): New variable.
9729
9730	* lisp/isearch.el (isearch--momentary-message, isearch-message):
9731	* lisp/minibuffer.el (minibuffer-message, minibuffer-completion-help):
9732	Use 'message-in-echo-area' instead of 'message' where necessary.
9733
9734	* lisp/autorevert.el (auto-revert-handler):
9735	* lisp/man.el (Man-bgproc-sentinel):
9736	* lisp/subr.el (do-after-load-evaluation):
9737	Revert recent changes that replaced 'message' with 'minibuffer-message'.
9738	This is not needed anymore since 'message' uses 'minibuffer-message'
9739	in the active minibuffer.
9740
97412019-11-26  Juri Linkov  <juri@linkov.net>
9742
9743	Allow recursive minibuffers for yes-or-no-p and y-or-n-p (bug#17272 bug#19064)
9744
9745	* lisp/subr.el (y-or-n-p): Let-bind enable-recursive-minibuffers to t.
9746
9747	* src/fns.c (Fyes_or_no_p): Specbind Qenable_recursive_minibuffers to Qt.
9748
97492019-11-26  Juri Linkov  <juri@linkov.net>
9750
9751	* lisp/tab-bar.el (display-buffer-in-tab): New function (bug#38354)
9752
97532019-11-26  Paul Eggert  <eggert@cs.ucla.edu>
9754
9755	etags: remove some arbitrary limits
9756
9757	etags had undefined behavior if input files, lines, tags, etc.,
9758	had more than INT_MAX bytes.  Clean up the usage of integer types
9759	to fix the overflow errors I found.
9760	* admin/merge-gnulib (GNULIB_MODULES): Add mempcpy.
9761	* lib-src/etags.c: Include inttypes.h, intprops.h.
9762	(memcpyz): New function.  Use it to simplify several occurrences
9763	of memcpy followed by storing a trailing '\0'.
9764	(xnew): Use xnmalloc, to catch overflow on integer multiplication.
9765	(xrnew): Change last arg to multiplier.  The type is not needed.
9766	All callers changed.
9767	(node, lineno, charno, linecharno, invalidcharno, make_tag):
9768	(pfnote, add_node, number_len, C_symtype, lbz, Makefile_targets)
9769	(readline):
9770	Use intmax_t for line numbers and character positions, instead of
9771	int or long.
9772	(linebuffer, make_tag, pfnote, total_size_of_entries, put_entry)
9773	(in_word_set, C_symtype, token, cstack, pushclass_above):
9774	(popclass_above, write_classname, consider_token, C_entries)
9775	(Ruby_functions, Makefile_targets, Lua_functions, TeX_commands)
9776	(TeX_decode_env, erlang_func, erlang_attribute, erlang_atom)
9777	(substitute, regex_tag_multiline, nocase_tail, readline_interval)
9778	(readline, savenstr, concat, etags_getcwd, relative_filename)
9779	(linebuffer_setlen):
9780	Use ptrdiff_t for object sizes, instead of int or long or unsigned
9781	or size_t.
9782	(write_classname, C_entries):
9783	Avoid sprintf, as the result could exceed INT_MAX bytes
9784	and then behavior goes haywire.
9785	(main): Use int, instead of unsigned, for argv counts.
9786	(get_language_from_filename): Use bool for boolean.
9787	(Ruby_functions): Prefer strcpy to memcpy when copying "=".
9788	(linebuffer_setlen): Use ‘if’ instead of ‘while’.
9789	(memory_full, xnmalloc, xnrealloc): New functions.
9790	(xmalloc): Use memory_full, and take a ptrdiff_t instead of a size_t.
9791	(xrealloc): Remove; no longer needed.
9792	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
9793	* lib/mempcpy.c, m4/mempcpy.m4: New files, copied from Gnulib.
9794
97952019-11-26  Juanma Barranquero  <lekktu@gmail.com>
9796
9797	Fix previous change to (next|previous)-buffer
9798
9799	* lisp/window.el (next-buffer, previous-buffer): If no other
9800	buffer is available, signal 'user-error' only when called
9801	interactively.
9802
98032019-11-26  Paul Eggert  <eggert@cs.ucla.edu>
9804
9805	Update from Gnulib
9806
9807	This incorporates:
9808	2019-11-24 Fix errors in C++ mode on mingw
9809	2019-11-24 time_r: Fix for mingw (regression from 2019-11-16)
9810	2019-11-24 sys_time: Fix errors in C++ mode on mingw
9811	2019-11-22 intprops: INT_MULTIPLY_WRAPV speedup for GCC 8.4+
9812	2019-11-21 Disable many _GL_CXXALIASWARN on non-glibc
9813	2019-11-21 Fix various errors in _GL_CXXALIAS_SYS invocations
9814	2019-11-19 intprops: INT_MULTIPLY_WRAPV speedup for GCC 9.3+
9815	2019-11-18 stdint: Define [u]intptr_t correctly on 64-bit native Windows
9816	2019-11-18 stdint: Fix value of WINT_MAX when we override wint_t
9817	2019-11-18 stdint: Avoid "conflicting types" error on mingw 5.22
9818	2019-11-16 time_r: Fix for mingw
9819	2019-11-06 regex: now back in sync with glibc
9820	* lib/intprops.h, lib/regexec.c, lib/signal.in.h:
9821	* lib/stdint.in.h, lib/stdio.in.h, lib/stdlib.in.h:
9822	* lib/string.in.h, lib/sys_select.in.h, lib/sys_time.in.h:
9823	* lib/time.in.h, lib/unistd.in.h, m4/time_r.m4:
9824	Copy from Gnulib.
9825
98262019-11-26  Stefan Monnier  <monnier@iro.umontreal.ca>
9827
9828	* lisp/subr.el (do-after-load-evaluation): Handle batch mode as well
9829
98302019-11-26  Robert Pluim  <rpluim@gmail.com>
9831
9832	Use 127.0.0.1 in nsm-tests
9833
9834	Winsock doesn't like "127.1"
9835
9836	* test/lisp/net/nsm-tests.el (nsm-check-local-subnet-ipv4): Spell
9837	numeric localhost as "127.0.0.1" instead of "127.1".
9838
98392019-11-26  Stefan Monnier  <monnier@iro.umontreal.ca>
9840
9841	* test/lisp/minibuffer-tests.el (completion-table-test-quoting): New test
9842
9843	* test/data/minibuffer-test-cttq$tion: New file-name test data.
9844
98452019-11-26  Eli Zaretskii  <eliz@gnu.org>
9846
9847	Support ':extend' in faces defined by list of key/value pairs
9848
9849	* src/xfaces.c: Update and improve commentary at the beginning
9850	of the file.
9851	(face_attr_sym): New static array.
9852	(init_xfaces): Initialize 'face_attr_sym'.
9853	(merge_face_ref): Handle the :extend attribute in faces
9854	specified as lists of key/value pairs.  (Bug#37774)
9855
98562019-11-26  Eli Zaretskii  <eliz@gnu.org>
9857
9858	Fix MS-Windows build with mingw.org's MinGW
9859
9860	mingw.org's MinGW by default targets Windows 9X, so
9861	_WIN32_WINNT is set to a value that bypasses declarations
9862	in system headers we need to compile network_interface_list.
9863	Also, the code needed a workaround for Windows XP, where
9864	some functionality is missing from the GetAdaptersAddresses
9865	API.
9866
9867	* src/w32.c (_WIN32_WINNT): Define to 0x0501, if the value is
9868	lower, temporarily while processing iphlpapi.h.
9869	(address_prefix_match): New helper function.
9870	(network_interface_list): Work around the fact that the
9871	OnLinkPrefixLength member of IP_ADAPTER_UNICAST_ADDRESS is not
9872	available when _WIN32_WINNT < 0x0600.  On Windows XP use
9873	special code that calls address_prefix_match to compute the
9874	network prefix length.
9875
98762019-11-26  Stefan Monnier  <monnier@iro.umontreal.ca>
9877
9878	* lisp/progmodes/asm-mode.el (asm-mode-map): Obey electric-indent-mode
9879
98802019-11-26  Juanma Barranquero  <lekktu@gmail.com>
9881
9882	(next|previous)-buffer no longer fail silently (bug#38384)
9883
9884	* lisp/window.el (next-buffer, previous-buffer):
9885	Signal 'user-error' if there is no buffer to switch to.
9886
9887	* etc/NEWS: Document it.
9888
98892019-11-26  Juanma Barranquero  <lekktu@gmail.com>
9890
9891	lisp/auth-source.el: Depend on cl-lib unconditionally
9892
9893	A change in 2016-04-24 introduced a run-time dependency on cl-subseq.
9894
98952019-11-26  Juanma Barranquero  <lekktu@gmail.com>
9896
9897	lisp/auth-source-pass.el: Require cl-lib unconditionally
9898
9899	Changes in 2019-05-05 and 2019-05-14 introduced run-time dependencies
9900	on cl-maplist and cl-remove-if-not.
9901
99022019-11-26  Martin Rudalics  <rudalics@gmx.at>
9903
9904	2019-11-26  Martin Rudalics  <rudalics@gmx.at>
9905
9906	* lisp/window.el (switch-to-visible-buffer): Declare obsolete.
9907	(switch-to-prev-buffer-skip): New option.
9908	(switch-to-prev-buffer, switch-to-next-buffer): Obey
9909	'switch-to-prev-buffer-skip'.
9910	* doc/lispref/windows.texi (Window History): Remove
9911	description of 'switch-to-visible-buffer'.  Describe new
9912	option 'switch-to-prev-buffer-skip'
9913	* etc/NEWS: Mention switch from 'switch-to-visible-buffer' to
9914	'switch-to-prev-buffer-skip'.
9915
99162019-11-26  Alex Murray  <alex.murray@canonical.com>  (tiny change)
9917
9918	Fix auth-source password lookup
9919
9920	* lisp/net/network-stream.el
9921	(network-stream-certificate): Ensure :port is specified as a string to
9922	'auth-source-search' (Bug#38371).
9923
99242019-11-25  Robert Pluim  <rpluim@gmail.com>
9925
9926	Extend network-interface-list to return IPv6 and network info
9927
9928	Bug#38218
9929
9930	* src/process.c (Fnetwork_interface_list): Extend argument list to
9931	allow requesting full network info and/or IPv4/IPv6 info.
9932	(network_interface_list) [HAVE_GETIFADDRS]: Use getifaddrs to retrieve
9933	interface IP addresses.
9934
9935	* src/process.h: Update prototype of network_interface_list.
9936
9937	* src/w32.c (g_b_init_get_adapters_addresses): New init flag.
9938	(globals_of_w32): Initialize it.
9939	(GetAdaptersAddresses_Proc): New function typedef.
9940	(get_adapters_addresses): New wrapper function.
9941	(init_winsock): Load htonl and ntohl.
9942	(sys_htonl, sys_ntohl): New wrapper functions.
9943	(network_interface_list): Implement in terms of
9944	get_adapters_addresses.
9945
9946	* nt/inc/sys/socket.h: Add sys_htonl and sys_ntohl prototypes.
9947
9948	* etc/NEWS: Announce IPv4/IPv6 changes in network-interface-list.
9949
9950	* doc/lispref/processes.texi (Misc Network): Document updated arglist
9951	and return values for network-interface-list.
9952
99532019-11-25  Lars Ingebrigtsen  <larsi@gnus.org>
9954
9955	Fix previous message.el point-restoring fix
9956
9957	* lisp/gnus/message.el (message-send-and-exit): Restore window
9958	point before burying buffer so we actually bury the buffer.
9959
99602019-11-25  Lars Ingebrigtsen  <larsi@gnus.org>
9961
9962	Remove outdated documentation
9963
9964	* doc/misc/eieio.texi (Predicates): Remove documentation of
9965	same-class-fast-p, which was removed some years back (bug#38362).
9966
99672019-11-25  João Távora  <joaotavora@gmail.com>
9968
9969	Fix test failures of test/lisp/auth-source-pass-tests.el
9970
9971	Failures introduced by recent "Make auth-source-pass-search understand
9972	port lists", commit 92fda5a7f92162d610d57df14372bcfcee1f01b6.
9973
9974	* lisp/auth-source-pass.el
9975	(auth-source-pass--generate-entry-suffixes): Fix test failures.
9976
99772019-11-25  Filipp Gunbin  <fgunbin@fastmail.fm>
9978
9979	Correct small misprint in defcustom's docstring
9980
9981	* lisp/custom.el (defcustom): Correct misprint in docstring.
9982
99832019-11-25  Eli Zaretskii  <eliz@gnu.org>
9984
9985	Fix face merging when some have :extend non-nil and some are inherited
9986
9987	* src/xfaces.c (face_inherited_attr): New function.
9988	(merge_named_face): Call 'face_inherited_attr' when testing
9989	whether a face that inherits from another fits the filtering
9990	criteria specified by ATTR_FILTER.
9991	(merge_face_vectors): Revert the changes made in this function
9992	for filtering by ATTR_FILTER, and remove that argument as
9993	well.  These tests are now completely done by the caller, see
9994	'merge_named_face'.  (Bug#37774)
9995
99962019-11-25  Robert Pluim  <rpluim@gmail.com>
9997
9998	Handle auth-source-search failures in open-network-stream
9999
10000	If the user cancels the gpg decryption pop-up, auth-source-search
10001	fails *and* epa pops up an error buffer.  Fix epa to allow suppressing
10002	that, and ignore errors returned from auth-source-search.
10003
10004	* lisp/epa.el (epa-suppress-error-buffer): New defvar.  Bind non-nil
10005	to stop epa popping up an error buffer.
10006
10007	* lisp/net/network-stream.el: require epa when byte-compiling.
10008	(network-stream-certificate): ignore errors when calling
10009	auth-source-search, and suppress the epa error buffer.
10010
100112019-11-23  Paul Eggert  <eggert@cs.ucla.edu>
10012
10013	Add eassert check for bad default face
10014
10015	* src/xdisp.c (append_space_for_newline): Add an eassert check
10016	that default_face is not null, by calling FACE_FROM_ID instead of
10017	FACE_FROM_ID_OR_NULL.  Initialize a local only if needed.
10018
100192019-11-23  Paul Eggert  <eggert@cs.ucla.edu>
10020
10021	Port gnutls.c to --enable-gcc-warnings --without-gnutls
10022
10023	* src/gnutls.c: Move the "#ifdef HAVE_GNUTLS" earlier, so
10024	that "./configure --enable-gcc-warnings --without-gnutls"
10025	does not complain about macros being defined but never used.
10026	Indent "#" directives more consistently.
10027
100282019-11-23  Juanma Barranquero  <lekktu@gmail.com>
10029
10030	Rework previous fix to bug#38222
10031
10032	* lisp/help.el (help--doc-without-fn): Remove.
10033	(describe-mode): Use help-split-fundoc instead.
10034
100352019-11-23  Juanma Barranquero  <lekktu@gmail.com>
10036
10037	Make help-split-fundoc more flexible about what returns
10038
10039	* lisp/help.el (help-split-fundoc): New arg SECTION to return
10040	only the usage or doc parts of the docstring, or both even if
10041	there is no usage.
10042
10043	* test/lisp/help-tests.el: New file.
10044
100452019-11-23  Juri Linkov  <juri@linkov.net>
10046
10047	Use new macro debounce-reduce to make mouse scaling of images more responsive
10048
10049	* lisp/emacs-lisp/timer.el (debounce, debounce-reduce): New macros.
10050
10051	* lisp/image.el (image-increase-size, image-decrease-size):
10052	Use funcall to call image--change-size-function.
10053	(image--change-size-function): Move code from defun of
10054	image--change-size to defvar that has the value of lambda
10055	returned from debounce-reduce.  (Bug#38187)
10056
100572019-11-23  Robert Pluim  <rpluim@gmail.com>
10058
10059	Default network-stream-use-client-certificates to nil
10060
10061	* lisp/net/network-stream.el (network-stream-use-client-certificates):
10062	Default to nil.
10063	(open-network-stream): Adapt description to new default of
10064	network-stream-use-client-certificates.
10065
10066	* etc/NEWS: network-stream-use-client-certificates defaults to nil
10067	now.
10068
10069	* doc/lispref/processes.texi (Network): Flip
10070	network-stream-use-client-certificates description.
10071
10072	* doc/misc/auth.texi (Help for users): Mention
10073	network-stream-use-client-certificates.
10074
100752019-11-23  Robert Pluim  <rpluim@gmail.com>
10076
10077	Have what-cursor-position optionally show character name
10078
10079	* lisp/simple.el (what-cursor-show-names): New defcustom, default nil.
10080	(what-cursor-position): Show character names if what-cursor-show-names
10081	is non-nil.
10082
10083	* doc/emacs/basic.texi (Position Info): Add what-cursor-show-names
10084	description.
10085
10086	* etc/NEWS: Announce what-cursor-show-names.
10087
100882019-11-23  Christopher Schmidt  <christopher@ch.ristopher.com>
10089
10090	Always expand "total" in dired
10091
10092	* lisp/files.el (insert-directory): Always replace "total" with
10093	"total used in directory", even when we don't have free disk space
10094	(bug#13191).  This makes the display more consistent.
10095
100962019-11-23  Michael Heerdegen  <michael_heerdegen@web.de>
10097
10098	Fix edebug instrumentation removing from advised functions
10099
10100	* lisp/emacs-lisp/edebug.el (edebug-remove-instrumentation): Handle
10101	advised functions correctly.
10102
101032019-11-23  Eli Zaretskii  <eliz@gnu.org>
10104
10105	Improve indexing of modifier keys
10106
10107	* doc/emacs/commands.texi (User Input): Add index entry for
10108	the Alt key serving as Meta.
10109	* doc/emacs/custom.texi (Modifier Keys): Add index entries for
10110	Alt, Super, and Hyper modifier keys.  (Bug#38315)
10111
101122019-11-23  Eli Zaretskii  <eliz@gnu.org>
10113
10114	Fix cursor display at EOL before extended face
10115
10116	* src/xdisp.c (extend_face_to_end_of_line): Make sure the
10117	character position of the stretch glyph inserted to extend the
10118	face is zero, as various other parts of the display code rely
10119	on that.  (Bug#38330)
10120
101212019-11-23  Eli Zaretskii  <eliz@gnu.org>
10122
10123	Fix and speed up en/decoding of UTF-8 strings
10124
10125	* src/coding.c (get_char_bytes, encode_string_utf_8)
10126	(decode_string_utf_8): Fix commentary.
10127	(encode_string_utf_8): Return the original ASCII string only
10128	if NOCOPY is non-zero.
10129	(decode_string_utf_8): Accept 2 additional arguments STR and
10130	STR_LEN, which allow to pass the input text as a C string.
10131	(make_string_from_utf8): Delegate the job to decode_string_utf_8.
10132	* src/coding.h: Update the prototype of decode_string_utf_8.
10133	* src/json.c (json_encode): Call encode_string_utf_8.
10134
101352019-11-22  João Távora  <joaotavora@gmail.com>
10136
10137	* lisp/minibuffer.el (completion-flex-nospace): Default to t.
10138
101392019-11-22  Juanma Barranquero  <lekktu@gmail.com>
10140
10141	help-follow-symbol now complains if no symbol found (bug#38248)
10142
10143	* lisp/help-mode.el (help-follow-symbol): Signal 'user-error' if
10144	there's no symbol at POS.
10145
10146	* etc/NEWS: Document it.
10147
101482019-11-22  Filipp Gunbin  <fgunbin@fastmail.fm>
10149
10150	Check gnus-mailing-list-groups in turn-on-gnus-mailing-list-mode
10151
10152	* lisp/gnus/gnus-ml.el (turn-on-gnus-mailing-list-mode): Check also
10153	gnus-mailing-list-groups variable.
10154
101552019-11-22  Filipp Gunbin  <fgunbin@fastmail.fm>
10156
10157	Make gnus-mailing-list-archive recognize https
10158
10159	* lisp/gnus/gnus-ml.el (gnus-mailing-list-archive): Accept https in
10160	regexp.
10161
101622019-11-22  Filipp Gunbin  <fgunbin@fastmail.fm>
10163
10164	Unify docstrings of Gnus summary's copy/move/crosspost article functions
10165
10166	* lisp/gnus/gnus-sum.el (gnus-summary-copy-article)
10167	(gnus-summary-crosspost-article): Make docstrings refer to
10168	gnus-summary-move-article.
10169
101702019-11-22  dickmao  <none>
10171
10172	Refix conditional step clauses in cl-loop
10173
10174	* lisp/emacs-lisp/cl-macs.el
10175	(cl--loop-bindings, cl--loop-symbol-macs, cl-loop):
10176	Add cl--loop-conditions, remove cl--loop-guard-cond.
10177	(cl--push-clause-loop-body): Apply clause to both cl--loop-conditions
10178	and cl--loop-body
10179	(cl--parse-loop-clause): Use cl--push-clause-loop-body.
10180	* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-loop-and-assignment):
10181	Use docstring.
10182	(cl-macs-loop-for-as-arith): Removed expected failure.
10183	(cl-macs-loop-conditional-step-clauses): Add some tests (bug#29799).
10184
101852019-11-22  Eli Zaretskii  <eliz@gnu.org>
10186
10187	Fix uses of inhibit-message in package.el
10188
10189	* lisp/emacs-lisp/package.el (package-generate-autoloads)
10190	(package--compile, package--save-selected-packages): Don't use
10191	'inhibit-message' to bind 'noninteractive' and 'save-silently',
10192	since 'inhibit-message' already disables all messages.
10193	(Bug#38264)
10194
101952019-11-22  Hong Xu  <hong@topbug.net>
10196
10197	font-lock special attributes in python-mode
10198
10199	* lisp/progmodes/python.el (python-font-lock-keywords-level-2): Add
10200	special attributes (bug#38318).
10201
102022019-11-22  Lars Ingebrigtsen  <larsi@gnus.org>
10203
10204	Give better error messages in image-convert
10205
10206	* lisp/image/image-converter.el (image-convert): Make
10207	image-convert bug out earlier on a wrong IMAGE-FORMAT value
10208	(bug#38310).
10209
102102019-11-22  João Távora  <joaotavora@gmail.com>
10211
10212	Make auth-source-pass-search understand port lists
10213
10214	For cases such as a typical IMAP Gnus setup, auto-source-pass-search
10215	is passed a list of "port aliases" like (993 "imaps" "imap" "993"
10216	"143") in hopes of finding a matching ~/.password-store entry.
10217
10218	This modification makes this library understand and unroll the port
10219	list so that, i.e. "domain:993", "domain:imaps"", "domain:imap",
10220	etc. are computed as potential suffixes.  Previously a nonsensical
10221	string "domain:(993 imaps imap ...)" was returned.
10222
10223	* lisp/auth-source-pass.el
10224	(auth-source-pass--generate-entry-suffixes): Allow PORT to be a list
10225	of ports.
10226
102272019-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
10228
10229	* lisp/emacs-lisp/smie.el (smie-next-sexp): Fix bug#38255
10230
10231	Handle the case where the token is not in `smie-grammar`, either because
10232	the caller is making an error, or because it's a paren-like token that's
10233	not handled in the grammar but directly via the syntax tables.
10234
102352019-11-21  Lars Ingebrigtsen  <larsi@gnus.org>
10236
10237	Make `C-c C-w' insert a signature even when overridden
10238
10239	* lisp/gnus/message.el (message-insert-signature): When called
10240	interactively, look harder for a signature to insert (bug#38289).
10241
102422019-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
10243
10244	* lisp/minibuffer.el (completions-common-part): Make it blue when possible
10245
10246	* lisp/files.el (locate-file-completion-table): Fix typo
10247
102482019-11-21  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
10249
10250	Add new variable to prevent flex completion style
10251
10252	matching spaces.  This allows flex style working smoothly with other
10253	styles like helm using spaces.
10254
10255	* lisp/minibuffer.el (completion-flex-nospace): New user var.
10256	(completion-flex-try-completion): Use it.
10257	(completion-flex-all-completions): Same.
10258
102592019-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
10260
10261	When verilog-auto-ignore-concat is true, also ignore parenthesized signals.
10262
10263	* lisp/progmodes/verilog-mode.el (verilog-auto-ignore-concat): When
10264	`verilog-auto-ignore-concat' is true, also ignore parenthesized
10265	signals.
10266
102672019-11-21  Eric Abrahamsen  <eric@ericabrahamsen.net>
10268
10269	Fix Gnus summary backtab keybindings to use button-based functions
10270
10271	* lisp/gnus/gnus-sum.el (gnus-summary-mode-map,
10272	  gnus-summary-article-map): Backtab should call
10273	  gnus-summary-button-backward, not gnus-summary-widget-backward.
10274
102752019-11-21  Eli Zaretskii  <eliz@gnu.org>
10276
10277	Fix file notifications on macOS
10278
10279	* src/kqueue.c (Fkqueue_add_watch): Don't use encoded file
10280	names in objects and APIs that expect decoded multibyte
10281	strings.  (Bug#38287)
10282
102832019-11-21  Eli Zaretskii  <eliz@gnu.org>
10284
10285	Fix a recent change in ELisp manual
10286
10287	* doc/lispref/objects.texi (Special Read Syntax): Fix wording
10288	of the last change: don't document #' twice.  (Bug#38278)
10289
102902019-11-21  Eli Zaretskii  <eliz@gnu.org>
10291
10292	Support 'vc-region-history' for Mercurial
10293
10294	* lisp/vc/vc-hg.el (vc-hg-region-history)
10295	(vc-hg-region-history-font-lock, vc-hg-region-history-mode):
10296	New functions.
10297	(vc-hg-region-history-mode-map)
10298	(vc-hg--log-view-long-font-lock-keywords)
10299	(vc-hg-region-history-font-lock-keywords): New variables.
10300	* lisp/vc/vc-git.el (vc-git-region-history): Update commentary.
10301
10302	* doc/emacs/maintaining.texi (VC Change Log): Add
10303	'vc-region-history' to the table at beginning of node.  Update
10304	the VCSes that support 'vc-region-history'.
10305
10306	* etc/NEWS: Mention the new feature of vc-hg.el.
10307
103082019-11-21  Lars Ingebrigtsen  <larsi@gnus.org>
10309
10310	Fix up previous #' documentation addition
10311
10312	* doc/lispref/objects.texi (Special Read Syntax): Add an xref for
10313	the #' (bug#38278).
10314
103152019-11-21  Lars Ingebrigtsen  <larsi@gnus.org>
10316
10317	Document the #' syntax
10318
10319	* doc/lispref/objects.texi (Special Read Syntax): Document the #'
10320	syntax (bug#38278).
10321
103222019-11-21  Lars Ingebrigtsen  <larsi@gnus.org>
10323
10324	Restore point after sending a message
10325
10326	* lisp/gnus/message.el (message-send-and-exit): Restore point
10327	after sending (bug#38303).
10328
103292019-11-21  Lars Ingebrigtsen  <larsi@gnus.org>
10330
10331	Make pp-buffer into a command
10332
10333	* lisp/emacs-lisp/pp.el (pp-buffer): Make into a command (bug#38306).
10334
103352019-11-21  Lars Ingebrigtsen  <larsi@gnus.org>
10336
10337	Fix loading image-converter in the case where the type is passed in
10338
10339	* lisp/image.el (create-image): Load image-converter when
10340	converting images (bug#38310).
10341
103422019-11-21  Lars Ingebrigtsen  <larsi@gnus.org>
10343
10344	Rewrite the image-convert doc string
10345
10346	* lisp/image/image-converter.el (image-convert): Clarify the
10347	calling convention (bug#38310).
10348
103492019-11-21  Dario Gjorgjevski  <dario.gjorgjevski+git@gmail.com>
10350
10351	Hide quoted passwords with spaces in Authinfo
10352
10353	* lisp/auth-source.el (auth-source-netrc-looking-at-one): New
10354	function, extracted from auth-source-netrc-parse-one.
10355	(auth-source-netrc-parse-one, authinfo--hide-passwords): Use
10356	auth-source-netrc-looking-at-one (bug#38311).
10357
103582019-11-21  Michael Albinus  <michael.albinus@gmx.de>
10359
10360	* lisp/net/tramp.el (tramp-unload-tramp): Do not enable ange-ftp.  (Bug#38025)
10361
103622019-11-20  Juri Linkov  <juri@linkov.net>
10363
10364	* lisp/image.el: Mouse-wheel scaling on images (bug#38187)
10365
10366	* lisp/image.el (image-mouse-increase-size)
10367	(image-mouse-decrease-size): New commands.
10368	(image-map): Bind C-wheel-down and C-mouse-5 to
10369	image-mouse-decrease-size, C-wheel-up and C-mouse-4 to
10370	image-mouse-increase-size.
10371
103722019-11-20  Paul Eggert  <eggert@cs.ucla.edu>
10373
10374	* src/sysdep.c: Improve comment wording.
10375
10376	* etc/NEWS: Improve XDG_RUNTIME_DIR doc.
10377
103782019-11-20  Michael Albinus  <michael.albinus@gmx.de>
10379
10380	Add renaming of remote buffer file names to Tramp
10381
10382	* doc/misc/tramp.texi (Default User): Fix typo.
10383	(Cleanup remote connections): Adapt arguments of
10384	`tramp-cleanup-connection'.
10385	(Renaming remote files): New node.
10386	(Frequently Asked Questions): New item "How to save files when a
10387	remote host isn't reachable anymore?".
10388
10389	* etc/NEWS: Add `tramp-rename-files' and `tramp-rename-these-files'.
10390
10391	* lisp/net/tramp-cmds.el (tramp-default-rename-alist)
10392	(tramp-confirm-rename-file-names): New defcustoms.
10393	(tramp-rename-read-file-name-dir)
10394	(tramp-rename-read-file-name-init): New defsubsts.
10395	(tramp-default-rename-file, tramp-rename-files)
10396	(tramp-rename-these-files): New defuns.
10397
10398	* lisp/net/tramp-integration.el (ido, ivy): Integrate with them.
10399
104002019-11-20  Lars Ingebrigtsen  <larsi@gnus.org>
10401
10402	Make with-suppressed-warnings work for macros, too
10403
10404	* lisp/emacs-lisp/macroexp.el (macroexp-macroexpand): Pass the
10405	macro/alias symbol on to byte-compile-warning-enabled-p so that
10406	with-suppressed-warnings works for macros, too.
10407
104082019-11-20  Robert Pluim  <rpluim@gmail.com>
10409
10410	Remove info references to gmane web search
10411
10412	* doc/misc/gnus.texi (Foreign Groups, Web Searches, What is nnir?):
10413	(Setting up nnir, Associating Engines, The imap Engine):
10414	(Customizations): Remove references to gmane web search.
10415
104162019-11-19  Stephen Gildea  <stepheng+emacs@gildea.com>
10417
10418	Expand coverage of unit tests for time-stamp
10419
10420	* test/lisp/time-stamp-tests.el: Remove redundant word "test"
10421	from the names of all the tests.
10422	(time-stamp-custom-time-zone, time-stamp-custom-pattern,
10423	time-stamp-custom-inserts-lines, time-stamp-custom-count,
10424	time-stamp-helper-safe-locals): New tests
10425
104262019-11-19  Paul Eggert  <eggert@cs.ucla.edu>
10427
10428	Make .pdmp file more reproducible
10429
10430	Problem reported by Ulrich Müller
10431	<https://lists.gnu.org/r/emacs-devel/2019-11/msg00757.html>
10432	and diagnosed by Andreas Schwab
10433	<https://lists.gnu.org/r/emacs-devel/2019-11/msg00774.html>.
10434	* src/sysdep.c (maybe_disable_address_randomization):
10435	Disable ASLR if any kind of dumping, instead of merely if
10436	unexec dumping.  Omit first arg for simplicity; all uses changed.
10437
104382019-11-19  João Távora  <joaotavora@gmail.com>
10439
10440	* lisp/icomplete.el (icomplete-fido-kill): Unbreak yes-or-no-p usage
10441
10442	Discussed in the context of bug#19064, bug#17272.
10443
104442019-11-19  Eli Zaretskii  <eliz@gnu.org>
10445
10446	Ensure Rmail summary is updated after editing a message
10447
10448	* lisp/mail/rmailedit.el (rmail-cease-edit): If this mbox file
10449	has a summary, update the summary after editing.  (Bug#38193)
10450
104512019-11-19  Eli Zaretskii  <eliz@gnu.org>
10452
10453	Fix updating members of zip archives
10454
10455	* lisp/arc-mode.el (archive-zip-case-fiddle): Change the
10456	default to nil except on MS-DOS.  Update the doc string to
10457	make clear that a non-nil value also affects updating the
10458	archive.  (Bug#38260)
10459
104602019-11-19  Robert Pluim  <rpluim@gmail.com>
10461
10462	Remember the full GTK font description
10463
10464	Remember the full font description instead of just the family so that
10465	size/style/weight settings are preserved.
10466
10467	* src/gtkutil.c (xg_get_font) [HAVE_GTK3]: Use the pango font
10468	description to set/get the current font (Bug#28901).
10469
104702019-11-19  Robert Pluim  <rpluim@gmail.com>
10471
10472	Don't error when comparing IPv4 and IPv6 addresses
10473
10474	* lisp/net/nsm.el (nsm-network-same-subnet): Compare lengths of
10475	local-ip and ip; different lengths can never match.
10476	(nsm-should-check): Chop port off end of address.
10477
104782019-11-19  Lars Ingebrigtsen  <larsi@gnus.org>
10479
10480	Allow eww to display exotic images like webp
10481
10482	* lisp/image.el (image-type): Allow passing in the image type.
10483	(create-image): Make conversion work with data in addition to files.
10484
10485	* lisp/image/image-converter.el (image-convert-p): Allow taking
10486	working on data in addition to files (bug#38036).
10487	(image-convert): Ditto.
10488	(image-converter--convert): Extend signature to say whether we're
10489	getting a file or data.
10490	(image-converter--convert-magick): Convert data.
10491	(image-converter--convert): Ditto.
10492
104932019-11-19  Juanma Barranquero  <lekktu@gmail.com>
10494
10495	Strip "(fn...)" from output of `describe-mode' (bug#38222)
10496
10497	* lisp/help.el (help--doc-without-fn): New function.
10498	(describe-mode): Use it.
10499
105002019-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
10501
10502	* lisp/org/org.el (org-mode): Add pcomplete-completions-at-point to capf.
10503
10504	This lets the normal `completion-at-point` and `complete-symbol`
10505	use `pcomplete` for completion.
10506
10507	(org-mode-map): Leave M-TAB bound to the global default since
10508	`pcomplete` is now obsolete.
10509
105102019-11-18  Juri Linkov  <juri@linkov.net>
10511
10512	* lisp/tab-line.el (tab-line-auto-hscroll): New defcustom (bug#37667)
10513
10514	(tab-line-auto-hscroll): Use this option in the function.
10515
105162019-11-18  Juri Linkov  <juri@linkov.net>
10517
10518	* lisp/vc/ediff-util.el: Set this-command to ediff-quit (bug#38219)
10519
10520	* lisp/vc/ediff-util.el (ediff-toggle-read-only, ediff-quit):
10521	Set this-command to the same command after using y-or-n-p
10522	that doesn't guarantee to keep this-command unchanged
10523	to check it later for some contrived logic.
10524
105252019-11-18  Robert Pluim  <rpluim@gmail.com>
10526
10527	Check for HAVE_GTK3 instead of a specific version
10528
10529	Our minimum GTK3 version is 3.10, the font filter functions appeared
10530	in 3.2.
10531
10532	* src/gtkutil.c (xg_font_filter) [HAVE_GTK3]: Just check for HAVE_GTK3.
10533	(xg_get_font) [HAVE_GTK3]: Same here.
10534
105352019-11-18  Michael Albinus  <michael.albinus@gmx.de>
10536
10537	* lisp/net/tramp.el (tramp-handle-file-regular-p): Improve error handling.
10538
105392019-11-18  Lars Ingebrigtsen  <larsi@gnus.org>
10540
10541	Fix cl-prettyexpand in the non-FULL case
10542
10543	* lisp/emacs-lisp/cl-extra.el (cl-prettyexpand): This function has
10544	apparently not worked for at least a couple of decades
10545	(bug#38206) unless supplied with a FULL parameter.  Make the FULL
10546	parameter obsolete and make the function always work as it did
10547	with a non-nil FULL.
10548
105492019-11-18  Phil Sainty  <psainty@orcon.net.nz>
10550
10551	Merge branch 'scratch/so-long-updates'
10552
105532019-11-18  Phil Sainty  <psainty@orcon.net.nz>
10554
10555	lisp/so-long.el: Refactor menu action commands
10556
10557	* lisp/so-long.el (so-long-menu): Call `so-long' with an ACTION
10558	argument instead of using `so-long-menu-item-replace-action'.
10559	(so-long-menu-item-replace-action): Remove the deprecated function.
10560
10561	* test/lisp/so-long-tests/so-long-tests.el
10562	(so-long-tests-so-long-menu-item-replace-action): Update the test.
10563
105642019-11-18  Phil Sainty  <psainty@orcon.net.nz>
10565
10566	* lisp/so-long.el (so-long): Firstly revert the existing action, if any
10567
10568	This makes `so-long' consistent with the action commands in the menu.
10569
10570	If multiple actions were to be layered on top of one another, we would
10571	lose the ability to revert to the normal state.  Custom actions
10572	combining multiple other actions can be defined if necessary.
10573
105742019-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
10575	    Phil Sainty  <psainty@orcon.net.nz>
10576
10577	lisp/so-long.el: Use (interactive "@") for menu commands
10578
10579	* lisp/so-long.el (so-long-menu, so-long-menu-item-replace-action)
10580	(so-long-revert): Use interactive code "@", replacing all uses of
10581	`so-long-menu-click-window'.  This approach leaves the window selected
10582	afterwards, whereas the old code did not; but that is not a problem.
10583	(so-long-menu-click-window, so-long-menu-item-revert): Remove the
10584	deprecated functions.
10585
10586	* test/lisp/so-long-tests/so-long-tests.el
10587	(so-long-tests-so-long-menu-item-replace-action): Update the test.
10588
105892019-11-17  Lars Ingebrigtsen  <larsi@gnus.org>
10590
10591	Remove the error-out test for with_harfbuzz
10592
10593	* configure.ac (HAVE_HARFBUZZ): Remove the check for explicit
10594	harfbuzz -- have_harfbuzz defaults to "yes", so we have no way of
10595	checking whether the user really asked for it, apparently.
10596
105972019-11-17  Paul Eggert  <eggert@cs.ucla.edu>
10598
10599	* lisp/simple.el (process-file): Clarify doc string.
10600
106012019-11-17  Stefan Monnier  <monnier@iro.umontreal.ca>
10602
10603	* lisp/tmm.el (tmm-add-one-shortcut): Use dolist
10604
106052019-11-17  Juri Linkov  <juri@linkov.net>
10606
10607	* lisp/subr.el (read-char-from-minibuffer, y-or-n-p): Remove discard-input.
10608
10609	(do-after-load-evaluation): Replace run-with-timer with	run-with-idle-timer
10610	to give a chance for the minibuffer to handle initial events before sit-for.
10611	https://lists.gnu.org/archive/html/emacs-devel/2019-11/msg00581.html
10612
106132019-11-17  Juri Linkov  <juri@linkov.net>
10614
10615	Auto-scrolling in tab-line (bug#37667)
10616
10617	* lisp/tab-line.el (tab-line-auto-hscroll): New function.
10618	(tab-line-format): Use tab-line-auto-hscroll.
10619
106202019-11-17  Lars Ingebrigtsen  <larsi@gnus.org>
10621
10622	Error out on --with-harfbuzz without HarfBuzz support
10623
10624	* configure.ac: Error out if the user says --with-harfbuzz, but
10625	HarfBuzz isn't available.
10626
106272019-11-17  Lars Ingebrigtsen  <larsi@gnus.org>
10628
10629	Handle FC_CHARCELL in xftfont_open
10630
10631	* src/xftfont.c (xftfont_open): FC_CHARCELL is apparently an alias
10632	for FC_DUAL used in some east Asian fonts (bug#35079).  Modelled
10633	after a patch suggested by Kenichi Handa.
10634
106352019-11-17  Eli Zaretskii  <eliz@gnu.org>
10636
10637	Support more font weight values on MS-Windows
10638
10639	* src/w32font.c (w32_to_fc_weight): Support a few more weight
10640	values, for compatibility with the GTK font selection widget
10641	(see gtkutil.c:XG_WEIGHT_TO_SYMBOL).  (Bug#24226)
10642
106432019-11-17  Alan Mackenzie  <acm@muc.de>
10644
10645	Compilation Mode: Fix arrow handling when compilation-context-lines is t
10646
10647	In particular, fix some exception occurrences, fix handling of a Compilation
10648	Mode buffer being displayed in several windows, and fix the margin when
10649	temporarily displaying a different buffer in a window, then returning to the
10650	compilation mode buffer.  The fix is relevant for frames without fringes,
10651	e.g. tty frames.
10652
10653	* lisp/progmodes/compile.el: (compilation-set-window): Always set point to
10654	(parameter) MK.
10655	(compilation--set-up-margin, compilation--tear-down-margin): New functions.
10656	(compilation--set-up-arrow-spec-in-margins)
10657	(compilation--tear-down-arrow-spec-in-margins): Renamed by introducing -- and
10658	pluralising margin to margins.  Handle the margins in _all_ windows displaying
10659	the pertinent buffer by using get-buffer-window-list.  In ...--set-up-... add
10660	compilation--set-up-margin to window-buffer-change-functions.  In
10661	...--tear-down-... remove the hook functions added in ...--set-up-....
10662
106632019-11-17  Lars Ingebrigtsen  <larsi@gnus.org>
10664
10665	Make ido-read-file-name respect ido-read-file-name-non-ido more
10666
10667	* lisp/ido.el (ido-read-file-name): Respect
10668	ido-read-file-name-non-ido in the file-directory-p case, too
10669	(bug#38231).
10670
106712019-11-17  Lars Ingebrigtsen  <larsi@gnus.org>
10672
10673	Make tables more resistant to major mode changes
10674
10675	* lisp/textmodes/table.el (table--put-cell-face-property)
10676	(table--remove-cell-properties): Ensure that we don't lose the
10677	table face when switching from buffers with font locking to ones
10678	without (or vice versa) (bug#35481).
10679
106802019-11-17  Lars Ingebrigtsen  <larsi@gnus.org>
10681
10682	Make bibtex-parse-keys more robust
10683
10684	* lisp/textmodes/bibtex.el (bibtex-parse-keys): Protect against
10685	bugging out just when starting almost-empty bibtex files
10686	(bug#30112).
10687
106882019-11-16  Juri Linkov  <juri@linkov.net>
10689
10690	* lisp/tab-bar.el: Add missing arg.
10691
10692	* lisp/tab-bar.el (tab-bar-list-next-line)
10693	(tab-bar-list-prev-line): Add missing interactive spec for prefix arg.
10694
10695	* lisp/mouse.el (mouse-buffer-menu-mode-groups): Add "Git" regexp
10696	to match "Git-Region-History" mode name for "Version Control" group.
10697
106982019-11-16  Juri Linkov  <juri@linkov.net>
10699
10700	* lisp/simple.el (eval-expression-print-maximum-character): Use choice type.
10701
10702	https://lists.gnu.org/archive/html/emacs-devel/2019-11/msg00433.html
10703
107042019-11-16  Juri Linkov  <juri@linkov.net>
10705
10706	* lisp/dired.el (dired-dwim-target): Add choice dired-dwim-target-next-visible
10707
10708	* lisp/dired-aux.el (dired-dwim-target-next): Add arg ALL-FRAMES.
10709	(dired-dwim-target-next-visible): New function.
10710
10711	* doc/emacs/dired.texi (Operating on Files): Describe function value
10712	of dired-dwim-target.  (Bug#35385)
10713
107142019-11-16  Eli Zaretskii  <eliz@gnu.org>
10715
10716	Fix display of R2L text
10717
10718	* src/xdisp.c (extend_face_to_end_of_line): Fix padding of R2L
10719	screen lines with stretch glyph on the left.  (Bug#38233)
10720
107212019-11-16  Shingo Tanaka  <shingo.fg8@gmail.com>
10722
10723	Fix moving files with duplicate names to trash-can
10724
10725	* lisp/files.el (move-file-to-trash): Fix file name in
10726	trash-can when another deleted file under the same name is
10727	already stored there.  (Bug#37922)
10728
107292019-11-16  Martin Rudalics  <rudalics@gmx.at>
10730
10731	Do not report move frame events for tooltip frames (Bug#38213)
10732
10733	* src/w32term.c (w32_read_socket):
10734	* src/xterm.c (handle_one_xevent): Do not report move frame events
10735	for tooltip frames (Bug#38213).
10736
107372019-11-15  Michael Orlitzky  <michael@orlitzky.com>  (tiny change)
10738
10739	tex-mode: paragraph separator groups text and comments
10740
10741	* lisp/textmodes/tex-mode.el (latex-mode): Don't wrap text with
10742	leading spaces into preceding comments (bug#38152).
10743
107442019-11-15  Lars Ingebrigtsen  <larsi@gnus.org>
10745
10746	Don't move point on undefined keystrokes in the article buffer
10747
10748	* lisp/gnus/gnus-art.el (gnus-article-read-summary-keys): Don't
10749	move point on undefined commands (bug#38227).
10750
107512019-11-15  Lars Ingebrigtsen  <larsi@gnus.org>
10752
10753	Make button-1 work on all Gnus buttons
10754
10755	* lisp/gnus/gnus-icalendar.el (gnus-icalendar-insert-button):
10756	* lisp/gnus/gnus-art.el (gnus-insert-mime-button)
10757	(gnus-mime-display-alternative, gnus-insert-prev-page-button)
10758	(gnus-insert-next-page-button)
10759	(gnus-insert-mime-security-button): Make button-1 work on all the
10760	Gnus buttons (bug#38144).
10761
107622019-11-15  Lars Ingebrigtsen  <larsi@gnus.org>
10763
10764	Make it clear what edebug-remove-instrumentation offers
10765
10766	* doc/lispref/edebug.texi (Instrumenting): Reword the description
10767	of the edebug-remove-instrumentation command.
10768
107692019-11-15  Paul Eggert  <eggert@cs.ucla.edu>
10770
10771	Port new float-scaling code to Solaris
10772
10773	* src/floatfns.c (double_integer_scale): Simplify, so that the
10774	function works when (FP_ILOGBNAN == INT_MAX && FP_ILOGB0 == INT_MIN),
10775	as on Solaris.
10776
107772019-11-15  João Távora  <joaotavora@gmail.com>
10778
10779	Make icomplete-tidy-shadowed-file-names less aggressive
10780
10781	When using this option and editing input, some transient situations
10782	may arise that lead to file-name shadowing, but that shouldn't
10783	necessarily lead to auto-delete behaviour, which will be suprising.
10784
10785	In '/foo/x/bar', if the user deletes the 'x', shadowing occurs, but
10786	probably shouldn't.  So, somewhat like ido-mode, only auto-tidy
10787	shadowed file names if the user is inserting text at end of input.
10788
10789	* lisp/icomplete.el (icomplete-exhibit): Check this-command.
10790	(icomplete-tidy-shadowed-file-names): Tweak docstring.
10791
107922019-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
10793
10794	* lisp/progmodes/perl-mode.el (perl-calculate-indent): Indent qw(...)
10795
10796	Fix initialization of `state`.
10797	Special-case `qw(...)` because we do want to indent its contents.
10798
107992019-11-15  Robert Pluim  <rpluim@gmail.com>
10800
10801	Used magic-fallback-mode-alist to detect .doc files (Bug#20891)
10802
10803	This avoids running doc-view-mode on files that are actually text
10804	files.
10805
10806	* lisp/files.el (auto-mode-alist): Don't use doc-view-mode-maybe
10807	for .doc (but continue to do so for .docx).
10808	(magic-fallback-mode-alist): Add signature for .doc files.
10809
108102019-11-15  Eli Zaretskii  <eliz@gnu.org>
10811
10812	Improve indexing of function doc string conventions
10813
10814	* doc/lispref/functions.texi (Function Documentation): Improve
10815	indexing (bug#38158).
10816
108172019-11-15  Paul Eggert  <eggert@cs.ucla.edu>
10818
10819	Port hexdigit init to non-GCC + pdumper
10820
10821	The old code assumed that hexdigit initialization (needed by
10822	non-GCC) could be done in syms_of_character, but that is no longer
10823	true with pdumper.  Instead, simplify hexdigit init so that it can
10824	be done statically on all C99 platforms.  Problem discovered on
10825	Solaris 10 sparc + Oracle Solaris Studio 12.6.
10826	* src/character.c (hexdigit): Add 1 to every value; all uses
10827	changed.  This simplifies the initialization so that it can be
10828	done statically on any C99 compiler.  hexdigit is now always const.
10829	(syms_of_character): Omit no-longer-necessary initialization.
10830	* src/character.h (HEXDIGIT_CONST, HEXDIGIT_IS_CONST):
10831	Remove.  All uses removed.
10832
108332019-11-15  Eli Zaretskii  <eliz@gnu.org>
10834
10835	Improve documentation of 'add-variable-watcher'
10836
10837	* doc/lispref/variables.texi (Watching Variables): Clarify the
10838	documentation of 'add-variable-watcher' and fix markup.
10839
10840	* src/data.c (Fadd_variable_watcher): Clarify the doc string.
10841	(Bug#38205)
10842
108432019-11-15  Lars Ingebrigtsen  <larsi@gnus.org>
10844
10845	Avoid using subr-x function
10846
10847	* lisp/vc/vc-hg.el (vc-hg-retrieve-tag): Avoid using subr-x
10848	function (bug#38216).
10849
108502019-11-15  Martin Rudalics  <rudalics@gmx.at>
10851
10852	In 'dframe-frame-mode' avoid 'switch-to-buffer' (Bug#37840)
10853
10854	* lisp/dframe.el (dframe-frame-mode): Use 'set-window-buffer'
10855	instead of 'switch-to-buffer’ to avoid that
10856	'switch-to-buffer-obey-display-actions' butts in (Bug#37840).
10857
108582019-11-15  Andrii Kolomoiets  <andreyk.mad@gmail.com>
10859
10860	lisp/vc/vc-hg.el: Don't pass empty string to hg update
10861
10862	* lisp/vc/vc-hg.el (vc-hg-retrieve-tag): Don't pass empty name to
10863	`hg update` (bug#38216).
10864
108652019-11-15  Lele Gaifax  <lele@metapensiero.it>
10866
10867	Fix minor formatting issue in isearch-forward documentation
10868
10869	* lisp/isearch.el (isearch-forward): Doc string formatting fix
10870	(bug#38207).
10871
108722019-11-15  Lars Ingebrigtsen  <larsi@gnus.org>
10873
10874	Make edebug-remove-instrumentation remove macro instrumentation
10875
10876	* lisp/emacs-lisp/edebug.el (edebug-remove-instrumentation):
10877	Macros can also have edebug instrumentation, so remove that as
10878	well (bug#38195).
10879
108802019-11-14  Robert Pluim  <rpluim@gmail.com>
10881
10882	Update nnir-method-default-engines version tag
10883
10884	* lisp/gnus/nnir.el (nnir-method-default-engines): Update version tag.
10885
108862019-11-14  Eli Zaretskii  <eliz@gnu.org>
10887
10888	Fix a recent change in xdisp.c
10889
10890	* src/xdisp.c (tty_handle_tab_bar_click): Revert the last
10891	change which made this work only in the HAVE_NTGUI build.
10892	This function is needed by any build which supports a  mouse
10893	on TTY frames.
10894
108952019-11-14  Paul Eggert  <eggert@cs.ucla.edu>
10896
10897	Handle weird cases like (ceil 0 0.0)
10898
10899	* src/floatfns.c (double_integer_scale): Distinguish Inf from NaN.
10900	(rounding_driver): Handle (ceil 0 0.0) and (ceil 0 1.0e+INF).
10901	* test/src/floatfns-tests.el (special-round): Add tests for
10902	weird cases like this.
10903
10904	Avoid crash with (floor 0 0.0)
10905	* src/floatfns.c (rounding_driver): Signal an arithmetic
10906	error if divisor is 0.0 or -0.0, instead of crashing.
10907
109082019-11-14  Stefan Monnier  <monnier@iro.umontreal.ca>
10909
10910	* lisp/cedet/semantic/db.el: Use lexical-binding
10911
10912	Also prefer setf over oset.
10913	(semanticdb-abstract-table-list): Always define.
10914	(semanticdb--inhibit-make-directory): Fix name of declaration to match
10915	name of variable actually used.
10916	(semanticdb-with-match-any-mode): Use `declare`.  Add Edebug spec.
10917	(semanticdb-project-roots): Remove redundant :group.
10918
109192019-11-14  Paul Eggert  <eggert@cs.ucla.edu>
10920
10921	Fix byte-counting error in ‘format’
10922
10923	Problem reported by Paul Pogonyshev (Bug#38191).
10924	* src/editfns.c (styled_format): When checking for adjacent
10925	%-sequences, use byte position rather than character position.
10926	* test/src/editfns-tests.el (format-properties): Test for fix.
10927
109282019-11-14  Paul Eggert  <eggert@cs.ucla.edu>
10929
10930	In Cairo builds, omit some unnecessary functions
10931
10932	* src/font.c (fset_font_data, font_put_frame_data)
10933	(font_get_frame_data):
10934	* src/ftfont.c (ftfont_open, ftfont_close)
10935	(ftfont_encode_char, ftfont_glyph_metrics)
10936	(ftfont_text_extents, ftfont_driver):
10937	Define only if USE_CAIRO.
10938	* src/xdisp.c (tty_handle_tab_bar_click):
10939	Define only if HAVE_NTGUI && !CYGWIN.
10940
109412019-11-14  Dmitry Gutov  <dgutov@yandex.ru>
10942
10943	(repos-count-screen-lines): Narrow without changing point-min
10944
10945	* lisp/reposition.el (repos-count-screen-lines): Narrow without
10946	changing point-min.  It wasn't necessary for vertical-motion to
10947	work, and it had some adverse effects on how font-lock rules were
10948	applied
10949	(https://lists.gnu.org/archive/html/emacs-devel/2019-11/msg00522.html).
10950	This can also be an alternative fix for bug#38049.
10951
109522019-11-14  Alan Mackenzie  <acm@muc.de>
10953
10954	CC Mode: Fix two bugs in the "state cache".
10955
10956	This (along with a suggestion to the OP to set
10957	open-paren-in-column-0-is-defun-start to nil) fixes bug #37910.  It may also
10958	have fixed bug #5490 and bug #18072.
10959
10960	* lisp/progmodes/cc-engine.el (c-state-cache-non-literal-place): Remove thi
10961	non-sensical function, replacing it with ....
10962	(c-state-cache-lower-good-pos): New function.
10963	(c-renarrow-state-cache, c-append-lower-brace-pair-to-state-cache)
10964	(c-remove-stale-state-cache, c-remove-stale-state-cache-backwards): Instead of
10965	altering the state-cache list structure with setcar and setcdr, use setq and
10966	consing.
10967	(c-parse-state-1): Call c-state-cache-lower-good-pos rather than
10968	c-state-cache-non-literal-place.
10969
109702019-11-14  Robert Pluim  <rpluim@gmail.com>
10971
10972	Remove unneeded font_is_ignored prototype
10973
10974	* src/gtkutil.h: Remove unneeded prototype for font_is_ignored,
10975	it's in font.h now.
10976
109772019-11-14  Phil Sainty  <psainty@orcon.net.nz>
10978
10979	Merge branch 'scratch/so-long-updates'
10980
109812019-11-14  Phil Sainty  <psainty@orcon.net.nz>
10982
10983	Make so-long disable flymake, flyspell, flycheck
10984
10985	* lisp/so-long.el (so-long-minor-modes): Add flymake-mode, flyspell-mode,
10986	and flycheck-mode.
10987
109882019-11-14  Phil Sainty  <psainty@orcon.net.nz>
10989
10990	Support loading so-long.el on top of an earlier version
10991
10992	* lisp/so-long.el (so-long-version, so-long--latest-version): New variables.
10993
10994	This enables users to safely load version 1.0 of so-long.el on top of
10995	an earlier version, as well as making provisions for doing likewise
10996	following any incompatible changes arising in future versions.
10997
109982019-11-14  Phil Sainty  <psainty@orcon.net.nz>
10999
11000	Backwards-compatibility function definitions for so-long.el
11001
11002	* lisp/so-long.el (so-long-inhibit-whitespace-mode)
11003	(so-long-make-buffer-read-only, so-long-revert-buffer-read-only)
11004	(so-long-inhibit-global-hl-line-mode): Restore dummy definitions of
11005	now-obsolete hook functions used by earlier versions of so-long.el,
11006	to support users who have saved these symbols in their customized
11007	values for the hooks in question.
11008
110092019-11-14  Phil Sainty  <psainty@orcon.net.nz>
11010
11011	* lisp/so-long.el (so-long-unload-function): Improved feature unload
11012
110132019-11-14  Phil Sainty  <psainty@orcon.net.nz>
11014
11015	Defer triggering `so-long' until the buffer is displayed
11016
11017	* lisp/so-long.el (so-long-invisible-buffer-function): New user option.
11018	(so-long--set-auto-mode): Use so-long-invisible-buffer-function.
11019	(so-long-deferred): New function/value for so-long-invisible-buffer-function.
11020	(so-long, so-long--disable): Support for so-long-deferred.
11021
11022	* test/lisp/so-long-tests/autoload-longlines-mode-tests.el
11023	* test/lisp/so-long-tests/autoload-major-mode-tests.el
11024	* test/lisp/so-long-tests/autoload-minor-mode-tests.el
11025	* test/lisp/so-long-tests/so-long-tests.el:
11026	Support for so-long-deferred.
11027
11028	Pre-existing tests have been updated to ensure the buffer is already
11029	displayed in cases where a call to `normal-mode' is the (potential)
11030	trigger for `so-long'.
11031
110322019-11-14  Eli Zaretskii  <eliz@gnu.org>
11033
11034	Fix recent documentation changes
11035
11036	* doc/lispref/minibuf.texi (Multiple Queries): Move the
11037	reference to 'read-char-from-minibuffer' from here...
11038	* doc/lispref/commands.texi (Reading One Event): ...to here.
11039	Fix the wording of the description of
11040	'read-char-from-minibuffer'.
11041
110422019-11-14  Robert Pluim  <rpluim@gmail.com>
11043
11044	Make GTK font chooser respect face-ignored-fonts
11045
11046	* src/font.c (font_delete_unmatched): Move Vface_ignored_fonts
11047	matching to...
11048	(font_is_ignored): ..Here.  New function.
11049	* src/gtkutil.c (xg_font_filter): New function, uses font_is_ignored
11050	to filter fonts.
11051	(xg_get_font): Set GTK font chooser filter to xg_font_filter.
11052	* src/gtkutil.h: Add prototype for font_is_ignored.
11053
110542019-11-14  Katsumi Yamaoka  <yamaoka@jpl.org>
11055
11056	Obsolete rfc2047-quote-special-characters-in-quoted-strings (bug#38200)
11057
11058	* lisp/mail/rfc2047.el
11059	(rfc2047-quote-special-characters-in-quoted-strings): Make obsolete
11060	instead of removing it.
11061
110622019-11-14  Katsumi Yamaoka  <yamaoka@jpl.org>
11063
11064	Remove rfc2047-quote-special-characters-in-quoted-strings (bug#38200)
11065
11066	* lisp/mail/rfc2047.el
11067	(rfc2047-quote-special-characters-in-quoted-strings): Remove function.
11068	(rfc2047-encode-message-header, rfc2047-encode-region): Don't use it.
11069
110702019-11-13  Andrii Kolomoiets  <andreyk.mad@gmail.com>
11071
11072	(vc-default-update-on-retrieve-tag): Accept backend argument
11073
11074	* lisp/vc/vc.el (vc-default-update-on-retrieve-tag): Accept
11075	backend argument (bug#38156).  This fixes a bug introduced in the
11076	previous patch.
11077
110782019-11-13  Lars Ingebrigtsen  <larsi@gnus.org>
11079
11080	Fix mouse-1 on Gnus article buffer buttons
11081
11082	* lisp/gnus/gnus-art.el (gnus-article-add-button): Make mouse-1
11083	work as required by mouse-1-click-follows-link (bug#38144).
11084
110852019-11-13  Andrii Kolomoiets  <andreyk.mad@gmail.com>
11086
11087	VC: ability to skip update buffers prompt
11088
11089	* lisp/vc/vc.el (vc-default-update-on-retrieve-tag): New function.
11090	(vc-retrieve-tag): Call `update-on-retrieve-tag' backend function
11091	to determine if prompt for update buffers is needed; Include tag
11092	name into the "Retrieving tag" message.
11093	* lisp/vc/vc-git.el (vc-git-update-on-retrieve-tag):
11094	* lisp/vc/vc-hg.el (vc-hg-update-on-retrieve-tag):
11095	* lisp/vc/vc-svn.el (vc-svn-udate-on-retrieve-tag): New functions.
11096	Buffers update prompt on `vc-retrieve-tag' is omitted (bug#38156).
11097
110982019-11-13  Braun Gábor  <braungb88@gmail.com>  (tiny change)
11099
11100	Make clone-buffer not unbind global variable
11101
11102	* lisp/simple.el (clone-buffer): Make clone-buffer not globally
11103	unset locally void variable (bug#38179).
11104
111052019-11-13  Lars Ingebrigtsen  <larsi@gnus.org>
11106
11107	Update signature in etc/DISTRIB
11108
11109	* etc/DISTRIB: Update signature (bug#38188).
11110
111112019-11-13  Lars Ingebrigtsen  <larsi@gnus.org>
11112
11113	Make dired-do-compress-to require format-spec
11114
11115	* lisp/dired-aux.el (dired-do-compress-to): Require format-spec
11116	runtime (bug#38189).
11117
111182019-11-13  Lars Ingebrigtsen  <larsi@gnus.org>
11119
11120	Allow using edebug-remove-instrumentation more fine-grained
11121
11122	* lisp/emacs-lisp/edebug.el (edebug-remove-instrumentation):
11123	Prompt the user for what functions to remove instrumentation from
11124	a la cancel-edebug-on-entry (bug#38195).
11125
111262019-11-13  Stephen Gildea  <stepheng+emacs@gildea.com>
11127
11128	time-stamp: update support for time zone numeric offset
11129
11130	* lisp/time-stamp.el (time-stamp-string-preprocess): Change new format for
11131	numeric time zone from %:z to %5z to match format-time-string better.
11132	(time-stamp-format): Document support for numeric time zone.
11133	See discussion in bug#32931.
11134
11135	* NEWS: Mention time-stamp-format %5z.
11136
111372019-11-13  Katsumi Yamaoka  <yamaoka@jpl.org>
11138
11139	Don't show Attachment(s) header in html article viewed with browse-url
11140
11141	* lisp/gnus/gnus-art.el (gnus-article-browse-html-article):
11142	Bind gnus-mime-display-attachment-buttons-in-header to nil.
11143
111442019-11-13  Juri Linkov  <juri@linkov.net>
11145
11146	* lisp/tab-line.el (tab-line-tabs-buffer-list): Use window-prev-buffers too.
11147
11148	* lisp/tab-line.el (tab-line-tabs-buffer-list): Move window-prev-buffers here
11149	from tab-line-tabs-buffer-groups.
11150
111512019-11-13  Paul Eggert  <eggert@cs.ucla.edu>
11152
11153	Fix double-rounding bug in ceiling etc.
11154
11155	This is doable now that we have bignums.
11156	* src/floatfns.c (integer_value): Remove; no longer used.
11157	(rescale_for_division): New function.
11158	(rounding_driver): Use it to divide properly (by using bignums)
11159	even when arguments are float, fixing a double-rounding FIXME.
11160	* src/lisp.h (LOG2_FLT_RADIX): Move here ...
11161	* src/timefns.c (frac_to_double): ... from here.
11162	* test/src/floatfns-tests.el (big-round):
11163	Add a test to catch the double-rounding bug.
11164
111652019-11-13  Paul Eggert  <eggert@cs.ucla.edu>
11166
11167	Refactor bignum multiplication, exponentiation
11168
11169	This doesn’t alter behavior, and simplifies the next commit.
11170	* src/bignum.c (GMP_NLIMBS_MAX, NLIMBS_LIMIT, emacs_mpz_size)
11171	(emacs_mpz_mul, emacs_mpz_mul_2exp, emacs_mpz_pow_ui): Move here ...
11172	* src/data.c: ... from here.
11173
111742019-11-13  Paul Eggert  <eggert@cs.ucla.edu>
11175
11176	Refactor double integer scaling
11177
11178	This doesn’t alter behavior, and simplifies a future commit.
11179	* src/floatfns.c (double_integer_scale): New function,
11180	with body adapted from the old timefns.c.
11181	* src/timefns.c (decode_float_time): Use it.
11182
111832019-11-13  Michael Albinus  <michael.albinus@gmx.de>
11184
11185	Finish last Tramp patch
11186
11187	* lisp/net/tramp.el (outline-regexp): Remove declaration.
11188	(tramp-debug-outline-regexp): Add thread regexp.
11189	(tramp-debug-font-lock-keywords): New defconst.
11190	(tramp-debug-outline-level): Adapt to changed
11191	`tramp-debug-outline-regexp'.
11192	(tramp-get-debug-buffer): Use `tramp-debug-font-lock-keywords'.
11193
111942019-11-13  Robert Pluim  <rpluim@gmail.com>
11195
11196	Add "Noto Color Emoji" to face-ignored-fonts
11197
11198	* src/xfaces.c (syms_of_xfaces) [HAVE_XFT]: Add "Noto Color Emoji" to
11199	face-ignored-fonts (Bug#37786).
11200
112012019-11-13  Michael Albinus  <michael.albinus@gmx.de>
11202
11203	Some refinement in Tramp debug buffer.
11204
11205	* lisp/net/tramp.el (outline-regexp): Remove declaration.
11206	(tramp-debug-font-lock-keywords): New defconst.
11207	(tramp-get-debug-buffer): Use it.
11208
112092019-11-13  Michael Albinus  <michael.albinus@gmx.de>
11210
11211	Adapt Tramp docstrings according to checkdoc
11212
11213	* lisp/net/tramp.el (tramp-backup-directory-alist)
11214	(tramp-echoed-echo-mark-regexp, tramp-syntax-values)
11215	(tramp-lookup-syntax, tramp-build-prefix-format)
11216	(tramp-build-prefix-regexp, tramp-build-method-regexp)
11217	(tramp-build-postfix-method-format)
11218	(tramp-build-postfix-method-regexp)
11219	(tramp-build-prefix-ipv6-format, tramp-build-prefix-ipv6-regexp)
11220	(tramp-build-postfix-ipv6-format)
11221	(tramp-build-postfix-ipv6-regexp)
11222	(tramp-build-postfix-host-format)
11223	(tramp-build-postfix-host-regexp, tramp-unknown-id-string)
11224	(tramp-unknown-id-integer, tramp-build-file-name-regexp)
11225	(tramp-build-completion-file-name-regexp, tramp-chunksize)
11226	(tramp-find-method, tramp-find-user, tramp-find-host)
11227	(tramp-dissect-file-name, tramp-get-buffer)
11228	(tramp-get-connection-buffer, tramp-debug-message, tramp-error)
11229	(with-tramp-connection-property, tramp-run-real-handler)
11230	(tramp-file-name-for-operation, tramp-file-name-handler)
11231	(tramp-completion-file-name-handler)
11232	(tramp-completion-handle-file-name-completion)
11233	(tramp-completion-dissect-file-name)
11234	(tramp-completion-dissect-file-name1)
11235	(tramp-handle-file-name-as-directory)
11236	(tramp-handle-file-name-directory)
11237	(tramp-handle-file-name-nondirectory, tramp-mode-string-to-int)
11238	(tramp-file-mode-from-int):
11239	* lisp/net/tramp-adb.el (tramp-adb-file-name-p):
11240	* lisp/net/tramp-archive.el (tramp-archive-run-real-handler)
11241	(tramp-archive-file-name-handler)
11242	(tramp-archive-dissect-file-name)
11243	(with-parsed-tramp-archive-file-name)
11244	(tramp-archive-gvfs-file-name, tramp-archive-handle-access-file):
11245	* lisp/net/tramp-cmds.el (tramp-list-remote-buffers):
11246	* lisp/net/tramp-compat.el (tramp-unload-file-name-handlers)
11247	(tramp-compat-funcall, tramp-compat-tramp-file-name-slots):
11248	* lisp/net/tramp-ftp.el (tramp-ftp-file-name-handler)
11249	(tramp-ftp-file-name-p):
11250	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-p)
11251	(tramp-gvfs-file-name-handler)
11252	(tramp-gvfs-stringify-dbus-message)
11253	(tramp-gvfs-monitor-process-filter)
11254	(tramp-gvfs-handler-mounted-unmounted):
11255	* lisp/net/tramp-integration.el
11256	(tramp-rfn-eshadow-update-overlay-regexp):
11257	* lisp/net/tramp-rclone.el (tramp-rclone-file-name-p)
11258	(tramp-rclone-file-name-handler, tramp-rclone-send-command):
11259	* lisp/net/tramp-sh.el (tramp-sh--quoting-style-options)
11260	(tramp-sh-gio-monitor-process-filter)
11261	(tramp-sh-gvfs-monitor-dir-process-filter)
11262	(tramp-sh-inotifywait-process-filter, tramp-find-executable)
11263	(tramp-set-remote-path, tramp-open-shell, tramp-find-shell)
11264	(tramp-send-command-and-check, tramp-shell-case-fold)
11265	(tramp-get-remote-path):
11266	* lisp/net/tramp-smb.el (tramp-smb-file-name-p)
11267	(tramp-smb-file-name-handler)
11268	(tramp-smb-do-file-attributes-with-stat)
11269	(tramp-smb-handle-substitute-in-file-name)
11270	(tramp-smb-get-stat-capability, tramp-smb-shell-quote-argument):
11271	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-file-name-p)
11272	(tramp-sudoedit-file-name-handler)
11273	(tramp-sudoedit-send-command-string):
11274	* test/lisp/net/tramp-archive-tests.el (tramp-archive-test-all):
11275	* test/lisp/net/tramp-tests.el (tramp--test-gvfs-p)
11276	(tramp--test-with-proper-process-name-and-buffer)
11277	(tramp-test-all): Adapt docstrings according to `checkdoc'.
11278
112792019-11-13  João Távora  <joaotavora@gmail.com>
11280
11281	Avoid fido-mode's setup on non-icomplete minibuffers
11282
11283	Otherwise we would lose things like C-r (isearch-backward) when doing
11284	simple stuff like non-icomplete pp-eval-expression.
11285
11286	* lisp/icomplete.el (icomplete--fido-mode-setup): Restrict setup
11287	to when icomplete-mode really kicks in.
11288
112892019-11-12  Juri Linkov  <juri@linkov.net>
11290
11291	* lisp/tab-line.el (tab-line-tabs-buffer-list-function): New variable.
11292
11293	(tab-line-tabs-buffer-list): New function.
11294	(tab-line-tabs-mode-buffers, tab-line-tabs-buffer-groups):
11295	Call tab-line-tabs-mode-buffers.
11296	(tab-line-tabs-buffer-groups): Add 'close' function that uses
11297	kill-buffer instead of bury-buffer that makes no sense here.
11298	(tab-line-format): Don't show the close button when a tab
11299	has no 'close' function or buffer.
11300	(tab-line-switch-to-prev-tab, tab-line-switch-to-next-tab):
11301	Support tabs with 'buffer' properties.
11302	(tab-line-close-tab): Call 'close' function when defined.
11303
113042019-11-12  Juri Linkov  <juri@linkov.net>
11305
11306	* lisp/dired.el (dired-dwim-target): Add new choices (bug#35385)
11307
11308	* lisp/dired.el (dired-dwim-target): Add choices
11309	dired-dwim-target-next and dired-dwim-target-recent.
11310
11311	* lisp/dired-aux.el (dired-dwim-target-next)
11312	(dired-dwim-target-recent): New functions.
11313	(dired-dwim-target-directories): Call either of them.
11314
11315	* doc/emacs/dired.texi (Operating on Files): Mention new
11316	preferences in dired-dwim-target.
11317
113182019-11-12  Paul Eggert  <eggert@cs.ucla.edu>
11319
11320	Conditionally omit edition numbers, dates in doc
11321
11322	This redoes the 2019-11-02T00:24:02!eggert@cs.ucla.edu patch,
11323	updated after consultation with John Sullivan.
11324	Omit printed edition numbers in online manuals while keeping
11325	them in printed manuals.  In online manuals the edition
11326	numbers seem to cause more confusion than they cure; e.g.,
11327	https://shop.fsf.org/books/gnu-emacs-manual-18th-edition-v-261
11328	currently advertises "18th edition" even as it points to
11329	https://www.gnu.org/software/emacs/manual/pdf/emacs.pdf which
11330	says "Seventeenth Edition".  It is simpler and less confusing
11331	to stick to one version number like "27.0" in online manuals.
11332	For printed manuals people can run, e.g., "texi2any -D
11333	'EDITION Nineteenth'" when generating the 19th printed edition
11334	of the Emacs manual.
11335	* doc/emacs/emacs.texi (EDITION):
11336	* doc/lispintro/emacs-lisp-intro.texi (edition-number, update-date):
11337	* doc/lispref/elisp.texi (VERSION, DATE):
11338	Remove definitions.  Instead, let the person printing the book
11339	specify these values, with the default being the online version
11340	which does not have printed edition numbers.
11341	* doc/lispintro/emacs-lisp-intro.texi (titlepage-edition-number):
11342	New flag, for the edition number as it appears on the title page.
11343
113442019-11-12  Martin Rudalics  <rudalics@gmx.at>
11345
11346	Make sure buffer is live before retrieving underline properties (Bug#38038)
11347
11348	* src/window.h (WINDOW_BUFFER_LOCAL_VALUE): New macro.
11349	* src/nsterm.m (ns_draw_text_decoration):
11350	* src/w32term.c (w32_draw_glyph_string):
11351	* src/xterm.c (x_draw_glyph_string): Make sure buffer is live
11352	before retrieving underline properties from it (Bug#38038).
11353
113542019-11-12  Stefan Monnier  <monnier@iro.umontreal.ca>
11355
11356	* lisp/emacs-lisp/easymenu.el (easy-menu-make-symbol): Fix last change
11357
113582019-11-11  Paul Eggert  <eggert@cs.ucla.edu>
11359
11360	Fix a few more minor quoting problems.
11361
113622019-11-11  Lars Ingebrigtsen  <larsi@gnus.org>
11363
11364	Rename font-log-refontify
11365
11366	* lisp/font-lock.el (font-lock-debug-fontify): Rename to make it
11367	clearer what the function is for.
11368	* doc/lispref/modes.texi (Font Lock Basics): Ditto.
11369
113702019-11-11  Stefan Monnier  <monnier@iro.umontreal.ca>
11371
11372	* lisp/startup.el (command-line): Fix last change in package--activated
11373
113742019-11-11  Paul Eggert  <eggert@cs.ucla.edu>
11375
11376	Fix some quoting glitches in doc strings
11377
113782019-11-11  Paul Eggert  <eggert@cs.ucla.edu>
11379
11380	Fix quoting glitch in formatting Gnus messages
11381
11382	* lisp/gnus/gnus-util.el (defmacro, gnus-message): Use
11383	‘format-message’, not ‘format’, to be compatible with ‘message’.
11384
113852019-11-11  Paul Eggert  <eggert@cs.ucla.edu>
11386
11387	Fix glitch in generating cxterm doc strings
11388
11389	* lisp/international/titdic-cnv.el (tit-process-header):
11390	In generated doc strings, escape \, ", ', and ` properly.
11391	Currently only ' appears but we might as well future-proof this.
11392
113932019-11-11  Wilson Snyder  <wsnyder@wsnyder.org>
11394
11395	Verilog-Mode collected updates.
11396
11397	* lisp/progmodes/verilog-mode.el (verilog-read-decls): Fix to skip
11398	over base64-encoded protected data while reading AUTO declarations.
11399	Reported by Berend Ozceri.
11400	(verilog-auto-inst-port, verilog-auto-inst-vector): Support 'unsigned'
11401	in `verilog-auto-inst-vector'. Reported by Jeff Riley.
11402	(verilog-read-decls): Fix to ignore `line in AUTOINST, git
11403	bug18. Reported by Berend Ozceri.
11404	(verilog-library-extensions): Support .va /.vah/.sva/.svah file
11405	extensions to load verilog-mode for Verilog-AMS.  Reported by Shareef
11406	Jalloq.
11407	(verilog-read-sub-decls-expr): Fix AUTOOUTPUT etc misparsing Verilog
11408	casts, bug1526.  Reported by Udi Finkelstein.
11409
114102019-11-11  Stefan Kangas  <stefankangas@gmail.com>
11411
11412	Add several configuration files to auto-mode-alist
11413
11414	* lisp/files.el (auto-mode-alist): Use conf-mode for .asoundrc,
11415	.mairixrc, .mbsyncr, .msmtprc, .nvidia-settings-rc, .offlineimaprc,
11416	.reportbugrc, .rtorrent.rc, .screenrc, .mpdconf, .notmuch-config.  Use
11417	conf-windows-mode for .redshift.conf.  (Bug#38065)
11418
114192019-11-10  Paul Eggert  <eggert@cs.ucla.edu>
11420
11421	Document Lisp floats a bit better
11422
11423	* doc/lispref/numbers.texi (Float Basics):
11424	* doc/misc/cl.texi (Implementation Parameters):
11425	* lisp/emacs-lisp/cl-lib.el (cl-most-positive-float)
11426	(cl-least-positive-float)
11427	(cl-least-positive-normalized-float, cl-float-epsilon)
11428	(cl-float-negative-epsilon):
11429	Document IEEE floating point better.  Don’t suggest that Emacs
11430	might use some floating-point format other than IEEE format, as
11431	Emacs currently assumes IEEE in several places and there seems
11432	little point in removing those assumptions.
11433
114342019-11-10  Juri Linkov  <juri@linkov.net>
11435
11436	* lisp/tab-bar.el: Better handling of closed-tabs in tab-bar-list.
11437
11438	* lisp/tab-bar.el (tab-bar-list-delete-from-list): Add closed tab to
11439	tab-bar-closed-tabs.
11440	(tab-bar-list-select): Don't add the closed intermediate tab to
11441	tab-bar-closed-tabs.
11442
114432019-11-10  Juri Linkov  <juri@linkov.net>
11444
11445	* lisp/autorevert.el: Use 'minibuffer-message' to not obscure the prompt.
11446
11447	* lisp/autorevert.el (auto-revert-handler): Use 'minibuffer-message'
11448	instead of 'message'.  Call it from the original window's buffer
11449	that in case of the minibuffer should be current, so
11450	minibuffer-message could add a message to it.  (Bug#34614)
11451
11452	* lisp/emacs-lisp/ert-x.el (ert--make-message-advice): Add nil to
11453	the list of values to not use for format-message, because
11454	minibuffer-message calls 'message' with nil argument, and tests fail.
11455
114562019-11-10  Stefan Kangas  <stefankangas@gmail.com>
11457	    Drew Adams  <drew.adams@oracle.com>
11458
11459	Make dired-get-subdir-min obsolete
11460
11461	* lisp/dired.el (dired-get-subdir-min): Redefine as obsolete function
11462	alias for 'cdr'.  (Bug#11571)
11463	(dired-get-subdir, dired-get-subdir-max, dired-clear-alist)
11464	(dired-next-subdir, dired-current-directory):
11465	* lisp/dired-aux.el (dired-rename-subdir-2)
11466	(dired-alist-sort, dired-insert-subdir-del)
11467	(dired-insert-subdir-doupdate, dired-goto-subdir)
11468	(dired-hide-subdir, dired-hide-all): Use 'cdr' instead of
11469	the above obsolete function.
11470	(dired-subdir-alist): Doc fix.
11471
114722019-11-10  Juri Linkov  <juri@linkov.net>
11473
11474	Move read-char-from-minibuffer from simple.el to subr.el and document it.
11475
11476	* doc/lispref/minibuf.texi (Multiple Queries):
11477	Document read-char-from-minibuffer (bug#10477, bug#38076).
11478
11479	* lisp/subr.el (read-char-history)
11480	(read-char-from-minibuffer-map)
11481	(read-char-from-minibuffer-map-hash)
11482	(read-char-from-minibuffer-insert-char)
11483	(read-char-from-minibuffer-insert-other, empty-history)
11484	(read-char-from-minibuffer): Move from simple.el to subr.el.
11485
114862019-11-09  Stefan Monnier  <monnier@iro.umontreal.ca>
11487
11488	* lisp/cedet/semantic/wisent/comp.el (wisent-struct): Remove
11489
11490	(core, shifts, reductions, errs): Use cl-defstruct instead.
11491	Adjust all users of the set-<struct>-<field> setters to use
11492	`setf` instead.
11493
114942019-11-09  Jimmy Aguilar Mena  <spacibba@aol.com>
11495
11496	Add extra bindings to fido-mode.
11497
11498	* lisp/icomplete.el (icomplete-fido-mode-map) : Add arrows and other
11499	bindings to reproduce ido behaviour.
11500
115012019-11-09  Glenn Morris  <rgm@gnu.org>
11502
11503	Disable a portion of one doc-test
11504
11505	* test/src/doc-tests.el (doc-test-substitute-command-keys):
11506	Disable component that fails twice in the past 5 weeks
11507	due to changes in the minibuffer map.
11508
115092019-11-09  Juri Linkov  <juri@linkov.net>
11510
11511	Don't overwrite y-or-n-p prompt by message from asynchronous man (bug#19064)
11512
11513	* lisp/man.el (Man-bgproc-sentinel): Postpone displaying the message
11514	and deleting the buffer until exiting the code block with
11515	with-current-buffer.  Use minibuffer-message to display message
11516	to handle possibly active minibuffer.
11517
115182019-11-09  Juri Linkov  <juri@linkov.net>
11519
11520	Don't obscure the minibuffer by message (bug#17272)
11521
11522	* lisp/subr.el (do-after-load-evaluation): Use minibuffer-message
11523	to not obscure a possibly active minibuffer.
11524
11525	* lisp/minibuffer.el (minibuffer-message):
11526	Record message in the *Messages* buffer.
11527
115282019-11-09  Juri Linkov  <juri@linkov.net>
11529
11530	Use the minibuffer to read answer in userlock.el (bug#38076)
11531
11532	* lisp/userlock.el: Rename 'fn' to 'filename'.
11533	(ask-user-about-supersession-threat): Use read-char-from-minibuffer
11534	instead of read-char-choice.
11535
115362019-11-09  Stefan Monnier  <monnier@iro.umontreal.ca>
11537
11538	* lisp/startup.el (package--activated): Fix redundant definition
11539
115402019-11-09  Stefan Monnier  <monnier@iro.umontreal.ca>
11541
11542	* lisp/ffap.el (ffap-read-file-or-url): Don't use url-file-handler
11543
11544	Simplify accordingly (and don't call substitute-in-file-name redundantly).
11545
115462019-11-09  Juri Linkov  <juri@linkov.net>
11547
11548	hack-local-variables-confirm uses the minibuffer to read answer (bug#38076)
11549
11550	* lisp/files.el (hack-local-variables-confirm):
11551	Use read-char-from-minibuffer instead of read-char-choice.
11552	Remove special handling of original window scrolling
11553	that is now supported in the minibuffer.  This fixes
11554	https://lists.gnu.org/archive/html/emacs-devel/2019-10/msg01020.html
11555	(files--ask-user-about-large-file): Use read-char-from-minibuffer
11556	instead of read-char-choice.
11557
115582019-11-09  Juri Linkov  <juri@linkov.net>
11559
11560	Add CHARS arg to read-char-from-minibuffer compatible with read-char-choice.
11561
11562	* lisp/simple.el (read-char-history):
11563	Rename from read-char-from-minibuffer-history.  (Bug#38076)
11564	(read-char-from-minibuffer-insert-char):
11565	Rename from read-char-from-minibuffer-self-insert.
11566	(read-char-from-minibuffer-map-hash): New defconst.
11567	(read-char-from-minibuffer-insert-other): New command.
11568	(read-char-from-minibuffer): Add optional args CHARS and HISTORY.
11569	(zap-to-char): Use 'read-char-history as HISTORY arg of
11570	read-char-from-minibuffer.
11571
11572	* lisp/emacs-lisp/map-ynp.el (read-answer): Use sit-for instead of sleep-for.
11573	Replace short answer history yes-or-no-p-history with read-char-history.
11574
115752019-11-09  Juri Linkov  <juri@linkov.net>
11576
11577	'y-or-n-p' now uses the minibuffer to read 'y' or 'n' answer (bug#38076)
11578
11579	* doc/lispref/minibuf.texi (Yes-or-No Queries): Update the fact
11580	that y-or-n-p uses the minibuffer.
11581
11582	* lisp/subr.el (y-or-n-p-history-variable): New variable.
11583	(y-or-n-p-map): New keymap.
11584	(y-or-n-p-insert-y, y-or-n-p-insert-n, y-or-n-p-insert-other):
11585	New commands.
11586	(y-or-n-p): Rewrite to use read-from-minibuffer and make-composed-keymap
11587	with y-or-n-p-map and query-replace-map.
11588
115892019-11-09  Juri Linkov  <juri@linkov.net>
11590
11591	Run scroll/recenter commands from minibuffer in original window (bug#38076)
11592
11593	* lisp/minibuffer.el (with-minibuffer-selected-window): New macro.
11594	(minibuffer-recenter-top-bottom, minibuffer-scroll-up-command)
11595	(minibuffer-scroll-down-command, minibuffer-scroll-other-window):
11596	(minibuffer-scroll-other-window-down): New commands.
11597	(minibuffer-local-map): Remap recenter/scroll symbols to their
11598	minibuffer wrappers: recenter-top-bottom to minibuffer-recenter-top-bottom.
11599
11600	* src/window.c (Fother_window_for_scrolling): Use 'lambda' value for
11601	MINIBUF arg of Fnext_window, so minibuffer-scroll-other-window and
11602	minibuffer-scroll-other-window-down doesn't try to scroll the
11603	minibuffer window.
11604
116052019-11-09  Karl Fogel  <kfogel@red-bean.com>
11606
11607	Improve an error about the message signer
11608
11609	* lisp/gnus/mml-sec.el (mml-secure-epg-sign): Don't suggest setting
11610	  `mml-secure-smime-sign-with-sender' if it's already non-nil.
11611
116122019-11-09  Lars Ingebrigtsen  <larsi@gnus.org>
11613
11614	Fix font-lock-keywords slightly
11615
11616	* lisp/font-lock.el (font-lock-keywords): Tweak doc string
11617	slightly (bug#35005).
11618
116192019-11-09  Eli Zaretskii  <eliz@gnu.org>
11620
11621	Fix case-insensitive completion of buffer names
11622
11623	* test/src/minibuf-tests.el (test-try-completion-ignore-case):
11624	New test, suggested by Stefan Monnier <monnier@iro.umontreal.ca>.
11625
11626	* src/minibuf.c (Ftry_completion): Don't treat strings that
11627	are identical but for the case as if they were identical for
11628	the purposes of not counting the same string twice.  This
11629	fixes case-insensitive completion when all the candidates are
11630	identical but for the letter-case.  (Bug#11339)
11631
116322019-11-09  Eli Zaretskii  <eliz@gnu.org>
11633
11634	Fix an error in selecting encoding when writing zip files
11635
11636	* lisp/international/mule-cmds.el (select-safe-coding-system):
11637	Treat no-conversion-multibyte that came from find-auto-coding
11638	the same as no-conversion for the purposes of encoding.  The
11639	same logic that considers no-conversion always safe should do
11640	the same with no-conversion-multibyte.  (Bug#38155)
11641
116422019-11-09  Glenn Morris  <rgm@gnu.org>
11643
11644	* lisp/progmodes/cc-vars.el (c-mark-wrong-style-of-comment):
11645	Fix version.
11646
116472019-11-09  João Távora  <joaotavora@gmail.com>
11648
11649	Revert "Nudge icomplete-mode a little closer to fido-mode"
11650
11651	Fixes bug#38131.
11652
11653	This is not the best way to have fido-mdoe emulate that particular bit
11654	of ido-mode.
11655
11656	This reverts commit 5761a1a3939e23d8e8c725241dd9398a12f191b0.
11657
116582019-11-09  João Távora  <joaotavora@gmail.com>
11659
11660	Rename some commands to reflect they are fido-mode specific
11661
11662	* lisp/icomplete.el (icomplete-fido-kill)
11663	(icomplete-fido-delete-char, icomplete-fido-ret)
11664	(icomplete-fido-backward-updir): Rename from icomplete-magic-ido-*
11665	versions.
11666	(icomplete-fido-mode-map): Use new command names.
11667
116682019-11-09  João Távora  <joaotavora@gmail.com>
11669
11670	Protect flex's display-sort-function against 0-length candidates
11671
11672	* lisp/minibuffer.el (completion--flex-adjust-metadata): Assume a
11673	candidate missing a score has a score of 0.
11674
116752019-11-09  Alan Mackenzie  <acm@muc.de>
11676
11677	Widen around c-font-lock-fontify-region.  This fixes bug #38049.
11678
11679	* lisp/progmodes/cc-mode.el (c-font-lock-fontify-region): Widen in this function,
11680	to ensure that the CC Mode font locking mechanism can examine characters
11681	outside the given region.
11682
116832019-11-09  Alan Mackenzie  <acm@muc.de>
11684
11685	CC Mode.  Allow fontification of "wrong" style comments with warning face.
11686
11687	This fixes bug #4192.
11688
11689	* etc/NEWS: Add a new entry.
11690
11691	* lisp/progmodes/cc-defs.el (c-font-lock-flush): New macro.
11692
11693	* lisp/progmodes/cc-cmds.el (c-toggle-comment-style): On toggling the comment
11694	style, invoke c-font-lock-flush when c-mark-wrong-style-of-comment is non-nil,
11695	to cause that marking to be done instead on the other style of comment.
11696
11697	* lisp/progmodes/cc-fonts.el (c-maybe-font-lock-wrong-style-comments): New
11698	function.
11699	(c-cpp-matchers): Call c-maybe-font-lock-wrong-style-comments when
11700	appropriate.
11701
11702	* lisp/progmodes/cc-vars.el (c-mark-wrong-style-of-comment): New customizable
11703	option.
11704
11705	* doc/misc/cc-mode.texi (top level, Indentation Commands, Guessing the Style,
11706	Custom Macros): For some opening quote marks, correct '' to ``.
11707	(Minor Modes): Add an xref to the new page "Wrong Comment Style" in a
11708	footnote.
11709	(Wrong Comment Style): New page.
11710
117112019-11-09  Nick Helm  <nick@tenpoint.co.nz>
11712
11713	Fix unresponsive Help menu in macOS
11714
11715	* src/nsterm.m (ns_check_menu_open): Don't postpone mouse drag and
11716	non-user-generated mouse down events (Bug#31371).
11717
117182019-11-09  Eli Zaretskii  <eliz@gnu.org>
11719
11720	Avoid compiler warnings in addpm.c and ddeclient.c
11721
11722	* nt/ddeclient.c (DdeCallback):
11723	* nt/addpm.c (DdeCallback): Modify types of the last 2
11724	arguments to avoid compiler warnings in 64-bit builds.
11725	(Bug#38040)
11726
117272019-11-09  Eli Zaretskii  <eliz@gnu.org>
11728
11729	Fix last change
11730
11731	* lisp/simple.el (goto-history-element)
11732	(next-history-element): Fix quoting of "future history".
11733
11734	* doc/lispref/minibuf.texi (Minibuffer Commands)
11735	(Text from Minibuffer): Add index entry and cross-reference
11736	for "future history".  (Bug#38026)
11737
117382019-11-09  Hong Xu  <hong@topbug.net>
11739
11740	Mention future history in history-related minibuffer commands
11741
11742	* lisp/simple.el (goto-history-element):
11743	* doc/lispref/minibuf.texi (Minibuffer Commands): Explain
11744	negative NABS.
11745	* lisp/simple.el (next-history-element):
11746	* doc/lispref/minibuf.texi (Minibuffer Commands): Mention
11747	"future history."  (Bug#38026)
11748
117492019-11-08  Paul Eggert  <eggert@cs.ucla.edu>
11750
11751	Fix some quoting glitches in doc strings
11752
11753	This also fixes a misplaced "only".
11754
117552019-11-08  Stefan Monnier  <monnier@iro.umontreal.ca>
11756
11757	* lisp/ffap.el (ffap-read-file-or-url): Fix some URL cases
11758
11759	* lisp/ffap.el (ffap-read-file-or-url): Simplify further
11760
117612019-11-08  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
11762
11763	* lisp/ffap.el (ffap-read-file-or-url): Use `read-file-name`
11764
11765	Since we use `url-handler-mode` to deal with URLs, `read-file-name`
11766	works just as well, with the added benefit that it interacts correctly
11767	with packages that rebind `read-file-name-function`, such as Helm.
11768
11769	(ffap-read-url-internal, ffap-read-file-or-url-internal): Remove, unused.
11770
117712019-11-08  Eli Zaretskii  <eliz@gnu.org>
11772
11773	Fix MS-Windows version reference in FAQ
11774
11775	* doc/misc/efaq-w32.texi (Which versions of Windows): Clarify that we
11776	support all recent versions of MS-Windows.  (Bug#38023)
11777
117782019-11-08  João Távora  <joaotavora@gmail.com>
11779
11780	Nudge icomplete-mode a little closer to fido-mode
11781
11782	* lisp/icomplete.el (icomplete-completions): Don't use ellipsis when
11783	truncating determ in fido-mode.  Highlight the center part of
11784	determ with icomplete-first-match.
11785
117862019-11-08  João Távora  <joaotavora@gmail.com>
11787
11788	Have pcm styles apply faces to face prop, not font-lock-face
11789
11790	This is the way the basic completion styles work.  This fixes
11791	candidate highlighting in icomplete.
11792
11793	* lisp/minibuffer.el (completion-pcm--hilit-commonality): Apply
11794	faces to 'face property, not font-lock-face.
11795
117962019-11-08  Eli Zaretskii  <eliz@gnu.org>
11797
11798	Minor copyedits in ELisp manual
11799
11800	* doc/lispref/lists.texi (Sets And Lists): Minor rewording of
11801	the "Common Lisp note".  (Bug#37811)
11802
118032019-11-08  Robert Pluim  <rpluim@gmail.com>
11804
11805	Ensure building and running on non-IPv6 capable hosts works
11806
11807	* src/process.c (Fmake_network_process) [AF_INET6]: Only build ::1
11808	localhost when IPv6 is supported.
11809	(Fnetwork_lookup_address_info) [AF_INET6]: Move check for Qipv6 inside
11810	ifdef, since its definition depends on AF_INET6.  Don't return IPv6
11811	addresses when they're not supported.
11812
11813	* test/src/process-tests.el (lookup-family-specification,
11814	lookup-google): Only do IPv6 lookup if IPv6 is supported.
11815
118162019-11-08  Jimmy Aguilar Mena  <spacibba@aol.com>
11817
11818	Handle case where a face's :extend attribute is unspecified (Bug#37774)
11819
11820	* src/xfaces.c (merge_face_vectors, merge_named_face): Handle case
11821	where the :extend attribute's value is 'unspecified' (Bug#37774).
11822
118232019-11-07  Stefan Monnier  <monnier@iro.umontreal.ca>
11824
11825	* lisp/emacs-lisp/easymenu.el: Don't quote lambdas
11826
11827	(easy-menu-do-define, easy-menu-make-symbol): Replace `(lambda ..)
11828	with a closure.
11829
118302019-11-07  Michael Albinus  <michael.albinus@gmx.de>
11831
11832	Handle different system names of w32 in Tramp (Bug#38079)
11833
11834	* lisp/net/tramp.el (tramp-restricted-shell-hosts-alist):
11835	Initialize with `system-name' in small and capital chars.
11836
118372019-11-07  Robert Pluim  <rpluim@gmail.com>
11838
11839	Describe IPv6 format in docstring for 'make-network-process'
11840
11841	* src/process.c (Fmake_network_process): Add description of IPv6
11842	address format.
11843
118442019-11-07  Eli Zaretskii  <eliz@gnu.org>
11845
11846	Revert "Don't flash previous buffer when connecting with emacsclient"
11847
11848	This reverts commit 49fc040077b33bd1e78ee425575e76329b772a41.
11849	It turns out that the fix for a minor aesthetical annoyance
11850	caused much more serious bugs: bug#31038, bug#35726, Bug#37097,
11851
118522019-11-07  Andrii Kolomoiets  <andreyk.mad@gmail.com>
11853
11854	python.el: Pdbtracking improvements
11855
11856	Allow not to kill buffers when pdbtracking session is finished.
11857	Pdbtracking session considered finished judging from the user input.
11858
11859	* lisp/progmodes/python.el (python-pdbtrack-kill-buffers): New
11860	customizable variable.
11861	(python-pdbtrack-set-tracked-buffer): Use it.
11862	(python-pdbtrack-unset-tracked-buffer)
11863	(python-pdbtrack-tracking-finish): New functions.
11864	(python-pdbtrack-continue-command, python-pdbtrack-exit-command):
11865	New customizable variables.
11866	(python-pdbtrack-process-sentinel): New function.  Finish
11867	pdbtracking session when process is killed.
11868	(python-pdbtrack-prev-command-continue): New variable.
11869	(python-pdbtrack-comint-input-filter-function): New function.
11870	Finish pdbtracking session based on commands sent to pdb.
11871	(python-pdbtrack-comint-output-filter-function): Unset/set
11872	tracking buffer if looking at pdb prompt; finish pdbtracking
11873	session if filename of current stack frame starts with
11874	"<" e.g. "<stdin>".
11875	(python-pdbtrack-comint-output-filter-function): Don't override
11876	overlay-arrow-string.
11877	(python-pdbtrack-setup-tracking): New function.
11878	(inferior-python-mode): Use it.
11879	(python-pdbtrack-stacktrace-info-regexp): Default value is changed.
11880	Must also match lines with filename like "<stdin>" and "<string>".
11881	* etc/NEWS: Mention python-pdbtrack-kill-buffers
11882
118832019-11-07  Michael Albinus  <michael.albinus@gmx.de>
11884
11885	Make ange-ftp fit for tramp-tests
11886
11887	* lisp/net/ange-ftp.el (ange-ftp-repaint-minibuffer): Use empty message.
11888	(ange-ftp-quote-string): Unquote the string.
11889	(ange-ftp-substitute-in-file-name, ange-ftp-access-file)
11890	(ange-ftp-copy-directory, ange-ftp-make-symbolic-link)
11891	(ange-ftp-add-name-to-file): New defuns.  Set 'ange-ftp property.
11892	(ange-ftp-real-substitute-in-file-name)
11893	(ange-ftp-real-copy-directory): New defuns.
11894	(ange-ftp-file-name-as-directory): Care about `non-essential'.
11895	(ange-ftp-file-attributes): Handle ID-STRING.
11896	(ange-ftp-copy-file-internal, ange-ftp-rename-file)
11897	(ange-ftp-make-directory): Improve error handling.
11898	(ange-ftp-insert-directory): Initialize SWITCHES if they are nil.
11899
11900	* test/lisp/net/tramp-tests.el (ange-ftp-make-backup-files): Declare.
11901	(tramp-test39-make-nearby-temp-file, tramp--test-ange-ftp-p): New defun.
11902	(tramp-test05-expand-file-name-relative)
11903	(tramp-test06-directory-file-name, tramp-test10-write-region)
11904	(tramp-test11-copy-file, tramp-test12-rename-file)
11905	(tramp-test17-insert-directory)
11906	(tramp-test26-file-name-completion)
11907	(tramp-test37-make-auto-save-file-name)
11908	(tramp-test38-find-backup-file-name)
11909	(tramp--test-special-characters): Use it.
11910
119112019-11-06  Stefan Kangas  <stefankangas@gmail.com>
11912
11913	Clean up major mode check in package-menu-mode
11914
11915	* lisp/emacs-lisp/package.el (package--ensure-package-menu-mode):
11916	Extract function to warn about incorrect major mode...
11917	(package-menu-toggle-hiding, package-menu-refresh)
11918	(package-menu-execute): ...from here.
11919	(package-menu--mark-upgrades-1): And here, but move call...
11920	(package-menu-mark-upgrades): ...here instead.
11921	(package-menu-hide-package, package-menu-mark-delete)
11922	(package-menu-mark-install, package-menu-mark-unmark)
11923	(package-menu-quick-help, package-menu-get-status)
11924	(package-menu-filter-by-keyword, package-menu-filter-by-name)
11925	(package-menu-clear-filter): Add call to new function.  (Bug#37891)
11926
119272019-11-06  Stefan Kangas  <stefankangas@gmail.com>
11928
11929	Test that comint-password-prompt-regexp matches "git push"
11930
11931	* test/lisp/comint-tests.el (comint-testsuite-password-strings): Test
11932	that 'comint-password-prompt-regexp' matches 'git push'
11933	output.  (Bug#20910)
11934
119352019-11-06  Juri Linkov  <juri@linkov.net>
11936
11937	* lisp/dired-aux.el (dired-vc-rename-file): New defcustom.
11938
11939	(dired-rename-file): Call vc-rename-file when dired-vc-rename-file is non-nil.
11940
11941	* lisp/vc/vc.el (vc-rename-file): Allow renaming added files.
11942	Call vc-file-clearprops on new file too for the case when
11943	old and new files were renamed to each other back and forth.
11944
11945	https://lists.gnu.org/archive/html/emacs-devel/2019-11/msg00069.html
11946
119472019-11-06  Juri Linkov  <juri@linkov.net>
11948
11949	* lisp/tab-bar.el (tab-bar-history-old): Rename from tab-bar-history-current.
11950
11951	(tab-bar-history-old-minibuffer-depth):
11952	Rename from tab-bar-history--minibuffer-depth.
11953
119542019-11-06  Juri Linkov  <juri@linkov.net>
11955
11956	* lisp/tab-line.el: More configurability for tab buffer groups.
11957
11958	* lisp/tab-line.el (tab-line-tabs-buffer-group-function)
11959	(tab-line-tabs-buffer-group-sort-function)
11960	(tab-line-tabs-buffer-groups-sort-function): New defvars.
11961	(tab-line-tabs-buffer-group-name): Rename from
11962	tab-line-tabs-buffer-groups--name and use tab-line-tabs-buffer-group-function.
11963	(tab-line-tabs-buffer-groups): Use tab-line-tabs-buffer-groups-sort-function
11964	and tab-line-tabs-buffer-group-sort-function.
11965	(tab-line-new-tab): Let bind tab-line-tabs-buffer-groups to
11966	mouse-buffer-menu-mode-groups.
11967
119682019-11-06  Paul Eggert  <eggert@cs.ucla.edu>
11969
11970	Simplify fixnum division slightly
11971
11972	* src/data.c (arith_driver): Streamline fixnum division a bit
11973	more, and add a comment about why overflow is impossible.
11974	This responds to a private comment by Stefan Monnier.
11975
119762019-11-06  Alan Mackenzie  <acm@muc.de>
11977
11978	Add a full set of CC Mode language variables to js.el.
11979
11980	This will allow js.el to work after maintenance changes in CC Mode, e.g. the
11981	fix to bug #11165.
11982
11983	* lisp/progmodes/js.el (top level): Create a CC Mode derived language called
11984	js-mode and based on Java Mode.
11985	(js-mode): call c-init-language-vars for js-mode.  Remove the direct settings
11986	of several CC Mode language variables which are now defined through the
11987	derived language mechanism.  Call c-set-style and set up the needed style
11988	variables c-block-comment-prefix and c-comment-prefix-regexp.
11989
119902019-11-06  Eli Zaretskii  <eliz@gnu.org>
11991
11992	Minor fix in the Emacs manual
11993
11994	* doc/emacs/msdos.texi (ls in Lisp): Fix the description of
11995	'ls-lisp-verbosity'.  (Bug#38077)
11996
119972019-11-06  Stephen Gildea  <stepheng+emacs@gildea.com>
11998
11999	time-stamp: add support for time zone numeric offset
12000
12001	* lisp/time-stamp.el: Implement %:z as expanding to the numeric time zone
12002	offset, to address the feature request of bug#32931.  Do not document it
12003	yet, to discourage compatibility problems in mixed Emacs 26 and Emacs 27
12004	environments.  Documentation will be added in a subsequent release at
12005	least two years later.  (We cannot yet use %z for numeric time zone
12006	because in Emacs 26 it was documented to do something else.)
12007
12008	* test/lisp/time-stamp-tests.el (time-stamp-test-format-time-zone): expand this
12009	test and break it into two tests, time-stamp-test-format-time-zone-name
12010	and time-stamp-test-format-time-zone-offset.
12011
120122019-11-06  Michael Albinus  <michael.albinus@gmx.de>
12013
12014	More error checks in Tramp's make-directory
12015
12016	* lisp/net/tramp-adb.el (tramp-adb-handle-make-directory):
12017	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-make-directory):
12018	* lisp/net/tramp-sh.el (tramp-sh-handle-make-directory):
12019	* lisp/net/tramp-smb.el (tramp-smb-handle-make-directory):
12020	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-make-directory):
12021	Signal `file-already-exists' if DIR exists.
12022
12023	* test/lisp/net/tramp-tests.el (tramp-test04-substitute-in-file-name):
12024	Fix thinko.
12025	(tramp-test13-make-directory, tramp-test14-delete-directory)
12026	(tramp-test15-copy-directory): Extend tests.
12027
120282019-11-06  Stefan Kangas  <stefankangas@gmail.com>
12029
12030	Fix problem with my last commit in package.el
12031
12032	* lisp/emacs-lisp/package.el (package-menu--refresh-archives): Rename
12033	from duplicated name package-menu--refresh.  (Bug#38084)
12034	(package-menu-mode, list-packages): Use new name.
12035
120362019-11-05  Paul Eggert  <eggert@cs.ucla.edu>
12037
12038	Update from Gnulib
12039
12040	This incorporates:
12041	2019-10-24 timespec-add, timespec-sub: simplify
12042	* lib/timespec-add.c, lib/timespec-sub.c:
12043	Copy from Gnulib.
12044
120452019-11-05  Paul Eggert  <eggert@cs.ucla.edu>
12046
12047	Remove unneeded overflow check in integer division
12048
12049	* src/data.c (arith_driver): Remove unnecessary runtime test,
12050	since integer overflow is impossible on division of fixnums,
12051	given that the worst case is MOST_NEGATIVE_FIXNUM / -1 which is
12052	representable as an EMACS_INT (albeit not as a fixnum).
12053
120542019-11-05  Stefan Kangas  <stefankangas@gmail.com>
12055
12056	Avoid changing value of defcustom package-enable-at-startup
12057
12058	* lisp/emacs-lisp/package.el (package--activated): New variable to
12059	avoid changing value of defcustom 'package-enable-at-startup'.
12060	(package-initialize): Don't set 'package-enable-at-startup'.
12061	(package-initialize, package-activate-all): Set 'package--activated'
12062	instead of 'package-enable-at-startup'.
12063	(package--initialized): Add doc string.
12064
12065	* lisp/startup.el (command-line): Check if 'package--activated' is
12066	non-nil before activating packages.
12067
12068	* doc/lispref/package.texi (Packaging Basics): Update docs.
12069
120702019-11-05  Stefan Kangas  <stefankangas@gmail.com>
12071
12072	Make 'g' refresh package data in package menu
12073
12074	* lisp/emacs-lisp/package.el (package-menu--refresh): Rename from
12075	'package-menu-refresh', make internal and non-interactive.
12076	(package-menu-mode-map, package-menu-mode-menu, package-menu-mode)
12077	(list-packages): Use the above.  (Bug#35504)
12078	(package-menu-refresh): Redefine as obsolete fuction alias for
12079	'revert-buffer'.
12080	* doc/emacs/package.texi (Package Menu): Document it.
12081	* etc/NEWS: Announce it.
12082
120832019-11-05  Stefan Kangas  <stefankangas@gmail.com>
12084
12085	Rename *-multiframe-window to *-window-any-frame
12086
12087	Suggested by Drew Adams.
12088
12089	* lisp/frame.el
12090	(next-multiframe-window): Define as obsolete alias for...
12091	(next-window-any-frame): ...new function name.
12092	(previous-multiframe-window): Define as obsolete alias for...
12093	(previous-window-any-frame): ...new function name.  (Bug#12436)
12094
12095	* lisp/term/ns-win.el (global-map): Use new command name.
12096	* doc/emacs/windows.texi (Other Window): Document it.
12097	* etc/NEWS: Announce it.
12098
120992019-11-05  João Távora  <joaotavora@gmail.com>
12100
12101	Follow JSONRPC spec by not sending :result field on errors
12102
12103	Also don't send :error field on non-errors.
12104
12105	* lisp/jsonrpc.el (jsonrpc--reply): Don't send :result and :error
12106	if none supplied.
12107	(Version): Bump to 1.0.8
12108
121092019-11-05  Juri Linkov  <juri@linkov.net>
12110
12111	Add prefix arg to more isearch commands (bug#14563)
12112
12113	* lisp/isearch.el (isearch--yank-char-or-syntax)
12114	(isearch-yank-word-or-char, isearch-yank-symbol-or-char)
12115	(isearch-yank-until-char): Add optional prefix arg.
12116
121172019-11-05  Juri Linkov  <juri@linkov.net>
12118
12119	* lisp/tab-line.el: New option for tabs where buffers are grouped by mode.
12120
12121	* lisp/tab-line.el (tab-line-tabs-function): Add option
12122	tab-line-tabs-buffer-groups.
12123	(tab-line-tabs-buffer-groups): New defvar defaulted to
12124	mouse-buffer-menu-mode-groups.
12125	(tab-line-tabs-buffer-groups--name, tab-line-tabs-buffer-groups):
12126	New functions.
12127	(tab-line-format): Support tabs in the format '(tab (name . "name") ...)'.
12128	(tab-line-select-tab): Move part of code to tab-line-select-tab-buffer.
12129	(tab-line-select-tab-buffer): New function.
12130	(tab-line-tab-current): Rename from tab-line-tab-selected.
12131
121322019-11-05  João Távora  <joaotavora@gmail.com>
12133
12134	Document fido-mode
12135
12136	* doc/emacs/buffers.texi (Icomplete): Document Fido Mode.
12137
12138	* etc/NEWS: Mention Fido Mode.
12139
12140	* lisp/icomplete.el (icomplete-mode): Ensure fido-mode is off.
12141	(fido-mode): Ensure icomplete-mode is off.
12142	(icomplete-magic-ido-ret): Don't force completions if no
12143	completions.
12144
121452019-11-05  João Távora  <joaotavora@gmail.com>
12146
12147	New fido-mode, emulates ido-mode with icomplete-mode
12148
12149	* lisp/icomplete.el (icomplete-fido-mode-map): New variable.
12150	(icomplete--fido-mode-setup): New function.
12151	(fido-mode): New global minor mode.
12152
121532019-11-05  Paul Eggert  <eggert@cs.ucla.edu>
12154
12155	Pacify byte-compiler in calculator.el
12156
12157	* lisp/calculator.el (calculator-expt): Open-code cl-evenp to
12158	pacify warning “the function ‘cl-evenp’ might not be defined”.
12159	Problem reported by Juanma Barranquero in:
12160	https://lists.gnu.org/r/emacs-devel/2019-11/msg00118.html
12161
121622019-11-05  Stefan Monnier  <monnier@iro.umontreal.ca>
12163
12164	* admin/unidata/uvs.el: Use lexical-binding
12165
12166	* lisp/doc-view.el (doc-view--revert-buffer): Fix last change
12167
121682019-11-05  Stefan Kangas  <stefankangas@gmail.com>
12169
12170	Declare unused macro package--push obsolete
12171
12172	* lisp/emacs-lisp/package.el (package--push): Declare obsolete.
12173
121742019-11-05  Michael Albinus  <michael.albinus@gmx.de>
12175
12176	Improve Tramp's copy-directory
12177
12178	* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
12179	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
12180	* lisp/net/tramp-rclone.el (tramp-rclone-file-name-handler-alist):
12181	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-file-name-handler-alist):
12182	Add `copy-directory'.
12183
12184	* lisp/net/tramp.el (tramp-handle-copy-directory): New defun.
12185
121862019-11-05  Robert Pluim  <rpluim@gmail.com>
12187
12188	Always check for client-certificates
12189
12190	* lisp/net/network-stream.el
12191	(network-stream-use-client-certificates): New user option.
12192	(open-network-stream): If 'network-stream-use-client-certificates'
12193	is t, and the user hasn't specified :client-certificate, do
12194	certificate lookups via 'auth-source'.
12195	(network-stream-certificate): Only return key and certificate
12196	files that exist.
12197
12198	* doc/lispref/processes.texi (Network): Document new
12199	client-certificate behavior.
12200
12201	* etc/NEWS: Document 'network-stream-use-client-certificates'.
12202
122032019-11-04  Paul Eggert  <eggert@cs.ucla.edu>
12204
12205	Simplify calculator-expt
12206
12207	* lisp/calculator.el (calculator-expt): Simplify, now that
12208	expt does the right thing if the first arg is -1, 0, or 1.
12209
122102019-11-04  Paul Eggert  <eggert@cs.ucla.edu>
12211
12212	Overflow errors are range errors
12213
12214	* etc/NEWS: Mention this.
12215	* doc/lispref/errors.texi (Standard Errors):
12216	Document overflow-error, which was formerly undocumented.
12217	It is a range error, not a domain error.
12218	* src/data.c (syms_of_data): overflow-error and (undocumented)
12219	underflow-error are subtypes range-error, not domain-error.
12220	This fixes bugs in timezone-time-from-absolute and in
12221	erc-ctcp-reply-PING.
12222
122232019-11-04  Paul Eggert  <eggert@cs.ucla.edu>
12224
12225	Don’t signal overflow for (expt 1 bignum)
12226
12227	Similarly for (expt 0 bignum) and (expt -1 bignum).
12228	The result is always a -1, 0 or 1, so do not signal overflow.
12229	* src/data.c (expt_integer): Do not signal an overflow if
12230	-1 <= X <= 1.  Be clearer about when overflow is signaled.
12231	* test/src/floatfns-tests.el (bignum-expt): Test this.
12232
122332019-11-04  Ronnie Schnell  <ronnie@driver-aces.com>
12234
12235	Fixes bug where restoring game saved in an endgame question room would show 'nil' as the question.
12236
122372019-11-04  Michael Albinus  <michael.albinus@gmx.de>
12238
12239	Improve Tramp error handling
12240
12241	* lisp/net/tramp.el (tramp-set-syntax): Add missing argument.
12242	(tramp-signal-hook-function): Make it more robust.
12243	(tramp-handle-directory-files):
12244	* lisp/net/tramp-adb.el
12245	(tramp-adb-handle-directory-files-and-attributes)
12246	(tramp-adb-handle-copy-file, tramp-adb-handle-rename-file):
12247	* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
12248	* lisp/net/tramp-rclone.el (tramp-rclone-do-copy-or-rename-file)
12249	(tramp-rclone-handle-directory-files):
12250	* lisp/net/tramp-sh.el (tramp-sh-handle-directory-files-and-attributes)
12251	(tramp-sh-handle-copy-directory, tramp-do-copy-or-rename-file):
12252	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
12253	(tramp-smb-handle-copy-file, tramp-smb-handle-directory-files)
12254	(tramp-smb-handle-rename-file):
12255	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-do-copy-or-rename-file):
12256	Improve error handling.
12257
12258	* test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
12259	(tramp-test12-rename-file, tramp-test14-delete-directory)
12260	(tramp-test15-copy-directory, tramp-test16-directory-files)
12261	(tramp-test19-directory-files-and-attributes): Extend tests.
12262
122632019-11-04  Eli Zaretskii  <eliz@gnu.org>
12264
12265	Fix last change in dired.c
12266
12267	* src/dired.c (file_name_completion): Fix arguments to
12268	Fcompare_strings.  (Bug#38056)
12269
122702019-11-03  Stephen Gildea  <stepheng+emacs@gildea.com>
12271
12272	Fix English grammar in some doc strings and comments
12273
12274	(files.el subr.el): Fix some grammar errors in doc strings and comments.
12275	(frame.c fringe.c image.c xfns.c xterm.c): Fix some English grammar
12276	errors in doc strings.
12277
122782019-11-03  Paul Eggert  <eggert@cs.ucla.edu>
12279
12280	Improve time documentation a bit more
12281
12282	* doc/lispref/os.texi (Time of Day, Time Conversion)
12283	(Time Parsing, Time Calculations): Improve doc.
12284
122852019-11-03  Juri Linkov  <juri@linkov.net>
12286
12287	* lisp/help-fns.el (describe-variable): Add quotes to symbol value of origval.
12288
122892019-11-03  Juri Linkov  <juri@linkov.net>
12290
12291	* lisp/tab-bar.el: Better handling of tab-bar-history.
12292
12293	* lisp/tab-bar.el (tab-bar-history-limit): Increase to 10 since wc
12294	is not saved to the desktop file anymore, so doesn't affect its size.
12295	(tab-bar-history--pre-change, tab-bar--history-change):
12296	Store wc before possibly entering the minibuffer.
12297
122982019-11-03  Juri Linkov  <juri@linkov.net>
12299
12300	* lisp/tab-bar.el: Filter out non-persistent tab parameters from frameset.
12301
12302	* lisp/tab-bar.el (frameset-filter-tabs): New function
12303	added to 'frameset-filter-alist' for frame parameter 'tabs'.
12304	(tab-bar--tab): Remove ws-bl/ws-bbl that are not needed because
12305	frameset doesn't save frame buffer-list to desktop anyway.
12306	(tab-bar-select-tab): Remove ws-bl/ws-bbl related code.
12307
12308	* lisp/emacs-lisp/seq.el (seq-reduce): Add autoload cookie.
12309
123102019-11-03  Stefan Kangas  <stefankangas@gmail.com>
12311	    Jonas Bernoulli  <jonas@bernoul.li>
12312
12313	Handle truncate-lines in customize-group
12314
12315	* lisp/cus-edit.el (custom-group--draw-horizontal-line): New
12316	function to draw horizontal lines which handles a non-nil value of
12317	'truncate-lines'.  (Bug#25308)
12318	(custom-group-value-create): Use it.
12319
123202019-11-03  Lars Ingebrigtsen  <larsi@gnus.org>
12321
12322	Fix doc of font-lock-syntactic-face-function
12323
12324	* doc/lispref/modes.texi (Syntactic Font Lock): Don't refer to
12325	no-longer-existing OTHER-VARS (bug#17730) and include an example.
12326
123272019-11-03  Eli Zaretskii  <eliz@gnu.org>
12328
12329	Fix file-tests.el on MS-Windows
12330
12331	* test/lisp/files-tests.el
12332	(files-tests-file-name-non-special-start-file-process): On
12333	MS-Windows, wait till the process dies before returning from
12334	the files-tests--with-temp-non-special macro, to ensure the
12335	temporary directory is successfully deleted.
12336
123372019-11-03  Eli Zaretskii  <eliz@gnu.org>
12338
12339	Fix case-insensitive completion of non-ASCII file names
12340
12341	* src/dired.c (scmp): Comment on (non)applicability to
12342	comparisons of  non-ASCII strings case-insensitively.
12343	(file_name_completion): Decode early the file names read from
12344	the directory, and use the decoded names for comparison when
12345	letter-case should be ignored.  (Bug#11339)
12346
123472019-11-03  Lars Ingebrigtsen  <larsi@gnus.org>
12348
12349	describe-font/font-info works with unloaded fonts
12350
12351	* lisp/international/mule-diag.el (describe-font): This function
12352	can be used on unloaded fonts, so remove that restriction from the
12353	doc string (bug#16815).  Also allow completion over all fonts on
12354	the system.
12355
12356	* src/font.c (Ffont_info): Ditto for the doc string.
12357
123582019-11-03  Lars Ingebrigtsen  <larsi@gnus.org>
12359
12360	Add a <a id=...> skeleton to html-mode
12361
12362	* lisp/textmodes/sgml-mode.el (html-id-anchor): New skeleton
12363	and keystroke (bug#37651).
12364
123652019-11-03  Juanma Barranquero  <lekktu@gmail.com>
12366
12367	* lisp/bs.el (bs-mode): Improve mode docstring.
12368
123692019-11-02  Juri Linkov  <juri@linkov.net>
12370
12371	* lisp/tab-line.el (tab-line-tab-selected): New face.
12372
12373	(tab-line-format): Use new face tab-line-tab-selected.
12374	([tab-line]): Move tab-switching mouse wheel commands to S-keys.
12375
123762019-11-02  Óscar Fuentes  <ofv@wanadoo.es>
12377
12378	Fix data-directory when executing from an out-of-source build
12379
12380	Fixes #36828.
12381
12382	* src/callproc.c (init_callproc): detect out-of-source build.
12383
123842019-11-02  João Távora  <joaotavora@gmail.com>
12385
12386	Allow flymake diagnostic types to have shorter names
12387
12388	Eglot, a third-party package which uses Flymake, has its own
12389	diagnostic types such as 'eglot-error', 'eglot-warning', etc...  While
12390	not being too long, they will not fit in the type column of the "list
12391	all diagnostics" buffer.  This commit allows diagnostic types to have
12392	user-defined names and also assigns names to the default categories.
12393
12394	* doc/misc/flymake.texi (Flymake error types): Describe
12395	flymake-type-name prop.
12396
12397	* lisp/progmodes/flymake.el (flymake--diagnostics-buffer-entries):
12398	Use type names.
12399	(flymake-error, flymake-warning, flymake-note): Give these
12400	diagnostic categories default type names.
12401
124022019-11-02  João Távora  <joaotavora@gmail.com>
12403
12404	Avoid face clashes between Flymake and region highlighting
12405
12406	Fix bug#34022.
12407
12408	* lisp/progmodes/flymake.el (flymake--highlight-line): Use
12409	(PRIMARY . SECONDARY) priority value.
12410
124112019-11-02  João Távora  <joaotavora@gmail.com>
12412
12413	Clarify consequences of mismatching Flymake diagnostic buffers
12414
12415	Fix bug#34418.
12416
12417	* doc/misc/flymake.texi (Flymake utility functions): Add note to
12418	flymake-make-diagnostic.
12419
12420	* lisp/progmodes/flymake.el (flymake--handle-report): Discard
12421	diagnostics from other buffers.
12422
124232019-11-02  Lars Ingebrigtsen  <larsi@gnus.org>
12424
12425	Further fixup of the previous doc fix in the Faces node
12426
12427	* doc/lispref/display.texi (Faces): Improve wording from previous
12428	change.
12429
124302019-11-02  Lars Ingebrigtsen  <larsi@gnus.org>
12431
12432	Revert "Make the debbugs groups also include robot messages"
12433
12434	This reverts commit 682eae776efa9d57842345de67becf5c56cafc91.
12435
12436	The change made the bug# disappear from the Subject lines.
12437
124382019-11-02  Alan Mackenzie  <acm@muc.de>
12439
12440	CC Mode.  Fix slow scrolling by adding a search limit.
12441
12442	This fixes bug #10149.
12443
12444	* lisp/progmodes/cc-fonts.el (c-font-lock-single-decl) Limit the search by
12445	c-go-up-list-backwards to 500 non-literal characters.
12446
124472019-11-02  João Távora  <joaotavora@gmail.com>
12448
12449	Correct merge blunder in last icomplete commit
12450
12451	* lisp/icomplete.el (icomplete-exhibit): Use
12452	while-no-input-ignore-events.
12453
124542019-11-02  Eli Zaretskii  <eliz@gnu.org>
12455
12456	Document Windows font selection quirks
12457
12458	* doc/emacs/msdos.texi (Windows Fonts): Document
12459	'w32-use-w32-font-dialog' and 'w32-fixed-font-alist'.
12460
124612019-11-02  Eli Zaretskii  <eliz@gnu.org>
12462
12463	Improve documentation of 'set-face-font'
12464
12465	* lisp/faces.el (set-face-font):
12466	* doc/emacs/frames.texi (Fonts):
12467	* doc/lispref/display.texi (Face Attributes)
12468	(Attribute Functions): Clarify and correct the documentation
12469	of set-face-font and related descriptions of font
12470	specifications.  (Bug#14647)
12471
124722019-11-02  Eli Zaretskii  <eliz@gnu.org>
12473
12474	Revert "Omit edition numbers and dates in manuals"
12475
12476	This reverts commit 2f42832895942fdeaa0c500511aa19860fa806cd.
12477	Editions of Emacs manuals must be coordinated with the FSF
12478	publishing staff, as they appear on the printed books.
12479
124802019-11-01  Stefan Kangas  <stefankangas@gmail.com>
12481
12482	* .dir-locals.el: Add explanatory header.
12483
124842019-11-01  Stefan Kangas  <stefankangas@gmail.com>
12485
12486	Add auto-insert skeleton for ".dir-locals.el"
12487
12488	* lisp/autoinsert.el (auto-insert-alist): Add auto-insert skeleton for
12489	".dir-locals.el".
12490
124912019-11-01  João Távora  <joaotavora@gmail.com>
12492
12493	New icomplete-tidy-shadowed-file-names variable
12494
12495	* lisp/icomplete.el (rfn-eshadow): Require it.
12496	(icomplete-tidy-shadowed-file-names): New variable.
12497	(icomplete-exhibit): Use icomplete-tidy-shadowed-file-names.
12498
124992019-11-01  João Távora  <joaotavora@gmail.com>
12500
12501	Fix icomplete-force-complete-and-exit for no-input situations
12502
12503	If there is no minibuffer input, but the user has already cycled some
12504	pre-calculated completions, we should be calling
12505	minibuffer-force-complete-and-exit instead of
12506	minibuffer-complete-and-exit.  The former is guaranteed to be fast in
12507	this situation and yields the desired "selected" completion, while the
12508	latter will just give us the default, ignoring all the cycling of
12509	icomplete-{forward|backward}-completions.
12510
12511	* lisp/icomplete.el (icomplete-force-complete-and-exit): Add
12512	comments and fix for empty input but some completions calculated.
12513
125142019-11-01  João Távora  <joaotavora@gmail.com>
12515	    Stefan Monnier  <j.schmoe@example.org>
12516
12517	Improve fix for icomplete's backward-kill-word bug#38024
12518
12519	* lisp/icomplete.el (icomplete-exhibit): Use
12520	while-no-input-ignore-events, not redisplay.
12521
125222019-11-01  Stefan Kangas  <stefankangas@gmail.com>
12523
12524	* doc/emacs/package.texi (Package Menu): Add index items.
12525
125262019-11-01  Stefan Kangas  <stefankangas@gmail.com>
12527
12528	Use PASSWORD_STORE_DIR in auth-source-pass when set
12529
12530	* lisp/auth-source-pass.el (auth-source-pass-filename): Initialize to
12531	PASSWORD_STORE_DIR environment variable when set.  (Bug#29663)
12532
125332019-11-01  Stefan Kangas  <stefankangas@gmail.com>
12534
12535	Don't refuse to install packages without a "footer line"
12536
12537	* lisp/emacs-lisp/package.el (package-buffer-info): Don't signal an
12538	error when the "footer line" is missing.  Warn only.  (Bug#26490)
12539	* etc/NEWS: Announce it.
12540
125412019-11-01  Paul Eggert  <eggert@cs.ucla.edu>
12542
12543	Omit edition numbers and dates in manuals
12544
12545	These seem to cause more confusion than they cure; e.g.,
12546	https://shop.fsf.org/books/gnu-emacs-manual-18th-edition-v-261
12547	currently advertises "18th edition" even as it points to
12548	https://www.gnu.org/software/emacs/manual/pdf/emacs.pdf
12549	which says "Seventeenth Edition".  It is simpler and less
12550	confusing to stick to one version number like "26.3".  If we
12551	need a separate edition number for each printed manual for
12552	some reason (marketing?) we can put “@ifset printed-edition”
12553	around anything specific to the printed editions.
12554	(as opposed to online PDF copies).
12555	* doc/emacs/emacs.texi (EDITION):
12556	* doc/lispintro/emacs-lisp-intro.texi (edition-number, update-date):
12557	* doc/lispref/elisp.texi (VERSION, DATE):
12558	Remove, and remove uses.
12559
125602019-11-01  Paul Eggert  <eggert@cs.ucla.edu>
12561
12562	Document limits on some time-conversion functions
12563
12564	* doc/lispref/os.texi (Time of Day, Time Zone Rules)
12565	(Time Conversion, Time Parsing, Time Calculations):
12566	Document functions that limit the range of time values
12567	due to OS limits (Bug#37974).
12568
125692019-11-01  Lars Ingebrigtsen  <larsi@gnus.org>
12570
12571	set-face-font doc string update
12572
12573	* lisp/faces.el (set-face-font): Mention what the string formats
12574	are (bug#14647).
12575
125762019-11-01  Lars Ingebrigtsen  <larsi@gnus.org>
12577
12578	Fix documentation of set-face-font in the manual
12579
12580	* doc/lispref/display.texi (Attribute Functions): Describe more
12581	precisely what set-face-font does (bug#14647).
12582
125832019-11-01  Lars Ingebrigtsen  <larsi@gnus.org>
12584
12585	Low-Level Font documentation fix
12586
12587	* doc/lispref/display.texi (Low-Level Font): Mention what the data
12588	types the font attributes are (bug#14634).
12589
125902019-11-01  Lars Ingebrigtsen  <larsi@gnus.org>
12591
12592	Really enable setting a breakpoint without instrumenting first
12593
12594	* lisp/emacs-lisp/edebug.el (edebug-set-breakpoint): Really enable
12595	setting a breakpoint without instrumenting first (bug#23469).
12596
125972019-11-01  Lars Ingebrigtsen  <larsi@gnus.org>
12598
12599	Don't claim that anonymous face can't be used in font-lock
12600
12601	* doc/lispref/display.texi (Faces): Anonymous functions can be
12602	used when font locking, so adjust the injunction against them
12603	(bug#35005).
12604
126052019-11-01  Cecilio Pardo  <cpardo@imayhem.com>  (tiny change)
12606
12607	Remove an unfunny joke from DEVEL.HUMOR
12608
12609	* etc/DEVEL.HUMOR: Remove unfunny joke (bug#38002).
12610
126112019-11-01  Filipp Gunbin  <fgunbin@fastmail.fm>
12612
12613	Make ant regexp in compilation-error-regexp-alist-alist more lax
12614
12615	* lisp/progmodes/compile.el: Make ant regexp accept filenames that may
12616	occur on Cygwin (like c:/test) and optional additional severity level
12617	after task name.
12618	* etc/compilation.txt: Add sample.
12619
126202019-11-01  Richard Stallman  <rms@gnu.org>
12621
12622	Minor wording change in ELisp manual
12623
12624	* doc/lispref/functions.texi (Advising Named Functions):
12625	Improve and clarify wording of the advice to avoid advising
12626	functions in released code.
12627
126282019-10-31  Paul Eggert  <eggert@cs.ucla.edu>
12629
12630	Fix insert-file-contents file error regression
12631
12632	Problem reported for dired-view-file (Bug#37950).
12633	* src/fileio.c (Finsert_file_contents): When visiting,
12634	signal an error if the file could not be opened for any reason,
12635	rather than signaling an error only for nonexistent files, fixing
12636	a bug introduced in 2019-09-16T03:17:43!eggert@cs.ucla.edu.
12637
126382019-10-31  Eric Ludlam  <ericludlam@gmail.com>
12639
12640	* lisp/cedet/ (semantic-analyze-possible-completions): Add `flags` arg
12641
12642	* lisp/cedet/semantic/texi.el (semantic-analyze-possible-completions),
12643	lisp/cedet/srecode/srt-mode.el (semantic-analyze-possible-completions),
12644	lisp/cedet/semantic/bovine/make.el (semantic-analyze-possible-completions):
12645	Add `flags` arg.
12646	* lisp/cedet/semantic/grammar.el (semantic-analyze-possible-completions):
12647	Add `flags` arg.  Reverse the found prefix.
12648	(semantic-ctxt-current-class-list): Include token tags as things to
12649	appear in non-lisp context.
12650
126512019-10-31  Eric Ludlam  <zappo@gnu.org>
12652
12653	* test/lisp/cedet/semantic-utest-ia.el: Update from upstream
12654
12655	Merge content from CEDET on SF to bring in additional test points
12656	and support more types of languages.
12657	(semantic-utest-ia-struct.cpp, semantic-utest-ia-templates.cpp)
12658	(semantic-utest-ia-using.cpp, semantic-utest-ia-nsp.cpp)
12659	(semantic-utest-ia-localvars.cpp, semantic-utest-ia-varnamse.java)
12660	(semantic-utest-ia-wisent.wy, semantic-utest-ia-texi)
12661	(semantic-utest-ia-make, semantic-utest-ia-srecoder): New test points
12662	(semantic-ia-utest-buffer): Use comment-start-skip when looking
12663	for test point tokens.
12664	Capture errors ignoring debugger to enable test for empty results.
12665	Improve output from test diagnostics.
12666	(semantic-ia-utest-buffer-refs): Use comment-start-skip to find
12667	test point tokens.
12668	Author: Eric Ludlam <zappo@gnu.org>
12669
126702019-10-31  Eric Ludlam  <zappo@gnu.org>
12671
12672	* test/manual/cedet/tests/test*: More updates from upstream
12673
12674	* test/manual/cedet/tests/testjavacomp.java,
12675	test/manual/cedet/tests/testnsp.cpp,
12676	test/manual/cedet/tests/testsppcomplete.c,
12677	test/manual/cedet/tests/testtypedefs.cpp,
12678	test/manual/cedet/tests/testvarnames.c:
12679	Merge content from CEDET on SF with extended test points for use with
12680	test/lisp/cedet/semantic-utest-ia.el
12681	Author: Eric Ludlam <zappo@gnu.org>
12682
126832019-10-31  Eric Ludlam  <zappo@gnu.org>
12684
12685	* test/manual/cedet/tests/testdoublens.cpp: Update from upstream
12686
12687	* test/manual/cedet/tests/testdoublens.hpp:
12688	Merge content from CEDET on SF with extended test points for use with
12689	test/lisp/cedet/semantic-utest-ia.el
12690	Author: Eric Ludlam <zappo@gnu.org>
12691
126922019-10-31  Eric Ludlam  <zappo@gnu.org>
12693
12694	* test/manual/cedet/tests/: New files for semantic-utest-ia.el
12695
12696	* test/manual/cedet/tests/test.mk,
12697	test/manual/cedet/tests/test.srt, test/manual/cedet/tests/test.texi,
12698	test/manual/cedet/tests/testlocalvars.cpp,
12699	test/manual/cedet/tests/teststruct.cpp,
12700	test/manual/cedet/tests/testtemplates.cpp,
12701	test/manual/cedet/tests/testusing.cpp,
12702	test/manual/cedet/tests/testusing.hh,
12703	test/manual/cedet/tests/testvarnames.java.
12704	test/manual/cedet/tests/testwisent.wy:
12705	New files to be used by test/lisp/cedet/semantic-utest-ia.el.
12706	Author: Eric Ludlam <zappo@gnu.org>
12707
127082019-10-31  Alan Third  <alan@idiocy.org>
12709
12710	Prevent text flicker with macOS input methods (bug#23412)
12711
12712	* src/nsterm.m ([EmacsView setMarkedText:selectedRange:]): Don't
12713	always delete the working text as ns-put-working-text does that.
12714
127152019-10-31  Mattias Engdegård  <mattiase@acm.org>
12716
12717	Inhibit undo-in-region for mouse-drag-region (bug#37700)
12718
12719	'mouse-drag-region' leaves the region active around the dragged text,
12720	so a straight undo did not revert the entire operation.  To remedy
12721	this, inhibit undo-in-region when the last command was
12722	mouse-drag-region.  (Method suggested by Stefan Monnier.)
12723
12724	* lisp/mouse.el (undo-drag-region): Set the undo-inhibit-region property.
12725	* lisp/simple.el (undo): Inhibit undo-in-region if the last command
12726	had the undo-inhibit-region property set.
12727	* doc/lispref/symbols.texi (Standard Properties):
12728	* doc/lispref/text.texi (Undo): Document undo-inhibit-region.
12729	* etc/NEWS: Announce the property.
12730
127312019-10-31  Lars Ingebrigtsen  <larsi@gnus.org>
12732
12733	Ensure that font-local variables are buffer-local
12734
12735	* lisp/font-lock.el (font-lock-set-defaults): Ensure that the font
12736	lock variables are buffer-local even when nil, so that they're
12737	copied correctly by mhtml mode when changing sub-modes (bug#33937).
12738
127392019-10-31  Lars Ingebrigtsen  <larsi@gnus.org>
12740
12741	Clean up font-lock-refontify slightly
12742
12743	* lisp/font-lock.el (font-lock-refontify): Use
12744	syntax-ppss-flush-cache instead of internal variable.
12745
127462019-10-31  Lars Ingebrigtsen  <larsi@gnus.org>
12747
12748	Further tweaks to sh-script \ #foo font locking
12749
12750	* lisp/progmodes/sh-script.el (sh-syntax-propertize-function):
12751	Tweak previous \ #foo change to work on all quoted characters, but
12752	check that the backslash itself is not backslashed.  Regexp from
12753	Stefan Monnier.
12754
127552019-10-31  Michael Albinus  <michael.albinus@gmx.de>
12756
12757	Fix some minor Tramp problems
12758
12759	* lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
12760	Check, that `tramp-password-save-function' is a function.
12761
12762	* lisp/net/tramp-smb.el (tramp-smb-handle-file-system-info):
12763	Check, that there is a share.
12764
12765	* lisp/net/tramp.el (outline-regexp): Declare.
12766	(tramp-get-debug-buffer): Let-bind `signal-hook-function'.
12767
12768	* test/lisp/net/tramp-tests.el (tramp-test04-substitute-in-file-name):
12769	Skip some tests for Emacs 24 and 25; they let Emacs crash.
12770
127712019-10-31  Robert Pluim  <rpluim@gmail.com>
12772
12773	Rework vc stash bindings
12774
12775	This adds create/snapshot bindings to the stash button even when there
12776	are no stashes, and extends the stash menu bindings.
12777
12778	* etc/NEWS: Announce the bindings.
12779
12780	* lisp/vc/vc-git.el (vc-git-stash-shared-map): New keymap.  Holds
12781	shared bindings between stash button and stash list.
12782	(vc-git-stash-map): Inherit from vc-git-stash-shared-map.
12783	(vc-git-stash-button-map): New keymap.  Holds button bindings,
12784	inherit from vc-git-stash-shared-map.
12785	(vc-git-stash-shared-help, vc-git-stash-list-help): New
12786	defconsts.  Abstract out list/button help texts.
12787	(vc-git--make-button-text): Set keymap property to
12788	vc-git-stash-button-map.
12789	(vc-git-make-stash-button): Use vc-git-stash-shared-help.
12790	(vc-git-stash-menu-map): Add items for vc-git-stash and
12791	vc-git-stash-snapshot.
12792	(vc-git-dir-extra-headers): Use vc-git-stash-list-help and
12793	vc-git-stash-shared-help.  Add vc-git-stash and
12794	vc-git-stash-snapshot bindings to text shown when there are no stashes.
12795
127962019-10-30  Paul Eggert  <eggert@cs.ucla.edu>
12797
12798	Fix bug with lock file on nonstandard filesystem
12799
12800	* src/filelock.c (create_lock_file):
12801	Don’t disable user write access to the lock file (Bug#37884).
12802
128032019-10-30  Lars Ingebrigtsen  <larsi@gnus.org>
12804
12805	Font-lock symlinks in dired buffers better
12806
12807	* lisp/dired.el (dired-font-lock-keywords): Font-lock symlinks
12808	differently based on whether they point at a directory or not
12809	(bug#17064).  Based on code from Michael Heerdegen.
12810
128112019-10-30  Juri Linkov  <juri@linkov.net>
12812
12813	* lisp/tab-bar.el (tab-bar-select-tab): Use set-frame-parameter.
12814
12815	(tab-bar-list-noselect, tab-bar-list-mode): Rearrange buffer-read-only.
12816
128172019-10-30  Paul Eggert  <eggert@cs.ucla.edu>
12818
12819	Fix print.c infloop on circular lists
12820
12821	Fix infinite loops in print.c when a circular list is passed
12822	to command-error-default-function or to error-message-string.
12823	* src/print.c (print_error_message):
12824	Use FOR_EACH_TAIL to avoid infloop on circular lists.
12825	(print_object): Use FOR_EACH_TAIL_SAFE, as it uses
12826	Brent’s teleporting tortoise-hare algorithm which is
12827	asymptotically better than the classic tortoise-hare
12828	algorithm that the code wsas using.
12829	* test/src/print-tests.el (print-circle-2): When print-circle
12830	is nil, do not insist on a particular cycle-detection heuristic.
12831	(error-message-string-circular): New test.
12832
128332019-10-30  Paul Eggert  <eggert@cs.ucla.edu>
12834
12835	Fix keyboard.c infloops on circular lists
12836
12837	Fix infinite loops in keyboard.c when a circular list is
12838	found in a hook, or in help-event-list, or in the argument
12839	of event-convert-list, or in a keymap where a Lucid event
12840	type list is expected, or in a menu or tab spec.
12841	* src/keyboard.c (safe_run_hooks_error, menu_bar_items)
12842	(parse_menu_item, parse_tab_bar_item, parse_tool_bar_item):
12843	Use FOR_EACH_TAIL to avoid infloop on circular lists.
12844	(help_char_p, Fevent_convert_list, lucid_event_type_list_p):
12845	Use FOR_EACH_TAIL_SAFE to avoid infloop on circular lists,
12846	when the action is idempotent so a circular list can be
12847	treated as a noncircular one.
12848
128492019-10-30  Paul Eggert  <eggert@cs.ucla.edu>
12850
12851	Fix fileio.c infloops on circular lists
12852
12853	Fix infinite loops in fileio.c when a circular list is the
12854	value of after_insert_file_functions,
12855	buffer-auto-save-file-format, buffer-file-format, or
12856	write-region-annotate-functions.
12857	* src/fileio.c (Finsert_file_contents, build_annotations):
12858	Use FOR_EACH_TAIL to avoid infloop on circular lists.
12859	(build_annotations): Use an EMACS_INT, not an int, to count
12860	nesting level.
12861	* test/src/fileio-tests.el:
12862	(fileio-tests--circular-after-insert-file-functions): New test.
12863
128642019-10-30  Kevin Ryde  <user42_kevin@yahoo.com.au>
12865
12866	Support \pagebreak[0] for paragraph-separate in latex-mode
12867
12868	* lisp/textmodes/tex-mode.el (latex-mode): In 'paragraph-separate' allow
12869	optional argument ('[0]', etc.) for '\pagebreak[0]'.  (Bug#19039)
12870
128712019-10-30  Tom Tromey  <tom@tromey.com>
12872
12873	Send -enable-frame-filters to gdb
12874
12875	* lisp/progmodes/gdb-mi.el (gdb-init-1): Send -enable-frame-filters to
12876	gdb.
12877
128782019-10-30  Lars Ingebrigtsen  <larsi@gnus.org>
12879
12880	Fix previous sh-script.el font-lock #comment change
12881
12882	* lisp/progmodes/sh-script.el (sh-syntax-propertize-function): We
12883	want to match "\ " before a comment; not a space character.
12884
128852019-10-30  Lars Ingebrigtsen  <larsi@gnus.org>
12886
12887	Revert "Move description of value to syntax-ppss function."
12888
12889	This reverts commit 305dbc7e2be05748039aacb1a3d697f6f64bed4c.
12890
12891	Both of the functions in question are used a lot in the sources, so move it back to the more basic function.
12892
128932019-10-30  Lars Ingebrigtsen  <larsi@gnus.org>
12894
12895	Add a new ppss structure for syntax-ppss data
12896
12897	* lisp/emacs-lisp/syntax.el (ppss): Add a new structure to provide
12898	accessors to the syntax-ppss data.
12899
129002019-10-30  Lars Ingebrigtsen  <larsi@gnus.org>
12901
12902	Tweak fontification of \url{http://foo.org/bar%zot} in (la)tex-mode
12903
12904	* lisp/textmodes/tex-mode.el (tex-font-lock-keywords-1):
12905	\url{http://foo.org/bar%zot} shouldn't be fontified as having a
12906	comment, so make the tex-verbatim face overwrite the
12907	already-applied syntactical comment bits (bug#37134).
12908
129092019-10-30  Lars Ingebrigtsen  <larsi@gnus.org>
12910
12911	Bind vc-git-stash to a key
12912
12913	* lisp/vc/vc-git.el (vc-git-stash-map): Give `vc-git-stash' a
12914	keystroke, because it's a useful command.
12915
12916	When there are no stashes, there's no way to use that keystroke (since
12917	it's only bound on the stash lines), so perhaps that should also be
12918	fixed somehow.
12919
129202019-10-30  Lars Ingebrigtsen  <larsi@gnus.org>
12921
12922	Clear more data in font-lock-refontify to ensure refontifying
12923
12924	* lisp/font-lock.el (font-lock-refontify): Clear out even more data.
12925
129262019-10-30  Lars Ingebrigtsen  <larsi@gnus.org>
12927
12928	font-lock \ #foo in shell mode more correctly
12929
12930	* lisp/progmodes/sh-script.el (sh-syntax-propertize-function):
12931	\ #foo isn't a comment -- it's a symbol that starts with a space
12932	character (bug#17538).
12933
129342019-10-30  Lars Ingebrigtsen  <larsi@gnus.org>
12935
12936	Make font-lock-refontify try even harder to refontify
12937
12938	* lisp/font-lock.el (font-lock-refontify): Make this command work
12939	even after switching global font lock mode on and then off again.
12940
129412019-10-30  Lars Ingebrigtsen  <larsi@gnus.org>
12942
12943	Fix setgid fontification in dired on some OS-es
12944
12945	* lisp/dired.el (dired-font-lock-keywords): Apparently some
12946	versions of ls use "S" for setgid and other use "s" (bug#8186).
12947
129482019-10-30  Lars Ingebrigtsen  <larsi@gnus.org>
12949
12950	Fix "dnl" highlights in m4-mode
12951
12952	* lisp/progmodes/m4-mode.el (m4-font-lock-keywords): "dnl"
12953	comments should override any previous syntax-based highlighting
12954	(37132).  This makes "dnl foo#bar" be highlighted correctly.
12955
129562019-10-30  Lars Ingebrigtsen  <larsi@gnus.org>
12957
12958	Add a convenience function to be used when working on font locking
12959
12960	* doc/lispref/modes.texi (Font Lock Basics): Document it.
12961
12962	* lisp/font-lock.el (font-lock-refontify): New convenience command.
12963
129642019-10-30  Lars Ingebrigtsen  <larsi@gnus.org>
12965
12966	Move description of value to syntax-ppss function.
12967
12968	* lisp/emacs-lisp/syntax.el (syntax-ppss): Move the description of
12969	the return value from...
12970
12971	* src/syntax.c (Fparse_partial_sexp): ... here because
12972	`syntax-ppss' is what's called over the place, and jumping through
12973	an indirection to get to the value description is inconvenient.
12974
129752019-10-30  Lars Ingebrigtsen  <larsi@gnus.org>
12976
12977	Indent font-lock-fontify-syntactically-region
12978
12979	* lisp/font-lock.el (font-lock-fontify-syntactically-region):
12980	Indent function.
12981
129822019-10-30  Michael Albinus  <michael.albinus@gmx.de>
12983
12984	* lisp/net/tramp.el (outline-regexp): Remove declaration.
12985
129862019-10-29  Juri Linkov  <juri@linkov.net>
12987
12988	* etc/NEWS: Update renamed function read-char-from-minibuffer.
12989
129902019-10-29  Lars Ingebrigtsen  <larsi@gnus.org>
12991
12992	Fix image-converter probes
12993
12994	* lisp/image/image-converter.el (image-converter--probe): Check
12995	that the executable exists before trying to call it.
12996
129972019-10-29  Juri Linkov  <juri@linkov.net>
12998
12999	Rename read-char-with-history to read-char-from-minibuffer (bug#10477)
13000
13001	* lisp/simple.el (read-char-from-minibuffer-history):
13002	Rename from read-char-with-history--history.
13003	(read-char-from-minibuffer-map):
13004	Rename from read-char-with-history--map.
13005	(read-char-from-minibuffer): Rename from read-char-with-history.
13006	(read-char-from-minibuffer-self-insert): New command.
13007	(zap-to-char): Use read-char-from-minibuffer.
13008
130092019-10-29  Lars Ingebrigtsen  <larsi@gnus.org>
13010
13011	Make the debbugs groups also include robot messages
13012
13013	* lisp/gnus/gnus-group.el (gnus-bug-group-download-format-alist):
13014	Change the URL to also include robot messages.
13015
130162019-10-29  Juri Linkov  <juri@linkov.net>
13017
13018	Reimplement read-char-with-history based on read-from-minibuffer
13019
13020	* lisp/simple.el (read-char-with-history): Reimplement based on
13021	read-from-minibuffer.
13022	* lisp/simple.el (read-char-with-history--map): New variable
13023	(bug#10477).
13024
130252019-10-29  Juri Linkov  <juri@linkov.net>
13026
13027	* lisp/tab-bar.el: Store point position and frame buffer-lists in tab.
13028
13029	* lisp/tab-bar.el (tab-bar--tab): Store additionally point-marker,
13030	frame parameters buffer-list and buried-buffer-list, both for wc and ws.
13031	Use seq-filter.
13032	(tab-bar-select-tab): Restore point-marker after restoring
13033	window-configuration.  Also restore frame parameters buffer-list
13034	and buried-buffer-list both for window-configuration and window-state.
13035	(tab-bar-history-limit, tab-bar-history--minibuffer-depth): New variables.
13036	(tab-bar-history-current): Rename from tab-bar-history--pre-change.
13037	(tab-bar-history--pre-change): Set tab-bar-history-current.
13038	(tab-bar--history-change): Use seq-take for tab-bar-history-limit.
13039	(tab-bar-history-back, tab-bar-history-forward): Restore point-marker.
13040	(tab-bar-list-noselect): Use seq-remove.
13041
13042	* lisp/emacs-lisp/seq.el (seq-take, seq-filter): Add autoload cookie.
13043
130442019-10-29  Lars Ingebrigtsen  <larsi@gnus.org>
13045
13046	Make url-cookie.el be more resistant against bogus data
13047
13048	* lisp/url/url-cookie.el (url-cookie-handle-set-cookie): Don't bug
13049	out on large max-age values (bug#37974).
13050
130512019-10-29  Lars Ingebrigtsen  <larsi@gnus.org>
13052
13053	Document run-with-timer
13054
13055	* doc/lispref/os.texi (Timers): Mention run-with-timer (bug#37875).
13056
130572019-10-29  Lars Ingebrigtsen  <larsi@gnus.org>
13058
13059	Default exotic image formats (like .webp) to image-mode
13060
13061	* doc/lispref/errors.texi (Standard Errors): Mention the new error.
13062
13063	* lisp/files.el (auto-mode-alist): Add a bunch of image suffixes
13064	to the list (bug#37972) based on the output from "gm convert -list
13065	format" (i.e., graphicsmagick).
13066
13067	* lisp/image-mode.el (image-mode): Rewrite to possibly notify the
13068	user about image-use-external-converter.
13069	(image-mode--setup-mode): Factor out into own function and don't
13070	run under `condition-case' as there's nothing here that should
13071	error.
13072
13073	* lisp/image.el (unknown-image-type): New error.
13074	(image-type): Signal that error so that image-mode can offer
13075	sensible feedback to the user.
13076
130772019-10-29  Lars Ingebrigtsen  <larsi@gnus.org>
13078
13079	Fix image-converter probing
13080
13081	* lisp/image/image-converter.el (image-converter--find-converter):
13082	Stop probing on the first successful probe.
13083
130842019-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
13085
13086	* lisp/minibuffer.el: Tweak and undo parts of recent changes
13087
13088	(completion-metadata): Always return a fresh new cons cell.
13089	(completion--nth-completion): Don't bother calling adjust-metadata
13090	if the result won't be used.
13091	(completion-pcm--hilit-commonality): Revert recent change which had
13092	removed support for `completions-first-difference` in `substring` and
13093	`partial-completion` styles.
13094	(completion--flex-adjust-metadata): Treat the arg as immutable.
13095
130962019-10-29  Filipp Gunbin  <fgunbin@fastmail.fm>
13097
13098	Add gradle-kotlin to compilation-error-regexp-alist-alist
13099
13100	* lisp/progmodes/compile.el: Add gradle-kotlin to
13101	compilation-error-regexp-alist-alist.
13102	* etc/compilation.txt: Add samples for it.
13103
131042019-10-29  Jimmy Aguilar Mena  <spacibba@aol.com>
13105
13106	Optimize conditional recursive merge face.
13107
13108	* src/xfaces.c (merge_face_vectors) : Pass ATTR_FILTER to
13109	merge_face_ref to stop recursion merging in advance when possible.
13110	(merge_named_face) : add more conditions to potentially reduce calls to
13111	merge_face_vectors in more unneeded situations.
13112
131132019-10-29  Jimmy Aguilar Mena  <spacibba@aol.com>
13114
13115	Fix extend face in gui interfaces.
13116
13117	* src/xdisp.c (extend_face_to_end_of_line) : Change call to
13118	PRODUCE_GLYPHS with append_stretch_glyph to fill until the windows
13119	border.
13120
131212019-10-29  Jimmy Aguilar Mena  <spacibba@aol.com>
13122
13123	Fix inherited :extend attribute in faces.
13124
13125	* src/xfaces.c (merge_face_vectors) : Add extra parameter ATTR_FILTER
13126	with the same functionality than in merge_named_face.  Update all
13127	occurrences.
13128	(merge_named_face): Remove condition to avoid call
13129	`merge_face_vectors`.
13130
131312019-10-29  Lars Ingebrigtsen  <larsi@gnus.org>
13132
13133	Make shr scale images on all frames
13134
13135	* lisp/net/shr.el (shr-rescale-image): Rescale images even if the
13136	window isn't on the current frame.
13137
131382019-10-28  João Távora  <joaotavora@gmail.com>
13139
13140	Make icomplete-exhibit actually work when navigating up directories
13141
13142	Sometimes, when finding files with icomplete-mode, backward-deleting
13143	the previous word or sexp (to move up a directory) doesn't actually
13144	refresh the file list of the new directory.  Forcing redisplay in
13145	icomplete-exhibit misteriously fixes the problem.
13146
13147	* lisp/icomplete.el (icomplete-exhibit): Add call to redisplay.
13148
131492019-10-28  João Távora  <joaotavora@gmail.com>
13150
13151	New commands for making icomplete behave more like ido
13152
13153	This tries (not particularly hard) to emulate Ido's magic C-k, C-d,
13154	RET and DEL.  For now, the new commands have to be explicitly added to
13155	an active map by the user, using something like this:
13156
13157	(let ((imap icomplete-minibuffer-map))
13158	  (define-key imap (kbd "C-k") 'icomplete-magic-ido-kill)
13159	  (define-key imap (kbd "C-d") 'icomplete-magic-ido-delete-char)
13160	  (define-key imap (kbd "RET") 'icomplete-magic-ido-ret)
13161	  (define-key imap (kbd "DEL") 'icomplete-magic-ido-backward-updir))
13162
13163	* lisp/icomplete.el (icomplete-magic-ido-kill)
13164	(icomplete-magic-ido-delete-char, icomplete-magic-ido-ret)
13165	(icomplete-magic-ido-backward-updir): New commands.
13166
131672019-10-28  Juri Linkov  <juri@linkov.net>
13168
13169	* lisp/tab-bar.el: Check for minibuffer-depth in tab-bar-history-mode.
13170
13171	* lisp/tab-bar.el (tab-bar-history--pre-change): Store also minibuffer-depth.
13172	(tab-bar-history-change): Check stored minibuffer-depth for zero.
13173	(tab-bar-history-mode): Use prefix -- for internal functions.
13174
131752019-10-28  Mattias Engdegård  <mattiase@acm.org>
13176
13177	Use new-style rx extensions in python.el
13178
13179	* lisp/progmodes/python.el (python-rx): Use `rx-let' instead of
13180	`rx-constituents'.  This allows for some slight redundancy reduction,
13181	since `rx-let' definitions are expanded inside `not' (bug#37849).
13182	Reorder some `or' forms for more efficient matching.
13183
131842019-10-28  Hong Xu  <hong@topbug.net>
13185
13186	Add doc for goto-history-element
13187
13188	* doc/lispref/minibuf.texi (Minibuffer Commands): Add
13189	goto-history-element (bug#37948).
13190	* lisp/simple.el (goto-history-element): Clarify NABS.
13191
131922019-10-28  Stefan Kangas  <stefankangas@gmail.com>
13193
13194	* lisp/eshell/em-term.el: Remove commented out XEmacs compat code.
13195
131962019-10-28  Stefan Kangas  <stefankangas@gmail.com>
13197
13198	Remove more XEmacs compat code from CEDET
13199
13200	* lisp/cedet/mode-local.el (mode-local-describe-bindings-1):
13201	* lisp/cedet/semantic/idle.el (semantic-idle-summary-out-of-context-faces):
13202	* lisp/cedet/semantic/imenu.el (semantic-imenu-rebuild-directory-indexes):
13203	* lisp/cedet/semantic/texi.el (semantic-texi-command-completion-list):
13204	Remove XEmacs compat code.
13205
132062019-10-28  Stefan Kangas  <stefankangas@gmail.com>
13207
13208	Remove obsolete doc references to XEmacs (Bug#37899)
13209
13210	* doc/misc/edt.texi (Changes, Goals):
13211	* doc/misc/emacs-mime.texi (Charset Translation):
13212	* doc/misc/gnus-faq.texi (FAQ 4-15):
13213	* doc/misc/pcl-cvs.texi (Bugs):
13214	* doc/misc/srecode.texi (SRecode Minor Mode):
13215	* lisp/cedet/srecode/insert.el (srecode-insert-ask-variable-method):
13216	* lisp/follow.el:
13217	* lisp/leim/quail/ipa.el (ipa-x-sampa, ipa-kirshenbaum):
13218	* lisp/net/newsticker.el:
13219	* lisp/obsolete/iswitchb.el:
13220	* lisp/progmodes/hideshow.el:
13221	* lisp/savehist.el (savehist-file):
13222	* lisp/vc/ediff.el: Remove obsolete references to XEmacs in doc
13223	strings and comments.
13224
132252019-10-28  Michal Nowak  <mnowak@startmail.com>  (tiny change)
13226
13227	Add cert bundle path for OpenIndiana
13228
13229	* lisp/net/gnutls.el (gnutls-trustfiles): Add cert bundle path for
13230	OpenIndiana (bug#37960).
13231
132322019-10-28  Lars Ingebrigtsen  <larsi@gnus.org>
13233
13234	Make ERC respect erc-channel-hide-list
13235
13236	* lisp/erc/erc.el (erc-hide-current-message-p): Make
13237	erc-channel-hide-list work (bug#37879) by getting matching on the
13238	channel name instead of the ERC client name.
13239
132402019-10-28  Lars Ingebrigtsen  <larsi@gnus.org>
13241
13242	Fix `G c' in Gnus group buffers for non-ASCII text
13243
13244	* lisp/gnus/gnus-cus.el (gnus-group-customize): Decoding is
13245	superfluous here -- everything is utf-8 already.
13246	(gnus-group-customize-done): Don't double-encode the text (bug#37901).
13247
132482019-10-28  Lars Ingebrigtsen  <larsi@gnus.org>
13249
13250	Be more permissive when interpreting IMAP mail headers
13251
13252	* lisp/gnus/nnimap.el (nnimap-transform-headers): Some mail
13253	doesn't have space after the colon of the header name.  Don't
13254	ignore these.
13255
132562019-10-28  Lars Ingebrigtsen  <larsi@gnus.org>
13257
13258	Make <up> work in read-char-with-history
13259
13260	* lisp/simple.el (read-char-with-history): Tweak to make
13261	<up>/<down> also traverse the history (bug#10477).
13262
132632019-10-28  Koichi Arakawa  <arakawa@pp.iij4u.or.jp>  (tiny change)
13264
13265	Reorder command-line switches in Tramp
13266
13267	* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
13268	`tramp-encoding-command-interactive' must be the last command-line
13269	switch, at least for bash.  (Bug#37953)
13270
132712019-10-27  Juri Linkov  <juri@linkov.net>
13272
13273	* lisp/tab-bar.el: Add tab-bar-history-mode with arrow buttons for navigation.
13274
13275	* lisp/tab-bar.el (tab-bar-back-button, tab-bar-forward-button):
13276	New variables.
13277	(tab-bar-make-keymap-1): Show these buttons in tab-bar-history-mode.
13278	(tab-bar--tab): Add history-back and history-forward.
13279	(tab-bar-select-tab): Restore history-back and history-forward.
13280	(tab-bar-history-omit, tab-bar-history-back)
13281	(tab-bar-history-forward, tab-bar-history-pre-change): New variables.
13282	(tab-bar-history-pre-change, tab-bar-history-change)
13283	(tab-bar-history-back, tab-bar-history-forward)
13284	(tab-bar-history-mode): New functions.
13285
132862019-10-27  Eric Ludlam  <ericludlam@gmail.com>
13287
13288	* test/lisp/cedet/semantic-utest.el: silence compiler warnings
13289
13290	* test/lisp/cedet/semantic-utest-c.el
13291	(semantic-test-c-preprocessor-simulation): Use with-current-buffer.
13292
13293	* test/lisp/cedet/semantic-utest.el (semantic-utest-makebuffer):
13294	Use read-only-mode.
13295	(semantic-utest-verify-names-jave, semantic-utest-verify-names-2):
13296	Remove functions, unused.
13297
132982019-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
13299
13300	* .gitignore: Don't ignore .rej files
13301
13302	Left over rejected hunks that we forgot to merge by hand should not be
13303	silently ignored.  Better explicitly remove/rename .rej files when
13304	done with them.
13305
133062019-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
13307
13308	* lisp/emacs-lisp/seq.el: Don't require cl-lib.
13309
13310	(seq-subseq): Move cl-subseq's code here instyead of calling it.
13311	* lisp/emacs-lisp/cl-extra.el (cl-subseq): Use seq-subseq.
13312
133132019-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
13314
13315	* lisp/loadup.el: Load minibuffer after cl-generic
13316
13317	This is so minibuffer.el can make use of cl-generic
13318
13319	* lisp/minibuffer.el (minibuffer-local-completion-map):
13320	Move switch-to-completions bindings here from...
13321	* lisp/simple.el (minibuffer-local-completion-map): ... here.
13322
133232019-10-27  Stephen Gildea  <stepheng+emacs@gildea.com>
13324
13325	time-stamp-time-zone: update customization
13326
13327	* lisp/time-stamp.el (time-stamp-time-zone): Support customization with
13328	an integer offset (a new possible value of the ZONE argument to
13329	format-time-string in Emacs 27).
13330	Update the safe-local-variable predicate from string-or-null-p
13331	(describing time-stamp-time-zone's domain before 2015) to new
13332	predicate time-stamp-zone-type-p (describing the current domain).
13333
13334	* test/lisp/time-stamp-tests.el (time-stamp-test-helper-zone-type-p): New test.
13335
133362019-10-27  Eli Zaretskii  <eliz@gnu.org>
13337
13338	Fix point position after revert-buffer in tabulated-list mode
13339
13340	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
13341	Don't use count-screen-lines, as it is unreliable when lines
13342	are truncated and the region ends before a newline (the root
13343	cause is in vertical-motion, but is very hard to fix there).
13344	Instead, use vertical-motion directly, as the problems with
13345	counting/not counting the newline that ends the region are not
13346	relevant to what we need in this function, which is simply the
13347	number of the current window line.  (Bug#37941)
13348
133492019-10-27  João Távora  <joaotavora@gmail.com>
13350
13351	Optimize lisp/icomplete.el when default completion available
13352
13353	Often, when using icomplete with icomplete-show-matches-on-no-input
13354	and commands like C-h f, icomplete-exhibit will take a long time (like
13355	several seconds) to show all the completions.
13356
13357	However, if there is a non-nil default value, like when the C-h f is
13358	performed exactly on a function name, the minibuffer prompt will
13359	reflect that immediately.  If the user immediately presses RE
13360	(icomplete-force-complete-and-exit) we take that to mean "use the
13361	default" and avoid the long wait.
13362
13363	As an extra performance tweak, this commit also removes an unneeded
13364	call to icomplete-exhibit in icomplete-minibuffer-setup.
13365
13366	* lisp/icomplete.el (icomplete-force-complete-and-exit): Short-circuit
13367	possibility of non-nil minibuffer-default.
13368	(icomplete-minibuffer-setup): No need to explicitly icomplete-exhibit
13369	here since icomplete-post-command-hook will call it unconditionally.
13370
133712019-10-27  Mattias Engdegård  <mattiase@acm.org>
13372
13373	Expand rx definitions inside (not ...)
13374
13375	* lisp/emacs-lisp/rx.el (rx--translate-not):
13376	* test/lisp/emacs-lisp/rx-tests.el (rx-not, rx-def-in-not):
13377	* doc/lispref/searching.texi (Rx Constructs, Extending Rx):
13378
13379	Allow user-defined rx constructs to be expanded inside (not ...)
13380	forms, for better composability (bug#37849).
13381
133822019-10-27  Michael Albinus  <michael.albinus@gmx.de>
13383
13384	Some Tramp trace improvements
13385
13386	* lisp/net/tramp.el (tramp-call-process): `result' can also be nil.
13387
13388	* test/lisp/net/tramp-tests.el (tramp--test-timeout-handler):
13389	Improve trace format.
13390
133912019-10-26  João Távora  <joaotavora@gmail.com>
13392
13393	Improve scoring algorithm for flex-style completions
13394
13395	The previous algorithm had two problems: it considered non-matches in
13396	the beginning and end of the string as matching "holes" and failed to
13397	penalize larger holes, making flex-score-match-tightness only
13398	effective in some corner cases.
13399
13400	The new formula, which is described in code and in pseudo-code in the
13401	comments, fixes these problems.
13402
13403	As a result, by default, C-h f flex now correctly bubbles up
13404	"company-search-flex-regexp" to the top, in front of "file-exists-p".
13405	With a flex-score-match-tightness smaller than 1.0, the situation is
13406	reversed.
13407
13408	* lisp/minibuffer.el (flex-score-match-tightness): Adjust default
13409	value.  Improve docstring example.
13410	(completion-pcm--hilit-commonality): Improve example.  Remove unused
13411	variable.  Improve algorithm.
13412
134132019-10-26  Juanma Barranquero  <lekktu@gmail.com>
13414
13415	minibuffer.el: Remove leftover code, unused after recent change
13416
13417	* lisp/minibuffer.el (completion-pcm--hilit-commonality):
13418	Don't set point-idx.
13419
134202019-10-26  Juri Linkov  <juri@linkov.net>
13421
13422	dired-dwim-target uses most recently visited window instead of next window.
13423
13424	* doc/emacs/dired.texi (Operating on Files): Document behavior change.
13425
13426	* lisp/dired-aux.el (dired-dwim-target-directories): New function.
13427	(dired-dwim-target-directory, dired-dwim-target-defaults): Use it
13428	to get the most recently used window instead of the next window (bug#35385).
13429
13430	* lisp/dired.el (dired-dwim-target): Doc fix.
13431
13432	* test/lisp/dired-tests.el: Remove unnecessary require and pacify
13433	byte-compiler.
13434
134352019-10-26  Juri Linkov  <juri@linkov.net>
13436
13437	Customizable tab-line-tabs-function and new buffer-local tab-line-mode.
13438
13439	* lisp/tab-line.el (tab-line-tabs-function): Turn defvar into defcustom
13440	with default of tab-line-tabs-window-buffers.
13441	(tab-line-tabs-mode-buffers): New function.
13442	(tab-line-tabs-window-buffers): Rename from tab-line-tabs.
13443	(tab-line-select-tab, tab-line-switch-to-prev-tab)
13444	(tab-line-switch-to-next-tab): Handle the value tab-line-tabs-window-buffers
13445	of tab-line-tabs-function specially.
13446	(tab-line-mode): Rename from global-tab-line-mode and change scope
13447	to buffer-local.
13448	(global-tab-line-mode): New globalized-minor-mode.
13449	(tab-line-mode--turn-on): New function.
13450	(tab-line-exclude-modes): New defcustom.
13451	(tab-line-exclude): New buffer-local variable.
13452	https://lists.gnu.org/archive/html/emacs-devel/2019-10/msg00988.html
13453
13454	* lisp/dired.el (dired-mark-pop-up): Set tab-line-exclude to nil.
13455	Don't set tab-line-format.   (Bug#37699)
13456	* lisp/speedbar.el (speedbar-mode): Set tab-line-exclude to nil.
13457	Don't set tab-line-format.
13458
134592019-10-26  Juri Linkov  <juri@linkov.net>
13460
13461	* lisp/tab-bar.el (tab-bar-switch-to-recent-tab): New command.
13462
13463	(tab-recent): Alias to tab-bar-switch-to-recent-tab.
13464	(tab-bar--tab-index-recent): New internal function.
13465	(tab-bar-close-tab-select): Add new default option 'recent'.
13466	(tab-bar-close-tab): Handle it.
13467
13468	* lisp/emacs-lisp/seq.el (seq-sort-by, seq-remove): Add autoload.
13469
134702019-10-26  Juri Linkov  <juri@linkov.net>
13471
13472	* lisp/tab-bar.el (tab-bar-move-tab-to): Add force-mode-line-update.
13473
13474	(tab-bar-close-last-tab-choice, tab-bar-close-tab): Adjust option names.
13475
134762019-10-26  Robert Cochran  <robert-git@cochranmail.com>
13477
13478	Add customization option for what do when the last tab is closed
13479
13480	* lisp/tab-bar.el (tab-bar-close-last-tab-choice): New custom
13481	variable.
13482	(tab-bar-close-tab): Handle closing the last tab specially, referring to
13483	tab-bar-close-last-tab-choice.
13484
134852019-10-26  Stephen Gildea  <stepheng+emacs@gildea.com>
13486
13487	time-stamp-tests: add name prefix to tests of formatting
13488
13489	* test/lisp/time-stamp-tests.el: rename all the time-stamp-string formatting tests
13490	to have the word "format" in their name, to make room in the namespace
13491	for other, future tests.
13492
134932019-10-26  João Távora  <joaotavora@gmail.com>
13494
13495	Restore default value of face completions-common-part
13496
13497	The previous commit titled "Rework face hints for partial-string
13498	completion styles" contained a potentially controversial
13499	backwards-incompatible change to this face's default value.
13500
13501	* lisp/minibuffer.el (completions-common-part): Restore empty
13502	default value.
13503
135042019-10-26  Arash Esbati  <arash@gnu.org>
13505
13506	Improve support for biblatex and cleveref macros
13507
13508	* lisp/textmodes/reftex-cite.el (reftex-figure-out-cite-format):
13509	Extend regexp to match additional cite commands from biblatex.sty.
13510
13511	* lisp/textmodes/reftex-dcr.el (reftex-view-crossref): Extend
13512	regexp to match additional cite commands from biblatex.sty and
13513	reference commands from cleveref.sty.
13514
135152019-10-26  Arash Esbati  <arash@gnu.org>
13516
13517	Avoid infloop's by doing a case-sensitive match
13518
13519	* lisp/textmodes/reftex-ref.el (reftex-format-special): Be
13520	case-sensitive when checking the actual reference macro against
13521	\ref.  This avoids infloop when \Ref is chosen.
13522
135232019-10-26  Glenn Morris  <rgm@gnu.org>
13524
13525	Merge from origin/emacs-26
13526
13527	55dcd32 (origin/emacs-26) Fix rcirc not to interpret nil as nickname ...
13528
135292019-10-26  Glenn Morris  <rgm@gnu.org>
13530
13531	Merge from origin/emacs-26
13532
13533	73e1727 Fix linear equation system solving in Calc (bug#35374)
13534
13535	# Conflicts:
13536	#	test/lisp/calc/calc-tests.el
13537
135382019-10-26  João Távora  <joaotavora@gmail.com>
13539
13540	Rework face hints for partial-string completion styles
13541
13542	Don't use completions-first-difference for the 'substring', 'flex' and
13543	'partial-completion' styles, since there can be really no reasonable
13544	definition of a "first" difference there.
13545
13546	Make completions-common-part inherit from 'underline' so that it is
13547	useful by default for all completion styles.
13548
13549	* lisp/minibuffer.el (completions-common-part): Adjust
13550	description and change default value.
13551	(completions-first-difference): Ajust docstring.
13552	(completion-pcm--hilit-commonality): Don't use
13553	completions-first-difference.
13554
135552019-10-26  João Távora  <joaotavora@gmail.com>
13556
13557	Allow completion styles to adjust completion metadata
13558
13559	This commit re-does the now-reverted commit with the same title.  That
13560	version relied on generic functions, which cannot be used yet in files
13561	such as lisp/minibuffer.el.  This version uses a symbol property
13562	completion--adjust-metadata instead.
13563
13564	The new facility allows completion styles to have a say in metadata
13565	properties such as cycle-sort-function and display-sort-function.
13566	This is especially useful for completion styles such as 'flex', which
13567	generally produce many matches, including some potentially "obscure"
13568	ones.  The default sorting strategy would often bubble the latter to
13569	the top of the list.
13570
13571	The sorting function for 'flex' considers pre-computed matching scores
13572	and is thus much better than the default for this particular style.
13573
13574	Additionally, it overrides the completion table's cycle-sort-function
13575	or display-sort-function properties if they exist, although it still
13576	uses them to pre-sort the result, so that they are still relevant for
13577	resolving ties.
13578
13579	* lisp/minibuffer.el (completion--nth-completion)
13580	(completion--flex-adjust-metadata): New helper.
13581	(flex): Put completion--adjust-metadata property.
13582
135832019-10-26  João Távora  <joaotavora@gmail.com>
13584
13585	Revert "Allow completion styles to adjust completion metadata"
13586
13587	Unbreaks the build.
13588
13589	This reverts commit 7fc0292f5c49d11fc39853f8bc25586d54221e6a.
13590
13591	Unfortunately, cl-defgeneric has some problems when used in
13592	lisp/minibuffer.el.
13593
135942019-10-26  Stefan Monnier  <monnier@iro.umontreal.ca>
13595
13596	subr.el (run-window-configuration-change-hook): Mark obsolete
13597
135982019-10-26  João Távora  <joaotavora@gmail.com>
13599
13600	Allow completion styles to adjust completion metadata
13601
13602	The new facility, realized in the completion-adjust-metadata-for-style
13603	generic, allows completion styles to have a say in metadata properties
13604	such as cycle-sort-function and display-sort-function.  This is
13605	especially useful for completion styles such as 'flex', which
13606	generally produce many matches, including some potentially "obscure"
13607	ones.  The default sorting strategy would often bubble the latter
13608	to the top of the list.
13609
13610	The sorting function for 'flex' considers pre-computed matching scores
13611	and is thus much better than the default for this particular style.
13612
13613	Additionally, it overrides the completion table's cycle-sort-function
13614	or display-sort-function properties if they exist, although it still
13615	uses them to pre-sort the result, so that they are still relevant for
13616	resolving ties.
13617
13618	* lisp/minibuffer.el (completion--nth-completion): Call
13619	completion-adjust-metadata-for-style.
13620	(completion-adjust-metadata-for-style): New generic.
13621	(completion-adjust-metadata-for-style 'flex): New method.
13622
136232019-10-26  memeplex  <carlosjosepita@gmail.com>
13624
13625	Replay key if kboard is interrupted while initializing (Bug#37782)
13626
13627	The problem with the original fix for bug#5095 is that it drops
13628	the current event, which is a valid character event and not -2.
13629	Thus, the first ESC character sent by the terminal after turning
13630	on focus tracking is lost and we get '[' and 'I' events separately
13631	inserted into the buffer afterwards.
13632
13633	* src/keyboard.c (read_key_sequence): Add key as mock_input and replay
13634	sequence using new keyboard, when the key is not -2.
13635
136362019-10-26  memeplex  <carlosjosepita@gmail.com>
13637
13638	Remove redundant initialization of fringe bitmap (Bug#37756)
13639
13640	* src/fringe.c (Fdefine-fringe-bitmap): Remove redundant zeroing
13641	of fb.bits that only zeroed half of the array anyway.
13642
136432019-10-26  Eli Zaretskii  <eliz@gnu.org>
13644
13645	Improve the documentation of 'vc-tor'
13646
13647	* lisp/vc/vc-dispatcher.el (vc-tor): Add :version.  Enhance
13648	the doc string.
13649
13650	* etc/NEWS: Announce the new option.
13651
136522019-10-26  Richard Stallman  <rms@gnu.org>
13653
13654	New defcustom 'vc-tor'
13655
13656	* lisp/vc/vc-dispatcher.el (vc-tor): New user option.
13657	(vc-do-command): If vc-tor is non-nil, use 'torsocks'.
13658
136592019-10-25  Tassilo Horn  <tsdh@gnu.org>
13660
13661	Adapt doc-view to latest image-mode changes
13662
13663	The functions image-scroll-down, image-scroll-up, image-next-line, and
13664	image-previous-line now return pixel values instead of multiples of
13665	character height as of commit 9c66b09950.
13666
13667	* lisp/doc-view.el (doc-view-scroll-up-or-next-page):
13668	(doc-view-scroll-down-or-previous-page):
13669	(doc-view-next-line-or-next-page):
13670	(doc-view-previous-line-or-previous-page):
13671	(doc-view-insert-image): Adapt to image-scroll-up/down and
13672	image-next/previous-line now returning pixel values instead of
13673	multiples of character heights.  Fixes bug#37874.
13674
136752019-10-25  Alan Mackenzie  <acm@muc.de>
13676
13677	CC Mode: Fix positioning of point whilst inserting comments without non-ws
13678
13679	* lisp/progmodes/cc-cmds.el (c-guess-fill-prefix): When determining a new
13680	block comment prefix (i.e. there isn't one already there to copy), and that
13681	prefix is hard up against a comment closer, ensure there are at least two
13682	spaces before the closer.
13683	(c-indent-new-comment-line): Amend the strategy for ensuring that point isn't
13684	left hard up against the comment closer after M-j.
13685
136862019-10-25  Stephen Gildea  <stepheng+emacs@gildea.com>
13687
13688	time-stamp-tests: consistently name the time vars
13689
13690	* test/lisp/time-stamp-tests.el (with-time-stamp-test-env): rename local variable
13691	'ref-time' to 'ref-time1', for parallelism with ref-time2 and ref-time3.
13692
136932019-10-25  Michael Albinus  <michael.albinus@gmx.de>
13694
13695	Mention completion styles for Tramp user/host name completion
13696
13697	* doc/misc/tramp.texi (File name completion): Emacs must have one
13698	of the completion styles `basic', `emacs21', or `emacs22'.
13699
137002019-10-25  Juanma Barranquero  <lekktu@gmail.com>
13701
13702	windmove.el: Suppress warnings for obsolete functions
13703
13704	* lisp/windmove.el (windmove-constrain-loc-for-movement)
13705	(windmove-wrap-loc-for-movement, windmove-reference-loc)
13706	(windmove-other-window-loc): Wrap calls to obsolete functions
13707	in `with-suppressed-warnings'.
13708
137092019-10-25  Juanma Barranquero  <lekktu@gmail.com>
13710
13711	windmove.el: Mark unused code as obsolete
13712
13713	* lisp/windmove.el (windmove-window-distance-delta)
13714	(windmove-coord-add, windmove-constrain-to-range)
13715	(windmove-constrain-around-range, windmove-frame-edges)
13716	(windmove-constrain-loc-for-movement)
13717	(windmove-wrap-loc-for-movement, windmove-reference-loc)
13718	(windmove-other-window-loc): Declare obsolete.
13719	(windmove-find-other-window, windmove-do-window-select):
13720	Doc fixes.
13721
13722	* etc/NEWS: Document it.
13723
137242019-10-25  Juanma Barranquero  <lekktu@gmail.com>
13725
13726	* lisp/windmove.el (windmove-frame-edges): Simplify.
13727
137282019-10-25  Lars Ingebrigtsen  <larsi@gnus.org>
13729
13730	Fix gnus-thread-hide-subtree defcustom
13731
13732	* lisp/gnus/gnus-sum.el (gnus-thread-hide-subtree): Make the
13733	"Non-nil" predicate do what it's supposed to (i.e., return non-nil
13734	on non-nil values (excepting predicates)) (bug#37916).
13735
137362019-10-24  Stefan Monnier  <monnier@iro.umontreal.ca>
13737
13738	* lisp/cedet/mode-local.el: Clean up name space
13739
13740	Mostly renaming functions by adding `mode-local--` to their name
13741	and leaving an obsolete alias behind, just in case.
13742
13743	(define-child-mode): Make obsolete.
13744	(mode-local--set-parent): Rename from set-mode-local-parent.
13745	(mode-local--new-bindings): Rename from new-mode-local-bindings.
13746	Use `obarray-make`.
13747	(mode-local--activate-bindings): Rename from activate-mode-local-bindings.
13748	(mode-local--deactivate-bindings): Rename from
13749	deactivate-mode-local-bindings.
13750	(make-obsolete-overload): Rename properties with a `mode-local--` prefix.
13751	Adjust all users.
13752	(mode-local--overload-obsoleted-by): Rename from overload-obsoleted-by.
13753	(mode-local--overload-that-obsolete): Rename from overload-that-obsolete.
13754	(mode-local--function-overload-p): Rename from function-overload-p.
13755	(mode-local-read-function): Mark obsolete.
13756	(mode-local--overload-docstring-extension): Rename from
13757	overload-docstring-extension.
13758	(mode-local--describe-overload): Rename from describe-mode-local-overload.
13759
13760	* lisp/cedet/semantic/fw.el (semantic-install-function-overrides):
13761	Remove unused `mode` argument.
13762
13763	* lisp/cedet/semantic/grammar-wy.el (semantic-grammar-wy--install-parser):
13764	* lisp/cedet/semantic/bovine/grammar.el (bovine-grammar-mode):
13765	* lisp/cedet/semantic/texi.el (semantic-default-texi-setup):
13766	* lisp/cedet/semantic/wisent/grammar.el (wisent-grammar-setupcode-builder)
13767	(wisent-grammar-mode):
13768	* lisp/cedet/semantic/html.el (semantic-default-html-setup):
13769	Make the `semantic-` prefix explicit to ease grep search.
13770	(html-helper-mode): Remove obsolete setting.
13771
13772	* lisp/cedet/semantic/wisent/javascript.el: Fix js-mode/javascript-mode
13773	mixup so we don't need define-child-mode any more.
13774	(semantic-get-local-variables, semantic-ctxt-current-symbol)
13775	(semantic-tag-protection, semantic-analyze-scope-calculate-access):
13776	Use `js-mode` rather than `javascript-mode` as the mode name since
13777	that's the real mode's name.
13778
13779	* lisp/cedet/semantic/wisent/python.el (python-2-mode, python-3-mode):
13780	Remove child declaration for non-existing modes.
13781
13782	* lisp/cedet/srecode/map.el (srecode-map-validate-file-for-mode): Simplify.
13783
137842019-10-24  Paul Eggert  <eggert@cs.ucla.edu>
13785
13786	Update from Gnulib
13787
13788	This incorporates:
13789	2019-10-23 nstrftime: speed up integer overflow checking
13790	2019-10-23 port better to GCC under macOS
13791	2019-10-15 inttypes: use more-robust test for int range
13792	2019-10-14 update-copyright: use en dashes in .texi ranges
13793	* build-aux/update-copyright, lib/intprops.h, lib/inttypes.in.h:
13794	* lib/nstrftime.c, lib/verify.h:
13795	Copy from Gnulib.
13796
137972019-10-24  Juanma Barranquero  <lekktu@gmail.com>
13798
13799	* doc/lispref/display.texi: Document `delay-warning'
13800
138012019-10-24  Mattias Engdegård  <mattiase@acm.org>
13802
13803	rx.el: Refactor user-definition expansion
13804
13805	* lisp/emacs-lisp/rx.el (rx--translate-not): Simplify structure.
13806	* lisp/emacs-lisp/rx.el (rx--expand-def): New.
13807	(rx--translate-symbol, rx--translate-form): Use rx--expand-def.
13808
138092019-10-23  Stefan Kangas  <stefankangas@gmail.com>
13810
13811	Update FAQ section on large files (Bug#37818)
13812
13813	* doc/misc/efaq.texi (Problems with very large files): Extend section
13814	and remove information about ancient versions of Emacs.
13815
138162019-10-23  Stefan Kangas  <stefankangas@gmail.com>
13817
13818	Update FAQ section on Emacs security (Bug#37818)
13819
13820	* doc/misc/efaq.texi (Security risks with Emacs): Remove section on
13821	movemail.  Add section on third-party packages.
13822
138232019-10-23  Stefan Monnier  <monnier@iro.umontreal.ca>
13824
13825	* lisp/cedet/mode-local.el: Use lexical-binding and `declare`
13826
13827	(with-mode-local-symbol, with-mode-local, setq-mode-local)
13828	(defvar-mode-local, defconst-mode-local)
13829	(define-overloadable-function, define-mode-local-override):
13830	Use `declare` for indent and edebug specs.
13831	(xref-mode-local-find-overloadable-regexp): Simplify regexp.
13832	(mode-local-setup-edebug-specs): Delete.
13833	(edebug-setup-hook): Don't use any more.
13834
138352019-10-23  Juri Linkov  <juri@linkov.net>
13836
13837	* lisp/dired.el (dired-mark-pop-up): Set tab-line-format to nil (bug#37699).
13838
138392019-10-23  Juri Linkov  <juri@linkov.net>
13840
13841	* lisp/tab-bar.el: Allow to specify interactively where to add a new tab.
13842
13843	* lisp/tab-bar.el (tab-bar-new-tab-to): Rename from tab-bar-new-tab.
13844	Add optional arg TO-INDEX.
13845	(tab-bar-new-tab): New implementation to use relative ARG.
13846	(tab-new-to): Alias to tab-bar-new-tab-to.
13847
138482019-10-23  Juri Linkov  <juri@linkov.net>
13849
13850	* lisp/tab-bar.el: Rename tab-bar-swap-tabs to tab-bar-move-tab-to.
13851
13852	* lisp/tab-bar.el (tab-bar-move-tab-to): Rename from tab-bar-swap-tabs.
13853	Change logic to push the moved tab between existing tabs.
13854	(tab-bar-move-tab): Call tab-bar-move-tab-to instead of tab-bar-swap-tabs.
13855	(tab-move-to): Rename alias from tab-swap.
13856
138572019-10-23  Juri Linkov  <juri@linkov.net>
13858
13859	Implement tab close undo feature for tab-bar.
13860
13861	* lisp/tab-bar.el (tab-bar-closed-tabs): New variable.
13862	(tab-bar-close-tab): Add closed tab to tab-bar-closed-tabs.
13863	Disable tab-bar-mode on closing the last tab.
13864	(tab-bar-close-other-tabs): Add all closed tabs to tab-bar-closed-tabs.
13865	(tab-bar-undo-close-tab): New command.
13866	(tab-undo): Alias to tab-bar-undo-close-tab.
13867
138682019-10-23  Stefan Monnier  <monnier@iro.umontreal.ca>
13869
13870	* lisp/cedet/semantic/analyze/complete.el: Fix completion-at-point
13871
13872	Completion tables are not supposed to signal errors:
13873
13874	    emacs -q
13875	    M-x semantic-mode
13876	    ; visit a file supported by semantic, such as a C file
13877	    ; put cursor in a blank space
13878	    M-x completion-at-point
13879	    It will error with: "Nothing to complete"
13880
13881	(semantic-analyze-possible-completions): Return nil instead of
13882	signaling errors.
13883
138842019-10-23  Lars Ingebrigtsen  <larsi@gnus.org>
13885
13886	Ensure that the prompt is kept on the final line
13887
13888	* lisp/erc/erc-goodies.el (erc-possibly-scroll-to-bottom): New
13889	function.
13890	(scrolltobottom): Add to erc-insert-done-hook.
13891
13892	* lisp/erc/erc.el (erc-insert-done-hook): New hook (bug#11697).
13893	(erc-display-line-1): Use it.
13894
138952019-10-23  Lars Ingebrigtsen  <larsi@gnus.org>
13896
13897	Make erc-cmd-CLEAR do what its doc string says
13898
13899	* lisp/erc/erc.el (erc-cmd-CLEAR): Delete the buffer contents
13900	instead of recentering (bug#31743).
13901
139022019-10-23  Lars Ingebrigtsen  <larsi@gnus.org>
13903
13904	Make display of S/MIME signatures slightly better
13905
13906	* lisp/epg.el (epg-signature-to-string): Decode percent escapes
13907	(bug#36101).
13908
139092019-10-23  Lars Ingebrigtsen  <larsi@gnus.org>
13910
13911	Make Gnus recognise "git am" diffs in all groups
13912
13913	* lisp/gnus/mm-uu.el (mm-uu-diff-groups-regexp): Recognise diffs
13914	in all groups (bug#32730).
13915
139162019-10-22  Stefan Kangas  <stefankangas@gmail.com>
13917
13918	Add version tag to gnutls-min-prime-bits
13919
13920	* lisp/net/gnutls.el (gnutls-min-prime-bits): Add version tag.
13921
139222019-10-22  memeplex  <carlosjosepita@gmail.com>
13923
13924	Avoid extra lines in python-shell font lock buffer (Bug#33959)
13925
13926	* lisp/progmodes/python.el
13927	(python-shell-font-lock-comint-output-filter-function): Avoid writing
13928	a newline to the font lock buffer when receiving an empty string.
13929
139302019-10-22  Glenn Morris  <rgm@gnu.org>
13931
13932	Set expected result for a cedet test
13933
13934	* test/lisp/cedet/srecode-utest-template.el (srecode-utest-project):
13935	Test fails on hydra.nixos.org, for some reason.
13936
139372019-10-22  Juri Linkov  <juri@linkov.net>
13938
13939	Tab-line horizontal scrolling with UI buttons and commands (bug#37667)
13940
13941	* etc/images/tabs/left-arrow.xpm:
13942	* etc/images/tabs/right-arrow.xpm: New images.
13943
13944	* lisp/tab-line.el (tab-line-left-map, tab-line-right-map): New keymaps.
13945	(tab-line-left-button, tab-line-right-button): New variables.
13946	(tab-line-tab-name-function): Turn defvar into defcustom.
13947	(tab-line-tab-name-buffer): New function.
13948	(tab-line-tab-name-truncated-buffer): Rename from tab-line-tab-name.
13949	(tab-line-tabs-limit): Default to nil.
13950	(tab-line-tabs): Behavior depends on tab-line-tabs-limit.
13951	(tab-line-format): Use window-parameter tab-line-hscroll.
13952	Add left/right buttons.
13953	(tab-line-hscroll): New function.
13954	(tab-line-hscroll-right, tab-line-hscroll-left): New commands
13955	bound to mouse-wheel.  Rebind tab-switching commands to	mouse-wheel
13956	with Ctrl-modifier.
13957
139582019-10-22  Lars Ingebrigtsen  <larsi@gnus.org>
13959
13960	Fix "make bootstrap" build warning in tab-bar.el
13961
13962	* lisp/tab-bar.el (require): Require seq when compiling to avoid a
13963	compilation warning.  The function it uses is autoloaded, but
13964	autoloads aren't loaded when this is built (on "make bootstrap").
13965
139662019-10-22  Eli Zaretskii  <eliz@gnu.org>
13967
13968	Fix recent changes in documentation
13969
13970	* doc/lispref/edebug.texi (Edebug Eval, Eval List): Reword
13971	recently added text to follow conventions.
13972
13973	* src/textprop.c (Ftext_properties_at): Don't use passive tense
13974	in doc string.
13975
139762019-10-22  Stefan Kangas  <stefankangas@gmail.com>
13977
13978	Various doc fixes for auto-insert-mode
13979
13980	* doc/misc/autotype.texi (Autoinserting): Various doc fixes.
13981	* lisp/autoinsert.el (top-level): Recommend 'auto-insert-mode' over
13982	'add-hook'.
13983
139842019-10-22  Lars Ingebrigtsen  <larsi@gnus.org>
13985
13986	Make text-properties-at mention describe-text-properties
13987
13988	* src/textprop.c (Ftext_properties_at): Mention
13989	describe-text-properties in the doc string.
13990
139912019-10-22  Lars Ingebrigtsen  <larsi@gnus.org>
13992
13993	Add a fringe example
13994
13995	* doc/lispref/display.texi (Fringe Bitmaps): Add an example.
13996
139972019-10-22  Mattias Engdegård  <mattiase@acm.org>
13998
13999	rx doc string tweaks
14000
14001	* lisp/emacs-lisp/rx.el (rx--translate-seq, rx--translate-or, rx):
14002	Say "zero or more" instead of "one or more" where applicable.
14003
140042019-10-22  Lars Ingebrigtsen  <larsi@gnus.org>
14005
14006	Make edebug-eval-last-sexp interactively take a zero prefix
14007
14008	* lisp/emacs-lisp/edebug.el (edebug-eval-last-sexp): Make the zero
14009	prefix work analogously to in eval-last-sexp (bug#28895).
14010	(edebug-eval-print-last-sexp): Ditto.
14011
140122019-10-22  Robert Pluim  <rpluim@gmail.com>
14013
14014	Show stash counts in button in vc-dir
14015
14016	Based on suggestions from Mattias Engdegård.
14017
14018	* lisp/vc/vc-git.el (vc-git--make-button-text): New function to
14019	generate text for stash button.
14020	(vc-git-make-stash-button): Show stash counts.  Delete and recreate
14021	button when toggling.
14022	(vc-git-dir-extra-headers): Pass counts to vc-git-make-stash-button.
14023	Treat stash count <= vc-git-show-stash as equivalent to showing entire
14024	list.
14025
140262019-10-21  Arash Esbati  <arash@gnu.org>
14027
14028	Move entry for \Ref into LaTeX core
14029
14030	* lisp/textmodes/reftex-vars.el (reftex-ref-style-alist): Move
14031	entry for \Ref from "Varioref" into "Default" as this macro is
14032	part of LaTeX 2019-10-01 kernel.
14033	Rearrange entries for "Varioref".
14034
140352019-10-21  Stefan Kangas  <stefankangas@gmail.com>
14036
14037	* etc/NEWS: Improve documentation of 'package-initialize'.
14038
140392019-10-21  Paul Eggert  <eggert@cs.ucla.edu>
14040
14041	Portcheck only if --enable-gcc-warnings
14042
14043	Problem reported by Richard Copley (Bug#37852).
14044	This patch causes the problem to not occur if one uses plain
14045	‘configure’.  The problem can still occur if with ‘configure
14046	--enable-gcc-warnings’, so a further fix may be needed.
14047	* configure.ac (GNULIB_PORTCHECK, _FORTIFY_SOURCE):
14048	Define these only with an explicit --enable-gcc-warnings.
14049
140502019-10-21  Stefan Kangas  <stefankangas@gmail.com>
14051
14052	Remove XEmacs compat code from speedbar.el
14053
14054	* lisp/speedbar.el (speedbar-frame-plist, speedbar-frame-mode)
14055	(speedbar-make-overlay, speedbar-overlay-put, speedbar-delete-overlay)
14056	(speedbar-mode-line-update, speedbar-frame-reposition-smartly)
14057	(speedbar-set-mode-line-format, speedbar-reconfigure-keymaps)
14058	(speedbar-add-localized-speedbar-support, speedbar-check-vc)
14059	(speedbar-highlight-one-tag-line)
14060	(speedbar-unhighlight-one-tag-line): Remove XEmacs compat code.
14061
14062	* doc/misc/speedbar.texi (Frames and Faces): Remove documentation for
14063	XEmacs.
14064
140652019-10-21  Juri Linkov  <juri@linkov.net>
14066
14067	* lisp/vc/vc-annotate.el (vc-annotate-lines): Use set-face-extend (bug#37774)
14068
140692019-10-21  Lars Ingebrigtsen  <larsi@gnus.org>
14070
14071	Try to not put SMTP passwords in the *Messages* buffer
14072
14073	* lisp/mail/smtpmail.el (smtpmail--sanitize-error-message): New
14074	function.
14075	(smtpmail-send-it): Use it.
14076	(smtpmail-send-queued-mail): Ditto.
14077
140782019-10-21  Stefan Monnier  <monnier@iro.umontreal.ca>
14079
14080	* lisp/emacs-lisp/cursor-sensor.el: Make it possible to reveal invisible text
14081
14082	(cursor-sensor-mode): Hook into post-command-hook as well.
14083	(cursor-sensor--detect): Make argument optional.
14084
140852019-10-21  Lars Ingebrigtsen  <larsi@gnus.org>
14086
14087	Tiny clean-up of previous edebug patch
14088
14089	* lisp/emacs-lisp/edebug.el (edebug--overlay-breakpoints): Clean
14090	up code slightly.
14091
140922019-10-21  Lars Ingebrigtsen  <larsi@gnus.org>
14093
14094	Ensure we always remove the breakpoint overlays
14095
14096	* lisp/emacs-lisp/edebug.el (edebug--display-1): Remove the
14097	overlays here -- this cleans up after exiting no matter how we
14098	exited.
14099
141002019-10-21  Lars Ingebrigtsen  <larsi@gnus.org>
14101
14102	Add fringe markers to edebug breakpoints
14103
14104	* lisp/emacs-lisp/edebug.el (edebug--overlay-breakpoints): Set a
14105	fringe element to mark the breakpoint.
14106	(edebug-breakpoint): Fringe marker.
14107
141082019-10-21  Stefan Kangas  <stefankangas@gmail.com>
14109
14110	Clean up previous icalendar.el change
14111
14112	* lisp/calendar/icalendar.el (icalendar--rris): Redefine as obsolete
14113	function alias.
14114
141152019-10-21  Stefan Kangas  <stefankangas@gmail.com>
14116
14117	Remove more XEmacs compat code from viper-*.el
14118
14119	* lisp/emulation/viper-cmd.el (viper-submit-report):
14120	* lisp/emulation/viper-init.el (viper-set-insert-cursor-type)
14121	(viper-restore-cursor-type, viper-use-replace-region-delimiters)
14122	(viper-has-face-support-p, viper-window-display-p)
14123	(viper-color-display-p, viper-device-type):
14124	* lisp/emulation/viper-mous.el (viper-mouse-click-search-word)
14125	(viper-mouse-click-insert-word, viper-mouse-click-get-word)
14126	(viper-mouse-click-posn, viper-mouse-click-window):
14127	* lisp/emulation/viper-util.el (viper-abbreviate-file-name)
14128	(viper-set-replace-overlay, viper-maybe-checkout): Remove XEmacs
14129	compat code.
14130
141312019-10-21  Stefan Kangas  <stefankangas@gmail.com>
14132
14133	Remove XEmacs compat code from icalendar.el (Bug#37816)
14134
14135	* lisp/calendar/icalendar.el (icalendar--convert-string-for-export)
14136	(icalendar--convert-string-for-import)
14137	(icalendar--parse-summary-and-rest)
14138	(icalendar--convert-ordinary-to-ical)
14139	(icalendar--convert-weekly-to-ical)
14140	(icalendar--convert-yearly-to-ical)
14141	(icalendar--convert-block-to-ical)
14142	(icalendar--convert-cyclic-to-ical)
14143	(icalendar--convert-anniversary-to-ical)
14144	(icalendar--format-ical-event)
14145	(icalendar--convert-recurring-to-diary): Remove XEmacs compat code.
14146	(icalendar--rris): Declare obsolete.
14147
141482019-10-21  Eli Zaretskii  <eliz@gnu.org>
14149
14150	Avoid false indications from Flymake in .dir-locals.el files
14151
14152	* lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Don't install
14153	'elisp-flymake-checkdoc' and 'elisp-flymake-byte-compile'
14154	hooks for .dir-locals.el files.  Reported by Clément
14155	Pit-Claudel <cpitclaudel@gmail.com>.
14156
141572019-10-21  Robert Pluim  <rpluim@gmail.com>
14158
14159	Add button to vc-dir to toggle visibility of stash list
14160
14161	* lisp/vc/vc-git.el: Move cl-lib require outside 'eval-when-compile'.
14162
14163	* lisp/vc/vc-git.el (vc-git-show-stash):New user option.
14164	(vc-git-make-stash-button): Create button that allows hiding the stash
14165	list.
14166	(vc-git-dir-extra-headers): Split stash list into hideable and
14167	non-hideable parts depending on value of vc-git-show-stash.  Add
14168	button to toggle visibility of hideable part.
14169
14170	* etc/NEWS: Announce it.
14171
141722019-10-20  Clément Pit-Claudel  <clement.pitclaudel@live.com>
14173
14174	Add a way to disable substitution of command keys in help strings
14175
14176	* src/keyboard.c (help_echo_substitute_command_keys): New function.
14177	(help_echo_echo, parse_menu_item): Use it.
14178	(syms_of_keyboard): Define Qhelp_echo_inhibit_substitution.
14179
14180	* doc/lispref/text.texi (Special Properties), etc/NEWS: Document
14181	the effect of 'help-echo-inhibit-substitution'.
14182
141832019-10-20  Paul Eggert  <eggert@cs.ucla.edu>
14184
14185	Avoid fixnum round trip in prefix-numeric-value
14186
14187	* src/callint.c (Fprefix_numeric_value): Simplify.
14188
141892019-10-20  Juri Linkov  <juri@linkov.net>
14190
14191	* lisp/tab-line.el: Bind mouse commands to [tab-line].
14192
14193	* lisp/tab-line.el: Bind mouse-4/mouse-5, wheel-up/wheel-down
14194	globally to [tab-line].
14195	(tab-line-tab-map): Remove local bindings of mouse-4/mouse-5.
14196	(tab-line-new-tab, tab-line-switch-to-prev-tab)
14197	(tab-line-switch-to-next-tab, tab-line-close-tab):
14198	Turn commands into mouse-free (can be used without mouse).
14199
142002019-10-20  Stefan Kangas  <stefankangas@gmail.com>
14201
14202	Don't try to add nil packages on refresh
14203
14204	* lisp/emacs-lisp/package.el (package-read-archive-contents): Don't
14205	try to add nil entries.  Warn instead.  (Bug#28502)
14206	* test/lisp/emacs-lisp/package-tests.el
14207	(package-test-update-archives/ignore-nil-entry): New test.
14208	* test/lisp/emacs-lisp/package-resources/with-nil-entry/archive-contents:
14209	New file.
14210
142112019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14212
14213	Add a command to toggle an edebug breakpoint
14214
14215	* doc/lispref/edebug.texi (Breakpoints): Document this.
14216
14217	* lisp/emacs-lisp/edebug.el (edebug-disabled-breakpoint): New face
14218	(bug#23472).
14219	(edebug-enabled-breakpoint): Rename.
14220	(edebug--overlay-breakpoints): Use the new face.
14221	(edebug-toggle-disable-breakpoint): New command and keystroke.
14222
142232019-10-20  Stefan Kangas  <stefankangas@gmail.com>
14224
14225	Remove XEmacs compat code from decipher.el
14226
14227	* lisp/play/decipher.el (decipher-last-command-char)
14228	(decipher-keypress): Remove XEmacs compat code.
14229
142302019-10-20  Juri Linkov  <juri@linkov.net>
14231
14232	* lisp/tab-bar.el: Use autoloaded seq-position.
14233
14234	* lisp/tab-bar.el (tab-bar--current-tab-index)
14235	(tab-bar--tab-index, tab-bar--tab-index-by-name):
14236	Use seq-position.
14237
14238	(tab-bar-select-tab, tab-bar-new-tab, tab-bar-close-tab)
14239	(tab-bar-close-other-tabs, tab-bar-rename-tab)
14240	(tab-bar-list-execute): Call force-mode-line-update
14241	unconditionally independent from tab-bar-mode.
14242
14243	(tab-bar-rename-tab, tab-bar-rename-tab-by-name):
14244	Use read-from-minibuffer instead of read-string
14245	to be able to enter empty string.
14246
142472019-10-20  Stefan Kangas  <stefankangas@gmail.com>
14248
14249	Remove XEmacs compat code from meta-mode.el
14250
14251	* lisp/progmodes/meta-mode.el (meta-mode-menu):
14252	(meta-mode-load-hook): Remove XEmacs compat code.
14253
142542019-10-20  Stefan Kangas  <stefankangas@gmail.com>
14255
14256	Remove last XEmacs compat code from tree-widget.el
14257
14258	* lisp/tree-widget.el (tree-widget-image-properties-xemacs)
14259	(tree-widget-set-theme, tree-widget--cursors)
14260	(tree-widget-image-properties, tree-widget-button-keymap)
14261	(tree-widget-icon, tree-widget-value-create): Remove XEmacs compat
14262	code.
14263
142642019-10-20  Stefan Kangas  <stefankangas@gmail.com>
14265
14266	Remove leftover XEmacs compat code from dig.el
14267
14268	* lisp/net/dig.el (top-level): Remove leftover XEmacs compat code.
14269
142702019-10-20  Mattias Engdegård  <mattiase@acm.org>
14271
14272	Add missing rx symbols `bow' and `eow' to documentation
14273
14274	* doc/lispref/searching.texi (Rx Constructs):
14275	* lisp/emacs-lisp/rx.el (rx):  Add missing synonyms.
14276
142772019-10-20  Juri Linkov  <juri@linkov.net>
14278
14279	* lisp/tab-bar.el (tab-bar-swap-tabs): Use cl-rotatef instead of rotatef.
14280
142812019-10-20  Juri Linkov  <juri@linkov.net>
14282
14283	* lisp/tab-bar.el (tab-bar-swap-tabs, tab-bar-move-tab): New commands.
14284
14285	(tab-swap, tab-move): New aliases to new commands.
14286
142872019-10-20  Stefan Kangas  <stefankangas@gmail.com>
14288
14289	Disable pause/resume from menu in snake and tetris
14290
14291	* lisp/play/tetris.el (tetris--menu-def):
14292	* lisp/play/snake.el (snake--menu-def): Disable pause/resume from
14293	menu.
14294
142952019-10-20  Alan Mackenzie  <acm@muc.de>
14296
14297	Optimize c-crosses-statement-barrier-p for large blocks of comment.
14298
14299	This fixes bug #18134.
14300
14301	* lisp/progmodes/cc-engine.el (c-crosses-statement-barrier-p): Give a limit
14302	to the c-backward-syntactic-ws which is searching for a virtual semicolon.  In
14303	the main loop, Use c-forward-syntactic-ws to skip blocks of comments.
14304
143052019-10-20  Juri Linkov  <juri@linkov.net>
14306
14307	Provide default value for tab-name/frame-name reading minibuffer
14308
14309	* lisp/tab-bar.el (tab-bar-rename-tab, tab-bar-rename-tab-by-name):
14310	Provide default value for read-string.
14311	(tab-bar-select-tab-by-name): Alias for tab-bar-switch-to-tab.
14312
14313	* lisp/frame.el (set-frame-name): Provide default value for
14314	read-string in interactive spec.
14315
14316	* lisp/cus-start.el (tab-bar-position): Use choice instead of boolean.
14317
143182019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14319
14320	Make edebug-mode-map take precedence
14321
14322	* lisp/emacs-lisp/edebug.el (edebug--recursive-edit): Bind
14323	minor-mode-overriding-map-alist to avoid other minor modes hiding the
14324	edebug commands (bug#11018).
14325
143262019-10-20  Jimmy Aguilar Mena  <spacibba@aol.com>
14327
14328	Fix internal-lisp-face-attributes to match face.
14329
14330	* lisp/face-remap.el (internal-lisp-face-attributes): Updated the
14331	vector members to match the real member names. (Bug#37806) (Bug#37824)
14332
143332019-10-20  Stephen Leake  <stephen_leake@stephe-leake.org>
14334
14335	In xref-location-marker, handle deleted file or outdated xref location nicely
14336
14337	* lisp/progmodes/xref.el (xref-location-marker): Add ignore-errors.
14338
143392019-10-20  Stefan Kangas  <stefankangas@gmail.com>
14340
14341	Update FAQ entry on XEmacs (Bug#37815)
14342
14343	* doc/misc/efaq.texi (Difference between Emacs and XEmacs): Update
14344	section to reflect the current state of affairs.  XEmacs is not
14345	actively developed and is lacking many important features of Emacs.
14346
143472019-10-20  Stefan Kangas  <stefankangas@gmail.com>
14348
14349	Improve doc string of eshell and eshell-buffer-name
14350
14351	* lisp/eshell/eshell.el (eshell-buffer-name, eshell): Improve doc
14352	strings, by clarifying how buffers are named.  Also refer users to the
14353	Info manual.  (Bug#37178)
14354
143552019-10-20  Juanma Barranquero  <lekktu@gmail.com>
14356
14357	* doc/lispref/display.texi (Low-Level Font): Describe max-width.
14358
143592019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14360
14361	Fix edebug--restore-breakpoints re-instrumentinging bug-out
14362
14363	* lisp/emacs-lisp/edebug.el (edebug--restore-breakpoints): Don't
14364	bug out when instrumenting/de-instrumenting/re-instrumenting.
14365
143662019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14367
14368	Add a new edebug-breakpoint face
14369
14370	* doc/lispref/edebug.texi (Breakpoints): Mention it.
14371
14372	* lisp/emacs-lisp/edebug.el (edebug-breakpoint): New face.
14373
143742019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14375
14376	while-no-input-ignore-events manual clarification
14377
14378	* doc/lispref/commands.texi (Event Input Misc): Be slightly
14379	clearer about what while-no-input-ignore-events is.
14380
143812019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14382
14383	New command to clear all breakpoints in a function
14384
14385	* doc/lispref/edebug.texi (Breakpoints): Mention it.
14386
14387	* lisp/emacs-lisp/edebug.el (edebug-unset-breakpoints): New
14388	command and keystroke.
14389
143902019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14391
14392	Preserve breakpoints when Edebug-reinstrumenting functions
14393
14394	* lisp/emacs-lisp/edebug.el (edebug--overlay-breakpoints): New
14395	function (bug#23470).
14396
14397	* lisp/emacs-lisp/seq.el (seq-position): Autoload.
14398
143992019-10-20  Michael Albinus  <michael.albinus@gmx.de>
14400
14401	Fix docstrings in tramp.el
14402
14403	* lisp/net/tramp.el (tramp-antispoof-regexp)
14404	(tramp-file-name-handler): Fix docstring.
14405
144062019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14407
14408	Change default to cancel all edebug-on-entry in cancel-edebug-on-entry
14409
14410	* lisp/emacs-lisp/edebug.el (cancel-edebug-on-entry): Make the
14411	default to cancel all edebug-on-entry.
14412
144132019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14414
14415	Use user-error in cancel-edebug-on-entry
14416
14417	* lisp/emacs-lisp/edebug.el (cancel-edebug-on-entry): This is a
14418	user-class error, so use user-error.
14419
144202019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14421
14422	Instrument function if it hasn't been already in edebug-set-breakpoint
14423
14424	* lisp/emacs-lisp/edebug.el (edebug-set-breakpoint): Instrument
14425	form automatically when using this function (bug#23469).
14426
144272019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14428
14429	Fix up previous edebug breakpoint overlay change
14430
14431	* lisp/emacs-lisp/edebug.el (edebug--overlay-breakpoints): Only
14432	make the overlays in edebug mode, so that we remove them when we
14433	exit.
14434
144352019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14436
14437	Mark breakpoints in edebug with highlights
14438
14439	* lisp/emacs-lisp/edebug.el (edebug--overlay-breakpoints)
14440	(edebug--overlay-breakpoints-remove): New functions (bug#23468).
14441	(edebug-modify-breakpoint): Use them to highlight breakpoints.
14442	(edebug--display-1): Restore breakpoint highlights.
14443	(edebug--recursive-edit): Remove highlights on exit.
14444
144452019-10-20  Juanma Barranquero  <lekktu@gmail.com>
14446
14447	lisp/*.el: Fix typos and improve some docstrings
14448
14449	* lisp/auth-source.el (auth-source-backend-parse-parameters)
14450	(auth-source-search-collection)
14451	(auth-source-secrets-listify-pattern)
14452	(auth-source--decode-octal-string, auth-source-plstore-search):
14453	* lisp/registry.el (registry-lookup)
14454	(registry-lookup-breaks-before-lexbind)
14455	(registry-lookup-secondary, registry-lookup-secondary-value)
14456	(registry-search, registry-delete, registry-size, registry-full)
14457	(registry-insert, registry-reindex, registry-prune)
14458	(registry-collect-prune-candidates):
14459	* lisp/subr.el (nbutlast, process-live-p):
14460	* lisp/tab-bar.el (tab-bar-list):
14461	* lisp/cedet/ede/linux.el (ede-linux--get-archs)
14462	(ede-linux--include-path, ede-linux-load):
14463	* lisp/erc/erc-log.el (erc-log-all-but-server-buffers):
14464	* lisp/erc/erc-pcomplete.el (pcomplete-erc-commands)
14465	(pcomplete-erc-ops, pcomplete-erc-not-ops, pcomplete-erc-nicks)
14466	(pcomplete-erc-all-nicks, pcomplete-erc-channels)
14467	(pcomplete-erc-command-name, pcomplete-erc-parse-arguments):
14468	* lisp/eshell/em-term.el (eshell-visual-command-p):
14469	* lisp/gnus/gnus-cache.el (gnus-cache-fully-p):
14470	* lisp/gnus/nnmail.el (nnmail-get-active)
14471	(nnmail-fancy-expiry-target):
14472	* lisp/mail/mail-utils.el (mail-string-delete):
14473	* lisp/mail/supercite.el (sc-hdr, sc-valid-index-p):
14474	* lisp/net/ange-ftp.el (ange-ftp-use-smart-gateway-p):
14475	* lisp/net/nsm.el (nsm-save-fingerprint-maybe)
14476	(nsm-network-same-subnet, nsm-should-check):
14477	* lisp/net/rcirc.el (rcirc-looking-at-input):
14478	* lisp/net/tramp-cache.el (tramp-get-hash-table):
14479	* lisp/net/tramp-compat.el (tramp-compat-process-running-p):
14480	* lisp/net/tramp-smb.el (tramp-smb-get-share)
14481	(tramp-smb-get-localname, tramp-smb-read-file-entry)
14482	(tramp-smb-get-cifs-capabilities, tramp-smb-get-stat-capability):
14483	* lisp/net/zeroconf.el (zeroconf-list-service-names)
14484	(zeroconf-list-service-types, zeroconf-list-services)
14485	(zeroconf-get-host, zeroconf-get-domain)
14486	(zeroconf-get-host-domain):
14487	* lisp/nxml/rng-xsd.el (rng-xsd-compile)
14488	(rng-xsd-make-date-time-regexp, rng-xsd-convert-date-time):
14489	* lisp/obsolete/erc-hecomplete.el (erc-hecomplete)
14490	(erc-command-list, erc-complete-at-prompt):
14491	* lisp/org/ob-scheme.el (org-babel-scheme-get-buffer-impl):
14492	* lisp/org/ob-shell.el (org-babel--variable-assignments:sh-generic)
14493	(org-babel--variable-assignments:bash_array)
14494	(org-babel--variable-assignments:bash_assoc)
14495	(org-babel--variable-assignments:bash):
14496	* lisp/org/org-clock.el (org-day-of-week):
14497	* lisp/progmodes/cperl-mode.el (cperl-char-ends-sub-keyword-p):
14498	* lisp/progmodes/gud.el (gud-find-c-expr, gud-innermost-expr)
14499	(gud-prev-expr, gud-next-expr):
14500	* lisp/textmodes/table.el (table--at-cell-p, table--probe-cell)
14501	(table--get-cell-justify-property)
14502	(table--get-cell-valign-property)
14503	(table--put-cell-justify-property)
14504	(table--put-cell-valign-property): Fix typos.
14505
14506	* lisp/so-long.el (fboundp): Doc fix.
14507	(so-long-mode-line-info, so-long-mode)
14508	(so-long--check-header-modes): Fix typos.
14509
14510	* lisp/emulation/viper-mous.el (viper-surrounding-word)
14511	(viper-mouse-click-get-word): Fix typos.
14512	(viper-mouse-click-search-word): Doc fix.
14513
14514	* lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
14515	(erc-bounds-of-word-at-point): Fix typos.
14516	(erc-decode-string-from-target, define-erc-response-handler):
14517	Refill docstring.
14518
14519	* lisp/erc/erc-dcc.el (pcomplete/erc-mode/DCC): Fix typo.
14520	(erc-dcc-get-host, erc-dcc-auto-mask-p, erc-dcc-get-file):
14521	Doc fixes.
14522
14523	* lisp/erc/erc-networks.el (erc-network-name): Fix typo.
14524	(erc-determine-network): Refill docstring.
14525
14526	* lisp/net/dbus.el (dbus-list-hash-table)
14527	(dbus-string-to-byte-array, dbus-byte-array-to-string)
14528	(dbus-check-event): Fix typos.
14529	(dbus-introspect-get-property): Doc fix.
14530
14531	* lisp/net/tramp-adb.el (tramp-adb-file-name-handler):
14532	Rename ARGS to ARGUMENTS.  Doc fix.
14533	(tramp-adb-sh-fix-ls-output, tramp-adb-execute-adb-command)
14534	(tramp-adb-find-test-command): Fix typos.
14535
14536	* lisp/net/tramp.el (tramp-set-completion-function)
14537	(tramp-get-completion-function)
14538	(tramp-completion-dissect-file-name)
14539	(tramp-completion-dissect-file-name1)
14540	(tramp-get-completion-methods, tramp-get-completion-user-host)
14541	(tramp-get-inode, tramp-get-device, tramp-mode-string-to-int)
14542	(tramp-call-process, tramp-call-process-region)
14543	(tramp-process-lines): Fix typos.
14544	(tramp-interrupt-process): Doc fix.
14545
14546	* lisp/org/ob-core.el (org-babel-named-src-block-regexp-for-name)
14547	(org-babel-named-data-regexp-for-name): Doc fix.
14548	(org-babel-src-block-names, org-babel-result-names): Fix typos.
14549
14550	* lisp/progmodes/inf-lisp.el (lisp-input-filter): Doc fix.
14551	(lisp-fn-called-at-pt): Fix typo.
14552
14553	* lisp/progmodes/xref.el (xref-backend-identifier-at-point):
14554	Doc fix.
14555	(xref-backend-identifier-completion-table): Fix typo.
14556
145572019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14558
14559	New command edebug-remove-instrumentation
14560
14561	* doc/lispref/edebug.texi (Instrumenting): Document it.
14562
14563	* lisp/emacs-lisp/edebug.el (edebug-remove-instrumentation): New
14564	command (bug#15843).
14565
145662019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14567
14568	Fix doc string and interactive spec of cancel-edebug-on-entry
14569
14570	* lisp/emacs-lisp/edebug.el (cancel-edebug-on-entry): Add doc
14571	string and make the interactive spec complete over functions that
14572	have the spec (bug#10806).
14573	(edebug-cancel-edebug-on-entry): Add alias for discoverability.
14574	(edebug-on-entry): Clarify what this command does.
14575
145762019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14577
14578	Revert "Add an edebug-cancel-debug-on-entry alias"
14579
14580	This reverts commit cea9577b7d6fcf01599afd48078f8ff1defb1297.
14581
14582	cancel-edebug-on-entry and cancel-debug-on-entry are not the same functions.
14583
145842019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14585
14586	Add an edebug-cancel-debug-on-entry alias
14587
14588	* lisp/emacs-lisp/debug.el (edebug-cancel-debug-on-entry): Add an
14589	alias for easier discoverability (bug#10806).
14590
145912019-10-20  Lars Ingebrigtsen  <larsi@gnus.org>
14592
14593	Protect against invalid punycode
14594
14595	* lisp/net/puny.el (puny-decode-string): Protect against invalid
14596	punycode.
14597
145982019-10-19  Juri Linkov  <juri@linkov.net>
14599
14600	* lisp/net/eww.el (eww-browse-url-new-window-is-tab): New defcustom.
14601
14602	(eww-open-in-new-buffer, eww-browse-url): Use new defcustom (bug#37592).
14603
146042019-10-19  Juri Linkov  <juri@linkov.net>
14605
14606	Use 'C-x t' for tab-prefix-map instead of 'C-x 6' still used by 2C-mode-map.
14607
14608	* doc/emacs/commands.texi (Keys): Add 'C-x t'.
14609	* doc/emacs/frames.texi (Tab Bars): Replace 'C-x 6' with 'C-x t'.
14610	* doc/lispref/keymaps.texi (Prefix Keys): Add 'C-x t' (tab-prefix-map).
14611	* doc/lispref/maps.texi (Standard Keymaps): Add tab-prefix-map, tab-bar-map.
14612
14613	* lisp/dired.el: Rebind 'C-x 6 d' to 'C-x t d'.  Use tab-prefix-map.
14614
14615	* lisp/subr.el (ctl-x-6-map, ctl-x-6-prefix, ctl-x-t-prefix): Remove.
14616	(tab-prefix-map): New keymap bound to 'C-x t'.
14617
14618	* lisp/tab-bar.el: Use tab-prefix-map instead of ctl-x-6-map.
14619
14620	* lisp/textmodes/two-column.el: Restore autoload global setting of
14621	"\C-x6" to 2C-command.
14622
14623	* lisp/ldefs-boot.el: Update to add setting "\C-x6" to 2C-command.
14624
14625	* doc/emacs/commands.texi (Keys):
14626	* doc/emacs/text.texi (Two-Column):
14627	* doc/lispref/keymaps.texi (Prefix Keys):
14628	* doc/lispref/maps.texi (Standard Keymaps):
14629	Restore 'C-x 6' bound to '2C-mode-map'.
14630
146312019-10-19  Juri Linkov  <juri@linkov.net>
14632
14633	Add ':extend t' face attribute to diff faces (bug#37774)
14634
14635	* lisp/vc/diff-mode.el (diff-header, diff-file-header)
14636	(diff-removed, diff-added): Add ':extend t' face attribute.
14637
14638	* lisp/vc/ediff-init.el (ediff-current-diff-A)
14639	(ediff-current-diff-B, ediff-current-diff-C)
14640	(ediff-current-diff-Ancestor, ediff-even-diff-A)
14641	(ediff-even-diff-B, ediff-even-diff-C, ediff-even-diff-Ancestor)
14642	(ediff-odd-diff-A, ediff-odd-diff-B, ediff-odd-diff-C)
14643	(ediff-odd-diff-Ancestor): Add ':extend t' face attribute.
14644
14645	* lisp/vc/smerge-mode.el (smerge-upper, smerge-lower)
14646	(smerge-base, smerge-markers): Add ':extend t' face attribute.
14647
14648	* lisp/vc/log-view.el (log-view-file, log-view-message):
14649	Add ':extend t' face attribute.
14650
14651	* lisp/faces.el (secondary-selection): Add ':extend t' face attribute.
14652	(line-number-major-tick, line-number-minor-tick):
14653	Change :foreground to :background.
14654
146552019-10-19  Glenn Morris  <rgm@gnu.org>
14656
14657	* lisp/net/tramp.el (tramp-antispoof-regexp): Fix version.
14658
146592019-10-19  Alan Mackenzie  <acm@muc.de>
14660
14661	Don't downcase the key binding in global-set-key.
14662
14663	This fixes bug #37769.
14664
14665	* lisp/subr.el (global-set-key): Provide a non-nil DONT-DOWNCASE argument to
14666	read-key-sequence.
14667
14668	* etc/NEWS: Add an entry for this change.
14669
146702019-10-19  Eli Zaretskii  <eliz@gnu.org>
14671
14672	Fix a recent change in Emacs FAQ
14673
14674	* doc/misc/efaq.texi (New in Emacs 23, Common requests):
14675	Remove references to the removed section "Highlighting a
14676	region".
14677
146782019-10-19  Michael Albinus  <michael.albinus@gmx.de>
14679
14680	* doc/emacs/emacs.texi (Intro): Mention remote file editing.
14681
146822019-10-19  Stefan Kangas  <stefankangas@gmail.com>
14683
14684	Don't explain FTP acronym in FAQ
14685
14686	* doc/misc/efaq.texi (Common acronyms): Remove explanation of the FTP
14687	acronym.  Emacs is no longer distributed over FTP, and the FAQ doesn't
14688	refer to any other FTP URLs.
14689
146902019-10-19  Stefan Kangas  <stefankangas@gmail.com>
14691
14692	Remove FAQ section "Highlighting a region" (Bug#37818)
14693
14694	* doc/misc/efaq.texi (Highlighting a region): Remove section.
14695
146962019-10-19  Michael Albinus  <michael.albinus@gmx.de>
14697
14698	Support PuTTY's antispoof message in Tramp
14699
14700	* lisp/net/tramp-sh.el (tramp-actions-before-shell):
14701	Add respective entry for PuTTY's antispoof message.
14702
14703	* lisp/net/tramp.el (tramp-antispoof-regexp): New defcustom.
14704	(tramp-action-confirm-message): New defun.
14705
147062019-10-19  Raimon Grau  <raimonster@gmail.com>
14707
14708	Fix optional parameter passing in calc-fin-* functions
14709
14710	* lisp/calc/calc-fin.el (calc-fin-pv, calc-fin-fv, calc-fin-pmt)
14711	(calc-fin-pner, calc-fin-rate): Add support for an optional
14712	parameter standing for an initial lump. The functions already
14713	support it but the extra parameter was not taken into account in
14714	stack mode. This commit it takes into consideration when deciding
14715	if a function takes 3 or 4 parameters (bug#37649).
14716
147172019-10-19  Lars Ingebrigtsen  <larsi@gnus.org>
14718
14719	Remove some compat code from cperl-mode.el
14720
14721	* lisp/progmodes/cperl-mode.el: Remove old-Emacs compat code.
14722
147232019-10-19  Eli Zaretskii  <eliz@gnu.org>
14724
14725	Fix display of Info files on TTY frames
14726
14727	* lisp/info.el (info-symbols-and-replacements): New variable.
14728	(Info-mode): Use 'info-symbols-and-replacements' to set up a
14729	buffer-display-table for non-ASCII symbols used by Info files
14730	that cannot be displayed on TTY frames.
14731
147322019-10-19  Lars Ingebrigtsen  <larsi@gnus.org>
14733
14734	Remove some compat code from CEDET
14735
14736	* lisp/cedet/semantic.el (pp):
14737	* lisp/cedet/semantic/complete.el (initialize-instance): Remove
14738	old-Emacs compat code.
14739
147402019-10-19  Lars Ingebrigtsen  <larsi@gnus.org>
14741
14742	Remove some compat code from mm-url.el
14743
14744	* lisp/gnus/mm-url.el (mm-url-use-external): Remove old-Emacs
14745	compat code.
14746
147472019-10-19  Lars Ingebrigtsen  <larsi@gnus.org>
14748
14749	Remove compat code from nnbabyl.el
14750
14751	* lisp/gnus/nnbabyl.el (rmail): Remove old-Emacs compat code.
14752
147532019-10-19  Lars Ingebrigtsen  <larsi@gnus.org>
14754
14755	Remove some compat code in imap.el
14756
14757	* lisp/net/imap.el (imap-sasl-auth-p): Remove old-Emacs compat code.
14758
147592019-10-19  Hong Xu  <hong@topbug.net>
14760
14761	special-mode doc string clarification
14762
14763	* lisp/simple.el (special-mode): Make the doc string explain what
14764	special modes are for (bug#37787).
14765
147662019-10-19  Lars Ingebrigtsen  <larsi@gnus.org>
14767
14768	Don't have shr bug out if svg support isn't available
14769
14770	* lisp/net/shr.el (shr-put-image): Don't bug out if SVG support
14771	isn't available.
14772
147732019-10-19  Cédric Chépied  <cedric.chepied@delair.aero>
14774
14775	Fix typo in tree-widget-lookup-image
14776
14777	* lisp/tree-widget.el (tree-widget-lookup-image): Fix typo
14778	introduced by previous cleanup (bug#37809).
14779
147802019-10-19  Eli Zaretskii  <eliz@gnu.org>
14781
14782	A better fix for tab-line mouse highlight on TTY frames
14783
14784	* src/dispnew.c (mode_line_string):
14785	* src/xdisp.c (note_mode_line_or_margin_highlight): Remove
14786	recently-added workarounds for incorrect TTY mouse highlight:
14787	they are no longer needed.
14788	(mark_window_display_accurate_1): Set the header_line_p and
14789	tab_line_p flags of the window's current_matrix if the window
14790	displays these.
14791	(display_mode_line): Set the header_line_p and tab_line_p
14792	flags of the window's desired_matrix if the window displays
14793	these.  (Bug#37807)
14794
147952019-10-18  Stefan Kangas  <stefankangas@gmail.com>
14796
14797	Remove XEmacs compat code from ezimage.el
14798
14799	* lisp/ezimage.el (top-level): Remove XEmacs compat code.
14800
148012019-10-18  Paul Eggert  <eggert@cs.ucla.edu>
14802
14803	Pacify x86 GCC 9 in tab bar code
14804
14805	* src/xdisp.c (tty_get_tab_bar_item): Simplify a bit.  This
14806	pacifies --enable-gcc-warnings with x86 GCC 9.2.1 20190827
14807	(Red Hat 9.2.1-1) when combined with -fsanitize=undefined.
14808
148092019-10-18  Stefan Kangas  <stefankangas@gmail.com>
14810
14811	Remove XEmacs compat code from edt-mapper.el
14812
14813	* lisp/emulation/edt-mapper.el (edt-mapper, edt-xserver)
14814	(edt-map-key): Remove XEmacs compat code.
14815	(edt-window-system): Redefine as obsolete variable alias for
14816	'window-system'.
14817
148182019-10-18  Stefan Kangas  <stefankangas@gmail.com>
14819
14820	Remove XEmacs compat code from esh-arg.el
14821
14822	* lisp/eshell/esh-arg.el (eshell-quote-backslash): Remove XEmacs
14823	compat code.
14824
148252019-10-18  Paul Eggert  <eggert@cs.ucla.edu>
14826
14827	Generalize list1i etc. to all signed integer types
14828
14829	* src/lisp.h (list1i, list2i, list3i, list4i):
14830	Accept intmax_t instead of EMACS_INT, and use make_int instead
14831	of make_fixnum.  This should help avoid integer-overflow
14832	problems akin to the Time bug (Bug#37795).
14833
148342019-10-18  Paul Eggert  <eggert@cs.ucla.edu>
14835
14836	Fix integer-overflow bug in Time conversion
14837
14838	Problem reported by Stefan Monnier (Bug#37795).
14839	* src/keyboard.c (make_lispy_position)
14840	(make_scroll_bar_position, make_lispy_event):
14841	* src/xterm.c (x_ewmh_activate_frame):
14842	Use INT_TO_INTEGER to convert Time to a Lisp integer,
14843	since the value might not be a fixnum.
14844
148452019-10-18  Michael Albinus  <michael.albinus@gmx.de>
14846
14847	* test/lisp/net/tramp-tests.el (remote-file-name-inhibit-cache): Set to nil.
14848
148492019-10-18  Michael Albinus  <michael.albinus@gmx.de>
14850
14851	Support old Samba versions in Tramp
14852
14853	* doc/misc/tramp.texi (Relevant connection properties to override):
14854	New subsection.
14855
14856	* lisp/net/tramp-smb.el (tramp-smb-get-cifs-capabilities): Check "posix"
14857	connection property.
14858
14859	* lisp/net/tramp.el (with-tramp-progress-reporter): Fix docstring.
14860
148612019-10-18  Eli Zaretskii  <eliz@gnu.org>
14862
14863	Fix mouse highlight with tab-line on TTY frames
14864
14865	* src/xdisp.c (note_mode_line_or_margin_highlight):
14866	* src/dispnew.c (mode_line_string): Fix mouse highlight on TTY
14867	frames when both header line and tab-line are displayed.
14868	(Bug#37807)
14869
148702019-10-18  Eli Zaretskii  <eliz@gnu.org>
14871
14872	Fix handling of mouse events on header line with tab-line
14873
14874	* src/window.c (coordinates_in_window): Fix conditions for
14875	coordinates being on the window's header line when that
14876	window also displays a tab-line.  (Bug#37807)
14877
148782019-10-18  Mattias Engdegård  <mattiase@acm.org>
14879
14880	Use [^z-a] for matching any character (anychar/anything) in rx
14881
14882	* lisp/emacs-lisp/rx.el (rx--translate-symbol):
14883	* test/lisp/emacs-lisp/rx-tests.el (rx-any, rx-atoms):
14884	Use [^z-a] instead of ".\\|\n" for anychar.
14885
14886	The new expression is faster (about 2×) and does not allocate regexp
14887	stack space.  For example, (0+ anychar) now matches strings of any
14888	size (bug#37659).
14889
148902019-10-18  Mattias Engdegård  <mattiase@acm.org>
14891
14892	Add `unmatchable' as alias for (or) in rx (bug#37659)
14893
14894	* lisp/emacs-lisp/rx.el (rx--translate-symbol, rx--builtin-symbols, rx):
14895	* test/lisp/emacs-lisp/rx-tests.el (rx-atoms):
14896	* doc/lispref/searching.texi (Rx Constructs):
14897	* etc/NEWS:
14898	Add `unmatchable', more descriptive than (or), and corresponding to
14899	the variable `regexp-unmatchable'.
14900
149012019-10-18  Mattias Engdegård  <mattiase@acm.org>
14902
14903	Add `anychar' as alias to `anything' in rx (bug#37659)
14904
14905	* lisp/emacs-lisp/rx.el (rx--translate-symbol, rx--builtin-symbols, rx):
14906	* test/lisp/emacs-lisp/rx-tests.el (rx-atoms):
14907	* doc/lispref/searching.texi (Rx Constructs):
14908	* etc/NEWS:
14909	Add `anychar', an alias for `anything'.  Since `anychar' is more
14910	descriptive (and slightly shorter), treat it as the preferred name.
14911
149122019-10-17  Michael Heerdegen  <michael_heerdegen@web.de>
14913
14914	Extend debug spec of cl-flet (Bug#34481)
14915
14916	* lisp/emacs-lisp/cl-macs.el (cl-flet): Extend debug spec to cover
14917	definitions of the form (FUNC EXP).
14918
149192019-10-17  Stefan Kangas  <stefankangas@gmail.com>
14920
14921	Port snake menu to Emacs
14922
14923	* lisp/play/snake.el (snake--menu-def): New constant.
14924	(snake-mode-menu, snake-null-menu): Add a menu.
14925	(snake-mode): Remove XEmacs compat code.
14926	(snake-mode-map, snake-null-map): Add docstring.
14927
149282019-10-17  Martin Rudalics  <rudalics@gmx.at>
14929
14930	In 'bury-buffer' don't try to remove current buffer from minibuffer window
14931
14932	* lisp/window.el (bury-buffer): Don't try to remove current buffer
14933	from minibuffer window.
14934
149352019-10-17  Eli Zaretskii  <eliz@gnu.org>
14936
14937	* lisp/recentf.el (recentf-mode): Doc fix.  (Bug#37772)
14938
14939	* lisp/dired.el (dired-auto-revert-buffer): Doc fix.  (Bug#37771)
14940
149412019-10-17  Stefan Kangas  <stefankangas@gmail.com>
14942
14943	Port tetris menu to Emacs
14944
14945	* lisp/play/tetris.el (tetris--menu-def): New constant.
14946	(tetris-mode-menu, tetris-null-menu): Add a menu.
14947	(tetris-mode): Remove XEmacs compat code.
14948	(tetris-null-map, tetris-mode-map): Add docstring.
14949
149502019-10-17  Michael Albinus  <michael.albinus@gmx.de>
14951
14952	* lisp/shell.el (shell): Make shell buffer the current buffer.  (Bug#37745)
14953
149542019-10-17  Stefan Kangas  <stefankangas@gmail.com>
14955
14956	Remove XEmacs compat code from ffap.el
14957
14958	* lisp/ffap.el (ffap-what-domain): Remove XEmacs compat code.
14959
149602019-10-17  Stefan Kangas  <stefankangas@gmail.com>
14961
14962	Remove XEmacs compat code from imap.el
14963
14964	* lisp/net/imap.el (imap-disable-multibyte): Declare obsolete.
14965	(imap-log, imap-open): Remove XEmacs compat code.
14966
149672019-10-17  Stefan Kangas  <stefankangas@gmail.com>
14968
14969	Remove obsolete XEmacs references from manuals
14970
14971	* doc/misc/erc.texi:
14972	* doc/misc/eshell.texi:
14973	* doc/misc/htmlfontify.texi:
14974	* doc/misc/remember.texi:
14975	* doc/misc/sieve.texi:
14976	* doc/misc/viper.texi: Remove obsolete XEmacs references.
14977
149782019-10-17  Stefan Kangas  <stefankangas@gmail.com>
14979
14980	Remove XEmacs reference from viper refcard
14981
14982	* etc/refcards/viperCard.tex: Remove reference to XEmacs.
14983
149842019-10-17  Stefan Kangas  <stefankangas@gmail.com>
14985
14986	Remove XEmacs compat code from tcl.el
14987
14988	* lisp/progmodes/tcl.el (tcl-mode): Remove XEmacs compat code.
14989	(tcl-popup-menu): Declare obsolete.
14990
149912019-10-17  Stefan Kangas  <stefankangas@gmail.com>
14992
14993	Remove XEmacs reference from erc-button.el todo
14994
14995	* lisp/erc/erc-button.el: Remove reference to XEmacs from a todo item.
14996
149972019-10-17  Stefan Kangas  <stefankangas@gmail.com>
14998
14999	Remove commented out XEmacs compat code from po.el
15000
15001	* lisp/textmodes/po.el: Remove commented out XEmacs compat code.
15002
150032019-10-17  Stefan Kangas  <stefankangas@gmail.com>
15004
15005	Improve documentation of shell-command-prompt-show-cwd
15006
15007	* doc/emacs/misc.texi (Single Shell):
15008	* lisp/simple.el (shell-command): Document
15009	'shell-command-prompt-show-cwd'.  (Bug#4987)
15010
150112019-10-16  Peter Oliver  <git@mavit.org.uk>  (tiny change)
15012
15013	Allow vc-sccs-diff to work with TRAMP
15014
15015	* lisp/vc/vc-sccs.el (vc-sccs-diff): If the diff command is to be
15016	run remotely, then the temporary files it's acting on must be
15017	remote too (bug#37777).
15018
150192019-10-16  Andrii Kolomoiets  <andreyk.mad@gmail.com>  (tiny change)
15020
15021	Add ui.report_untrusted=0 to vc-hg log commands
15022
15023	* lisp/vc/vc-hg.el (vc-hg-state-slow, vc-hg-merge-branch)
15024	(vc-hg-command): Add "--config" "ui.report_untrusted=0" to the
15025	log commands to avoid "Hg-not trusting file " messages in the mode
15026	line (bug#31497).
15027
150282019-10-16  Juanma Barranquero  <lekktu@gmail.com>
15029
15030	lisp/*.el, src/*.c: Doc fixes related to returning t vs non-nil
15031
15032	* lisp/progmodes/flymake-proc.el (flymake-proc--find-buffer-for-file):
15033	Doc fix; return value is a buffer, not t.
15034
15035	* lisp/progmodes/ebrowse.el (ebrowse-member-display-p):
15036	Doc fix; return value is the MEMBER argument, not nil.
15037
15038	* lisp/files.el (hack-one-local-variable-eval-safep):
15039	* lisp/play/doctor.el (doctor-nounp, doctor-pronounp):
15040	* lisp/progmodes/flymake-proc.el (flymake-proc--check-include):
15041	* lisp/progmodes/js.el (js--broken-arrow-terminates-line-p):
15042	Doc fix; a non-nil return value is not always t.
15043
15044	* lisp/image.el (image-type-available-p):
15045	* lisp/simple.el (region-active-p):
15046	* lisp/window.el (frame-root-window-p):
15047	* src/buffer.c (Fbuffer_live_p):
15048	* src/image.c (Finit_image_library):
15049	* src/window.c (Fwindow_minibuffer_p):
15050	Doc fix; a non-nil return value is always t.
15051
15052	* doc/lispref/minibuf.texi (Minibuffer Windows): Doc fix.
15053
150542019-10-16  Juanma Barranquero  <lekktu@gmail.com>
15055
15056	lisp/*.el: Force non-nil result to t, to match docstring
15057
15058	* lisp/emacs-lock.el (emacs-lock-live-process-p):
15059	* lisp/shadowfile.el (shadow-file-match):
15060	* lisp/emacs-lisp/edebug.el (edebug-basic-spec):
15061	* lisp/mail/rmail.el (rmail-expunge-confirmed):
15062	* lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
15063	* lisp/progmodes/idlwave.el (idlwave-quoted):
15064	* lisp/progmodes/idlw-shell.el (idlwave-shell-filename-string):
15065	* lisp/textmodes/refbib.el (r2b-isa-proceedings):
15066	* lisp/textmodes/texnfo-upd.el (texinfo-find-lower-level-node):
15067	Normalize boolean result.
15068
150692019-10-16  Juanma Barranquero  <lekktu@gmail.com>
15070
15071	* lisp/wid-edit.el (widget-default-active): Normalize boolean result.
15072
150732019-10-16  Juanma Barranquero  <lekktu@gmail.com>
15074
15075	Add/fix documentation for widget-apply
15076
15077	* doc/misc/widget.texi (Widget Properties): Document `widget-apply'.
15078
15079	* src/fns.c (Fwidget_apply): Document return value (used in many
15080	places).
15081
150822019-10-16  Michael Albinus  <michael.albinus@gmx.de>
15083
15084	Adapt Tramp's sudo method for non-default shells (Bug#31924)
15085
15086	* lisp/net/tramp-sh.el (tramp-methods) <sudo>: Change template.
15087	(tramp-maybe-open-connection): Remove `tramp-login-env'.  (Bug#31924)
15088
15089	* lisp/net/tramp.el (tramp-methods): Remove docstring for `tramp-login-env'.
15090
150912019-10-16  Juanma Barranquero  <lekktu@gmail.com>
15092
15093	lisp/speedbar.el: Fix computation of boolean return values
15094
15095	* lisp/speedbar.el (speedbar-check-vc-this-line):
15096	Normalize boolean result.
15097	(speedbar-this-file-in-vc): Use `run-hook-with-args-until-success'
15098	to check for files under versin control.  Doc fix.
15099
151002019-10-16  Michael Albinus  <michael.albinus@gmx.de>
15101
15102	* etc/NEWS: Apply "user option" when possible.  Fix other oddities.
15103
151042019-10-16  Martin Rudalics  <rudalics@gmx.at>
15105
15106	Handle top margin change in adjust_frame_size
15107
15108	* src/frame.c (adjust_frame_size): Handle case where only
15109	pseudo windows changed height so the top margin has to be
15110	adjusted.
15111	* src/window.c (Fset_window_configuration): Call
15112	adjust_frame_size with inhibit 4.
15113
151142019-10-16  Lars Ingebrigtsen  <larsi@gnus.org>
15115
15116	Expand <<- heredocs in sh
15117
15118	* lisp/progmodes/sh-script.el (sh--maybe-here-document): Make <<-
15119	expansion work, too.
15120
151212019-10-15  Robert Pluim  <rpluim@gmail.com>
15122
15123	Allow event description to be empty
15124
15125	The previous fix for this was incomplete.
15126
15127	* lisp/gnus/gnus-icalendar.el (gnus-icalendar-event->org-entry):
15128	Allow description to be nil.
15129
151302019-10-15  Lars Ingebrigtsen  <larsi@gnus.org>
15131
15132	Fix some &rest body edebug specs
15133
15134	* lisp/ses.el (ses--letref):
15135
15136	* lisp/emacs-lisp/crm.el (crm--completion-command): Fix edebug
15137	&rest body spec (bug#28747).
15138
15139	* lisp/emacs-lisp/easy-mmode.el (easy-mmode-define-navigation):
15140
15141	* lisp/emacs-lisp/inline.el (inline--leteval)
15142	(inline--letlisteval, inline-letevals):
15143
151442019-10-15  Lars Ingebrigtsen  <larsi@gnus.org>
15145
15146	Tweak heredoc expansion in shell-script-mode
15147
15148	* lisp/progmodes/sh-script.el (sh--maybe-here-document): Allow
15149	expanding <<E, too.
15150
151512019-10-15  Juri Linkov  <juri@linkov.net>
15152
15153	Declare tab-bar-tabs the single source of truth in regard to current tab name
15154
15155	* lisp/tab-bar.el: Replace all calls of tab-bar-tabs
15156	with '(funcall tab-bar-tabs-function)'.
15157	(tab-bar-tabs): Update the current tab name here
15158	instead of tab-bar-make-keymap-1.
15159	(tab-bar-make-keymap-1): Move the current tab name updating
15160	to tab-bar-tabs.
15161
151622019-10-15  Robert Cochran  <robert-git@cochranmail.com>
15163
15164	Allow tabs to have consistent given names
15165
15166	* lisp/tab-bar.el (tab-bar--tab): Pull automatic name information from
15167	current tab
15168	(tab-bar--current-tab): Pull automatic name information from current
15169	tab, or from new optional template argument
15170	(tab-bar-select-tab): Pass the target tab as a template when setting
15171	it as current tab
15172	(tab-bar-rename-tab, tab-bar-rename-tab-by-name): New functions
15173	* doc/emacs/frames.texi (Tab Bars): Document new tab rename functionality.
15174
151752019-10-15  Juri Linkov  <juri@linkov.net>
15176
15177	* lisp/tab-bar.el (tab-bar-select-tab-modifiers): New defcustom.
15178
15179	(tab-bar-mode): Use tab-bar-select-tab-modifiers to bind
15180	tab-bar-select-tab.
15181	Don't override user customized key bindings of C-TAB, C-S-TAB.
15182	On disabling tab-bar-mode, unset only keys bound by tab-bar.
15183
151842019-10-15  Juri Linkov  <juri@linkov.net>
15185
15186	Don't use expand-file-name to find images for tabs.
15187
15188	* lisp/tab-bar.el (tab-bar-mode):
15189	* lisp/tab-line.el (tab-line-new-button, tab-line-close-button):
15190	Remove expand-file-name with data-directory.
15191
151922019-10-15  Juri Linkov  <juri@linkov.net>
15193
15194	New variable tab-bar-position
15195
15196	* lisp/cus-start.el: Add customization for tab-bar-position.
15197	* src/dispnew.c (syms_of_display): New variable Vtab_bar_position.
15198	(adjust_frame_glyphs_for_window_redisplay): Use it.
15199
152002019-10-15  Stefan Monnier  <monnier@iro.umontreal.ca>
15201
15202	* lisp/rect.el (string-rectangle): Inherit input method in minibuffer
15203
152042019-10-15  Eric Ludlam  <zappo@gnu.org>
15205
15206	Fix test data broken by removing trailing whitespace.
15207
152082019-10-15  Eric Ludlam  <eric@siege-engine.com>
15209
15210	Adapt the CEDET SRecoder getset tests to use ERT
15211
15212	These tests were copied from CEDET from SourceForge.
15213	Author: Eric Ludlam <zappo@gnu.org>
15214
152152019-10-15  Eric Ludlam  <eric@siege-engine.com>
15216
15217	Adapt the CEDET SRecoder template test to use ERT
15218
15219	These tests were copied from CEDET from SourceForge.
15220	Author: Eric Ludlam <zappo@gnu.org>
15221
152222019-10-15  Eric Ludlam  <eric@siege-engine.com>
15223
15224	Copy CEDET/Semantic's tag formatter test suite to be an
15225
15226	automated test.
15227	These tests were copied from CEDET on Sourceforge and adapted to use ERT.
15228	Author: Eric Ludlam <zappo@gnu.org>
15229
152302019-10-15  Eric Ludlam  <eric@siege-engine.com>
15231
15232	Update CEDET manual tests so that they run.
15233
15234	To run visit test/manual/cedet/cedet-utests.el
15235	M-x eval-buffer
15236	M-x cedet-utest
15237	Author: Eric Ludlam <zappo@gnu.org>
15238
152392019-10-15  Eric Ludlam  <eric@siege-engine.com>
15240
15241	Convert manual CEDET tests from test/manual/cedet to be
15242
15243	automated tests in test/lisp/cedet.
15244	Author: Eric Ludlam <zappo@gnu.org>
15245
152462019-10-15  Robert Pluim  <rpluim@gmail.com>
15247
15248	Fix duplicated words in lispref
15249
15250	* doc/lispref/text.texi (Base 64):
15251	* doc/lispref/internals.texi (Window Internals): Remove duplicated
15252	words.
15253
152542019-10-15  Robert Pluim  <rpluim@gmail.com>
15255
15256	Fix duplicated words in comments
15257
15258	* src/coding.c (encode_string_utf_8):
15259	* src/keyboard.c (syms_of_keyboard):
15260	* src/mini-gmp.c (gmp_lucas_mod, mpz_export):
15261	* src/pdumper.c (dump_set_referrer, dump_queue_compute_score):
15262	* src/timefns.c (Ftime_convert): Remove duplicated words.
15263
152642019-10-15  Eli Zaretskii  <eliz@gnu.org>  (tiny change)
15265
15266	Fix recording keyboard macros in Calc
15267
15268	* lisp/calc/calc.el (calc-unread-command): Prevent recording
15269	key twice when defining a keyboard macro.  Patch by Christoph
15270	Arenz <tiga.arenz@web.de>.
15271
152722019-10-15  Daiki Ueno  <ueno@gnu.org>
15273
15274	auth-source: Fix wrong-type-argument when searching plstore
15275
15276	`auth-source-search' can be called with an integer port number from
15277	`network-stream-certificate`, while the backend implementation doesn't
15278	allow non-string attributes.
15279
15280	* lisp/auth-source.el (auth-source-plstore-search): Ensure attributes
15281	are string.
15282
152832019-10-15  Lars Ingebrigtsen  <larsi@gnus.org>
15284
15285	Revert "Remove XEmacs code from tetris.el"
15286
15287	This reverts commit 68b91333d5a070c84afeadc273fd5c44df70f0a6.
15288
15289	This should be ported to Emacs instead.
15290
152912019-10-15  Lars Ingebrigtsen  <larsi@gnus.org>
15292
15293	Revert "Remove XEmacs-only code from snake.el"
15294
15295	This reverts commit 7174a2b59f4cb883beb70bb3d182d59ab425e2f1.
15296
15297	This should be ported to Emacs instead.
15298
152992019-10-14  Lars Ingebrigtsen  <larsi@gnus.org>
15300
15301	Make auth-source work with non-ASCII passwords again
15302
15303	* lisp/auth-source.el (auth-source--obfuscate): Convert the string
15304	to bytes before obfuscating.
15305	(auth-source--deobfuscate): Convert back into a string (bug#37758).
15306
153072019-10-14  Lars Ingebrigtsen  <larsi@gnus.org>
15308
15309	Add new macro `benchmark-progn'
15310
15311	* doc/lispref/debugging.texi (Profiling): Mention it.
15312
15313	* lisp/emacs-lisp/benchmark.el (benchmark-progn): New macro.
15314
153152019-10-14  Carlos Pita  <carlosjosepita@gmail.com>
15316
15317	Fix python-shell font-lock cleanup for unclosed quotes (Bug#32390)
15318
15319	The problem originating this report was:
15320
15321	-------------
15322	In [15]: "
15323	  File "<ipython-input-15-3b7a06bb1102>", line 1
15324	    "
15325	     ^
15326	SyntaxError: EOL while scanning string literal
15327
15328	In [16]:   string face still here"
15329	-------------
15330
15331	This happens because
15332	python-shell-font-lock-comint-output-filter-function is called twice,
15333	first for the error output and then for the "In [16]: " part.  The
15334	first time python-shell-comint-end-of-output-p returns nil since
15335	we're *not* at the end of an input prompt.  The second time it returns
15336	0 since we're at the end of *just* an input prompt.  So we don't call
15337	python-shell-font-lock-cleanup-buffer either time.
15338
15339	The current code is relying in a very weak rule: it considers "just an
15340	input prompt" to be a continuation prompt.  Another unreliable aspect
15341	of the current rule is that sometimes
15342
15343	    (python-shell-comint-end-of-output-p (ansi-color-filter-apply output))
15344
15345	returns 1 and not 0 for continuation prompts.  In short, the rule does
15346	a very poor job identifying continuations.
15347
15348	* lisp/progmodes/python.el (python-shell-font-lock-cleanup-buffer):
15349	Don't check for empty OUTPUT since python-shell-comint-end-of-output-p
15350	returns nil for that anyway.  Don't check for
15351	python-shell-comint-end-of-output-p returning a specific number
15352	because it's unreliable, just check for any non-nil.  Identify
15353	continuation prompts by looking for "...".
15354
153552019-10-14  Juri Linkov  <juri@linkov.net>
15356
15357	Add images on tab-bar buttons the first time the tab bar is activated
15358
15359	* lisp/tab-bar.el (tab-bar-mode): Set display property with image files
15360	on tab-bar-new-button and tab-bar-close-button when tab-bar-mode is enabled
15361	the first time.
15362	(tab-bar-new-button, tab-bar-close-button): Use default values
15363	without display image properties.  (Bug#37685)
15364
153652019-10-14  Juanma Barranquero  <lekktu@gmail.com>
15366
15367	lisp/*.el: Force non-nil result to t, to match docstring
15368
15369	* lisp/ido.el (ido-ignore-item-p):
15370	* lisp/simple.el (use-region-p):
15371	* lisp/whitespace.el (whitespace-style-face-p)
15372	(whitespace-style-mark-p):
15373	* lisp/calendar/cal-islam.el (calendar-islamic-leap-year-p):
15374	* lisp/mail/rmail.el (rmail-is-text-p):
15375	* lisp/mh-e/mh-alias.el (mh-alias-for-from-p):
15376	* lisp/net/imap.el (imap-message-flag-permanent-p):
15377	* lisp/progmodes/tcl.el (tcl-real-comment-p):
15378	* lisp/textmodes/table.el (table--point-in-cell-p):
15379	Normalize boolean result.
15380
153812019-10-14  Juri Linkov  <juri@linkov.net>
15382
15383	Set tab-line face height to 0.9.
15384
15385	* lisp/tab-line.el (tab-line): Set :height to 0.9.
15386	* lisp/tab-bar.el (tab-bar): Remove :height.
15387
153882019-10-14  Lars Ingebrigtsen  <larsi@gnus.org>
15389
15390	Remove the find-file-visit-truename safe-local-variable
15391
15392	* lisp/files.el (find-file-visit-truename): Remove the
15393	safe-local-variable put, because the variable is checked too late
15394	to actually make a difference (bug#36830).
15395
153962019-10-14  Štěpán Němec  <stepnem@gmail.com>
15397
15398	quail/py-b5: Use U+3007 for ideographic zero (bug#3179)
15399
15400	* leim/leim-ext.el ("quail/PY-b5"): Use U+3007 instead of U+25CB for
15401	ideographic zero.  U+25CB (used previously) is only one of the several
15402	lookalikes (bug#3179).
15403
154042019-10-14  Lars Ingebrigtsen  <larsi@gnus.org>
15405
15406	require-final-newline doc string clarification
15407
15408	* lisp/files.el (require-final-newline): Mention that the variable
15409	applies to visited files (bug#34986).
15410
154112019-10-14  Juri Linkov  <juri@linkov.net>
15412
15413	Use variable-pitch fonts in tab-bar and tab-line faces
15414
15415	* lisp/tab-bar.el (tab-bar):
15416	* lisp/tab-line.el (tab-line):
15417	Inherit face from variable-pitch.
15418
154192019-10-14  Stefan Kangas  <stefankangas@gmail.com>
15420
15421	Clarify C void type description in semantic
15422
15423	* admin/grammars/c.by: Clarify void type.  (Bug#9222)
15424
154252019-10-14  Lars Ingebrigtsen  <larsi@gnus.org>
15426
15427	dired-do-shell-command doc string fix
15428
15429	* lisp/dired-aux.el (dired-do-shell-command): Mention the guesser
15430	variables (bug#16562).
15431
154322019-10-14  Juri Linkov  <juri@linkov.net>
15433
15434	Fix initial value of frame-inhibit-implied-resize
15435
15436	* src/frame.c (syms_of_frame): Update doc string and default value of
15437	frame-inhibit-implied-resize in NS to include 'tab-bar-lines.
15438
154392019-10-14  Eli Zaretskii  <eliz@gnu.org>
15440
15441	Minor fixes in Introduction to Emacs Lisp
15442
15443	* doc/lispintro/emacs-lisp-intro.texi (if, save-excursion):
15444	'defun' is a macro, not a special form anymore.  (Bug#37747)
15445
154462019-10-14  Juri Linkov  <juri@linkov.net>
15447
15448	* lisp/tab-bar.el (tab-bar-tab-name-current): Fix with buffer-name.
15449
154502019-10-14  Stefan Kangas  <stefankangas@gmail.com>
15451
15452	Improve documentation of dired-do-chmod
15453
15454	* lisp/dired-aux.el (dired-do-chmod): Doc fix.  The part about
15455	MS-Windows was written by Eli Zaretskii.  (Bug#24897)
15456
154572019-10-14  Philipp Stephani  <phst@google.com>
15458
15459	Enable modules by default.
15460
15461	The interface has been stable since Emacs 25, and most bugs are fixed
15462	by now.
15463
15464	* configure.ac: Enable modules by default.
15465
154662019-10-14  Michael Albinus  <michael.albinus@gmx.de>
15467
15468	Suppress eager completion on not connected hosts in Tramp
15469
15470	* lisp/net/tramp.el (tramp-completion-handle-file-name-completion):
15471	Bind `non-essential' to t.
15472
154732019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15474
15475	Merge branch 'feature/extend_face_id'
15476
15477	New face attribute :extend to control the face extension after
15478	EOL.
15479
15480	necessary, # especially if it merges an updated upstream into a topic
15481	branch.  # # Lines starting with '#' will be ignored, and an empty
15482	message aborts # the commit.
15483
154842019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15485
15486	Fix issue calling face_at_pos.
15487
15488	*src/xdisp.c (extend_face_to_end_of_line): Add extra condition when
15489	producing glyphs from a C string to not call face_at_pos.
15490
154912019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15492
15493	Modify face_at_pos to not modify change IT.
15494
15495	src/xdisp.c (face_at_pos): Removed code to that modified
15496	it->start_of_box_run_p and it->face_box_p.  This function should not
15497	modify it.
15498	(handle_face_prop): Added code to update it->start_of_box_run_p and
15499	it->face_box_p.
15500	(underlying_face_id): Input IT made CONST.
15501
155022019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15503
15504	*etc/NEWS: Added comment about :extend face attribute in NEWS.
15505
155062019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15507
15508	Document new :extend face attribute in manuals.
15509
15510	Some stylistic corrections in src/xdisp.c and src/xfaces.c.
15511
155122019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15513
15514	Fixed merge_face_ref recursive calls.
15515
15516	* src/xfaces.c (merge_face_ref): Fixed recursive calls to consider
15517	filter when CONSP (face_ref).
15518
155192019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15520
15521	Optimization in extend_face
15522
15523	* src/xdisp.c (extend_face_to_end_of_line): Optimization to void
15524	calls to face_at_pos.
15525
155262019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15527
15528	Extend_face simplify.
15529
15530	* src/dispextern.h (struct it): Removed extend_face unneeded members.
15531	* src/xdisp.c (handle_face_prop_general): renamed to face_at_pos and
15532	removed input parameter initial_face_id. Updated all occurrences.
15533
155342019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15535
15536	Added parameter attr_filter to face_at_string_position.
15537
15538	Update all the occurrences in src/xdisp.c and src/xfaces.c
15539
155402019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15541
15542	Extend face hl-line after end-of-line
15543
15544	* lisp/hl-line.el (face hl-line): Added extend attribute to hl-line
15545	face.
15546
155472019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15548
15549	Fix last change in append_space_for_newline.
15550
15551	 * src/xdisp.c (append_space_for_newline): Code refactor and
15552	 simplification.
15553
155542019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15555
15556	Add space for cursor to work also in terminal.
15557
15558	* src/xdisp.c (append_space_for_newline): Modified to add the space
15559	with the last face also in terminal interface.
15560	(fill_column_indicator_column): Modified to group more conditions.
15561	(extend_face_to_end_of_line): Simplified code in
15562	fill_column_indicator to use the new function.
15563
155642019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15565
15566	Changed handle_face_prop_general prototype.
15567
15568	* src/xdisp.c (handle_face_prop_general): Changed function prototype
15569	to receive different arguments.
15570
155712019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15572
15573	Fixed extend face filtered for prop.
15574
15575	* src/xfaces.c (face_at_buffer_position): Pass ATTR_FILTER to
15576	merge_face_ref in when !NILP (prop).
15577
155782019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15579
15580	Call handle_face_prop_general to extend face.
15581
15582	* src/xdisp.c (extend_face_to_end_of_line): Added a call to
15583	handle_face_prop_general to extend face after EOL according to
15584	parameter :extend in the faces.
15585
155862019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15587
15588	Update dfci code with new extend_face code.
15589
15590	* src/xdisp.c (extend_face_to_end_of_line): Updated the
15591	column-indicator code to use the new version of the function
15592	fill_column_indicator_column.
15593
155942019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15595
15596	New parameter to control the face extension..
15597
15598	* src/xdisp.c (handle_face_prop_general): New function to specialize
15599	handle_face_prop with ATTR_FILTER.
15600	* src/dispextern.h (face_at_buffer_position): Added
15601	LFACE_ATTRIBUTE_INDEX.
15602	* src/xfaces.c (merge_face_ref): Added LFACE_ATTRIBUTE_INDEX to merge
15603	conditionally.
15604
156052019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15606
15607	Added face parameter :extend.
15608
15609	This is an initial change to add a parameter :extend that will be used
15610	in the display engine later.
15611
156122019-10-14  Jimmy Aguilar Mena  <spacibba@aol.com>
15613
15614	Simplify struct face to use only underline.
15615
15616	* src/dispextern.h (enum face_underline_type): Add FACE_NO_UNDERLINE = 0.
15617	(struct face): Merge `underline_type` and `underline_p` into `underline`.
15618	Update all the occurrences in src/xdisp.c, src/xfaces.c, and src/xterm.c.
15619
156202019-10-14  Robert Pluim  <rpluim@gmail.com>
15621
15622	Fix directory-files-recursively doc typo
15623
15624	* lisp/files.el (directory-files-recursively): Fix doc string.
15625
156262019-10-14  Martin Rudalics  <rudalics@gmx.at>
15627
15628	Fix bug recently introduced in 'fit-window-to-buffer' (Bug#37743)
15629
15630	* lisp/window.el (fit-window-to-buffer): Call 'window-combined-p'
15631	with right argument (Bug#37743).
15632
156332019-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
15634
15635	Fix up previous dired change again
15636
15637	* lisp/dired.el (dired-set-id): Fix the name of the face after the
15638	previous change.
15639
156402019-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
15641
15642	Fix typo in previous dired change
15643
15644	* lisp/dired.el (dired-set-idguid): Remove superfluous '
15645	introduced by previous change (bug#37742).
15646
156472019-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
15648
15649	(help-fns--var-aliases): Fix compilation warning in previous patch.
15650
156512019-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
15652
15653	Make `C-h v' list all aliases a variable has
15654
15655	* lisp/help-fns.el (help-fns--var-aliases): New function (bug#15179).
15656
156572019-10-13  Hong Xu  <hong@topbug.net>
15658
15659	Make url-hexify-string accept a list of allowed chars (bug#26469)
15660
15661	* lisp/url/url-util.el (url-hexify-string): Accept a list of allowed
15662	chars.
15663	* doc/misc/url.texi (URI Encoding): Update url-hexify-string doc and
15664	index improvements (bug#24694).
15665
156662019-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
15667
15668	Tweak ispell-init-process messaging
15669
15670	* lisp/textmodes/ispell.el (ispell-init-process): Output a "done"
15671	after the "starting" message (bug#12828).
15672
156732019-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
15674
15675	Add a new tar-copy-preserve-time variable
15676
15677	* lisp/tar-mode.el (tar-copy-preserve-time): New variable (bug#11882).
15678	(tar-copy): Use it.
15679
156802019-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
15681
15682	Clarify message about newer source file
15683
15684	* src/lread.c (Fload): Mention which file was actually used
15685	instead of just saying that the .el is newer than the .elc (bug#10637).
15686
156872019-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
15688
15689	Allow zap-to-char to use a history
15690
15691	* doc/emacs/killing.texi (Other Kill Commands): Document it.
15692
15693	* lisp/simple.el (read-char-with-history): New function (bug#10477).
15694	(zap-to-char): Use it to have a history.
15695
156962019-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
15697
15698	Font-lock suid/guid files in Dired
15699
15700	* lisp/dired.el (dired-font-lock-keywords): Font-lock suid/guid
15701	permissions (bug#8186).
15702	(dired-sguid): New face.
15703
157042019-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
15705
15706	Further changes to ensure that copy-keymap doesn't segfault
15707
15708	* src/keymap.c (copy_keymap_1, copy_keymap_set_char_table): Ensure
15709	we don't recurse infinitely when using non-sparse keymaps, too.
15710
15711	This change makes this form not segfault:
15712
15713	(let ((map (make-keymap)))
15714	  (define-key map " " map)
15715	  (copy-keymap map))
15716
157172019-10-13  Stefan Kangas  <stefankangas@gmail.com>
15718
15719	Clarify mouse commands section in manual
15720
15721	* doc/emacs/frames.texi (Mouse Commands): Clarify section on mouse
15722	wheel somewhat.  (Bug#28182)
15723
157242019-10-13  Juri Linkov  <juri@linkov.net>
15725
15726	Don't display the number of windows in tab name in tab-bar by default.
15727
15728	* lisp/tab-bar.el (tab-bar-tab-name-function): Change the default value.
15729	(tab-bar-tab-name-current): Rename from tab-bar-tab-name-selected-window.
15730	(tab-bar-tab-name-current-with-count): New function.
15731	(tab-bar-tab-name-all): Rename from tab-bar-tab-name-all-windows.
15732
157332019-10-13  Juri Linkov  <juri@linkov.net>
15734
15735	* lisp/window.el (next-buffer, previous-buffer): Add repeat count arg.
15736
15737	* doc/emacs/buffers.texi (Select Buffer): Mention arg as repeat count.
15738	(Bug#37514)
15739
157402019-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
15741
15742	Make list-buffers--refresh preserve marks
15743
15744	* lisp/buff-menu.el (list-buffers--refresh): Preserve the marked
15745	buffers when refreshing the list (bug#6491).
15746
157472019-10-13  Juri Linkov  <juri@linkov.net>
15748
15749	Enable tab-bar-mode from X resources
15750
15751	* lisp/startup.el (x-apply-session-resources): Enable tab-bar-mode
15752	when X resource "tabBar" class "TabBar" is "on", "yes" or "1".
15753
15754	* doc/man/emacs.1.in:
15755	* doc/emacs/xresources.texi (Table of Resources):
15756	Document X resource "tabBar" (class "TabBar").
15757
157582019-10-13  Juri Linkov  <juri@linkov.net>
15759
15760	Fix initial value of frame-inhibit-implied-resize
15761
15762	* src/frame.c (syms_of_frame): Update doc string and default value of
15763	frame-inhibit-implied-resize in NS to not include 'tab-bar-lines,
15764	and non-toolkit X builds to include 'tab-bar-lines.
15765
157662019-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
15767
15768	Fix hitting RET on some text in compilation-mode
15769
15770	* lisp/progmodes/compile.el (compilation-next-error-function):
15771	Don't bug out with an incomprehensible error message on "make[2]:"
15772	texts (bug#5316).
15773	(compilation-find-file): Protect against there being no file name.
15774
157752019-10-13  Paul Eggert  <eggert@cs.ucla.edu>
15776
15777	* src/xdisp.c (note_tab_bar_highlight): Simplify HAVE_NS ifdefs.
15778
157792019-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
15780
15781	Add a new action in save-some-buffers to view the buffer
15782
15783	* doc/emacs/files.texi (Save Commands): Document it.
15784
15785	* lisp/files.el (save-some-buffers-action-alist): Offer to pop to
15786	the buffer and then quit (bug#3625).
15787	(save-some-buffers): Implement it.
15788	(save-some-buffers--switch-window-callback): New variable.
15789
157902019-10-13  Mattias Engdegård  <mattiase@acm.org>
15791
15792	Correctly explain test failures with mixed uni/multibyte strings
15793
15794	* lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
15795	* test/lisp/emacs-lisp/ert-tests.el (ert-test-explain-equal):
15796	When explaining a difference between a unibyte and a multibyte string,
15797	first convert both to multibyte.  Otherwise, we might end up comparing
15798	unibyte char C to multibyte char C, 127<C<256, and not detect the
15799	difference (bug#30219).
15800
158012019-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
15802
15803	Mention shifted alphabetical control GUI sequences
15804
15805	* doc/emacs/custom.texi (Modifier Keys): Mention that you can bind
15806	shifted alphabetical control sequences in GUI frames (bug#23247).
15807
158082019-10-13  Philipp Stephani  <phst@google.com>
15809
15810	Avoid compiler warnings on macOS.
15811
15812	* src/xdisp.c (note_tab_bar_highlight): Define variables 'dpyinfo' and
15813	'mouse_down_p' only if needed.
15814
158152019-10-13  Basil L. Contovounesios  <contovob@tcd.ie>
15816
15817	Fix with-coding-priority markup in Elisp manual
15818
15819	* doc/lispref/nonascii.texi (Specifying Coding Systems): Don't use
15820	'&rest' in conjunction with 'body...' in arglist of
15821	with-coding-priority.  Fix typo and cross-referencing (2-arg @pxref
15822	adds a trailing period).
15823
158242019-10-13  Stephen Gildea  <stepheng+emacs@gildea.com>
15825
15826	Minor tweaks to time-stamp documentation strings
15827
15828	* lisp/time-stamp.el (time-stamp): Reformat the explanation of the
15829	variables that affect time-stamp, for easier reading.  In particular,
15830	wrap the documentation to 75 characters, so that it displays neatly as
15831	a before-save-hook customization option.
15832
15833	* test/lisp/time-stamp-tests.el (with-time-stamp-test-env): Use imperative voice,
15834	per checkdoc.
15835
158362019-10-13  Alan Mackenzie  <acm@muc.de>
15837
15838	In compilation-tear-down-arrow-spec-in-margin, test compilation-arrow-overlay
15839
15840	* lisp/progmodes/compile.el (compilation-tear-down-arrow-spec-in-margin): Make
15841	sure compilation-arrow-overlay is an overlay before performing overlay
15842	operations on it.  This fixes bug #37733.
15843
158442019-10-12  Lars Ingebrigtsen  <larsi@gnus.org>
15845
15846	Make the previous-matching-history-element prompt clearer
15847
15848	* lisp/simple.el (previous-matching-history-element): Put the
15849	default into the prompt (bug#380).
15850
158512019-10-12  Konstantin Kharlamov  <Hi-Angel@yandex.ru>
15852
15853	Make diff-mode understand git-format-patch separators
15854
15855	* lisp/vc/diff-mode.el (diff-prev-line-if-patch-separator):
15856	A function to return prev. line if it has git-format-patch
15857	separator.
15858	(diff-end-of-hunk): Make use of
15859	diff-prev-line-if-patch-separator
15860	diff-buffer-type: whether a buffer is a git-diff
15861	(define-derived-mode): set diff-buffer-type to appropriate
15862	value (bug#37395).
15863
158642019-10-12  Rolf Ade  <rolf@pointsman.de>  (tiny change)
15865
15866	TCL indentation fix outside functions
15867
15868	* lisp/progmodes/tcl.el (tcl-calculate-indent): Indent code
15869	correctly outside of function definitions (bug#23565).
15870
158712019-10-12  Lars Ingebrigtsen  <larsi@gnus.org>
15872
15873	Hide passwords more in `read-password'
15874
15875	* lisp/subr.el (read-password--hide-password): Factor out (bug#17127).
15876	(read-passwd): Use it in post-command-hook instead of
15877	after-change-functions to ensure that we hide the password no
15878	matter what inserts text.
15879
158802019-10-12  Andreas Politz  <politza@hochschule-trier.de>
15881
15882	Use quit-window in some functions
15883
15884	* lisp/strokes.el:
15885	* lisp/startup.el (fancy-startup-tail):
15886	* lisp/progmodes/verilog-mode.el (verilog-complete-word)
15887	(verilog-show-completions):
15888	* lisp/progmodes/idlwave.el (idlwave-quit-help): Use `quit-window'
15889	(bug#24213).
15890
158912019-10-12  Lars Ingebrigtsen  <larsi@gnus.org>
15892
15893	Add -unknown to version-regexp-alist
15894
15895	* lisp/epg-config.el (epg-find-configuration): Remove the -unknown
15896	hack, because it led to further problems later when comparing
15897	versions.
15898
15899	* lisp/subr.el (version-regexp-alist): Rate -unknown versions the
15900	same as -alpha releases (bug#37556).
15901
159022019-10-12  Raimon Grau  <raimonster@gmail.com>
15903
15904	Add "next" and "previous" shortcuts in eww-history buffers
15905
15906	* lisp/net/eww.el (eww-history-mode-map): Add "n" and "p" for
15907	"next-line" and "previous-line" (bug#37648).
15908
159092019-10-12  Lars Ingebrigtsen  <larsi@gnus.org>
15910
15911	Protect against segfaults in copy-keymap
15912
15913	* src/keymap.c (copy_keymap_1): Factor out and refuse to recurse
15914	infinitely (bug#7496).
15915	(Fcopy_keymap): ... from here.
15916	(copy_keymap_item): Pass on the depth parameter.
15917
159182019-10-12  Lars Ingebrigtsen  <larsi@gnus.org>
15919
15920	Document let-alist
15921
15922	* doc/lispref/lists.texi (Association Lists): Document let-alist
15923	(bug#34842).
15924
159252019-10-12  Lars Ingebrigtsen  <larsi@gnus.org>
15926
15927	Don't claim that the default height is precisely 36 characters
15928
15929	* doc/emacs/cmdargs.texi (Window Size X):
15930	* doc/man/emacs.1.in: Be more vague about what the default height
15931	is (bug#33921).
15932
159332019-10-12  Lars Ingebrigtsen  <larsi@gnus.org>
15934
15935	Document locate-dominating-file
15936
15937	* doc/lispref/files.texi (Contents of Directories): Document
15938	locate-dominating-file (bug#33869).
15939
159402019-10-12  Juri Linkov  <juri@linkov.net>
15941
15942	* lisp/tab-bar.el: Don't use minibuffer buffer name as tab name.
15943
15944	* lisp/tab-bar.el (tab-bar-tab-name-selected-window):
15945	Use minibuffer-selected-window to get original window.
15946
159472019-10-12  Lars Ingebrigtsen  <larsi@gnus.org>
15948
15949	Make Fadd_face_text_property even less destructive
15950
15951	* src/textprop.c (Fadd_face_text_property): We need to be
15952	non-destructive in buffers, too, because face properties may have
15953	been added with `put-text-property' as a list that's been reused.
15954
159552019-10-12  Lars Ingebrigtsen  <larsi@gnus.org>
15956
15957	Mention the Emacs exit code in batch mode
15958
15959	* doc/lispref/os.texi (Batch Mode): Mention what the exit code is
15960	if an error is signaled (bug#31552).
15961
159622019-10-12  Kaushal Modi  <kaushal.modi@gmail.com>
15963
15964	Document that variables should not be called -p
15965
15966	* doc/lispref/tips.texi (Coding Conventions): Document that
15967	variables should now be called -p (bug#26564).
15968
159692019-10-12  Lars Ingebrigtsen  <larsi@gnus.org>
15970
15971	Make the cl-letf doc string link to the manual
15972
15973	* lisp/emacs-lisp/cl-macs.el (cl-letf): Add a link to the manual
15974	from the doc string (bug#24459).
15975
159762019-10-12  Jiajie Chen  <jiegec@qq.com>  (tiny change)
15977
15978	button-* function doc string clarifications
15979
15980	* lisp/button.el (button-start, button-end, button-get)
15981	(button-put, button-label): Have the doc string mention that they
15982	have to be called from the current buffer (bug#23909).
15983
159842019-10-12  Lars Ingebrigtsen  <larsi@gnus.org>
15985
15986	ert-deftest macro doc string clarification
15987
15988	* lisp/emacs-lisp/ert.el (ert-deftest): Mention that macros are
15989	expanded when defined, not when tested (bug#21742).
15990
159912019-10-12  Eli Zaretskii  <eliz@gnu.org>
15992
15993	Fix recent changes in ELisp manual
15994
15995	* doc/lispref/objects.texi (Special Read Syntax): Use @samp in
15996	@table.
15997
15998	* doc/lispref/elisp.texi (Top): Update the detailed menu due
15999	to a recent addition.
16000
160012019-10-12  Lars Ingebrigtsen  <larsi@gnus.org>
16002
16003	Document #$ in the overview
16004
16005	* doc/lispref/objects.texi (Special Read Syntax): Add #$.
16006
160072019-10-12  Lars Ingebrigtsen  <larsi@gnus.org>
16008
16009	Fix compilation-transform-file-match-alist failure
16010
16011	* lisp/progmodes/compile.el (compilation-error-properties): Fix
16012	thinko in compilation-transform-file-match-alist feature -- `file'
16013	isn't a list of files after all.
16014
160152019-10-12  Lars Ingebrigtsen  <larsi@gnus.org>
16016
16017	Add a lispref node to list special read syntax forms
16018
16019	* doc/lispref/objects.texi (Special Read Syntax): Add a node to
16020	list all the special read syntax forms (bug#18957).
16021
160222019-10-12  Michael Albinus  <michael.albinus@gmx.de>
16023
16024	Adapt some Tramp tests
16025
16026	* test/lisp/net/tramp-archive-tests.el
16027	(tramp-archive-test17-insert-directory): Adapt regexp of summary line.
16028
16029	* test/lisp/net/tramp-tests.el (tramp-test21-file-links):
16030	Extend test for symlinked directories.
16031
160322019-10-12  Michael Albinus  <michael.albinus@gmx.de>
16033
16034	Fix google-drive handling in tramp-gvfs
16035
16036	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-attributes):
16037	Add "standard::is-volatile".
16038	(tramp-gvfs-get-directory-attributes)
16039	(tramp-gvfs-handle-file-attributes): Handle "gdrive" special.
16040	(tramp-gvfs-send-command): Ignore nil arguments.
16041
160422019-10-12  Michael Albinus  <michael.albinus@gmx.de>
16043
16044	* lisp/net/tramp.el (tramp-handle-access-file): Use `file-truename'.
16045
160462019-10-12  Alan Mackenzie  <acm@muc.de>
16047
16048	CC-Mode: Remove unneeded backslashes from doc strings and regular expressions
16049
16050	Also make miscellaneous amendments.
16051
16052	* lisp/progmodes/cc-align.el, lisp/progmodes/cc-cmds.el
16053	* lisp/progmodes/cc-defs.el, lisp/progmodes/cc-engine.el
16054	* lisp/progmodes/cc-langs.el, lisp/progmodes/cc-vars.el: Remove lots of
16055	unneeded backslashes.
16056
16057	* lisp/progmodes/cc-langs.el (c-string-innards-re-alist): Remove redundant
16058	"\\|\r" from regular expression.
16059
16060	* lisp/progmodes/cc-mode.el (c-make-mode-syntax-table): Correct the name of
16061	the hook normal-erase-is-backspace-MODE-hook from a non-existant hook name.
16062
160632019-10-11  Lars Ingebrigtsen  <larsi@gnus.org>
16064
16065	tool-bar-map doc string clarification
16066
16067	* lisp/tool-bar.el (tool-bar-map): Try to clarify how this
16068	variable is used (bug#17709).
16069
160702019-10-11  David Röthlisberger  <david@rothlis.net>  (tiny change)
16071
16072	Fix `shell' doc keymap expansions
16073
16074	* lisp/shell.el (shell): Make the commands be expanded in the
16075	correct keymap (bug#11202).
16076
160772019-10-11  Lars Ingebrigtsen  <larsi@gnus.org>
16078
16079	diary-mark-entries-hook doc string clarification
16080
16081	* lisp/calendar/diary-lib.el (diary-mark-entries-hook): Mention
16082	dynamically bound variables (bug#9287).
16083
160842019-10-11  Lars Ingebrigtsen  <larsi@gnus.org>
16085
16086	Document :match-inline widget elements
16087
16088	* doc/lispref/customize.texi (Type Keywords): Document
16089	:match-inline (bug#8716).
16090	(Splicing into Lists): Mention :match-inline.
16091
160922019-10-11  Paul Eggert  <eggert@cs.ucla.edu>
16093
16094	Update from Gnulib
16095
16096	This incorporates:
16097	2019-10-11 Simplify and regularize regex use of ‘assert’
16098	2019-10-09 regex: omit debug assignment when not debugging
16099	2019-10-09 regex: tell compiler there’s at most 256 arcs out
16100	2019-10-09 regex: simplify by assuming C99
16101	2019-10-09 regex: avoid copying of uninitialized storage
16102	2019-09-29 fbufmode: Fix compilation error on glibc >= 2.28 systems
16103	2019-09-28 Update comments that refer to POSIX
16104	2019-09-23 Update URLs and associated text
16105	* doc/misc/texinfo.tex, lib/open.c, lib/regcomp.c:
16106	* lib/regex_internal.c, lib/regex_internal.h, lib/regexec.c:
16107	* lib/stdio-impl.h:
16108	Copy from Gnulib.
16109
161102019-10-11  Lars Ingebrigtsen  <larsi@gnus.org>
16111
16112	Document REAL-BINDING more extensively in Extended Menu Items
16113
16114	* doc/lispref/keymaps.texi (Extended Menu Items): Document that
16115	REAL-BINDING can be other things than a real command (bug#7755).
16116
161172019-10-11  Lars Ingebrigtsen  <larsi@gnus.org>
16118
16119	Minor grep.el doc string clarifications
16120
16121	* lisp/progmodes/grep.el (grep-find-ignored-directories)
16122	(grep-compute-defaults, grep, grep-expand-template)
16123	(grep-highlight-matches, grep-use-null-device)
16124	(grep-find-command, grep-find-template, grep-expand-template)
16125	(rgrep): Minor doc string clarifications.
16126
161272019-10-11  Lars Ingebrigtsen  <larsi@gnus.org>
16128
16129	Factor out the lambda from help-function-def
16130
16131	* lisp/help-mode.el (help-function-def--button-function): Factor
16132	out into own function for easier reuse.
16133	(help-function-def): ... from the lambda here.
16134
161352019-10-11  Lars Ingebrigtsen  <larsi@gnus.org>
16136
16137	Make << shell heredoc expansion less enthusiastic
16138
16139	* lisp/progmodes/sh-script.el (sh--maybe-here-document): Require a
16140	space before expanding a heredoc (bug#3226).  This allows the user
16141	to insert a bash <<< "herestring", which was previously difficult.
16142
161432019-10-11  Alan Mackenzie  <acm@muc.de>
16144
16145	C++ Mode: Correctly handle <:, <::, <::>, etc, according to the C++ standard
16146
16147	* lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Perform
16148	checking now on an insertion, should point be inside a critical token.
16149	(c-forward-<>-arglist-recur, c-guess-continued-construct): Check for <::, etc.
16150
16151	* lisp/progmodes/cc-langs.el (c-<-pseudo-digraph-cont-regexp)
16152	(c-<-pseudo-digraph-cont-len): New lang variables/constants.
16153
161542019-10-11  Stefan Monnier  <monnier@iro.umontreal.ca>
16155
16156	* lisp/cedet/mode-local.el (define-overload): Declare obsolete
16157
16158	* lisp/cedet/srecode/ctxt.el (srecode-calculate-context):
16159	* lisp/cedet/srecode/semantic.el (srecode-semantic-apply-tag-to-dict)
16160	(srecode-semantic-find-template): Use define-overloadable-function instead.
16161
161622019-10-11  Andrea Corallo  <akrl@sdf.org>
16163
16164	* lisp/emacs-lisp/map.el (map-into) <hash-table>: Allow keyword args
16165
16166	(map--into-hash): New function, extracted from `map-into <hash-table>`.
16167	Speed it up a bit by using gethash instead of map-elt when we know
16168	we're accessing a hash table.
16169
16170	* test/lisp/emacs-lisp/map-tests.el (test-map-into): Add corresponding test.
16171
161722019-10-11  Stefan Kangas  <stefankangas@gmail.com>
16173
16174	Remove reference to obsolete package gnuserv from FAQ
16175
16176	On visiting http://meltin.net/hacks/emacs/, we now find:
16177	"I used to have some Emacs and Haskell hacks on my previous
16178	sites. However, these hacks are now old and un-maintained. I don’t
16179	think there is enough interest to keep them around."
16180
16181	* doc/misc/efaq.texi (Using an already running Emacs process):
16182	Remove reference to obsolete package 'gnuserv'.  (Bug#37574)
16183
161842019-10-11  Robert Pluim  <rpluim@gmail.com>
16185
16186	Correct some more custom type specs
16187
16188	* lisp/winner.el (winner-boring-buffers-regexp):
16189	* lisp/progmodes/js.el (js-jsx-indent-level):
16190	* lisp/image-dired.el (image-dired-external-viewer):
16191	* lisp/gnus/nnir.el (nnir-notmuch-filter-group-names-function):
16192	Correct custom type specification.
16193
16194	* lisp/textmodes/bibtex.el (bibtex-string-file-path):
16195	(bibtex-file-path): Correct custom type specification and document
16196	source of initial value.
16197
161982019-10-11  Michael Albinus  <michael.albinus@gmx.de>
16199
16200	Cleanup Tramp
16201
16202	* lisp/net/tramp-archive.el (tramp-archive-gvfs-host): Fix docstring.
16203
16204	* lisp/net/tramp.el: Remove :group from all defcustoms.
16205	(tramp-encoding-shell): Fix docstring.
16206	(tramp-error): Remove text properties from error message.
16207
162082019-10-11  Stefan Kangas  <stefankangas@gmail.com>
16209
16210	Support showing directory in shell command prompt
16211
16212	* lisp/simple.el (shell-command-prompt-show-cwd): New defcustom.
16213	(async-shell-command, shell-command): Show current directory in prompt
16214	when above option is non-nil.  (Bug#4987)
16215	* etc/NEWS: Announce it.
16216
162172019-10-11  Martin Rudalics  <rudalics@gmx.at>
16218
16219	Minor fixes for switching to previous and next buffers (Bug#37514)
16220
16221	* lisp/window.el (switch-to-prev-buffer)
16222	(switch-to-next-buffer): In doc-strings add links to
16223	'prev-buffer' and 'next-buffer'.
16224	(next-buffer, previous-buffer): Signal 'user-error' instead of
16225	'error'.  In doc-strings link to 'switch-to-prev-buffer' and
16226	'switch-to-next-buffer'.
16227
162282019-10-11  Lars Ingebrigtsen  <larsi@gnus.org>
16229
16230	New variable amalgamating-undo-limit
16231
16232	* doc/lispref/text.texi (Undo): Document it.
16233
16234	* lisp/simple.el (amalgamating-undo-limit): New variable (bug#31658).
16235
162362019-10-11  Robert Pluim  <rpluim@gmail.com>
16237
16238	Correct .dir-locals-2.el description
16239
16240	* doc/lispref/variables.texi (Directory Local Variables): Correct
16241	description of .dir-locals-2.el functioning.  (Bug#37640)
16242
162432019-10-11  Lars Ingebrigtsen  <larsi@gnus.org>
16244
16245	Expand the documentation of --no-build-details
16246
16247	* doc/emacs/cmdargs.texi (Initial Options): Mention that
16248	--no-build-details shouldn't be used in regular usage (bug#34448).
16249
162502019-10-10  Martin Rudalics  <rudalics@gmx.at>
16251
16252	Fixes for fitting windows and frames to their buffers (Bug#37563)
16253
16254	* lisp/window.el (window-default-font-height)
16255	(window-default-line-height): New functions.
16256	(fit-frame-to-buffer): Interpret values of MAX-HEIGHT and
16257	MIN-HEIGHT arguments in terms of WINDOW's default line height
16258	(Bug#37563).
16259	(fit-window-to-buffer): Obey size restricting arguments even
16260	when size of WINDOW's text does not change.  Do not
16261	temporarily select WINDOW and perform height/width related
16262	calculations if and only if WINDOW is accordingly combined.
16263	Interpret values of MAX-HEIGHT and MIN-HEIGHT arguments in
16264	terms of WINDOW's default line height.
16265
162662019-10-10  Lars Ingebrigtsen  <larsi@gnus.org>
16267
16268	Make nntp.el use new setq-local syntax
16269
16270	* lisp/gnus/nntp.el (nntp-make-process-buffer): Convert to new
16271	setq-local syntax (as a test case).
16272
162732019-10-10  Lars Ingebrigtsen  <larsi@gnus.org>
16274
16275	Ensure that setq-local take an even number of symbol/value pairs
16276
16277	* doc/lispref/variables.texi (Creating Buffer-Local): Document the
16278	new syntax for setq-local.
16279
16280	* lisp/subr.el (setq-local): Ensure that there's an even number of
16281	variable/value pairs, and expand the doc string by taking some
16282	text from `setq'.
16283
162842019-10-10  Jordon Biondo  <jordonbiondo@gmail.com>
16285
16286	Allow setq-local to set more than one variable
16287
16288	* lisp/subr.el (setq-local): Allow taking pairs of values (bug#26923).
16289
162902019-10-10  Lars Ingebrigtsen  <larsi@gnus.org>
16291
16292	Remove two checkdoc tests checked in by mistake
16293
16294	* test/lisp/emacs-lisp/checkdoc-tests.el: Remove &aux and &context
16295	checks mistakenly checked in (as these aren't implemented) (bug#37697).
16296
162972019-10-10  Stefan Kangas  <stefankangas@gmail.com>
16298
16299	Change font size in correct window using mouse wheel
16300
16301	* lisp/mwheel.el (mouse-wheel-follow-mouse): Doc fix.
16302	(mouse-wheel--get-scroll-window): New function extracted from...
16303	(mwheel-scroll): ...here.
16304	(mouse-wheel-text-scale): New function to change face height in
16305	the correct window, depending on the value of
16306	'mouse-wheel-follows-mouse'.  (Bug#28182)
16307	(mouse-wheel-mode): Bind 'mouse-wheel-text-scale' instead of
16308	'text-scale-increase' and 'text-scale-decrease'.
16309
163102019-10-10  Juri Linkov  <juri@linkov.net>
16311
16312	* lisp/subr.el (ctl-x-t-prefix): Bind new alias or ctl-x-6-map to 'C-x t'.
16313
163142019-10-10  Stefan Monnier  <monnier@iro.umontreal.ca>
16315
16316	* lisp/tree-widget.el: Use lexical-binding
16317
16318	Remove redundant `:group`s.
16319	(tree-widget--locate-sub-directory): Rewrite.
16320
163212019-10-10  Andreas Schwab  <schwab@linux-m68k.org>
16322
16323	* lisp/progmodes/compile.el
16324	(compilation-transform-file-match-alist): Remove bogus Makefile match.
16325
163262019-10-10  Stephen Gildea  <stepheng+emacs@gildea.com>
16327
16328	Remove tabs from time-stamp-format documentation
16329
16330	* lisp/time-stamp.el (time-stamp-format): Untabify the doc string, so
16331	the two-column layout displays consistently in several contexts,
16332	in particular when displayed by customize-variable.
16333
163342019-10-10  Eli Zaretskii  <eliz@gnu.org>
16335
16336	Fix initial value of frame-inhibit-implied-resize
16337
16338	* src/frame.c (syms_of_frame): Update doc string and default
16339	value of frame-inhibit-implied-resize in GTK builds to include
16340	'tab-bar-lines.
16341
163422019-10-10  Paul Eggert  <eggert@cs.ucla.edu>
16343
16344	Port time-stamp-test-time-zone to macOS
16345
16346	Problem reported by Stefan Kangas in:
16347	https://lists.gnu.org/r/emacs-devel/2019-10/msg00360.html
16348	* test/lisp/time-stamp-tests.el (time-stamp-test-time-zone):
16349	Don’t assume (format-time-string "%Z" 0 t) returns "GMT".
16350
163512019-10-09  Juanma Barranquero  <lekktu@gmail.com>
16352
16353	identity, ignore: Make arg names more consistent with docs
16354
16355	* lisp/subr.el (ignore): Rename argument IGNORE to ARGUMENTS.
16356
16357	* src/fns.c (Fidentity): Rename ARG to ARGUMENT.
16358
16359	* doc/lispref/functions.texi (Calling Functions): Fix references.
16360
163612019-10-09  Damien Cassou  <damien@cassou.me>
16362
16363	checkdoc CL tests
16364
16365	* test/lisp/emacs-lisp/checkdoc-tests.el: Add cl-lib-related tests
16366	(bug#37063).
16367
163682019-10-09  dick r. chiang  <dick.r.chiang@gmail.com>  (tiny change)
16369
16370	Make checkdoc work better with cl-lib functions
16371
16372	* lisp/emacs-lisp/checkdoc.el (checkdoc-defun-info): Make checkdoc
16373	work for cl-lib methods with more complex parameter lists
16374	(bug#37063).
16375
163762019-10-09  Lars Ingebrigtsen  <larsi@gnus.org>
16377
16378	Fix formatting of (file-size-human-readable 2047)
16379
16380	* lisp/files.el (file-size-human-readable): Don't format
16381	slightly-less numbers as X.0k, but just Xk instead (bug#36329).
16382
163832019-10-09  Lars Ingebrigtsen  <larsi@gnus.org>
16384
16385	Work around bad interaction between dired-omit-mode and recover-session
16386
16387	* lisp/files.el (recover-session): Add ugly hack to try to ensure
16388	that we're actually showing the session files (bug#36223).
16389
163902019-10-09  Lars Ingebrigtsen  <larsi@gnus.org>
16391
16392	Allow filtering out warnings/errors from compile.el detection
16393
16394	* lisp/progmodes/compile.el
16395	(compilation-transform-file-match-alist): New variable (bug#32968).
16396	(compilation-error-properties): Use it to remove known false
16397	positives.
16398	(compilation-error-regexp-alist): Mention it in this doc string.
16399
164002019-10-09  Lars Ingebrigtsen  <larsi@gnus.org>
16401
16402	Clarify documentation of show-help-function slightly
16403
16404	* doc/lispref/text.texi (Special Properties): Clarify where the
16405	example in Tooltip mode is (bug#35392).
16406
164072019-10-09  Juri Linkov  <juri@linkov.net>
16408
16409	* lisp/tab-bar.el: Don't show window count for one window.
16410
16411	* lisp/tab-bar.el (tab-bar-tab-name-selected-window): Don't show the number
16412	of windows when there is only one window in the window configuration.
16413	(tab-bar-close-other-tabs): Rename from tab-close-other.
16414	Take into account tab-bar-show to turn off when needed.
16415	(tab-close-other): Alias to tab-bar-close-other-tabs.
16416
164172019-10-09  Lars Ingebrigtsen  <larsi@gnus.org>
16418
16419	Fix nnimap tick/readedness thinko introduced some weeks back
16420
16421	* lisp/gnus/nnimap.el (nnimap-request-set-mark): Fix thinko in the
16422	tick/read change: Unticking a message shouldn't make it unread,
16423	but ticking it should make it read.
16424
164252019-10-09  Lars Ingebrigtsen  <larsi@gnus.org>
16426
16427	Make mml-secure-epg-sign bug out if we can't find an identity
16428
16429	* lisp/gnus/mml-sec.el (mml-secure-epg-sign): Bug out if we
16430	couldn't find anything to sign with instead of silently pretending
16431	to sign.
16432	* lisp/gnus/mml-smime.el (mml-smime-epg-sign): Don't bind
16433	inhibit-display because that makes debugging impossible.
16434
164352019-10-09  Stefan Kangas  <stefankangas@gmail.com>
16436
16437	Remove XEmacs compat code from edt.el (Bug#37621)
16438
16439	* lisp/emulation/edt.el (top-level, edt-emacs-variant)
16440	(edt-window-system, edt-xserver, edt-page-backward)
16441	(edt-beginning-of-line, edt-end-of-line-forward)
16442	(edt-end-of-line-backward, edt-one-word-forward)
16443	(edt-one-word-backward, edt-character, edt-line-forward)
16444	(edt-next-line, edt-previous-line, edt-top, edt-find-forward)
16445	(edt-find-backward, edt-find-next-forward)
16446	(edt-find-next-backward, edt-reset, edt-advance, edt-backup)
16447	(edt-define-key, edt-bottom-check, edt-sentence-forward)
16448	(edt-sentence-backward, edt-paragraph-forward)
16449	(edt-paragraph-backward, edt-restore-key, edt-window-top)
16450	(edt-window-bottom, edt-scroll-window-backward-line)
16451	(edt-line-to-bottom-of-window, edt-line-to-middle-of-window)
16452	(edt-goto-percentage, edt-display-the-time, edt-remember)
16453	(edt-split-window, edt-load-keys, edt-emulation-on)
16454	(edt-emulation-off, edt-default-emulation-setup)
16455	(edt-user-emulation-setup, edt-select-default-global-map)
16456	(edt-select-user-global-map): Remove XEmacs compat code.
16457
164582019-10-09  Lars Ingebrigtsen  <larsi@gnus.org>
16459
16460	Move the "Skeleton Language" node to later in the manual
16461
16462	* doc/misc/autotype.texi (Skeleton Language): Move this low-level
16463	node to after the more user-facing nodes (bug#20780).
16464
164652019-10-09  Lars Ingebrigtsen  <larsi@gnus.org>
16466
16467	Add a letrec example to the manuel
16468
16469	* doc/lispref/variables.texi (Local Variables): Add a letrec example.
16470
164712019-10-09  Lars Ingebrigtsen  <larsi@gnus.org>
16472
16473	Tweak letrec documentation
16474
16475	* doc/lispref/variables.texi (Local Variables): Compare letrec to
16476	let* instead of let.
16477
164782019-10-09  Stephen Gildea  <stepheng+git-config-global@gildea.com>
16479
16480	time-stamp: revert recent change to "%04y"
16481
16482	* lisp/time-stamp.el (time-stamp-string-preprocess): Revert change to "%04y"
16483	format made 2 weeks ago by commit 0e56883878 (the previous commit to
16484	this file).  Although undocumented, "%04y" was discovered to be in use
16485	in the wild (2016) and had not issued a warning that it would change.
16486	Add a warning that it will change.
16487
16488	* test/lisp/time-stamp-tests.el (time-stamp-test-year-2digit): add test of "%04y"
16489
164902019-10-09  Simen Heggestøyl  <simenheg@gmail.com>
16491
16492	Warn about missing executables in RST PDF preview
16493
16494	* lisp/textmodes/rst.el (rst-compile-pdf-preview): Warn about missing
16495	executables when attempting to compile and preview an RST file as PDF.
16496	(Bug#30063)
16497
164982019-10-09  Stephen Gildea  <stepheng+savannah@gildea.com>
16499
16500	Expand testing of time-stamp format "%y"
16501
16502	* test/lisp/time-stamp-tests.el (time-stamp-test-year): break into two tests,
16503	time-stamp-test-year-2digit and time-stamp-test-year-4digit.  Expand
16504	time-stamp-test-year-2digit to look more like tests for other 2-digit
16505	conversions.
16506
165072019-10-09  Juanma Barranquero  <lekktu@gmail.com>
16508
16509	Silence compiler warning
16510
16511	* src/w32.c (acl_to_text): Add ATTRIBUTE_MALLOC.
16512
165132019-10-09  Robert Pluim  <rpluim@gmail.com>
16514
16515	Expand documentation on Lisp variables defined in C sources
16516
16517	* doc/lispref/internals.texi (Writing Emacs Primitives): Add
16518	description of DEFVAR_* arguments.  Describe variable naming
16519	conventions.  Explain how to express quoting of symbols in C, plus
16520	'specbind' and how to create buffer-local variables.
16521
165222019-10-09  Michael Albinus  <michael.albinus@gmx.de>
16523
16524	* doc/misc/tramp.texi (Remote shell setup): Howto configure local shell.
16525
165262019-10-09  Michael Albinus  <michael.albinus@gmx.de>
16527
16528	Support zsh as local shell in Tramp (Bug#31924)
16529
16530	* lisp/net/tramp-sh.el (tramp-sh-extra-args): Extend zsh
16531	arguments.  Add :version.
16532	(tramp-maybe-open-connection): Use extra args for
16533	`tramp-encoding-shell'.  (Bug#31924)
16534
165352019-10-09  Juanma Barranquero  <lekktu@gmail.com>
16536
16537	Implement offsets for absolute line numbers
16538
16539	* src/xdisp.c (syms_of_xdisp) <display-line-numbers-offset>:
16540	New variable to add an offset to absolute line numbers.
16541	(syms_of_xdisp) <display-line-numbers>: Mention it in docstring.
16542	(maybe_produce_line_number): Use it.
16543
16544	* doc/emacs/display.texi (Display Custom): Document it.
16545
16546	* etc/NEWS (value): Announce it.
16547
16548	* lisp/frame.el: Add `display-line-numbers-offset' to list of
16549	variables which should trigger redisplay of the current buffer.
16550
165512019-10-09  Juanma Barranquero  <lekktu@gmail.com>
16552
16553	Do not use tick faces beyond ZV (bug#37641)
16554
16555	* src/xdisp.c (maybe_produce_line_number): Check beyond_zv
16556	before using a tick face for the line number.  Move all face
16557	selection code outside the loop that draws the line number.
16558
165592019-10-09  Eli Zaretskii  <eliz@gnu.org>
16560
16561	Improve doc strings in replace.el
16562
16563	* lisp/replace.el (query-replace-read-from)
16564	(query-replace-compile-replacement, query-replace-read-to)
16565	(replace-string, replace-regexp, occur-mode-goto-occurrence)
16566	(occur-next-error, occur-rename-buffer, multi-occur)
16567	(multi-occur-in-matching-buffers): Describe all arguments in
16568	doc strings.  (Bug#31207)
16569
165702019-10-09  Eli Zaretskii  <eliz@gnu.org>
16571
16572	Fix minor Texinfo errors in ELisp manual
16573
16574	* doc/lispref/errors.texi (Standard Errors): Fix incorrect
16575	usage of @xref commands.  (Bug#37660)
16576	* doc/lispref/internals.texi (Buffer Internals): Fix markup.
16577	(Bug#37639)
16578
165792019-10-09  Lars Ingebrigtsen  <larsi@gnus.org>
16580
16581	Ensure that the pulse overlay is visible
16582
16583	* lisp/cedet/pulse.el (pulse-momentary-highlight-overlay): Make
16584	the pulse overlay have priority over the marked-region overlay
16585	(bug#29173).
16586
165872019-10-09  Lars Ingebrigtsen  <larsi@gnus.org>
16588
16589	Protect against unlikely case of [menu-bar] not being bound
16590
16591	* lisp/recentf.el (recentf-show-menu):
16592	(recentf-hide-menu): The [menu-bar] key may be unbound (bug#25191).
16593
165942019-10-09  Lars Ingebrigtsen  <larsi@gnus.org>
16595
16596	Add some sanity checks to dired-x.el key bindings
16597
16598	* lisp/dired-x.el: Ensure that prefix keys haven't be rebound to
16599	commands before adding keystrokes (bug#25190).
16600
166012019-10-09  Lars Ingebrigtsen  <larsi@gnus.org>
16602
16603	Allow global-edebug-prefix to be nil
16604
16605	* lisp/emacs-lisp/edebug.el (global-edebug-prefix): Allow
16606	global-edebug-prefix to be nil (if the user doesn't want that
16607	prefix) (bug#25188).
16608
166092019-10-09  Lars Ingebrigtsen  <larsi@gnus.org>
16610
16611	Fix possible initialisation error in shell-mode-map
16612
16613	* lisp/shell.el (shell-mode-map): Comint is the parent mode, so
16614	there's no need to explicitly make it a parent map here (bug#25187).
16615
166162019-10-09  Lars Ingebrigtsen  <larsi@gnus.org>
16617
16618	Upcase parameters in things like "&optional (arg 3)"
16619
16620	* lisp/help.el (help--make-usage): Upcase cl-defgeneric (etc)
16621	parameter names (bug#23517).
16622
166232019-10-08  Lars Ingebrigtsen  <larsi@gnus.org>
16624
16625	Bury the help buffer after sending a bug report
16626
16627	* lisp/mail/emacsbug.el (report-emacs-bug-hook): Bury the help
16628	buffer after sending the bug report (bug#22712).
16629
166302019-10-08  Hong Xu  <hong@topbug.net>
16631
16632	Fix up previous visit-tags-table change
16633
16634	* lisp/progmodes/etags.el (visit-tags-table): Reimplement
16635	`tags--find-default-tags-dir-recursively' using the much simpler
16636	`locate-dominating-file'. Following up bug#37518.
16637
166382019-10-08  Lars Ingebrigtsen  <larsi@gnus.org>
16639
16640	Move point in the dired buffer with `n'/`p' in an image-mode buffer
16641
16642	* lisp/image-mode.el (image-next-file): If the image is in a dired
16643	buffer, then move point in that buffer when advancing
16644	(bug#21752).  This makes it easier to select images.
16645
166462019-10-08  Juanma Barranquero  <lekktu@gmail.com>
16647
16648	Fix typos in lisp/*.el
16649
16650	* lisp/emacs-lisp/generator.el (cps--with-value-wrapper)
16651	(cps-inhibit-atomic-optimization, iter-close):
16652	* lisp/gnus/nnir.el (nnir-imap-search-arguments)
16653	(nnir-imap-search-argument-history, nnir-categorize)
16654	(nnir-ignored-newsgroups)
16655	(nnir-retrieve-headers-override-function)
16656	(nnir-imap-default-search-key, nnir-namazu-additional-switches)
16657	(gnus-group-make-nnir-group, nnir-add-result)
16658	(nnir-compose-result, nnir-run-imap, nnir-imap-make-query)
16659	(nnir-imap-query-to-imap, nnir-imap-expr-to-imap)
16660	(nnir-imap-next-term, nnir-run-swish-e, nnir-run-namazu)
16661	(nnir-read-parm, nnir-read-server-parm, nnir-search-thread):
16662	Trivial doc fixes.
16663
166642019-10-08  Lars Ingebrigtsen  <larsi@gnus.org>
16665
16666	Document `letrec'
16667
16668	* doc/lispref/variables.texi (Local Variables): Document letrec
16669	(bug#21048).
16670
16671	* lisp/subr.el (letrec): Expand the doc string slightly.
16672
166732019-10-08  Lars Ingebrigtsen  <larsi@gnus.org>
16674
16675	Make menu bar entries only point to named functions, not lambdas
16676
16677	* lisp/menu-bar.el ()
16678	(menu-bar--display-line-numbers-mode-visual)
16679	(menu-bar--display-line-numbers-mode-relative)
16680	(menu-bar--display-line-numbers-mode-absolute)
16681	(menu-bar--display-line-numbers-mode-none)
16682	(menu-bar--visual-line-mode-enable)
16683	(menu-bar--toggle-truncate-long-lines)
16684	(menu-bar--wrap-long-lines-window-edge): Make lambdas into trivial
16685	wrapper functions so that `C-h k' on the menu items work (bug#13841).
16686	(menu-bar-showhide-line-numbers-menu)
16687	(menu-bar-line-wrapping-menu): Use them.
16688
166892019-10-08  Lars Ingebrigtsen  <larsi@gnus.org>
16690
16691	Add more sanity checks to help-fns--globalized-minor-mode
16692
16693	* lisp/help-fns.el (help-fns--globalized-minor-mode): FUNCTION can
16694	be a lambda, so protect against that.
16695
166962019-10-08  Lars Ingebrigtsen  <larsi@gnus.org>
16697
16698	Make add-face-text-property not be destructive on strings
16699
16700	* src/textprop.c (add_properties): Take a parameter to say whether
16701	it's allowed to be destructive or not (bug#20153).
16702	(add_text_properties_1): Ditto.
16703	(Fadd_face_text_property): Use this to say that it shouldn't
16704	modify face properties on strings destructively.  This avoids
16705	altering the face properties of one string when altering them on a
16706	copy of the string.
16707
167082019-10-08  Lars Ingebrigtsen  <larsi@gnus.org>
16709
16710	Make `info-display-manual' pop up the correct frame
16711
16712	* lisp/info.el (info-display-manual): If the buffer is already in
16713	a window, use that window (bug#20020).
16714
167152019-10-08  Lars Ingebrigtsen  <larsi@gnus.org>
16716
16717	Make a nil parameter switch variable-pitch-mode on
16718
16719	* lisp/face-remap.el (variable-pitch-mode): Make a nil parameter
16720	switch the mode on instead of toggling (bug#19384).
16721
167222019-10-08  Lars Ingebrigtsen  <larsi@gnus.org>
16723
16724	Remove XEmacs compat code from prolog.el
16725
16726	* lisp/progmodes/prolog.el (prolog-mode-syntax-table)
16727	(prolog-help-info, prolog-Info-follow-nearest-node)
16728	(prolog-menu-help, prolog-edit-menu-runtime)
16729	(prolog-inferior-menu-all): Remove XEmacs compat code.
16730
167312019-10-08  Lars Ingebrigtsen  <larsi@gnus.org>
16732
16733	Remove some XEmacs compat code from tree-widget.el
16734
16735	* lisp/tree-widget.el (tree-widget-themes-load-path)
16736	(tree-widget-use-image-p, tree-widget-create-image)
16737	(tree-widget-image-formats, tree-widget-image-properties)
16738	(tree-widget-lookup-image): Remove XEmacs compat code.
16739
167402019-10-08  Lars Ingebrigtsen  <larsi@gnus.org>
16741
16742	Remove some XEmacs compat code from newst*.el
16743
16744	* lisp/net/newst-plainview.el
16745	(newsticker--plainview-tool-bar-map): Remove XEmacs support.
16746
16747	* lisp/net/newst-treeview.el (newsticker-treeview-tool-bar-map):
16748
167492019-10-08  Federico Tedin  <federicotedin@gmail.com>
16750
16751	Filter packages by name in list-packages. (Bug#36981)
16752
16753	* lisp/emacs-lisp/package.el (package-menu-filter-by-name): New
16754	function to filter packages by name.
16755	(package-menu-clear-filter): New function to clear applied filters.
16756	(package-menu-filter-by-keyword): Rename function from
16757	package-menu-filter.
16758	(package-menu--generate): Don't change 'q' binding anymore.
16759	(package-menu-mode-map): Bind '/ n' to package-menu-filter-by-name, '/
16760	k' to package-menu-filter-by-keyword and '/ /' to
16761	package-menu-clear-filter.
16762	(package-menu-mode-menu): Update menu entries for the three functions.
16763	* test/lisp/emacs-lisp/package-tests.el (package-test-list-filter-by-name)
16764	(package-test-list-clear-filter): New tests.
16765	* doc/emacs/package.texi: Document usage of
16766	package-menu-filter-by-name, package-menu-clear-filter and update
16767	reference to package-menu-filter-by-keyword.
16768	* etc/NEWS: Announce changes.
16769
167702019-10-08  Hong Xu  <hong@topbug.net>
16771
16772	Search upward from current dir for the default TAGS file
16773
16774	* doc/emacs/maintaining.texi (Select Tags Table): Update the doc
16775	of `visit-tags-table' (bug#37518).
16776	* lisp/progmodes/etags.el (tags--find-default-tags-dir-recursively)
16777	(visit-tags-table): Search upward from current dir for the default
16778	TAGS file.
16779
167802019-10-08  Stefan Kangas  <stefankangas@gmail.com>
16781
16782	Fix title inconsistencies in elisp intro book
16783
16784	* doc/lispintro/emacs-lisp-intro.texi: Fix title
16785	inconsistencies.  (Bug#31037)
16786
167872019-10-08  Stefan Kangas  <stefankangas@gmail.com>
16788
16789	Add some more commands to eshell-visual-commands
16790
16791	* lisp/eshell/em-term.el (eshell-visual-commands): Add some more
16792	commonly used commands.
16793
167942019-10-08  Eli Zaretskii  <eliz@gnu.org>
16795
16796	Fix crashes on TTY frames due to "C-x 6 f"
16797
16798	* src/xdisp.c (redisplay_internal): Revert the recent change
16799	regarding TTY frames' garbaged flag.  It is not needed.
16800
16801	* src/dispnew.c (adjust_frame_glyphs_for_frame_redisplay):
16802	When returning due to mismatch between the desired and actual
16803	dimensions of the glyph matrix, set the frame's garbaged flag
16804	for TTY frames.  This avoids crashes when we are later called
16805	from redisplay.  Reported by Ergus <spacibba@aol.com>.
16806
168072019-10-08  Michael Albinus  <michael.albinus@gmx.de>
16808
16809	* etc/PROBLEMS: Describe navigation problem from Nautilus.  (Bug#37573)
16810
16811	* lisp/userlock.el (create-lockfiles): Set `safe-local-variable' property.
16812
168132019-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
16814
16815	* lisp/emacs-lisp/package.el (package--get-deps): Fix thinko
16816
16817	* test/lisp/emacs-lisp/package-tests.el (package-test-get-deps):
16818	Adjust test to new calling convention.
16819
168202019-10-08  Eli Zaretskii  <eliz@gnu.org>
16821
16822	Fix aborts when opening a new font after face-cache reset
16823
16824	* src/font.c (font_open_for_lface): Make sure the default face
16825	is realized before using its height for the font to be open.
16826	(Bug#37637)
16827
168282019-10-08  Michael Albinus  <michael.albinus@gmx.de>
16829
16830	* INSTALL: Describe installation of source and debug packages.  (Bug#37527)
16831
168322019-10-07  Juanma Barranquero  <lekktu@gmail.com>
16833
16834	Set default colors for tick faces
16835
16836	* lisp/faces.el (line-number-major-tick, line-number-minor-tick):
16837	Set default color different from `line-number' so after customizing
16838	the tick number variables, the ticks are immediately visible.
16839	Suggested by Juri Linkov <juri@linkov.net>.
16840
168412019-10-07  Basil L. Contovounesios  <contovob@tcd.ie>
16842
16843	Clarify docs on newline and auto-fill-mode
16844
16845	* doc/lispref/text.texi (Commands for Insertion):
16846	* lisp/simple.el (newline): Do not mention conditions specific to
16847	'do-auto-fill' under documentation of 'newline' (bug#36702).
16848
168492019-10-07  Juri Linkov  <juri@linkov.net>
16850
16851	* lisp/tab-bar.el (tab-bar-tab-name-function): Turn defvar into defcustom.
16852
16853	(tab-bar-tab-name-all-windows): Rename from tab-bar-tab-name.
16854	(tab-bar-tab-name-selected-window): New function used by default.
16855
168562019-10-07  Stefan Kangas  <stefankangas@gmail.com>
16857
16858	Add "python3 -m twine" example to comint-password-prompt tests
16859
16860	* test/lisp/comint-tests.el (comint-testsuite-password-strings): Add
16861	new example for "python3 -m twine" to test suite.  (Bug#37636)
16862
168632019-10-07  Eli Zaretskii  <eliz@gnu.org>
16864
16865	Fix a crash in TTY sessions caused by recent changes
16866
16867	* src/xdisp.c (redisplay_internal): Fix crashes in TTY
16868	sessions when turning on tab-mode.
16869	Reported by Ergus <spacibba@aol.com>.
16870
168712019-10-07  Lars Ingebrigtsen  <larsi@gnus.org>
16872
16873	Use text properties instead of truncating strings
16874
16875	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag): Use
16876	this to allow using commands like `C-s' to search for even
16877	truncated bits.
16878
16879	* lisp/international/mule-util.el (truncate-string-to-width):
16880	Allow using text properties to truncate strings instead of
16881	actually truncating strings (bug#17782).
16882
168832019-10-07  Lars Ingebrigtsen  <larsi@gnus.org>
16884
16885	dired-move-to-filename doc string fix
16886
16887	* lisp/dired.el (dired-move-to-filename): Document the parameters
16888	(bug#17566).
16889
168902019-10-07  Basil L. Contovounesios  <contovob@tcd.ie>
16891
16892	Improve recent doc fix for cl-reduce
16893
16894	* lisp/emacs-lisp/cl-seq.el: (cl-reduce): Clarify treatment of
16895	:INITIAL-VALUE when :FROM-END is non-nil.  Improve wording when SEQ
16896	is empty and :INITIAL-VALUE is unspecified (bug#37400).  Describe
16897	behavior when SEQ comprises a single element.
16898
168992019-10-07  Lars Ingebrigtsen  <larsi@gnus.org>
16900
16901	Make completion in the `E' command in *Ibuffer* work
16902
16903	* lisp/ibuf-ext.el (eval): Make completion (etc) work as normal
16904	(bug#16239).
16905
169062019-10-07  Eli Zaretskii  <eliz@gnu.org>
16907
16908	Fix infloop in redisplay caused by a recent change
16909
16910	* src/xdisp.c (redisplay_internal): Avoid inflooping due to a
16911	frame's garbaged flag being set after update_frame.  Reported
16912	by Michael Heerdegen <michael_heerdegen@web.de>.
16913
169142019-10-07  Lars Ingebrigtsen  <larsi@gnus.org>
16915
16916	Feval_buffer doc string lexical-binding clarification
16917
16918	* src/lread.c (Feval_buffer): Mention that the lexical-binding
16919	variable is ignored in the doc string (bug#20139).
16920
169212019-10-07  Lars Ingebrigtsen  <larsi@gnus.org>
16922
16923	Make ido-display-buffer work interactively more like display-buffer
16924
16925	* lisp/ido.el (ido-display-buffer): Take an interactive parameter,
16926	like `display-buffer' (bug#14904).
16927	(ido-visit-buffer): Use it to emulate `C-u M-x display-buffer'.
16928
169292019-10-07  Leo Liu  <sdl.web@gmail.com>
16930
16931	Fix rcirc not to interpret nil as nickname (bug#37344)
16932
16933	* lisp/net/rcirc.el (rcirc-send-privmsg): Type check `target'.
16934	(rcirc-cmd-me): Send CTCP only when `target' exists.
16935
169362019-10-07  Stefan Kangas  <stefankangas@gmail.com>
16937
16938	Quadruple term-buffer-maximum-size (Bug#37584)
16939
16940	* lisp/term.el (term-buffer-maximum-size): Quadruple to 8192.
16941
169422019-10-06  Wolfgang Scherer  <wolfgang.scherer@gmx.de>
16943
16944	Set correct svn:ignore property for relative filenames
16945
16946	* lisp/vc/vc-svn.el: (vc-svn-ignore) Use svn:ignore property of
16947	immediate parent directory for wildcard specification (bug#37216).
16948
169492019-10-06  Paul Eggert  <eggert@cs.ucla.edu>
16950
16951	Fix port of file-acl errno checking to non-GNU
16952
16953	I had misinterpreted the private email from Ashish Shukla.
16954	* src/fileio.c (Ffile_acl): Fix typo in previous change
16955	by negating the call to acl_errno_valid.
16956
169572019-10-06  Lars Ingebrigtsen  <larsi@gnus.org>
16958
16959	Fix the colours on Motif horizontal scroll bars
16960
16961	* src/xterm.c (x_create_horizontal_toolkit_scroll_bar): Use the
16962	same foreground/background colours as the vertical scroll bar
16963	(bug#37359).
16964
169652019-10-06  Lars Ingebrigtsen  <larsi@gnus.org>
16966
16967	cl-reduce doc fix
16968
16969	* lisp/emacs-lisp/cl-seq.el (cl-reduce): Clarify what happens when
16970	SEQ is the empty list (bug#37400).
16971
169722019-10-06  Hong Xu  <hong@topbug.net>
16973
16974	tags-complete-tags-table-file doc string fix
16975
16976	* lisp/progmodes/etags.el (tags-complete-tags-table-file): Doc
16977	string fix (bug#37538).
16978
169792019-10-06  Hong Xu  <hong@topbug.net>
16980
16981	Default FILE to the current buffer for list-tags
16982
16983	* doc/emacs/maintaining.texi (List Identifiers): Update
16984	`list-tags' doc (bug#37611).
16985	* lisp/progmodes/etags.el (list-tags)
16986	(tags--get-current-buffer-name-in-tags-file): Default FILE to the
16987	current buffer for list-tags.
16988
169892019-10-06  Lars Ingebrigtsen  <larsi@gnus.org>
16990
16991	Make mailcap-prefer-mailcap-viewers work as documented
16992
16993	* lisp/emacs-lisp/seq.el (seq-find): Autoload.
16994
16995	* lisp/net/mailcap.el (mailcap-parse-mailcaps): Note where all the
16996	entries come from so that we can later distinguish between user
16997	values and system values (bug#36771).
16998	(mailcap-parse-mailcap): Take a source parameter.
16999	(mailcap-possible-viewers): No need to sort wildcards/exact
17000	matches; these are later sorted anyway.
17001	(mailcap-add-mailcap-entry): Remove `after' parameter.
17002	(mailcap-mime-info): Make mailcap-prefer-mailcap-viewers work as
17003	documented.
17004
170052019-10-06  Mauro Aranda  <maurooaranda@gmail.com>
17006
17007	Only complete words inside of the string widget
17008
17009	* lisp/wid-edit.el ('string widget): Peek the word that
17010	ispell-complete-word will try to complete, and only offer completions
17011	when the word is inside of the field (bug#11046).
17012
170132019-10-06  Mauro Aranda  <maurooaranda@gmail.com>
17014
17015	Fix message when no completions available for editable field
17016
17017	* lisp/wid-edit.el (widget-completions-at-point): Detect here if point
17018	is not in an editable field.
17019	(widget-complete): And here say there are no completions available
17020	(bug#11562).
17021
170222019-10-06  Juri Linkov  <juri@linkov.net>
17023
17024	Allow using last_tab_bar_item on no-x builds.
17025
17026	* src/frame.h (struct frame): Remove HAVE_WINDOW_SYSTEM
17027	around last_tab_bar_item.
17028
170292019-10-06  Juri Linkov  <juri@linkov.net>
17030
17031	Implement tab-close-other bound to C-x 6 1 by analogy with C-x 5 1.
17032
17033	* lisp/tab-bar.el (tab-close-other): New command bound to C-x 6 1.
17034
17035	* doc/emacs/frames.texi (Tab Bars): Document it.
17036
170372019-10-06  Juri Linkov  <juri@linkov.net>
17038
17039	Use tabs in EWW (bug#37592)
17040
17041	* lisp/net/eww.el (eww-open-in-new-buffer): Call tab-new when tab-bar-mode
17042	is enabled.
17043	(eww-browse-url): Add docstring.  Call tab-new when tab-bar-mode
17044	is enabled.
17045
17046	* lisp/net/shr.el (shr-map): Bind [C-down-mouse-1] to
17047	shr-mouse-browse-url-new-window.
17048	(shr-mouse-browse-url-new-window): New command.
17049	(shr-browse-url): Add optional arg new-window.
17050
17051	* doc/misc/eww.texi (Basics): Mention opening tabs on M-RET.
17052
170532019-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17054
17055	* lisp/emacs-lisp/eieio-core.el (eieio--full-class-object): New function.
17056
17057	Rather than explicitly call eieio-class-un-autoload, the autoloading is
17058	now performed on-demand if you use eieio--full-class-object.
17059
17060	* lisp/emacs-lisp/eieio-core.el (eieio-class-un-autoload): Remove.
17061	(eieio--full-class-object): New function, to replace it.
17062	(eieio-oref, eieio--class-precedence-list):
17063	* lisp/emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
17064	Use it instead of eieio-class-un-autoload.
17065	* lisp/emacs-lisp/eieio.el (eieio-class-parents, child-of-class-p):
17066	Load the class if needed.
17067
170682019-10-06  Stefan Kangas  <stefankangas@gmail.com>
17069
17070	Support changing font size using mouse wheel
17071
17072	* lisp/mwheel.el (mouse-wheel-mode): Support changing font size (text
17073	scaling) using mouse wheel.  (Bug#28182)
17074	(mouse-wheel-scroll-amount): Bind the Ctrl modifier to text scaling.
17075	(mwheel-installed-text-scale-bindings): New variable.
17076	(mouse-wheel--remove-bindings): New helper function for
17077	'mouse-wheel-mode'.
17078
17079	* doc/emacs/frames.texi (Mouse Commands): Document this feature.
17080	* etc/NEWS: Announce it.
17081
170822019-10-06  Juanma Barranquero  <lekktu@gmail.com>
17083
17084	Set alternate faces for some line numbers (bug#27734)
17085
17086	* lisp/faces.el (line-number-major-tick, line-number-minor-tick):
17087	New faces.
17088	* lisp/cus-start.el (display-line-numbers-major-tick)
17089	(display-line-numbers-minor-tick): Add customization info.
17090	* lisp/frame.el: Add `display-line-numbers-major-tick' and
17091	`display-line-numbers-minor-tick' to list of variables which
17092	should trigger redisplay of the current buffer.
17093
17094	* src/xdisp.c (syms_of_xdisp) <display-line-numbers-major-tick>
17095	<display-line-numbers-major-tick>: Defvar new options.
17096	(syms_of_xdisp) <line-number-major-tick, line-number-minor-tick>:
17097	Defsym new faces.
17098	(maybe_produce_line_number): Use new faces for line numbers
17099	that are multiple of `display-line-numbers-major-tick' and
17100	`display-line-numbers-minor-tick'.
17101
17102	* etc/NEWS (value): Announce new feature.
17103	* doc/emacs/display.texi (Display Custom): Describe it.  Wording by
17104	Robert Pluim <rpluim@gmail.com>
17105
171062019-10-06  Juri Linkov  <juri@linkov.net>
17107
17108	Don't bind 'C-x 6' to '2C-mode-map' globally by default.
17109
17110	* lisp/textmodes/two-column.el: Don't autoload global setting of
17111	"\C-x6" to 2C-command.
17112
17113	* lisp/ldefs-boot.el: Update to remove setting "\C-x6" to 2C-command.
17114
17115	* doc/emacs/commands.texi (Keys):
17116	* doc/emacs/text.texi (Two-Column):
17117	* doc/lispref/keymaps.texi (Prefix Keys):
17118	* doc/lispref/maps.texi (Standard Keymaps):
17119	Unbind 'C-x 6' from '2C-mode-map'.
17120
171212019-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17122
17123	* lisp/emacs-lisp/package.el (package--get-deps): Rewrite.
17124
17125	Avoid inf-recursion with dependency cycles.
17126	Remove unused `only` arg.  Prune duplicates early rather than late.
17127	(package--removable-packages): Simplify code accordingly.
17128
171292019-10-06  Paul Eggert  <eggert@cs.ucla.edu>
17130
17131	Port file-acl errno checking to non-GNU
17132
17133	Problem reported privately for FreeBSD 12 by Ashish Shukla.
17134	* src/fileio.c (Ffile_acl): Treat EINVAL etc. like ENOTSUP if
17135	acl_get_file fails, to port to FreeBSD 12 and other non-GNU
17136	platforms.
17137
171382019-10-06  Eli Zaretskii  <eliz@gnu.org>
17139
17140	Support mouse clicks on tab bar on TTY frames
17141
17142	This for now doesn't work on GPM.
17143	* src/xdisp.c (display_tab_bar): Make the loop over tab-bar
17144	items more efficient.
17145	(tab_bar_item_info, tool_bar_item_info): Correct data type for
17146	CHARPOS.
17147	(tty_get_tab_bar_item, tty_handle_tab_bar_click): New functions.
17148	(note_mouse_highlight): Handle help-echo of tab-bar tabs on
17149	TTY frames.
17150	* src/w32inevt.c (do_mouse_event): Call
17151	tty_handle_tab_bar_click to process mouse clicks on the tab bar.
17152	* src/termchar.h (tty_handle_tab_bar_click): Add prototype.
17153	* src/w32console.c (w32con_set_terminal_modes): Disable Quick
17154	Edit mode on entry, to make sure mouse events get reported to
17155	us.
17156
171572019-10-05  Paul Eggert  <eggert@cs.ucla.edu>
17158
17159	Fix off-by-one bug in ISO 8601 BC years
17160
17161	* lisp/calendar/iso8601.el (iso8601--year-match)
17162	(iso8601--full-date-match, iso8601--without-day-match)
17163	(iso8601--week-date-match, iso8601--ordinal-date-match)
17164	(iso8601-parse-date):
17165	Don’t bother to separate the year’s sign from the year,
17166	as that distinction is not needed: ISO 8601 uses
17167	astronomical year numbering with a year zero, which
17168	is what the Emacs time functions use, so there’s no
17169	need to treat nonpositive years specially.
17170	(iso8601--adjust-year): Remove; no longer needed
17171	since callers can just use string-to-number.
17172	* test/lisp/calendar/iso8601-tests.el (test-iso8601-date-years):
17173	Adjust test case to match fixed behavior.
17174
171752019-10-05  Paul Eggert  <eggert@cs.ucla.edu>
17176
17177	Improve documentation for year-zero issues
17178
17179	* doc/emacs/calendar.texi (Calendar Systems)
17180	* doc/lispref/os.texi (Time Conversion):
17181	Prefer "BC" to "B.C." since the documentation generally uses "BC".
17182	* doc/misc/emacs-mime.texi (time-date):
17183	* lisp/calendar/time-date.el (date-to-day, time-to-days):
17184	In the doc string, state the day origin more clearly, and more
17185	consistently with the rest of the documentation.
17186	* src/timefns.c (Fdecode_time): State the year origin in
17187	the doc string.
17188
171892019-10-05  Juri Linkov  <juri@linkov.net>
17190
17191	More tab bar related key bindings.
17192
17193	* lisp/subr.el (ctl-x-6-map, ctl-x-6-prefix): Move here from tab-bar.el
17194	to make it available to other modes like dired for 'C-x 6 d'.
17195
17196	* lisp/dired.el (dired-other-tab): New command bound to 'C-x 6 d'.
17197
17198	* lisp/tab-bar.el: Bind 'C-x 6 o' to tab-next.
17199
17200	* doc/emacs/frames.texi (Tab Bars): Describe C-x 6 prefix key bindings.
17201
172022019-10-05  Juri Linkov  <juri@linkov.net>
17203
17204	* lisp/tab-bar.el: In tab switching allow absolute and relative args.
17205
17206	* lisp/tab-bar.el (tab-bar-tab-hints): New defcustom.
17207	(tab-bar-make-keymap-1): Use tab-bar-tab-hints.
17208	(tab-bar--tab, tab-bar--current-tab, tab-bar--current-tab-index)
17209	(tab-bar--tab-index, tab-bar--tab-index-by-name): New internal functions.
17210	(tab-bar-select-tab): Use arg as absolute position of tab to select.
17211	(tab-bar-switch-to-next-tab, tab-bar-switch-to-prev-tab): Use arg
17212	as offset relative to the current tab.
17213	(tab-bar-switch-to-tab): New command.
17214	(tab-bar-new-tab): Simplify by using cl-pushnew.
17215	(tab-bar-close-current-tab): Remove (the current tab is closed
17216	by nil arg of tab-bar-close-tab).
17217	(tab-bar-close-tab): Use arg as absolute position of tab to close.
17218	(tab-bar-close-tab-by-name): New command.
17219
172202019-10-05  Artyom Loenko  <artyom.loenko@mac.com>  (tiny change)
17221
17222	Include new permission settings for macOS 10.15 (bug#37551)
17223
17224	* nextstep/templates/Info.plist.in
17225	(NSDesktopFolderUsageDescription):
17226	(NSDocumentsFolderUsageDescription):
17227	(NSDownloadsFolderUsageDescription):
17228	(NSRemovableVolumesUsageDescription): Add description to enable
17229	setting in macOS 10.15.
17230
172312019-10-05  Paul Smith  <psmith@gnu.org>
17232
17233	Support GNU make error messages in compile mode.
17234
17235	* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
17236	Match GNU make error messages.
17237	* test/lisp/progmodes/compile-tests.el (compile-tests--test-regexps-data):
17238	Test GNU make error message matching.
17239	(compile-test-error-regexps): Update count of infos found.
17240
172412019-10-05  Lars Ingebrigtsen  <larsi@gnus.org>
17242
17243	Remove some XEmacs compat code from the CEDET tests
17244
172452019-10-05  Lars Ingebrigtsen  <larsi@gnus.org>
17246
17247	Remove some XEmacs compat code from esh*.el
17248
17249	* lisp/eshell/esh-util.el: Remove some XEmacs compat functions.
17250
172512019-10-05  Lars Ingebrigtsen  <larsi@gnus.org>
17252
17253	Remove more XEmacs compat code from ezimage.el
17254
17255	* lisp/ezimage.el (ezimage-use-images)
17256	(ezimage-insert-over-text): Remove XEmacs compat code.
17257
172582019-10-05  Lars Ingebrigtsen  <larsi@gnus.org>
17259
17260	Fix typo in frames.texi xref
17261
17262	* doc/emacs/frames.texi (Tab Bars): Fix typo in xref.
17263
172642019-10-05  Lars Ingebrigtsen  <larsi@gnus.org>
17265
17266	Remove most of the XEmacs compat code from ediff*.el
17267
17268	* lisp/vc/ediff-diff.el (ediff-word-1): Remove XEmacs compat code
17269	and declare compatibility functions for obsolete.  Adjust all callers.
17270
17271	* lisp/vc/ediff-help.el (ediff-set-help-overlays):
17272
17273	* lisp/vc/ediff-hook.el:
17274	(menu-bar-ediff-misc-menu, menu-bar-ediff-merge-menu)
17275	(menu-bar-ediff-menu, menu-bar-ediff-merge-menu)
17276	(menu-bar-epatch-menu, menu-bar-ediff-misc-menu):
17277
17278	* lisp/vc/ediff-init.el (ediff-device-type)
17279	(ediff-window-display-p, ediff-has-face-support-p)
17280	(ediff-has-toolbar-support-p, ediff-has-gutter-support-p)
17281	(ediff-BAD-INFO, ediff-coding-system-for-write)
17282	(ediff-read-event, ediff-overlayp, ediff-make-overlay)
17283	(ediff-delete-overlay, ediff-color-display-p)
17284	(ediff-display-pixel-width, ediff-display-pixel-height)
17285	(ediff-region-help-echo, ediff-set-face-pixmap)
17286	(ediff-paint-background-regions-in-one-buffer)
17287	(ediff-clear-fine-diff-vector, ediff-mouse-event-p)
17288	(ediff-key-press-event-p, ediff-event-point, )
17289	(ediff-event-buffer, ediff-event-key, ediff-last-command-char)
17290	(ediff-frame-iconified-p, ediff-frame-char-width)
17291	(ediff-reset-mouse, ediff-frame-char-height)
17292	(ediff-overlay-start, ediff-overlay-end, ediff-overlay-buffer)
17293	(ediff-overlay-get, ediff-move-overlay, ediff-overlay-put)
17294	(ediff-abbreviate-file-name):
17295
17296	* lisp/vc/ediff-mult.el (ediff-next-meta-item)
17297	(ediff-previous-meta-item)
17298	(ediff-replace-session-activity-marker-in-meta-buffer)
17299	(ediff-replace-session-status-in-meta-buffer)
17300	(ediff-redraw-directory-group-buffer)
17301	(ediff-update-markers-in-dir-meta-buffer)
17302	(ediff-update-session-marker-in-dir-meta-buffer)
17303	(ediff-redraw-registry-buffer, ediff-set-meta-overlay)
17304	(ediff-update-meta-buffer, ediff-get-meta-info)
17305	(ediff-get-meta-overlay-at-pos, )
17306	(ediff-get-session-number-at-pos, )
17307	(ediff-next-meta-overlay-start)
17308	(ediff-previous-meta-overlay-start, )
17309	(ediff-meta-mark-equal-files):
17310
17311	* lisp/vc/ediff-util.el:
17312	(ediff-setup, ediff-setup-control-buffer, ediff-recenter)
17313	(ediff-recenter-one-window, ediff-toggle-read-only)
17314	(ediff-file-checked-out-p, ediff-file-checked-in-p)
17315	(ediff-toggle-wide-display, ediff-toggle-multiframe)
17316	(ediff-toggle-use-toolbar, ediff-kill-bottom-toolbar)
17317	(ediff-visible-region, ediff-scroll-vertically)
17318	(ediff-scroll-horizontally, ediff-jump-to-difference-at-point)
17319	(ediff-diff-to-diff, ediff-restore-diff)
17320	(ediff-toggle-regexp-match, ediff-really-quit)
17321	(ediff-cleanup-mess, ediff-highlight-diff-in-one-buffer)
17322	(ediff-unhighlight-diffs-totally-in-one-buffer)
17323	(ediff-save-buffer, ediff-make-cloned-buffer)
17324	(ediff-make-indirect-buffer, ediff-remove-flags-from-buffer)
17325	(ediff-place-flags-in-buffer1, ediff-get-diff-posn)
17326	(ediff-clear-diff-vector, ediff-make-bullet-proof-overlay)
17327	(ediff-submit-report, ediff-deactivate-mark)
17328	(ediff-activate-mark, ediff-profile, ediff-print-diff-vector):
17329
17330	* lisp/vc/ediff-wind.el (ediff-control-frame-parameters)
17331	(ediff-get-window-by-clicking, ediff-select-lowest-window)
17332	(ediff-setup-windows-plain-merge)
17333	(ediff-setup-windows-plain-compare, ediff-setup-control-frame)
17334	(ediff-destroy-control-frame, ediff-make-frame-position)
17335	(ediff-make-wide-display, ediff-get-visible-buffer-window):
17336
17337	* lisp/vc/ediff.el (ediff-version, ediff-documentation):
17338
173392019-10-05  Eli Zaretskii  <eliz@gnu.org>
17340
17341	Improve documentation of Tab bars
17342
17343	* doc/emacs/frames.texi (Menu Bars, Tool Bars, Tab Bars):
17344	Don't start index entries from a capital letter.
17345	(Tab Bars): Improve wording and indexing.
17346
17347	* etc/NEWS: Improve documentation of Tab bars.
17348
173492019-10-05  Eli Zaretskii  <eliz@gnu.org>
17350
17351	Fix display of cursor in obscure use case on MS-Windows
17352
17353	* src/xdisp.c (redisplay_internal): Detect when the frame
17354	becomes garbaged inside the call to update_frame, and redraw
17355	the frame in that case.  (Bug#37579)
17356
173572019-10-05  Philipp Stephani  <phst@google.com>
17358
17359	* src/fns.c (Flocale_info): Avoid fixnum overflow under ASan.
17360
17361	* src/pdumper.c (dump_buffer): Update structure hash.
17362
173632019-10-05  Paul Eggert  <eggert@cs.ucla.edu>
17364
17365	Omit one more superfluous "-" in regexp
17366
17367	Problem reported by Mattias Engdegård.
17368	* lisp/language/indian.el (gurmukhi-composable-pattern):
17369	Omit unnecessary "-".
17370
173712019-10-05  Dmitry Gutov  <dgutov@yandex.ru>
17372
17373	(project--vc-list-files): Make sure to expand file names
17374
17375	* lisp/progmodes/project.el (project--vc-list-files): Make sure to
17376	expand file names.  Turns out, Grep doesn't like abbreviated ones.
17377
173782019-10-05  Eli Zaretskii  <eliz@gnu.org>
17379
17380	Fix vertical scrolling in image-mode
17381
17382	* lisp/image-mode.el (image-set-window-vscroll): Interpret the
17383	argument VSCROLL value in pixel units.
17384	(image-mode-reapply-winprops): Interpret the 'vscroll'
17385	property value in pixel units.
17386	(image-next-line): Scroll the image with pixel resolution.
17387	(image-eob): Set the image vscroll in pixels.  (Bug#37578)
17388
173892019-10-04  Juanma Barranquero  <lekktu@gmail.com>
17390
17391	Improve docstrings auto-generated by `define-minor-mode'
17392
17393	* lisp/emacs-lisp/easy-mmode.el (easy-mmode--mode-docstring):
17394	When using `easy-mmode--arg-docstring' to auto-generate a
17395	docstring, refill it up to `emacs-lisp-docstring-fill-column'.
17396
173972019-10-04  Eric Abrahamsen  <eric@ericabrahamsen.net>
17398
17399	Don't manipulate gnus-newsrc-alist if it hasn't been initalized
17400
17401	* lisp/gnus/gnus-group.el (gnus-group-set-info): Packages that use
17402	Gnus summary mode without actually booting Gnus might end up in this
17403	situation. See bug#36903
17404
174052019-10-04  Paul Eggert  <eggert@cs.ucla.edu>
17406
17407	Fix bugs found by 2019-09-29 regexp scanner
17408
17409	Problems reported by Mattias Engdegård in:
17410	https://lists.gnu.org/r/emacs-devel/2019-09/threads.html
17411	* lisp/calendar/iso8601.el (iso8601--year-match)
17412	(iso8601--full-date-match, iso8601--without-day-match)
17413	(iso8601--week-date-match, iso8601--ordinal-date-match)
17414	(iso8601--zone-match):
17415	* lisp/textmodes/rst.el (rst-re-alist-def):
17416	Put ‘-’ at the end of bracketed ranges, following the style
17417	suggestion in the Elisp manual.
17418	(iso8601--time-match): Use \([0-9]*\) instead of \([0-9]+\)?
17419	to pacify the regexp scanner.
17420	(iso8601-parse-time): Adjust accordingly.
17421	* lisp/language/burmese.el (burmese-composable-pattern):
17422	* lisp/language/indian.el (devanagari-composable-pattern)
17423	(bengali-composable-pattern, gurmukhi-composable-pattern)
17424	(gujarati-composable-pattern, oriya-composable-pattern)
17425	(telugu-composable-pattern, kannada-composable-pattern)
17426	(malayalam-composable-pattern):
17427	Prefer [ab] to [a-b] when the characters differ by 1,
17428	to pacify the regexp scanner.
17429	* lisp/language/burmese.el (burmese-composable-pattern):
17430	Fix missing-‘\u’ typos.
17431	* lisp/language/indian.el (gurmukhi-composable-pattern):
17432	Fix missing-‘\’ typo.
17433	* lisp/language/tibetan.el (tibetan-regexp):
17434	Quote ‘+’ in regexp to pacify the regexp scanner.  Simplify.
17435	* lisp/textmodes/rst.el (rst-re-alist-def): Fix ‘[]-'...]’
17436	typo by putting the ‘-’ at end of the bracketed expression.
17437
174382019-10-04  Paul Eggert  <eggert@cs.ucla.edu>
17439
17440	Minor style tweaks for recent tab changes
17441
17442	* src/dispextern.h (MR_PARTIALLY_VISIBLE_AT_TOP):
17443	* src/window.c (Fwindow_mode_line_height)
17444	(Fwindow_header_line_height, Fwindow_tab_line_height)
17445	(Fwindow_right_divider_width, Fwindow_bottom_divider_width)
17446	(Fwindow_scroll_bar_width, Fwindow_scroll_bar_height):
17447	(Fset_window_configuration, Fcurrent_window_configuration):
17448	Omit unnecessary parens.
17449	* src/dispextern.h (CURRENT_MODE_LINE_HEIGHT)
17450	(CURRENT_HEADER_LINE_HEIGHT, CURRENT_TAB_LINE_HEIGHT):
17451	Add parens needed to make these macros function-like.
17452	* src/window.c (window_resize_check):
17453	* src/window.h (WINDOW_TAB_BAR_P):
17454	* src/xdisp.c (tab_bar_item_info): Reindent.
17455	* src/window.c (window_wants_mode_line)
17456	(window_wants_header_line, window_wants_tab_line):
17457	Simplify (a && b ? 1 : 0) to (a && b).
17458
174592019-10-04  Stefan Kangas  <stefankangas@gmail.com>
17460
17461	Make mouse scroll show a message instead of dinging at buffer limits
17462
17463	* lisp/mwheel.el (mwheel-scroll): Show a message instead of dinging at
17464	end of buffer and beginning of buffer.  This should be less intrusive,
17465	especially when using a trackpad.  (Bug#16196)
17466
174672019-10-04  Stefan Kangas  <stefankangas@gmail.com>
17468
17469	Bind Scroll_Lock to scroll-lock-mode globally
17470
17471	* lisp/bindings.el (global-map): Bind Scroll_Lock to
17472	scroll-lock-mode.  (Bug#6861)
17473	* lisp/scroll-lock.el (scroll-lock-mode): Note that the binding will
17474	not work if 'w32-scroll-lock-modifier' is non-nil.
17475	* etc/NEWS: Announce it.
17476
174772019-10-04  Stefan Kangas  <stefankangas@gmail.com>
17478
17479	Add tests for secure-hash and improve doc string (Bug#37420)
17480
17481	* src/fns.c (Fsecure_hash_algorithms): Fix typo.
17482	(Fsecure_hash): Add algorithm list to doc string.
17483	* test/src/fns-tests.el (test-secure-hash): New test.
17484
174852019-10-04  Stefan Kangas  <stefankangas@gmail.com>
17486
17487	Declare unused vhdl code in align.el obsolete
17488
17489	* lisp/align.el (align-vhdl-rules-list, align-set-vhdl-rules): Declare
17490	obsolete.  (Bug#6207)
17491	(align-dq-string-modes, align-open-comment-modes): Move vhdl-mode to
17492	definition instead of adding it later.
17493
174942019-10-04  Mattias Engdegård  <mattiase@acm.org>
17495
17496	Fix error in gnu compilation-mode regexp (bug#37582)
17497
17498	* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
17499	Fix a mistake introduced when the regexp was translated to rx.
17500	* test/lisp/progmodes/compile-tests.el (compile-tests--test-regexps-data)
17501	(compile-test-error-regexps): Add test case.
17502	* etc/compilation.txt: Add example.
17503
175042019-10-04  Mattias Engdegård  <mattiase@acm.org>
17505
17506	Make compile-tests re-runnable
17507
17508	* test/lisp/progmodes/compile-tests.el (compile-test-error-regexps):
17509	Don't rely on compilation-num-errors (etc) all being zero, which they
17510	aren't if the test has been run before.
17511	(compile-tests--test-regexps-data): Change defvar to defconst.
17512
175132019-10-04  Lars Ingebrigtsen  <larsi@gnus.org>
17514
17515	Remove semantic-make-local-hook call from CEDET
17516
17517	* lisp/cedet/semantic/wisent/grammar.el
17518	(wisent-grammar-setupcode-builder):
17519	* lisp/cedet/semantic/util-modes.el (semantic-highlight-edits-mode)
17520	(semantic-show-unmatched-syntax-mode)
17521	(semantic-show-parser-state-mode):
17522	* lisp/cedet/semantic/mru-bookmark.el (semantic-mru-bookmark-mode):
17523	* lisp/cedet/semantic/imenu.el (semantic-create-imenu-index):
17524	* lisp/cedet/semantic/grammar.el (semantic-grammar-mode):
17525	* lisp/cedet/semantic/grammar-wy.el
17526	(semantic-grammar-wy--install-parser):
17527	* lisp/cedet/semantic/decorate/mode.el
17528	(semantic-decorate-add-pending-decoration)
17529	(semantic-decoration-mode):
17530	* lisp/cedet/semantic.el (semantic--set-buffer-cache): Remove all
17531	calls to the function.
17532
17533	* lisp/cedet/semantic/fw.el (semantic-make-local-hook): Made
17534	obsolete alias for #'ignore by removing XEmacs compat code.
17535
175362019-10-04  Lars Ingebrigtsen  <larsi@gnus.org>
17537
17538	Remove some XEmacs compat code from ispell.el
17539
17540	* lisp/textmodes/ispell.el (ispell-word): Remove XEmacs compat code.
17541
175422019-10-04  Lars Ingebrigtsen  <larsi@gnus.org>
17543
17544	Remove some XEmacs compat code from ezimage.el
17545
17546	* lisp/ezimage.el (defezimage): Remove XEmacs compat code.
17547
175482019-10-04  Stefan Kangas  <stefankangas@gmail.com>
17549
17550	Remove XEmacs compat code from re-builder.el
17551
17552	* lisp/emacs-lisp/re-builder.el (top-level)
17553	(reb-color-display-p): Remove XEmacs compat code.
17554
175552019-10-04  Lars Ingebrigtsen  <larsi@gnus.org>
17556
17557	Remove some XEmacs compat code from ediff*.el
17558
17559	* lisp/vc/ediff-diff.el (ediff-goto-word): Ditto.
17560
17561	* lisp/vc/ediff-init.el (ediff-has-face-support-p)
17562	(ediff-current-diff-A, ediff-current-diff-B)
17563	(ediff-current-diff-C, ediff-current-diff-Ancestor)
17564	(ediff-fine-diff-A, ediff-fine-diff-B, ediff-fine-diff-C)
17565	(ediff-fine-diff-Ancestor, ediff-even-diff-A)
17566	(ediff-even-diff-B, ediff-even-diff-C)
17567	(ediff-even-diff-Ancestor, ediff-odd-diff-A, ediff-odd-diff-B)
17568	(ediff-odd-diff-C, ediff-odd-diff-Ancestor)
17569	(ediff-with-syntax-table): Ditto.
17570
17571	* lisp/vc/ediff-mult.el (ediff-dir-diffs-buffer-map)
17572	(ediff-setup-meta-map, ediff-set-meta-overlay): Ditto.
17573
17574	* lisp/vc/ediff-util.el (ediff-setup-keymap)
17575	(ediff-toggle-wide-display, ediff-toggle-multiframe)
17576	(ediff-toggle-use-toolbar, ediff-really-quit)
17577	(ediff-good-frame-under-mouse)
17578	(ediff-make-bullet-proof-overlay): Ditto.
17579
17580	* lisp/vc/ediff-wind.el (ediff-setup-control-frame)
17581	(ediff-refresh-control-frame): Remove XEmacs compat code.
17582
175832019-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
17584
17585	* lisp/subr.el (generate-new-buffer): Move (from files.el) before first use
17586
17587	(with-temp-file, with-output-to-string): Use it.
17588
17589	* lisp/files.el (generate-new-buffer): Move to subr.el.
17590
175912019-10-04  Dmitry Gutov  <dgutov@yandex.ru>
17592
17593	(project--vc-list-files): Optimize the Hg implementation
17594
17595	* lisp/progmodes/project.el (project--vc-list-files):
17596	Optimize the Hg implementation.
17597
175982019-10-04  Lars Ingebrigtsen  <larsi@gnus.org>
17599
17600	Remove some more XEmacs compat code from viper*.el
17601
17602	* lisp/emulation/viper-ex.el (viper-ex-read-file-name): Ditto.
17603
17604	* lisp/emulation/viper-init.el (viper-ms-style-os-p)
17605	(viper-has-face-support-p, viper-deactivate-input-method)
17606	(viper-activate-input-method, viper-set-input-method): Ditto.
17607
17608	* lisp/emulation/viper-util.el
17609	(viper-get-saved-cursor-color-in-replace-mode)
17610	(viper-get-saved-cursor-color-in-insert-mode)
17611	(viper-get-saved-cursor-color-in-emacs-mode)
17612	(viper-set-replace-overlay, viper-key-to-emacs-key)
17613	(viper-set-unread-command-events): Ditto.
17614
17615	* lisp/emulation/viper.el (viper-go-away, viper-set-hooks)
17616	(viper-non-hook-settings): Remove XEmacs compat code.
17617
176182019-10-04  Lars Ingebrigtsen  <larsi@gnus.org>
17619
17620	Remove more XEmacs compat code from viper-*.el
17621
17622	* lisp/emulation/viper-cmd.el (viper-special-read-and-insert-char)
17623	(viper-next-line-carefully, viper-next-line)
17624	(viper-previous-line): Ditto.
17625
17626	* lisp/emulation/viper-mous.el (viper-surrounding-word)
17627	(viper-parse-mouse-key): Remove XEmacs compat code.
17628
176292019-10-04  Lars Ingebrigtsen  <larsi@gnus.org>
17630
17631	Remove XEmacs-only code from snake.el
17632
17633	* lisp/play/snake.el (snake-mode): Remove XEmacs-only code.
17634
176352019-10-04  Lars Ingebrigtsen  <larsi@gnus.org>
17636
17637	Remove XEmacs code from tetris.el
17638
17639	* lisp/play/tetris.el (tetris-mode): Remove XEmacs-only code.
17640
176412019-10-04  Lars Ingebrigtsen  <larsi@gnus.org>
17642
17643	Remove XEmacs compat code from idlw-shell.el
17644
17645	* lisp/progmodes/idlw-shell.el (idlwave-shell-make-temp-file):
17646	Make into obsolete alias.
17647	(idlwave-shell-temp-file): Adjust callers.
17648
176492019-10-04  Juanma Barranquero  <lekktu@gmail.com>
17650
17651	Revert "Improve docstrings auto-generated by `define-minor-mode'"
17652
17653	This reverts commit a397fa06d18d6ae37a3a1288f269e1ae9eb3b569.
17654	The original change breaks bootstrapping because of a circular dependency.
17655
176562019-10-04  Dmitry Gutov  <dgutov@yandex.ru>
17657
17658	Use file-name-as-directory
17659
17660	* lisp/progmodes/project.el (project--vc-list-files): Use
17661	file-name-as-directory, to be on the safe side.
17662
176632019-10-03  Stefan Kangas  <stefankangas@gmail.com>
17664
17665	Remove more XEmacs compat code in cperl-mode.el
17666
17667	* lisp/progmodes/cperl-mode.el (condition-case, cperl-problems)
17668	(cperl-problems-old-emaxen, cperl-init-faces)
17669	(cperl-word-at-point): Remove more XEmacs compat code.
17670
176712019-10-03  Juanma Barranquero  <lekktu@gmail.com>
17672
17673	Improve docstrings auto-generated by `define-minor-mode'
17674
17675	* lisp/emacs-lisp/easy-mmode.el (easy-mmode--mode-docstring):
17676	When using `easy-mmode--arg-docstring' to auto-generate a
17677	docstring, refill it up to `emacs-lisp-docstring-fill-column'.
17678
176792019-10-03  Stefan Kangas  <stefankangas@gmail.com>
17680
17681	More doc fixes in package.el (Bug#37544)
17682
17683	* lisp/emacs-lisp/package.el (package-menu-hide-low-priority)
17684	(package-pinned-packages, package-load-descriptor)
17685	package-archive-version, package-archive-contents)
17686	package--read-archive-file, package-read-archive-contents)
17687	(package-unsigned-archives, package-read-all-archive-contents)
17688	(package--download-and-read-archives, package-install):
17689	* lisp/subr.el (package--description-file):
17690	* test/lisp/emacs-lisp/package-tests.el: Doc fixes.
17691
176922019-10-03  Dmitry Gutov  <dgutov@yandex.ru>
17693
17694	Speed up project-files for Git projects
17695
17696	* lisp/progmodes/project.el (project-files): New method.
17697	Implementation for VC projects that uses 'git ls-files' or 'hg
17698	status --all' for listing.  With gratitude to Tassilo Horn who has
17699	done most of the legwork and wrote the first version of the code
17700	(https://lists.gnu.org/archive/html/emacs-devel/2019-10/msg00069.html).
17701	(project--vc-list-files): New function, to be used by the above.
17702	(project--find-regexp-in-files):
17703	Silence warnings about nonexistent files.
17704
177052019-10-03  Basil L. Contovounesios  <contovob@tcd.ie>
17706
17707	Further improve button.el support for help-echo
17708
17709	The last change to forward-button added support for help-echo values
17710	that are functions.  This patch fixes the arguments passed to such
17711	functions and further adds support for help-echo values that are
17712	forms (bug#37515).
17713	* doc/lispref/display.texi (Button Properties): Fix description of
17714	help-echo button property.
17715	* lisp/button.el (button--help-echo): New function.
17716	(forward-button): Use it.
17717	(backward-button): Clarify help-echo reference in docstring.
17718	* test/lisp/button-tests.el (button--help-echo-string)
17719	(button--help-echo-form, button--help-echo-function): New tests.
17720
177212019-10-03  Basil L. Contovounesios  <contovob@tcd.ie>
17722
17723	Use lexical-binding in button.el
17724
17725	* lisp/button.el: Use lexical-binding.  Expand Keywords header.
17726	Quote function symbols as such.  Use ;;;-comments where appropriate.
17727	(button): Remove outdated commentary of defface.
17728	(define-button-type, make-button, insert-button, make-text-button)
17729	(insert-text-button): Clarify in docstring that PROPERTIES argument
17730	is a plist.
17731	(button-type-subtype-p, button-has-type-p): Do not overspecify
17732	return value in docstring.
17733	(button-put): Fix typo in commentary.
17734
177352019-10-03  John Yates  <john@yates-sheets.org>  (tiny change)
17736
17737	Preserve point better in hs-hide-comment-region
17738
17739	* lisp/progmodes/hideshow.el (hs-hide-comment-region): Preserve point
17740	better when collapsing the region (bug#10856).
17741
177422019-10-03  Lars Ingebrigtsen  <larsi@gnus.org>
17743
17744	Make lisp-do-defun do the right thing with trailing comments
17745
17746	* lisp/progmodes/inf-lisp.el (lisp-do-defun): Avoid including
17747	trailing comments in the region (bug#7974).
17748
177492019-10-03  Lars Ingebrigtsen  <larsi@gnus.org>
17750
17751	Fix bytecomp.el warning a different way than the previous patch
17752
17753	* lisp/emacs-lisp/bytecomp.el (emacs-lisp-compilation-mode-map):
17754	No need to use set-keymap-parent here; `define-derived-mode' will
17755	do that automatically.
17756
177572019-10-03  Lars Ingebrigtsen  <larsi@gnus.org>
17758
17759	Fix comment in previous doc-view patch
17760
17761	* lisp/doc-view.el (doc-view-open-text): Comment fix.
17762
177632019-10-03  Lars Ingebrigtsen  <larsi@gnus.org>
17764
17765	In doc-view, keep point on the equivalent page in the text version
17766
17767	* lisp/doc-view.el (doc-view-open-text): After opening the text
17768	version, put point on the page the user was reading (bug#16541).
17769
177702019-10-03  Stefan Monnier  <monnier@iro.umontreal.ca>
17771
17772	* lisp/pcomplete.el: Mark 'pcomplete' command as obsolete
17773
17774	Remove redundant ':group's.
17775	(pcomplete, pcomplete-help): Mark as obsolete.
17776
177772019-10-03  Lars Ingebrigtsen  <larsi@gnus.org>
17778
17779	Mention the vc diff switches in diff-switches
17780
17781	* lisp/vc/diff.el (diff-switches): Mention the vc diff switches in
17782	the doc string (bug#4422).
17783
177842019-10-03  Alan Mackenzie  <acm@muc.de>
17785
17786	C++ Mode: Correct the fontification of const auto foo
17787
17788	* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Correct a coding
17789	error involving `and' and `or'.
17790
177912019-10-03  Lars Ingebrigtsen  <larsi@gnus.org>
17792
17793	Touch up previous shr-dom-to-xml encoding change
17794
17795	* lisp/net/shr.el (shr-dom-to-xml): Include an XML declaration if
17796	we're encoding the data.
17797	(shr-parse-image-data): Add comment about why encoding is necessary.
17798
177992019-10-03  Lars Ingebrigtsen  <larsi@gnus.org>
17800
17801	Fix up previous SVG-multibyte fix
17802
17803	* lisp/net/shr.el (shr-dom-to-xml): For SVG images, take an
17804	optional charset parameter to return unibyte data.
17805	(shr-parse-image-data): Use it.
17806	(shr-tag-svg): Ditto.
17807	(svg--wrap-svg): Revert previous kludge.
17808
178092019-10-03  Alan Mackenzie  <acm@muc.de>
17810
17811	C++ Mode: Fontify correctly declarators with identifier preceded by &
17812
17813	The problem was bar in the following being spuriously recognised as a
17814	function, and foo as a type, as though the & were a *: Foo foo (&bar);.
17815
17816	* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): New variable
17817	got-function-name-prefix, which is set when an operator like * (but not &)
17818	precedes the putative identifer in parentheses.  Test this variable when
17819	deciding whether or not to "move the type backwards" to the previous
17820	identifier.
17821
17822	* lisp/progmodes/cc-langs.el (c-type-decl-operator-prefix-key): New lang const
17823	and var.
17824
178252019-10-03  Michael Albinus  <michael.albinus@gmx.de>
17826
17827	Fix typo in last commit
17828
178292019-10-03  Michael Albinus  <michael.albinus@gmx.de>
17830
17831	Further adaptions for shadowfile-tests.el
17832
17833	* test/lisp/shadowfile-tests.el: Change some traces.
17834	(shadow-test-remote-temporary-file-directory): Adapt also remote
17835	home directory.
17836	(shadow--tests-cleanup): Cleanup Tramp.
17837
178382019-10-02  Stefan Kangas  <stefankangas@gmail.com>
17839
17840	Don't use obsolete name in em-cmpl.el
17841
17842	* lisp/eshell/em-cmpl.el (eshell-complete-lisp-symbol): Update
17843	reference to 'elisp-completion-at-point' from its obsolete name.
17844	Reported by Carlos Pita <carlosjosepita@gmail.com>.  (Bug#31906)
17845
178462019-10-02  Juri Linkov  <juri@linkov.net>
17847
17848	* lisp/tab-bar.el (tab-bar-show): New defcustom.
17849
17850	* lisp/tab-bar.el (tab-bar-close-current-tab, tab-bar-close-tab):
17851	(tab-bar-new-tab): Use tab-bar-show.
17852
17853	* doc/emacs/frames.texi (Tab Bars): Add tab-bar-show.
17854
17855	* lisp/speedbar.el (speedbar-mode): Set buffer-local tab-bar-mode
17856	and tab-line-format to nil to not show in dedicated speedbar frame.
17857
178582019-10-02  Juri Linkov  <juri@linkov.net>
17859
17860	* src/w32inevt.c: Take into account FRAME_TAB_BAR_LINES.
17861
17862	* src/w32inevt.c (resize_event, maybe_generate_resize_event):
17863	Subtract FRAME_TAB_BAR_LINES from FRAME_MENU_BAR_LINES.
17864
178652019-10-02  Eli Zaretskii  <eliz@gnu.org>
17866
17867	Fix MS-Windows error when a directory on PATH doesn't exist
17868
17869	* src/w32.c (faccessat): Support more MS-Windows native error
17870	codes that should be translated to ENOENT.  (Bug#37576)
17871
178722019-10-02  Stefan Kangas  <stefankangas@gmail.com>
17873
17874	Don't mention server-socket-dir in FAQ
17875
17876	server-socket-dir is a defvar, and users should use the defcustom
17877	server-name instead.
17878
17879	* doc/misc/efaq.texi (Using an already running Emacs process): Remove
17880	details on server-socket-dir, refer to Emacs Manual.  (Bug#20675)
17881
178822019-10-02  Eli Zaretskii  <eliz@gnu.org>
17883
17884	Fix a typo in url-http.el
17885
17886	* lisp/url/url-http.el (url-http-parse-headers): Fix a typo.
17887	Reported by Mattias Engdegård <mattiase@acm.org>.
17888
178892019-10-02  Sergio Durigan Junior  <sergiodj@sergiodj.net>
17890
17891	Don't add trailing whitespace when passing argument to GDB
17892
17893	* lisp/progmodes/gdb-mi.el (gdb-send): Don't append whitespace to
17894	'gdb-continuation'.  (Bug#25488)
17895
178962019-10-01  Glenn Morris  <rgm@gnu.org>
17897
17898	Update a substitute-command-keys test
17899
17900	* test/src/doc-tests.el (doc-test-substitute-command-keys):
17901	Update for recent minibuffer map change.
17902
179032019-10-01  Eric Abrahamsen  <eric@ericabrahamsen.net>
17904
17905	Gnus registry shutdown should also run the unload-hook
17906
17907	* lisp/gnus/gnus-registry.el (gnus-registry-clear): Clearing the
17908	registry should also run the unload hooks.
17909	  (gnus-registry-article-marks-to-names,
17910	  gnus-registry-article-marks-to-chars): Now we can use a more general
17911	  test here.
17912
179132019-10-01  Juri Linkov  <juri@linkov.net>
17914
17915	Merge branch 'feature/tabs'
17916
17917	Remove unused code and reformat to 70 columns.
17918
179192019-10-01  Lars Ingebrigtsen  <larsi@gnus.org>
17920
17921	Avoid bugging out on multibyte SVG data in shr
17922
17923	* lisp/net/shr.el (svg--wrap-svg): Ensure that the SVG data is
17924	unibyte.
17925
179262019-10-01  Lars Ingebrigtsen  <larsi@gnus.org>
17927
17928	Respect buffer-local values in comint-read-input-ring
17929
17930	* lisp/comint.el (comint-read-input-ring): Use the buffer-local
17931	values (bug#6432).
17932
179332019-10-01  Stefan Kangas  <stefankangas@gmail.com>
17934
17935	Remove old commented out XEmacs compat code from syntax.el (Bug#37524)
17936
17937	* lisp/emacs-lisp/syntax.el: Remove ancient commented out XEmacs
17938	compat code.  This code has been commented out since 2001.
17939
179402019-10-01  Stefan Kangas  <stefankangas@gmail.com>
17941
17942	Remove XEmacs compat code from url-*.el (Bug#37524)
17943
17944	* lisp/url/url-file.el (url-file-build-filename, url-file)
17945	* lisp/url/url-privacy.el (url-setup-privacy-info): Remove XEmacs
17946	compat code.
17947	(url-device-type): Declare obsolete.
17948
179492019-10-01  Stefan Kangas  <stefankangas@gmail.com>
17950
17951	Remove XEmacs compat code from winner.el (Bug#37524)
17952
17953	* lisp/winner.el (winner-active-region, winner-edges)
17954	(winner-window-list, winner-sorted-window-list, winner-win-data)
17955	(winner-make-point-alist): Remove XEmacs compat code.
17956
179572019-10-01  Stefan Kangas  <stefankangas@gmail.com>
17958
17959	Remove XEmacs compat code from term.el (Bug#37524)
17960
17961	* lisp/term.el (term-mode-map, term-raw-map, term-mouse-paste):
17962	Remove XEmacs compat code.
17963
179642019-10-01  Lars Ingebrigtsen  <larsi@gnus.org>
17965
17966	Add support for Dired file marking from image-mode
17967
17968	* doc/emacs/files.texi (File Conveniences): Document them.
17969
17970	* lisp/image-mode.el (image-mode--mark-file): New function.
17971	(image-mode-unmark-file, image-mode-mark-file)
17972	(image-mode-copy-file-name-as-kill): New commands and keystrokes.
17973
179742019-10-01  Stefan Kangas  <stefankangas@gmail.com>
17975
17976	Move url-ns.el to obsolete/
17977
17978	* lisp/url/url-ns.el: Move from here...
17979	* lisp/obsolete/url-ns.el: ...to here.  (Bug#19822)
17980
179812019-10-01  Lars Ingebrigtsen  <larsi@gnus.org>
17982
17983	Tweak mouse highlights in ediff-help
17984
17985	* lisp/vc/ediff-help.el (ediff-set-help-overlays): Only put the
17986	mouse-face overlay on the actual commands (bug#5079).  This avoids
17987	a problem when you have very wide frames: The leading blank
17988	portion of the buffer would get the mouse highlights.
17989
179902019-10-01  Lars Ingebrigtsen  <larsi@gnus.org>
17991
17992	Remove XEmacs compat code from ediff-help.el
17993
17994	* lisp/vc/ediff-help.el (ediff-help-region-map)
17995	(ediff-set-help-overlays, ediff-help-for-quick-help): Remove
17996	XEmacs compat code.
17997
179982019-10-01  Lars Ingebrigtsen  <larsi@gnus.org>
17999
18000	Make the help page mention the customizeable global mode variable
18001
18002	* lisp/help-fns.el (help-fns--customize-variable): Factor out into
18003	own function for reuse.
18004	(help-fns--globalized-minor-mode): Use it to mention the
18005	equivalent variable.
18006
18007	* lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
18008	Mark globalized minor modes as such (bug#7177).
18009
180102019-10-01  Lars Ingebrigtsen  <larsi@gnus.org>
18011
18012	Fix build error in bytecomp.el from previous change
18013
180142019-10-01  Lars Ingebrigtsen  <larsi@gnus.org>
18015
18016	Add a new command in *Compile-Log* buffers to re-byte-compile
18017
18018	* lisp/emacs-lisp/bytecomp.el (emacs-lisp-compilation-recompile):
18019	New command (bug#4516).
18020	(emacs-lisp-compilation--current-file)
18021	(emacs-lisp-compilation-mode-map): New variables with new `g'
18022	binding.
18023	(byte-compile-log-file): Set variable so that `g' can recompile it.
18024
180252019-10-01  Lars Ingebrigtsen  <larsi@gnus.org>
18026
18027	Allow 'M-<' in the minibuffer to behave more logically
18028
18029	* doc/lispref/minibuf.texi (Completion Commands)
18030	(Text from Minibuffer): Document it.
18031
18032	* lisp/minibuffer.el (minibuffer-beginning-of-buffer): New command
18033	(bug#3447).
18034	(map): Bind it.
18035
180362019-10-01  Robert Pluim  <rpluim@gmail.com>
18037
18038	Correct some custom type typos
18039
18040	* lisp/image.el (image-use-external-converter):
18041	* lisp/progmodes/sql.el (sql-use-indent-support):
18042	* lisp/vc/add-log.el (add-log-dont-create-changelog-file): Fix
18043	misspelled 'boolean custom type.
18044
18045	* lisp/progmodes/flymake-cc.el (flymake-cc-command): Correct custom
18046	type specification.  (Bug#30990)
18047
180482019-09-30  Stephen Gildea  <stepheng+git-config-global@gildea.com>
18049
18050	Move undocumented time-stamp formats closer to format-time-string
18051
18052	* lisp/time-stamp.el (time-stamp-string-preprocess): Update some undocumented
18053	formatting characters of time-stamp format for closer (still incomplete)
18054	alignment with format-time-string.  They have displayed a warning since
18055	Emacs 20 (released in 1997), so it is unlikely anyone is using them.
18056
18057	* test/lisp/time-stamp-tests.el: Update tests to match new expectations.
18058
180592019-09-30  Stephen Gildea  <stepheng+savannah@gildea.com>
18060
18061	time-stamp doc: recommend formats closer to format-time-string
18062
18063	* lisp/time-stamp.el (time-stamp-format, time-stamp-pattern): Update
18064	recommended (documented) formats.  No code changes, just documentation.
18065	All recommended formats are compatible at least as far back as Emacs
18066	22.1 (released in 2007) and are now closer to compatibility with
18067	format-time-string.
18068
18069	* test/lisp/time-stamp-tests.el: Update test comments to match.
18070
180712019-09-30  Juanma Barranquero  <lekktu@gmail.com>
18072
18073	Bump up max_specpdl_size to 1600
18074
18075	* src/eval.c (init_eval_once): Set max_specpdl_size to 1600.
18076	* doc/lispref/variables.texi (Local Variables): Document it.
18077
180782019-09-30  Eric Abrahamsen  <eric@ericabrahamsen.net>
18079
18080	Update calling convention for nnmaildir-close-server
18081
18082	* lisp/gnus/nnmaildir.el (nnmaildir-close-server): To take an optional
18083	"defs" arg, as changed in 2712187.
18084
180852019-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
18086
18087	* lisp/gnus/mm-uu.el: Use lexical-binding and cl-defstruct
18088
18089	(mm-uu-type-alist): Make functions visible to byte-compiler.
18090	(mm-uu-entry): New defstruct.
18091	(mm-uu-configure): Use mapconcat.
18092	(mm-uu-dissect): Avoid setq on `func`.
18093
180942019-09-30  Eli Zaretskii  <eliz@gnu.org>
18095
18096	Fix quoting in gnutls.c comments and strings
18097
18098	* src/gnutls.c (gnutls_make_error, emacs_gnutls_global_init)
18099	(Fgnutls_symmetric_encrypt, Fgnutls_symmetric_decrypt)
18100	(Fgnutls_hash_mac, Fgnutls_hash_digest): Fix quoting in doc
18101	strings and comments.
18102
181032019-09-30  Lars Ingebrigtsen  <larsi@gnus.org>
18104
18105	Make doc-view error message more informative
18106
18107	* lisp/doc-view.el (doc-view-initiate-display): Make error message
18108	clearer (bug#3827).
18109
181102019-09-30  Lars Ingebrigtsen  <larsi@gnus.org>
18111
18112	Fix problem with non-ASCII MML description strings
18113
18114	* lisp/gnus/mml.el (mml-insert-tag): Quote non-ASCII parameters.
18115	(mml-insert-mime-headers): Make it possible to have non-ASCII
18116	descriptions (bug#37555).
18117
181182019-09-30  Lars Ingebrigtsen  <larsi@gnus.org>
18119
18120	Mention locale-related complications in format-time-string doc string
18121
18122	* src/timefns.c (Fformat_time_string): Mention that the width in
18123	specifiers like %NX is often in bytes, not characters (bug#20258).
18124
181252019-09-30  Lars Ingebrigtsen  <larsi@gnus.org>
18126
18127	Fix recent mm-uu.el typo
18128
18129	* lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1): Fix typo in
18130	mm-uu introduced by previous patch.
18131
181322019-09-30  Eli Zaretskii  <eliz@gnu.org>
18133
18134	Improve description of face merging
18135
18136	* doc/lispref/display.texi (Displaying Faces): More accurate
18137	description of merging face attributes of "underlying text".
18138	(Bug#1222)
18139
181402019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18141
18142	Make elisp- and emacs-index-search and default to the thing under point
18143
18144	* lisp/menu-bar.el (elisp-index-search): Default to the thing
18145	under point interactively (bug#1119).
18146	(emacs-index-search): Ditto.
18147	(emacs-index--prompt): New helper function.
18148
181492019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18150
18151	Refactor mm-decode and friends to be explicit about when errors happen
18152
18153	* lisp/gnus/mm-decode.el (mm-sec-status):
18154	(mm-sec-error): New functions to handle decryption problems more
18155	explicitly (bug#18393).
18156	(mm-possibly-verify-or-decrypt): Use the `sec-error' data to
18157	determine whether the operation failed or not.
18158
18159	* lisp/gnus/mml-smime.el: Ditto.
18160
18161	* lisp/gnus/mml2015.el: Used throughout.
18162
181632019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18164
18165	Fix rendering of degenerate tables some more in shr.el
18166
18167	* lisp/net/shr.el (shr--fix-tbody): New function (bug#31665).
18168	(shr--fix-table): Use it to fix the
18169	<table><tbody>foo</tbody></table> case.
18170
181712019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18172
18173	shr table fix refactoring
18174
18175	* lisp/net/shr.el (shr--fix-table): Refactor out into own function
18176	from...
18177	(shr-tag-table): ... this function.
18178
181792019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18180
18181	Change the commands in image-converter--converters to lists
18182
18183	* lisp/image/image-converter.el (image-converter--converters):
18184	Change format of the commands to lists.
18185	(image-converter--probe, image-converter--convert): Adjust usages.
18186
181872019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18188
18189	Rename the new convert-images-externally variable
18190
18191	* doc/emacs/files.texi (File Conveniences): Adjust documentation.
18192
18193	* lisp/image.el (image-use-external-converter): Rename from
18194	convert-images-externally.
18195
181962019-09-29  Juanma Barranquero  <lekktu@gmail.com>
18197
18198	Silence byte-compiler warning
18199
18200	* lisp/obsolete/info-edit.el (ibuffer-help-buffer-modes): Defvar it.
18201
182022019-09-29  Stefan Kangas  <stefankangas@gmail.com>
18203
18204	* lisp/dired-x.el (dired-virtual): Fix typo.
18205
182062019-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18207
18208	* lisp/nxml/rng-valid.el: Use define-minor-mode
18209
18210	Remove redundant `:group`s.
18211	(rng-validate-mode): Use define-minor-mode.
18212	(rng-validate-clear): Let-bind rng-current-schema instead of passing
18213	a `no-change-schema` argument.
18214
182152019-09-29  Tom Willemse  <tom@ryuslash.org>
18216
18217	Fix indenting in perl functions with doc-comments
18218
18219	* lisp/progmodes/perl-mode.el (perl-calculate-indent): Skip
18220	doc-comments as well as comments and skip the entire comment, not just
18221	the line.  (Bug#21647)
18222
182232019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18224
18225	Update iso8601-tests for new interface
18226
182272019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18228
18229	Make iso8601-parse take a FORM parameter like `decode-time'
18230
18231	* lisp/calendar/iso8601.el (iso8601-parse-time, iso8601-parse):
18232	Take a FORM parameter like `decode-time'.
18233
182342019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18235
18236	Add support for sub-second ISO8601 strings
18237
18238	* lisp/calendar/iso8601.el (iso8601--decimalize): New function.
18239	(iso8601-parse-time): Support sub-second ISO8601 times.
18240
182412019-09-29  Paul Eggert  <eggert@cs.ucla.edu>
18242
18243	* src/timefns.c (Fdecode_time): Improve doc string.
18244
182452019-09-29  Stefan Kangas  <stefankangas@gmail.com>
18246
18247	Clarify recent ert manual change
18248
18249	* doc/misc/ert.texi (Running Tests in Batch Mode): Say that ert test
18250	selector strings are regular expressions.
18251
182522019-09-29  Alan Mackenzie  <acm@muc.de>
18253
18254	Remove the compilation-arrow-overlay on a major mode change/reinitialization
18255
18256	At the same time, remove the 2-character left margin.
18257
18258	* lisp/progmodes/compile.el (compilation-set-up-arrow-spec-in-margin): put
18259	compilation-tear-down-arrow-spec-in-margin onto change-major-mode-hook.
18260
182612019-09-29  Mattias Engdegård  <mattiase@acm.org>
18262
18263	Add `rx-submatch-n' for compatibility (bug#37517)
18264
18265	It was an internal symbol in the old `rx' implementation, used in old
18266	versions of the `flycheck' package.
18267
18268	* lisp/emacs-lisp/rx.el (rx-submatch-n): Alias of `rx-to-string'.
18269	* test/lisp/emacs-lisp/rx-tests.el (rx-compat): Test it.
18270
182712019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18272
18273	Fix reverting doc-view buffers
18274
18275	* lisp/doc-view.el (doc-view--revert-buffer): Actually use the new
18276	version of the PDF data (bug#26996).
18277
182782019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18279
18280	Allow customising pdf-to-text parameters
18281
18282	* lisp/doc-view.el (doc-view-pdf->txt): Allow customising the
18283	parameters (bug#8519).
18284	(doc-view-pdftotext-program-args): New variable.
18285
182862019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18287
18288	Try ImageMagick last for external image converters
18289
18290	* lisp/image/image-converter.el (image-converter--converters):
18291	Move ImageMagick last in the list.
18292
182932019-09-29  Mattias Engdegård  <mattiase@acm.org>
18294
18295	Fix linear equation system solving in Calc (bug#35374)
18296
18297	* lisp/calc/calcalg2.el (math-try-solve-for):
18298	To solve Ax^n=0 where A is a nonzero constant and x the variable to
18299	solve for, solve x^n=0 instead of solving A=0 (which obviously fails)
18300	or something equally stupid.
18301	* test/lisp/calc/calc-tests.el (calc-test-solve-linear-system): New.
18302
183032019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18304
18305	Move convert-images-externally documentation to Emacs manual
18306
18307	* doc/emacs/files.texi (File Conveniences): Move bit about
18308	convert-images-externally to user manual from lispref manual.
18309
183102019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18311
18312	Remove duplicated image conversion defcustom
18313
18314	* lisp/image/image-converter.el (convert-external-images): Remove
18315	defcustom that was accidentally not removed when moving to
18316	image.el (and renamed).
18317
183182019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18319
18320	Add some commented-out tests for iso8601
18321
183222019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18323
18324	Fix up iso8601 time match regexp
18325
18326	* lisp/calendar/iso8601.el (iso8601--time-match): The fraction
18327	mark can be either . or , and there can be arbitrarily many digits
18328	in the fraction.
18329
183302019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18331
18332	Put new Gnus groups in the completion table
18333
18334	* lisp/gnus/gnus-start.el (gnus-group-change-level): Ensure that
18335	all new groups are in gnus-active-hashtb so that they can be
18336	completed to.
18337
183382019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18339
18340	Define nndraft-close-server according to new calling conventions
18341
18342	* lisp/gnus/nnoo.el (nnoo-define-basics-1): *-close-server now
18343	takes a DEFS parameter (bug#20319).
18344
183452019-09-29  Lars Ingebrigtsen  <larsi@gnus.org>
18346
18347	Add new Gnus summary commands and keystrokes for "unseen" navigation
18348
18349	* doc/misc/gnus.texi (Choosing Commands): Document them.
18350	* lisp/gnus/gnus-sum.el (gnus-summary-next-unseen-article)
18351	(gnus-summary-prev-unseen-article): New commands and
18352	keystrokes (bug#35213).
18353
183542019-09-29  Eli Zaretskii  <eliz@gnu.org>
18355
18356	Improve documentation of image conversion feature
18357
18358	* lisp/image/image-converter.el (image-converter)
18359	(image-convert-p, image-convert):
18360	* lisp/image.el (convert-images-externally):
18361	* etc/NEWS:
18362	* doc/lispref/display.texi (Defining Images): Fix recently
18363	added documentation.
18364
183652019-09-28  Lars Ingebrigtsen  <larsi@gnus.org>
18366
18367	Remove :group from a recent defcustom
18368
18369	* lisp/image.el (convert-images-externally): Remove :group.
18370
183712019-09-28  Lars Ingebrigtsen  <larsi@gnus.org>
18372
18373	If requested, use external image converters for exotic formats
18374
18375	* doc/lispref/display.texi (Defining Images): Document it.
18376
18377	* lisp/image.el (convert-images-externally): New variable.
18378	(image-type): Use it.
18379	(create-image): Convert images.
18380
18381	* lisp/image/image-converter.el (image-converter--convert): New file.
18382
183832019-09-28  Stephen Gildea  <stepheng+savannah@gildea.com>
18384
18385	Reorganize time-stamp tests
18386
18387	* test/lisp/time-stamp-tests.el: Group tests by when the format was or will be
18388	documented.  Add tests for a few more undocumented, volatile formats.
18389	Change AM hours test time to be a different hour from PM test time.
18390	(Making these changes to the tests now will minimize test changes
18391	needed later with anticipated code changes.)
18392
183932019-09-28  Juri Linkov  <juri@linkov.net>
18394
18395	Update documentation for tabs.
18396
18397	* doc/emacs/frames.texi (Tab Bars): New node.
18398
183992019-09-28  Juri Linkov  <juri@linkov.net>
18400
18401	* lisp/tab-line.el: Add new defcustom tab-line-close-tab-action.
18402
184032019-09-28  Lars Ingebrigtsen  <larsi@gnus.org>
18404
18405	Expunge INBOX messages after splitting
18406
18407	* lisp/gnus/nnimap.el (nnimap-split-incoming-mail): Expunge
18408	articles after splitting (bug#37541).
18409
184102019-09-28  Lars Ingebrigtsen  <larsi@gnus.org>
18411
18412	Clean up nnimap-split-incoming-mail slightly
18413
18414	* lisp/gnus/nnimap.el (nnimap-split-incoming-mail): Don't call
18415	-delete-articles on empty lists (bug#37541).
18416
184172019-09-28  Lars Ingebrigtsen  <larsi@gnus.org>
18418
18419	Copy edit nnimap-expunge doc string
18420
18421	* lisp/gnus/nnimap.el (nnimap-expunge): Copy edit doc string.
18422
184232019-09-28  Eli Zaretskii  <eliz@gnu.org>
18424
18425	Improve indexing of ELisp manual
18426
18427	* doc/lispref/frames.texi (Font and Color Parameters): Add index
18428	entry for the 'mouse' face.
18429
184302019-09-28  Stefan Kangas  <stefankangas@gmail.com>
18431
18432	Fix customizing ibuffer-help-buffer-modes
18433
18434	* lisp/ibuffer.el (ibuffer-help-buffer-modes)
18435	* lisp/obsolete/info-edit.el (ibuffer-help-buffer-modes): Move
18436	Info-edit-mode reference to obsolete file.
18437
184382019-09-28  Stefan Kangas  <stefankangas@gmail.com>
18439
18440	Document ert test selectors in batch mode (Bug#37476)
18441
18442	* doc/misc/ert.texi (Running Tests in Batch Mode): Document test
18443	selectors.
18444
184452019-09-28  Stefan Kangas  <stefankangas@gmail.com>
18446
18447	Improve sorting in package list (Bug#37419)
18448
18449	* lisp/emacs-lisp/package.el (package-menu-mode): Allow sorting by
18450	version or description.
18451	(package-menu--version-predicate): Fix sorting by version.
18452	(package-menu--description-predicate): Fix sorting by description.
18453	(package-menu--archive-predicate): Fall back to sorting by name if
18454	archive is the same.
18455	(package-menu--name-predicate, package-menu--status-predicate): Add
18456	doc string.
18457	* etc/NEWS: Announce the above changes.
18458
184592019-09-28  Eli Zaretskii  <eliz@gnu.org>
18460
18461	More improvements of doc strings in text-property-search.el
18462
18463	* lisp/emacs-lisp/text-property-search.el (text-property-search-forward)
18464	(text-property-search-backward): Further improvements of doc
18465	strings.  (Bug#37488)
18466
184672019-09-28  Axel Svensson  <mail@axelsvensson.com>  (tiny change)
18468
18469	Update X keysym mapping
18470
18471	* lisp/term/x-win.el (x-keysym-table): Update the mappings
18472	using current Xorg data.  (Bug#37530)
18473
184742019-09-28  Stefan Kangas  <stefankangas@gmail.com>
18475
18476	Add bug reporting and link the manual on the about screen
18477
18478	* lisp/startup.el (fancy-about-text, normal-about-screen): Clarify
18479	that "Contribute" also describes how to report bugs.  Add new link
18480	"Emacs Manual".  (Bug#20697)
18481
184822019-09-28  Eli Zaretskii  <eliz@gnu.org>
18483
18484	Fix running on MS-Windows with non-existing home directory
18485
18486	* lisp/startup.el (startup--xdg-or-homedot): Don't access a
18487	non-existent user home directory on windows-nt systems.
18488	(Bug#37536)
18489
184902019-09-27  Lars Ingebrigtsen  <larsi@gnus.org>
18491
18492	Mention doc-view-scale-internally in the DocView manual node
18493
18494	* doc/emacs/misc.texi (DocView Navigation): Mention
18495	doc-view-scale-internally (bug#33226).
18496
184972019-09-27  Mauro Aranda  <maurooaranda@gmail.com>
18498
18499	Don't discard customizations in progress when adding comments (Bug#5358)
18500
18501	* lisp/cus-edit.el (custom-comment-show): Add docstring.  Save the
18502	widget value in the :shown-value property, before redrawing.
18503	(custom-variable-modified-p): New function, to complement the return
18504	values of custom-variable-state.
18505	(custom-variable-state-set): Use it.
18506	(custom-face-value-create): Add children to the custom-face widget
18507	before setting the state, to be able to check for user edits.
18508	(custom-face-state-set): Check for user edits before calling
18509	custom-face-state (bug#5358).
18510
18511	* test/lisp/custom-tests.el
18512	(custom-test-show-comment-preserves-changes): New test.
18513
185142019-09-27  Nikolaus Rath  <Nikolaus@rath.org>
18515
18516	Run gnus-summary-prepare-exit-hook after flags have been updated
18517
18518	* lisp/gnus/gnus-sum.el (gnus-summary-exit): Gnus message flags
18519	must be set before expiration, not afterwards (bug#21071).
18520
185212019-09-27  Lars Ingebrigtsen  <larsi@gnus.org>
18522
18523	Change the lighter in epa-info-mode
18524
18525	* lisp/epa.el (epa-info-mode): Change the name of the mode so that
18526	it doesn't look like it's Info mode (bug#7287).
18527
185282019-09-27  Lars Ingebrigtsen  <larsi@gnus.org>
18529
18530	gnus-thread-ignore-subject doc string clarification
18531
18532	* lisp/gnus/gnus-sum.el (gnus-thread-ignore-subject): Document
18533	that when not ignoring subjects, sorting will not happen as
18534	expected (bug#35513).
18535
185362019-09-27  Lars Ingebrigtsen  <larsi@gnus.org>
18537
18538	Fix documentation on `C-u a' on nndiary group
18539
18540	* doc/misc/gnus.texi (Diary Group Parameters): Remove apparently
18541	incorrect documentation about `C-u a' on nndiary groups
18542	(bug#36849).
18543
185442019-09-27  Lars Ingebrigtsen  <larsi@gnus.org>
18545
18546	Fix reversed check in mm-possibly-verify-or-decrypt
18547
18548	* lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt): Fix
18549	reverse check thinko that made unverified singed messages not
18550	display correctly.
18551
185522019-09-27  Wilson Snyder  <wsnyder@wsnyder.org>
18553
18554	.va/.vah/.sva/.svah now loads Verilog mode.
18555
18556	* lisp/files.el (auto-mode-alist): Support .va /.vah/.sva/.svah file
18557	extensions to load verilog-mode for Verilog-AMS.  Reported by Shareef
18558	Jalloq.
18559
185602019-09-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18561
18562	* lisp/net/nsm.el: Use lexical-binding
18563
18564	(nsm-check-tls-connection, nsm-query): Don't pass explicitly `obarray`
18565	since it's the default anyway.
18566	(nsm-query, nsm-query-user, nsm-save-host): Remove redundant
18567	advertised-calling-convention.
18568
185692019-09-27  Eli Zaretskii  <eliz@gnu.org>
18570
18571	Fix display of box around images
18572
18573	* src/xdisp.c (face_before_or_after_it_pos): Handle correctly
18574	when we are called with it->bidi_it.first_elt set.  (Bug#17114)
18575
185762019-09-26  Lars Ingebrigtsen  <larsi@gnus.org>
18577
18578	Fix problem with changing to correct NNTP server
18579
18580	* lisp/gnus/nntp.el (nntp-close-server):
18581	* lisp/gnus/nnimap.el (nnimap-close-server):
18582	* lisp/gnus/gnus-int.el (gnus-close-server): Take an optional DEFS
18583	parameter to enable switching to the correct nnoo server (bug#20319)
18584	when there's two servers with the same address.
18585
185862019-09-26  Nikolaus Rath  <Nikolaus@rath.org>
18587
18588	nnimap.el: support additional expunge options
18589
18590	* lisp/gnus/nnimap.el (nnimap-close-group)
18591	(nnimap-request-expire-articles, nnimap-delete-article)
18592	(nnimap-request-scan): Add new 'never, 'immediate, and 'on-exit
18593	settings for nnimap-expunge (bug#20670).
18594
185952019-09-26  Lars Ingebrigtsen  <larsi@gnus.org>
18596
18597	Tweak updating of readedness marks on the IMAP server
18598
18599	* lisp/gnus/nnimap.el (nnimap-request-set-mark): Ensure that
18600	ticking/unticking also toggles readedness on the IMAP server
18601	(bug#22590).
18602
186032019-09-26  Juanma Barranquero  <lekktu@gmail.com>
18604
18605	* src/w32fns.c (Fw32_register_hot_key): Fix typo in docstring
18606
186072019-09-26  Lars Ingebrigtsen  <larsi@gnus.org>
18608
18609	Fix nnir searching on nested Gnus topics
18610
18611	* lisp/gnus/nnir.el (gnus-group-make-nnir-group): On a topic line,
18612	search all the groups, even in sub-topics (bug#28090).
18613
186142019-09-26  Lars Ingebrigtsen  <larsi@gnus.org>
18615
18616	Don't hard-code the RSS structure so much in nnrss
18617
18618	* lisp/gnus/nnrss.el (nnrss-get-namespace-prefix): Find the URL in
18619	any section in the RSS (bug#34685).
18620
186212019-09-26  Lars Ingebrigtsen  <larsi@gnus.org>
18622
18623	Add a new `dom-search' function
18624
18625	* doc/lispref/text.texi (Document Object Model): Document it.
18626
18627	* lisp/dom.el (dom-search): New function.
18628
186292019-09-26  Katsumi Yamaoka  <yamaoka@jpl.org>
18630
18631	Make forward-button support help-echo function (bug#37515)
18632
18633	* lisp/button.el (forward-button): Support help-echo function.
18634
186352019-09-26  Juri Linkov  <juri@jurta.org>
18636
18637	Include ImageMagick file name regexps in image-file-name-regexp
18638
18639	* lisp/image-file.el (image-file-name-regexp): If compiled with
18640	ImageMagick, include file name extensions it can handle (bug#9516).
18641
186422019-09-26  Lars Ingebrigtsen  <larsi@gnus.org>
18643
18644	mm-possibly-verify-or-decrypt should only issue errors when decrypting
18645
18646	* lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt): Only do
18647	the warning about failed decryption when we're handing encrypted
18648	parts, not when doing verification.
18649
186502019-09-26  Stefan Kangas  <stefankangas@gmail.com>
18651
18652	Add key bindings for ibuffer filter commands
18653
18654	* lisp/ibuffer.el (ibuffer--filter-map): Add keybinding for
18655	'ibuffer-filter-chosen-by-completion' and
18656	'ibuffer-filter-by-directory'.  (Bug#6847)
18657
186582019-09-26  Stefan Kangas  <stefankangas@gmail.com>
18659
18660	Remove support for destructive splicing in elisp
18661
18662	* src/lread.c (read1): Don't handle destructive splicing in
18663	backquote expressions (e.g. ",.<identifier>").  (Bug#19790)
18664	(syms_of_lread): Remove Qcomma_dot.
18665	* src/print.c (print_object): Don't check for Qcomma_dot.
18666	* test/src/eval-tests.el
18667	(eval-tests-19790-backquote-comma-dot-substitution): New test.
18668	* etc/NEWS: Announce it.
18669
186702019-09-26  Lars Ingebrigtsen  <larsi@gnus.org>
18671
18672	Fix error in display-startup-screen
18673
18674	* lisp/startup.el (use-fancy-splash-screens-p): Fix error in
18675	display-startup-screen if create-image fails (bug#22072).
18676
186772019-09-26  Stefan Kangas  <stefankangas@gmail.com>
18678
18679	Add new function to clear tags in tabulated list
18680
18681	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-clear-all-tags):
18682	New function to clear all tags from padding area in current buffer.
18683	* doc/lispref/modes.texi (Tabulated List Mode): Document it.
18684	* etc/NEWS: Announce it.
18685
186862019-09-26  Mauro Aranda  <maurooaranda@gmail.com>
18687
18688	Don't indent unrelated widgets following widget of type 'other
18689
18690	* lisp/wid-edit.el (widget 'other): Use \n instead of the %n escape in the
18691	:format property of this widget.  If %n is used at the end of the
18692	format string, unrelated widgets get indented.  (Bug#12533)
18693
18694	* test/lisp/wid-edit-tests.el (widget-test-indentation-after-%n)
18695	(widget-test-indentation-after-newline)
18696	(widget-test-newline-and-indent-same-widget): New tests.
18697
186982019-09-26  Lars Ingebrigtsen  <larsi@gnus.org>
18699
18700	Make mm-view-pkcs7-verify use epg if requested
18701
18702	* lisp/gnus/mm-view.el (mm-view-pkcs7-verify): Respect
18703	mml-smime-use (bug#18393).
18704
187052019-09-26  Lars Ingebrigtsen  <larsi@gnus.org>
18706
18707	Make it possible to view S/MIME verified emails
18708
18709	* lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt): When
18710	dissecting the result, we need a header (bug#18393).
18711
18712	* lisp/gnus/mm-view.el (mm-view-pkcs7-verify): Insert the verified
18713	string.
18714
18715	* lisp/gnus/smime.el (smime-verify-region): Return the verified
18716	string.
18717
187182019-09-26  Lars Ingebrigtsen  <larsi@gnus.org>
18719
18720	Fix recent gnus-rescale-image change
18721
18722	* lisp/gnus/gnus-util.el (gnus-rescale-image): Don't bug out on
18723	non-graphical Emacs versions.
18724
187252019-09-26  Mattias Engdegård  <mattiase@acm.org>
18726
18727	* etc/NEWS: Note removal of internal rx symbols (bug#37517)
18728
187292019-09-26  Juanma Barranquero  <lekktu@gmail.com>
18730
18731	* lisp/desktop.el (desktop-read): With argument, ask the user for DIRNAME.
18732
18733	* etc/NEWS: Document it.
18734
187352019-09-26  Michael Albinus  <michael.albinus@gmx.de>
18736
18737	Avoid errors in tramp-tests with a remote ksh shell
18738
18739	* test/lisp/net/tramp-tests.el (tramp--test-ksh-p): New defun.
18740	(tramp-test41-utf8, tramp-test41-utf8-with-stat)
18741	(tramp-test41-utf8-with-perl, tramp-test41-utf8-with-ls):
18742	Skip, when remote shell is ksh.
18743
187442019-09-25  Mattias Engdegård  <mattiase@acm.org>
18745
18746	Add rx extension mechanism
18747
18748	Add a built-in set of extension macros: `rx-define', `rx-let' and
18749	`rx-let-eval'.
18750
18751	* lisp/emacs-lisp/rx.el (rx-constituents, rx-to-string): Doc updates.
18752	(rx--builtin-symbols, rx--builtin-names, rx--local-definitions)
18753	(rx--lookup-def, rx--substitute, rx--expand-template)
18754	(rx--make-binding, rx--make-named-binding, rx--extend-local-defs)
18755	(rx-let-eval, rx-let, rx-define): New.
18756	(rx--translate-symbol, rx--translate-form): Use extensions if any.
18757	(rx): Use local definitions.
18758	* test/lisp/emacs-lisp/rx-tests.el (rx-let, rx-define)
18759	(rx-to-string-define, rx-let-define, rx-let-eval): New.
18760	* etc/NEWS (Changes in Specialized Modes and Packages):
18761	* doc/lispref/searching.texi (Rx Notation, Rx Functions, Extending Rx):
18762	Add node about rx extensions.
18763
187642019-09-25  Mattias Engdegård  <mattiase@acm.org>
18765
18766	New rx implementation
18767
18768	* lisp/emacs-lisp/rx.el:
18769	* test/lisp/emacs-lisp/rx-tests.el:
18770	* doc/lispref/searching.texi (Rx Constructs):
18771	Rewrite rx for correctness, clarity, and performance.  The new
18772	implementation retains full compatibility and has more comprehensive
18773	tests.
18774
18775	* lisp/emacs-lisp/re-builder.el (reb-rx-font-lock-keywords):
18776	Adapt to changes in internal variables in rx.el.
18777
187782019-09-25  Juri Linkov  <juri@linkov.net>
18779
18780	Improve customization.
18781
18782	* lisp/tab-bar.el (tab-bar-new-tab-choice)
18783	(tab-bar-close-button-show): New defcustoms.
18784	(tab-bar-tab-name-function): New defvar.
18785
18786	* lisp/tab-line.el (tab-line-new-tab-choice)
18787	(tab-line-close-button-show): New defcustoms.
18788
187892019-09-25  Mattias Engdegård  <mattiase@acm.org>
18790
18791	Allow regexp-quote to return its argument
18792
18793	* src/search.c (Fregexp_quote): Only allocate a new string if needed.
18794	* doc/lispref/searching.texi (Regexp Functions):
18795	* etc/NEWS (Incompatible Lisp Changes): Document.
18796
187972019-09-25  Mauro Aranda  <maurooaranda@gmail.com>
18798
18799	Fix indentation of widgets (Bug#7851)
18800
18801	* lisp/wid-edit.el (widget--should-indent-p): New function, to decide
18802	whether to indent or not.
18803	(widget-checklist-value-add-item, widget-radio-add-item)
18804	(widget-editable-list-format-handler)
18805	(widget-editable-list-entry-create)
18806	(widget-group-value-create): Use it (bug#7851).
18807
188082019-09-25  Lars Ingebrigtsen  <larsi@gnus.org>
18809
18810	Make gnus-rescale-image work on modern Emacs versions
18811
18812	* lisp/gnus/gnus-util.el (gnus-rescale-image): Make this work with
18813	native image transforms.
18814
188152019-09-25  Eli Zaretskii  <eliz@gnu.org>
18816
18817	Improve documentation of 'text-property-search-forward'
18818
18819	* lisp/emacs-lisp/text-property-search.el (text-property-search-forward)
18820	(text-property-search-backward): Improve doc strings.  (Bug#37488)
18821
188222019-09-24  Juri Linkov  <juri@linkov.net>
18823
18824	Small fixes.  Bind [tab-line mouse-1] to mouse-select-window.
18825
18826	Revert an attempt to implement a non‐native tab bar on NS.
18827
188282019-09-24  Lars Ingebrigtsen  <larsi@gnus.org>
18829
18830	Make ImageMagick multi-image size calculations work for .ico files
18831
18832	* src/image.c (imagemagick_load_image): Compute image sizes
18833	correctly in multi-image .ico files and the like (bug#18333).
18834
188352019-09-24  Lars Ingebrigtsen  <larsi@gnus.org>
18836
18837	Slight shr-put-image clean up
18838
18839	* lisp/net/shr.el (shr-put-image): Use image-multi-frame-p
18840	directly, and remove outdated comments (image-multi-frame-p
18841	returns the delay).
18842
188432019-09-24  Alan Mackenzie  <acm@muc.de>
18844
18845	New edebug-spec, nested-backquote-form.  This fixes bug #31090
18846
18847	* lisp/emacs-lisp/edebug.el: (nested-backquote-form): a new edebug-spec which
18848	handles nested backquote structures without a , or ,@ "between" the outer and
18849	inner backquotes.
18850	(backquote-form): Use nested-backquote-form.
18851
188522019-09-24  Lars Ingebrigtsen  <larsi@gnus.org>
18853
18854	Make --with-imagemagick bug out if there's no support for it
18855
18856	* configure.ac (HAVE_IMAGEMAGICK): Stop configuration if the user
18857	has said --with-imagemagick, but there's no support for it
18858	(bug#24455).
18859
188602019-09-24  Pip Cet  <pipcet@gmail.com>
18861
18862	Allow a :stride argument so XBM boolvecs are in the right format.
18863
18864	* src/image.c (xbm_image_p): Explicitly specify the right stride if a
18865	bool vector is used as argument.
18866	* doc/lispref/display.texi (XBM Images): Describe bool vectors
18867	accurately.
18868	* etc/NEWS: Document the change (bug#36337).
18869
188702019-09-24  Michael Albinus  <michael.albinus@gmx.de>
18871
18872	* lisp/net/tramp-sh.el (tramp-get-remote-stat): Ban "stat" on Solaris.
18873
188742019-09-24  Noah Swainland  <nks@nks.sh>  (tiny change)
18875
18876	(calc): Fix link in doc string
18877
18878	* lisp/calc/calc.el (calc): Fix link in doc string (bug#37500).
18879
188802019-09-24  Lars Ingebrigtsen  <larsi@gnus.org>
18881
18882	Allow controlling when to send cookies when retrieving images in shr
18883
18884	* lisp/net/shr.el (shr--use-cookies-p): New function.
18885	(shr-tag-img): Use it.
18886	(shr-cookie-policy): New variable.
18887	(shr-save-contents): Use cookies.
18888
18889	* doc/misc/eww.texi (Advanced): Document it.
18890
188912019-09-24  Robert Pluim  <rpluim@gmail.com>
18892
18893	Document how to listen on all interfaces in the Elisp manual
18894
18895	* doc/lispref/processes.texi (Network Processes): Explain how to
18896	listen on all interfaces.
18897
188982019-09-24  Lars Ingebrigtsen  <larsi@gnus.org>
18899
18900	Allow url-insert-file-contents to work on 304 responses
18901
18902	* lisp/url/url-http.el (url-http--insert-file-helper): If the
18903	server answers 304 Not modified, then that's not an error
18904	(bug#26063).
18905
189062019-09-24  Lars Ingebrigtsen  <larsi@gnus.org>
18907
18908	Clean up url-parse-args slightly
18909
18910	* lisp/url/url-util.el (url-parse-args): Don't leave temporary
18911	buffer behind.  Clean up slightly.
18912
189132019-09-24  Lars Ingebrigtsen  <larsi@gnus.org>
18914
18915	Fix old problem with HTTPS HTTP 0.9 sentinels
18916
18917	* lisp/url/url-http.el (url-http-end-of-document-sentinel): Pass
18918	on the tls parameter if we have HTTPS (bug#14983).
18919
189202019-09-24  Eli Zaretskii  <eliz@gnu.org>
18921
18922	Resurrect support for negative frame geometry parameters on MS-Windows
18923
18924	* src/w32fns.c (my_create_window): Avoid assertion violations
18925	in XFIXNUM when the 'top' or 'left' frame parameters are
18926	neither fixnums nor 'unbound', in which case
18927	f->size_hint_flags are set by gui_figure_window_size.
18928	(Bug#37415)
18929
189302019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
18931
18932	Allow scrolling the NSM window
18933
18934	* lisp/net/nsm.el (nsm-query-user): Allow moving
18935	backwards/forwards in the NSM buffer if the window is too small to
18936	show all the details (bug#28069).
18937
189382019-09-23  Wilson Snyder  <wsnyder@wsnyder.org>
18939
18940	Verilog-Mode collected updates.
18941
18942	* lisp/progmodes/verilog-mode.el (verilog-auto-inst-param): Add regexp
18943	paramter to AUTOINSTPARAM to select which parameters to export.  Reported
18944	by Vish S.
18945	(verilog-build-defun-re): Fix `verilog-goto-defun' to find automatic
18946	function/tasks, bug1492.  Reported by Enze Chi.
18947	(verilog-preprocessor): Update default.
18948
189492019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
18950
18951	Rename "dumbquotes" to "smartquotes" in Gnus
18952
18953	* doc/misc/gnus.texi (Article Washing): Adjust documentation.
18954
18955	* etc/refcards/gnus-refcard.tex (subsection*{Notes}): Ditto
18956
18957	* lisp/gnus/gnus-art.el (gnus-article-smartquotes-map): Rename
18958	from gnus-article-dumbquotes-map and add obsolete alias.
18959	(article-treat-smartquotes): Ditto.
18960
18961	* lisp/gnus/gnus-sum.el (gnus-summary-make-menu-bar): Adjust menus.
18962
189632019-09-23  Jan Beich  <jbeich@vfemail.net>
18964
18965	mml-smime-openssl-sign): Use all the keys
18966
18967	* lisp/gnus/mml-smime.el (mml-smime-openssl-sign): Use all the
18968	keys in `smime-keys' for this identifier (bug#17780).
18969
189702019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
18971
18972	Adjust exif-tests.el to new interface
18973
189742019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
18975
18976	Fix regression in mm-possibly-verify-or-decrypt by previous patch
18977
18978	* lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt): Remove debugging
18979
189802019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
18981
18982	Fix regression in mm-possibly-verify-or-decrypt by previous patch
18983
18984	* lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt): Be less
18985	strict about what's considered a success.
18986
189872019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
18988
18989	Fix S/MIME continuation header when sending
18990
18991	* lisp/gnus/mml-smime.el (mml-smime-epg-sign): Fix continuation
18992	header.
18993
189942019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
18995
18996	make-network-process doc clarification
18997
18998	* src/process.c (Fmake_network_process): Further doc clarification
18999	for listening on "::".
19000
190012019-09-23  Paul Eggert  <eggert@cs.ucla.edu>
19002
19003	Bring back mention of NNTP gmane
19004
19005	Problem reported by Michael Albinus at:
19006	https://lists.gnu.org/r/emacs-devel/2019-09/msg00519.html
19007	* admin/notes/emba: Reintroduce mention of nttp+news.gmane.org,
19008	since that still works.
19009
190102019-09-23  Alan Third  <alan@idiocy.org>
19011	    martin rudalics  <rudalics@gmx.at>
19012
19013	Fix GNUstep build
19014
19015	* src/nsfont.m (nsfont_draw): Change type to match.
19016
190172019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
19018
19019	Fix cedet compilation warning
19020
19021	* lisp/cedet/semantic/db.el (semanticdb-dirty-p): Fix compilation
19022	warning by moving to after definition.
19023
190242019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
19025
19026	Update example in the Mail Aliases node of lispintro
19027
19028	* doc/lispintro/emacs-lisp-intro.texi (Mail Aliases): Change
19029	example to use Message mode, since that's the default for `C-x m'
19030	now (bug#13855).
19031
190322019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
19033
19034	Make mm-possibly-verify-or-decrypt pass decryption error
19035
19036	* lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt): If
19037	there's an error, report the error back in a new part (bug#25649).
19038
190392019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
19040
19041	* lisp/dired-aux.el (dired-copy-file-recursive): Make prompt clearer.
19042
190432019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
19044
19045	Don't bug out on invalid addresses in mml-secure-check-user-id
19046
19047	* lisp/gnus/mml-sec.el (mml-secure-check-user-id): Don't bug out
19048	on invalid addresses (bug#33613).
19049
190502019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
19051
19052	Tweak how much <sup>/<sub> raises/lowers text in shr
19053
19054	* lisp/net/shr.el (shr-tag-sup, shr-tag-sub): Raising by 0.5 gives
19055	very ugly displays.  0.2 seems sufficient for legibility.
19056
190572019-09-23  Mattias Engdegård  <mattiase@acm.org>
19058
19059	Fix trig simplification crash (bug#33052)
19060
19061	* lisp/calc/calc-alg.el (calcFunc-sec, calcFunc-csc, calcFunc-cot):
19062	Check that `math-known-sin' and `math-known-tan' succeeded before
19063	using their value in arithmetic.
19064	* test/lisp/calc/calc-tests.el (calc-test-trig): Add regression tests.
19065	Backport from master.
19066
190672019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
19068
19069	Signal errors if EPA can't verify data
19070
19071	* lisp/epa.el (epa-verify-region): Signal an error if the region
19072	couldn't be verified (bug#14720).
19073	(epa-verify-file): Say that the file couldn't be verified instead
19074	of just "...done".
19075
190762019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
19077
19078	Make "Show Hidden Headers" in Message buffers more obvious
19079
19080	* lisp/gnus/message.el (message-widen-and-recenter): New command
19081	to ensure that we show most of the headers (bug#23252).
19082	(message-mode-field-menu): Use it.
19083
190842019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
19085
19086	Add a NEWS entry for message citation levels
19087
190882019-09-23  Hong Xu  <hong@topbug.net>
19089
19090	Add different faces for different citation levels in Message mode
19091
19092	* lisp/gnus/message.el (message-font-lock-keywords)
19093	(message-font-lock-make-cited-text-matcher): Add support for
19094	different faces for different citation levels.  The faces are
19095	defined in the faces named `message-cited-text-N': N of the
19096	Mth citation level will be M mod 4.
19097	(message-cited-text-1, message-cited-text-2)
19098	(message-cited-text-3, message-cited-text-4): Add customization
19099	for the faces of 4 different citation level.  In the future, the
19100	number of faces may increase, as the code is flexible enough to
19101	automatically deal with that.
19102	(message-cite-level-function): Add a function to customize the
19103	determination of cite levels given the prefix of the cited text
19104	(bug#25022).
19105
191062019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
19107
19108	Add an `authinfo-hidden' variable
19109
19110	* lisp/auth-source.el (authinfo-hidden): New variable.
19111	(authinfo--hide-passwords): Use it to allow users to decide what
19112	to hide.
19113
191142019-09-23  nitishch  <nitishchandrachinta@gmail.com>  (tiny change)
19115
19116	"]" is not a standard citation prefix character
19117
19118	* lisp/mail/sendmail.el (mail-citation-prefix-regexp): Don't
19119	regard "]" as a citation prefix character (bug#25150).  This
19120	allows some motion commands (like forward-sexp) to behave more as
19121	expected in Message mode buffers.
19122
191232019-09-23  Mattias Engdegård  <mattiase@acm.org>
19124
19125	Fix linear equation system solving in Calc (bug#35374)
19126
19127	* lisp/calc/calcalg2.el (math-try-solve-for):
19128	To solve Ax^n=0 where A is a nonzero constant and x the variable to
19129	solve for, solve x^n=0 instead of solving A=0 (which obviously fails)
19130	or something equally stupid.
19131	* test/lisp/calc/calc-tests.el (calc-test-solve-linear-system): New.
19132
191332019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
19134
19135	Keep a cache of encoded Message contents to avoid re-GPG-in data
19136
19137	* lisp/gnus/gnus-msg.el (gnus-inews-do-gcc): Use it to avoid
19138	re-encoding.
19139
19140	* lisp/gnus/message.el (message-encoded-mail-cache): New variable.
19141
19142	* lisp/gnus/message.el (message-send-mail): Store encoded.
19143	(message--cache-encoded): New function.
19144	(message-do-fcc): Store encoded (bug#25155).
19145
191462019-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
19147
19148	* lisp/gnus/message.el (message-send-mail): Remove misleading comment.
19149
191502019-09-23  Juanma Barranquero  <lekktu@gmail.com>
19151
19152	Fix arg name of `text-property-search-{forward|backward}' (bug#37488)
19153
19154	* lisp/emacs-lisp/text-property-search.el
19155	(text-property-search-forward, text-property-search-backward):
19156	Rename arg NOT-IMMEDIATE to NOT-CURRENT.  Also fix docstring.
19157
191582019-09-23  Paul Eggert  <eggert@cs.ucla.edu>
19159
19160	Update some URLs
19161
19162	This mostly changes http: to https: in URLs.  It also updates
19163	some URLs that have moved, removes some URLs that no longer
19164	work, recommends against using procmail (procmail.org no
19165	longer works), and removes some mentions of the
19166	no-longer-existing Gmane, LPF and VTW.
19167	It doesn't update all URLs, just the ones I had time for.
19168	* GNUmakefile (help):
19169	* admin/admin.el (manual-doctype-string):
19170	* admin/charsets/Makefile.in (${charsetdir}/ALTERNATIVNYJ.map):
19171	* admin/charsets/mapconv:
19172	* lisp/net/soap-client.el (soap-create-envelope):
19173	* lisp/org/org.el (org-doi-server-url):
19174	* lisp/textmodes/bibtex.el (bibtex-generate-url-list):
19175	Prefer https: to http: un URLs.
19176
191772019-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19178
19179	Update from Gnulib
19180
19181	This incorporates:
19182	2019-09-22 Update some URLs
19183	2019-09-15 fcntl-h: fix compilation error of creat.c on MSVC
19184	2019-09-15 creat: new module
19185	2019-09-15 access: new module
19186	2019-09-09 Add option to assume best, not worst, when cross-compiling.
19187	* build-aux/config.guess, build-aux/config.sub, doc/misc/texinfo.tex:
19188	* lib/careadlinkat.c, lib/careadlinkat.h, lib/count-leading-zeros.h:
19189	* lib/count-trailing-zeros.h, lib/diffseq.h, lib/fcntl.in.h:
19190	* lib/ftoastr.c, lib/get-permissions.c:
19191	* lib/ieee754.in.h, lib/inttypes.in.h, lib/mktime.c, lib/open.c:
19192	* lib/pathmax.h, lib/pipe2.c, lib/stddef.in.h, lib/stdint.in.h:
19193	* lib/stdlib.in.h, lib/str-two-way.h, lib/string.in.h, lib/time.in.h:
19194	* lib/timegm.c, lib/unistd.in.h, m4/canonicalize.m4:
19195	* m4/extern-inline.m4, m4/fcntl_h.m4, m4/fdopendir.m4:
19196	* m4/getgroups.m4, m4/getopt.m4, m4/gettimeofday.m4:
19197	* m4/gnulib-common.m4, m4/largefile.m4:
19198	* m4/lstat.m4, m4/memmem.m4, m4/mktime.m4, m4/nocrash.m4, m4/open.m4:
19199	* m4/pselect.m4, m4/putenv.m4, m4/readlink.m4, m4/regex.m4:
19200	* m4/symlink.m4, m4/unistd_h.m4, m4/utimens.m4, m4/utimes.m4:
19201	Copy from Gnulib.
19202	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
19203	* m4/open-slash.m4: New file, copied from Gnulib.
19204
192052019-09-22  Stephen Gildea  <stepheng+savannah@gildea.com>
19206
19207	Expand time-stamp unit tests to cover all formatting options
19208
19209	* test/lisp/time-stamp-tests.el: Expand unit tests to cover all formatting options.
19210	These tests validate time-stamp-pattern formatting that has existed
19211	since at least Emacs 22 (released in 2007).  The tests cover both
19212	documented behavior and behavior implemented to support future migrations.
19213
19214	* test/lisp/time-stamp-tests.el (time-stamp-string): Add a second argument (TIME) to
19215	open a testing seam.  Have the unit tests call this public function.
19216
19217	* test/lisp/time-stamp-tests.el (time-stamp-string, time-stamp-string-preprocess):
19218	Remove the second pass through time-string--format.  (Previously both
19219	functions called it.)  It was used only to handle "%", but this is now
19220	handled by having time-stamp-string-preprocess not double it.
19221	Not doubling the "%" in time-stamp-string-preprocess fixes the padding
19222	of "%2%", which was discovered by the new unit tests to be wrong.
19223
192242019-09-22  Lars Ingebrigtsen  <larsi@gnus.org>
19225
19226	Clarify `debug' doc string
19227
19228	* lisp/emacs-lisp/debug.el (debug): Mention that inhibit-redisplay
19229	will inhibit the function.
19230
192312019-09-22  Lars Ingebrigtsen  <larsi@gnus.org>
19232
19233	Make Message warn about invalid addresses
19234
19235	* lisp/gnus/message.el (message-check-recipients): Warn about
19236	invalid email addresses (bug#32639).
19237
192382019-09-22  Lars Ingebrigtsen  <larsi@gnus.org>
19239
19240	Remove Gnus posting style reference to message-reply-headers
19241
19242	* doc/misc/gnus.texi (Posting Styles): Remove bit about
19243	message-reply-headers, because it has never worked.
19244
192452019-09-22  Lars Ingebrigtsen  <larsi@gnus.org>
19246
19247	gnus-use-atomic-windows should default to nil
19248
19249	* lisp/gnus/gnus-win.el (gnus-use-atomic-windows): Default to nil.
19250
192512019-09-22  Lars Ingebrigtsen  <larsi@gnus.org>
19252
19253	message-reply-headers doc fix
19254
19255	* doc/misc/gnus.texi (Posting Styles): Update the type of the
19256	message-reply-headers object.
19257
192582019-09-22  Lars Ingebrigtsen  <larsi@gnus.org>
19259
19260	mailclient can't send attachments
19261
19262	* lisp/mail/mailclient.el (mailclient-send-it): Warn about trying
19263	to send attachments (bug#34992).
19264
192652019-09-22  Juri Linkov  <juri@linkov.net>
19266
19267	Improve customizability and better tab separators.
19268
19269	* lisp/tab-bar.el (tab-bar-tabs-function): New defvar.
19270
19271	* lisp/tab-line.el (tab-line-tab-name-function)
19272	(tab-line-tabs-function): New defvars.
19273
192742019-09-22  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
19275
19276	Ignore comments and strings when recognizing JSX
19277
19278	* lisp/progmodes/js.el (js-syntax-propertize): Ignore comments and
19279	strings.
19280	* test/manual/indent/jsx-comment-string.jsx: New test.
19281
192822019-09-22  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
19283
19284	Make js-jsx-regexps case-sensitive
19285
19286	The regexp in this list used a capitalized “React” because it actually
19287	should be capitalized like that.  Otherwise, the following code would
19288	produce a false positive match: import Thing from './react/Thing'
19289
19290	* lisp/progmodes/js.el (js-jsx-regexps): Update docstring.
19291	(js-jsx--detect-and-enable): Match case-sensitively when determining
19292	whether JSX should be enabled.
19293
192942019-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19295
19296	Avoid crashes when casifying noncontiguous regions
19297
19298	This is a followon fix for Bug#37477.
19299	* lisp/simple.el (region-extract-function):
19300	Use setq here, since the var is now defined in C code.
19301	* src/casefiddle.c (casify_pnc_region): New function.
19302	(Fupcase_region, Fdowncase_region, Fcapitalize_region)
19303	(Fupcase_initials_region): Use it.
19304	(Fupcase_initials_region): Add region-noncontiguous-p flag
19305	for consistency with the others.  All uses changed.
19306	(syms_of_casefiddle): Define Qbounds, Vregion_extract_function.
19307	* src/insdel.c (prepare_to_modify_buffer_1):
19308	* src/keyboard.c (command_loop_1):
19309	Use Vregion_extraction_function.
19310	* src/insdel.c (syms_of_insdel): No need to define
19311	Qregion_extract_function.
19312	* test/src/casefiddle-tests.el (casefiddle-oldfunc): New var.
19313	(casefiddle-loopfunc, casefiddle-badfunc): New functions.
19314	(casefiddle-invalid-region-extract-function): New test.
19315
193162019-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
19317
19318	* lisp/help-fns.el: Fix missing dependency
19319
193202019-09-22  Lars Ingebrigtsen  <larsi@gnus.org>
19321
19322	Remove references to domain that no longer exists
19323
19324	* doc/misc/gnus-faq.texi (FAQ 7-1):
19325	* doc/misc/gnus.texi (Maildir):
19326	* lisp/gnus/nnmaildir.el: qmail.org no longer exists.
19327
193282019-09-22  Lars Ingebrigtsen  <larsi@gnus.org>
19329
19330	Fix "password" detection in authinfo mode
19331
19332	* lisp/auth-source.el (authinfo--hide-passwords): Ensure that we
19333	only hit actual "password" entries and not "foo-password" and the
19334	like.
19335
193362019-09-22  Lars Ingebrigtsen  <larsi@gnus.org>
19337
19338	Fix warning about @xref in parenthesis
19339
19340	* doc/misc/gnus.texi (Window Layout): Use @pxref in parentheses.
19341
193422019-09-22  Lars Ingebrigtsen  <larsi@gnus.org>
19343
19344	Note that image-mode automatically rotates
19345
193462019-09-22  Lars Ingebrigtsen  <larsi@gnus.org>
19347
19348	Automatically rotate images in image-mode based on Exif data
19349
19350	* lisp/image-mode.el (image-toggle-display-image): Get the
19351	orientation from the Exif data, if any.
19352
193532019-09-22  Lars Ingebrigtsen  <larsi@gnus.org>
19354
19355	Adjust the exif.el interface functions
19356
19357	* lisp/image/exif.el (exif-parse-buffer): New function.
19358	(exif-orientation): Ditto.
19359	(exif-error): New error symbol, and adjust all error signaling to
19360	only use that signal.
19361
193622019-09-22  Andreas Schwab  <schwab@linux-m68k.org>
19363
19364	Fix compilation with CHECK_STRUCTS
19365
19366	* src/pdumper.c (dump_buffer): Update hash of struct buffer.
19367
193682019-09-21  Eric Abrahamsen  <eric@ericabrahamsen.net>
19369
19370	New option for making Gnus window layouts atomic
19371
19372	* lisp/gnus/gnus-win.el (gnus-use-atomic-windows): New boolean
19373	  customization option.
19374	  (gnus-configure-windows): When removing old window layouts, check
19375	  for and remove atomicity.
19376	  (gnus-configure-windows): When gnus-use-atomic-windows is non-nil,
19377	  make Gnus window layouts atomic.
19378	* doc/misc/gnus.texi (Window Layout): Document.
19379
193802019-09-21  Stefan Kangas  <stefankangas@gmail.com>
19381
19382	* src/fns.c (Fbuffer_hash): Improve doc string.
19383
193842019-09-21  Juri Linkov  <juri@linkov.net>
19385
19386	Support rectangular regions in capitalize-region and capitalize-dwim.
19387
19388	* lisp/simple.el (capitalize-dwim): Add arg region-noncontiguous-p
19389	in capitalize-region call.
19390
19391	* src/casefiddle.c (Fcapitalize_region): Add arg region-noncontiguous-p.
19392	If non-nil, operate on multiple chunks.  (Bug#37477)
19393	(Fdowncase_region): Use builtin symbol Qregion_extract_function
19394	rather than calling intern.
19395
193962019-09-21  Juri Linkov  <juri@linkov.net>
19397
19398	Take into account FRAME_TAB_BAR height in more places.
19399
19400	* src/dispnew.c (handle_window_change_signal, init_display_interactive):
19401	* src/frame.c (make_terminal_frame, Fmake_terminal_frame):
19402	* src/keyboard.c (Fsuspend_emacs):
19403	* src/term.c (Fresume_tty):
19404	* src/xterm.c (x_check_fullscreen):
19405	Subtract FRAME_TAB_BAR_LINES.
19406
19407	* src/xterm.c (x_new_font): Set FRAME_TAB_BAR_HEIGHT.
19408	(x_new_font, x_check_fullscreen, x_set_window_size_1)
19409	(x_set_window_size, x_wm_set_size_hint): Add FRAME_TABBAR_HEIGHT.
19410
194112019-09-21  Eric Abrahamsen  <eric@ericabrahamsen.net>
19412
19413	Use eieio-object-p, not obsolete object-p
19414
19415	Continued fixes for a81223aeaa
19416
19417	* lisp/gnus/gnus-registry.el (gnus-registry-article-marks-to-names,
19418	  gnus-registry-article-marks-to-chars): object-p is obsolete.
19419
194202019-09-21  Stefan Kangas  <stefankangas@gmail.com>
19421
19422	Several doc fixes in package.el
19423
19424	* lisp/emacs-lisp/package.el (top-level)
19425	(package-check-signature, package--from-builtin)
19426	(package-desc-full-name, package-desc-suffix)
19427	(package-desc--keywords, package--bi-desc)
19428	(package-process-define-package, package-archive-base)
19429	(package-install-from-archive, package-install-from-buffer)
19430	(package-install-file, package-autoremove, describe-package-1)
19431	(package-install-button-action, package-delete-button-action)
19432	(package-keyword-button-action, package-make-button)
19433	(package--print-email-button, package-list-unversioned)
19434	(package--emacs-version-list, package-menu-toggle-hiding)
19435	(package-hidden-regexps, package-menu-hide-package)
19436	(package-menu-get-status, package-menu--find-upgrades)
19437	(package-menu--post-refresh): Doc fixes.  (Bug#37410)
19438
194392019-09-21  Paul Eggert  <eggert@cs.ucla.edu>
19440
19441	Revert too-picky file-access tests
19442
19443	Problem reported by Andreas Schwab (Bug#37475).
19444	* doc/lispref/files.texi (Writing to Files)
19445	(Testing Accessibility, Kinds of Files):
19446	Document that accessibility and file-type predicates return nil
19447	if there is trouble determining accessibility or type.
19448	* etc/NEWS: Adjust, and list the affected primitives.
19449	* src/callproc.c (init_callproc): Go back to Ffile_exists_p.
19450	* src/fileio.c (PICKY_EACCES, file_test_errno):
19451	Remove.  All uses removed.
19452	(Ffile_name_case_insensitive_p, Ffile_exists_p, Ffile_symlink_p)
19453	(Ffile_directory_p, Ffile_regular_p): Document that these
19454	functions return nil if there is trouble.
19455	(Ffile_name_case_insensitive_p, check_file_access)
19456	(Ffile_writable_p, Ffile_symlink_p, Ffile_directory_p)
19457	(Ffile_accessible_directory_p, Ffile_regular_p)
19458	* src/lread.c (Fload):
19459	Go back to treating trouble in determining the answer as if the
19460	file were missing.
19461	* src/fileio.c (Ffile_newer_than_file_p): Use file_attribute_errno
19462	not file_test_errno, since returning nil is not appropriate when
19463	there are two files to test; e.g., in the rare cases where both
19464	file timestamps have overflowed then neither t nor nil is correct.
19465
194662019-09-21  Noam Postavsky  <npostavs@gmail.com>
19467
19468	Remove lisp/erc/ file-local indent-tabs-mode settings
19469
19470	* lisp/erc/erc-autoaway.el:
19471	* lisp/erc/erc-backend.el:
19472	* lisp/erc/erc-button.el:
19473	* lisp/erc/erc-compat.el:
19474	* lisp/erc/erc-dcc.el:
19475	* lisp/erc/erc-fill.el:
19476	* lisp/erc/erc-ibuffer.el:
19477	* lisp/erc/erc-identd.el:
19478	* lisp/erc/erc-imenu.el:
19479	* lisp/erc/erc-join.el:
19480	* lisp/erc/erc-list.el:
19481	* lisp/erc/erc-log.el:
19482	* lisp/erc/erc-match.el:
19483	* lisp/erc/erc-menu.el:
19484	* lisp/erc/erc-netsplit.el:
19485	* lisp/erc/erc-networks.el:
19486	* lisp/erc/erc-notify.el:
19487	* lisp/erc/erc-page.el:
19488	* lisp/erc/erc-pcomplete.el:
19489	* lisp/erc/erc-replace.el:
19490	* lisp/erc/erc-ring.el:
19491	* lisp/erc/erc-services.el:
19492	* lisp/erc/erc-sound.el:
19493	* lisp/erc/erc-speedbar.el:
19494	* lisp/erc/erc-stamp.el:
19495	* lisp/erc/erc-track.el:
19496	* lisp/erc/erc-truncate.el:
19497	* lisp/erc/erc-xdcc.el:
19498	* lisp/erc/erc.el: Remove indent-tabs-mode setting, so that we follow
19499	Emacs' global indent-tabs-mode=nil setting (and much of the
19500	indentation in these fails is already spaces anyway).  Also remove
19501	tab-width=8 settings, since those are redundant with the setting in
19502	the top-level .dir-locals.el.
19503
195042019-09-21  Lars Ingebrigtsen  <larsi@gnus.org>
19505
19506	Fix some commentary typos in exif.el
19507
19508	* lisp/image/exif.el (exif--parse-exif-chunk)
19509	(exif--parse-directory): Commentary typo fixes.
19510
195112019-09-21  Lars Ingebrigtsen  <larsi@gnus.org>
19512
19513	Add an Exif parsing library
19514
19515	* lisp/image/exif.el: New file (bug#23070).
19516
19517	* test/lisp/image/exif-tests.el: Add some basic tests.
19518
195192019-09-21  Alan Mackenzie  <acm@muc.de>
19520
19521	CC Mode: Fix wrong fontification of FOO in ASSERT (FOO && !BAR)
19522
19523	* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Don't recognize the
19524	construct in CASE 18, unless additionally at-decl-end is set.
19525
195262019-09-21  Lars Ingebrigtsen  <larsi@gnus.org>
19527
19528	Fix two ` characters in NEWS
19529
195302019-09-21  Lars Ingebrigtsen  <larsi@gnus.org>
19531
19532	Hide passwords in .authinfo and .netrc files
19533
19534	* lisp/auth-source.el (authinfo-mode): New mode (bug#28785).
19535	(authinfo--hide-passwords, authinfo--toggle-display): New functions.
19536
19537	* lisp/files.el (auto-mode-alist): Use authinfo-mode for .authinfo
19538	and .netrc files.
19539
195402019-09-21  Lars Ingebrigtsen  <larsi@gnus.org>
19541
19542	Allow reveal.el to toggle `display' properties
19543
19544	* lisp/reveal.el (reveal-open-new-overlays): Allow also toggling
19545	`displa' overlay properties (bug#28785).
19546
195472019-09-21  Lars Ingebrigtsen  <larsi@gnus.org>
19548
19549	Mention image caching in the `image-size' doc string
19550
19551	* src/image.c (Fimage_size): Mention that this function caches
19552	images, and what to do about that (bug#33275).
19553
195542019-09-21  Lars Ingebrigtsen  <larsi@gnus.org>
19555
19556	Mention how to listen to all interfaces in make-network-process
19557
19558	* src/process.c (Fmake_network_process): Mention how to listen to
19559	all interfaces (bug#34617).
19560
195612019-09-21  Michael Albinus  <michael.albinus@gmx.de>
19562
19563	* lisp/net/tramp.el (tramp-handle-file-modes): Check for nil file-attributes.
19564
195652019-09-21  Eli Zaretskii  <eliz@gnu.org>
19566
19567	* lisp/completion.el (completion-kill-region): Doc fix.
19568
195692019-09-20  Eric Abrahamsen  <eric@ericabrahamsen.net>
19570
19571	Fix to a81223aeaa
19572
19573	* lisp/gnus/gnus-registry.el (gnus-registry-article-marks-to-chars):
19574	  (gnus-registry-article-marks-to-names): The registry is an object,
19575	  not a hash table.
19576
195772019-09-20  Lars Ingebrigtsen  <larsi@gnus.org>
19578
19579	Allow the user to specify Content-type in Message mode
19580
19581	* lisp/gnus/message.el (message-encode-message-body): Pass in the
19582	content type if the user has given one.
19583
19584	* lisp/gnus/mml.el (mml-parse-1): Remove bogus peek at
19585	Content-type (there are no headers here)  (bug#36527).
19586
19587	* lisp/gnus/mml.el (mml-generate-mime): Respect that.
19588
195892019-09-20  Lars Ingebrigtsen  <larsi@gnus.org>
19590
19591	Move describe-face to the new help-fns machinery
19592
19593	* lisp/help-fns.el (describe-face): Move to here from faces.el and
19594	split up (bug#36670).
19595	(help-fns--face-custom-version-info):
19596	(help-fns--face-attributes): Factored out into own functions.
19597	(help-fns-describe-face-functions): New variable.
19598
19599	* lisp/emacs-lisp/subr-x.el (when-let): Add autoload cookie.
19600
196012019-09-20  Juanma Barranquero  <lekktu@gmail.com>
19602
19603	lisp/*.el: Fix typos and other trivial doc fixes
19604
19605	* lisp/allout-widgets.el (allout-widgets-auto-activation)
19606	(allout-current-decorated-p):
19607	* lisp/auth-source.el (auth-source-protocols):
19608	* lisp/autorevert.el (auto-revert-set-timer):
19609	* lisp/battery.el (battery-mode-line-limit):
19610	* lisp/calc/calcalg3.el (math-map-binop):
19611	* lisp/calendar/cal-dst.el (calendar-dst-find-startend):
19612	* lisp/calendar/cal-mayan.el (calendar-mayan-long-count-to-absolute):
19613	* lisp/calendar/calendar.el (calendar-date-echo-text)
19614	(calendar-generate-month, calendar-string-spread)
19615	(calendar-cursor-to-date, calendar-read, calendar-read-date)
19616	(calendar-mark-visible-date, calendar-dayname-on-or-before):
19617	* lisp/calendar/diary-lib.el (diary-ordinal-suffix):
19618	* lisp/cedet/ede/autoconf-edit.el (autoconf-new-program)
19619	(autoconf-find-last-macro, autoconf-parameter-strip):
19620	* lisp/cedet/ede/config.el (ede-target-with-config-build):
19621	* lisp/cedet/ede/linux.el (ede-linux--detect-architecture)
19622	(ede-linux--get-architecture):
19623	* lisp/cedet/semantic/complete.el (semantic-collector-calculate-cache)
19624	(semantic-displayer-abstract, semantic-displayer-point-position):
19625	* lisp/cedet/semantic/format.el (semantic-format-face-alist)
19626	(semantic-format-tag-short-doc):
19627	* lisp/cedet/semantic/fw.el (semantic-find-file-noselect):
19628	* lisp/cedet/semantic/idle.el (semantic-idle-scheduler-work-idle-time)
19629	(semantic-idle-breadcrumbs-display-function)
19630	(semantic-idle-breadcrumbs-format-tag-list-function):
19631	* lisp/cedet/semantic/lex.el (semantic-lex-map-types)
19632	(define-lex, define-lex-block-type-analyzer):
19633	* lisp/cedet/semantic/senator.el (senator-search-default-tag-filter):
19634	* lisp/cedet/semantic/symref.el (semantic-symref-result)
19635	(semantic-symref-hit-to-tag-via-db):
19636	* lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
19637	* lisp/cedet/semantic/tag.el (semantic-tag-new-variable)
19638	(semantic-tag-new-include, semantic-tag-new-package)
19639	(semantic-tag-set-faux, semantic-create-tag-proxy)
19640	(semantic-tag-function-parent)
19641	(semantic-tag-components-with-overlays):
19642	* lisp/cedet/srecode/cpp.el (srecode-cpp-namespaces)
19643	(srecode-semantic-handle-:c, srecode-semantic-apply-tag-to-dict):
19644	* lisp/cedet/srecode/dictionary.el (srecode-create-dictionary)
19645	(srecode-dictionary-add-entries, srecode-dictionary-lookup-name)
19646	(srecode-create-dictionaries-from-tags):
19647	* lisp/cmuscheme.el (scheme-compile-region):
19648	* lisp/color.el (color-lab-to-lch):
19649	* lisp/doc-view.el (doc-view-image-width)
19650	(doc-view-set-up-single-converter):
19651	* lisp/dynamic-setting.el (font-setting-change-default-font)
19652	(dynamic-setting-handle-config-changed-event):
19653	* lisp/elec-pair.el (electric-pair-text-pairs)
19654	(electric-pair-skip-whitespace-function)
19655	(electric-pair-string-bound-function):
19656	* lisp/emacs-lisp/avl-tree.el (avl-tree--del-balance)
19657	(avl-tree-member, avl-tree-mapcar, avl-tree-iter):
19658	* lisp/emacs-lisp/bytecomp.el (byte-compile-generate-call-tree):
19659	* lisp/emacs-lisp/checkdoc.el (checkdoc-autofix-flag)
19660	(checkdoc-spellcheck-documentation-flag, checkdoc-ispell)
19661	(checkdoc-ispell-current-buffer, checkdoc-ispell-interactive)
19662	(checkdoc-ispell-message-interactive)
19663	(checkdoc-ispell-message-text, checkdoc-ispell-start)
19664	(checkdoc-ispell-continue, checkdoc-ispell-comments)
19665	(checkdoc-ispell-defun):
19666	* lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
19667	* lisp/emacs-lisp/eieio-custom.el (eieio-read-customization-group):
19668	* lisp/emacs-lisp/lisp.el (forward-sexp, up-list):
19669	* lisp/emacs-lisp/package-x.el (package--archive-contents-from-file):
19670	* lisp/emacs-lisp/package.el (package-desc)
19671	(package--make-autoloads-and-stuff, package-hidden-regexps):
19672	* lisp/emacs-lisp/tcover-ses.el (ses-exercise-startup):
19673	* lisp/emacs-lisp/testcover.el (testcover-nohits)
19674	(testcover-1value):
19675	* lisp/epg.el (epg-receive-keys, epg-start-edit-key):
19676	* lisp/erc/erc-backend.el (erc-server-processing-p)
19677	(erc-split-line-length, erc-server-coding-system)
19678	(erc-server-send, erc-message):
19679	* lisp/erc/erc-button.el (erc-button-face, erc-button-alist)
19680	(erc-browse-emacswiki):
19681	* lisp/erc/erc-ezbounce.el (erc-ezbounce, erc-ezb-get-login):
19682	* lisp/erc/erc-fill.el (erc-fill-variable-maximum-indentation):
19683	* lisp/erc/erc-log.el (erc-current-logfile):
19684	* lisp/erc/erc-match.el (erc-log-match-format)
19685	(erc-text-matched-hook):
19686	* lisp/erc/erc-netsplit.el (erc-netsplit, erc-netsplit-debug):
19687	* lisp/erc/erc-networks.el (erc-server-alist)
19688	(erc-networks-alist, erc-current-network):
19689	* lisp/erc/erc-ring.el (erc-input-ring-index):
19690	* lisp/erc/erc-speedbar.el (erc-speedbar)
19691	(erc-speedbar-update-channel):
19692	* lisp/erc/erc-stamp.el (erc-timestamp-only-if-changed-flag):
19693	* lisp/erc/erc-track.el (erc-track-position-in-mode-line)
19694	(erc-track-remove-from-mode-line, erc-modified-channels-update)
19695	(erc-track-last-non-erc-buffer, erc-track-sort-by-importance)
19696	(erc-track-get-active-buffer):
19697	* lisp/erc/erc.el (erc-get-channel-user-list)
19698	(erc-echo-notice-hook, erc-echo-notice-always-hook)
19699	(erc-wash-quit-reason, erc-format-@nick):
19700	* lisp/ffap.el (ffap-latex-mode):
19701	* lisp/files.el (abort-if-file-too-large)
19702	(dir-locals--get-sort-score, buffer-stale--default-function):
19703	* lisp/filesets.el (filesets-tree-max-level, filesets-data)
19704	(filesets-update-pre010505):
19705	* lisp/gnus/gnus-agent.el (gnus-agent-flush-cache):
19706	* lisp/gnus/gnus-art.el (gnus-article-encrypt-protocol)
19707	(gnus-button-prefer-mid-or-mail):
19708	* lisp/gnus/gnus-cus.el (gnus-group-parameters):
19709	* lisp/gnus/gnus-demon.el (gnus-demon-handlers)
19710	(gnus-demon-run-callback):
19711	* lisp/gnus/gnus-dired.el (gnus-dired-print):
19712	* lisp/gnus/gnus-icalendar.el (gnus-icalendar-event-from-buffer):
19713	* lisp/gnus/gnus-range.el (gnus-range-normalize):
19714	* lisp/gnus/gnus-spec.el (gnus-pad-form):
19715	* lisp/gnus/gnus-srvr.el (gnus-server-agent, gnus-server-cloud)
19716	(gnus-server-opened, gnus-server-closed, gnus-server-denied)
19717	(gnus-server-offline):
19718	* lisp/gnus/gnus-sum.el (gnus-refer-thread-use-nnir)
19719	(gnus-refer-thread-limit-to-thread)
19720	(gnus-summary-limit-include-thread, gnus-summary-refer-thread)
19721	(gnus-summary-find-matching):
19722	* lisp/gnus/gnus-util.el (gnus-rescale-image):
19723	* lisp/gnus/gnus.el (gnus-summary-line-format, gnus-no-server):
19724	* lisp/gnus/mail-source.el (mail-source-incoming-file-prefix):
19725	* lisp/gnus/message.el (message-cite-reply-position)
19726	(message-cite-style-outlook, message-cite-style-thunderbird)
19727	(message-cite-style-gmail, message--send-mail-maybe-partially):
19728	* lisp/gnus/mm-extern.el (mm-inline-external-body):
19729	* lisp/gnus/mm-partial.el (mm-inline-partial):
19730	* lisp/gnus/mml-sec.el (mml-secure-message-sign)
19731	(mml-secure-message-sign-encrypt, mml-secure-message-encrypt):
19732	* lisp/gnus/mml2015.el (mml2015-epg-key-image)
19733	(mml2015-epg-key-image-to-string):
19734	* lisp/gnus/nndiary.el (nndiary-reminders, nndiary-get-new-mail):
19735	* lisp/gnus/nnheader.el (nnheader-directory-files-is-safe):
19736	* lisp/gnus/nnir.el (nnir-search-history)
19737	(nnir-imap-search-other, nnir-artlist-length)
19738	(nnir-artlist-article, nnir-artitem-group, nnir-artitem-number)
19739	(nnir-artitem-rsv, nnir-article-group, nnir-article-number)
19740	(nnir-article-rsv, nnir-article-ids, nnir-categorize)
19741	(nnir-retrieve-headers-override-function)
19742	(nnir-imap-default-search-key, nnir-hyrex-additional-switches)
19743	(gnus-group-make-nnir-group, nnir-run-namazu, nnir-read-parms)
19744	(nnir-read-parm, nnir-read-server-parm, nnir-search-thread):
19745	* lisp/gnus/nnmairix.el (nnmairix-default-group)
19746	(nnmairix-propagate-marks):
19747	* lisp/gnus/smime.el (smime-keys, smime-crl-check)
19748	(smime-verify-buffer, smime-noverify-buffer):
19749	* lisp/gnus/spam-report.el (spam-report-url-ping-mm-url):
19750	* lisp/gnus/spam.el (spam-spamassassin-positive-spam-flag-header)
19751	(spam-spamassassin-spam-status-header, spam-sa-learn-rebuild)
19752	(spam-classifications, spam-check-stat, spam-spamassassin-score):
19753	* lisp/help.el (describe-minor-mode-from-symbol):
19754	* lisp/hippie-exp.el (hippie-expand-ignore-buffers):
19755	* lisp/htmlfontify.el (hfy-optimizations, hfy-face-resolve-face)
19756	(hfy-begin-span):
19757	* lisp/ibuf-ext.el (ibuffer-update-saved-filters-format)
19758	(ibuffer-saved-filters, ibuffer-old-saved-filters-warning)
19759	(ibuffer-filtering-qualifiers, ibuffer-repair-saved-filters)
19760	(eval, ibuffer-unary-operand, file-extension, directory):
19761	* lisp/image-dired.el (image-dired-cmd-pngcrush-options):
19762	* lisp/image-mode.el (image-toggle-display):
19763	* lisp/international/ccl.el (ccl-compile-read-multibyte-character)
19764	(ccl-compile-write-multibyte-character):
19765	* lisp/international/kkc.el (kkc-save-init-file):
19766	* lisp/international/latin1-disp.el (latin1-display):
19767	* lisp/international/ogonek.el (ogonek-name-encoding-alist)
19768	(ogonek-information, ogonek-lookup-encoding)
19769	(ogonek-deprefixify-region):
19770	* lisp/isearch.el (isearch-filter-predicate)
19771	(isearch--momentary-message):
19772	* lisp/jsonrpc.el (jsonrpc-connection-send)
19773	(jsonrpc-process-connection, jsonrpc-shutdown)
19774	(jsonrpc--async-request-1):
19775	* lisp/language/tibet-util.el (tibetan-char-p):
19776	* lisp/mail/feedmail.el (feedmail-queue-use-send-time-for-date)
19777	(feedmail-last-chance-hook, feedmail-before-fcc-hook)
19778	(feedmail-send-it-immediately-wrapper, feedmail-find-eoh):
19779	* lisp/mail/hashcash.el (hashcash-generate-payment)
19780	(hashcash-generate-payment-async, hashcash-insert-payment)
19781	(hashcash-verify-payment):
19782	* lisp/mail/rmail.el (rmail-movemail-variant-in-use)
19783	(rmail-get-attr-value):
19784	* lisp/mail/rmailmm.el (rmail-mime-prefer-html, rmail-mime):
19785	* lisp/mail/rmailsum.el (rmail-summary-show-message):
19786	* lisp/mail/supercite.el (sc-raw-mode-toggle):
19787	* lisp/man.el (Man-start-calling):
19788	* lisp/mh-e/mh-acros.el (mh-do-at-event-location)
19789	(mh-iterate-on-messages-in-region, mh-iterate-on-range):
19790	* lisp/mh-e/mh-alias.el (mh-alias-system-aliases)
19791	(mh-alias-reload, mh-alias-ali)
19792	(mh-alias-canonicalize-suggestion, mh-alias-add-alias-to-file)
19793	(mh-alias-add-alias):
19794	* lisp/mouse.el (mouse-save-then-kill):
19795	* lisp/net/browse-url.el (browse-url-default-macosx-browser):
19796	* lisp/net/eudc.el (eudc-set, eudc-variable-protocol-value)
19797	(eudc-variable-server-value, eudc-update-variable)
19798	(eudc-expand-inline):
19799	* lisp/net/eudcb-bbdb.el (eudc-bbdb-format-record-as-result):
19800	* lisp/net/eudcb-ldap.el (eudc-ldap-get-field-list):
19801	* lisp/net/pop3.el (pop3-list):
19802	* lisp/net/soap-client.el (soap-namespace-put)
19803	(soap-xs-parse-sequence, soap-parse-envelope):
19804	* lisp/net/soap-inspect.el (soap-inspect-xs-complex-type):
19805	* lisp/nxml/rng-xsd.el (rng-xsd-date-to-days):
19806	* lisp/org/ob-C.el (org-babel-prep-session:C)
19807	(org-babel-load-session:C):
19808	* lisp/org/ob-J.el (org-babel-execute:J):
19809	* lisp/org/ob-asymptote.el (org-babel-prep-session:asymptote):
19810	* lisp/org/ob-awk.el (org-babel-execute:awk):
19811	* lisp/org/ob-core.el (org-babel-process-file-name):
19812	* lisp/org/ob-ebnf.el (org-babel-execute:ebnf):
19813	* lisp/org/ob-forth.el (org-babel-execute:forth):
19814	* lisp/org/ob-fortran.el (org-babel-execute:fortran)
19815	(org-babel-prep-session:fortran, org-babel-load-session:fortran):
19816	* lisp/org/ob-groovy.el (org-babel-execute:groovy):
19817	* lisp/org/ob-io.el (org-babel-execute:io):
19818	* lisp/org/ob-js.el (org-babel-execute:js):
19819	* lisp/org/ob-lilypond.el (org-babel-default-header-args:lilypond)
19820	(org-babel-lilypond-compile-post-tangle)
19821	(org-babel-lilypond-display-pdf-post-tangle)
19822	(org-babel-lilypond-tangle)
19823	(org-babel-lilypond-execute-tangled-ly)
19824	(org-babel-lilypond-compile-lilyfile)
19825	(org-babel-lilypond-check-for-compile-error)
19826	(org-babel-lilypond-process-compile-error)
19827	(org-babel-lilypond-mark-error-line)
19828	(org-babel-lilypond-parse-error-line)
19829	(org-babel-lilypond-attempt-to-open-pdf)
19830	(org-babel-lilypond-attempt-to-play-midi)
19831	(org-babel-lilypond-switch-extension)
19832	(org-babel-lilypond-set-header-args):
19833	* lisp/org/ob-lua.el (org-babel-prep-session:lua):
19834	* lisp/org/ob-picolisp.el (org-babel-execute:picolisp):
19835	* lisp/org/ob-processing.el (org-babel-prep-session:processing):
19836	* lisp/org/ob-python.el (org-babel-prep-session:python):
19837	* lisp/org/ob-scheme.el (org-babel-scheme-capture-current-message)
19838	(org-babel-scheme-execute-with-geiser, org-babel-execute:scheme):
19839	* lisp/org/ob-shen.el (org-babel-execute:shen):
19840	* lisp/org/org-agenda.el (org-agenda-entry-types)
19841	(org-agenda-move-date-from-past-immediately-to-today)
19842	(org-agenda-time-grid, org-agenda-sorting-strategy)
19843	(org-agenda-filter-by-category, org-agenda-forward-block):
19844	* lisp/org/org-colview.el (org-columns--overlay-text):
19845	* lisp/org/org-faces.el (org-verbatim, org-cycle-level-faces):
19846	* lisp/org/org-indent.el (org-indent-set-line-properties):
19847	* lisp/org/org-macs.el (org-get-limited-outline-regexp):
19848	* lisp/org/org-mobile.el (org-mobile-files):
19849	* lisp/org/org.el (org-use-fast-todo-selection)
19850	(org-extend-today-until, org-use-property-inheritance)
19851	(org-refresh-effort-properties, org-open-at-point-global)
19852	(org-track-ordered-property-with-tag, org-shiftright):
19853	* lisp/org/ox-html.el (org-html-checkbox-type):
19854	* lisp/org/ox-man.el (org-man-source-highlight)
19855	(org-man-verse-block):
19856	* lisp/org/ox-publish.el (org-publish-sitemap-default):
19857	* lisp/outline.el (outline-head-from-level):
19858	* lisp/progmodes/dcl-mode.el (dcl-back-to-indentation-1)
19859	(dcl-calc-command-indent, dcl-indent-to):
19860	* lisp/progmodes/flymake.el (flymake-make-diagnostic)
19861	(flymake--overlays, flymake-diagnostic-functions)
19862	(flymake-diagnostic-types-alist, flymake--backend-state)
19863	(flymake-is-running, flymake--collect, flymake-mode):
19864	* lisp/progmodes/gdb-mi.el (gdb-threads-list, gdb, gdb-non-stop)
19865	(gdb-buffers, gdb-gud-context-call, gdb-jsonify-buffer):
19866	* lisp/progmodes/grep.el (grep-error-screen-columns):
19867	* lisp/progmodes/gud.el (gud-prev-expr):
19868	* lisp/progmodes/ps-mode.el (ps-mode, ps-mode-target-column)
19869	(ps-run-goto-error):
19870	* lisp/progmodes/python.el (python-eldoc-get-doc)
19871	(python-eldoc-function-timeout-permanent, python-eldoc-function):
19872	* lisp/shadowfile.el (shadow-make-group):
19873	* lisp/speedbar.el (speedbar-obj-do-check):
19874	* lisp/textmodes/flyspell.el (flyspell-auto-correct-previous-hook):
19875	* lisp/textmodes/reftex-cite.el (reftex-bib-or-thebib):
19876	* lisp/textmodes/reftex-index.el (reftex-index-goto-entry)
19877	(reftex-index-kill, reftex-index-undo):
19878	* lisp/textmodes/reftex-parse.el (reftex-context-substring):
19879	* lisp/textmodes/reftex.el (reftex-TeX-master-file):
19880	* lisp/textmodes/rst.el (rst-next-hdr, rst-toc)
19881	(rst-uncomment-region, rst-font-lock-extend-region-internal):
19882	* lisp/thumbs.el (thumbs-mode):
19883	* lisp/vc/ediff-util.el (ediff-restore-diff):
19884	* lisp/vc/pcvs-defs.el (cvs-cvsroot, cvs-force-dir-tag):
19885	* lisp/vc/vc-hg.el (vc-hg--ignore-patterns-valid-p):
19886	* lisp/wid-edit.el (widget-field-value-set, string):
19887	* lisp/x-dnd.el (x-dnd-version-from-flags)
19888	(x-dnd-more-than-3-from-flags): Assorted docfixes.
19889
198902019-09-20  Lars Ingebrigtsen  <larsi@gnus.org>
19891
19892	Make register-preview ignore empty registers
19893
19894	* lisp/register.el (register-preview): Ignore elements that are
19895	empty (bug#37155).
19896
198972019-09-20  Johan Claesson  <johanclaesson@bredband.net>  (tiny change)
19898
19899	Make the reverse tabulated list sort stable
19900
19901	* lisp/emacs-lisp/tabulated-list.el (tabulated-list--get-sorter):
19902	Make the reverse sorting stable (bug#37174).
19903
199042019-09-20  Lars Ingebrigtsen  <larsi@gnus.org>
19905
19906	Further touch-ups to the auth-source obfuscation
19907
19908	* lisp/auth-source.el (auth-source--obfuscate): Avoid leaking the
19909	length of the password by using PKCS#7 padding.
19910
199112019-09-20  Lars Ingebrigtsen  <larsi@gnus.org>
19912
19913	Add some comments to the auth-source obfuscation
19914
19915	* lisp/auth-source.el (auth-source--obfuscate): Add comments.
19916
199172019-09-20  Lars Ingebrigtsen  <larsi@gnus.org>
19918
19919	Make previous auth-source change not break on Windows without gnutls
19920
19921	* lisp/auth-source.el (auth-source--obfuscate)
19922	(auth-source--deobfuscate): Check that gnutls is really available.
19923
199242019-09-20  Lars Ingebrigtsen  <larsi@gnus.org>
19925
19926	Obfuscate auth-source memory contents even more
19927
19928	* lisp/auth-source.el (auth-source--deobfuscate): Use more
19929	obfuscated obfuscation (bug#37196).
19930	(auth-source--pad, auth-source--obfuscate)
19931	(auth-source-netrc-normalize): Use it.
19932	(auth-source-netrc-parse): Ditto.
19933
199342019-09-20  Lars Ingebrigtsen  <larsi@gnus.org>
19935
19936	Obfuscate auth-source secrets more
19937
19938	* lisp/auth-source.el (auth-source-netrc-normalize): Obfuscate
19939	passwords stored in the lexical closure (bug#37196).
19940
199412019-09-20  Stefan Kangas  <stefankangas@gmail.com>
19942
19943	Recommend against SHA-1 and MD5 for security
19944
19945	* doc/lispref/text.texi (Checksum/Hash):
19946	* src/fns.c (Fmd5, Fsecure_hash):
19947	* lisp/subr.el (sha1): Doc fix to recommend against SHA-1 and MD5 for
19948	security-related applications, since they are not collision
19949	resistant.  (Bug#37420)
19950
199512019-09-20  Lars Ingebrigtsen  <larsi@gnus.org>
19952
19953	Allow `process-contact' not to block
19954
19955	* doc/lispref/processes.texi (Process Information): Document it.
19956
19957	* lisp/simple.el (list-processes--refresh): Don't wait for contact
19958	information for non-setup processes.
19959
19960	* src/process.c (Fprocess_contact): Take an optional parameter to
19961	avoid blocking (bug#37408).
19962
199632019-09-20  Lars Ingebrigtsen  <larsi@gnus.org>
19964
19965	Make number-at-point recognize some hex numbers
19966
19967	* lisp/thingatpt.el (number-at-point): Also return common hex
19968	numbers (bug#37458).
19969
199702019-09-20  Damien Cassou  <damien@cassou.me>
19971
19972	Change default value of message-make-forward-subject-function
19973
19974	* lisp/gnus/message.el (message-make-forward-subject-function): Change
19975	default value to be a list so it's easier for users to add
19976	functions. Change the type so the customize interface allows selecting
19977	multiple provided functions instead of just one (bug#37470).
19978
199792019-09-20  Stefan Kangas  <stefankangas@gmail.com>
19980
19981	Recommend using https for package-archives
19982
19983	* lisp/emacs-lisp/package.el (package-archives): Recommend using https
19984	sources where possible.  (Bug#33825)
19985
199862019-09-20  Matthew Newton  <matt@mnewton.com>  (tiny change)
19987
19988	Fix the previous imenu commit
19989
19990	* lisp/imenu.el (imenu--make-index-alist): Always return the alist
19991	(bug#30449).
19992
199932019-09-20  Michael Albinus  <michael.albinus@gmx.de>
19994
19995	Some Tramp methods allow to change the remote login shell
19996
19997	* doc/misc/tramp.texi (Inline methods) <sshx, plink, plinkx>:
19998	(External methods) <scpx, pscp, psftp>: Mention, that the remote
19999	login shell could be changed.
20000	(Remote shell setup): Remove description of properties
20001	"remote-shell-login" and "remote-shell-args", they don't matter
20002	here.  Changing the default remote shell works only for some
20003	methods.
20004	(Frequently Asked Questions): Refer to alternative approach fixing
20005	zsh problems.
20006
20007	* etc/NEWS: Some Tramp methods allow to change the remote login shell.
20008
20009	* lisp/net/tramp-sh.el (tramp-default-remote-shell): New defconst.
20010	(tramp-methods): Use it.
20011	(tramp-get-sh-extra-args): New defun.
20012	(tramp-open-shell, tramp-maybe-open-connection): Use it.
20013
20014	* lisp/net/tramp.el (tramp-methods): Adapt docstring.
20015
200162019-09-19  Juri Linkov  <juri@linkov.net>
20017
20018	* lisp/window.el (walk-windows): Simplify to use WINDOW arg of window-list-1
20019
20020	instead of calling select-window (bug#35385).
20021
200222019-09-19  Eric Abrahamsen  <eric@ericabrahamsen.net>
20023
20024	Only use Gnus registry for formatting when registry is loaded
20025
20026	See bug #36903
20027
20028	* lisp/gnus/gnus-registry.el (gnus-registry-article-marks-to-chars):
20029	  (gnus-registry-article-marks-to-names): In some circumstances it's
20030	  possible for the user's summary line format spec to include
20031	  registry-specific code, while the registry itself isn't actually
20032	  loaded. Make sure the database is actually a hashtable before
20033	  accessing it.
20034
200352019-09-19  Eli Zaretskii  <eliz@gnu.org>
20036
20037	Fix calls to insert-*-hooks when JIT font lock is active
20038
20039	* src/insdel.c (signal_after_change): Save and restore
20040	interval_insert_behind_hooks and
20041	interval_insert_in_front_hooks across calls to various other
20042	hooks, to prevent their clobbering by those other hooks.
20043	(Bug#37455)
20044
200452019-09-19  Lars Ingebrigtsen  <larsi@gnus.org>
20046
20047	Minor svg wrap tweak
20048
20049	* lisp/net/shr.el (svg--wrap-svg): Add the size to the wrapper to
20050	avoid having the SVG images shrink (bug#37159).
20051
200522019-09-19  Lars Ingebrigtsen  <larsi@gnus.org>
20053
20054	Further fix-ups for SVG wrapping in shr
20055
20056	* lisp/net/shr.el (svg--wrap-svg): Add the size to the wrapper to
20057	avoid having the SVG images shrink (bug#37159).
20058
200592019-09-19  Lars Ingebrigtsen  <larsi@gnus.org>
20060
20061	Fix :version in recent commit
20062
20063	* lisp/pcmpl-gnu.el (pcmpl-gnu-makefile-includes): Fix :version.
20064
200652019-09-19  Lars Ingebrigtsen  <larsi@gnus.org>
20066
20067	Fix a bug in callback functions in align-areas
20068
20069	* lisp/align.el (align-areas): When given a callback function and
20070	JUSTIFY, pick out the correct parameters (bug#30139).  Suggested
20071	by "John Wiegley" <johnw@gnu.org>.
20072
200732019-09-19  Paul Eggert  <eggert@cs.ucla.edu>
20074
20075	Also prefer .emacs.d if .emacs exists
20076
20077	Problem reported by Katsumi Yamaoka (Bug#37456).
20078	* lisp/startup.el (startup--xdg-or-homedot): Also
20079	prefer .emacs.d if a traditional .emacs file exists.
20080
200812019-09-19  Paul Eggert  <eggert@cs.ucla.edu>
20082
20083	Default PICKY_ACCESS to false on non-MS
20084
20085	* src/fileio.c (PICKY_EACCES) [!DOS_NT]: Default to false.
20086
200872019-09-18  Paul Eggert  <eggert@cs.ucla.edu>
20088
20089	Omit some overenthusiastic file-truename calls
20090
20091	Problem reported by Tino Calancha (Bug#37445).
20092	* src/emacs.c (init_cmdargs): Call file-truename only if
20093	needed, i.e., if invocation-directory ends in "/i386/" on
20094	WINDOWSNT.
20095	* src/lread.c (readevalloop): If the sourcename is not
20096	absolute, make it absolute.  There is no need to convert
20097	non-absolute files into truenames, since absolute files are
20098	not converted into truenames.
20099	(init_lread): Do not convert source-directory into a truename
20100	at startup.  There is no need to do so in a dumped Emacs since
20101	an absolute file name suffices.  The source directory might
20102	not even exist any more, or might have been replaced by an
20103	interloper who takes advantage of the truename calculation.
20104	(syms_of_lread): Remove Qfile_truename; no longer needed.
20105
201062019-09-18  Matt Bisson  <mbisson@vmware.com>  (tiny change)
20107
20108	Fix ignored Motif scrollbar resources (Bug#37359)
20109
20110	* src/xterm.c (x_create_toolkit_scroll_bar): On Motif
20111	scrollbars, "foreground" has no meaning, while "background"
20112	means the truck and arrow colors, and "trough" means the
20113	background of the entire widget.  This fix hooks up the Emacs
20114	scrollbar "foreground" color to the XmNbackground resource
20115	and the "background" color to XmNtroughColor which is more in
20116	line with how Xaw scrollbars behave.
20117
201182019-09-18  Juanma Barranquero  <lekktu@gmail.com>
20119
20120	lisp/*.el, src/*.c: Fix typos in docstrings
20121
20122	* lisp/apropos.el (apropos-do-all):
20123	* lisp/auth-source-pass.el (auth-source-pass--select-from-entries):
20124	* lisp/auth-source.el (auth-source-user-or-password):
20125	* lisp/calc/calc-forms.el (math-tzone-names):
20126	* lisp/calendar/diary-lib.el (diary-face-attrs)
20127	(diary-mark-entries-1):
20128	* lisp/cedet/cedet-files.el (cedet-files-list-recursively):
20129	* lisp/cedet/ede.el (ede-constructing, ede-deep-rescan):
20130	* lisp/cedet/ede/cpp-root.el (ede-cpp-root-header-file-p):
20131	* lisp/cedet/ede/proj.el (ede-proj-target-makefile):
20132	* lisp/cedet/inversion.el (inversion-check-version)
20133	(inversion-test):
20134	* lisp/cedet/mode-local.el (mode-local-map-file-buffers):
20135	* lisp/cedet/semantic/complete.el (semantic-displayer-ghost):
20136	* lisp/cedet/semantic/db-find.el (semanticdb-find-translate-path-default):
20137	* lisp/cedet/semantic/db.el (semanticdb-table)
20138	(semanticdb-search-system-databases):
20139	* lisp/cedet/semantic/imenu.el (semantic-imenu-index-directory):
20140	* lisp/cedet/semantic/java.el (semantic-java-doc-keywords-map):
20141	* lisp/cedet/semantic/lex-spp.el (semantic-lex-spp-use-headers-flag):
20142	* lisp/cedet/semantic/lex.el (semantic-lex-make-keyword-table)
20143	(semantic-lex-make-type-table, semantic-lex-debug-analyzers):
20144	* lisp/cedet/semantic/tag-ls.el (semantic-tag-abstract-p)
20145	(semantic-tag-leaf-p, semantic-tag-static-p)
20146	(semantic-tag-prototype-p):
20147	* lisp/dnd.el (dnd-open-remote-file-function, dnd-open-local-file):
20148	* lisp/emacs-lisp/eieio-opt.el (eieio-build-class-alist)
20149	(eieio-read-class, eieio-read-subclass):
20150	* lisp/emacs-lisp/generator.el (cps--replace-variable-references)
20151	(cps--handle-loop-for):
20152	* lisp/erc/erc-dcc.el (erc-dcc-list, erc-dcc-member, erc-dcc-server)
20153	(erc-dcc-auto-mask-p, erc-dcc-get-file, erc-dcc-chat-accept):
20154	* lisp/eshell/em-pred.el (eshell-pred-file-type):
20155	* lisp/faces.el (defined-colors-with-face-attributes):
20156	* lisp/font-core.el (font-lock-mode):
20157	* lisp/frame.el (frame-restack):
20158	* lisp/net/shr.el (shr-image-animate):
20159	* lisp/org/org-agenda.el (org-agenda-change-all-lines)
20160	(org-agenda-today-p):
20161	* lisp/org/org-id.el (org-id-get):
20162	* lisp/org/org.el (org-highlight-latex-and-related)
20163	(org--valid-property-p):
20164	* lisp/org/ox-beamer.el (org-beamer--get-label):
20165	* lisp/org/ox-latex.el (org-latex--caption-above-p):
20166	* lisp/org/ox-odt.el (org-odt--copy-image-file)
20167	(org-odt--copy-formula-file):
20168	* lisp/org/ox.el (org-export-with-timestamps):
20169	* lisp/progmodes/verilog-mode.el (verilog-indent-declaration-macros):
20170	* lisp/ses.el (ses-file-format-extend-parameter-list):
20171	* lisp/term.el (ansi-term):
20172	* lisp/textmodes/bibtex.el (bibtex-no-opt-remove-re)
20173	(bibtex-beginning-of-first-entry, bibtex-autokey-get-title)
20174	(bibtex-read-key, bibtex-initialize):
20175	* lisp/textmodes/flyspell.el (flyspell-word):
20176	* lisp/view.el (view-mode-exit):
20177	* src/composite.c:
20178	* src/floatfns.c (Fisnan): Fix typos in docstrings.
20179
201802019-09-18  Stephen Leake  <stephen_leake@stephe-leake.org>
20181
20182	Merge commit '107ce3050fc37b9a13d8304ae1bb73fac9de5f61'
20183
201842019-09-18  Stephen Leake  <stephen_leake@stephe-leake.org>
20185
20186	Enhance 'pcomplete/make' to complete on targets in included makefiles
20187
20188	* lisp/pcmpl-gnu.el (pcmpl-gnu-makefile-includes): New.
20189	(pcmpl-gnu-make-targets): New, factored out of pcmpl-gnu-make-all-targets.
20190	(pcmpl-gnu-make-includes): New.
20191	(pcmpl-gnu-make-all-targets): Use new functions.
20192
201932019-09-18  Juri Linkov  <juri@linkov.net>
20194
20195	* lisp/isearch.el (isearch-lazy-highlight-update): Remember timer object
20196
20197	in isearch-lazy-highlight-timer to cancel it in lazy-highlight-cleanup.
20198
20199	(isearch-done): No need to set isearch-lazy-highlight-start to nil -
20200	it used to reset lazy-highlight loop like isearch-lazy-highlight-window-start,
20201	but now other packages set isearch-lazy-highlight-last-string to nil to reset
20202	lazy-highlight loop.
20203
202042019-09-18  Eli Zaretskii  <eliz@gnu.org>
20205
20206	Fix loading .elc files on MS-Windows
20207
20208	* src/lread.c (Fload): Don't clobber 'found' if the .el file
20209	was not found, as it is used by WINDOWSNT later on.
20210
202112019-09-18  Phillip Lord  <phillip.lord@russet.org.uk>
20212
20213	Improve logic for dependencies checking
20214
20215	* admin/nt/dist-build/build-dep-zips.py:
20216
202172019-09-18  Lars Ingebrigtsen  <larsi@gnus.org>
20218
20219	Fix up the previous mh-mime warning suppression
20220
20221	* lisp/mh-e/mh-acros.el (mh-dlet*): Suppress warnings about
20222	prefix-less bindings.
20223	* lisp/mh-e/mh-mime.el (mh-insert-mime-security-button): Remove
20224	the warning removal here.
20225	(mh-insert-mime-button): And here.
20226
202272019-09-18  Eli Zaretskii  <eliz@gnu.org>
20228
20229	Improve support of the Tai-Viet script
20230
20231	* lisp/language/tai-viet.el ("TaiViet"): Update the doc
20232	string.  Suggested by Jim Brase <jim_brase@sil.org>.
20233	(Bug#5806)
20234
20235	* etc/HELLO: Add a Tai Viet entry.
20236
202372019-09-18  Paul Eggert  <eggert@cs.ucla.edu>
20238
20239	Out-of-datedness .elc check is merely a file test
20240
20241	* src/fileio.c (file_test_errno): Now extern.
20242	* src/lread.c (Fload): Use file_test_errno instead,
20243	since this is really just a file test (the attributes
20244	are not given to the user).
20245
202462019-09-18  Eli Zaretskii  <eliz@gnu.org>
20247
20248	Fix the MS-Windows build broken by recent errno changes
20249
20250	* src/fileio.c (file_directory_p): If the file exists, but is
20251	not a directory, set errno to ENOTDIR, like the Posix branch
20252	does; openp expects that.
20253
202542019-09-18  Michael Albinus  <michael.albinus@gmx.de>
20255
20256	Simplify tramp-tests.el check for owncloud/nextcloud
20257
20258	* test/lisp/net/tramp-tests.el (tramp-test11-copy-file):
20259	Simplify check for owncloud/nextcloud connections.
20260
202612019-09-18  Michael Albinus  <michael.albinus@gmx.de>
20262
20263	Add extra args for zsh in Tramp
20264
20265	* doc/misc/tramp.texi (Remote shell setup): New subsection
20266	"Changing the default remote shell".
20267
20268	* lisp/net/tramp-sh.el (tramp-sh-extra-args): Add entry for zsh.
20269
202702019-09-18  Paul Eggert  <eggert@cs.ucla.edu>
20271
20272	Be less picky about EACCES in file test predicates
20273
20274	Problem reported by Tino Calancha (Bug#37445) and others.
20275	* src/fileio.c (PICKY_EACCES): New constant, false by default.
20276	(file_test_errno): Ignore EACCES if not picky.
20277	(check_file_access): Investigate EACCES problems further
20278	if picky.
20279
202802019-09-18  Paul Eggert  <eggert@cs.ucla.edu>
20281
20282	Fix permission-denied issue in MS-Windows startup
20283
20284	* src/callproc.c (init_callproc): Use file_access_p rather
20285	than Ffile_exists_p during startup (Bug#37445).
20286
202872019-09-17  Paul Eggert  <eggert@cs.ucla.edu>
20288
20289	Improve reporting of I/O, access errors
20290
20291	Signal an error for file-oriented errors that are not tame
20292	errors like ENOENT and ENOTDIR (Bug#37389).
20293	Do this for primitives exposed to Lisp; the lower
20294	level internal C API merely makes errno values available
20295	to higher-level C code.
20296	* doc/lispref/files.texi (Testing Accessibility)
20297	(File Attributes, Extended Attributes): Do not say that the
20298	functions return nil when the return value cannot be determined.
20299	* etc/NEWS: Mention the change.
20300	* src/dired.c (Ffile_attributes): Fix doc string confusion
20301	about opening a file vs getting its attributes.
20302	(file_attributes): Signal serious errors.
20303	* src/fileio.c (check_existing, check_executable)
20304	(check_writable): Remove.  All callers changed to use
20305	check_file_access or file_access_p.
20306	(file_access_p, file_metadata_errno, file_attribute_errno)
20307	(file_test_errno, check_file_access, check_emacs_readlinkat):
20308	New functions.
20309	* src/fileio.c (Ffile_executable_p, Ffile_readable_p)
20310	(Ffile_name_case_insensitive_p, Frename_file, Ffile_exists_p):
20311	(Ffile_symlink_p, Ffile_directory_p)
20312	(Ffile_accessible_directory_p, Ffile_regular_p)
20313	(Ffile_selinux_context, Ffile_acl, Ffile_modes)
20314	(Ffile_newer_than_file_p, Fset_visited_file_modtime)
20315	(Ffile_system_info):
20316	* src/filelock.c (unlock_file, Ffile_locked_p):
20317	* src/lread.c (Fload):
20318	Signal serious errors.
20319	* src/fileio.c (Ffile_writable_p): Remove unnecessary CHECK_STRING.
20320	(emacs_readlinkat): Now static.
20321	* src/filelock.c (current_lock_owner, lock_if_free): Return a
20322	positive errno on error, and the negative of the old old value
20323	on success.  All callers changed.
20324	* src/lread.c (openp): Propagate serious errno values to caller.
20325
203262019-09-17  Jimmy Aguilar Mena  <kratsbinovish@gmail.com>
20327
20328	Substituted deprecated WebKitGTK+ api.
20329
20330	* src/xwidget.c : Substituted WebKitGTK+ API calls and use
20331	JavaScriptCore GLib API instead.
20332
203332019-09-17  Tino Calancha  <tino.calancha@gmail.com>
20334
20335	Fix an assignment to free variable warning
20336
20337	It fixes a bug introduced by commit
20338	'query-replace-regexp undo: Update next-replacement after undo'
20339	(30c4f35a6fc8a6507930923766c3126ac1c2063f)
20340
20341	See https://lists.gnu.org/archive/html/emacs-devel/2019-09/msg00364.html
20342	* lisp/replace.el(perform-replace): Rename variable
20343	to next-replacement-replaced.
20344
203452019-09-17  Juanma Barranquero  <lekktu@gmail.com>
20346
20347	* src/w32fns.c (Fw32_read_registry): Doc fix
20348
203492019-09-17  Lars Ingebrigtsen  <larsi@gnus.org>
20350
20351	Suppress some warnings about un-prefixed dynamic variables
20352
20353	* lisp/mh-e/mh-mime.el (mh-insert-mime-security-button): Suppress
20354	warnings about un-prefixed dynamic variables.
20355	(mh-insert-mime-button): Ditto.
20356
203572019-09-17  Lars Ingebrigtsen  <larsi@gnus.org>
20358
20359	Touch up naming of ipv6-expand
20360
20361	* lisp/net/net-utils.el (nslookup--ipv6-expand): Rename to avoid
20362	make prefix more regular.
20363	(nslookup-host-ipv6): Rename call.
20364
203652019-09-17  W. Garrett Mitchener  <garrett.mitchener@gmail.com>
20366
20367	Updated to match more recent versions of Praat.
20368
20369	* lisp/leim/quail/ipa-praat.el ("ipa-praat"): Update to match
20370	more recent versions of Praat (bug#36198).
20371
20372	- \rh was used for ram's horns (a vowel) and rhoticity hook (a
20373	  diacritic).  Praat uses \hr for the hook, so I made that changed.
20374
20375	- \e3v for the slightly rounded diacritic seems to have been a typo
20376	  related to the use of e in the example.  Changed it to \3v to match
20377	  Praat.
20378
20379	- Added examples to the table of tone diacritics
20380
20381	- Added \^h for superscript h
20382
20383	- Added \^H for superscript h with hook
20384
20385	- Added \^w for superscript w (labialization)
20386
20387	- Added \^j for superscript j (palatalization)
20388
20389	- Added \^g for superscript symbol (velarization)
20390
20391	- Added \^9 for superscript symbol (pharyngealization)
20392
203932019-09-17  Lars Ingebrigtsen  <larsi@gnus.org>
20394
20395	Update doc marker -- smtpmail-retries is documented
20396
203972019-09-17  Eli Zaretskii  <eliz@gnu.org>
20398
20399	Improve font lookup on MS-Windows
20400
20401	* src/w32font.c (struct font_callback_data): New member
20402	'known_fonts'.
20403	(w32font_list_internal, w32font_match_internal): Set up
20404	match_data.known_fonts if the font spec includes :script that
20405	names one of the non-USB scripts.
20406	(add_font_entity_to_list): If font_matches_spec returns zero
20407	for a font, and we have some fonts in match_data->known_fonts,
20408	consider the font to be a match if it is named in known_fonts.
20409	(font_supported_scripts): Update the Unicode Subranges.  In
20410	particular, map bit 74 to 'burmese', as this is the name Emacs
20411	uses, not 'myanmar'.  Add a list of scripts that have no USBs
20412	defined for them.
20413	(syms_of_w32font) <Qburmese, Qcuneiform_numbers_and_punctuation>
20414	<Qaegean_number, Qw32_non_USB_fonts>: New symbols.
20415
20416	* lisp/term/w32-win.el (w32-no-usb-subranges): New defconst.
20417	(w32--filter-USB-scripts, w32-find-non-USB-fonts): New functions.
20418	(w32-non-USB-fonts): New defvar.
20419
20420	* lisp/international/fontset.el (setup-default-fontset): Add
20421	more scripts to automatic setup by representative characters.
20422
20423	* doc/emacs/msdos.texi (Windows Fonts): Document
20424	'w32-find-non-USB-fonts' and 'w32-non-USB-fonts'.
20425
20426	* etc/NEWS: Mention 'w32-find-non-USB-fonts' and
20427	'w32-non-USB-fonts'.
20428
204292019-09-17  Paul Eggert  <eggert@cs.ucla.edu>
20430
20431	Pacify GCC -Wmaybe-uninitialized
20432
20433	* src/dired.c (directory_files_internal):
20434	Pacify GCC 7.4.0-1ubuntu1~18.04.1 x86-64.
20435
204362019-09-17  Paul Eggert  <eggert@cs.ucla.edu>
20437
20438	Don’t round file-system-info counts
20439
20440	* src/fileio.c (blocks_to_bytes): Convert the byte count to an
20441	integer, since we have bignums now.  This avoids possible rounding
20442	errors for file systems containing more than 8 PiB or so.
20443
204442019-09-17  Mattias Engdegård  <mattiase@acm.org>
20445
20446	* doc/lispref/searching.texi (Rx Constructs): Fix typo.
20447
204482019-09-16  Paul Eggert  <eggert@cs.ucla.edu>
20449
20450	Fix some file-mode races
20451
20452	* lisp/emacs-lisp/autoload.el (autoload-ensure-file-writeable):
20453	* lisp/files.el (after-find-file):
20454	* lisp/gnus/gnus-start.el (gnus-dribble-read-file):
20455	* lisp/htmlfontify.el (hfy-copy-and-fontify-file):
20456	* lisp/server.el (server-ensure-safe-dir):
20457	Avoid a race when getting file permissions.
20458
204592019-09-16  Paul Eggert  <eggert@cs.ucla.edu>
20460
20461	vc-cvs-revert: fix off-by-one file mode
20462
20463	* lisp/vc/vc-cvs.el (vc-cvs-revert): 3950 (#o7556) is wrong as
20464	it keeps other-write but disables other-execute permissions.
20465	3949 (#o7555) was intended here.  Use octal notation for clarity.
20466
204672019-09-16  Lars Ingebrigtsen  <larsi@gnus.org>
20468
20469	Fix imenu menu when we're auto-refreshing
20470
20471	* lisp/imenu.el (imenu--make-index-alist): Don't add a *Refresh*
20472	item if we're auto-refreshing (bug#30449).
20473
204742019-09-16  Lars Ingebrigtsen  <larsi@gnus.org>
20475
20476	Add a new variable smtpmail-retries
20477
20478	* doc/misc/smtpmail.texi (Server workarounds): Mention it (bug#34177).
20479
20480	* lisp/mail/smtpmail.el (smtpmail-retries): New variable.
20481	(smtpmail-via-smtp): Use it.
20482
204832019-09-16  Michał Kondraciuk  <k.michal@zoho.com>  (tiny change)
20484
20485	Allow `M-u' to work when editing fields in Customize
20486
20487	* lisp/cus-edit.el (custom-notify): Allow more editing commands to
20488	work in the Customize buffers (bug#31205).
20489
204902019-09-16  Lars Ingebrigtsen  <larsi@gnus.org>
20491
20492	Try resending when getting a transient 4xx SMTP code
20493
20494	* lisp/mail/smtpmail.el (smtpmail-via-smtp): Try resending when
20495	getting a transient error message (bug#34177).
20496
204972019-09-16  Paul Eggert  <eggert@cs.ucla.edu>
20498
20499	Remove obsolete Lint directives
20500
20501	Most of the directives were wrong anyway.  Apparently
20502	traditional lint hasn’t been used to check Emacs for years.
20503	* src/callint.c (Finteractive):
20504	* src/cm.c (evalcost):
20505	* src/emacs.c (main):
20506	* src/eval.c (call1, call2, call3, call4, call5, call6, call7, call8):
20507	* src/fns.c (concat2, concat3, nconc2):
20508	* src/term.c (calculate_ins_del_char_costs):
20509	Omit ARGSUSED comments.
20510	* src/eval.c (call1): Omit VARARGS comment.
20511
205122019-09-16  Tino Calancha  <tino.calancha@gmail.com>
20513
20514	Add backquote tests
20515
20516	* test/lisp/emacs-lisp/backquote-tests.el: New file (bug#37432).
20517
205182019-09-16  Paul Eggert  <eggert@cs.ucla.edu>
20519
20520	directory-files cleanup and speed tweaking
20521
20522	* src/dired.c (directory_files_internal):
20523	Check ‘match’ before doing anything heavyweight.
20524	Move decls closer to use.
20525	Remove obsolete comments about GC.
20526	No need to encode ‘directory’ or to call multibyte_chars_in_text.
20527	Remove no-longer-needed bug check.
20528	Skip finalname construction if file_attributes fails.
20529
205302019-09-16  Juri Linkov  <juri@linkov.net>
20531
20532	Try to fix macOS and Windows issues.
20533
205342019-09-16  Lars Ingebrigtsen  <larsi@gnus.org>
20535
20536	mm-inline-large-images-proportion doc clarification
20537
20538	* lisp/gnus/mm-view.el (mm-inline-large-images-proportion): Doc
20539	clarification.
20540
205412019-09-16  Lars Ingebrigtsen  <larsi@gnus.org>
20542
20543	Default to rescaling images in mm buffers
20544
20545	* doc/misc/emacs-mime.texi (Display Customization): Document it.
20546
20547	* lisp/gnus/mm-decode.el (mm-inline-large-images): Change default
20548	to `resize'.
20549
205502019-09-16  Lars Ingebrigtsen  <larsi@gnus.org>
20551
20552	mm-inline-large-images doc string clarification
20553
20554	* lisp/gnus/mm-decode.el (mm-inline-large-images): Clarify doc string.
20555
205562019-09-16  Mauro Aranda  <maurooaranda@gmail.com>
20557
20558	With tooltip-mode disabled, don't unconditionally clear the echo area
20559
20560	* lisp/tooltip.el (tooltip-show-help-non-mode): Only clear the
20561	echo area when the current message displayed is a tooltip message
20562	(Bug#3192).
20563
205642019-09-16  Lars Ingebrigtsen  <larsi@gnus.org>
20565
20566	Minor fix for previous maintaining.texi change
20567
20568	* doc/emacs/maintaining.texi (VC Directory Commands): Use @file
20569	for files.
20570
205712019-09-16  Lars Ingebrigtsen  <larsi@gnus.org>
20572
20573	Document vc-dir-ignore
20574
20575	* doc/emacs/maintaining.texi (VC Directory Commands): Document
20576	vc-dir-ignore.
20577
205782019-09-16  Eli Zaretskii  <eliz@gnu.org>
20579
20580	Improve error reporting in file_accessible_directory_p
20581
20582	* src/w32.c (w32_accessible_directory_p): Set errno, so that
20583	file_accessible_directory_p does on MS-Windows, to live up to
20584	its callers' expectations.
20585
205862019-09-16  Eli Zaretskii  <eliz@gnu.org>
20587
20588	Fix initialization of shared-game-score-directory on MS-Windows
20589
20590	* src/callproc.c (init_callproc) [WINDOWSNT]: Run PATH_GAME
20591	through w32_relocate, to expand %emacs_dir%.
20592	[DOS_NT]: Accept EACCES as not "unusual" errno value.
20593	Reported by Richard Copley <rcopley@gmail.com>.
20594
205952019-09-16  Lars Ingebrigtsen  <larsi@gnus.org>
20596
20597	Remove NEWS entry that talks about a change that was reverted (bug#37257)
20598
205992019-09-16  Robert Pluim  <rpluim@gmail.com>
20600
20601	Add bindings for ligature oe to iso-transl-char-map
20602
20603	* lisp/international/iso-transl.el (iso-transl-char-map): Add bindings
20604	for small and capital ligature oe.  (Bug#23420)
20605
206062019-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20607
20608	Fix some file-name-case-insensitive glitches
20609
20610	* src/fileio.c (file_name_directory): New static function,
20611	broken out of Ffile_name_directory.
20612	(file_name_case_insensitive_err, Ffile_writable_p, Fdo_auto_save):
20613	Use it.
20614	(file_name_case_insensitive_err): Rename from
20615	file_name_case_insensitive_p.  Accept an unencoded Lisp_Object
20616	rather than an encoded char *, so that platforms other than
20617	Cygwin and macOS need not encode the file name.  Return an int
20618	-1, 0, errno rather than a bool (setting errno if false),
20619	so that the caller can distinguish an error from false.
20620	All callers changed.
20621	(Ffile_name_case_insensitive_p): Don’t issue system calls on
20622	platforms other than Cygwin and macOS.  Fix bug that broke the
20623	attempt to move up the filesystem tree (it moved up only one
20624	level).
20625
206262019-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20627
20628	Fix unknown-vs-nonexistent glitch for file timestamps
20629
20630	* src/fileio.c (time_error_value): EACCES means the file
20631	timestamp is unknown, not that the file does not exist.
20632
206332019-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20634
20635	Improve directory-access diagnostics
20636
20637	* src/callproc.c (init_callproc): Diagnose I/O errors,
20638	access errors, etc. for the game directory.
20639	* src/charset.c (init_charset): Improve quality of diagnostic
20640	when the charsets directory has I/O errors, access errors, etc.
20641
206422019-09-15  Glenn Morris  <rgm@gnu.org>
20643
20644	Merge from origin/emacs-26
20645
20646	30c4f35 (origin/emacs-26) query-replace-regexp undo: Update next-repl...
20647	c596be0 Amend the menu caption for page "Display Property" in the Eli...
20648	13b9510 Add description of chinese-sisheng
20649
206502019-09-15  Glenn Morris  <rgm@gnu.org>
20651
20652	Merge from origin/emacs-26
20653
20654	8e420c0 Clarify the use of left/right-margin-width in determining cur...
20655
206562019-09-15  Glenn Morris  <rgm@gnu.org>
20657
20658	* admin/upload-manuals: Move a basic check earlier.
20659
206602019-09-15  Juri Linkov  <juri@linkov.net>
20661
20662	Use images for new/close buttons in tab-bar and tab-line.
20663
20664	* etc/images/tabs/new.xpm:
20665	* etc/images/tabs/close.xpm:
20666	New files.
20667
20668	* lisp/tab-bar.el (tab-bar-separator): New face.
20669	(tab-bar-separator, tab-bar-button-new, tab-bar-button-close):
20670	Use display property with images in default values.
20671
20672	* lisp/tab-line.el (tab-line-button-new, tab-line-button-close):
20673	Use display property with images in default values.
20674
20675	* src/xdisp.c (tab_bar_item_info): Add new arg close_p and set it
20676	to the value of property `close' at charpos.
20677	(get_tab_bar_item): Add new arg close_p.
20678	(handle_tab_bar_click): Add ctrl_modifier when close_p is non-nil.
20679	(Fdump_tab_bar_row): Fix crash for non-X builds.
20680
206812019-09-15  Juri Linkov  <juri@linkov.net>
20682
20683	Fix assertion violations due to non-ASCII text in tabs
20684
20685	* src/xdisp.c (tab_bar_height, redisplay_tab_bar)
20686	(display_tab_bar): If the Lisp string to be displayed in the
20687	tab-bar window is multibyte, tell the display
20688	engine to treat it as multibyte, instead of relying on the
20689	initial determination by init_iterator (which is based on the
20690	multibyteness of the current buffer).  (Bug#37385)
20691
206922019-09-15  Juanma Barranquero  <lekktu@gmail.com>
20693
20694	* lisp/subr.el (major-mode-suspend): Doc fix
20695
206962019-09-15  Michael Albinus  <michael.albinus@gmx.de>
20697
20698	Use also truname of temporary-file-directory in shadowfile-tests.el
20699
20700	* test/lisp/shadowfile-tests.el (top): Use truename of
20701	`temporary-file-directory' and
20702	`shadow-test-remote-temporary-file-directory'.  (Bug#37202)
20703	(shadow-test08-shadow-todo, shadow-test09-shadow-copy-files):
20704	Do not bind `shadow-test-remote-temporary-file-directory'.
20705
207062019-09-15  Mauro Aranda  <maurooaranda@gmail.com>
20707
20708	Make widget-browse-at always detect an editable-field
20709
20710	* lisp/wid-browse.el (widget-browse-at): Also look for the real-field
20711	property when detecting a field (bug#37199).
20712
207132019-09-15  Wolfgang Scherer  <wolfgang.scherer@gmx.de>
20714
20715	Do not use error messages as list of ignored files in vc-svn
20716
20717	* lisp/vc/vc-svn.el: (vc-svn-ignore-completion-table) Ignore buffer
20718	contents, if exit status is not 0.  Split buffer by lines (bug#37214).
20719
207202019-09-15  Wolfgang Scherer  <wolfgang.scherer@gmx.de>
20721
20722	Fix vc-default-ignore
20723
20724	* lisp/vc/vc.el: (vc-default-ignore) Treat FILE parameter as relative
20725	to DIRECTORY parameter.  Construct a file-path relative to directory
20726	of ignore file.  When removing, use properly anchored regexp.  Remove
20727	entire line, not just the match (bug#37217).
20728
207292019-09-15  Wolfgang Scherer  <wolfgang.scherer@gmx.de>
20730
20731	Provide facility to ignore all marked files in vc
20732
20733	* lisp/vc/vc-dir.el: (vc-dir-ignore) With prefix argument, ignore all
20734	marked files (bug#37240).
20735
207362019-09-15  Lars Ingebrigtsen  <larsi@gnus.org>
20737
20738	Revert "emacsclient: ignore --eval parameters when starting alternate editor"
20739
20740	This reverts commit 6fe661342a24edcaea255c3ba9a37613031554da.
20741
20742	The alternate editor may be Emacs, which is useful when you want to eval something in an existing Emacs (if it exists), or in a new Emacs if there's no server running.
20743
207442019-09-14  Paul Eggert  <eggert@cs.ucla.edu>
20745
20746	file_name_case_insensitive_p int->long fix
20747
20748	* src/fileio.c (file_name_case_insensitive_p):
20749	Don’t assume ‘long int’ fits in ‘int’.
20750
207512019-09-14  Paul Eggert  <eggert@cs.ucla.edu>
20752
20753	Fix gc-elapsed rounding bug
20754
20755	* src/alloc.c (garbage_collect): Don’t accumulate rounding
20756	errors when computing gc-elapsed.
20757
207582019-09-14  Paul Eggert  <eggert@cs.ucla.edu>
20759
20760	Improve doc of GC thresholds
20761
20762	* doc/lispref/internals.texi (Garbage Collection), etc/NEWS:
20763	Warn that control over GC is only approximate.
20764
207652019-09-14  Bruno Félix Rezende Ribeiro  <oitofelix@gnu.org>  (tiny change)
20766
20767	Fix picon installation instructions in the Gnus manual
20768
20769	* doc/misc/gnus.texi (Picons): Fix instructions for installing
20770	picons on Debian (bug#37247).
20771
207722019-09-14  Basil L. Contovounesios  <contovob@tcd.ie>
20773
20774	Fix fileless eww form submission
20775
20776	* lisp/net/eww.el (eww-submit): Ignore file inputs with no
20777	associated file name (bug#36520).
20778
207792019-09-14  Lars Ingebrigtsen  <larsi@gnus.org>
20780
20781	Add default foreground colours to SVG images
20782
20783	* lisp/net/shr.el (svg--wrap-svg): Add a default foreground colour
20784	to SVG images (bug#37159).  This helps with images like the ones
20785	in https://en.wikipedia.org/wiki/Banach_fixed-point_theorem that
20786	specify no foreground or background colours.
20787	(shr-parse-image-data): Use it.
20788
207892019-09-14  Lars Ingebrigtsen  <larsi@gnus.org>
20790
20791	Make eww more liberal when interpreting some invalid HTML
20792
20793	* lisp/net/eww.el (eww--preprocess-html): New function (bug#37009)
20794	to be more lenient with invalid HTML and translate common invalid
20795	HTML like "a <= b" into "a &lt;= b" to be more liberal in what we
20796	accept before parsing.
20797	(eww-display-html): Use it.
20798	(eww-readable): Ditto.
20799
208002019-09-14  Eli Zaretskii  <eliz@gnu.org>
20801
20802	* src/print.c (PRINT_CIRCLE_CANDIDATE_P): Fix a thinko.  (Bug#36566)
20803
208042019-09-14  Tobias Zawada  <i_inbox@tn-home.de>  (tiny change)
20805
20806	Add a debug declaration to widget-specify-insert
20807
20808	* lisp/wid-edit.el (widget-specify-insert): Add a debug
20809	declaration (bug#37368).
20810
208112019-09-14  Federico Tedin  <federicotedin@gmail.com>
20812
20813	Allow gamegrid-add-score to treat lower scores as better.
20814
20815	* lisp/play/gamegrid.el (gamegrid-add-score): Add 'reverse' parameter.
20816	(gamegrid-add-score-with-update-game-score): Add 'reverse' parameter.
20817	(gamegrid-add-score-with-update-game-score-1): Add 'reverse'
20818	parameter.  Pass on "-r" argument to update-game-score.
20819	(gamegrid-add-score-insecure): Add 'reverse' parameter, reverse scores
20820	when it's non-nil.  (Bug#36867)
20821
20822	* etc/NEWS: Announce the change.
20823
208242019-09-14  Paul Eggert  <eggert@cs.ucla.edu>
20825
20826	Improve gc-cons-percentage calculation
20827
20828	The old calculation relied on a hodgpodge of partly updated GC
20829	stats to find a number to multiply gc-cons-percentage by.
20830	The new one counts data found by the previous GC, plus half of
20831	the data allocated since then; this is more systematic albeit
20832	still ad hoc.
20833	* src/alloc.c (consing_until_gc, gc_threshold, consing_threshold):
20834	Now EMACS_INT, not intmax_t.
20835	(HI_THRESHOLD): New macro.
20836	(tally_consing): New function.
20837	(make_interval, allocate_string, allocate_string_data)
20838	(make_float, free_cons, allocate_vectorlike, Fmake_symbol): Use it.
20839	(allow_garbage_collection, inhibit_garbage_collection)
20840	(consing_threshold, garbage_collect):
20841	Use HI_THRESHOLD rather than INTMAX_MAX.
20842	(consing_threshold): New arg SINCE_GC.  All callers changed.
20843	(bump_consing_until_gc): Return new consing_until_gc, instead of
20844	nil.  All callers changed.  Don’t worry about overflow since we
20845	now saturate at HI_THRESHOLD.  Guess that half of
20846	recently-allocated objects are still alive, instead of relying on
20847	the previous (even less-accurate) hodgepodge.
20848	(maybe_garbage_collect): New function.
20849	(garbage_collect): Work even if a finalizer disables or enables
20850	memory profiling.  Do not use malloc_probe if GC reclaimed nothing.
20851	* src/lisp.h (maybe_gc): Call maybe_garbage_collect instead
20852	of garbage_collect.
20853
208542019-09-13  Paul Eggert  <eggert@cs.ucla.edu>
20855
20856	Simplify GC statistics-gathering
20857
20858	* src/alloc.c (make_interval, allocate_string, make_float)
20859	(free_cons, Fcons, setup_on_free_list)
20860	(allocate_vector_from_block, Fmake_symbol):
20861	Do not update gcstat, since it is for statistics from the most
20862	recent GC, not for a partially-updated hodgepodge.
20863	(sweep_vectors): Update gcstat, since setup_on_free_list
20864	no longer does.
20865	(garbage_collect_1): Rename to garbage_collect and adopt its API.
20866	Remove the old garbage_collect, which is no longer needed.
20867	All callers changed.
20868
208692019-09-13  Gemini Lasswell  <gazally@runbox.com>
20870
20871	Don't build print-number-table unless it will be used
20872
20873	There are only a few users of print-number-table, and none of them use
20874	it when print-circle is nil.  A couple of them used to.  print_object
20875	was changed in 2012-04-20 "* src/print.c (print_preprocess): Only
20876	check print_depth if print-circle is nil".
20877	byte-compile-output-docform which uses print-number-table binds
20878	print-circle to t before printing unless
20879	byte-compile-disable-print-circle is set, but that variable has been
20880	marked obsolete since 24.1.
20881
20882	* src/print.c (print_preprocess): Assert Vprint_circle is non-nil.
20883	Remove code handling the case when Vprint_circle is nil.
20884	(print, Fprint_preprocess): Don't call print_preprocess unless
20885	Vprint_circle is non-nil.
20886	(print_object): Remove comment referencing removed code in
20887	print_preprocess.
20888
208892019-09-13  Gemini Lasswell  <gazally@runbox.com>
20890
20891	Create common tests for print.c and cl-print.el
20892
20893	* test/lisp/emacs-lisp/cl-print-tests.el
20894	(cl-print--test, cl-print-tests-1, cl-print-tests-2)
20895	(cl-print-tests-3, cl-print-tests-4, cl-print-tests-5)
20896	(cl-print-tests-strings, cl-print-circle, cl-print-circle-2):
20897	Remove.
20898	* test/src/print-tests.el (print-tests--prin1-to-string): New
20899	alias.
20900	(print-tests--deftest): New macro.
20901	(print-hex-backslash, print-read-roundtrip, print-bignum): Define with
20902	print-tests--deftest and use print-tests--prin1-to-string.
20903	(print-tests--prints-with-charset-p): Use
20904	print-tests--prin1-to-string.
20905	(print-tests--print-charset-text-property-nil)
20906	(print-tests--print-charset-text-property-t)
20907	(print-tests--print-charset-text-property-default): Define with
20908	print-tests--deftest.
20909	(print-tests-print-gensym)
20910	(print-tests-continuous-numbering, print-tests-1, print-tests-2)
20911	(print-tests-3, print-tests-4, print-tests-5)
20912	(print-tests-strings, print-circle, print-circle-2): New tests.
20913	(print--test, print-tests-struct): New cl-defstructs.
20914
209152019-09-13  Gemini Lasswell  <gazally@runbox.com>
20916
20917	Fix unnecessary hash table creation in cl-prin1 (bug#36566)
20918
20919	cl-prin1 prints all its punctuation by passing strings to prin1.  When
20920	print-circle was set, print_preprocess was creating a new hash table
20921	for each string, causing excessive garbage collection when printing
20922	large Lisp objects with cl-prin1.
20923
20924	* src/print.c (print_number_index): Fix typo in comment above.
20925	(PRINT_CIRCLE_CANDIDATE_P): Don't create print_number_table
20926	for top-level strings with no properties, except when
20927	print_continuous_numbering is on.
20928
209292019-09-13  Gemini Lasswell  <gazally@runbox.com>
20930
20931	Improve performance of backtrace printing (bug#36566)
20932
20933	* lisp/emacs-lisp/cl-print.el (cl-print-to-string-with-limit): Reduce
20934	print-level and print-length more quickly when the structure being
20935	printed is very large.
20936
209372019-09-13  Gemini Lasswell  <gazally@runbox.com>
20938
20939	Improve print output options commands in backtrace-mode (bug#36566)
20940
20941	* lisp/emacs-lisp/backtrace.el (backtrace-view): Mention
20942	:print-gensym in docstring.
20943	(backtrace-mode-map): Add keyboard binding for
20944	backtrace-toggle-print-gensym.  Add menu entries for
20945	backtrace-toggle-print-circle and backtrace-toggle-print-gensym.
20946	(backtrace--with-output-variables): Bind print-gensym with value
20947	of :print-gensym found in view plist.
20948	(backtrace-toggle-print-circle): Remove description of
20949	implementation details from docstring.
20950	(backtrace-toggle-print-gensym): New command.
20951	(backtrace--toggle-feature): Add echo area message describing result
20952	of command.
20953
20954	* test/lisp/emacs-lisp/backtrace-tests.el
20955	(backtrace-tests--print-circle): New test.
20956
20957	* doc/lispref/debugging.texi (Backtraces): Document keyboard
20958	binding for backtrace-toggle-print-gensym.
20959
209602019-09-13  Stefan Kangas  <stefankangas@gmail.com>
20961
20962	* lisp/help-mode.el (help-mode-menu): Fix typo.  (Bug#36485)
20963
20964	* doc/misc/efaq.texi: Update ancient formats. (Bug#37143)
20965
209662019-09-13  Stefan Kangas  <stefankangas@gmail.com>
20967
20968	Remove leftover XEmacs compat code and doc fixes
20969
20970	* lisp/mail/feedmail.el (top-level): Remove outdated comment.
20971	(feedmail-run-the-queue): Remove leftover XEmacs compat code.
20972	(feedmail-nuke-bcc): Doc fix.
20973
20974	* lisp/emulation/viper.el (top-level, viper-mode)
20975	* lisp/net/rfc2104.el (top-level): Doc fix.
20976
20977	* lisp/textmodes/table.el (top-level): Remove obsolete todo.
20978
209792019-09-13  Stefan Kangas  <stefankangas@gmail.com>
20980
20981	Change gui--selection-value-internal comment into doc string
20982
20983	* lisp/select.el (gui--selection-value-internal): Change comment into
20984	doc string.  (Bug#25528)
20985
209862019-09-13  Michael Albinus  <michael.albinus@gmx.de>
20987
20988	Fix problems in tramp-test33-environment-variables
20989
20990	* test/lisp/net/tramp-tests.el (tramp-test33-environment-variables):
20991	Use ${parameter:-word} construct.  Remove PS1 entry from
20992	"printenv" output.
20993	(tramp--test-check-files): Use "printenv".
20994
209952019-09-13  Michael Albinus  <michael.albinus@gmx.de>
20996
20997	Make recent Tramp patch work for tramp-archive.el
20998
20999	* lisp/net/tramp.el (tramp-connectable-p): Make it work also for
21000	tramp-archive.el.
21001
210022019-09-13  Eli Zaretskii  <eliz@gnu.org>
21003
21004	Fix assertion violations due to non-ASCII text in menus
21005
21006	* src/xdisp.c (tool_bar_height, redisplay_tool_bar)
21007	(display_menu_bar): If the Lisp string to be displayed in the
21008	menu-bar or tool-bar window is multibyte, tell the display
21009	engine to treat it as multibyte, instead of relying on the
21010	initial determination by init_iterator (which is based on the
21011	multibyteness of the current buffer).  (Bug#37385)
21012
210132019-09-12  Jack Coughlin  <jack@jackc.me>  (tiny change)
21014
21015	Fix saving user-defined calc commands with compositions (Bug#36720)
21016
21017	* lisp/calc/calc-prog.el (calc-user-define-permanent): Correctly save
21018	the composition when the user specifies their formula by its command
21019	name or key.
21020
210212019-09-12  Noam Postavsky  <npostavs@gmail.com>
21022
21023	Fix fill-paragraph in python docstrings (Bug#36056)
21024
21025	* lisp/progmodes/python.el (python-do-auto-fill): New function.
21026	(python-mode): Set it as normal-auto-fill-function, and don't set
21027	fill-indent-according-to-mode.  Having the latter set during
21028	fill-paragraph gives wrongs result, because python-indent-line doesn't
21029	remove indentation added by filling.
21030	* test/lisp/progmodes/python-tests.el (python-fill-docstring): New
21031	test.
21032
210332019-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
21034
21035	* lisp/progmodes/sh-script.el (sh--assignment-collect): Only after `=`!
21036
210372019-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
21038
21039	* lisp/progmodes/sh-script.el (sh-mode-map): Don't bind `=`
21040
21041	(sh-shell-initialize-variables): Use sh--assignment-collect on
21042	post-self-insert-hook instead.
21043	(sh--assignment-collect): New function, extracted from sh-assignment.
21044	(sh-assignment): Use it and mark as obsolete.
21045
210462019-09-12  Karl Fogel  <kfogel@red-bean.com>
21047
21048	Add `isearch-yank-until-char'
21049
21050	* lisp/isearch.el (isearch-yank-until-char): New function.
21051	  (isearch-mode-map, isearch-menu-bar-yank-map): Add it.
21052	  (isearch-forward): Document the new binding.
21053
21054	* doc/emacs/search.texi (Isearch Yanking): Document the feature.
21055
21056	* etc/NEWS: Mention the above.
21057
210582019-09-12  Michael Albinus  <michael.albinus@gmx.de>
21059
21060	Optimize host name completion in Tramp
21061
21062	* lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
21063	* lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
21064	* lisp/net/tramp-rclone.el (tramp-rclone-maybe-open-connection):
21065	* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
21066	* lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
21067	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-maybe-open-connection):
21068	Throw `non-essential' at the beginning of the function.
21069
21070	* lisp/net/tramp.el (tramp-handle-file-exists-p):
21071	* lisp/net/tramp-sh.el (tramp-sh-handle-file-exists-p):
21072	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-file-exists-p):
21073	Run only when host is connectable.  This is due to host name
21074	completion, which shall be optimized.
21075
21076	* lisp/net/tramp-smb.el (tramp-smb-do-file-attributes-with-stat)
21077	(tramp-smb-get-file-entries): Access connection buffer only after
21078	sending the command.
21079
21080	* lisp/net/tramp.el (tramp-get-buffer, tramp-get-connection-buffer):
21081	New argument DONT-CREATE.
21082	(tramp-message): Use it.
21083	(tramp-get-mutex): Check, whether host is connectable.
21084	(tramp-file-name-handler): Set thread only when host is connectable.
21085	(tramp-connectable-p): Allow also VEC as argument.
21086	(tramp-completion-handle-file-name-completion): Do not expand directory.
21087
210882019-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
21089
21090	* src/profiler.c: Leave `key` hashslots as Qunbound (bug#37382)
21091
21092	Now that "key == Qunbound" is used to determine if a hash table entry
21093	is available, we can't stash pre-allocated vectors into the `key` slot
21094	anymore, so use the `value` slot instead.
21095
21096	(make_log): Pre-fill the `value` slots i.s.o `key`.
21097	(evict_lower_half): Stash key back into `value`, i.s.o `key`.
21098	(record_backtrace): Get pre-allocated vector for `value` i.s.o `key`.
21099
211002019-09-12  Paul Eggert  <eggert@cs.ucla.edu>
21101
21102	Fix file name encoding when open_directory signals
21103
21104	* src/dired.c (open_directory): New arg ENCODED_DIRNAME.
21105	All callers changed.  Signal error with original name,
21106	not encoded name.
21107
211082019-09-11  Paul Eggert  <eggert@cs.ucla.edu>
21109
21110	Improve error reporting for DOC file problems
21111
21112	* src/doc.c (get_doc_string): Report all serious errors
21113	when DOC cannot be opened, not just fd-exhaustion errors.
21114
211152019-09-11  Paul Eggert  <eggert@cs.ucla.edu>
21116
21117	Fix directory-files-and-attributes race
21118
21119	* src/dired.c (directory_files_internal): Fix race condition:
21120	when some other process removed a file between the readdir and
21121	the ensuing lstat, directory-files-and-attributes would return
21122	a list containing nil.
21123
211242019-09-11  Paul Eggert  <eggert@cs.ucla.edu>
21125
21126	Omit duplicate test of current directory
21127
21128	* src/callproc.c (encode_current_directory): Remove redundant
21129	call to Ffile_accessible_directory_p.  The code checks the
21130	encoded name with file_accessible_directory_p anyway.
21131
211322019-09-11  Paul Eggert  <eggert@cs.ucla.edu>
21133
21134	Improve checking of pdump load failures
21135
21136	* src/alloc.c (memory_full): Just report "memory exhausted" if
21137	failure occurs during initialization, since fancier recovery
21138	schemes are not likely to work when not initialized.
21139	* src/emacs.c (dump_error_to_string): Accept int, not enum
21140	pdumper_load_result, since the result might not fit in the
21141	enum.  Use strerror if it was derived from errno.  This is for
21142	better diagnostics of pdump load failures.
21143	(load_pdump_find_executable): Return char *, not enum.  2nd
21144	arg is now pointer to buffer size, rather than pointer to
21145	pointer to buffer.  All callers changed.  Use Emacs allocator
21146	since they should now be OK even during early startup.
21147	Use check_executable instead access, to use effective rather
21148	than real permissions.
21149	(load_pdump): Return void since callers ignore result.
21150	Use int where enum could be too narrow.  Use heap rather
21151	than stack for possibly-long string.  Prefer ptrdiff_t to
21152	size_t.
21153	* src/fileio.c (check_executable): Now extern.
21154	* src/pdumper.c (pdumper_load): Return int that may have
21155	errno added to it, for better diagnostics when loads fail.
21156
211572019-09-11  Paul Eggert  <eggert@cs.ucla.edu>
21158
21159	Reset dbus registered buses on dump load
21160
21161	Problem reported by Leonard Lausen (Bug#37331).
21162	* src/dbusbind.c: Include pdumper.h.
21163	(syms_of_dbusbind_for_pdumper):
21164	New function, to reset the registered buses.
21165	(syms_of_dbusbind): Use it, fixing a TODO.
21166
211672019-09-11  Paul Eggert  <eggert@cs.ucla.edu>
21168
21169	Fix auto-save with user-emacs-directory
21170
21171	* lisp/startup.el (auto-save-list-file-prefix): Delay initialization,
21172	since the value depends on user-emacs-directory (Bug#37354).
21173
211742019-09-11  Mattias Engdegård  <mattiase@acm.org>
21175
21176	* lisp/emacs-lisp/elint.el (elint-directory-skip-re): Fix doc typo.
21177
211782019-09-10  Katsumi Yamaoka  <yamaoka@jpl.org>
21179
21180	Create a new overlay used to mark Attachment header (bug#37370)
21181
21182	* lisp/gnus/gnus-art.el (gnus-mime-inline-part)
21183	(gnus-mm-display-part, gnus-mime-buttonize-attachments-in-header):
21184	Create a new overlay used to mark Attachment header instead of
21185	using existing overlays.
21186
211872019-09-10  Stephen Leake  <stephen_leake@stephe-leake.org>
21188
21189	Merge commit '74e9799bd89484b8d15bdd6597c68fc00d07e7f7'
21190
211912019-09-10  Stephen Leake  <stephen_leake@stephe-leake.org>
21192
21193	Support `cl-defstruct' in autoloads
21194
21195	* lisp/emacs-lisp/autoload.el (make-autoload): Add `cl-defstruct' to
21196	"complex cases" list.
21197
21198	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Add :autoload-end to
21199	limit what is declared in autoloads.el for a defstruct.
21200
212012019-09-09  Ulf Jasper  <ulf.jasper@web.de>
21202
21203	Handle missing start-time when importing ical event (Bug#33277)
21204
21205	* lisp/calendar/icalendar.el (icalendar--convert-ical-to-diary): Set
21206	start time only if it is explicitly given in ical.  Do not use
21207	start-time as default for end-time (Bug#33277).
21208
21209	* test/lisp/calendar/icalendar-tests.el (icalendar-import-bug-33277):
21210	New.  Test fix for Bug#33277.
21211
212122019-09-08  Tino Calancha  <tino.calancha@gmail.com>
21213
21214	query-replace-regexp undo: Update next-replacement after undo
21215
21216	* lisp/replace.el (perform-replace):
21217	Rename the local binding to not shadow next-replacement.
21218	Update next-replacement after undo (Bug#37287).
21219
21220	* test/lisp/replace-tests.el (query-replace-undo-bug37287): Add test.
21221	(query-replace-undo-bug37073): Tweak this test.
21222
212232019-09-08  Stefan Kangas  <stefankangas@gmail.com>
21224
21225	Match Python 3 code object names in "M-x pdb"
21226
21227	* lisp/progmodes/gud.el (gud-pdb-marker-regexp): Match Python 3 code
21228	object names.  (Bug#11679)
21229
212302019-09-08  Stefan Kangas  <stefankangas@gmail.com>
21231
21232	Remove final XEmacs compat code from dframe.el
21233
21234	* lisp/dframe.el (top-level): Doc fix.
21235	(dframe-frame-parameter): Redefine as an obsolete function alias for
21236	'frame-parameter'.
21237
212382019-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
21239
21240	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Define setter functions.
21241
21242	When :noinline is specified one can't rely on setf expanding the
21243	inlinable function to construct the setter.
21244	Fixes bug#37283.
21245
212462019-09-08  Stefan Kangas  <stefankangas@gmail.com>
21247
21248	Remove support for upgrading from old bookmark file format
21249
21250	* lisp/bookmark.el (bookmark-alist-from-buffer): Remove support for
21251	old bookmark file format.  (Bug#37122)
21252	(bookmark-upgrade-version-0-alist)
21253	(bookmark-upgrade-file-format-from-0)
21254	(bookmark-grok-file-format-version)
21255	(bookmark-maybe-upgrade-file-format): Declare obsolete.
21256	(bookmark-load): Don't call 'bookmark-maybe-upgrade-file-format'.
21257	* etc/NEWS: Announce it.
21258
212592019-09-08  Juri Linkov  <juri@linkov.net>
21260
21261	* lisp/tmm.el: Fix broken tmm-prompt (bug#34517)
21262
21263	* lisp/tmm.el (tmm-prompt): Don't duplicate items of tmm--history.
21264	Don't reverse tmm-km-list for completion.  Don't set the initial
21265	position of 'tmm--history.  Use reverse tmm--history as the list
21266	of default values for M-n.
21267	(tmm-add-prompt): Don't insert initial value to the minibuffer.
21268
212692019-09-08  Juri Linkov  <juri@linkov.net>
21270
21271	Small fixes for tty and w32.
21272
21273	* lisp/menu-bar.el (showhide-tab-bar): Visible on tty too.
21274	* lisp/tab-bar.el (tab-bar-mode): Add binding [(control shift tab)] for w32.
21275	* lisp/tab-line.el (tab-line-add-tab): Use tmm-prompt for buffer-menu on tty.
21276	* src/w32term.c (w32_read_socket): Fix tool-bar clicks.
21277
212782019-09-08  Alan Mackenzie  <acm@muc.de>
21279
21280	Fix untidinesses in compile.el.
21281
21282	* lisp/progmodes/compile.el (compilation--margin-string): Renamed from
21283	compilation-margin-string.  Use defconst rather than defvar.  Use propertize
21284	rather than a separate put-text-property.  Trim the doc string.
21285
212862019-09-08  Michael Albinus  <michael.albinus@gmx.de>
21287
21288	Fix Bug#36090
21289
21290	* lisp/vc/vc-hg.el (vc-hg--pushpull, vc-hg-merge-branch)
21291	(vc-hg-command): Disable pager.  (Bug#36090)
21292
212932019-09-08  Michael Albinus  <michael.albinus@gmx.de>
21294
21295	Fix Bug#37202
21296
21297	* test/lisp/shadowfile-tests.el (shadow-test08-shadow-todo)
21298	(shadow-test09-shadow-copy-files): Use truename of
21299	`shadow-test-remote-temporary-file-directory'.  (Bug#37202)
21300
213012019-09-07  Paul Eggert  <eggert@cs.ucla.edu>
21302
21303	Fix bug when gc-cons-percentage is bumped to 0.8
21304
21305	Problem reported by Michael Heerdegen (Bug#37321).
21306	* src/alloc.c (gc_threshold): New static var.
21307	(bump_consing_until_gc): Change args from DIFF to THRESHOLD and
21308	PERCENTAGE.  All uses changed.  When accounting for a changed
21309	gc-cons-percentage, do not assume that total_bytes_of_live_objects
21310	returns the same value now that it did the last time we were
21311	called.
21312
213132019-09-07  Stefan Kangas  <stefankangas@gmail.com>
21314
21315	Use derived-mode-p consistently in info.el
21316
21317	* lisp/info.el (Info-hide-note-references, info-display-manual)
21318	(info--manual-names): Use derived-mode-p.  (Bug#27583)
21319
213202019-09-07  Noam Postavsky  <npostavs@gmail.com>
21321
21322	Let byte-compiler recognize that local-variable-p implies boundp
21323
21324	* lisp/emacs-lisp/bytecomp.el (byte-compile-maybe-guarded): Add
21325	arguments to local-variable-p to the bound list.
21326	* lisp/image-mode.el (image-toggle-display-image): Remove no longer
21327	needed boundp check.
21328
213292019-09-07  Joel Rosdahl  <joel@rosdahl.net>
21330
21331	Fix flymake-proc temporary file deletion bug
21332
21333	* lisp/progmodes/flymake-proc.el (flymake-proc-create-temp-inplace):
21334	Include a time string part (hour + minute + second + nanosecond) in
21335	the temporary name to make it unique enough.
21336	(flymake-proc-legacy-flymake): Store temporary file names in the
21337	process for usage in the sentinel.
21338	(flymake-proc--process-sentinel): Bind values of temporary file names
21339	dynamically to values stored in the process so that the cleanup
21340	function will delete the correct temporary file(s).
21341
21342	Fixes bug#31981.
21343
213442019-09-07  Juri Linkov  <juri@linkov.net>
21345
21346	* lisp/tab-bar.el (tab-bar-make-keymap-1): Don't use fixed "Current tab".
21347
21348	* lisp/tab-bar.el (tab-bar-make-keymap-1):
21349	* lisp/tab-line.el (tab-line-tab-name-add):
21350	Add space after Unicode char to avoid char clobbering on terminals.
21351
213522019-09-07  Alan Mackenzie  <acm@muc.de>
21353
21354	Amend the menu caption for page "Display Property" in the Elisp manual.
21355
21356	* doc/lispref/display.texi (Emacs Display): Replace a content-free menu
21357	caption with one mentioning images, margins and text size.
21358
213592019-09-07  Eli Zaretskii  <eliz@gnu.org>
21360
21361	Support visiting compressed image files
21362
21363	* lisp/image-mode.el (image-toggle-display-image): Support
21364	visiting compressed image files which are uncompressed by
21365	jka-compr.el.  (Bug#37330)
21366
213672019-09-07  Michael Albinus  <michael.albinus@gmx.de>
21368
21369	Add traces in shadowfile
21370
21371	* lisp/shadowfile.el (shadow-add-to-todo)
21372	(shadow-remove-from-todo, shadow-save-todo-file):
21373	* test/lisp/shadowfile-tests.el (shadow-test08-shadow-todo):
21374	Add traces.
21375
213762019-09-07  Evgeny Zajcev  <lg.zevlg@gmail.com>
21377
21378	Fix input method operation on read-only text
21379
21380	* lisp/international/quail.el (quail-input-method): Check also
21381	read-only property of text in addition to the buffer's
21382	read-only state.
21383
213842019-09-07  Eli Zaretskii  <eliz@gnu.org>
21385
21386	Allow client connections when in recursive-edit
21387
21388	* lisp/server.el (server-goto-toplevel): Check minibuffer
21389	depth, not recursion depth.  This avoids exiting
21390	recursive-edit if a client connection is accepted during
21391	recursive-edit.  (Bug#37176)
21392
213932019-09-07  Eli Zaretskii  <eliz@gnu.org>
21394
21395	Set inhibit-compacting-font-caches to t by default on MS-Windows
21396
21397	* src/font.c (syms_of_font) [WINDOWSNT]: Set
21398	inhibit-compacting-font-caches to t by default.
21399
21400	* etc/NEWS: Mention the change.
21401
214022019-09-07  Eli Zaretskii  <eliz@gnu.org>
21403
21404	Allow Zs characters to be composed
21405
21406	* src/composite.c (char_composable_p): Allow SPC and other Zs
21407	characters to be composed.
21408
21409	* lisp/composite.el (compose-gstring-for-graphic): Don't
21410	reject characters whose general category is Zs.  (Bug#14461)
21411
214122019-09-07  Eli Zaretskii  <eliz@gnu.org>
21413
21414	Revert "file-truename now uses realpath for local files"
21415
21416	This reverts commit a59839d7556ef85058e09b005f0ff32e59b20ec3.
21417	This commit broke the MS-Windows build (because there's no
21418	realpath on MS-Windows).  Even if I change the implementation
21419	to always signal an error on MS-Windows, the build fails.
21420
214212019-09-06  Paul Eggert  <eggert@cs.ucla.edu>
21422
21423	file-truename now uses realpath for local files
21424
21425	This uses fewer syscalls on GNU/Linux and other GNUish platforms.
21426	* lisp/files.el (file-truename): Try fileio--truename
21427	if there are no handlers.
21428	* src/fileio.c: Include stdlib.h, for realpath.
21429	(Ffileio__truename): New function.
21430
214312019-09-06  Mauro Aranda  <maurooaranda@gmail.com>
21432
21433	Improve file name completion in file and directory widgets (Bug#7779)
21434
21435	* lisp/wid-edit.el (widget 'file, widget 'directory): Respect the option
21436	read-file-name-completion-ignore-case.
21437	(widget 'directory): Filter the file names, to only perform directory name
21438	completion.
21439
214402019-09-05  Amin Bandali  <bandali@gnu.org>
21441
21442	Fix erc-lurker-update-status (bug#36843)
21443
21444	Broken since 2013-08-22 "* lisp/erc/erc.el: Use lexical-binding".
21445
21446	* lisp/erc/erc.el (erc-message-parsed): New variable.
21447	(erc-display-message): Dynamically bind it.
21448	(erc-lurker-update-status): Check it instead of using `parsed'
21449	directly.  This results in `erc-lurker-state' being properly updated
21450	to keep track of non-lurkers, and thus `erc-lurker-p' returning
21451	correct results rather than return t for everyone.
21452
214532019-09-05  Paul Eggert  <eggert@cs.ucla.edu>
21454
21455	Fix bugs when recalculating consing_until_gc
21456
21457	Problem reported by Joseph Mingrone (Bug#37006#72).
21458	* src/alloc.c (watch_gc_cons_threshold)
21459	(watch_gc_cons_percentage):
21460	Don’t try to store an intmax_t into an int.
21461	Redo to make the code clearer.
21462	(watch_gc_cons_percentage):
21463	Use gc_cons_threshold, not consing_until_gc.
21464
214652019-09-05  Juri Linkov  <juri@linkov.net>
21466
21467	Don't use hook pre-redisplay-functions.  Set buffer-local tab-line-format.
21468
21469	* lisp/tab-line.el (tab-line-format): Move to C.
21470	(tab-line-update-window-parameter): Remove function.
21471	(global-tab-line-mode): Set the default value of tab-line-format.
21472
21473	* src/buffer.c (syms_of_buffer): Define buffer-local variable
21474	tab-line-format.
21475
21476	* src/buffer.h (struct buffer): Add tab_line_format_.
21477
21478	* src/window.c (window_wants_tab_line):
21479	* src/xdisp.c (pos_visible_p, display_mode_lines):
21480	Check for buffer-local tab_line_format.
21481
214822019-09-05  Paul Eggert  <eggert@cs.ucla.edu>
21483
21484	Port :safe-renegotiation test to GnuTLS < 3.6.3
21485
21486	Problem reported by Robert Pluim in
21487	https://lists.gnu.org/r/emacs-devel/2019-09/msg00127.html
21488	* src/gnutls.c (Fgnutls_peer_status): Simplify test for
21489	whether the :safe-renegotiation result is needed, so that it
21490	works all the way back to GnuTLS 2.12.2.
21491
214922019-09-05  Lars Ingebrigtsen  <larsi@gnus.org>
21493
21494	Further fix for network-security-protocol-checks
21495
21496	* lisp/net/nsm.el (network-security-protocol-checks): Fix the
21497	defcustom type some more (bug#37306).
21498
214992019-09-05  Lars Ingebrigtsen  <larsi@gnus.org>
21500
21501	Fix defcustom type of network-security-protocol-checks
21502
21503	* lisp/net/nsm.el (network-security-protocol-checks): Fix the
21504	defcustom type (bug#37306).
21505
215062019-09-04  Paul Eggert  <eggert@cs.ucla.edu>
21507
21508	Use plain ‘static’ for Emacs C inline functions
21509
21510	This improved performance of ‘make compile-always’ by 8.2%
21511	on my platform (AMD Phenom II X4 910e, Fedora 30 x86-64).
21512	* src/conf_post.h (INLINE, EXTERN_INLINE, INLINE_HEADER_BEGIN)
21513	(INLINE_HEADER_END) [!EMACS_EXTERN_INLINE]: Use plain ‘static’.
21514
215152019-09-04  Paul Eggert  <eggert@cs.ucla.edu>
21516
21517	Tweak xd_append_arg to pacify -Wnull-dereference
21518
21519	* src/dbusbind.c (xd_append_arg): Redo to pacify gcc
21520	-Wnull-dereference.  Also, check that the Lisp string won’t
21521	overrun the C signature buffer.
21522
215232019-09-04  Robert Pluim  <rpluim@gmail.com>
21524
21525	Don't check for :safe-renegotiation with TLS1.3
21526
21527	* lisp/net/nsm.el (nsm-protocol-check--renegotiation-info-ext): Don't
21528	check when using TLS1.3, renegotiation has been removed from TLS.
21529	Reported in
21530	<https://lists.gnu.org/archive/html/help-gnu-emacs/2019-09/msg00005.html>
21531
215322019-09-04  Paul Eggert  <eggert@cs.ucla.edu>
21533
21534	Don’t mention :safe-renegotiation in TLS 1.3
21535
21536	* src/gnutls.c (Fgnutls_peer_status): Don’t put the
21537	safe-renegotiation indication into the status in TLS 1.3, which
21538	removed support for renegotiation.
21539
215402019-09-04  Robert Pluim  <rpluim@gmail.com>
21541
21542	Fix nsm for unencrypted connections
21543
21544	When connecting using a cleartext connection, nsm was erroring out and
21545	tearing down the connection because it was trying to display
21546	nonexistent certificate information.
21547
21548	* lisp/net/nsm.el (nsm-query-user): Only format certificate status
21549	when it is valid.  (Bug#37221)
21550
215512019-09-04  Juri Linkov  <juri@linkov.net>
21552
21553	Text-based nox builds compiled without X window support
21554
215552019-09-04  Paul Eggert  <eggert@cs.ucla.edu>
21556
21557	Port pdumper mmap to AIX
21558
21559	* src/pdumper.c (needs_mmap_retry_p) [_AIX]: Return true.
21560	Problem observed on AIX 7.1 and 7.2 in GCC compile farm.
21561
215622019-09-04  Paul Eggert  <eggert@cs.ucla.edu>
21563
21564	Port to platforms with Xrender lib but not header
21565
21566	* configure.ac (HAVE_XRENDER): Also require ‘#include
21567	<X11/extensions/Xrender.h>’ to work.  Problem found
21568	on gcc119 in GCC compile farm.
21569
215702019-09-04  Mattias Engdegård  <mattiase@acm.org>
21571
21572	Correct arguments to `skip-syntax-forward'
21573
21574	* lisp/wid-edit.el (widget-sexp-validate): Fix bad calls to
21575	`skip-syntax-forward', whose argument is not a regexp.
21576
215772019-09-04  Lars Ingebrigtsen  <larsi@gnus.org>
21578
21579	Make the NSM not pop up an X dialogue on non-mouse actions
21580
21581	* lisp/emacs-lisp/rmc.el (read-multiple-choice): Don't pop up X
21582	dialogues on (url-retrieve "https://expired.badssl.com/" #'ignore)
21583	and the like.
21584
215852019-09-04  Lars Ingebrigtsen  <larsi@gnus.org>
21586
21587	Preserve more markers when reverting .gpg files
21588
21589	* lisp/epa-file.el (epa-file--replace-text): Gingerly replace the
21590	text in the buffer to preserve as many markers as possible
21591	(bug#34720).  This emulates the behaviour of Finsert_file_contents
21592	more accurately.
21593	(epa-file-decode-and-insert): Remove compat code.
21594	(epa-file-insert-file-contents): Use the new function.
21595
21596	* lisp/emacs-lisp/cl-lib.el (cl-incf): Add autoload cookie.
21597
215982019-09-04  Mattias Engdegård  <mattiase@acm.org>
21599
21600	Repair change to compilation-context-lines (bug#36832)
21601
21602	* lisp/progmodes/compile.el (compilation-set-window):
21603	Restore proper behaviour when compilation-context-lines is nil,
21604	which is the default.
21605
216062019-09-04  Michael Albinus  <michael.albinus@gmx.de>
21607
21608	Further work on Bug#37202
21609
21610	* test/lisp/shadowfile-tests.el (shadow-debug): Set to t.
21611	(shadow--tests-cleanup): Simplify.
21612	(shadow-test*): Call `shadow-initialize'.
21613	(shadow-test08-shadow-todo, shadow-test09-shadow-copy-files):
21614	In cleanup, kill buffers used for test.
21615	(top): Do not initialize.
21616
216172019-09-04  Robert Pluim  <rpluim@gmail.com>
21618
21619	Add description of chinese-sisheng
21620
21621	* doc/emacs/mule.texi (Input Methods): Add description of
21622	chinese-sisheng method for entering characters using pīnyīn.
21623
216242019-09-04  Michael Albinus  <michael.albinus@gmx.de>
21625
21626	* lisp/net/tramp.el (tramp-process-sentinel): Use `process-buffer'.
21627
216282019-09-03  Paul Eggert  <eggert@cs.ucla.edu>
21629
21630	* src/systime.h (hz): #undef to work around AIX build issue.
21631
216322019-09-03  Paul Eggert  <eggert@cs.ucla.edu>
21633
21634	Prefer functions to macros in buffer.h
21635
21636	In buffer.h, prefer inline functions to function-like macros
21637	when either will do.  This helps avoid confusion about how
21638	many times an arg is evaluated.  On my platform, this patch
21639	improves performance of ‘make compile-always’ by 5.7%.
21640	Also, prefer enum constants to object-like macros
21641	when either will do.
21642	* src/buffer.h (BEG, BEG_BYTE, GAP_BYTES_DFL, GAP_BYTES_MIN)
21643	(MAX_PER_BUFFER_VARS, NONEXISTENT_MODTIME_NSECS)
21644	(UNKNOWN_MODTIME_NSECS, BUFFER_LISP_SIZE, BUFFER_REST_SIZE):
21645	Now enum constants, instead of macros.
21646	(BUFFER_CEILING_OF, BUFFER_FLOOR_OF, BUF_BEG, BUF_BEG_BYTE)
21647	(BUF_BEGV, BUF_BEGV_BYTE, BUF_PT, BUF_PT_BYTE, BUF_ZV)
21648	(BUF_ZV_BYTE, BUF_GPT_ADDR, BUF_Z_ADDR, BUF_GAP_END_ADDR)
21649	(BUF_COMPUTE_UNCHANGED, SET_PT, TEMP_SET_PT, SET_PT_BOTH)
21650	(TEMP_SET_PT_BOTH, BUF_TEMP_SET_PT, SET_BUF_BEGV, SET_BUF_ZV)
21651	(SET_BUF_BEGV_BOTH, SET_BUF_ZV_BOTH, SET_BUF_PT_BOTH)
21652	(BYTE_POS_ADDR, CHAR_POS_ADDR, CHAR_TO_BYTE, BYTE_TO_CHAR)
21653	(PTR_BYTE_POS, FETCH_CHAR, FETCH_CHAR_AS_MULTIBYTE)
21654	(BUF_BYTE_ADDRESS, BUF_CHAR_ADDRESS, BUF_PTR_BYTE_POS)
21655	(BUF_FETCH_CHAR, BUF_FETCH_CHAR_AS_MULTIBYTE, BUF_FETCH_BYTE)
21656	(BUFFER_PVEC_INIT, BUFFER_LIVE_P, BUFFER_HIDDEN_P)
21657	(BUFFER_CHECK_INDIRECTION, OVERLAY_POSITION, PER_BUFFER_VALUE_P)
21658	(SET_PER_BUFFER_VALUE_P, PER_BUFFER_IDX):
21659	Now inline functions instead of macros.
21660
216612019-09-03  Paul Eggert  <eggert@cs.ucla.edu>
21662
21663	* src/xdisp.c (hscroll_window_tree): Fix type typo.
21664
216652019-09-03  Paul Eggert  <eggert@cs.ucla.edu>
21666
21667	Take last_per_buffer_idx private
21668
21669	This will simplify future changes.  Turn the runtime check
21670	into an eassert, since it’s not needed in production.
21671	* src/buffer.c (last_per_buffer_idx): Now static.
21672	(valid_per_buffer_idx): New function.
21673	* src/buffer.h (PER_BUFFER_VALUE_P, SET_PER_BUFFER_VALUE_P): Use it.
21674
216752019-09-03  Paul Eggert  <eggert@cs.ucla.edu>
21676
21677	Avoid macros in pdumper.c when it’s easy
21678
21679	Problem with DUMP_SET_REFERRER mentioned by Pip Cet at end of:
21680	https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00548.html
21681	* src/pdumper.c (DANGEROUS, EMACS_RELOC_TYPE_BITS)
21682	(EMACS_RELOC_LENGTH_BITS, DUMP_RELOC_TYPE_BITS)
21683	(DUMP_RELOC_ALIGNMENT_BITS, DUMP_RELOC_OFFSET_BITS)
21684	(DUMP_RELOCATION_ALIGNMENT, DUMP_ALIGNMENT)
21685	(WEIGHT_NONE, WEIGHT_NORMAL, WEIGHT_STRONG)
21686	(PDUMPER_MAX_OBJECT_SIZE):
21687	Now a constant, not a macro.
21688	(divide_round_up): Now a function, not a macro DIVIDE_ROUND_UP.
21689	All uses changed.
21690	(enum link_weight_enum, WEIGHT_NONE_VALUE)
21691	(WEIGHT_NORMAL_VALUE, WEIGHT_STRONG_VALUE): Remove.
21692	(struct link_weight): Just use an int.
21693	(dump_set_referrer): New function, replacing DUMP_SET_REFERRER
21694	macro with a different API.  All uses changed.
21695	(dump_clear_referrer): Rename from DUMP_CLEAR_REFERRER.
21696	All uses changed.
21697	(DEFINE_FROMLISP_FUNC, DEFINE_TOLISP_FUNC): Remove.
21698	(intmax_t_from_lisp, intmax_t_to_lisp, dump_off_from_lisp)
21699	(dump_off_to_lisp): Define without using macros,
21700	(dump_off_from_lisp): Add an eassert range check.
21701	(DUMP_FIELD_COPY): Simplify.
21702
217032019-09-03  Paul Eggert  <eggert@cs.ucla.edu>
21704
21705	Avoid casting -1 to possibly-unsigned enum
21706
21707	* src/alloc.c (mark_maybe_pointer):
21708	* src/pdumper.h (pdumper_object_p_precise):
21709	Use pdumper_valid_object_type_p.
21710	* src/pdumper.c (pdumper_find_object_type_impl):
21711	* src/pdumper.h (pdumper_find_object_type):
21712	Return int, not enum Lisp_Type.  All callers changed.
21713	* src/pdumper.h (PDUMPER_NO_OBJECT): Do not cast -1 to enum
21714	Lisp_Type; in theory, C18 says this could yield 7, which would
21715	mean PDUMPER_NO_OBJECT == Lisp_Float (!).
21716	(pdumper_valid_object_type_p): New function.
21717
217182019-09-03  Juri Linkov  <juri@linkov.net>
21719
21720	Small fix for text-mode display
21721
21722	* lisp/tab-line.el (tab-line-tab-name): Try to use truncate-string-to-width.
21723
21724	Try to fix compilation errors on macOS
21725
217262019-09-03  Daniel Colascione  <dancol@dancol.org>
21727
21728	Run tramp cleanup in correct buffer
21729
21730	Fixes bug #37297.
21731
21732	* lisp/net/tramp.el (tramp-process-sentinel): Do process-end cleanup
21733	in the tramp buffer, not a random file buffer.
21734
217352019-09-03  Paul Eggert  <eggert@cs.ucla.edu>
21736
21737	Sync consing_until_gc with gc-cons-threshold
21738
21739	Add watchers for gc-cons-threshold and gc-cons-percentage
21740	that update consing_until_gc accordingly.
21741	Suggested by Eli Zaretskii (Bug#37006#52).
21742	* src/alloc.c (consing_threshold, bump_consing_until_gc)
21743	(watch_gc_cons_threshold, watch_gc_cons_percentage):
21744	New functions.
21745	(garbage_collect_1): Use consing_threshold.
21746	(syms_of_alloc): Arrange to watch gc-cons-threshold and
21747	gc-cons-percentage.
21748
217492019-09-03  Juri Linkov  <juri@linkov.net>
21750
21751	Text-mode display of the tab-bar and emulation of clicking on a tty.
21752
21753	* lisp/tab-bar.el (tab-bar-mouse): New command bound to mouse-1 on [tab-bar].
21754
21755	* lisp/xt-mouse.el (xterm-mouse-event): Use `tab-bar' when clicking
21756	on the tab-bar that is on the second row below menu-bar.
21757
21758	* src/frame.c (set_tab_bar_lines): New function.
21759	(frame_windows_min_size): Add FRAME_TAB_BAR_LINES.
21760	(make_initial_frame): Call set_tab_bar_lines.
21761	(store_frame_param): Call set_tab_bar_lines for Qtab_bar_lines prop.
21762	(Fframe_parameters): Call store_in_alist for Qtab_bar_lines.
21763
21764	* src/xdisp.c (display_tab_bar): New function.
21765	(redisplay_window): Call display_tab_bar when `FRAME_WINDOW_P (f)'
21766	is NULL on a tty.
21767
217682019-09-03  Alan Mackenzie  <acm@muc.de>
21769
21770	Use left margin to hold "=>" to indicate current error in fringeless windows
21771
21772	This applies to compilation-mode.  It amends the fix for bug #36832.
21773
21774	* lisp/progmodes/compile.el (compilation-arrow-overlay): renamed from
21775	overlay-arrow-overlay.
21776	(compilation-margin-string, compilation--dummy-string): New variables.
21777	(compilation-set-up-arrow-spec-in-margin)
21778	(compilation-tear-down-arrow-spec-in-margin): New functions.
21779	(compilation-set-overlay-arrow): Rewritten to use the new variables/functions.
21780
217812019-09-03  Michael Albinus  <michael.albinus@gmx.de>
21782
21783	Fix Bug#37202
21784
21785	* lisp/shadowfile.el (shadow-debug): New defvar.
21786	(shadow-read-files): Suppress error if there's no TODO file.
21787
21788	* test/lisp/shadowfile-tests.el (shadow-debug): Set to nil.
21789	(shadow--tests-cleanup): New defun.  Apply to all tests.  (Bug#37202)
21790	(shadow-test06-literal-groups): Cleanup temp buffer.
21791	(shadow-test08-shadow-todo): Add debug messages.
21792	(top): Cleanup initially.
21793
217942019-09-02  Juri Linkov  <juri@linkov.net>
21795
21796	* lisp/tab-line.el: Limit the number of window tabs to tab-line-tabs-limit.
21797
21798	* lisp/tab-line.el: Display truncated tab name in the tooltip.
21799
218002019-09-02  Paul Eggert  <eggert@cs.ucla.edu>
21801
21802	Update from Gnulib
21803
21804	This incorporates:
21805	2019-08-25 intprops.h, verify.h: port better to clang
21806	2019-08-21 New strip-trailing-space option for srclist-update
21807	* .gitattributes: Remove doc/misc/texinfo.tex special case,
21808	which is no longer needed now that Gnulib trims blank-at-eol.
21809	* build-aux/install-sh, doc/misc/texinfo.tex, lib/intprops.h:
21810	* lib/regex_internal.c, lib/verify.h: Copy from Gnulib.
21811
218122019-09-02  Paul Eggert  <eggert@cs.ucla.edu>
21813
21814	* doc/lispref/files.texi (Standard File Names): Mention .emacs.d too.
21815
218162019-09-02  Robert Pluim  <rpluim@gmail.com>
21817
21818	Reword documentation markup description
21819
21820	* etc/NEWS: Reword temporary note about documentation updates.
21821
218222019-09-02  Robert Pluim  <rpluim@gmail.com>
21823
21824	Add 'nsm-trust-local-network' to NEWS
21825
21826	* etc/NEWS: Describe 'nsm-trust-local-network', and warn against its
21827	use.
21828
218292019-09-01  Glenn Morris  <rgm@gnu.org>
21830
21831	* admin/admin.el (set-version): Check for empty NEWS sections.
21832
218332019-09-01  Juri Linkov  <juri@linkov.net>
21834
21835	Try to add more tab-bar support on macos
21836
21837	Try to add more tab-bar support on Windows
21838
218392019-09-01  Juri Linkov  <juri@linkov.net>
21840
21841	* src/nsterm.m: Fix arguments to window_from_coordinates function call
21842
21843	Thanks to Jean-Christophe Helary <jean.christophe.helary@traduction-libre.org>
21844
218452019-09-01  Martin Rudalics  <rudalics@gmx.at>
21846
21847	Fixes to build on Windows
21848
21849	* src/w32fns.c (w32_set_tab_bar_lines, w32_change_tab_bar_height):
21850	New functions.
21851
21852	* src/w32term.c (w32_create_terminal): Set change_tab_bar_height_hook
21853	to w32_change_tab_bar_height.
21854
218552019-09-01  Juri Linkov  <juri@linkov.net>
21856
21857	Add more aliases switch-to-tab, previous-tab, next-tab
21858
218592019-09-01  Juri Linkov  <juri@linkov.net>
21860
21861	Non-graphical access to frame-local tabs (named window configurations)
21862
21863	* lisp/tab-bar.el (make-tab, delete-tab, tab-bar-list)
21864	(tab-bar-list-next-line, tab-bar-list-prev-line)
21865	(tab-bar-list-unmark, tab-bar-list-backup-unmark)
21866	(tab-bar-list-delete, tab-bar-list-delete-backwards)
21867	(tab-bar-list-execute, tab-bar-list-select)
21868	(tab-bar-list-mouse-select): New commands.
21869	(tab-bar-list-noselect, tab-bar-list-current-tab)
21870	(tab-bar-list-delete-from-list): New functions.
21871	(tab-bar-list-column): New defvar.
21872
218732019-09-01  Noam Postavsky  <npostavs@gmail.com>
21874
21875	Fix non-deterministic process test
21876
21877	* test/src/process-tests.el (set-process-filter-t): Don't assume
21878	subprocess output will come in a single chunk, keep waiting for more
21879	data until next "prompt" is read from subprocess.
21880
21881	(cherry picked from commit aa49aa884053d0e8b33efe265f2aade19d1f3f3d)
21882
218832019-09-01  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
21884
21885	Fix load-theme bug with user-emacs-directory
21886
21887	* lisp/custom.el (custom-theme-directory): Delay initialization,
21888	since the value depends on user-emacs-directory (Bug#37256).
21889
218902019-09-01  Mattias Engdegård  <mattiase@acm.org>
21891
21892	Clarify what counts as whitespace in `string-blank-p'
21893
21894	* lisp/emacs-lisp/subr-x.el (string-blank-p): Expand doc string.
21895
218962019-08-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
21897	    Noam Postavsky  <npostavs@gmail.com>
21898
21899	package.el: Allow Package-Requires to span multiple lines (Bug#36301)
21900
21901	* lisp/emacs-lisp/package.el (lm-header-multiline): Declare
21902	function.
21903	(package-buffer-info): Parse Package-Requires with
21904	lm-header-multiline instead of lm-header.
21905	(Bug#36301)
21906
219072019-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21908
21909	Make user-emacs-directory a variable
21910
21911	This is in response to Eli’s review here:
21912	https://lists.gnu.org/r/emacs-devel/2019-07/msg00712.html
21913	* lisp/subr.el (user-emacs-directory): defvar, not defconst
21914
219152019-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21916
21917	Improve documentation for recent XDG-related changes
21918
21919	Adjust documentation in the light of Eli’s review here:
21920	https://lists.gnu.org/r/emacs-devel/2019-07/msg00712.html
21921	* doc/emacs/custom.texi (Init File, Find Init):
21922	* doc/lispref/files.texi (Standard File Names):
21923	* doc/lispref/os.texi (Init File):
21924
219252019-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21926
21927	* doc/lispref/customize.texi: Fix typo.
21928
219292019-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21930
21931	Calculate user-emacs-directory on startup
21932
21933	Problem reported by Glenn Morris (Bug#583#56).
21934	* lisp/startup.el (startup--xdg-config-default): New constant.
21935	(startup--xdg-config-home-emacs): New var.
21936	(startup--xdg-or-homedot): New function.
21937	(normal-top-level): Use it to set user-emacs-directory early on.
21938	(command-line): Also use it to determine the startup init directory.
21939	* lisp/subr.el (user-emacs-directory): Just initialize to nil.
21940
219412019-08-31  Juri Linkov  <juri@linkov.net>
21942
21943	Frame-local tab-bar and window-local tab-line.
21944
21945	* etc/NEWS: Add 'tab-bar-mode' and 'global-tab-line-mode'.
21946
21947	* etc/TODO: Remove tab-related items.
21948
21949	* lisp/cus-start.el: Add tab-bar-mode, tab-bar-max-label-size.
21950
21951	* lisp/frame.el (frame-notice-user-settings): handle tab-bar-lines.
21952
21953	* lisp/loadup.el: Load "tab-bar".
21954
21955	* lisp/menu-bar.el (menu-bar-options-save): Add tab-bar-mode.
21956	(menu-bar-showhide-menu): Define showhide-tab-bar.
21957
21958	* lisp/startup.el (tab-bar-images-pixel-height): New defconst.
21959	(command-line): Reset tab-bar-mode.
21960	(x-apply-session-resources): Add "tabBar", "TabBar".
21961
21962	* lisp/subr.el (read-key): Add tab-bar.
21963
21964	* lisp/tab-bar.el: New file.
21965	* lisp/tab-line.el: New file.
21966
21967	* lisp/window.el (window--dump-frame): Add tab-bar-height.
21968
21969	* src/dispextern.h (enum window_part): Add ON_TAB_LINE.
21970	(struct glyph_matrix): Add tab_line_p.
21971	(struct glyph_row): Add tab_line_p.
21972	(MATRIX_TAB_LINE_ROW): New macro.
21973	(MATRIX_FIRST_TEXT_ROW): Handle more mode lines.
21974	(MR_PARTIALLY_VISIBLE_AT_TOP): Add WINDOW_TAB_LINE_HEIGHT.
21975	(MATRIX_TAB_LINE_HEIGHT, CURRENT_TAB_LINE_HEIGHT)
21976	(DESIRED_TAB_LINE_HEIGHT): New macros.
21977	(enum face_id): Add TAB_BAR_FACE_ID and TAB_LINE_FACE_ID.
21978	(struct it): Add tab_line_p.
21979	(tab_bar_item_idx, tab_bar_item_image): New enums.
21980	(DEFAULT_TAB_BAR_LABEL_SIZE, DEFAULT_TAB_BAR_BUTTON_MARGIN)
21981	(DEFAULT_TAB_BAR_BUTTON_RELIEF, DEFAULT_TAB_BAR_IMAGE_HEIGHT):
21982	New constants.
21983
21984	* src/dispnew.c (adjust_glyph_matrix): Use window_wants_tab_line.
21985	(shift_glyph_matrix): Add WINDOW_TAB_LINE_HEIGHT.
21986	(clear_current_matrices, clear_desired_matrices):
21987	Call clear_glyph_matrix on tab_bar_window.
21988	(blank_row): Add WINDOW_TAB_LINE_HEIGHT.
21989	(required_matrix_height): Change 2 to 3.
21990	(fake_current_matrices): Reset tab_line_p.
21991	(adjust_frame_glyphs_for_window_redisplay): Handle tab_bar_window.
21992	Add FRAME_TAB_BAR_HEIGHT and FRAME_TAB_BAR_LINES.
21993	(free_glyphs): Handle tab_bar_window.
21994	(update_frame): Handle tab_bar_window.
21995	(update_window): Handle row->tab_line_p.
21996	(scrolling_window): Change arg type from bool to int.
21997	Change header_line_p to tab_line_p.
21998	(buffer_posn_from_coords): Add window_wants_tab_line.
21999	(mode_line_string): Use MATRIX_TAB_LINE_ROW for part ON_TAB_LINE.
22000
22001	* src/frame.c (frame_default_tab_bar_height): New internal variable.
22002	(adjust_frame_size): Handle tab_bar_window.
22003	(make_frame): Reset tab_bar_redisplayed, tab_bar_resized and
22004	last_tab_bar_item.
22005	(Ftab_bar_pixel_width): New function.
22006	(frame_parms): Add tab-bar-lines.
22007	(gui_figure_window_size): Add new arg tabbar_p.
22008	(syms_of_frame): Add Qtab_bar_size, Qupdate_frame_tab_bar,
22009	Qfree_frame_tab_bar, Qtab_bar_lines, Stab_bar_pixel_width.
22010	Add Qtab_bar_lines to frame_inhibit_implied_resize.
22011	(tab-bar-mode): New variable.
22012
22013	* src/frame.h (GCALIGNED_STRUCT): Add tab_bar_window,
22014	desired_tab_bar_string, current_tab_bar_string.
22015	(GCALIGNED_STRUCT): Add tab_bar_items, last_tab_bar_item,
22016	minimize_tab_bar_window_p, tab_bar_redisplayed, tab_bar_resized,
22017	tab_bar_lines, tab_bar_height, n_tab_bar_rows, n_tab_bar_items.
22018	(fset_tab_bar_items, fset_tab_bar_window)
22019	(fset_current_tab_bar_string, fset_desired_tab_bar_string):
22020	New inlines.
22021	(FRAME_TAB_BAR_LINES, FRAME_TAB_BAR_HEIGHT): New macros.
22022	(FRAME_TOP_MARGIN, FRAME_TOP_MARGIN_HEIGHT):
22023	Use FRAME_TAB_BAR_LINES.
22024
22025	* src/fringe.c (draw_fringe_bitmap_1, update_window_fringes):
22026	Add WINDOW_TAB_LINE_HEIGHT.
22027
22028	* src/gtkutil.c (xg_frame_set_char_size): Add FRAME_TABBAR_WIDTH.
22029	(x_wm_set_size_hint): Add FRAME_TABBAR_WIDTH.
22030
22031	* src/keyboard.c (read_char): Handle Qtab_bar.
22032	(kbd_buffer_get_event): Handle TAB_BAR_EVENT.
22033	(make_lispy_position): Add WINDOW_TAB_LINE_HEIGHT.
22034	Handle TAB_BAR_EVENT.
22035	(tab_bar_items_vector, tab_bar_item_properties, ntab_bar_items):
22036	New internal variables.
22037	(tab_bar_items, process_tab_bar_item, set_prop_tab_bar)
22038	(parse_tab_bar_item, init_tab_bar_items, append_tab_bar_item):
22039	New functions.
22040	(read_char_x_menu_prompt, read_key_sequence): Handle Qtab_bar.
22041	(tab-bar-separator-image-expression): New variable.
22042
22043	* src/keymap.c (syms_of_keymap): Add Qtab_bar and Qtab_line.
22044
22045	* src/menu.c (x_popup_menu_1, Fx_popup_dialog): Handle Qtab_bar.
22046
22047	* src/termhooks.h (enum event_kind): Add TAB_BAR_EVENT.
22048	(GCALIGNED_STRUCT): Add change_tab_bar_height_hook.
22049
22050	* src/w32fns.c (w32_frame_parm_handlers): Add w32_set_tab_bar_lines.
22051
22052	* src/w32term.c (w32_draw_window_cursor): Add WINDOW_TAB_LINE_HEIGHT.
22053
22054	* src/window.c (window_body_height): Add WINDOW_TAB_LINE_HEIGHT.
22055	(Fwindow_tab_line_height): New function.
22056	(coordinates_in_window): Use window_wants_tab_line with
22057	CURRENT_TAB_LINE_HEIGHT.
22058	(window_relative_x_coord): Add ON_TAB_LINE.
22059	(Fcoordinates_in_window_p): Add ON_TAB_LINE.
22060	(window_from_coordinates): Add new arg tab_bar_p.
22061	(Fwindow_line_height): Use window_wants_tab_line with
22062	WINDOW_TAB_LINE_HEIGHT.
22063	(Fwindow_lines_pixel_dimensions): Add WINDOW_TAB_LINE_HEIGHT.
22064	(make_window): Set tab_line_height to -1.
22065	(window_wants_tab_line): New function.
22066	(window_internal_height): Use window_wants_tab_line.
22067	(window_scroll_pixel_based): Add WINDOW_TAB_LINE_HEIGHT.
22068	(Frecenter): Set minimize_tab_bar_window_p to 1.
22069	(GCALIGNED_STRUCT): Add frame_tab_bar_lines and frame_tab_bar_height.
22070	(Fcurrent_window_configuration): Set frame_tab_bar_lines and
22071	frame_tab_bar_height.
22072	(set_window_scroll_bars): Add WINDOW_TAB_LINE_HEIGHT.
22073	(syms_of_window): Add Qtab_line_format and Swindow_tab_line_height.
22074
22075	* src/window.h (GCALIGNED_STRUCT): Add tab_line_height.
22076	(WINDOW_TAB_BAR_P, WINDOW_TAB_LINE_HEIGHT, WINDOW_TAB_LINE_LINES):
22077	New macros.
22078	(WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y, WINDOW_TAB_LINE_HEIGHT):
22079	Add WINDOW_TAB_BAR_P.
22080
22081	* src/xdisp.c (window_box_height): Add window_wants_tab_line with
22082	MATRIX_TAB_LINE_ROW and CURRENT_TAB_LINE_HEIGHT.
22083	(pos_visible_p): Use window_wants_tab_line.
22084	Add WINDOW_TAB_LINE_HEIGHT.
22085	(get_glyph_string_clip_rects): Add WINDOW_TAB_LINE_HEIGHT.
22086	(get_phys_cursor_geometry): Add WINDOW_TAB_LINE_HEIGHT.
22087	(remember_mouse_glyph): Use MATRIX_TAB_LINE_ROW for part
22088	ON_TAB_LINE.
22089	(init_iterator): Use MATRIX_TAB_LINE_ROW for TAB_LINE_FACE_ID.
22090	Add WINDOW_TAB_LINE_HEIGHT.  Add window_wants_tab_line.
22091	(Fwindow_text_pixel_size): Add WINDOW_TAB_LINE_HEIGHT.
22092	(prepare_menu_bars): Call update_tab_bar.
22093	(update_tab_bar, build_desired_tab_bar_string)
22094	(display_tab_bar_line, tab_bar_height, Ftab_bar_height)
22095	(redisplay_tab_bar, tab_bar_item_info, get_tab_bar_item)
22096	(handle_tab_bar_click, note_tab_bar_highlight): New functions.
22097	(compute_window_start_on_continuation_line): Use window_wants_tab_line.
22098	(try_cursor_movement): Use window_wants_tab_line with
22099	CURRENT_TAB_LINE_HEIGHT.
22100	(redisplay_window): Use window_wants_tab_line with
22101	CURRENT_TAB_LINE_HEIGHT.
22102	(try_window_reusing_current_matrix): Use window_wants_tab_line
22103	with WINDOW_TAB_LINE_HEIGHT.
22104	(Fdump_tab_bar_row): New function.
22105	(compute_line_metrics): Add WINDOW_TAB_LINE_HEIGHT.
22106	(display_line): Use window_wants_tab_line.
22107	(display_mode_line): Set tab_line_p to true if face_id is
22108	TAB_LINE_FACE_ID.
22109	(Fformat_mode_line): Handle Qtab_line and Qtab_bar.
22110	(gui_clear_end_of_line): Add WINDOW_TAB_LINE_HEIGHT.
22111	(erase_phys_cursor): Use WINDOW_TAB_LINE_HEIGHT.
22112	(show_mouse_face): Use tab_bar_window.
22113	(note_mode_line_or_margin_highlight): Use MATRIX_TAB_LINE_ROW for
22114	area ON_TAB_LINE.
22115	(note_mouse_highlight): Call note_tab_bar_highlight,
22116	(expose_frame): Handle tab_bar_window.
22117	(syms_of_xdisp): Add Sdump_tab_bar_row and Stab_bar_height.
22118	(auto-resize-tab-bars, auto-raise-tab-bar-buttons)
22119	(tab-bar-border, tab-bar-button-margin, tab-bar-button-relief)
22120	(tab-bar-max-label-size): New variables.
22121
22122	* src/xfaces.c (lookup_basic_face): Add TAB_LINE_FACE_ID and
22123	TAB_BAR_FACE_ID.
22124	(syms_of_xfaces): Define Qtab_bar and Qtab_line.
22125
22126	* src/xfns.c (x_set_tab_bar_lines, x_change_tab_bar_height):
22127	New functions.
22128	(xic_set_statusarea): Add FRAME_TABBAR_TOP_HEIGHT.
22129	(frame_geometry): Add FRAME_TAB_BAR_HEIGHT and Qtab_bar_size.
22130
22131	* src/xterm.c (x_draw_image_relief): Use tab_bar_button_relief.
22132	(x_draw_image_relief): Use TAB_BAR_FACE_ID.
22133	(handle_one_xevent): Handle tab_bar_window.
22134	(x_set_window_size_1): Add FRAME_TABBAR_WIDTH.
22135	(x_create_terminal): Set change_tab_bar_height_hook.
22136
22137	* src/xterm.h (struct x_output): Add tabbar_top_height,
22138	tabbar_bottom_height, tabbar_left_width, tabbar_right_width
22139	tabbar_widget, tabbar_in_hbox, tabbar_is_packed.
22140	(FRAME_TABBAR_TOP_HEIGHT): Add FRAME_TABBAR_TOP_HEIGHT,
22141	FRAME_TABBAR_BOTTOM_HEIGHT, FRAME_TABBAR_HEIGHT,
22142	FRAME_TABBAR_LEFT_WIDTH, FRAME_TABBAR_RIGHT_WIDTH,
22143	FRAME_TABBAR_WIDTH.
22144
221452019-08-31  Paul Eggert  <eggert@cs.ucla.edu>
22146
22147	Check instead of relying on NOTREACHED
22148
22149	NOTREACHED was designed for traditional lint decades ago,
22150	and _Noreturn now normally subsumes its function.
22151	In the one case in Emacs where NORETURN might help and _Noreturn does
22152	not, check for NOTREACHED instead of assuming it.
22153	* lib-src/etags.c (main):
22154	* src/xterm.c (x_connection_closed):
22155	Remove NOTREACHED after a call to a _Noreturn function, as NOTREACHED
22156	is no longer needed there.  Also, one of the NOTREACHEDs was
22157	misplaced, which defeated traditional lint checking anyway.
22158	* lib-src/pop.c (pop_getline): Redo so as to not need NOTREACHED.
22159	* src/emacs.c (main): Use eassume (false) rather than NOTREACHED,
22160	so that running with ENABLE_CHECKING catches any internal error
22161	causing the toplevel Frecursive_edit to return.
22162
221632019-08-31  Glenn Morris  <rgm@gnu.org>
22164
22165	* test/lisp/net/tramp-tests.el (tramp-test21-file-links): More cleanup.
22166
221672019-08-31  Alan Mackenzie  <acm@muc.de>
22168
22169	Clarify the use of left/right-margin-width in determining current margin width
22170
22171	* doc/lispref/display.texi (Display-Margins):  Clarify that
22172	left/right-margin-width can not be used to determine the current margin width,
22173	and that window-margins must be used instead.
22174
221752019-08-31  Andreas Schwab  <schwab@linux-m68k.org>
22176
22177	Fix compilation with CHECK_STRUCTS
22178
22179	* src/pdumper.c (dump_hash_table): Update hash of Lisp_Hash_Table.
22180
221812019-08-30  Eli Zaretskii  <eliz@gnu.org>
22182
22183	Avoid signaling errors from ls-lisp--insert-directory on macOS
22184
22185	* lisp/ls-lisp.el (ls-lisp-sanitize): Don't assume the
22186	directory entries for ".." and "." will either both be present
22187	or both absent.  (Bug#37236)
22188
221892019-08-30  Mattias Engdegård  <mattiase@acm.org>
22190
22191	* src/floatfns.c: Check against __FINITE_MATH_ONLY__ (bug#37140)
22192
221932019-08-30  Michael Albinus  <michael.albinus@gmx.de>
22194
22195	Extend tramp--test-check-files  (Bug#37228)
22196
22197	* test/lisp/net/tramp-tests.el (tramp--test-check-files): Test also
22198	`directory-files-and-attributes'.  (Bug#37228)
22199
222002019-08-30  Koichi Arakawa  <arakawa@pp.iij4u.or.jp>  (tiny change)
22201
22202	Fix Tramp's directory-files-and-attributes-with-stat  (Bug#37228)
22203
22204	* lisp/net/tramp-sh.el
22205	(tramp-do-directory-files-and-attributes-with-stat): Handle file
22206	names with spaces.  (Bug#37228)
22207
222082019-08-30  Paul Eggert  <eggert@cs.ucla.edu>
22209
22210	emacsclient: adjust to new config file location
22211
22212	* lib-src/emacsclient.c (open_config): New arg XDG, to respect
22213	XDG_CONFIG_HOME, consistently with Emacs proper.  Caller changed.
22214	Use XDG convention if available, falling back on the old names
22215	if not.
22216
222172019-08-30  Paul Eggert  <eggert@cs.ucla.edu>
22218
22219	Prefer ~/.config/emacs to ~/.emacs.d if neither exists
22220
22221	That way, when Emacs starts in a fresh home directory,
22222	it prefers the new (XDG) convention rather than the old one.
22223	* lisp/files.el (locate-user-emacs-file): Make the parent
22224	directories of user-emacs-directory if needed.  This is useful
22225	if user-emacs-directory is "~/.config/emacs" and "~/.config"
22226	does not yet exist.
22227	* lisp/startup.el (command-line):
22228	* lisp/subr.el (user-emacs-directory):
22229	Prefer XDG_CONFIG_HOME to ~/.emacs.d if neither exists.
22230
222312019-08-30  Nick Drozd  <nicholasdrozd@gmail.com>
22232
22233	Minor copyedits in ido.texi
22234
22235	* doc/misc/ido.texi (Overview)
22236	(Interactive Substring Matching, Prefix Matching)
22237	(Regexp Matching, Hidden Buffers and Files)
22238	(Changing List Order, Find File At Point, Misc)
22239	(All Matching, Replacement): Fix wording, markup and punctuation.
22240	(Bug#37225)
22241
222422019-08-29  Glenn Morris  <rgm@gnu.org>
22243
22244	Merge from origin/emacs-26
22245
22246	1af1240 (origin/emacs-26, emacs-26) ; Remove empty NEWS sections
22247	96dd019 (tag: emacs-26.3-rc1, tag: emacs-26.3) * etc/HISTORY: Add Ema...
22248
22249	# Conflicts:
22250	#	etc/NEWS
22251
222522019-08-29  Glenn Morris  <rgm@gnu.org>
22253
22254	Merge from origin/emacs-26
22255
22256	70829f8 ; ChangeLog.3 update
22257
22258	# Conflicts:
22259	#	ChangeLog.3
22260
222612019-08-29  Glenn Morris  <rgm@gnu.org>
22262
22263	Merge from origin/emacs-26
22264
22265	290fe4d * ; ChangeLog.3 update
22266	e8f176b * etc/NEWS: Delete temporary markup.
22267
22268	# Conflicts:
22269	#	ChangeLog.3
22270	#	etc/NEWS
22271
222722019-08-29  Stefan Kangas  <stefankangas@gmail.com>
22273
22274	Add new "make help" target
22275
22276	* GNUmakefile: Add new "help" target that shows a brief summary of
22277	common make targets.  (Bug#12411)
22278	* INSTALL
22279	* etc/NEWS: Announce it.
22280
222812019-08-29  Lars Ingebrigtsen  <larsi@gnus.org>
22282
22283	Tweak shr background colour handling
22284
22285	* lisp/net/shr.el (shr-fill-line): Extend the background to the
22286	end of the line when folding lines.
22287
222882019-08-28  Michael Albinus  <michael.albinus@gmx.de>
22289
22290	Clarify meaning of <filename> in test/README
22291
222922019-08-28  Paul Eggert  <eggert@cs.ucla.edu>
22293
22294	Don't worry about pre-1.0.0 alsa-lib include
22295
22296	Problem reported by Ergus in:
22297	https://lists.gnu.org/r/emacs-devel/2019-08/msg00563.html
22298	* configure.ac (ALSA_SUBDIR_INCLUDE): Do not define.
22299	* src/sound.c: Assume ALSA_SUBDIR_INCLUDE.
22300
223012019-08-27  Paul Eggert  <eggert@cs.ucla.edu>
22302
22303	Use XDG conventions more consistently
22304
22305	Fit in better with the XDG conventions.
22306	Something like this was suggested in 2008 (Bug#583)
22307	and the XDG conventions seem to have settled down by now.
22308	* doc/emacs/custom.texi (Init File, Init Syntax, Find Init):
22309	* doc/lispref/files.texi (Standard File Names):
22310	* doc/lispref/os.texi (Init File):
22311	* doc/misc/url.texi (Customization):
22312	* etc/NEWS:
22313	Adjust accordingly.
22314	* lisp/startup.el (startup--load-user-init-file):
22315	If init-file-name is nil, do not load from it; instead
22316	just use the alt-file.
22317	(find-init-path): Remove; no longer used.
22318	(command-line): Don't check twice for XDG.
22319	Look at XDG_CONFIG_HOME instead of assuming it's ~/.config.
22320	Prefer XDG configuration if it exists; the user can disable
22321	this by setting XDG_CONFIG_HOME to some other place.
22322	* lisp/subr.el (user-emacs-directory):
22323	Prefer XDG configuration if it exists.
22324
223252019-08-27  Paul Eggert  <eggert@cs.ucla.edu>
22326
22327	Port recent gnutls fixes to gcc -Wpointer-sign
22328
22329	* src/gnutls.c (Fgnutls_format_certificate):
22330	Fix pointer signedness problem.
22331
223322019-08-27  Juri Linkov  <juri@linkov.net>
22333
22334	Browser-like Info-history button menu (bug#37184)
22335
22336	* doc/misc/info.texi (Help-Int): Using tool-bar to navigate history.
22337
22338	* lisp/info.el (Info-history-menu): New function.
22339	(Info-history-back-menu, Info-history-forward-menu): New commands.
22340	(Info-mode-map): Bind Info-history-back-menu and
22341	Info-history-forward-menu to tool-bar on C-key.
22342
223432019-08-27  Michael Albinus  <michael.albinus@gmx.de>
22344
22345	Deactivate part of tramp--test-check-files on macOS (Bug#36940)
22346
22347	* test/lisp/net/tramp-tests.el (tramp--test-check-files): Do not
22348	search for environment variables on macOS.  (Bug#36940)
22349
223502019-08-27  Eli Zaretskii  <eliz@gnu.org>
22351
22352	Fix crashes on MS-Windows when using GnuTLS connections
22353
22354	* src/gnutls.c (init_gnutls_functions) [WINDOWSNT]: Define and
22355	load gnutls_free by an explicit call to GetProcAddress.
22356	(gnutls_free) [WINDOWSNT]: Define as a macro that dereferences
22357	a function pointer.  (Bug#31946)
22358	(Fgnutls_format_certificate): Use make_string_from_bytes
22359	instead of going through an intermediate malloc'ed buffer.
22360
223612019-08-27  Alex Branham  <alex.branham@gmail.com>
22362
22363	Fix filename completion in shell mode buffers
22364
22365	* lisp/shell.el (shell-dynamic-complete-functions): Move
22366	pcomplete-completions-at-point down the list so that filename
22367	completion has a chance to complete before pcompletion.
22368
22369	Fixes bug#34330
22370
223712019-08-27  Michael Albinus  <michael.albinus@gmx.de>
22372
22373	* test/Makefile.in (test_template): Declare target FOO.log.
22374
223752019-08-27  Lars Ingebrigtsen  <larsi@gnus.org>
22376
22377	Fix completion in `read-library-name'
22378
22379	* lisp/emacs-lisp/find-func.el (read-library-name): Only list
22380	.el/.el.gz files when completing (bug#36945).
22381
223822019-08-26  Mauro Aranda  <maurooaranda@gmail.com>
22383
22384	Make link widgets obey mouse-1-click-follows-link
22385
22386	* lisp/wid-edit.el (widget-link-keymap): New variable, a keymap to use
22387	inside a link widget.
22388	('link widget): Restore the :follow-link property and add
22389	widget-link-keymap as the :keymap property (bug#15682).
22390
223912019-08-26  Mauro Aranda  <maurooaranda@gmail.com>
22392
22393	Adapt recentf.el to the change in the Widget Library
22394
22395	* lisp/recentf.el (recentf-open-files-item): Stop overriding
22396	:follow-link property of the link widgets, since now it should
22397	work as expected (bug#15682).
22398
223992019-08-26  Mauro Aranda  <maurooaranda@gmail.com>
22400
22401	Create push-button widgets instead of links in epa *Keys* buffer
22402
22403	* lisp/epa.el (epa--select-keys): Make OK and Cancel into buttons
22404	(bug#15682).
22405
224062019-08-26  Paul Eggert  <eggert@cs.ucla.edu>
22407
22408	Fix Tramp rounding of file sizes and inode numbers
22409
22410	* lisp/net/tramp-sh.el (tramp-perl-file-attributes)
22411	(tramp-perl-directory-files-and-attributes)
22412	(tramp-do-file-attributes-with-stat)
22413	(tramp-do-directory-files-and-attributes-with-stat):
22414	Format file sizes and inode numbers without trailing ".0",
22415	to avoid rounding errors when absolute values exceed 2**53
22416	(Bug#36940#94).  This fixes the problem for Emacs 27 and later,
22417	and doesn't hurt in earlier Emacs.
22418
224192019-08-26  Stefan Kangas  <stefankangas@gmail.com>
22420
22421	Prefer display-line-numbers over linum in docs and one defcustom
22422
22423	* doc/misc/efaq.texi: Replace linum with display-line-numbers.
22424	* lisp/progmodes/prog-mode.el (prog-mode-hook): Replace linum-mode
22425	with display-line-numbers-mode in :options.  (Bug#37120)
22426
224272019-08-26  Juri Linkov  <juri@linkov.net>
22428
22429	* src/keyboard.c (parse_tool_bar_item): Use CAPTION when HELP is unavailable
22430
22431	while adding equivalent key binding to the tooltip. (Bug#36156)
22432
224332019-08-26  Eli Zaretskii  <eliz@gnu.org>
22434
22435	Fix crashes in networking with GnuTLS on MS-Windows
22436
22437	* src/gnutls.c (init_gnutls_functions) [WINDOWSNT]: Define and
22438	load gnutls_free.
22439	(Fgnutls_format_certificate): Use gnutls_free instead of
22440	xfree.  This prevents crashes on MS-Windows, since the memory
22441	being released was allocated inside GnuTLS.  (Bug#31946)
22442
224432019-08-25  Lars Ingebrigtsen  <larsi@gnus.org>
22444
22445	Allow finding gpg2 binaries when gpg2 has an "unknown" version string
22446
22447	* lisp/epg-config.el (epg-find-configuration): Allow finding a
22448	usable configuration even if the version string looks like "gpg
22449	(GnuPG) 2.2.15-unknown" (bug#35629).
22450
224512019-08-25  Teemu Likonen  <tlikonen@iki.fi>
22452
22453	Only use --sender for gpg when gpg supports it
22454
22455	* lisp/epg-config.el (epg-required-version-p): New function (bug#37025).
22456
22457	* lisp/gnus/mml-sec.el (mml-secure-epg-sign):
22458	* lisp/epg.el (epg-start-sign):
22459	(epg-start-encrypt): Use it to only use --sender when the gpg
22460	binary supports it.
22461
224622019-08-25  Lars Ingebrigtsen  <larsi@gnus.org>
22463
22464	Fix ede-proj-project class
22465
22466	* lisp/cedet/ede/proj.el (ede-proj-project): Make class inherit
22467	from eieio-named to get object-name slot (bug#37181).
22468
224692019-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22470
22471	Fix bug with non-paletted transparent PNGs
22472
22473	Adapted from a fix by YAMAMOTO Mitsuharu (Bug#37153#77).
22474	* src/image.c (png_load_body): Fix bug with non-paletted
22475	transparent images.
22476
224772019-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22478
22479	Fix misdisplay of PNG paletted images
22480
22481	Problem reported by Roland Winkler (Bug#37153).
22482	Derived from a patch suggested by YAMAMOTO Mitsuharu (Bug#37153#62).
22483	* src/image.c (png_get_valid) [WINDOWSNT]:
22484	Do not dynamically link this function.
22485	(png_get_tRNS) [WINDOWSNT && PNG_tRNS_SUPPORTED]:
22486	Dynamically link this function instead.
22487	(png_load_body): Do not assume that every paletted image supplies
22488	only transparency data.  Fix typo in use of transparent_p.
22489
224902019-08-25  Michael Albinus  <michael.albinus@gmx.de>
22491
22492	Fix a further part of Bug#36940
22493
22494	* lisp/net/tramp-sh.el (tramp-perl-file-attributes)
22495	(tramp-perl-directory-files-and-attributes)
22496	(tramp-do-file-attributes-with-stat)
22497	(tramp-do-directory-files-and-attributes-with-stat): Return size
22498	and inode as floating number.  (Bug#36940).
22499
225002019-08-25  Alan Mackenzie  <acm@muc.de>
22501
22502	Introduce new value t for compilation-context-lines to eliminate scrolling
22503
22504	In particular, to prevent scrolling in a window lacking a left fringe.
22505	Instead, a visible arrow "=>" is inserted before column zero.  This fixes
22506	bug #36832.
22507
22508	* lisp/progmodes/compile.el (compilation-context-lines): Add the new value t.
22509	(compilation-set-window): Amend to handle compilation-context-lines being t.
22510	(overlay-arrow-overlay): New variable holding an overlay with before-string
22511	property "=>".
22512	(compilation-set-overlay-arrow): New function which manipulates
22513	overlay-arrow-overlay.
22514	(compilation-goto-locus, compilation-find-file): In addition to calling
22515	compilation-set-window, also call compilation-set-overlay-arrow.
22516
22517	* doc/emacs/building.texi (Compilation Mode): Document the new value t which
22518	compilation-context-lines can take.
22519
22520	* etc/NEWS: Add an entry for this change.
22521
225222019-08-25  Alex Ott  <alexott@gmail.com>
22523
22524	Fix minor problems in TUTORIAL.ru
22525
22526	This fixes wording and avoids visiting the tutorial in
22527	Ruby mode.
22528
225292019-08-25  Eli Zaretskii  <eliz@gnu.org>
22530
22531	Fix a recent change in coding.c
22532
22533	This partially reverts the changes in "extern function cleanup".
22534	* src/coding.c (encode_string_utf_8, decode_string_utf_8): Now
22535	extern again.  They should NOT be static, as they are intended
22536	to be used by the likes of json.c, where we need
22537	highly-optimized code for processing UTF-8 strings.  E.g.,
22538	decode_string_utf_8 beats make_string_from_utf8 by a factor of
22539	2 to 5 in a large number of scenarios.
22540
225412019-08-24  Lars Ingebrigtsen  <larsi@gnus.org>
22542
22543	Use ' instead of ` in NEWS
22544
225452019-08-24  Lars Ingebrigtsen  <larsi@gnus.org>
22546
22547	Use `autoconf-mode' for Autoconf .m4 files
22548
22549	* lisp/files.el (auto-mode-alist): Use `autoconf-mode' (instead of
22550	`m4-mode') for acinclude.m4/aclocal.m4/acsite.m4 files (bug#37133).
22551
225522019-08-24  Alex Branham  <alex.branham@gmail.com>
22553
22554	The `gnus*-1' functions shouldn't be interactive
22555
22556	* lisp/gnus/gnus-start.el (gnus-no-server-1): This function
22557	shouldn't be interactive (bug#37022).
22558	(gnus-1): Ditto.
22559
225602019-08-24  Lars Ingebrigtsen  <larsi@gnus.org>
22561
22562	Disallow just hitting RET in gnus-mime-replace-part
22563
22564	* lisp/gnus/gnus-art.el (gnus-mime-replace-part): Don't replace
22565	the part if the file to replace it with doesn't exist (bug#36864).
22566
225672019-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22568
22569	Clarify Fx_parse_geometry initialization
22570
22571	* src/frame.c (Fx_parse_geometry): Clarify why local init
22572	isn’t needed.
22573
225742019-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22575
22576	Tweak time arithmetic performance
22577
22578	* src/timefns.c (time_arith): Prefer mpz_divexact to mpz_tdiv_q
22579	when either will do.
22580
225812019-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22582
22583	Speed up % and mod with fixnum denom
22584
22585	* src/data.c (integer_remainder): New function.  When the
22586	numerator is a bignum and the denominator is small, this function
22587	uses mpz_tdiv_ui, which should be faster than mpz_tdiv_r.
22588	(Frem, Fmod): Use it.
22589
225902019-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22591
22592	Tweak integer mod performance
22593
22594	* src/data.c (integer_mod): Use mpz_tdiv_r not mpz_mod, as that’s
22595	more similar to the fixnum case, is a bit more efficient, and
22596	otherwise the later ‘sgn_r < 0’ code is useless anyway.
22597
225982019-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22599
22600	Make (mod 1.0 0) consistent with (/ 1.0 0)
22601
22602	* src/data.c (Fmod): Do not signal an error for (mod 1.0 0), for
22603	the same reason (/ 1.0 0) does not signal an error.
22604	* test/src/data-tests.el (data-tests-mod-0): New test.
22605
226062019-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22607
22608	extern function cleanup
22609
22610	Most of these functions can be static.  A few are unused.
22611	* src/coding.c (encode_string_utf_8, decode_string_utf_8):
22612	Define only if ENABLE_UTF_8_CONVERTER_TEST, as they're
22613	not needed otherwise.
22614	* src/coding.c (encode_string_utf_8, decode_string_utf_8):
22615	* src/data.c (integer_mod):
22616	* src/fns.c (base64_encode_region_1, base64_encode_string_1):
22617	* src/ftfont.c (ftfont_get_fc_charset):
22618	Now static.
22619	* src/sysdep.c (verrprintf): Remove; unused.
22620
226212019-08-24  Noam Postavsky  <npostavs@gmail.com>
22622
22623	Fix non-deterministic process test
22624
22625	* test/src/process-tests.el (set-process-filter-t): Don't assume
22626	subprocess output will come in a single chunk, keep waiting for more
22627	data until next "prompt" is read from subprocess.
22628
226292019-08-24  Eli Zaretskii  <eliz@gnu.org>
22630
22631	Revert "Recompute user-emacs-directory-relative defcustoms one more time"
22632
22633	This reverts commit bb5cd7c4caf415e40836edbbc4e62b0dd411d73f.
22634	See bug#37173.
22635
226362019-08-24  Robert Pluim  <rpluim@gmail.com>
22637
22638	Fix DNS tests
22639
22640	* test/src/process-tests.el: (lookup-family-specification,
22641	lookup-unicode-domains, unibyte-domain-name, lookup-google,
22642	non-existent-lookup-failure): Skip on Hydra, which doesn't have DNS.
22643	Fix buggy test condition.  (Bug#37165)
22644
226452019-08-24  Michael Albinus  <michael.albinus@gmx.de>
22646
22647	Fix some problems of Bug#36940
22648
22649	* test/lisp/net/tramp-tests.el (tramp-test22-file-times): Do not
22650	compare time value lists by `equal'.  (Bug#36940).
22651	(tramp-test30-make-process): Adapt "kill" message to match on macOS.
22652
226532019-08-23  Paul Eggert  <eggert@cs.ucla.edu>
22654
22655	Tweak gnutls-peer-status reporting
22656
22657	* src/gnutls.c (Fgnutls_peer_status): Report :compression and
22658	:encrypt-then-mac only if the underlying GnuTLS library has
22659	the corresponding features.  This give the Elisp caller a bit
22660	more information about the peer status.
22661	* lisp/net/nsm.el (nsm-protocol-check--compression):
22662	Don’t worry about compression in newer GnuTLS versions
22663	that do not support compression.
22664
226652019-08-23  Lars Ingebrigtsen  <larsi@gnus.org>
22666
22667	Mention new usage of `invalid-read-syntax' in the manual
22668
22669	* doc/lispref/errors.texi (Standard Errors): Document "trailing
22670	garbage" use of `invalid-read-syntax' (bug#24649).
22671
226722019-08-23  Paul Eggert  <eggert@cs.ucla.edu>
22673
22674	Clarify compiler-pacifier in frame.c
22675
22676	* src/frame.c (Fx_parse_geometry): Pacify the compiler in a
22677	different way, so that the human reader can more easily see
22678	that the initializations are unnecessary.
22679
226802019-08-23  Eli Zaretskii  <eliz@gnu.org>
22681
22682	Fix compilation --without--x
22683
22684	* src/xdisp.c (extend_face_to_end_of_line): Fix a recent
22685	change that moved the initialization of default_face.
22686	Reported by Glenn Morris <rgm@gnu.org>.
22687
226882019-08-23  Eli Zaretskii  <eliz@gnu.org>
22689
22690	Avoid a compilation warning in w32.c
22691
22692	* src/w32.c (logon_network_drive): Avoid compilation warning
22693	about strncpy arguments.
22694
226952019-08-23  Eli Zaretskii  <eliz@gnu.org>
22696
22697	Avoid compilation warning in frame.c
22698
22699	* src/frame.c (Fx_parse_geometry): Avoid compilation warning
22700	about x and y being used without initializing them.
22701
227022019-08-23  Noam Postavsky  <npostavs@gmail.com>
22703
22704	Print macro modified macro keys as characters not integers
22705
22706	* lisp/macros.el (macros--insert-vector-macro): Pass all elements to
22707	'prin1-char', not just those that satisfy characterp (because characters
22708	which have modifier bits set wouldn't qualify otherwise).
22709	'prin1-char' will return nil if it can't handle the argument (e.g.,
22710	for symbols representing function keys).
22711
227122019-08-23  Robert Pluim  <rpluim@gmail.com>
22713
22714	Fix compilation of process.c
22715
22716	* src/process.c (network_lookup_address_info_1): [!HAVE_GAI_STRERROR]:
22717	Use make_fixnum instead of make_number.  (Bug#37158).
22718
227192019-08-23  Michael Heerdegen  <michael_heerdegen@web.de>
22720
22721	Hi-lock lines up to right margin (Bug#15934)
22722
22723	* lisp/hi-lock.el (hi-lock-line-face-buffer): Change used regexp so
22724	that a line terminating newline character is included in the match.
22725
227262019-08-23  Lars Ingebrigtsen  <larsi@gnus.org>
22727
22728	Rename renamed nsm.el variables and functions back
22729
22730	* doc/emacs/misc.texi (Network Security): Start working on
22731	updating the NSM bits, but it's unclear how much of the new stuff
22732	to document.
22733
22734	* lisp/net/nsm.el: Rename all nsm-tls-check-* functions to
22735	nsm-protocol-check--* to bring them back into line with the
22736	documentation.
22737	(network-security-protocol-checks): Renamed back again from
22738	`nsm-tls-checks', as this variable is documented and can't just go
22739	away.
22740
227412019-08-23  Lars Ingebrigtsen  <larsi@gnus.org>
22742
22743	Move all NSM tests away from the `low' level
22744
22745	* lisp/net/nsm.el (network-security-level, nsm-tls-checks): Make
22746	`low' a "check nothing" setting again, and move all the `low'
22747	checks back to `medium'.  This makes the test suite work again.
22748
227492019-08-23  Lars Ingebrigtsen  <larsi@gnus.org>
22750
22751	Tweak previous tar-mode time stamp code
22752
22753	* lisp/tar-mode.el (tar-header-block-summarize): Tweak previous
22754	commit to output the time stamp in the exact same way that GNU tar
22755	does.
22756
227572019-08-23  Paul Eggert  <eggert@cs.ucla.edu>
22758
22759	Get the Gnutls code compiling on Fedora 30
22760
22761	The recent changes caused the build to fail on Fedora 30 when built
22762	with --enable-gcc-warnings, among other things with diagnostics that
22763	gnutls_compression_get and gnutls_compression_get_name are deprecated
22764	(this started with GnuTLS 3.6).  Fix this by refusing to call these
22765	obsolescent and now-dummy functions in GnuTLS 3.6 and later.  However,
22766	this is just a temporary workaround to get the build working; a real
22767	fix is needed, as network-stream-tests fail.
22768	* src/gnutls.c (HAVE_GNUTLS_COMPRESSION_GET): New macro.
22769	(gnutls_compression_get, gnutls_compression_get_name):
22770	Define only if HAVE_GNUTLS_COMPRESSION_GET.
22771	(init_gnutls_functions): Load the two functions only if
22772	HAVE_GNUTLS_COMPRESSION_GET.
22773	(emacs_gnutls_certificate_export_pem): Use alloca instead of xmalloc.
22774	(Fgnutls_peer_status): Just return "NULL" if the functions
22775	are deprecated.
22776	(Fgnutls_format_certificate): Fix pointer signedness glitches.
22777	* src/process.c: Fix spacing.
22778
227792019-08-23  Lars Ingebrigtsen  <larsi@gnus.org>
22780
22781	Put error output from M-! at the end of the error buffer
22782
22783	* lisp/simple.el (shell-command-on-region): Put the error output
22784	at the end of the buffer instead of wherever point is (bug#7513).
22785	This avoids interleaving error output.
22786
227872019-08-23  Robert Pluim  <rpluim@gmail.com>
22788
22789	Move default face lookup
22790
22791	* src/xdisp.c (extend_face_to_end_of_line): Move default face
22792	lookup lower.
22793
227942019-08-23  Robert Pluim  <rpluim@gmail.com>
22795
22796	Correct description of network-lookup-address-info
22797
22798	* doc/lispref/processes.texi (Misc Network): Remove erroneous text
22799	  about port numbers
22800
228012019-08-23  Lars Ingebrigtsen  <larsi@gnus.org>
22802
22803	Remove debugging from previous shr.el patch
22804
228052019-08-23  Eli Zaretskii  <eliz@gnu.org>
22806
22807	Fix recent changes in gnutls.c
22808
22809	* src/gnutls.c: Fix typos that broke the MS-Windows build.
22810	(Fgnutls_peer_status_warning_describe): Fix incomplete error
22811	message string.
22812
228132019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22814
22815	Avoid an infloop in shr when filling text with :align-to properties
22816
22817	* lisp/net/shr.el (shr-fill-line): Only join together URL buttons
22818	if there are any URL buttons.
22819
228202019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22821
22822	Fix Gnus display of timestamps that's less than a second old
22823
22824	* lisp/gnus/gnus-art.el (article-lapsed-string): The elapsed
22825	seconds may be a fractional second.  In that case, just say "now".
22826
228272019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22828
22829	Really save games scores to the games scores directory
22830
22831	* lisp/play/gamegrid.el
22832	(gamegrid-add-score-with-update-game-score): Save games scores to
22833	`gamegrid-user-score-file-directory' by default (bug#36971).
22834
228352019-08-22  Damien Cassou  <damien@cassou.me>
22836
22837	Add imenu support to xref
22838
22839	* lisp/progmodes/xref.el (xref--imenu-prev-index-position)
22840	(xref--imenu-extract-index-name): Add functions to get imenu support.
22841	(xref--xref-buffer-mode): Set imenu variables to the new functions.
22842	* etc/NEWS: Add corresponding entry (bug#36974).
22843
228442019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22845
22846	Give a better error message when reading invalid "\unicode" escapes.
22847
22848	* src/lread.c (read_escape): Give a clearer error message on
22849	Unicode escape sequences (bug#36988).
22850
228512019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22852
22853	Clarify doc string of cl-pushnew
22854
22855	* lisp/emacs-lisp/cl-lib.el (cl-pushnew): Clarify doc string
22856	(bug#37016).
22857
228582019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22859
22860	Fix interaction between url-handler-mode and browse-url
22861
22862	* lisp/net/browse-url.el (browse-url): Don't expand any URLs (like
22863	"man:") that have a scheme when using `url-handler-mode' (bug#37056).
22864
228652019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22866
22867	Use ISO8601 time formats in tar-mode
22868
22869	* lisp/tar-mode.el (tar-clip-time-string): Make obsolete (bug#37130).
22870	(tar-header-block-summarize): Use ISO8601 time instead of
22871	home-brew format.
22872
228732019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22874
22875	Make dired recognize .lz files
22876
22877	* lisp/dired-aux.el (dired-compress-file-suffixes): Recognize .lz
22878	(lzip) compressed files (bug#37136).
22879
228802019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22881
22882	Fix too-long lines in nsm.el
22883
22884	* lisp/net/nsm.el: Fix some too-long lines and some terminology in
22885	the doc strings/comments.
22886
228872019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22888
22889	Mention new NSM warnings
22890
228912019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22892
22893	Tweak the warning display to be less like a TLS decoding page
22894
22895	* lisp/net/nsm.el (nsm-parse-subject, nsm-certificate-part):
22896	Restore functions for parsing subjects.
22897	(nsm-format-certificate): Use them to display more user-friendly
22898	data.  Also change the display to have fewer lines again so that
22899	the data of interest isn't pushed off the screen.
22900
229012019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22902
22903	Enable sorting paragraphs when the final paragraph has no newline
22904
22905	* lisp/sort.el (sort-paragraphs): Ensure that when sorting
22906	paragraphs, the final paragraph ends with a newline (bug#21785).
22907
229082019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22909
22910	Signal an error on `M-x shell-mode'
22911
22912	* lisp/shell.el (shell-mode): This mode can't usefully be called
22913	interactively (and is somewhat destructive, as it disables
22914	`undo'), and it's usually confused with `shell-script-mode'
22915	(bug#19812).  So signal an error if it's used interactively.
22916
229172019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22918
22919	Make ibuffer-mark-by-file-name-regexp work on the displayed file name
22920
22921	* lisp/ibuf-ext.el (ibuffer-mark-by-file-name-regexp): Perform the
22922	matching on the abbreviated (i.e., displayed) file name, and not
22923	the complete name (bug#18859).  This seems like the more expected
22924	action.
22925
229262019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22927
22928	Have `M-x battery' list all batteries under GNU/Linux
22929
22930	* lisp/battery.el (battery-upower-device): Remove (bug#25559).
22931	(battery--find-linux-sysfs-batteries): New function.
22932	(battery-status-function, battery-linux-sysfs): Use it to list all
22933	batteries, no matter what they're called.
22934
229352019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22936
22937	Signal `invalid-read-syntax' for "trailing garbage"
22938
22939	* src/minibuf.c (string_to_object): Signal `invalid-read-syntax'
22940	instead of the generic `error' for "trailing garbage following
22941	expression" (bug#24649).
22942
229432019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22944
22945	Fix skeleton edebug spec
22946
22947	* lisp/skeleton.el (skeleton-edebug-spec): Fix edebug spec
22948	(bug#24779).
22949
229502019-08-22  Lars Ingebrigtsen  <larsi@gnus.org>
22951
22952	Run quit-window-hook from the correct buffer
22953
22954	* lisp/window.el (quit-window): Run the hook from the buffer
22955	specified by the WINDOW parameter.
22956
229572019-08-22  Eli Zaretskii  <eliz@gnu.org>
22958
22959	Recompute user-emacs-directory-relative defcustoms one more time
22960
22961	* lisp/startup.el (command-line): Re-evaluate the
22962	custom-delayed predefined variables one more time after
22963	loading the user's init file.  (Bug#37116)
22964
229652019-08-22  Stefan Kangas  <stefankangas@gmail.com>
22966
22967	Fix minor checkdoc errors in package.el
22968
22969	* lisp/emacs-lisp/package.el (package-all-keywords)
22970	(package-menu--generate, package-archive-priority): Doc fixes.
22971
229722019-08-22  Stefan Kangas  <stefankangas@gmail.com>
22973
22974	Signal user-error on duplicate package refresh
22975
22976	* lisp/emacs-lisp/package.el (package-menu-refresh): Signal a
22977	user-error if there is already a refresh running in the
22978	background.  Doc fix.  (Bug#36707)
22979
229802019-08-22  Stefan Kangas  <stefankangas@gmail.com>
22981
22982	* doc/misc/efaq.texi: Note the inclusion year.  (Bug#37142)
22983
229842019-08-22  Eli Zaretskii  <eliz@gnu.org>
22985
22986	Improve documentation of 'ispell-skip-html'
22987
22988	* lisp/textmodes/ispell.el (ispell-skip-html): Doc fix.
22989	(Bug#37141)
22990
229912019-08-22  Michael Albinus  <michael.albinus@gmx.de>
22992
22993	* doc/misc/tramp.texi: Use @acronym{GVFS}.
22994
229952019-08-22  Paul Eggert  <eggert@cs.ucla.edu>
22996
22997	Fix Qunbound-Qnil confusion in clrhash patch
22998
22999	Problem reported by Stefan Monnier.
23000	* src/fns.c (hash_clear): Fix typo I introduced in my previous
23001	patch here, by setting keys to Qunbound not Qnil.
23002
230032019-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23004
23005	Remove no-longer-needed workaround for GC bug
23006
23007	* src/keymap.c (describe_vector): Remove old workaround for GC bug.
23008	This workaround, introduced in 1993-02-19T05:43:54Z!rms@gnu.org,
23009	has not been needed for some time.  Problem reported by Pip Cet in:
23010	https://lists.gnu.org/r/emacs-devel/2019-08/msg00316.html
23011
230122019-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23013
23014	Don’t debug fset by default
23015
23016	This GC bug seems to have been fixed, so the check is no longer
23017	needed in production code.  From a suggestion by Pip Cet in:
23018	https://lists.gnu.org/r/emacs-devel/2019-08/msg00316.html
23019	* src/alloc.c (SUSPICIOUS_OBJECT_CHECKING) [!ENABLE_CHECKING]:
23020	Do not define.
23021	(find_suspicious_object_in_range, detect_suspicious_free):
23022	Expand to proper dummy expressions if !SUSPICIOUS_OBJECT_CHECKING.
23023	* src/data.c (Ffset): Convert test to an eassert.
23024
230252019-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23026
23027	Fix clrhash bug when hash table needs rehashing
23028
23029	Problem reported by Pip Cet in:
23030	https://lists.gnu.org/r/emacs-devel/2019-08/msg00316.html
23031	* src/fns.c (maybe_resize_hash_table): Prefer ASET to gc_aset
23032	where either will do.  Simplify appending of Qunbound values.
23033	Put index_size calculation closer to where it’s needed.
23034	(hash_clear): If hash_rehash_needed_p (h), don’t clear the
23035	nonexistent hash vector.  Use memclear to speed up clearing.
23036	* src/lisp.h (HASH_TABLE_SIZE): Check that the size is positive,
23037	and tell that to the compiler.
23038
230392019-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23040
23041	* src/buffer.c: Fix comment typo.
23042
230432019-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23044
23045	Don’t hard-loop on cycles in ‘read’ etc.
23046
23047	Problem for ‘read’ reported by Pip Cet in:
23048	https://lists.gnu.org/r/emacs-devel/2019-08/msg00316.html
23049	* src/fns.c (Frequire): Protect against circular current-load-list.
23050	* src/lread.c (Fget_load_suffixes):
23051	Protect against circular load-suffixes or load-file-rep-suffixes.
23052	(Fload): Protect against circular loads-in-progress.
23053	(openp): Protect against circular PATH and SUFFIXES.
23054	(build_load_history): Protect against circular load-history or
23055	current-load-list.
23056	(readevalloop_eager_expand_eval): Protect against circular SUBFORMS.
23057	(read1): Protect against circular data.
23058	* test/src/lread-tests.el (lread-circular-hash): New test.
23059
230602019-08-21  Nicolas Petton  <nicolas@petton.fr>
23061
23062	* etc/HISTORY: Add Emacs 26.3 release release date.
23063
230642019-08-21  Nicolas Petton  <nicolas@petton.fr>
23065
23066	Bump Emacs version to 26.3
23067
23068	* README:
23069	* configure.ac:
23070	* msdos/sed2v2.inp:
23071	* nt/README.W32: Bump Emacs version.
23072
230732019-08-21  Lars Ingebrigtsen  <larsi@gnus.org>
23074
23075	Make hide-ifdef-mode-prefix-key customisable
23076
23077	* lisp/progmodes/hideif.el (hide-ifdef-mode-prefix-key): Make into
23078	a defcustom since it seems like this is something that should be
23079	user-customisable (bug#8922).
23080
230812019-08-21  Lars Ingebrigtsen  <larsi@gnus.org>
23082
23083	Use `quit-window-hook' in Info instead of having its own command
23084
23085	* doc/misc/info.texi (Help-Q): Info now uses `quit-window'.
23086
23087	* lisp/info.el (info-standalone): Adjust doc string.
23088	(Info-exit): Made into obsolete alias.
23089	(Info-mode-map): Bind "q" to `quit-window'.
23090	(Info-mode-menu): Adjust.
23091	(info-tool-bar-map): Ditto.
23092	(Info-mode): Adjust doc string.
23093	(Info-mode): If Info is standalone, kill Emacs on "q".
23094
230952019-08-21  Lars Ingebrigtsen  <larsi@gnus.org>
23096
23097	Adjust quit-window-hook documentation
23098
23099	* doc/lispref/windows.texi (Quitting Windows): Adjust
23100	documentation of quit-window-hook (bug#9867).
23101
231022019-08-21  Lars Ingebrigtsen  <larsi@gnus.org>
23103
23104	Mention quit-window-hook in "Standard Hooks"
23105
23106	* doc/lispref/hooks.texi (Standard Hooks): Mention
23107	quit-window-hook (bug#9867).
23108
231092019-08-21  Lars Ingebrigtsen  <larsi@gnus.org>
23110
23111	Call `quit-window-hook' in the `quit-window' command only
23112
23113	* lisp/window.el (quit-restore-window): Don't run quit-window-hook
23114	here...
23115	(quit-window): ... but here instead.  Callers that call the former
23116	programmatically can decide themselves whether to call the hook.
23117	(quit-window-hook): Fix doc string.
23118
231192019-08-21  Lars Ingebrigtsen  <larsi@gnus.org>
23120
23121	Fix the interactive spec for set-frame-width/height
23122
23123	* src/frame.c (Fset_frame_width):
23124	(Fset_frame_height): Use `prefix-numeric-value' to get the proper
23125	numeric value (bug#9970).
23126
231272019-08-21  Stefan Kangas  <stefankangas@gmail.com>
23128
23129	* lisp/mail/flow-fill.el: Change todo comment to not mention XEmacs.
23130
231312019-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23132
23133	Be more careful about pointers to bignum vals
23134
23135	This uses ‘const’ to be better at catching bugs that
23136	mistakenly attempt to modify a bignum value.
23137	Lisp bignums are supposed to be immutable.
23138	* src/alloc.c (make_pure_bignum):
23139	* src/fns.c (sxhash_bignum):
23140	Accept Lisp_Object instead of struct Lisp_Bignum *, as that’s
23141	simpler now.  Caller changed.
23142	* src/bignum.h (bignum_val, xbignum_val): New inline functions.
23143	Prefer them to &i->value and XBIGNUM (i)->value, since they
23144	apply ‘const’ to the result.
23145	* src/timefns.c (lisp_to_timespec): Use mpz_t const *
23146	to point to a bignum value.
23147
231482019-08-20  Paul Eggert  <eggert@cs.ucla.edu>
23149
23150	Update mini-gmp
23151
23152	* src/mini-gmp.c: Sync from upstream.  This incorporates:
23153	2019-08-13 Silence a couple of warnings
23154
231552019-08-20  Paul Eggert  <eggert@cs.ucla.edu>
23156
23157	Avoid some excess precision in time arithmetic
23158
23159	* doc/misc/emacs-mime.texi (time-date):
23160	Adjust example to match new behavior.
23161	* etc/NEWS: Mention this.
23162	* lisp/calendar/time-date.el (decoded-time-add)
23163	(decoded-time--alter-second):
23164	Don’t lose underestimate precision of seconds component.
23165	* src/bignum.c (mpz): Grow by 1.
23166	* src/timefns.c (trillion_factor): New function.
23167	(timeform_sub_ps_p): Remove.
23168	(time_arith): Avoid unnecessarily-large hz, by reducing the hz
23169	to a value no worse than the worse hz of the two arguments.
23170	The result is always exact unless an error is signaled.
23171	* test/src/timefns-tests.el (timefns-tests--decode-time):
23172	New function.
23173	(format-time-string-with-zone): Test (decode-time LOOK ZONE t)
23174	resolution as well as its numeric value.
23175
231762019-08-20  Noam Postavsky  <npostavs@gmail.com>
23177
23178	Respect global-eldoc-mode in minibuffers (Bug#36886)
23179
23180	* lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode): Accept
23181	a BODY parameter.
23182	* doc/lispref/modes.texi (Defining Minor Modes): Document new
23183	parameter.
23184	* etc/NEWS: Announce it.
23185
23186	* lisp/simple.el (read--expression): Move eldoc-mode setup to...
23187	* lisp/emacs-lisp/eldoc.el (eldoc--eval-expression-setup): ... here,
23188	new function.
23189	(global-eldoc-mode): Add or remove it to
23190	eval-expression-minibuffer-setup-hook when enabling or disabling
23191	global-eldoc-mode.  This enables eldoc in the minibuffer (solving
23192	Bug#27202), only when global-eldoc-mode is enabled.
23193
231942019-08-20  Paul Eggert  <eggert@cs.ucla.edu>
23195
23196	Support larger TIMEs in (time-convert TIME t)
23197
23198	Also, improve the doc to match current behavior.
23199	* doc/lispref/os.texi (Time Conversion): Document that
23200	time-convert signals an error for infinite or NaN args,
23201	and that (time-convert TIME t) is exact otherwise.
23202	Mention float-time as an alternative to time-convert.
23203	(Time Calculations): Document that time-add and time-subtract
23204	are exact and do not decrease HZ below the minimum of their args.
23205	* src/timefns.c (decode_float_time): Don’t signal an error for
23206	floating-point arguments whose base-FLT_RADIX exponent is not less
23207	than DBL_MANT_DIG.  Instead, convert them to (TICKS . 1) values.
23208	Use two (instead of three) integer exponent comparisons in the
23209	typical case.
23210	* test/src/timefns-tests.el (time-arith-tests):
23211	Add more floating-point tests, including some tests
23212	that the old code fails.
23213
232142019-08-20  Stephen Leake  <stephen_leake@stephe-leake.org>
23215
23216	Delete built-in ada-mode; Gnu ELPA is a good replacement
23217
23218	* doc/misc/Makefile.in (INFO_COMMON): Delete ada-mode.
23219
23220	* doc/misc/ada-mode.texi: Delete.
23221
23222	* etc/NEWS: Mention ada-mode deleted.
23223
23224	* lisp/progmodes/ada-mode.el: Delete.
23225
23226	* lisp/progmodes/ada-prj.el: Delete.
23227
23228	* lisp/progmodes/ada-stmt.el: Delete.
23229
23230	* lisp/progmodes/ada-xref.el: Delete.
23231
232322019-08-20  Michael Albinus  <michael.albinus@gmx.de>
23233
23234	Another attempt to fix bug#32645
23235
23236	* test/lisp/autorevert-tests.el ()
23237	(auto-revert-test02-auto-revert-deleted-file):
23238	* test/lisp/filenotify-tests.el (file-notify-test04-autorevert):
23239	Check `file-notify-valid-p', not that the descriptor is nil.
23240
232412019-08-20  Glenn Morris  <rgm@gnu.org>
23242
23243	Merge from origin/emacs-26
23244
23245	615cff4 (origin/emacs-26) Fix process filter documentation (Bug#13400)
23246	beb1d22 Fix query-replace-regexp undo feature
23247
23248	# Conflicts:
23249	#	test/lisp/replace-tests.el
23250
232512019-08-20  Glenn Morris  <rgm@gnu.org>
23252
23253	Merge from origin/emacs-26
23254
23255	0b810eb Fix a typo in char-width-table
23256	3f00db7 Minor update in admin/notes/unicode
23257	bcd0115 Fix lisp indent infloop on unfinished strings (Bug#37045)
23258	5f992d1 Improve commentary in composite.el
23259	3a04be2 ; Improve commentary in xdisp.c
23260	15de1d1 Fix markup in dired-x.texi
23261	bda7fc7 ; Fix typo in a doc string of speedbar.el
23262	6f57ef9 * src/callproc.c (Fcall_process): Doc fix.
23263
23264	# Conflicts:
23265	#	doc/misc/dired-x.texi
23266	#	lisp/international/characters.el
23267	#	src/callproc.c
23268
232692019-08-20  Ulrich Müller  <ulm@gentoo.org>
23270
23271	* configure.ac (HAVE_JPEG): Test for window system. (Bug#36995)
23272
232732019-08-20  Mauro Aranda  <maurooaranda@gmail.com>
23274
23275	Don't display wrong ElDoc information when inside ELisp strings or comments
23276
23277	* lisp/progmodes/elisp-mode.el (elisp--fnsym-in-current-sexp): Since
23278	forward-sexp assumes point is not in a string or comment, avoid
23279	calling it and then checking if point is inside a string, since that
23280	sometimes will fail with awkward results.  (Bug#35567)
23281
232822019-08-19  Lars Ingebrigtsen  <larsi@gnus.org>
23283
23284	Output `auto-coding-alist' in `describe-current-coding-system'
23285
23286	* lisp/international/mule-diag.el
23287	(describe-current-coding-system): Also output the contents of
23288	`auto-coding-alist', which take precedence over
23289	`file-coding-system-alist' (bug#9575).
23290
232912019-08-19  Lars Ingebrigtsen  <larsi@gnus.org>
23292
23293	Add a new hook: `quit-window-hook'
23294
23295	* doc/lispref/windows.texi (Quitting Windows): Mention in.
23296
23297	* lisp/window.el (quit-restore-window): Run the new
23298	`quit-window-hook' before doing anything else (bug#9867).
23299	(quit-window): Note that the hook will be run in the doc string.
23300
23301	* lisp/window.el (quit-window-hook): New variable.
23302
233032019-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23304
23305	Fix org-table 65536-second bug
23306
23307	* lisp/org/org-table.el (org-table-message-once-per-second):
23308	Fix bug when clock difference goes past a 65536-second boundary.
23309	Don’t assume particular format for current-time result.
23310
233112019-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23312
23313	Fix time-add/time-sub validity checking
23314
23315	* src/timefns.c (time_arith): Check the first arg for
23316	validity even if the second arg is not finite.
23317	* test/src/timefns-tests.el (time-arith-tests): Test this.
23318
233192019-08-19  Stefan Monnier  <monnier@iro.umontreal.ca>
23320
23321	* lisp/erc/erc-stamp.el: Fix erc-echo-timestamp (bug#22700)
23322
23323	Use lexical-binding.
23324	(erc-add-timestamp): Store the timestamp in a closure placed in
23325	cursor-sensor-functions rather than stashing it in an ad-hoc
23326	`timestamp` property.
23327	(erc-echo-timestamp): Simplify accordingly.
23328
233292019-08-18  Lars Ingebrigtsen  <larsi@gnus.org>
23330
23331	Allow set-frame-height/set-frame-width to be used interactively
23332
23333	* doc/lispref/frames.texi (Frame Size): Document it.
23334
23335	* src/frame.c (Fset_frame_height):
23336	(Fset_frame_width): Make into commands that use the numeric prefix
23337	to set height/width (bug#9970).
23338
233392019-08-18  Štěpán Němec  <stepnem@gmail.com>
23340
23341	Add an advice-add/interactive spec example
23342
23343	* doc/lispref/functions.texi (Core Advising Primitives): Add an
23344	advice-add example that extends the `interactive' spec (bug#17871).
23345
233462019-08-18  Johan Claesson  <johanclaesson@bredband.net>
23347
23348	Invalidate dir-locals-directory-cache when writing dir-local file
23349
23350	* lisp/files-x.el (modify-dir-local-variable): Remove file from
23351	the cache when writing to ensure that we load the new version
23352	later (bug#13860).
23353
233542019-08-18  Noam Postavsky  <npostavs@gmail.com>
23355
23356	Handle more subprocess chunking in M-x man (Bug#36927)
23357
23358	* lisp/man.el (Man-bgproc-filter): Make sure not to chop man sections
23359	by narrowing.
23360	(Man-highlight-references0): Revert previous fix, as it's no longer
23361	needed.
23362	* test/lisp/man-tests.el (man-tests-filter-strings): New function.
23363	(man-bgproc-filter-buttonize-includes): New test.
23364
233652019-08-18  Paul Eggert  <eggert@cs.ucla.edu>
23366
23367	Improve bignum_integer static checking
23368
23369	* src/bignum.h (bignum_integer): Now returns pointer-to-const,
23370	to catch trivial mistakes where the caller might try to modify
23371	a Lisp bignum.  Lisp bignums are supposed to be immutable.
23372	All callers changed.
23373
233742019-08-18  Eli Zaretskii  <eliz@gnu.org>
23375
23376	Attempt to fix assertion violation in eval.c
23377
23378	* src/eval.c (Fautoload): Fix an assertion violation in
23379	make_fixnum.  Reported by martin rudalics <rudalics@gmx.at>.
23380
233812019-08-17  Lars Ingebrigtsen  <larsi@gnus.org>
23382
23383	Make `browse-url-of-buffer' work from zip files
23384
23385	* lisp/net/browse-url.el (browse-url-of-buffer): Make `C-c C-v'
23386	work in HTML buffers visited from zip files and the like
23387	(bug#10318).
23388
233892019-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23390
23391	Fix org-timer-show-remaining-time > 1 hour
23392
23393	* lisp/org/org-timer.el (org-timer-show-remaining-time):
23394	Don’t assume the remaining time is less than one hour.
23395	Simplify.  The simplification removes the need for a
23396	decode-time, and fixes a typo I introduced recently.
23397
233982019-08-17  Lars Ingebrigtsen  <larsi@gnus.org>
23399
23400	Make `describe-function' say that disabled functions are disabled
23401
23402	* lisp/help-fns.el (help-fns--disabled): New function (bug#10853).
23403	(help-fns-describe-function-functions): Add it to the list of
23404	function help functions.
23405
234062019-08-17  Lars Ingebrigtsen  <larsi@gnus.org>
23407
23408	Make newline-and-indent take a numeric prefix
23409
23410	* lisp/simple.el (newline-and-indent): Take a prefix argument to
23411	say how many times to perform its action (bug#10927).
23412
234132019-08-17  Lars Ingebrigtsen  <larsi@gnus.org>
23414
23415	Issue a message on `C-x o' and there's no other window
23416
23417	* lisp/window.el (other-window): Issue a message when the user
23418	types `C-x o' and there's no other window to select (bug#10999).
23419
234202019-08-17  Lars Ingebrigtsen  <larsi@gnus.org>
23421
23422	Issue a message on `C-x 1' when there's nothing to do
23423
23424	* lisp/window.el (delete-other-windows): Make `C-x 1' issue a
23425	message when there's no other windows to delete (bug#10999).
23426
234272019-08-17  Lars Ingebrigtsen  <larsi@gnus.org>
23428
23429	Doc clarification in two comment-* functions
23430
23431	* lisp/newcomment.el (comment-padright, comment-padleft): Note
23432	that `comment-normalize-vars' must be called first (bug#11944).
23433
234342019-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23435
23436	Add FIXMEs for subsecond support
23437
23438	This adds FIXMEs to areas where Lisp code should support
23439	subsecond information in broken-down timestamps.
23440	It also fixes some unnecessary truncation of timestamps, and
23441	ports the code to a hypothetical future Emacs version where
23442	(decode-time) returns subsecond timestamps by default.
23443	* lisp/calc/calc-forms.el (calc-time, math-iso-dt-to-date)
23444	(calcFunc-now):
23445	* lisp/calendar/icalendar.el (icalendar--add-decoded-times):
23446	* lisp/calendar/iso8601.el (iso8601-parse-interval):
23447	Truncate seconds to an integer, and add a FIXME about
23448	subseconds support.
23449	* lisp/calendar/icalendar.el (icalendar--decode-isodatetime)
23450	(icalendar--decode-isoduration):
23451	Add a FIXME about subseconds support.
23452	* lisp/gnus/gnus-delay.el (gnus-delay-article):
23453	Don’t truncate seconds to an integer, as there’s no need
23454	to do that here.
23455	* lisp/gnus/gnus-util.el (gnus-seconds-today)
23456	(gnus-seconds-month, gnus-seconds-year):
23457	* lisp/gnus/message.el (message-make-expires-date):
23458	* lisp/org/org-timer.el (org-timer-show-remaining-time):
23459	* lisp/vc/ediff-mult.el (ediff-format-date):
23460	Truncate seconds to an integer, as that’s what’s wanted here.
23461	* lisp/midnight.el (midnight-next):
23462	Ceiling seconds to an integer, as that’s what wanted here.
23463
234642019-08-17  Juri Linkov  <juri@linkov.net>
23465
23466	* lisp/frameset.el (frameset-restore): Make sure last-focus frame has focus.
23467
23468	Call select-frame-set-input-focus to restore focus on the frame
23469	that had last-focus-update frame parameter before saving frameset.
23470	(Bug#36894)
23471
234722019-08-17  Lars Ingebrigtsen  <larsi@gnus.org>
23473
23474	Doc clarification for call-interactively
23475
23476	* src/callint.c (Fcall_interactively): Be explicit about what we
23477	mean by "inquire" in the doc string (bug#15653).
23478
234792019-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23480
23481	Port test harness to Solaris 10
23482
23483	* test/Makefile.in (ELFILES): Port to Solaris 10, where
23484	‘find’ does not support ‘-path’.
23485
234862019-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23487
23488	Update from Gnulib
23489
23490	This incorporates:
23491	2019-08-17 intprops: port to Oracle Developer Studio 12.6
23492	2019-08-14 intprops: support uchar, ushort _WRAPV dests
23493	* lib/intprops.h: Copy from Gnulib.
23494
234952019-08-17  Eli Zaretskii  <eliz@gnu.org>
23496
23497	Improve support of the ancient Egyptian script
23498
23499	* lisp/international/fontset.el (script-representative-chars)
23500	(setup-default-fontset): Add Egyptian.  (Bug#15420)
23501
235022019-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23503
23504	Have time-add etc. respect CURRENT_TIME_LIST too
23505
23506	* src/timefns.c (time_arith) [!CURRENT_TIME_LIST]:
23507	Don’t generate a list, since CURRENT_TIME_LIST is false.
23508
235092019-08-16  Eli Zaretskii  <eliz@gnu.org>
23510
23511	Fix a recent documentation change
23512
23513	* doc/emacs/windows.texi (Other Window): Add a cross-reference
23514	to "Rebinding".  (Bug#12431)
23515
235162019-08-16  Paul Eggert  <eggert@cs.ucla.edu>
23517
23518	More-compatible subsecond calendrical timestamps
23519
23520	Instead of appending a subseconds member to the result of
23521	‘decode-time’, this keeps the format unchanged unless you give
23522	a new optional argument to ‘decode-time’.  Also, the augmented
23523	format now puts the subsecond info in the SECONDS element, so
23524	the total number of elements is unchanged; this is more
23525	compatible with code that expects the traditional 9 elements,
23526	such as ‘(pcase decoded-time (`(,SEC ,MIN ,HOUR ,DAY ,MON
23527	,YEAR ,DOW ,DST ,ZONE) ...) ...)’.
23528	* doc/lispref/os.texi, doc/misc/emacs-mime.texi, etc/NEWS:
23529	* lisp/net/soap-client.el (soap-decode-date-time):
23530	* lisp/simple.el (decoded-time):
23531	Document the new behavior.
23532	* lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
23533	* lisp/calendar/iso8601.el (iso8601-parse)
23534	(iso8601-parse-time, iso8601-parse-duration)
23535	(iso8601--decoded-time):
23536	* lisp/calendar/parse-time.el (parse-time-string):
23537	* lisp/calendar/time-date.el (decoded-time-add)
23538	(decoded-time--alter-second):
23539	* lisp/org/org.el (org-parse-time-string):
23540	* lisp/simple.el (decoded-time):
23541	* src/timefns.c (Fdecode_time, Fencode_time):
23542	* test/lisp/calendar/icalendar-tests.el:
23543	(icalendar--decode-isodatetime):
23544	* test/lisp/calendar/iso8601-tests.el (test-iso8601-date-years)
23545	(test-iso8601-date-dates, test-iso8601-date-obsolete)
23546	(test-iso8601-date-weeks, test-iso8601-date-ordinals)
23547	(test-iso8601-time, test-iso8601-combined)
23548	(test-iso8601-duration, test-iso8601-intervals)
23549	(standard-test-dates, standard-test-time-of-day-fractions)
23550	(standard-test-time-of-day-beginning-of-day)
23551	(standard-test-time-of-day-utc)
23552	(standard-test-time-of-day-zone)
23553	(standard-test-date-and-time-of-day, standard-test-interval):
23554	* test/lisp/calendar/parse-time-tests.el (parse-time-tests):
23555	* test/src/timefns-tests.el (format-time-string-with-zone)
23556	(encode-time-dst-numeric-zone):
23557	Revert recent changes that added a SUBSECS member to
23558	calendrical timestamps, since that component is no longer
23559	present (the info, if any, is now in the SECONDS member).
23560	* lisp/calendar/time-date.el (decoded-time-add)
23561	(decoded-time--alter-second):
23562	Support fractional seconds in the new form.  Simplify.
23563	* src/timefns.c (Fdecode_time): Support new arg FORM.
23564	(Fencode_time): Support subsecond resolution.
23565	* test/src/timefns-tests.el (format-time-string-with-zone)
23566	(decode-then-encode-time): Test subsecond calendrical timestamps.
23567
235682019-08-16  Paul Eggert  <eggert@cs.ucla.edu>
23569
23570	Broaden format-seconds to Lisp timestamps
23571
23572	* lisp/calendar/time-date.el (format-seconds):
23573	Accept any Lisp timestamp instead of insisting on a number.
23574
235752019-08-16  Paul Eggert  <eggert@cs.ucla.edu>
23576
23577	Subtracting “now” from “now” should yield zero
23578
23579	* src/timefns.c (time_arith): Arrange for (time-subtract nil
23580	nil) to yield 0, to be consistent with (time-equal-p nil nil).
23581	* test/lisp/calendar/time-date-tests.el (test-time-since): New test.
23582
235832019-08-16  Paul Eggert  <eggert@cs.ucla.edu>
23584
23585	Fix time-add rounding bug
23586
23587	Without this fix, time arithmetic yielded results that were not
23588	mathematically accurate, even though the exact results were
23589	representable; for example, (time-add 0 1e-13) yielded a timestamp
23590	equal to 0 instead of to 1e-13.
23591	* lisp/timezone.el (timezone-time-from-absolute):
23592	Let time-add do its thing rather than using floating point
23593	internally, which has rounding errors.  We now have bignums and so
23594	don’t need floating point to avoid overflow issues.
23595	* src/timefns.c (timeform_sub_ps_p): New function.
23596	(time_arith): If either argument is a float, represent the
23597	result exactly instead of discarding sub-ps info.
23598	* test/lisp/timezone-tests.el (timezone-tests-time-from-absolute):
23599	Don’t assume (HI LO US PS) timestamp format.
23600	* test/src/emacs-module-tests.el (mod-test-add-nanosecond/valid):
23601	Don’t assume that time-add discards sub-ns info.
23602	* test/src/timefns-tests.el (time-rounding-tests):
23603	Add regression test to detect time-add rounding bug.
23604
236052019-08-16  Lars Ingebrigtsen  <larsi@gnus.org>
23606
23607	Mention `next-multiframe-window' when talking about `other-window'
23608
23609	* doc/emacs/windows.texi (Other Window): Mention
23610	the `next-multiframe-window' command here (which is otherwise not
23611	documented in the manual) (bug#12431).
23612
236132019-08-16  Lars Ingebrigtsen  <larsi@gnus.org>
23614
23615	Add missing skeleton entries in autotype.texi
23616
23617	* doc/misc/autotype.texi: Add missing entries found in the doc
23618	string to `skeleton-insert' (bug#12563).
23619
236202019-08-16  Alex Branham  <alex.branham@gmail.com>
23621
23622	Make checkdoc check cl-lib function docstrings
23623
23624	* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
23625	Remove calls to delete-region to avoid deleting final " (bug#26328).
23626	* lisp/emacs-lisp/checkdoc.el (checkdoc--next-docstring)
23627	(checkdoc-defun-info): Include cl-defun, cl-defgeneric,
23628	cl-defmethod.
23629	(checkdoc-this-string-valid-engine): Add cl-lib supported
23630	keywords.
23631	(checkdoc-defun-info): Ensure function parameters are a
23632	"flat" list (bug#37034).
23633
236342019-08-16  Alex Branham  <alex.branham@gmail.com>
23635
23636	Avoid deleting closing quotation mark in checkdoc
23637
23638	* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
23639	Remove calls to delete-region to avoid deleting final " (bug#26328).
23640
236412019-08-16  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23642
23643	Revert "package.el: Allow Package-Requires to span multiple lines (Bug#36301)"
23644
23645	This reverts commit 19c1e4c81c7442dea48253e5961b6e54d78b6f0a.
23646
23647	This commit broke some package tests, reverting for now.
23648
236492019-08-16  Lars Ingebrigtsen  <larsi@gnus.org>
23650
23651	Mention that text properties are removed in substitute-command-keys
23652
23653	* src/doc.c (Fsubstitute_command_keys): Restore the bit in the doc
23654	string that mentions that text properties is removed (bug#17052).
23655
236562019-08-15  Lars Ingebrigtsen  <larsi@gnus.org>
23657
23658	Add some examples in "Adding Generalized Variables"
23659
23660	* doc/lispref/variables.texi (Adding Generalized Variables): Add
23661	examples for `gv-define-expander' and `gv-letplace' (bug#13343).
23662
236632019-08-15  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23664
23665	package.el: Allow Package-Requires to span multiple lines (Bug#36301)
23666
23667	* lisp/emacs-lisp/package.el (lm-header-multiline): Declare
23668	function.
23669	(package-buffer-info): Parse Package-Requires with
23670	lm-header-multiline instead of lm-header.
23671	(Bug#36301)
23672
236732019-08-15  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23674
23675	Do not recreate full URL for proxied HTTPS requests (Bug#35969)
23676
23677	* lisp/url/url-http.el (url-http-create-request): Do not recreate
23678	full URL for proxied HTTPS requests.
23679	(url-https-proxy-after-change-function): Do not bind
23680	url-http-proxy to nil before calling url-http-create-request.
23681	(Bug#35969)
23682
236832019-08-15  Andreas Merziger  <andreas.merziger@online.de>
23684
23685	Make diary-european-date-forms elements mutually exclusive
23686
23687	* lisp/calendar/calendar.el (diary-european-date-forms): Make the
23688	elements mutually exclusive (bug#13536).
23689
236902019-08-15  Lars Ingebrigtsen  <larsi@gnus.org>
23691
23692	Fix up previous cl-def* changes in bovine
23693
23694	* lisp/cedet/semantic/bovine/el.el (lambda): cl-defun* doesn't
23695	exist (bug#17005).
23696	(lambda): Add cl-defstruct.
23697	(semantic-up-context): Add cl- forms.
23698
236992019-08-15  Lars Ingebrigtsen  <larsi@gnus.org>
23700
23701	Reimplement the `fill-flowed' function to respect space stuffing
23702
23703	* lisp/mail/flow-fill.el (fill-flowed): Reimplement the function
23704	to respect space-stuffing (bug#17190).
23705
23706	* test/lisp/mail/flow-fill-tests.el
23707	(fill-flow-tests-fill-flowed-stuffed): New test.
23708	(fill-flow-tests-fill-flowed-decode): Rename the test so that it
23709	actually runs.
23710
237112019-08-15  Alex Branham  <alex.branham@gmail.com>
23712
23713	Fix eshell-mode-map initialization
23714
23715	* lisp/eshell/esh-mode.el (eshell-mode-map, eshell-command-map): Set
23716	up normal keymaps and prefix commands rather than re-initializing them
23717	in each eshell buffer
23718
23719	* lisp/eshell/em-cmpl.el (eshell-cmpl-mode-map, eshell-cmpl-mode)
23720	(eshell-cmpl-initialize):
23721	* lisp/eshell/em-hist.el (eshell-hist-mode-map, eshell-hist-mode)
23722	(eshell-hist-initialize):
23723	* lisp/eshell/em-pred.el (eshell-pred-mode-map, eshell-pred-mode)
23724	(eshell-pred-initialize):
23725	* lisp/eshell/em-prompt.el (eshell-prompt-mode-map, eshell-prompt-mode)
23726	(eshell-prompt-initialize):
23727	* lisp/eshell/em-rebind.el (eshell-rebind-mode-map, eshell-rebind-mode)
23728	(eshell-rebind-initialize):
23729	* lisp/eshell/esh-arg.el (eshell-arg-mode-map, eshell-arg-mode)
23730	(eshell-arg-initialize):
23731	* lisp/eshell/esh-proc.el (eshell-proc-mode-map, eshell-proc-mode)
23732	(eshell-proc-initialize):
23733	* lisp/eshell/esh-var.el (eshell-var-mode-map, eshell-var-mode)
23734	(eshell-var-initialize): Create a new minor mode with a keymap and
23735	call it in the module initialization function.
23736
23737	bug#33808
23738	bug#22792
23739
237402019-08-15  Lars Ingebrigtsen  <larsi@gnus.org>
23741
23742	Rename variables and functions with "auto-load" in their names
23743
23744	* doc/emacs/building.texi (Lisp Libraries): Adjust documentation.
23745
23746	* lisp/help-fns.el (help--symbol-completion-table): Adjust usage.
23747
23748	* lisp/help-fns.el (help-enable-completion-autoload): Change name
23749	from auto-load and declare an obsolete alias (bug#13418).
23750
23751	* lisp/help.el (help-enable-autoload): Ditto.
23752
23753	* lisp/progmodes/vhdl-mode.el: Ditto.
23754	(vhdl-create-mode-menu, vhdl-mode): Adjust usage.
23755	(vhdl-autoload-project): Rename from auto-load and declare an
23756	obsolete alias.
23757
237582019-08-15  Lars Ingebrigtsen  <larsi@gnus.org>
23759
23760	Remove mentions of XEmacs from the Gnus manual and faq
23761
23762	* doc/misc/gnus-faq.texi:
23763	* doc/misc/gnus.texi: Remove references to XEmacs throughout.
23764
237652019-08-15  Lars Ingebrigtsen  <larsi@gnus.org>
23766
23767	Mention what effect nil has as the prompt for read-event/char/etc
23768
23769	* doc/lispref/commands.texi (Reading One Event): Mention that ""
23770	has the same effect as nil as a prompt.
23771
23772	* src/lread.c (Fread_event, Fread_char_exclusive, Fread_char):
23773	Mention what happens when PROMPT is nil/"" in the doc string
23774	(bug#15012).
23775
237762019-08-15  Lars Ingebrigtsen  <larsi@gnus.org>
23777
23778	etc/NEWS: Note that `list-processes' includes port numbers now.
23779
237802019-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23781
23782	Fix typeof portability issue with bitfields
23783
23784	Problem reported by Glenn Morris in:
23785	https://lists.gnu.org/r/emacs-devel/2019-08/msg00300.html
23786	* src/lisp.h (lisp_h_make_fixnum): Use typeof (+(n)) instead
23787	of typeof (n), so that it works with compilers that do
23788	not allow typeof to be applied to a bitfield.
23789
237902019-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23791
23792	Fix rounding errors with float timestamps
23793
23794	When converting from float to (TICKS . HZ) form, do the
23795	conversion exactly.  When converting from (TICKS . HZ) form to
23796	float, round to even precisely.  This way, successfully
23797	converting a float to (TICKS . HZ) and back yields a value
23798	numerically equal to the original.
23799	* src/timefns.c (flt_radix_power_size): New constant.
23800	(flt_radix_power): New static var.
23801	(decode_float_time): Convert the exact numeric value rather
23802	than guessing TIMESPEC_HZ resolution.
23803	(s_ns_to_double): Remove; no longer needed.
23804	(frac_to_double): New function.
23805	(decode_ticks_hz): It is now the caller’s responsibility to
23806	pass a valid TICKS and HZ.  All callers changed.
23807	Use frac_to_double to round (TICKS . HZ) precisely.
23808	(decode_time_components): When decoding nil, use
23809	decode_ticks_hz since it rounds precisely.
23810	(syms_of_timefns): Initialize flt_radix_power.
23811	* test/src/timefns-tests.el (float-time-precision): New test.
23812
238132019-08-15  Michael Albinus  <michael.albinus@gmx.de>
23814
23815	Give auto-revert-test02-auto-revert-deleted-file a chance on hydra
23816
23817	* test/lisp/autorevert-tests.el
23818	(auto-revert-test02-auto-revert-deleted-file): Don't skip on hydra.
23819
238202019-08-15  Michael Albinus  <michael.albinus@gmx.de>
23821
23822	Improve Tramp manual
23823
23824	* doc/misc/tramp.texi (GVFS based methods): Explain using `ftp'
23825	and `smb' methods.
23826
238272019-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23828
23829	Debug out-of-range make_fixnum args
23830
23831	With --enable-checking, make_fixnum (N) now checks that N is
23832	in fixnum range.  Suggested by Pip Cet in:
23833	https://lists.gnu.org/r/emacs-devel/2019-07/msg00548.html
23834	A new function make_ufixnum (N) is for the rare cases where N
23835	is intended to be unsigned and is in the range 0..INTMASK.
23836	* configure.ac (AC_C_TYPEOF): Add.
23837	(HAVE_STATEMENT_EXPRESSIONS): Resurrect this macro.
23838	* src/fns.c (Frandom, hashfn_eq, hashfn_equal, hashfn_user_defined):
23839	* src/profiler.c (hashfn_profiler):
23840	Use make_ufixnum rather than make_fixum, since the argument is
23841	an unsigned integer in the range 0..INTMASK rather than a signed
23842	integer in the range MOST_NEGATIVE_FIXNUM..MOST_POSITIVE_FIXNUM.
23843	Typically this is for hashes.
23844	* src/lisp.h (lisp_h_make_fixnum_wrap) [USE_LSB_TAG]:
23845	Rename from lisp_h_make_fixnum.
23846	(lisp_h_make_fixnum): Redefine in terms of lisp_h_make_fixnum_wrap.
23847	Check for fixnum overflow on compilers like GCC that
23848	have statement expressions and typeof.
23849	(FIXNUM_OVERFLOW_P): Move up.
23850	(make_fixnum): Check for fixnum overflow.
23851	(make_ufixnum): New function, which checks that the arg
23852	fits into 0..INTMASK range.
23853
238542019-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23855
23856	Fix some fixnum overflow problems in ccl.c
23857
23858	* src/ccl.c (ccl_driver, Fccl_execute, Fccl_execute_on_string):
23859	Don’t assume CCL registers fit into fixnums.
23860
238612019-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23862
23863	Port mod-test-nanoseconds to 32-bit Emacs
23864
23865	* test/src/emacs-module-tests.el (mod-test-nanoseconds):
23866	Don’t assume -1000000000 is a fixnum.
23867
238682019-08-15  Lars Ingebrigtsen  <larsi@gnus.org>
23869
23870	Include port numbers in `M-x list-processes'
23871
23872	* lisp/simple.el (list-processes--refresh): Include the port
23873	numbers in the network connection list (bug#13604).
23874
238752019-08-15  Lars Ingebrigtsen  <larsi@gnus.org>
23876
23877	Add some cl- concept index entries
23878
23879	* doc/misc/cl.texi (Argument Lists): Add a couple of concept index
23880	entried (bug#13606).
23881
238822019-08-14  Lars Ingebrigtsen  <larsi@gnus.org>
23883
23884	Clarify the doc string of complete-with-action
23885
23886	* lisp/minibuffer.el (complete-with-action): Doc string
23887	clarification (bug#13993).
23888
238892019-08-14  Lars Ingebrigtsen  <larsi@gnus.org>
23890
23891	Clean up Gnus manual reference to XEmacs variables
23892
23893	* doc/misc/gnus.texi (XVarious): Remove section about XEmacs
23894	variables that have been removed.
23895
238962019-08-14  Lars Ingebrigtsen  <larsi@gnus.org>
23897
23898	Minor Scroll Bars clarification
23899
23900	* doc/emacs/frames.texi (Scroll Bars): Clarify what we mean by
23901	"customize" here (bug#14321).
23902
239032019-08-14  Lars Ingebrigtsen  <larsi@gnus.org>
23904
23905	Arrange custom-face-attributes closer to how heavy they are
23906
23907	* lisp/cus-face.el (custom-face-attributes): Arrange the weights
23908	more in order of how heavy they are (bug#15526).
23909
239102019-08-14  Lars Ingebrigtsen  <larsi@gnus.org>
23911
23912	Use gnus-summary-button-forward in gnus-summary-mode-map
23913
23914	* lisp/gnus/gnus-sum.el (gnus-summary-mode-map): Use
23915	`gnus-summary-button-forward' instead of the obsolete
23916	`gnus-summary-widget-forward'.
23917
239182019-08-14  Paul Eggert  <eggert@cs.ucla.edu>
23919
23920	Remove INT_ADD_WRAPV bug workarounds
23921
23922	* src/alloc.c (free_cons):
23923	* src/casefiddle.c (do_casify_multibyte_string):
23924	* src/editfns.c (styled_format):
23925	* src/image.c (png_load_body):
23926	Remove recent workarounds for INT_ADD_WRAPV bugs since
23927	the bugs have been fixed (Bug#37006).
23928
239292019-08-14  Lars Ingebrigtsen  <larsi@gnus.org>
23930
23931	Add C-b/f/p/n keystrokes in `M-x snake'
23932
23933	* lisp/play/snake.el (snake-mode-map): Add the C-b/f/p/n in
23934	addition to the cursor keys (bug#16720).
23935
239362019-08-14  Paul Eggert  <eggert@cs.ucla.edu>
23937
23938	Update from Gnulib
23939
23940	This incorporates:
23941	2019-08-14 intprops: pacify picky GCC
23942	2019-08-14 intprops: support unsigned *_WRAPV results
23943	2019-08-12 verify: improve diagnostic quality in recent GCC
23944	* lib/intprops.h, lib/verify.h:	Copy from Gnulib.
23945
239462019-08-14  Lars Ingebrigtsen  <larsi@gnus.org>
23947
23948	Add cl-def* forms to bovine/el.el
23949
23950	* lisp/cedet/semantic/bovine/el.el (lambda): Add the cl-def*
23951	variations to allow semantic to find the definitions (bug#17005).
23952
239532019-08-14  Lars Ingebrigtsen  <larsi@gnus.org>
23954
23955	Don't alter function name face height in manoj-dark theme
23956
23957	* etc/themes/manoj-dark-theme.el (manoj-dark): Don't alter the
23958	height of function name faces, because this makes many tabulated
23959	modes not longer line up (bug#17042).
23960
239612019-08-14  Lars Ingebrigtsen  <larsi@gnus.org>
23962
23963	Respect the BUFFER parameter in `fill-flowed'
23964
23965	* lisp/mail/flow-fill.el (fill-flowed): `current-buffer' is always
23966	non-nil, so respect the BUFFER parameter.  Also add a doc string.
23967
239682019-08-14  Lars Ingebrigtsen  <larsi@gnus.org>
23969
23970	Output the maintainer and author(s) in the package description buffer
23971
23972	* lisp/emacs-lisp/package.el (describe-package-1): Output
23973	maintainer and author(s) (bug#17573).
23974	(package--print-email-button): New function.
23975
239762019-08-14  Eli Zaretskii  <eliz@gnu.org>
23977
23978	Fix fetching URLs with stuff that looks like HTTP headers
23979
23980	* lisp/url/url-http.el (url-http-parse-headers): Narrow the
23981	buffer to the headers at the beginning to make sure
23982	url-handle-content-transfer-encoding uses the correct
23983	headers.  (Bug#37023)
23984
239852019-08-13  Paul Eggert  <eggert@cs.ucla.edu>
23986
23987	Don’t increase consing_until_gc when out of memory
23988
23989	* src/alloc.c (memory_full): Don’t increase consing_until_gc.
23990	Suggested by Eli Zaretskii (Bug#37006#46).
23991
239922019-08-13  Paul Eggert  <eggert@cs.ucla.edu>
23993
23994	Let consing_until_gc exceed EMACS_INT_MAX
23995
23996	This builds on the previous patch.
23997	* src/alloc.c (consing_until_gc): Now of type intmax_t,
23998	since gc-cons-threshold can be up to INTMAX_MAX.  All uses changed.
23999	* src/lisp.h (CONSING_CT_MAX, consing_ct): Remove.
24000
240012019-08-13  Paul Eggert  <eggert@cs.ucla.edu>
24002
24003	Let consing_until_gc exceed INTPTR_MAX
24004
24005	Suggested by Eli Zaretskii (Bug#37006#46).
24006	* src/alloc.c (consing_until_gc): Now of type consing_ct.
24007	All uses changed, so gc-cons-threshold no longer saturates
24008	against OBJECT_CT_MAX.
24009	(object_ct): Move typedef here from lisp.h.
24010	* src/lisp.h (consing_ct, CONSING_CT_MAX): New type and macro.
24011	(OBJECT_CT_MAX): Remove.  Replace all uses with CONSING_CT_MAX.
24012
240132019-08-13  Paul Eggert  <eggert@cs.ucla.edu>
24014
24015	Fix GC threshold typo
24016
24017	Problem reported by Eli Zaretskii (Bug#37006#25).
24018	* src/alloc.c (garbage_collect_1): Fix typo in threshold calc.
24019	Go back to dividing by 10 since the numerator’s a constant now.
24020	Problem introduced in 2019-07-21T02:40:03Z!eggert@cs.ucla.edu.
24021
240222019-08-13  Eli Zaretskii  <eliz@gnu.org>
24023
24024	Improve documentation of 'diff-font-lock-prettify'
24025
24026	* lisp/vc/diff-mode.el (diff-font-lock-prettify): Doc fix.
24027
24028	* etc/NEWS: Minor copyedits.
24029
240302019-08-13  Eli Zaretskii  <eliz@gnu.org>
24031
24032	Fix initialization of user-defined fringe bitmaps in daemon mode
24033
24034	* src/fringe.c (gui_init_fringe): Rename from w32_init_fringe
24035	or x_cr_init_fringe, and make unconditionally compiled; all
24036	callers changed.  Do nothing if the frame's
24037	redisplay_interface doesn't implement the define_fringe_bitmap
24038	method.  Set up any user-defined fringe bitmaps in addition to
24039	the standard bitmaps.
24040	Suggested by Liam Quinlan <liamkquinlan@gmail.com> in
24041	https://lists.gnu.org/archive/html/emacs-devel/2019-08/msg00259.html.
24042
24043	(w32_reset_fringes) [HAVE_NTGUI]: Do nothing if the frame's
24044	redisplay_interface doesn't implement the
24045	destroy_fringe_bitmap method.
24046
24047	* src/w32fns.c (Fx_create_frame): Call gui_init_fringe when
24048	the first GUI frame is created for this session.
24049	* src/dispextern.h (w32_init_fringe): Rename to
24050	gui_init_fringe and make unconditional.
24051	(x_cr_init_fringe): Remove prototype.
24052
240532019-08-12  Óscar Fuentes  <ofv@wanadoo.es>
24054
24055	* lisp/password-cache.el: adapt test to change in password-in-cache-p
24056
240572019-08-12  Michael Albinus  <michael.albinus@gmx.de>
24058
24059	Quote file names properly in Tramp
24060
24061	* lisp/net/tramp.el (tramp-handle-file-truename)
24062	(tramp-handle-insert-directory):
24063	* lisp/net/tramp-adb.el (tramp-adb-handle-file-truename):
24064	* lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
24065	(tramp-sh-handle-insert-directory):
24066	* lisp/net/tramp-smb.el (tramp-smb-handle-insert-directory):
24067	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-file-truename):
24068	Use `tramp-compat-directory-name-p'.
24069
24070	* lisp/net/tramp.el (tramp-drop-volume-letter)
24071	(tramp-handle-file-truename):
24072	* lisp/net/tramp-adb.el (tramp-adb-handle-file-truename):
24073	* lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
24074	(tramp-sh-handle-file-truename):
24075	* lisp/net/tramp-smb.el (tramp-smb-handle-make-symbolic-link):
24076	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-file-truename):
24077	(tramp-sudoedit-handle-make-symbolic-link): Quote properly.
24078
24079	* lisp/net/tramp-compat.el (tramp-compat-file-name-quote)
24080	(tramp-compat-file-name-unquote): Add optional argument TOP.
24081
240822019-08-12  Michael Albinus  <michael.albinus@gmx.de>
24083
24084	Handle symbolic links properly in Tramp gfvs methods
24085
24086	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-readable-p):
24087	Handle symbolic links.
24088
240892019-08-12  Michael Albinus  <michael.albinus@gmx.de>
24090
24091	Fix caching problem in Tramp smb method
24092
24093	* lisp/net/tramp-cache.el (tramp-flush-file-upper-properties):
24094	Add "file-entries",
24095
240962019-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24097
24098	Prefer signed when testing for signed overflow
24099
24100	* src/alloc.c (free_cons):
24101	* src/casefiddle.c (do_casify_multibyte_string):
24102	* src/editfns.c (styled_format):
24103	* src/image.c (png_load_body):
24104	Use signed arguments to INT_MULTIPLY_WRAPV etc.  This doesn’t fix
24105	any bugs, but GCC emits better code when all args are signed.
24106	Also, this removes the need for an if in free_cons (Bug#37006).
24107
241082019-08-11  Óscar Fuentes  <ofv@wanadoo.es>
24109
24110	password-cache: differentiate null values from non-existent entries
24111
24112	* lisp/password-cache.el (password-in-cache-p, password-cache-add):
24113	  properly detect non-existent entry.  (Bug#36834)
24114
241152019-08-11  Eli Zaretskii  <eliz@gnu.org>
24116
24117	Fix garbage collection
24118
24119	* src/alloc.c (free_cons): Avoid false positives in
24120	INT_ADD_WRAPV.  (Bug#37006)
24121
241222019-08-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
24123
24124	Prompt for new sieve script names in sieve management
24125
24126	* lisp/net/sieve.el (sieve-edit-script): Otherwise the user ends up
24127	with a script named '<new script>.sieve'.
24128
241292019-08-11  Michael Albinus  <michael.albinus@gmx.de>
24130
24131	Retrieve start time from remote machine, use compat attrib functions
24132
24133	* lisp/net/tramp-compat.el (tramp-compat-file-attribute-access-time)
24134	(tramp-compat-file-attribute-status-change-time): New defaliases.
24135
24136	* test/lisp/net/tramp-tests.el (tramp--test-start-time): New defvar.
24137	(tramp--test-file-attributes-equal-p)
24138	(tramp-test19-directory-files-and-attributes): Use it.
24139	(tramp-test18-file-attributes)
24140	(tramp--test-file-attributes-equal-p, tramp-test20-file-modes)
24141	(tramp-test22-file-times, tramp--test-check-files):
24142	Use `tramp-compat-file-attribute-*' functions.
24143
241442019-08-10  Glenn Morris  <rgm@gnu.org>
24145
24146	Set custom :version for recently modified undo options
24147
24148	* lisp/cus-start.el (undo-limit, undo-strong-limit, undo-outer-limit):
24149	Bump :version.
24150
241512019-08-10  Stefan Kangas  <stefankangas@gmail.com>
24152
24153	* doc/emacs/calendar.texi (Time Intervals): Doc fix.
24154
241552019-08-10  Stefan Kangas  <stefankangas@gmail.com>
24156
24157	Double undo limits
24158
24159	* src/undo.c (syms_of_undo) <undo_limit, undo_strong_limit>
24160	<Vundo_outer_limit>: Double undo limits.  (Bug#31104)
24161
241622019-08-10  Glenn Morris  <rgm@gnu.org>
24163
24164	Merge from origin/emacs-26
24165
24166	0860ac0 (origin/emacs-26) Improve documentation of features that use ...
24167	fae1ff6 Fix docstrings in pong
24168	82a2894 Improve doc strings of 'append-to-buffer' and friends
24169	cb0403d Fix octave-mode ElDoc support
24170	691790b Avoid Groff hanging on MS-Windows when invoked by "M-x man"
24171
241722019-08-10  Glenn Morris  <rgm@gnu.org>
24173
24174	Merge from origin/emacs-26
24175
24176	e7818cb Fix nnmail-expiry-wait docs and custom :types
24177	8b7c776 * lisp/simple.el (kill-do-not-save-duplicates): Doc fix.  (Bu...
24178
241792019-08-10  Michael Albinus  <michael.albinus@gmx.de>
24180
24181	Use a time offset when comparing times of local and remote machines
24182
24183	* test/lisp/net/tramp-tests.el (tramp--test-file-attributes-equal-p):
24184	Use a time offset in order to compensate different times on local
24185	and remote machines.
24186
241872019-08-10  Mauro Aranda  <maurooaranda@gmail.com>
24188
24189	Fix pong collision detection
24190
24191	* lisp/play/pong.el (pong-update-game): If the ball hit the bat where
24192	bats are positioned, draw again the bat cell in the old ball
24193	position.  (Bug#20579).
24194	Also, avoid changing the direction of the ball right after hitting the
24195	bats, and improve the collision detection against the borders.
24196
241972019-08-10  Alex Gramiak  <agrambot@gmail.com>
24198
24199	Set up defined_color_hook for the initial frame
24200
24201	* src/terminal.c (init_initial_terminal): Set up the
24202	defined_color_hook.  This avoids crashes when running
24203	in batch mode with code that manipulates colors.
24204	(Bug#36019)
24205
242062019-08-10  Philippe Schnoebelen  <schnoebelen.ph@gmail.com>  (tiny change)
24207
24208	Support bool-vectors in cl-extra.el
24209
24210	* lisp/emacs-lisp/cl-extra.el (cl-coerce): Support bool-vector.
24211
242122019-08-09  Juri Linkov  <juri@linkov.net>
24213
24214	* lisp/frameset.el (frameset--minibufferless-last-p): Add comments (bug#36894)
24215
242162019-08-09  Eli Zaretskii  <eliz@gnu.org>
24217
24218	Fix highlighting in man pages displayed by "M-x man"
24219
24220	* lisp/man.el (Man-highlight-references0): Handle the case
24221	when a section is divided between 2 or more chunks of text
24222	received from the 'man' program.  (Bug#36927)
24223
242242019-08-09  Eli Zaretskii  <eliz@gnu.org>
24225
24226	Fix doc strings modified in recent changes
24227
24228	* src/xfns.c (Fx_change_window_property)
24229	(Fx_delete_window_property, Fx_window_property)
24230	(Fx_window_property_attributes): Doc fixes.
24231
242322019-08-08  Noah Friedman  <friedman@splode.com>
24233
24234	Provide better target window consistency across x window property functions.
24235
24236	Use the argument name WINDOW-ID instead of SOURCE for same.
24237	Revise docstrings to clarify semantics of FRAME and WINDOW-ID.
24238
24239	(Fx_change_window_property): Use `target_window' instead of `w'.
24240	This is consistent with other related functions.
24241	Finalize its value before blocking input.
24242
24243	(Fx_window_property):
24244	(Fx_window_property_attributes): Use `window_id' instead of `source'.
24245
24246	(Fx_delete_window_property): New optional arg window_id.
24247
242482019-08-08  Noah Friedman  <friedman@splode.com>
24249
24250	(Fx_change_window_property): Rename SOURCE arg to WINDOW-ID
24251
242522019-08-08  Noah Friedman  <friedman@splode.com>
24253
24254	(Fx_change_window_property): Add optional arg SOURCE.
24255
24256	This provides symmetry with Fx_window_property, so that the window
24257	need not be an actual emacs frame.  This is useful for modifying
24258	properties of parent windows (specified with --parent-id to emacs) or
24259	generally assisting the window manager.
24260
242612019-08-08  Stefan Kangas  <stefankangas@gmail.com>
24262
24263	Use "python -m pdb" when "pdb" is missing in M-x pdb
24264
24265	* lisp/progmodes/gud.el (gud-pdb-command-name): Use "python -m pdb"
24266	when "pdb" is missing.  (Bug#21521)
24267
242682019-08-08  Noam Postavsky  <npostavs@gmail.com>
24269
24270	Say how to enable event designators in the eshell manual
24271
24272	* doc/misc/eshell.texi (History): Mention that event designators need
24273	to be enabled.
24274	* etc/NEWS: Mark corresponding entry as documented in manual.
24275
242762019-08-08  Michael Albinus  <michael.albinus@gmx.de>
24277
24278	Work on Tramp backward compatibility
24279
24280	* lisp/net/tramp-adb.el (tramp-adb-handle-copy-file)
24281	(tramp-adb-handle-rename-file):
24282	* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
24283	* lisp/net/tramp-rclone.el (tramp-rclone-do-copy-or-rename-file):
24284	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file):
24285	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-file)
24286	(tramp-smb-handle-rename-file):
24287	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-do-copy-or-rename-file):
24288	Use `tramp-compat-directory-name-p'.
24289
242902019-08-08  Michael Albinus  <michael.albinus@gmx.de>
24291
24292	Improve time arithmetic in tramp--test-file-attributes-equal-p
24293
24294	* test/lisp/net/tramp-tests.el (tramp--test-file-attributes-equal-p):
24295	Improve time arithmetic.
24296
242972019-08-08  Michael Albinus  <michael.albinus@gmx.de>
24298
24299	Suppress false alarm in Tramp
24300
24301	* lisp/net/tramp.el (tramp-dissect-file-name): Suppress false alarm.
24302
243032019-08-08  Stefan Kangas  <stefankangas@gmail.com>
24304
24305	Suppress interactive-only warnings in undo-tests.el (Bug#36565)
24306
24307	* test/src/undo-tests.el (undo-test-region-deletion)
24308	(undo-test-region-example, undo-test-marker-adjustment-nominal)
24309	(undo-test-region-t-marker, undo-test-marker-adjustment-moved)
24310	(undo-test-region-mark-adjustment): Suppress interactive-only warnings
24311	by using funcall-interactively.
24312
243132019-08-08  Mattias Engdegård  <mattiase@acm.org>
24314
24315	Suppress relint errors in fortran.el
24316
24317	* lisp/progmodes/fortran.el (fortran-indent-to-column):
24318	Suppress relint complaints about duplicated character in skip-set;
24319	it's intentional and harmless.
24320
243212019-08-08  Mattias Engdegård  <mattiase@acm.org>
24322
24323	Fix XTerm OSC 52 selection retrieval (bug#36879)
24324
24325	When asking XTerm for the selection via OSC 52, use ST as string
24326	terminator in the request to get ST as terminator in the reply,
24327	because BEL is messy to receive in many ways.
24328
24329	* lisp/term/xterm.el (gui-backend-get-selection):
24330	Use ST as string terminator in request and reply.
24331	Use a time-out when reading the reply.
24332
243332019-08-07  Glenn Morris  <rgm@gnu.org>
24334
24335	Tests need to be moved when source files are
24336
24337	* test/lisp/obsolete/cl-tests.el: Move from test/lisp/emacs-lisp.
24338
243392019-08-07  Michael Albinus  <michael.albinus@gmx.de>
24340
24341	Continue to work on Bug#36940
24342
24343	* test/lisp/net/tramp-tests.el (tramp--test-file-attributes-equal-p):
24344	Make the check more precise.  (Bug#36940)
24345
243462019-08-07  Robert Pluim  <rpluim@gmail.com>
24347
24348	Change nsm-should-check to look at local subnets
24349
24350	* lisp/net/nsm.el (nsm-network-same-subnet): New function.  Checks
24351	if an ip address is in the same subnet as another one.
24352	(nsm-should-check): Use nsm-network-same-subnet to see if we're
24353	connecting to a local subnet machine.  Remove checks for RFC1918 addresses.
24354
24355	* test/lisp/net/nsm-tests.el: New file.  Test nsm-should-check functionality.
24356
243572019-08-07  Robert Pluim  <rpluim@gmail.com>
24358
24359	fixup! Implement hostname->ip lookup function
24360
243612019-08-06  Paul Eggert  <eggert@cs.ucla.edu>
24362
24363	Re-port dump_bitset_clear to -fsanitize=undefined
24364
24365	* src/pdumper.c (dump_bitset_clear): Skip the memset if the
24366	size is zero, because in that case the destination might be NULL.
24367	This fixes a bug introduced in 2019-07-26T06:17:52Zeggert@cs.ucla.edu.
24368	Add a comment to make the bug less likely to reoccur.
24369
243702019-08-06  Stefan Monnier  <monnier@iro.umontreal.ca>
24371
24372	* lisp/gnus/message.el (message-sendmail-f-is-evil): Revert recent change
24373
24374	(bug#36937)
24375
243762019-08-06  Michael Albinus  <michael.albinus@gmx.de>
24377
24378	Fix Bug#36940
24379
24380	* test/lisp/net/tramp-tests.el (tramp--test-file-attributes-equal-p):
24381	Make the check more precise.  (Bug#36940)
24382	(tramp-test19-directory-files-and-attributes): Move some checks to
24383	`tramp--test-file-attributes-equal-p'.
24384
243852019-08-06  Alan Mackenzie  <acm@muc.de>
24386
24387	C++ Mode: Prevent End of statement being found after {} in "count << vec{} <<"
24388
24389	* lisp/progmodes/cc-engine.el (c-beginning-of-statement-1): Check for
24390	operators which cannot start a statement, which may follow a closing brace.
24391	Don't recognise an end of statement in such a case.
24392
24393	* lisp/progmodes/cc-langs.el (c-operator-re, c-bin-tern-operators)
24394	(c-unary-operators, c-non-after-{}-operators, c-non-after-{}-ops-re): New lang
24395	consts and vars.
24396
243972019-08-06  Eli Zaretskii  <eliz@gnu.org>
24398
24399	Fix minor compilation problems on MS-Windows
24400
24401	* src/w32fns.c (Fdefault_printer_name): Fix size of local
24402	buffer.
24403	* src/image.c [WINDOWSNT]: Test __MINGW_MAJOR_VERSION as well
24404	to shut up compiler warnings.
24405
244062019-08-06  Mattias Engdegård  <mattiase@acm.org>
24407
24408	Fix various Calc date conversions (bug#36822)
24409
24410	* lisp/calc/calc-forms.el (math-absolute-from-gregorian-dt):
24411	Rewrite in a way that I understand, and that actually seems to work.
24412	(math-absolute-from-julian-dt): Use Julian, not Gregorian, leap year
24413	rules for counting days within a year.
24414	(math-julian-date-beginning, math-julian-date-beginning-int):
24415	Change constants to be consistent with their doc strings and the code:
24416	use Rata Die epoch at Dec 31, 1 BC Gregorian proleptic, not Julian.
24417	* doc/misc/calc.texi (Date Forms): Correct difference between Julian
24418	Day and Rata Die.
24419	* test/lisp/calc/calc-tests.el (calc-test-calendar): New test.
24420
244212019-08-06  Mattias Engdegård  <mattiase@acm.org>
24422
24423	Add conditional operator xor to subr.el
24424
24425	Suggested by Oleh Krehel and implemented by Basil Contovounesios in
24426	the following thread:
24427	https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00547.html
24428
24429	* lisp/array.el (xor): Move unused function from here...
24430	* lisp/subr.el: ...to here, and improve.
24431	* lisp/gnus/spam.el (spam-xor):
24432	* lisp/play/5x5.el (5x5-xor):
24433	* lisp/proced.el (proced-xor):
24434	* lisp/progmodes/idlwave.el (idlwave-xor):
24435	* lisp/vc/diff-mode.el (diff-xor): Define as obsolete aliases of,
24436	and replace all uses with, xor.
24437	* lisp/jsonrpc.el: Remove unused dependency on array.el.
24438	* lisp/org/org.el (org-xor): Move from here...
24439	* lisp/org/org-compat.el (org-xor): ...to here, as a compatibility
24440	shim for xor.
24441	* lisp/progmodes/idlw-shell.el (idlwave-shell-enable-all-bp):
24442	* lisp/simple.el (exchange-point-and-mark):
24443	* lisp/windmove.el (windmove-display-in-direction): Use xor.
24444	* lisp/strokes.el (strokes-xor): Remove commented-out xor
24445	implementation.
24446
24447	* doc/lispref/control.texi (Control Structures): Extend menu entry
24448	for new combining condition.
24449	(Combining Conditions):
24450	* etc/NEWS (Lisp Changes): Document xor.
24451
24452	* test/lisp/subr-tests.el (subr-test-xor): New test.
24453
244542019-08-06  Stefan Monnier  <monnier@iro.umontreal.ca>
24455
24456	Move cl.el to lisp/obsolete
24457
24458	* lisp/emacs-lisp/cl.el: Move from here...
24459	* lisp/obsolete/cl.el: ...to here.
24460
24461	* lisp/subr.el (do-after-load-evaluation): Use "deprecated" in the
24462	message when loading packages from lisp/obsolete.
24463
244642019-08-06  Stefan Monnier  <monnier@iro.umontreal.ca>
24465
24466	* lisp/mail/rfc2047.el (rfc2047-encodable-p): Don't require `message`.
24467
24468	Use bound-and-true-p rather than requiring `message` to get
24469	message-posting-charset (since it defaults to nil anyway).
24470
244712019-08-06  Stefan Monnier  <monnier@iro.umontreal.ca>
24472
24473	* lisp/mh-e: Use cl-lib
24474
24475	Also, use underscore prefixes and defvar in preparation for lexical binding
24476
24477	* lisp/mh-e/mh-acros.el: Require cl-lib instead of cl.
24478	Rename all cl.el uses by adding `cl-` prefix.
24479	(mh-require-cl): Remove.  Not needed any more.  Remove all calls.
24480	(mh-defstruct): Remove.  Replace all uses with cl-defstruct.
24481	(mh-dlet*): New macro.
24482
24483	* lisp/mh-e/mh-comp.el (mh-user-agent-compose): Fold all ignored
24484	optional args into the &rest arg.
24485
24486	* lisp/mh-e/mh-e.el: Require cl-lib instead of using mh-require-cl.
24487	(mh-variants): Don't add-to-list on a local var.
24488
24489	* lisp/mh-e/mh-folder.el (mh-restore-desktop-buffer): Use shorter arg
24490	names that don't collide with global vars.
24491
24492	* lisp/mh-e/mh-mime.el (mh-insert-mime-button):
24493	(mh-insert-mime-security-button): Use mh-dlet*.
24494
24495	* lisp/mh-e/mh-search.el (mh-swish-next-result, mh-grep-next-result)
24496	(mh-namazu-next-result): Use `or`.
24497
24498	* lisp/mh-e/mh-thread.el (mh-thread-generate)
24499	(mh-thread-prune-containers): Use underscore rather than declare+ignore.
24500
24501	* lisp/mh-e/mh-tool-bar.el (mh-tool-bar-define): Use mh-dlet*.
24502	(mh-tool-bar-define): Prefer the more precise \`...\' regexp ops.
24503	Prefer Elisp's `eval-and-compile` over `cl-eval-when`.
24504
24505	* lisp/mh-e/mh-xface.el (mh-picon-get-image): Don't use
24506	mh-funcall-if-exists for ietf-drums-parse-address.
24507	Avoid the use of `cl-return` and hence use plain `defun`.
24508	Replace some `cl-loop` with `dolist`.
24509
245102019-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24511
24512	decode-time now returns subsec too
24513
24514	The list that decode-time returns now contains an extra
24515	trailing component that counts the subseconds part of the
24516	original timestamp (Bug#36549).
24517	This builds on a suggestion by Lars Ingebrigtsen in:
24518	https://lists.gnu.org/r/emacs-devel/2019-07/msg00734.html
24519	* doc/lispref/os.texi (Time Conversion):
24520	* doc/misc/emacs-mime.texi (time-date):
24521	* etc/NEWS: Document this.
24522	* lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
24523	* lisp/calendar/iso8601.el (iso8601-parse)
24524	(iso8601-parse-time, iso8601-parse-duration)
24525	(iso8601--decoded-time):
24526	* lisp/calendar/parse-time.el (parse-time-string):
24527	* lisp/calendar/time-date.el (make-decoded-time)
24528	(decoded-time-set-defaults):
24529	* lisp/org/org.el (org-fix-decoded-time)
24530	(org-parse-time-string):
24531	* src/timefns.c (Fdecode_time):
24532	Generate subsec member for decoded time.
24533	* lisp/calendar/time-date.el (decoded-time-add)
24534	Add the decoded subsec too.
24535	* lisp/simple.el (decoded-time): New subsec member.
24536	* src/data.c (Frem): Simplify zero-check to match that of new Fmod.
24537	(integer_mod): New function, with most of the guts of the old Fmod.
24538	Remove redundant zero-check.
24539	(Fmod): Use it.
24540	* src/timefns.c (Fencode_time): Handle new subsec member
24541	or (with the obsolescent calling convention) subsec arg.
24542	It defaults to 0.
24543	* test/lisp/calendar/icalendar-tests.el:
24544	(icalendar--decode-isodatetime):
24545	* test/lisp/calendar/iso8601-tests.el (test-iso8601-date-years)
24546	(test-iso8601-date-dates, test-iso8601-date-obsolete)
24547	(test-iso8601-date-weeks, test-iso8601-date-ordinals)
24548	(test-iso8601-time, test-iso8601-combined)
24549	(test-iso8601-duration, test-iso8601-intervals)
24550	(standard-test-dates, standard-test-time-of-day-fractions)
24551	(standard-test-time-of-day-beginning-of-day)
24552	(standard-test-time-of-day-utc)
24553	(standard-test-time-of-day-zone)
24554	(standard-test-date-and-time-of-day, standard-test-interval):
24555	* test/lisp/calendar/parse-time-tests.el (parse-time-tests):
24556	* test/src/timefns-tests.el (format-time-string-with-zone)
24557	(encode-time-dst-numeric-zone):
24558	Adjust to match new behavior.
24559
245602019-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24561
24562	New function time-convert
24563
24564	This replaces the awkward reuse of encode-time to both convert
24565	calendrical timestamps to Lisp timestamps, and to convert Lisp
24566	timestamps to other forms.  Now, encode-time does just the
24567	former and the new function does just the latter.
24568	The new function builds on a suggestion by Lars Ingebrigtsen in:
24569	https://lists.gnu.org/r/emacs-devel/2019-07/msg00801.html
24570	and refined by Stefan Monnier in:
24571	https://lists.gnu.org/r/emacs-devel/2019-07/msg00803.html
24572	* doc/lispref/os.texi (Time of Day, Time Conversion):
24573	* doc/misc/emacs-mime.texi (time-date):
24574	* etc/NEWS: Update documentation.
24575	* lisp/calendar/cal-dst.el (calendar-next-time-zone-transition):
24576	* lisp/calendar/time-date.el (seconds-to-time, days-to-time):
24577	* lisp/calendar/timeclock.el (timeclock-seconds-to-time):
24578	* lisp/cedet/ede/detect.el (ede-detect-qtest):
24579	* lisp/completion.el (cmpl-hours-since-origin):
24580	* lisp/ecomplete.el (ecomplete-add-item):
24581	* lisp/emacs-lisp/cl-extra.el (cl--random-time):
24582	* lisp/emacs-lisp/timer.el (timer--time-setter)
24583	(timer-next-integral-multiple-of-time):
24584	* lisp/find-lisp.el (find-lisp-format-time):
24585	* lisp/gnus/gnus-diary.el (gnus-user-format-function-d):
24586	* lisp/gnus/gnus-group.el (gnus-group-set-timestamp):
24587	* lisp/gnus/gnus-icalendar.el (gnus-icalendar-show-org-agenda):
24588	* lisp/gnus/nnrss.el (nnrss-normalize-date):
24589	* lisp/gnus/nnspool.el (nnspool-request-newgroups):
24590	* lisp/net/ntlm.el (ntlm-compute-timestamp):
24591	* lisp/net/pop3.el (pop3-uidl-dele):
24592	* lisp/obsolete/vc-arch.el (vc-arch-add-tagline):
24593	* lisp/org/org-clock.el (org-clock-get-clocked-time)
24594	(org-clock-resolve, org-resolve-clocks, org-clock-in)
24595	(org-clock-out, org-clock-sum):
24596	* lisp/org/org-id.el (org-id-uuid, org-id-time-to-b36):
24597	* lisp/org/ox-publish.el (org-publish-cache-ctime-of-src):
24598	* lisp/proced.el (proced-format-time):
24599	* lisp/progmodes/cc-cmds.el (c-progress-init)
24600	(c-progress-update):
24601	* lisp/progmodes/cperl-mode.el (cperl-time-fontification):
24602	* lisp/progmodes/flymake.el (flymake--schedule-timer-maybe):
24603	* lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
24604	(vhdl-fix-case-region-1):
24605	* lisp/tar-mode.el (tar-octal-time):
24606	* lisp/time.el (emacs-uptime):
24607	* lisp/url/url-auth.el (url-digest-auth-make-cnonce):
24608	* lisp/url/url-util.el (url-lazy-message):
24609	* lisp/vc/vc-cvs.el (vc-cvs-parse-entry):
24610	* lisp/vc/vc-hg.el (vc-hg-state-fast):
24611	* lisp/xt-mouse.el (xterm-mouse-event):
24612	* test/lisp/emacs-lisp/timer-tests.el:
24613	(timer-next-integral-multiple-of-time-2):
24614	Use time-convert, not encode-time.
24615	* lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
24616	Don’t use now-removed FORM argument for encode-time.
24617	It wasn’t crucial anyway.
24618	* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns): Add time-convert.
24619	* lisp/emacs-lisp/elint.el (elint-unknown-builtin-args):
24620	Update encode-time signature to match current arg set.
24621	* lisp/emacs-lisp/timer.el (timer-next-integral-multiple-of-time):
24622	Use timer-convert with t rather than doing it by hand.
24623	* src/timefns.c (time_hz_ticks, time_form_stamp, lisp_time_form_stamp):
24624	Remove; no longer needed.
24625	(decode_lisp_time): Rturn the form instead of having a *PFORM arg.
24626	All uses changed.
24627	(time_arith): Just return TICKS if HZ is 1.
24628	(Fencode_time): Remove argument FORM.  All callers changed.
24629	Do not attempt to encode time values; just encode
24630	decoded (calendrical) times.
24631	Unless CURRENT_TIME_LIST, just return VALUE since HZ is 1.
24632	(Ftime_convert): New function, which does the time value
24633	conversion that bleeding-edge encode-time formerly did.
24634	Return TIME if it is easy to see that it is already
24635	of the correct form.
24636	(Fcurrent_time): Mention in doc that the form is planned to change.
24637	* test/src/timefns-tests.el (decode-then-encode-time):
24638	Don’t use (encode-time nil).
24639
246402019-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24641
24642	Fix minor Org timestamp inefficiencies
24643
24644	* lisp/org/org-id.el (org-id-time-to-b36):
24645	Remove unnecessary ‘or’.
24646	* lisp/org/org.el (org-parse-time-string):
24647	Remove unnecessary ‘encode-time’.
24648
246492019-08-05  Juri Linkov  <juri@linkov.net>
24650
24651	* lisp/cus-start.el: Add :safe to display-fill-column-indicator (bug#36861)
24652
24653	(display-fill-column-indicator)
24654	(display-fill-column-indicator-column)
24655	(display-fill-column-indicator-character): Add :safe predicates.
24656
246572019-08-05  Juri Linkov  <juri@linkov.net>
24658
24659	* lisp/frameset.el (frameset--minibufferless-last-p): Fix pcase-let.
24660
24661	This makes frameset sorting stable.  (Bug#36894)
24662
246632019-08-05  Juri Linkov  <juri@linkov.net>
24664
24665	* lisp/dired-x.el (dired-guess-shell-alist-default): Use git when possible.
24666
24667	Check for Git backend and provide "git apply" for patch files (bug#36895).
24668
246692019-08-05  Juri Linkov  <juri@linkov.net>
24670
24671	* lisp/dired.el (dired-special): Rename face from dired-socket (bug#24547).
24672
24673	(dired-re-special): Rename from dired-re-socket.
24674
246752019-08-05  Juri Linkov  <juri@linkov.net>
24676
24677	* lisp/isearch.el (isearch-define-mode-toggle): Ensure isearch-mode is active.
24678
24679	Call 'isearch-mode' when it's nil.  (Bug#36871)
24680
246812019-08-05  Eli Zaretskii  <eliz@gnu.org>
24682
24683	Fix compilation with CHECK_STRUCTS
24684
24685	* src/pdumper.c (dump_hash_table): Update hash of
24686	HASH_Lisp_Hash_Table.  (Bug#36929)
24687
246882019-08-05  Lars Ingebrigtsen  <larsi@gnus.org>
24689
24690	Revert "Make `view-lossage' output of chars read from `read-char' more logical"
24691
24692	This reverts commit 1abf76877847226daa5ab7e07000ac1d4aba3478.
24693
24694	This change apparently led to problems with kmacro.
24695
246962019-08-05  Michael Albinus  <michael.albinus@gmx.de>
24697
24698	Improve Tramp's caching
24699
24700	* lisp/net/tramp.el (tramp-handle-add-name-to-file)
24701	(tramp-handle-write-region):
24702	* lisp/net/tramp-adb.el (tramp-adb-handle-make-directory)
24703	(tramp-adb-handle-delete-directory)
24704	(tramp-adb-handle-delete-file, tramp-adb-handle-write-region)
24705	(tramp-adb-handle-set-file-modes)
24706	(tramp-adb-handle-set-file-times, tramp-adb-handle-copy-file)
24707	(tramp-adb-handle-rename-file):
24708	* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file)
24709	(tramp-gvfs-handle-delete-directory)
24710	(tramp-gvfs-handle-delete-file)
24711	(tramp-gvfs-handle-make-directory)
24712	(tramp-gvfs-handle-set-file-modes)
24713	(tramp-gvfs-handle-set-file-times, tramp-gvfs-set-file-uid-gid):
24714	* lisp/net/tramp-rclone.el (tramp-rclone-do-copy-or-rename-file)
24715	(tramp-rclone-handle-delete-directory)
24716	(tramp-rclone-handle-delete-file):
24717	* lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
24718	(tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
24719	(tramp-sh-handle-add-name-to-file)
24720	(tramp-sh-handle-copy-directory, tramp-do-copy-or-rename-file)
24721	(tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
24722	(tramp-sh-handle-write-region):
24723	* lisp/net/tramp-smb.el (tramp-smb-handle-add-name-to-file)
24724	(tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
24725	(tramp-smb-handle-delete-directory)
24726	(tramp-smb-handle-delete-file)
24727	(tramp-smb-handle-make-directory-internal)
24728	(tramp-smb-handle-make-symbolic-link)
24729	(tramp-smb-handle-rename-file, tramp-smb-handle-write-region):
24730	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-add-name-to-file)
24731	(tramp-sudoedit-do-copy-or-rename-file)
24732	(tramp-sudoedit-handle-delete-directory)
24733	(tramp-sudoedit-handle-delete-file)
24734	(tramp-sudoedit-handle-set-file-modes)
24735	(tramp-sudoedit-handle-set-file-times)
24736	(tramp-sudoedit-handle-make-symbolic-link): Do not flush all file
24737	properties of upper directory.
24738
24739	* lisp/net/tramp-cache.el (tramp-flush-file-upper-properties):
24740	New defun.
24741	(tramp-flush-file-properties, tramp-flush-directory-properties):
24742	Use it.
24743
24744	* test/lisp/net/tramp-tests.el (tramp-time-diff): Declare.
24745	(tramp--test-file-attributes-equal-p): Handle also modification
24746	and status change time.
24747
247482019-08-05  Lars Ingebrigtsen  <larsi@gnus.org>
24749
24750	Make `view-lossage' output of chars read from `read-char' more logical
24751
24752	* lisp/help.el (view-lossage): Use the new data format to output
24753	data from `read-char' and the like in a more understandable
24754	fashion (bug#21867).
24755
24756	* src/keyboard.c (command_loop_1): Record (in recent_keys) the end
24757	of commands.
24758	(Frecent_keys): Don't include `end-of-command' in non-command outputs.
24759	(syms_of_keyboard): Define `end-of-command'.
24760
247612019-08-05  Lars Ingebrigtsen  <larsi@gnus.org>
24762
24763	save-some-buffers-default-predicate doc clarification
24764
24765	* lisp/files.el (save-some-buffers-default-predicate): Clarify
24766	calling convention.
24767
247682019-08-05  Martin Rudalics  <rudalics@gmx.at>
24769
24770	Fix doc-strings of 'display-buffer-*' functions (Bug#19461)
24771
24772	* lisp/window.el (display-buffer-in-atom-window)
24773	(display-buffer-in-side-window, display-buffer-record-window)
24774	(display-buffer-use-some-frame, display-buffer-same-window)
24775	(display-buffer-reuse-window, display-buffer-pop-up-frame)
24776	(display-buffer-pop-up-window, display-buffer-in-child-frame)
24777	(display-buffer-in-direction, display-buffer-below-selected)
24778	(display-buffer-at-bottom, display-buffer-in-previous-window)
24779	(display-buffer-use-some-window)
24780	(display-buffer--maybe-pop-up-frame-or-window)
24781	(display-buffer--maybe-pop-up-frame): Fix doc-strings
24782	(Bug#19461).
24783
247842019-08-04  Paul Eggert  <eggert@cs.ucla.edu>
24785
24786	Fix one more 2019-08-04 regex lint
24787
24788	Problem clarified by Mattias Engdegård in:
24789	https://lists.gnu.org/r/emacs-devel/2019-08/msg00087.html
24790	* lisp/isearch.el (isearch-symbol-regexp):
24791	Remove \s@ from regexp as it cannot match.
24792
247932019-08-04  Basil L. Contovounesios  <contovob@tcd.ie>
24794
24795	Support reverting Apropos buffers (bug#36588)
24796
24797	* lisp/apropos.el (apropos--current): New variable akin to
24798	help-xref-stack-item storing information for revert-buffer.
24799	(apropos--revert-buffer): New function.
24800	(apropos-mode): Use it as revert-buffer-function.
24801	(apropos-command, apropos, apropos-library, apropos-value)
24802	(apropos-local-value, apropos-documentation): Set apropos--current
24803	in low-level commands, i.e., those which do not call other commands.
24804
248052019-08-04  Paul Eggert  <eggert@cs.ucla.edu>
24806
24807	Fix 2019-08-04 regex lint
24808
24809	Problem reported by Mattias Engdegård in:
24810	https://lists.gnu.org/r/emacs-devel/2019-08/msg00085.html
24811	* lisp/calendar/diary-lib.el (diary-glob-file-regexp-prefix):
24812	Omit unnecessary ‘\’ before ordinary char.
24813	* lisp/cedet/inversion.el (inversion-decoders):
24814	* lisp/org/ob-haskell.el (org-babel-haskell-export-to-lhs):
24815	Omit unnecessary ‘?’ after nullable pattern.
24816	* lisp/org/org-capture.el (org-capture-fill-template):
24817	Match upper-case as well as lower-case letters.
24818	* lisp/progmodes/cc-mode.el (c-before-change-check-unbalanced-strings)
24819	(c-after-change-mark-abnormal-strings):
24820	Simplify ‘.|\r’ to ‘.’.
24821	* lisp/progmodes/gdb-mi.el (gdb-jsonify-buffer):
24822	Put ‘-’ at end of bracket expression.
24823
248242019-08-04  Paul Eggert  <eggert@cs.ucla.edu>
24825
24826	Tweak time arithmetic performance
24827
24828	* src/timefns.c (lispint_arith): New function, which
24829	should be a bit faster if B is 0, or if A is a bignum
24830	and B a fixnum with absolute value in unsigned long range.
24831	(time_arith): Use it.
24832
248332019-08-04  Paul Eggert  <eggert@cs.ucla.edu>
24834
24835	Improve time function doc
24836
24837	* doc/misc/emacs-mime.texi (time-date): Don’t give
24838	parse-iso8601-time-string in the example, as the function is
24839	not autoloaded.
24840	* lisp/gnus/nndiary.el (nndiary-compute-reminders):
24841	No need to call encode-time or use floating point here.
24842
248432019-08-04  Eli Zaretskii  <eliz@gnu.org>
24844
24845	Fix the MS-Windows build broken by recent changes
24846
24847	* src/inotify.c (syms_of_inotify) <Qignored>: Don't define here...
24848	* src/coding.c (syms_of_coding) <Qignored>: ...define it here,
24849	because it is needed also on platforms that don't compile
24850	inotify.c.
24851
248522019-08-04  Paul Eggert  <eggert@cs.ucla.edu>
24853
24854	Minor fix to recent coding.c change
24855
24856	* src/coding.c (get_buffer_gap_address):
24857	Don’t assume string or buffer length fits in int.
24858	Also, improve wording of comments.
24859
248602019-08-04  Michael Albinus  <michael.albinus@gmx.de>
24861
24862	* .dir-locals.el: Enable `bug-reference-mode' for further major modes.
24863
248642019-08-04  Lars Ingebrigtsen  <larsi@gnus.org>
24865
24866	Capitalise a couple of node names
24867
24868	* doc/lispref/functions.texi (Advising Functions): Capitalise node
24869	names (bug#17717).
24870	(Advice Combinators, Porting Old Advice): Capitalise.
24871
248722019-08-04  Michael Heerdegen  <michael_heerdegen@web.de>
24873
24874	Clarify macroexp-let* doc string
24875
24876	* lisp/emacs-lisp/macroexp.el (macroexp-let2*): Clarify doc
24877	string (bug#19371).
24878
248792019-08-04  K. Handa  <handa@gnu.org>
24880
24881	Add Unicode-safe UTF-8 converter
24882
24883	* src/coding.c (encode_string_utf_8, decode_string_utf_8): New functions.
24884	* src/coding.h (encode_string_utf_8, decode_string_utf_8): Extern them.
24885
248862019-08-04  Lars Ingebrigtsen  <larsi@gnus.org>
24887
24888	Core Advising Primitives `interactive' clarification
24889
24890	* doc/lispref/functions.texi (Core Advising Primitives): Clarify
24891	when the interactive spec is a function (bug#17871).
24892
248932019-08-04  Michael Albinus  <michael.albinus@gmx.de>
24894
24895	Implement set-file-* functions for tramp-gvfs.el
24896
24897	* lisp/net/tramp-gvfs.el (tramp-gvfs-gio-mapping):
24898	Add "gvfs-set-attribute".
24899	(tramp-gvfs-file-name-handler-alist):
24900	Add `tramp-gvfs-handle-set-file-modes',
24901	`tramp-gvfs-handle-set-file-times' and
24902	`tramp-gvfs-handle-set-file-uid-gid'.
24903	(tramp-gvfs-handle-set-file-modes)
24904	(tramp-gvfs-handle-set-file-times)
24905	(tramp-sh-handle-set-file-uid-gid): New defuns.
24906
24907	* lisp/net/tramp.el (tramp-handle-write-region): Set file modes.
24908
24909	* test/lisp/net/tramp-tests.el (tramp-test20-file-modes)
24910	(tramp-test22-file-times): Do not skip for tramp-gvfs.el.
24911
249122019-08-04  Martin Rudalics  <rudalics@gmx.at>
24913
24914	Fix two mouse drag and drop issues (Bug#28620, Bug#36269)
24915
24916	Allow 'mouse-drag-and-drop-region' to move/copy text from one
24917	frame to another (Bug#28620).  Prevent mouse avoidance mode from
24918	interfering with 'mouse-drag-and-drop-region' (Bug#36269).
24919
24920	* lisp/avoid.el (mouse-avoidance-ignore-p): Suspend avoidance
24921	when 'track-mouse' equals 'dropping'.
24922	* lisp/mouse.el (mouse-drag-and-drop-region): Set
24923	'track-mouse' to 'dropping'.  Continue reading events also
24924	when switching frames.
24925	* src/keyboard.c (Finternal_track_mouse): Rename from
24926	Ftrack_mouse.
24927	(some_mouse_moved): Return NULL also when mouse is not tracked.
24928	(show_help_echo, readable_events, kbd_buffer_get_event): Don't
24929	check whether mouse is tracked, some_mouse_moved does it now.
24930	(track_mouse): Rename variable from do_mouse_tracking.  Adjust
24931	all users.  In doc-string explain meanings of special values
24932	'dragging' and 'dropping'.
24933	* src/nsterm.m (ns_mouse_position): During drag and drop
24934	consider last mouse frame only when there is no currently
24935	focused frame.
24936	* src/w32fns.c (w32_wnd_proc): Don't set mouse capture during a
24937	drag and drop operation.
24938	* src/w32term.c (w32_mouse_position): Track frame under mouse
24939	during mouse drag and drop.
24940	(mouse_or_wdesc_frame): New function.
24941	(w32_read_socket): Call mouse_or_wdesc_frame on mouse events.
24942	* src/xdisp.c (define_frame_cursor1): Don't change mouse cursor
24943	shape during mouse drag and drop.
24944	(syms_of_xdisp): New symbol Qdropping.
24945	* src/xterm.c (XTmouse_position): Allow mouse drag and drop move
24946	to another frame
24947	(mouse_or_wdesc_frame): New function.
24948	(handle_one_xevent): Use mouse_or_wdesc_frame for mouse events.
24949
249502019-08-03  Noam Postavsky  <npostavs@gmail.com>
24951
24952	Improved ChangeLog generation for vc log (Bug#16301)
24953
24954	* lisp/vc/diff-mode.el (diff-find-source-location): Fix docstring.
24955
24956	* lisp/vc/add-log.el (change-log-unindented-file-names-re)
24957	(change-log-read-entries, change-log-read-defuns)
24958	(change-log-insert-entries):
24959	* lisp/vc/diff-mode.el (diff-add-log-current-defuns):
24960	* lisp/vc/log-edit.el (log-edit--insert-filled-defuns)
24961	(log-edit-fill-entry): New functions.
24962	(log-edit-mode): Set `log-edit-fill-entry' as
24963	`fill-paragraph-function'.
24964	(log-edit-generate-changelog-from-diff): New command.
24965	(log-edit-mode-map): Bind it to C-c C-w.
24966	* doc/emacs/maintaining.texi (Types of Log File, Log Buffer):
24967	* CONTRIBUTE: Document it.
24968	* etc/NEWS: Announce it.
24969	* test/lisp/vc/log-edit-tests.el (log-edit-fill-entry)
24970	(log-edit-fill-entry-joining): New tests.
24971
249722019-08-03  Eric Abrahamsen  <eric@ericabrahamsen.net>
24973
24974	Fix Gnus group name reference in gnus-mark-xrefs-as-read
24975
24976	* lisp/gnus/gnus-sum.el (gnus-mark-xrefs-as-read): There's already a
24977	local binding for "group", don't need another "name". This was left
24978	over from the obarray-to-hashtable change.
24979
249802019-08-03  Eric Abrahamsen  <eric@ericabrahamsen.net>
24981
24982	Temporarily preserve encoded Gnus group names in Gnus files
24983
24984	Non-ascii Gnus groups should be written to files in their encoded
24985	version until we're ready to bump Gnus' version and add an upgrade
24986	routine.
24987
24988	* lisp/gnus/gnus-start.el (gnus-gnus-to-quick-newsrc-format):
24989	* lisp/gnus/gnus-agent.el (gnus-category-read):
24990	  (gnus-category-write): Handle non-ascii group names appropriately.
24991	* lisp/gnus/gnus-registry.el (gnus-registry--munge-group-names): New
24992	  function to encode/decode group names.
24993	  (gnus-registry-fixup-registry):
24994	  (gnus-registry-save): Use function.
24995
249962019-08-03  Eric Abrahamsen  <eric@ericabrahamsen.net>
24997
24998	Remove Gnus group name encoding/decoding
24999
25000	This completes the process started in c1b63af445. Gnus group names are
25001	now fully decoded inside the Gnus system.
25002
25003	* lisp/gnus/gnus-agent.el (gnus-agent-file-coding-system): Change
25004	  default to utf-8-emacs.
25005	  (gnus-agent-decoded-group-names, gnus-agent-decoded-group-name):
25006	  Remove variable and function. Remove all usage in this file.
25007	* lisp/gnus/gnus-cache.el (gnus-cache-decoded-group-names,
25008	  gnus-cache-unified-group-names, gnus-cache-decoded-group-name):
25009	  Remove these variables and function. Remove all usage in this file.
25010	* lisp/gnus/gnus-group.el (gnus-tmp-decoded-group): Remove this
25011	  variable, gnus-tmp-group is now decoded.
25012	  (gnus-group-completing-read): Don't encode or decode group names
25013	  here.
25014	  (gnus-group-make-group): Remove ENCODED argument.
25015	* lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Decode group
25016	  names here.
25017	* lisp/gnus/gnus-start.el (gnus-make-hashtable-from-newsrc-alist):
25018	  check for encoded group names and decode.
25019	  (gnus-active-to-gnus-format): Make sure incoming group names are
25020	  decoded.
25021	  (gnus-read-newsrc-el-file): Check for encoded group names in
25022	  gnus-topic-alist.
25023	* lisp/gnus/nnagent.el: Don't use a unibyte buffer.
25024	* lisp/gnus/nnheader.el (nnheader-file-coding-system): Switch default
25025	  from 'raw-text to 'undecided, on the assumption that 'undecided will
25026	  probably write 'utf-8-emacs unless the user has arranged things
25027	  otherwise.
25028	* lisp/gnus/nnimap.el (nnimap-decode-gnus-group,
25029	  nnimap-encode-gnus-group): Remove functions and their use.
25030	* lisp/gnus/nnmail.el (nnmail-parse-active): Remove encoding.
25031	  (nnmail-active-file-coding-system): Default to 'utf-8-emacs instead
25032	  of 'raw-text.
25033	  (nnmail-group-names-not-encoded-p): Obsolete this variable; stop
25034	  using it.
25035	* lisp/gnus/gnus-art.el:
25036	* lisp/gnus/gnus-cus.el:
25037	* lisp/gnus/gnus-msg.el:
25038	* lisp/gnus/gnus-start.el:
25039	* lisp/gnus/gnus-sum.el:
25040	* lisp/gnus/gnus.el:
25041	* lisp/gnus/nnml.el:
25042	* lisp/gnus/message.el:
25043	* lisp/gnus/nnrss.el: Stop using gnus-group-decoded-name in all these
25044	  files.
25045
250462019-08-03  Eric Abrahamsen  <eric@ericabrahamsen.net>
25047
25048	Fix ordering of Gnus groups after yanking
25049
25050	* lisp/gnus/gnus-start.el (gnus-group-change-level): Fix docstring to
25051	note that the inserted group is inserted *before* the PREVIOUS
25052	group. Fix indexing -- shouldn't have been adding one to the index.
25053
250542019-08-03  Paul Eggert  <eggert@cs.ucla.edu>
25055
25056	Remove stale .pdmp files with ‘make clean’
25057
25058	Problem reported by Sven Joachim (Bug#36907).
25059	* admin/make-emacs: Simplify, now that clean does versionclean.
25060	* src/Makefile.in ($(etc)/DOC, versionclean, extraclean):
25061	Don’t ignore rm -f failures.
25062	(versionclean): Also remove emacs-*.*.*[0-9].pdmp and ../etc/DOC*.
25063	(clean): Depend on versionclean and simplify.
25064
250652019-08-03  Glenn Morris  <rgm@gnu.org>
25066
25067	* doc/lispref/display.texi (SVG Images): Remove menu.
25068
25069	Not needed since SVG Path Commands was changed to not be a node.
25070
250712019-08-03  Lars Ingebrigtsen  <larsi@gnus.org>
25072
25073	Clarify hi-lock-file-patterns-prefix doc string
25074
25075	* lisp/hi-lock.el (hi-lock-file-patterns-prefix): Clarify doc
25076	string (bug#17993).
25077
250782019-08-03  Lars Ingebrigtsen  <larsi@gnus.org>
25079
25080	Mention `themed-value' in Variable Definitions node
25081
25082	* doc/lispref/customize.texi (Variable Definitions): Mention
25083	`themed-value' (bug#17996).
25084
250852019-08-03  Oleh Krehel  <ohwoeowho@gmail.com>
25086
25087	calc mode line touch up
25088
25089	* lisp/calc/calc.el (calc-set-mode-line): Don't put excessive
25090	white space in mode line (bug#18079).
25091
250922019-08-03  Paul Eggert  <eggert@cs.ucla.edu>
25093
25094	Fix rare undefined behaviors in replace-match
25095
25096	* src/search.c (Freplace_match): Simplify by caching search_regs
25097	components.  Fix sanity check for out-of-range subscripts;
25098	it incorrectly allowed negative subscripts, subscripts
25099	equal to search_regs.num_regs, and it had undefined
25100	behavior for subscripts outside ptrdiff_t range.
25101	Improve wording of newly-introduced replace-match diagnostic.
25102	Rework use of opoint, to avoid setting point to an out-of-range value
25103	in rare cases involving modification hooks.
25104
251052019-08-03  Pierre-Yves Luyten  <py@luyten.fr>  (tiny change)
25106
25107	cua-rect help: check for 'control value
25108
25109	* lisp/emulation/cua-rect.el (cua-help-for-rectangle): Check for
25110	'control value (bug#18120).
25111
251122019-08-03  Lars Ingebrigtsen  <larsi@gnus.org>
25113
25114	delete-backward/forward-char doc string clarification
25115
25116	* lisp/simple.el (delete-backward-char): Doc string clarification
25117	(bug#18192).
25118	(delete-forward-char): Ditto.
25119
251202019-08-03  Lars Ingebrigtsen  <larsi@gnus.org>
25121
25122	ido-find-file doc string addition
25123
25124	* lisp/ido.el (ido-find-file): Mention ido-reread-directory
25125	(bug#18275).  Suggested by Rob Browning.
25126
251272019-08-03  Kevin Ryde  <user42_kevin@yahoo.com.au>
25128
25129	easy-menu-define doc string fix
25130
25131	* lisp/emacs-lisp/easymenu.el (easy-menu-define): Docstring :label and
25132	:help of the menu itself.
25133
251342019-08-03  Lars Ingebrigtsen  <larsi@gnus.org>
25135
25136	Add some function index entries for ido.texi
25137
25138	* doc/misc/ido.texi: Add index entries for functions (bug#18691).
25139
251402019-08-03  Andreas Politz  <politza@hochschule-trier.de>
25141
25142	Tweak tq queue processing
25143
25144	* lisp/emacs-lisp/tq.el (tq-process-buffer): Pop the queue before
25145	calling the function because the function may add new entries to
25146	the queue (bug#19016).  Also report errors.
25147
251482019-08-03  Lars Ingebrigtsen  <larsi@gnus.org>
25149
25150	Tweak tango-dark-theme hightlight face
25151
25152	* etc/themes/tango-dark-theme.el (class): Make highlight a bit
25153	less yellow to make the cursor visible on it (bug#19189).
25154
251552019-08-03  Lars Ingebrigtsen  <larsi@gnus.org>
25156
25157	Fix error message in replace-match for subexpressions
25158
25159	* src/search.c (Freplace_match): Output a more understandable
25160	error message when replacing a subexpression (bug#19208).
25161
251622019-08-03  Lars Ingebrigtsen  <larsi@gnus.org>
25163
25164	Clarify Freplace_match logic
25165
25166	* src/search.c (Freplace_match): Add some doc strings to clarify
25167	the logic and do a minor clean up (bug#19208).
25168
251692019-08-03  Lars Ingebrigtsen  <larsi@gnus.org>
25170
25171	Don't refer to non-existent functions in mode line examples
25172
25173	* doc/lispintro/emacs-lisp-intro.texi (Mode Line): Ditto.
25174
25175	* doc/lispref/modes.texi (Mode Line Top): In the :eval example,
25176	use a function that exists to avoid confusion (bug#19224).
25177
251782019-08-03  Lars Ingebrigtsen  <larsi@gnus.org>
25179
25180	Fix previous macroexp-progn doc string fix
25181
25182	* lisp/emacs-lisp/macroexp.el (macroexp-progn): Fix previous doc
25183	string clarification.
25184
251852019-08-03  Eli Zaretskii  <eliz@gnu.org>
25186
25187	Minor doc fix in etags.el
25188
25189	* lisp/progmodes/etags.el
25190	(etags-xref-find-definitions-tag-order): Doc fix.  (Bug#32510)
25191
251922019-08-03  Eli Zaretskii  <eliz@gnu.org>
25193
25194	Improve documentation of debugging Lisp syntax error
25195
25196	* doc/lispref/debugging.texi (Syntax Errors, Excess Open)
25197	(Excess Close): Name the commands invoked by the key
25198	sequences.  Add cross-references to appropriate sections of
25199	the Emacs manual.  (Bug#21385)
25200
252012019-08-03  Eli Zaretskii  <eliz@gnu.org>
25202
25203	Improve documentation of 'display-buffer-*' functions
25204
25205	* lisp/window.el (display-buffer-in-atom-window)
25206	(display-buffer-in-side-window, display-buffer-same-window)
25207	(display-buffer--maybe-same-window)
25208	(display-buffer-reuse-window)
25209	(display-buffer-reuse-mode-window)
25210	(display-buffer-pop-up-frame, display-buffer-pop-up-window)
25211	(display-buffer--maybe-pop-up-frame-or-window)
25212	(display-buffer--maybe-pop-up-frame)
25213	(display-buffer-in-child-frame, display-buffer-in-direction)
25214	(display-buffer-below-selected, display-buffer-at-bottom)
25215	(display-buffer-in-previous-window)
25216	(display-buffer-use-some-window, display-buffer-no-window):
25217	More details about the ALIST argument in the doc string.  (Bug#19461)
25218
252192019-08-02  Lars Ingebrigtsen  <larsi@gnus.org>
25220
25221	macroexp doc fixes
25222
25223	* lisp/emacs-lisp/macroexp.el (macroexp-progn): Doc clarification
25224	(bug#19371).
25225	(macroexp-let*): Doc fix.
25226
252272019-08-02  Lars Ingebrigtsen  <larsi@gnus.org>
25228
25229	macroexp--cons doc fix
25230
25231	* lisp/emacs-lisp/macroexp.el (macroexp--cons): Doc fix (bug#19371).
25232
252332019-08-02  Lars Ingebrigtsen  <larsi@gnus.org>
25234
25235	Fix some minor inconsistencies in the Package examples
25236
25237	* doc/lispref/package.texi (Simple Packages): Use one of the
25238	approved keywords (bug#19490).
25239
25240	* doc/lispref/tips.texi (Library Headers): Use URL instead of
25241	Homepage to make things consistent with "Simple Packages".
25242
252432019-08-02  Lars Ingebrigtsen  <larsi@gnus.org>
25244
25245	Don't but out on ~/.git files in ede
25246
25247	* lisp/cedet/ede/detect.el (ede--detect-ldf-root-predicate): Make
25248	this work with ~/ as the dir (bug#19521).
25249
252502019-08-02  Lars Ingebrigtsen  <larsi@gnus.org>
25251
25252	browse-url doc string fixup
25253
25254	* lisp/net/browse-url.el (browse-url-browser-function)
25255	(browse-url-secondary-browser-function): Mention each other in the
25256	doc strings.
25257
252582019-08-02  Lars Ingebrigtsen  <larsi@gnus.org>
25259
25260	Make Info-find-file ensure that Info is initialised
25261
25262	* lisp/info.el (Info-find-file): Ensure that Info is initialised,
25263	because libraries call that function (bug#19880).
25264
252652019-08-02  Lars Ingebrigtsen  <larsi@gnus.org>
25266
25267	Fix progression in hideshow.el
25268
25269	* lisp/progmodes/hideshow.el (hs-hide-all): Ensure progression in
25270	a less brittle fashion (bug#19892).
25271
252722019-08-02  Michael Heerdegen  <michael_heerdegen@web.de>
25273
25274	Fix example code in hideshow.el
25275
25276	* lisp/progmodes/hideshow.el: The original example would infloop
25277	(bug#19892).
25278
252792019-08-02  Michael Albinus  <michael.albinus@gmx.de>
25280
25281	Use default value of `parse-time-months' in tramp-smb.el
25282
25283	* lisp/net/tramp-smb.el (tramp-smb-read-file-entry): Use default
25284	value of `parse-time-months'.
25285
252862019-08-02  Tassilo Horn  <tsdh@gnu.org>
25287
25288	Improve pretty-printing of multiple JSON snippets in a region
25289
25290	* lisp/json.el (json-pretty-print): Improve pretty-printing of
25291	multiple JSON snippets in a region.  Don't lose the region contents
25292	starting with the first non-JSON-parseable text.  Also, don't swallow
25293	errors that occurred while parsing (bug#34160).
25294
252952019-08-02  Alan Mackenzie  <acm@muc.de>
25296
25297	CC Mode: Fix error in macro cache.  This fixes bug #36802
25298
25299	* lisp/progmodes/cc-engine.el (c-invalidate-macro-cache): Add in a cond arm
25300	to handle the change position being less than the recorded CPP contruct end.
25301
253022019-08-02  Basil L. Contovounesios  <contovob@tcd.ie>
25303
25304	Make gravatar.el more configurable
25305
25306	For discussion, see the following thread:
25307	https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00528.html
25308
25309	* etc/NEWS: Announce changes in gravatar.el user options.
25310
25311	* lisp/image/gravatar.el (gravatar-cache-ttl): Change :type to
25312	number of seconds without changing the default value and while still
25313	accepting other timestamp formats.
25314	(gravatar-rating): Restrict :type to ratings recognized by Gravatar.
25315	(gravatar-size): Allow nil as a value, in which case Gravatar's
25316	default size is used.
25317	(gravatar-default-image, gravatar-force-default): New user options
25318	controlling the Gravatar query parameters 'default' and
25319	'forcedefault', respectively.
25320	(gravatar-base-url): Use HTTPS.
25321	(gravatar--query-string): New helper function to facilitate testing.
25322	(gravatar-build-url): Use it.
25323
25324	* test/lisp/image/gravatar-tests.el (gravatar-size)
25325	(gravatar-default-image, gravatar-force-default)
25326	(gravatar-build-url): New tests.
25327
253282019-08-02  Basil L. Contovounesios  <contovob@tcd.ie>
25329
25330	Fix some minor gravatar.el issues
25331
25332	For discussion, see the following thread:
25333	https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00528.html
25334	* lisp/image/gravatar.el (gravatar-hash): Trim leading and trailing
25335	whitespace in given address, as per the Gravatar docs.
25336	(gravatar-retrieve-synchronously): Silence call to
25337	url-retrieve-synchronously for consistency with gravatar-retrieve.
25338	(gravatar-retrieved): Only cache buffer on successful retrieval.
25339	* test/lisp/image/gravatar-tests.el: New file.
25340
253412019-08-02  Basil L. Contovounesios  <contovob@tcd.ie>
25342
25343	DRY in gravatar.el
25344
25345	For discussion, see the following thread:
25346	https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00528.html
25347	* lisp/image/gravatar.el (gravatar-data->image): Remove.
25348	(gravatar-retrieve, gravatar-retrieve-synchronously): Reuse
25349	url-fetch-from-cache and gravatar-retrieved to reduce duplication.
25350	(gravatar-retrieved): Only cache buffer if url-current-object is
25351	non-nil and return result of callback.  This affords reusing this
25352	function in cached URL buffers.
25353
253542019-08-02  Basil L. Contovounesios  <contovob@tcd.ie>
25355
25356	Use lexical-binding for Gravatar support
25357
25358	For discussion, see the following thread:
25359	https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00528.html
25360	* lisp/gnus/gnus-gravatar.el: Use lexical-binding.  Link custom
25361	group 'gnus-gravatar' to 'gravatar'.
25362	(gnus-gravatar-size, gnus-gravatar-too-ugly): Doc fix.
25363	(gnus-gravatar-insert): Check liveness of article buffer sooner.
25364	(gnus-treat-from-gravatar, gnus-treat-mail-gravatar): Use
25365	interactive spec "p" instead of emulating it.
25366	* lisp/image/gravatar.el: Use lexical-binding.
25367	(gravatar-cache-expired): Remove.  Change all callers to use
25368	url-cache-expired instead.
25369	(gravatar-get-data, gravatar-retrieve)
25370	(gravatar-retrieve-synchronously): Simplify.
25371
253722019-08-02  Alan Mackenzie  <acm@muc.de>
25373
25374	CC Mode: Fix spurious recognition of operators beginning with, e.g. "or"
25375
25376	This fixes bug #36801.
25377
25378	* lisp/progmodes/cc-langs.el (c-pre-lambda-tokens-re): Use c-make-keywords-re
25379	rather than regexp-opt to make an optimised regexp out of a list of tokens.
25380
253812019-08-02  Lars Ingebrigtsen  <larsi@gnus.org>
25382
25383	pdb doc clarification
25384
25385	* lisp/progmodes/gud.el (pdb): Clarify what the parameters mean
25386	(bug#20106).
25387
253882019-08-02  Lars Ingebrigtsen  <larsi@gnus.org>
25389
25390	Mention that some dired commands work on the current file, too
25391
25392	* lisp/dired-aux.el (dired-do-search): Mention that it works on
25393	file under point (bug#20194).
25394	(dired-do-find-regexp-and-replace): Ditto.
25395	(dired-do-find-regexp): Ditto.
25396
253972019-08-02  Alan Mackenzie  <acm@muc.de>
25398
25399	CC Mode: Fix the timing of application and removal of string fence properties
25400
25401	This fixes bug #36897.
25402
25403	* lisp/progmodes/cc-mode.el (c-before-change-check-unbalanced-strings): Check
25404	string fence text properties are actually present on string delimiters before
25405	trying to remove them.
25406	(c-before-change): Amend the nesting of unwind-protect, widen,
25407	c-restore-string-fences, and c-clear-string-fences.  Move
25408	invalidate-state-cache to outside of the widening.
25409	(c-after-change): Amend the nesting of unwind-protect, widen,
25410	c-restore-string-fences, and c-clear-string-fences.
25411
254122019-08-02  Lars Ingebrigtsen  <larsi@gnus.org>
25413
25414	Use "rebinding keys" in the "Rebinding" section of the manual
25415
25416	* doc/emacs/custom.texi (Rebinding): Use the term "rebinding keys"
25417	instead of "redefining keys", because the former seems more
25418	logical (bug#21036).
25419
254202019-08-02  Mattias Engdegård  <mattiase@acm.org>
25421
25422	Clean up file-size-function
25423
25424	It is now called `byte-count-to-string-function', and used instead of
25425	calling `file-size-human-readable' directly where appropriate.
25426
25427	* lisp/files.el (file-size-human-readable-iec): New.
25428	(file-size-function): Rename to byte-count-to-string-function.  Better
25429	default value.  Eliminate lambda.  Better default for custom choice.
25430	Put in group `files'.  More descriptive doc string.  Move.
25431	(out-of-memory-warning-percentage, warn-maybe-out-of-memory)
25432	(get-free-disk-space):
25433	* lisp/dired.el (dired-number-of-marked-files):
25434	* lisp/url/url-http.el (url-http-simple-after-change-function)
25435	(url-http-content-length-after-change-function):
25436	Use byte-count-to-string-function.
25437	* test/lisp/files-tests.el (files-test-file-size-human-readable):
25438	Test file-size-human-readable-iec.
25439
254402019-08-02  Eli Zaretskii  <eliz@gnu.org>
25441
25442	Mention font-backend related crashes in PROBLEMS
25443
25444	* etc/PROBLEMS: Mention the crash in the Cairo build when
25445	.emacs.desktop messes with font-backend.  (Bug#36835)
25446
254472019-08-01  Paul Eggert  <eggert@cs.ucla.edu>
25448
25449	Fix two parse-time-months invalid assumptions
25450
25451	* lisp/gnus/nnimap.el: Do not require parse-time.
25452	* lisp/gnus/nnimap.el (nnimap-find-expired-articles):
25453	* lisp/net/pop3.el (pop3-make-date):
25454	Just use system-time-locale and format-time-string; no need to
25455	refer to parse-time-months.
25456	* lisp/net/pop3.el (parse-time-months): Remove defvar.
25457	* lisp/net/tramp-smb.el (tramp-smb-read-file-entry):
25458	Add FIXME comment about this.
25459
254602019-08-01  Paul Eggert  <eggert@cs.ucla.edu>
25461
25462	Port standard-test-interval to Los Angeles
25463
25464	* test/lisp/calendar/iso8601-tests.el (standard-test-interval):
25465	Use UTC to avoid DST glitches in the test.
25466
254672019-08-01  Lars Ingebrigtsen  <larsi@gnus.org>
25468
25469	Document that --eval makes emacsclient ignore -n
25470
25471	* doc/man/emacsclient.1: Mention that -n is ignored if --eval is
25472	given (bug#20524).
25473
254742019-08-01  Lars Ingebrigtsen  <larsi@gnus.org>
25475
25476	Document batch-byte-compile directory behavior
25477
25478	* lisp/emacs-lisp/bytecomp.el (batch-byte-compile): Document the
25479	behaviour with directories (bug#20867).
25480
254812019-08-01  Stefan Monnier  <monnier@iro.umontreal.ca>
25482
25483	* lisp/gnus/message.el (message-sendmail-f-is-evil): Update :version
25484
254852019-08-01  Lars Ingebrigtsen  <larsi@gnus.org>
25486
25487	Update URL in comment in gomoku.el
25488
25489	* lisp/play/gomoku.el: Update the URL in the comments (bug#21300).
25490
254912019-08-01  Lars Ingebrigtsen  <larsi@gnus.org>
25492
25493	Fix reference to `tags-loop-continue' in doc string
25494
25495	* lisp/dired-aux.el (dired-do-search): Refer to
25496	`fileloop-continue' instead of the obsolete `tags-loop-continue'
25497	(bug#21475).
25498
254992019-08-01  Lars Ingebrigtsen  <larsi@gnus.org>
25500
25501	Mention `C-h b' in the Keymaps node
25502
25503	* doc/emacs/custom.texi (Keymaps): Mention `C-h b' here (bug#21653).
25504
255052019-08-01  Daniel Barrett  <dbarrett@blazemonger.com>  (tiny change)
25506
25507	Add PDF to the DocBook notation class
25508
25509	* etc/schema/dbnotn.rnc: PDF is among the document types accepted
25510	(bug#21882).
25511
255122019-08-01  Lars Ingebrigtsen  <larsi@gnus.org>
25513
25514	Say that while returns nil
25515
25516	* src/eval.c (Fwhile): Say that while always returns nil
25517	(bug#22006).
25518
255192019-08-01  Glenn Morris  <rgm@gnu.org>
25520
25521	* doc/lispref/display.texi (SVG Images): Add menu for subsection.
25522
25523	Again.  This is needed for makeinfo-4.13.
25524
255252019-08-01  Eli Zaretskii  <eliz@gnu.org>
25526
25527	Fix the ELisp manual part of a recent commit
25528
25529	* doc/lispref/display.texi (SVG Images): Fix markup of "SVG
25530	Path Commands".  It is no longer a @node, but a @subheading.
25531
255322019-08-01  Basil L. Contovounesios  <contovob@tcd.ie>
25533
25534	Fix property stripping in image-file-yank-handler
25535
25536	Fix proposed by Martin Rudalics <rudalics@gmx.at> in:
25537	https://lists.gnu.org/archive/html/emacs-devel/2008-12/msg00945.html
25538	* lisp/image-file.el (image-file-yank-handler): Handle case when
25539	yank-excluded-properties is t.
25540
255412019-08-01  Basil L. Contovounesios  <contovob@tcd.ie>
25542
25543	Fix usage of remove-text-properties
25544
25545	* lisp/allout-widgets.el (allout-decorate-item-icon):
25546	* lisp/emacs-lisp/chart.el (chart-goto-xy):
25547	* lisp/forms.el (forms--make-format)
25548	(forms--make-format-elt-using-text-properties):
25549	* lisp/htmlfontify.el (hfy-unmark-trailing-whitespace):
25550	* lisp/net/newst-plainview.el (newsticker-hide-entry)
25551	(newsticker-show-entry):
25552	* lisp/nxml/nxml-mode.el (nxml-cleanup):
25553	* lisp/obsolete/longlines.el (longlines-unshow-hard-newlines)
25554	(longlines-encode-region):
25555	* lisp/org/ob-exp.el (org-babel-exp-process-buffer):
25556	* lisp/org/org-agenda.el (org-agenda-show-new-time):
25557	* lisp/progmodes/cc-defs.el
25558	(c-clear-char-property-with-value-function)
25559	(c-clear-char-property-with-value-on-char-function):
25560	* lisp/progmodes/ebrowse.el (ebrowse--hide):
25561	* lisp/progmodes/gdb-mi.el (gdb-send):
25562	* lisp/progmodes/idlw-shell.el
25563	(idlwave-retrieve-expression-from-level):
25564	* lisp/progmodes/make-mode.el (makefile-fill-paragraph):
25565	* lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
25566	* lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
25567	* lisp/tmm.el (tmm-remove-inactive-mouse-face):
25568	Always pass an explicit plist to remove-text-properties.
25569
25570	* lisp/dired.el (dired--unhide):
25571	* lisp/facemenu.el (facemenu-add-face):
25572	* lisp/htmlfontify.el (hfy-fontify-buffer):
25573	* lisp/iimage.el (iimage-mode-buffer):
25574	* lisp/image-file.el (image-file-yank-handler):
25575	* lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
25576	* lisp/textmodes/tex-mode.el (latex-env-before-change):
25577	* test/src/undo-tests.el (undo-test0):
25578	Use remove-list-of-text-properties in place of
25579	remove-text-properties where appropriate.
25580
255812019-08-01  Lars Ingebrigtsen  <larsi@gnus.org>
25582
25583	Doc string clarification for defcustom
25584
25585	* lisp/custom.el (defcustom): Mention `custom-declare-variable' in
25586	the doc string(bug#22703).
25587
255882019-08-01  Lars Ingebrigtsen  <larsi@gnus.org>
25589
25590	Make `C-u RET' in erc use the secondary browser
25591
25592	* lisp/erc/erc-button.el (erc-button-alist): Use the version of
25593	`browse-url' that interprets `C-u RET' as using the secondary browser.
25594
255952019-08-01  Lars Ingebrigtsen  <larsi@gnus.org>
25596
25597	Use decoded-time accessors in vc-cvs
25598
25599	* lisp/vc/vc-cvs.el (vc-cvs-parse-entry): Use decoded-time
25600	accessors for results from `parse-time-string'.
25601
256022019-08-01  Lars Ingebrigtsen  <larsi@gnus.org>
25603
25604	Use decoded-time accessors in gnus-demon
25605
25606	* lisp/gnus/gnus-demon.el (gnus-demon-time-to-step): Use
25607	decoded-time accessors for results from `parse-time-string'.
25608
256092019-08-01  Lars Ingebrigtsen  <larsi@gnus.org>
25610
25611	Use decoded-time accessors in esh-util
25612
25613	* lisp/eshell/esh-util.el (eshell-parse-ange-ls): Use decoded-time
25614	accessors for results from `parse-time-string'.
25615
256162019-08-01  Lars Ingebrigtsen  <larsi@gnus.org>
25617
25618	Remove some compat code in esh-util
25619
25620	* lisp/eshell/esh-util.el (eshell-parse-ange-ls): Remove
25621	older-Emacs compat code.
25622
256232019-08-01  Martin Rudalics  <rudalics@gmx.at>
25624
25625	Add example for removing scroll bars/fringes from mini windows (Bug#8868)
25626
25627	* doc/lispref/display.texi (Fringe Size/Pos): Mention example
25628	for how to permenantly remove fringes from minibuffer windows.
25629	(Scroll Bars): Add example for how to permanently remove
25630	scroll bars and fringes from minibuffer windows.
25631
256322019-07-31  Paul Eggert  <eggert@cs.ucla.edu>
25633
25634	format-time-string subsumes time-zone-format
25635
25636	* lisp/calendar/time-date.el (time-zone-format):
25637	* test/lisp/calendar/time-date-tests.el (test-time-zone-format):
25638	Remove.
25639	* lisp/gnus/nnrss.el (nnrss-normalize-date):
25640	Use format-time-string instead of time-zone-format.
25641
256422019-07-31  Lars Ingebrigtsen  <larsi@gnus.org>
25643
25644	Revert "Revert "Add support for paths to svg.el""
25645
25646	This reverts commit 0a2461be9edb218bf9ca56156d8966a2421f13a7.
25647
25648	Copyright paperwork is now in place, so the patch mistakenly applied
25649	can now be re-applied.
25650
256512019-07-31  Lars Ingebrigtsen  <larsi@gnus.org>
25652
25653	Restore `replace-region-contents' in json-pretty-print
25654
25655	* lisp/json.el (json-pretty-print): Switch back to using
25656	`replace-region-contents' to preserve markers and fonts which went
25657	missing when fixing the bug
25658	(bug#34160).
25659	(json-pretty-print-max-secs): Restore, too.
25660
256612019-07-31  Lars Ingebrigtsen  <larsi@gnus.org>
25662
25663	Add more icalendar tests (for the isodatetime parser)
25664
25665	* test/lisp/calendar/icalendar-tests.el
25666	(icalendar-tests--decode-isodatetime): Test
25667	`icalendar--decode-isodatetime'.
25668
256692019-07-31  Lars Ingebrigtsen  <larsi@gnus.org>
25670
25671	Rewrite `url-dav-process-date-property' to use parse-time
25672
25673	* lisp/url/url-dav.el (url-dav-iso8601-regexp): Remove.
25674	(url-dav-process-date-property): Rewrite to use
25675	`parse-iso8601-time-string'.
25676
256772019-07-31  Lars Ingebrigtsen  <larsi@gnus.org>
25678
25679	Fix time zone in previous rewrite of newsticker--decode-iso8601-date
25680
25681	* lisp/net/newst-backend.el (newsticker--decode-iso8601-date):
25682	According to the tests, this function should default to the Z time
25683	zone.
25684
256852019-07-31  Lars Ingebrigtsen  <larsi@gnus.org>
25686
25687	Rewrite `parse-iso8601-time-string' to use `iso8601-parse'
25688
25689	* lisp/calendar/parse-time.el (parse-iso8601-time-string): Use
25690	`iso8601-parse'.
25691	(parse-time-iso8601-regexp): Remove.
25692
256932019-07-31  Lars Ingebrigtsen  <larsi@gnus.org>
25694
25695	Allow timezone defaults in decoded-time-set-defaults
25696
25697	* lisp/calendar/time-date.el (decoded-time-set-defaults): Allow
25698	passing in a default time zone, as this seems to be something
25699	callers seem to do.
25700
257012019-07-31  Lars Ingebrigtsen  <larsi@gnus.org>
25702
25703	Default DST to "undecided" in decoded-time-set-defaults
25704
25705	* lisp/calendar/time-date.el (decoded-time-set-defaults): When we
25706	don't have a zone or a DST, set DST to "undecided".
25707
257082019-07-31  Lars Ingebrigtsen  <larsi@gnus.org>
25709
25710	decoded-time-dst doc fix
25711
25712	* lisp/simple.el (decoded-time): Doc fix for dst (note -1 value).
25713
257142019-07-31  Lars Ingebrigtsen  <larsi@gnus.org>
25715
25716	Use iso8601-parse in nnrss
25717
25718	* lisp/gnus/nnrss.el (nnrss-normalize-date): Use iso8601-parse
25719	instead of hand-rolled parser.
25720
25721	* test/lisp/gnus/nnrss-tests.el: New file.
25722
257232019-07-31  Lars Ingebrigtsen  <larsi@gnus.org>
25724
25725	Make time-zone-format take a SHORT parameter
25726
25727	* lisp/calendar/time-date.el (time-zone-format): Accept an
25728	optional SHORT parameter.
25729
257302019-07-31  Lars Ingebrigtsen  <larsi@gnus.org>
25731
25732	Add new function time-zone-format
25733
25734	* lisp/calendar/time-date.el (time-zone-format): New function.
25735
257362019-07-31  Lars Ingebrigtsen  <larsi@gnus.org>
25737
25738	`decoded-time-set-defaults' refactored out from iso8601 code
25739
25740	* lisp/calendar/iso8601.el (iso8601--encode-time):
25741	* lisp/calendar/time-date.el (decoded-time-set-defaults):
25742	Refactor out from `iso8601--encode-time', because it's helpful
25743	in other contexts.
25744
257452019-07-31  Lars Ingebrigtsen  <larsi@gnus.org>
25746
25747	Have newsticker use iso8601 to parse dates
25748
25749	* lisp/net/newst-backend.el (newsticker--decode-iso8601-date): Use
25750	iso8601 to parse.
25751
257522019-07-31  Michael Albinus  <michael.albinus@gmx.de>
25753
25754	Call file notification actions properly in filenotify-tests.el
25755
25756	* test/lisp/filenotify-tests.el (file-notify--test-wait-for-events):
25757	Rename from `file-notify--wait-for-events'.  Adapt all callees.
25758	(file-notify--test-cleanup): Reset also `file-notify--test-event'
25759	and `file-notify--test-file nil'.
25760	(file-notify--test-event-desc, file-notify--test-event-action):
25761	New accessor functions.
25762	(file-notify-test02-rm-watch, file-notify--test-event-test)
25763	(file-notify--test-with-actions-check)
25764	(file-notify--test-with-actions-explainer): Use them.
25765	(file-notify--test-with-actions-check)
25766	(file-notify--test-with-actions-explainer)
25767	(file-notify--test-with-actions): Rename them from *-events-*.
25768	Rename also internal variables accordingly.  Adapt all callees.
25769
257702019-07-31  Michael Albinus  <michael.albinus@gmx.de>
25771
25772	Distinguish different file notification events
25773
25774	* lisp/filenotify.el (file-notify--watch): Add docstring.
25775	(file-notify-descriptors, file-notify--rm-descriptor)
25776	(file-notify--pending-rename): Adapt docstring.
25777	(file-notify): New defstruct.
25778	(file-notify-handle-event): Rename argument to OBJECT.  Use
25779	accessor functions of the defstruct.
25780
257812019-07-31  Paul Eggert  <eggert@cs.ucla.edu>
25782
25783	Avoid intern calls for builtin syms
25784
25785	* src/casefiddle.c (Fdowncase_region):
25786	* src/eval.c (Fdefvaralias):
25787	Use builtin symbol rather than calling intern.
25788
257892019-07-31  Paul Eggert  <eggert@cs.ucla.edu>
25790
25791	Fix Fload infile problem
25792
25793	* src/lread.c (Fload): Close window of vulnerability
25794	where the wrong stream could have been closed.
25795
257962019-07-31  Stefan Monnier  <monnier@iro.umontreal.ca>
25797
25798	* src/lread.c (close_infile_unwind): Remove leftover debug code
25799
258002019-07-31  Stefan Monnier  <monnier@iro.umontreal.ca>
25801
25802	* src/lread.c (infile): Set/reset it like a dynamically scoped variable
25803
25804	I've seen segfaults where `infile` is nil when we get to
25805	readbyte_from_file, presumably because Fload set it to NULL (via
25806	close_infile_unwind) just before returning to its caller which was
25807	probably itself within another read/load and for some reason
25808	readevalloop didn't get to re-set `infile` like it used to do at every
25809	iteration.  I was not able to really track down the bug, but the way
25810	`infile` was set/reset seemed fragile and managing it like a standard
25811	dynamically-scoped var seems both safer (and more efficient since we
25812	don't need readevalloop to constantly re-set it).
25813
25814	(readchar): Assert that `infile` is set if using a function the depends on it.
25815	(readbyte_from_file): Assert that `infile` is set.
25816	(close_infile_unwind): Reset `infile` to its previous value rather than
25817	to NULL.
25818	(Fload): Remember the previous value of `infile` before chaning it.
25819	(readevalloop): Don't set `infile` any more.
25820
258212019-07-31  Paul Eggert  <eggert@cs.ucla.edu>
25822
25823	Clarify (lognot bignum)
25824
25825	* doc/lispref/numbers.texi (Bitwise Operations):
25826	Say that (= (lognot n) (- -1 n)).
25827
258282019-07-31  Michael Albinus  <michael.albinus@gmx.de>
25829
25830	Fix an error in tramp-sh-inotifywait-process-filter
25831
25832	* lisp/net/tramp-sh.el (tramp-sh-inotifywait-process-filter):
25833	Add default FILE to returned event, if inotifywait doesn't tell us.
25834
258352019-07-31  Noam Postavsky  <npostavs@gmail.com>
25836
25837	Remove no-longer relevant xref
25838
25839	* doc/lispref/positions.texi (List Motion): Remove xref, the text it
25840	references was removed in 2018-02-15 "Document
25841	open-paren-in-column-0-is-defun-start being of less importance".
25842
258432019-07-30  Glenn Morris  <rgm@gnu.org>
25844
25845	Merge from origin/emacs-26
25846
25847	8fbe462 (origin/emacs-26) ; * doc/lispref/positions.texi (List Motion...
25848	1d9efc0 Add index for "\( in strings" (Bug#25195)
25849	304e96f Fix doc-string of 'fit-window-to-buffer' (Bug#36848)
25850	d4c4987 Update view-mode docstring
25851	d6ca1fc ; * lisp/term.el: Add missing / to esc seq commentary.
25852	b3e2073 Fix subproc listening when setting filter to non-t (Bug#36591)
25853	f671950 * etc/NEWS.25: Belatedly announce rcirc-reconnect-delay.
25854	7f42277 Mention term.el's \032 dir tracking in commentary (Bug#19524)
25855	16a529e Remove upload functionality of package-x from the elisp manual
25856	78e6c2a * etc/AUTHORS: Update.
25857	086a56e Clarify Gravatar docs
25858	0592467 * doc/lispref/display.texi (Defining Faces): Say a face can't...
25859
25860	# Conflicts:
25861	#	doc/emacs/programs.texi
25862	#	etc/AUTHORS
25863	#	lisp/term.el
25864
258652019-07-30  Noam Postavsky  <npostavs@gmail.com>
25866
25867	* lisp/emacs-lisp/let-alist.el: Bump version to 1.0.6 (Bug#23244).
25868
258692019-07-30  Stefan Monnier  <monnier@iro.umontreal.ca>
25870
25871	* lisp/gnus/message.el: Reduce redundancy with send-mail-function
25872
25873	(message-send-mail-function) <function>: Remove `local-library` tests
25874	for libs distributed with Emacs.
25875	(message-use-send-mail-function): New function.
25876	(message-default-send-mail-function): Default to it, and remove cases
25877	already handled by it.
25878	(message--default-send-mail-function): New function.
25879	(message-send-mail-function) <variable>: Use it as new default.
25880	(message-sendmail-f-is-evil): Obey mail-specify-envelope-from if available.
25881	(message-check, message-with-reply-buffer): Use `declare`.
25882	(message-smtpmail-send-it): smtpmail accepts mail-header-separator,
25883	so simplify and declare obsolete.
25884	(message-send-mail-with-mailclient): Declare obsolete.
25885	(message-check-news-body-syntax): Don't presume that the checksum is
25886	a fixnum.
25887
258882019-07-30  Juri Linkov  <juri@linkov.net>
25889
25890	* lisp/bindings.el (mode-line-defining-kbd-macro): New defvar.
25891
25892	(minor-mode-alist): Use it for `defining-kbd-macro'.  (Bug#36564)
25893
258942019-07-30  Stefan Monnier  <monnier@iro.umontreal.ca>
25895
25896	* lisp/mail/sendmail.el (sendmail-send-it): Add FIXMEs.
25897
25898	Remove redundant :groups in the file, as well.
25899
259002019-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
25901
25902	Merge commit '9b480db6732c6d2e886838f112d9bd46fc8989bf'
25903
259042019-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
25905
25906	Improve doc strings for some -search-path variables
25907
25908	* lisp/emacs-lisp/bytecomp.el (emacs-lisp-compilation-search-path):
25909	Improve doc string.
25910
25911	* lisp/progmodes/compile.el (compilation-search-path): Improve doc
25912	string.
25913
25914	* lisp/progmodes/grep.el (grep-search-path): Improve doc string.
25915
259162019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
25917
25918	Make `C-u RET' on URLs in Gnus buffers use the secondary browser
25919
25920	* lisp/gnus/gnus-art.el (gnus-button-alist): Make `C-u RET' on
25921	URLs use the secondary browse-url browser.
25922
259232019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
25924
25925	Tweak `browse-url-add-buttons' for better button.el comp
25926
25927	* lisp/net/browse-url.el (browse-url-add-buttons): Make browse-url
25928	buttons be understood by `forward-button' and the like.
25929
259302019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
25931
25932	Add a new conveniency function to browse-url
25933
25934	* lisp/net/browse-url.el (browse-url-button-open-url): Add a new
25935	conveniency function.
25936
259372019-07-30  Dmitry Gutov  <dgutov@yandex.ru>
25938
25939	Support filename matches in etags xref backend
25940
25941	* lisp/progmodes/etags.el (etags--xref-find-definitions):
25942	Support filename matches (bug#32510).
25943
259442019-07-30  Dmitry Gutov  <dgutov@yandex.ru>
25945
25946	Guard against flymake-no-changes-timeout being nil
25947
25948	* test/lisp/progmodes/flymake-tests.el
25949	(flymake-tests--wait-for-backends): Guard against
25950	flymake-no-changes-timeout being nil (in personal configurations)
25951	to help when running tests interactively.
25952
259532019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
25954
25955	Call out the Gnus widget->button makeover in NEWS
25956
259572019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
25958
25959	Convert Emacs article buffers from widget.el to button.el
25960
25961	* lisp/gnus/gnus-art.el (gnus-mime-button-map)
25962	(gnus-url-button-commands, gnus-insert-mime-button)
25963	(gnus-mime-display-alternative)
25964	(gnus-article-extend-url-button, gnus-article-add-button)
25965	(gnus-insert-prev-page-button, gnus-insert-next-page-button)
25966	(gnus-mime-security-button-map)
25967	(gnus-insert-mime-security-button): Ditto.
25968
25969	* lisp/gnus/gnus-html.el (gnus-html-displayed-image-map)
25970	(gnus-html-wash-images, gnus-html-put-image): Ditto.
25971
25972	* lisp/gnus/gnus-icalendar.el (gnus-icalendar-insert-button): Ditto.
25973
25974	* lisp/gnus/gnus-sum.el (gnus-summary-widget-forward)
25975	(gnus-summary-button-forward, gnus-summary-widget-backward)
25976	(gnus-summary-button-backward, gnus-collect-urls-primary-text)
25977	(gnus-collect-urls, gnus-summary-browse-url): Stop using widgets
25978	and star using button.el buttons instead.
25979
25980	* lisp/gnus/mm-decode.el (mm-shr, mm-handle-filename): Don't
25981	convert shr buttons into widgets.
25982
259832019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
25984
25985	Mark shr buttons as button.el buffers
25986
25987	* lisp/net/shr.el (shr-urlify): Mark buttons as button.el buffers
25988	for easier reuse in buttonified buffers.
25989
259902019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
25991
25992	Convert ` to ' in two recent NEWS entries
25993
259942019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
25995
25996	Extend button.el to take callback data
25997
25998	* doc/lispref/display.texi (Button Buffer Commands)
25999	(Button Buffer Commands): Document this.
26000	* lisp/button.el (backward-button, forward-button): Accept a
26001	NO-ERROR parameter.
26002	(button-activate): Make it possible to have specific data in the
26003	callback action.
26004
260052019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26006
26007	Re-fix dired-pop-to-buffer obsoletion reference
26008
26009	* lisp/dired.el (dired-pop-to-buffer): Re-fix obsoletion reference
26010	(bug#26243).
26011
260122019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26013
26014	Revert "Make `ispell-change-dictionary' only list installed dictionaries"
26015
26016	This reverts commit 848712b481e16f5c96fed6344c2f7d71a8d52ed1.
26017
26018	There could be dictionaries available (set via command-line options for the
26019	speller, for instance) that would not be returned.
26020
260212019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26022
26023	Use decoded time accessors in ediff-mult
26024
26025	* lisp/vc/ediff-mult.el (ediff-format-date): Use decoded time
26026	accessors.
26027
260282019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26029
26030	Use decoded time accessors in pop3
26031
26032	* lisp/net/pop3.el (pop3-make-date): Use decoded time
26033	accessors.
26034
260352019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26036
26037	Use decoded time accessors in esh-util
26038
26039	* lisp/eshell/esh-util.el (eshell-parse-ange-ls): Use decoded time
26040	accessors.
26041
260422019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26043
26044	Use decoded time accessors in in em-ls
26045
26046	* lisp/eshell/em-ls.el (eshell-ls-file): Use decoded time
26047	accessors.
26048
260492019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26050
26051	Use decoded time accessors in timer
26052
26053	* lisp/emacs-lisp/timer.el (run-at-time): Use decoded time
26054	accessors.
26055
260562019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26057
26058	Use decoded time accessors in timeclock
26059
26060	* lisp/calendar/timeclock.el (timeclock-day-base): Use decoded time
26061	accessors.
26062
260632019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26064
26065	Use decoded time accessors in time-date
26066
26067	* lisp/calendar/time-date.el (time-to-days): Use decoded time
26068	accessors.
26069
260702019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26071
26072	Use decoded time accessors in appt
26073
26074	* lisp/calendar/appt.el (appt-check, appt-make-list): Use decoded
26075	time accessors.
26076
260772019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26078
26079	Fix syntax error in previus calc-forms change
26080
26081	* lisp/calc/calc-forms.el (calc-time): Fix previous decoded time
26082	change.
26083
260842019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26085
26086	Use decoded time accessors in calendar
26087
26088	* lisp/calendar/icalendar.el (icalendar--add-decoded-times)
26089	(icalendar--convert-sexp-to-ical):
26090	* lisp/calendar/calendar.el (calendar-current-date):
26091	* lisp/calendar/cal-dst.el (calendar-dst-find-data)
26092	(calendar-dst-find-startend): Use decoded time accessors.
26093
260942019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26095
26096	Use decoded time accessors in Gnus
26097
26098	* lisp/gnus/nnimap.el (nnimap-find-expired-articles):
26099	* lisp/gnus/nndiary.el (nndiary-compute-reminders)
26100	(nndiary-last-occurrence, nndiary-next-occurrence):
26101	* lisp/gnus/message.el (message-make-expires-date):
26102	* lisp/gnus/gnus-util.el (gnus-seconds-today)
26103	(gnus-seconds-month, gnus-seconds-year):
26104	* lisp/gnus/gnus-demon.el (gnus-demon-time-to-step):
26105	* lisp/gnus/gnus-art.el (article-make-date-line): Use decoded time
26106	accessors.
26107
261082019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26109
26110	Use decoded time accessors in calc
26111
26112	* lisp/calc/calc-forms.el (calc-time, math-this-year)
26113	(calcFunc-now): Use decoded time accessors.
26114
261152019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26116
26117	Use decoded time accessors in proced
26118
26119	* lisp/proced.el (proced-format-start): Use decoded time accessors.
26120
261212019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26122
26123	Make description of text properties on the form `(string ...)' work
26124
26125	* lisp/descr-text.el (describe-property-list): Don't special-case
26126	for symbols that have widget properties here (bug#22957).  It's
26127	not documented that this function should do that, and looking at
26128	the code, it doesn't seem like this function is actually used for
26129	doing that, either.  This makes describing some text properties
26130	that are on the form `(string ...)' work.
26131
261322019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26133
26134	Use the elisp xref backend in profiler buffers
26135
26136	* lisp/profiler.el (profiler--xref-backend): New function (bug#23455).
26137	(profiler-report-mode): Use it to use the elisp xref handler when
26138	hitting `M-.' in profiler buffers.
26139
261402019-07-30  Lars Ingebrigtsen  <larsi@gnus.org>
26141
26142	Adjust time-date tests to tweaked format
26143
261442019-07-29  Juri Linkov  <juri@linkov.net>
26145
26146	Highlight keyboard macro recording mode with read color in the mode-line
26147
26148	* lisp/bindings.el (minor-mode-alist): Propertize " Def"
26149	with 'error' face for defining-kbd-macro.  (Bug#36564)
26150
261512019-07-29  Stefan Monnier  <monnier@iro.umontreal.ca>
26152
26153	* lisp/progmodes/vhdl-mode.el: Use cl-lib when available
26154
26155	(vhdl--pushnew): New macro.  Use it instead of `pushnew`.
26156	(emacs-major-version): Don't bother checking (featurep 'xemacs)
26157	since that is always (< emacs-major-version 25) as well.
26158
261592019-07-29  Juri Linkov  <juri@linkov.net>
26160
26161	* lisp/info.el (Info-toc-insert): Suppress same section names as node names.
26162
26163	Add indentation to section lines.  (Bug#23142)
26164
261652019-07-29  Stefan Monnier  <monnier@iro.umontreal.ca>
26166
26167	* lisp/simple.el (decoded-time): Use `cl-defstruct`
26168
261692019-07-29  Stefan Monnier  <monnier@iro.umontreal.ca>
26170
26171	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Add slot option :documentation
26172
26173	Use it to improve the docstring of the accessor functions.
26174
26175	* doc/misc/cl.texi: Rename menu entry to "CL-Lib".
26176	(Structures): Add ':documentation' and mention ':type' as well,
26177	which we don't completely ignore any more.
26178
261792019-07-29  Lars Ingebrigtsen  <larsi@gnus.org>
26180
26181	Tweak how mm-display-external handles windows
26182
26183	* lisp/gnus/mm-decode.el (mm-display-external): Don't delete other
26184	buffers when displaying parts (bug#22861) because that should be
26185	up to the user, probably.
26186
261872019-07-29  Lars Ingebrigtsen  <larsi@gnus.org>
26188
26189	Add further documentation about semicolon use
26190
26191	* doc/lispref/tips.texi (Comment Tips): Document the sub-heading
26192	convention (bug#23060) as explained by Stefan on StackExchange.
26193
261942019-07-29  Lars Ingebrigtsen  <larsi@gnus.org>
26195
26196	Add an ISO 8601 parsing library
26197
26198	* doc/lispref/os.texi (Time Parsing): Document it.
26199
26200	* lisp/calendar/iso8601.el: New file.
26201
26202	* test/lisp/calendar/iso8601-tests.el: Test ISO8601 parsing functions.
26203
262042019-07-29  Lars Ingebrigtsen  <larsi@gnus.org>
26205
26206	Add support for dealing with decoded time structures
26207
26208	* doc/lispref/os.texi (Time Conversion): Document the new
26209	functions that work on decoded time.
26210	(Time Calculations): Document new date/time functions.
26211
26212	* lisp/simple.el (decoded-time-second, decoded-time-minute)
26213	(decoded-time-hour, decoded-time-day, decoded-time-month)
26214	(decoded-time-year, decoded-time-weekday, decoded-time-dst)
26215	(decoded-time-zone): New accessor functions for decoded time values.
26216
26217	* lisp/calendar/time-date.el (date-days-in-month)
26218	(date-ordinal-to-time): New functions.
26219	(decoded-time--alter-month, decoded-time--alter-day)
26220	(decoded-time--alter-second, make-decoded-time): New functions
26221	added to manipulate decoded time structures.
26222
26223	* src/timefns.c (Fdecode_time): Mention the new accessors.
26224
26225	* test/lisp/calendar/time-date-tests.el: New file to test the
26226	decoded time functions and the other new functions.
26227
262282019-07-29  Lars Ingebrigtsen  <larsi@gnus.org>
26229
26230	Fix compilation warning in mh-*.el
26231
26232	* lisp/mh-e/mh-speed.el (mh-speed-parse-flists-output):
26233	* lisp/mh-e/mh-search.el (mh-index-parse-search-regexp): Avoid
26234	warning about `values-list' by using `cl-values-list' insead.
26235
262362019-07-29  Lars Ingebrigtsen  <larsi@gnus.org>
26237
26238	Avoid error when killing rcirc buffer
26239
26240	* lisp/net/rcirc.el (rcirc-kill-buffer-hook): Delete the process
26241	in the buffer when killing server buffers to avoid triggering
26242	errors from the sentinel (bug#23168).
26243
262442019-07-28  Juri Linkov  <juri@linkov.net>
26245
26246	* lisp/char-fold.el: Rename char-fold-make-table to char-fold--make-table.
26247
262482019-07-28  Juri Linkov  <juri@linkov.net>
26249
26250	Move some uncontroversial char-folding pairs from test data to default values
26251
26252	* lisp/char-fold.el (char-fold--default-include)
26253	(char-fold--default-exclude): Add some default values.
26254
26255	* test/lisp/char-fold-tests.el (char-fold--test-without-customization)
26256	(char-fold--test-with-customization): Move some test data to
26257	default values.  Add more data for tests to pass.   (Bug#35689)
26258
262592019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26260
26261	Rename the new `browse-url-external-browser' variable
26262
26263	* lisp/net/shr.el (shr-external-browser, shr-browse-url):
26264	* lisp/net/eww.el (eww-browse-with-external-browser)
26265	(eww-follow-link):
26266	* lisp/net/browse-url.el
26267	(browse-url-secondary-browser-function)
26268	(browse-url-button-open):
26269	* lisp/gnus/gnus-sum.el (gnus-summary-browse-url): Rename from
26270	`browse-url-external-browser' to
26271	`browse-url-secondary-browser-function'.
26272
262732019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26274
26275	Make let-alist work with vectors
26276
26277	* lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search):
26278	Descend into vectors, too, looking for dotted variables (bug#23244).
26279
26280	Test case:
26281
26282	(let-alist '((a . 1) (b . 2))
26283	  `[,(+ .a) ,(+ .a .b .b)])
26284
262852019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26286
26287	Make the image keymaps not extend after the image
26288
26289	* lisp/image.el (insert-image): Make all the properties
26290	rear-nonsticky.  Before this change, the keymap would extend after
26291	the image.
26292
262932019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26294
26295	Fix when calling prettify-symbols-mode more than once
26296
26297	* lisp/progmodes/prog-mode.el (prettify-symbols-mode): Allow
26298	calling this mode several times without the earlier symbol alist
26299	shadowing the newer (bug#23255).
26300
263012019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26302
26303	Abbreviate directory names the same way as file names in C-x C-b
26304
26305	* lisp/buff-menu.el (Buffer-menu--pretty-file-name): Abbreviate
26306	directory file names, too (bug#23355).
26307
263082019-07-28  Andreas Schwab  <schwab@linux-m68k.org>
26309
26310	* admin/notes/git-workflow: Replace git-new-workdir with git
26311	worktree and remove draft marker.
26312
263132019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26314
26315	Tweak tango-dark-theme
26316
26317	* etc/themes/tango-dark-theme.el: Add a lighter background color
26318	to `header-line' (bug#23359).
26319
263202019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26321
26322	Scale images in iimage-mode
26323
26324	* lisp/iimage.el (iimage-mode-buffer): Scale images down to the
26325	width/height of the buffer (bug#23434).  Also add `image-map' to
26326	the images so that they can be further scaled.
26327
263282019-07-28  Vincent Belaïche  <vincentb1@users.sourceforge.net>
26329
26330	Make atomic cell update in data area.
26331
26332	* lisp/ses.el (ses-write-cells): Set inhibit-quit to t during the data
26333	  area write.
26334
263352019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26336
26337	Make URLs in package descriptions into links
26338
26339	* lisp/emacs-lisp/package.el (describe-package-1): Make the URLs
26340	in package descriptions into links (bug#23480).
26341
263422019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26343
26344	Enable browse-url to buttonize buffers
26345
26346	This patch also moves the internal/external browser logic from
26347	shr to browse-url, where it belongs more naturally.
26348
26349	* doc/misc/eww.texi (Basics): Adjust to browse-url-external-browser.
26350
26351	* doc/misc/gnus.texi (Article Commands): Ditto.
26352
26353	* lisp/gnus/gnus-art.el (gnus-button-url-regexp): Default to
26354	`browse-url-button-regexp', which has taken over the definition
26355	previously enjoyed by this variable.
26356
26357	* lisp/gnus/gnus-sum.el (gnus-summary-browse-url): Adjust usage.
26358
26359	* lisp/net/browse-url.el (browse-url--browser-defcustom-type): New
26360	internal variable...
26361	(browse-url-browser-function, browse-url-external-browser): Used
26362	by these two; the latter of which is a new variable.
26363	(browse-url-botton-regexp): New variable.
26364	(browse-url-button-map): New keymap.
26365	(browse-url-button): New face.
26366	(browse-url-add-buttons): New function to add clickable browse-url
26367	buttons to almost any buffer.
26368	(browse-url-button-open): New command.
26369	(browse-url-button-copy): New command.
26370
26371	* lisp/net/eww.el (eww-browse-with-external-browser)
26372	(eww-follow-link): Adjust usage.
26373
26374	* lisp/net/shr.el (shr-external-browser): Make an obsolete alias
26375	of `browse-url-external-browser'.
26376	(shr-browse-url): Adjust usage.
26377
263782019-07-28  Alan Mackenzie  <acm@muc.de>
26379
26380	CC Mode.  Fix (c-beginning-of-defun -1) getting stuck with structs.
26381
26382	In particular, with an initialization such as struct foo {..} bar = {...};
26383
26384	* lisp/progmodes/cc-cmds.el (c-forward-to-nth-EOF-{): Rename to
26385	c-forward-to-nth-EOF-\;-or-}, and when the starting (or ending) position is in
26386	the "variable" part of a struct/class/union/enum/etc., move to after the
26387	terminating semicolon.  Adjust the counting such that N only gets decremented
26388	on a successful movement over {..}.
26389	(c-beginning-of-defun, c-end-of-defun): Rename the calls to
26390	c-forward-to-nth-EOF-}, as above.
26391
263922019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26393
26394	Make cl-values-list signal an error if its argument isn't a list
26395
26396	* lisp/emacs-lisp/cl-lib.el (cl-values-list): Signal an error if
26397	LIST isn't a list (bug#23597).
26398
263992019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26400
26401	Have emacsbug only warn the user when sending to the bug address
26402
26403	* lisp/mail/emacsbug.el (report-emacs-bug-hook): Only ask for
26404	confirmation if we're really sending the bug report to the bug
26405	address.  If the user is sending it somewhere else (to themselves,
26406	for instance), the warning is misleading.
26407
264082019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26409
26410	Allow the user to send a bug report after initially saying "no"
26411
26412	* lisp/mail/emacsbug.el (report-emacs-bug-hook): Don't remove the
26413	address in the To: header (or the hook) after the user has said
26414	"no" (bug#23799).  This made it impossible for the user to do
26415	touch-ups and then resent the bug report.
26416
264172019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26418
26419	Always set the state of the "Show hidden files" gtk button
26420
26421	* src/gtkutil.c (xg_get_file_with_chooser): Always set the state
26422	of the "Show hidden files" button (bug#23977).  If not, the
26423	visible state and the actual state get out of sync.
26424
264252019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26426
26427	Make `ispell-change-dictionary' only list installed dictionaries
26428
26429	* lisp/textmodes/ispell.el (ispell-find-aspell-dictionaries): If
26430	the backend (i.e., aspell/hunspell) provided a list of languages,
26431	don't add the base list (bug#24050).
26432	(ispell-set-spellchecker-params): Ditto.
26433
264342019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26435
26436	Clean up conf-mode-syntax-table slightly
26437
26438	* lisp/textmodes/conf-mode.el (conf-mode-syntax-table): Remove
26439	superfluous backslash in ?\'.
26440
264412019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26442
26443	Mark block/char devices the same as sockets in dired
26444
26445	* lisp/dired.el (dired-re-socket): Also mark block and char
26446	devices with the socket face (bug#24547).
26447
264482019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26449
26450	`unknown' test case now works
26451
264522019-07-28  Lars Ingebrigtsen  <larsi@gnus.org>
26453
26454	Fix testcover.el usage of edebug.el symbols
26455
26456	* lisp/emacs-lisp/testcover.el (testcover-before)
26457	(testcover-after, testcover-mark)
26458	(testcover-analyze-coverage-edebug-after): Adjust usage of
26459	`unknown' to `edebug-unknown' in testcover.el in addition to
26460	edebug.el (bug#25471).
26461
264622019-07-27  Stefan Monnier  <monnier@iro.umontreal.ca>
26463
26464	* lisp/emacs-lisp/autoload.el: Make progress info more informative.
26465
26466	(update-directory-autoloads): Include the name of the target file.
26467
264682019-07-27  Stefan Monnier  <monnier@iro.umontreal.ca>
26469
26470	* lisp/emacs-lisp/bytecomp.el (byte-compile-out-toplevel): Fix bug#34757
26471
26472	This fix was provided by Pip Cet <pipcet@gmail.com>.  It tightens the
26473	code that tries to recognize a bytecode sequence as being a simple
26474	function call (to then decompile it), which occasionally misfired.
26475
26476	I added some minor changes found while investigating this issue.
26477
26478	(byte-compile): Handle corner case where byte-compile-top-level returns
26479	a non-self-evaluating expression.
26480	(byte-compile-out-toplevel): Remove support for `progn` and `t` values
26481	of output-type which aren't used anywhere.
26482
264832019-07-27  Alan Third  <alan@idiocy.org>
26484
26485	Fix stretch glyphs overlap with line above (bug#36633)
26486
26487	* src/nsterm.m (ns_dumpglyphs_stretch): Move overwriting of the
26488	clipping rectangle to after performing clipping.
26489
264902019-07-27  Paul Eggert  <eggert@day>
26491
26492	Fix arithmetic overflow in GC consing count
26493
26494	* src/alloc.c (allow_garbage_collection):
26495	Redo expression to avoid signed arithmetic overflow
26496	in an intermediate expression when CONSING is negative.
26497
264982019-07-27  Alan Mackenzie  <acm@muc.de>
26499
26500	Java Mode: Fix handling of nested generics ending in >>>.
26501
26502	This fixes bug #24671.
26503
26504	* lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): remove,
26505	transforming into ...
26506	(c-multichar->-op-not->>->>>-regexp) New lang const/var.
26507
26508	* lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): use the new
26509	c-multichar->-op-not->>->>>-regexp in place of the old
26510	c-multichar->-op-not->>-regexp.
26511
265122019-07-27  Eric Abrahamsen  <eric@ericabrahamsen.net>
26513
26514	Adjust location of Gnus group split setup process
26515
26516	Updating group splits requires the gnus-newsrc-hashtb to be
26517	initialized. Previously this failed silently, now it errors.
26518
26519	* lisp/gnus/gnus-mlspl.el (gnus-group-split-setup): Don't call the
26520	update when loading the user's init file, that's too early. Use
26521	appropriate hooks depending on AUTO-UPDATE.
26522	* doc/misc/gnus.texi (Group Mail Splitting): Change mention in docs.
26523
265242019-07-27  Lars Ingebrigtsen  <larsi@gnus.org>
26525
26526	Touch of latin-ltx input method for long arrows
26527
26528	* lisp/leim/quail/latin-ltx.el: Map all the \\long.*arrow inputs
26529	to the long characters instead of the normal ones (i.e., LONG
26530	RIGHTWARDS ARROW instead of RIGHTWARDS ARROW) (bug#24302).
26531
265322019-07-27  Eli Zaretskii  <eliz@gnu.org>
26533
26534	Fix documentation of 'redisplay-highlight-region-function'
26535
26536	* lisp/simple.el (redisplay-highlight-region-function): Fix
26537	last change.  (Bug#24701)
26538
265392019-07-27  Lars Ingebrigtsen  <larsi@gnus.org>
26540
26541	Tweak font-locking in conf-mode for "#foo { bar" lines
26542
26543	* lisp/textmodes/conf-mode.el (conf-font-lock-keywords): Don't
26544	font-lock comments as keywords (bug#24355).
26545
265462019-07-27  Lars Ingebrigtsen  <larsi@gnus.org>
26547
26548	Make dired fontify pipes and sockets
26549
26550	* lisp/dired.el (dired-socket): New face for pipes and sockets
26551	(bug#24547).
26552	(dired-re-socket): New regexp to match them.
26553	(dired-font-lock-keywords): Use them.
26554
265552019-07-27  Lars Ingebrigtsen  <larsi@gnus.org>
26556
26557	Add a doc string to redisplay-highlight-region-function
26558
26559	* lisp/simple.el (redisplay-highlight-region-function): Add a doc
26560	string (bug#24701).
26561
265622019-07-27  Stefan Monnier  <monnier@iro.umontreal.ca>
26563
26564	* lisp/progmodes/compile.el: Fix bug#36803.
26565
26566	Make sure all mode-lines are updated when compilation-in-progress
26567	is changed since it's visible globally.
26568
26569	(compilation--update-in-progress-mode-line): New function.
26570	(compilation-start, compilation-sentinel): Use it.
26571
265722019-07-27  Alan Mackenzie  <acm@muc.de>
26573
26574	CC Mode: Stop /**/ spuriously fontifying as a doc comment under gtkdoc
26575
26576	Also fix infinite loops by correcting two regexps.
26577
26578	* lisp/progmodes/cc-langs.el (c-last-c-comment-end-on-line-re)
26579	(c-last-open-c-comment-start-on-line-re): Correct the regexp fragments
26580	"\\*+[^/]" to "\\*+\\([^*/]\\|$\\)".
26581
26582	* lisp/progmodes/cc-fonts.el (gtkdoc-font-lock-keywords): Disallow /**/ for
26583	doc comment fontification.
26584
265852019-07-27  Lars Ingebrigtsen  <larsi@gnus.org>
26586
26587	Doc fix for package-menu-filter
26588
26589	* lisp/emacs-lisp/package.el (package-menu-filter): Document the
26590	use of arc:ARCHIVE and status:STATUS (bug#24883).
26591
265922019-07-27  Lars Ingebrigtsen  <larsi@gnus.org>
26593
26594	Allow serial-term to take an optional argument for line-mode
26595
26596	* lisp/term.el (serial-term): Allow taking an optional argument to
26597	avoid term-raw-mode (bug#24922).
26598
26599	* doc/lispref/processes.texi (Serial Ports): Document it.
26600
266012019-07-27  Lars Ingebrigtsen  <larsi@gnus.org>
26602
26603	Only insert XML declarations in nxml-mode when the buffer is empty
26604
26605	* lisp/nxml/nxml-mode.el (nxml-mode): Don't insert the XML
26606	declaration unless it's an empty buffer (bug#24978).  This avoids
26607	the problem of the declaration being inserted by mistake when
26608	opening XML files from archives and the like -- the file doesn't
26609	exist on the file system there, either, so it would typically lead
26610	to doubled XML declarations.
26611
266122019-07-27  Lars Ingebrigtsen  <larsi@gnus.org>
26613
26614	edebug.el comment fix
26615
26616	* lisp/emacs-lisp/edebug.el: Fix comment referring to non-existent
26617	variable (bug#25188).
26618
266192019-07-27  Lars Ingebrigtsen  <larsi@gnus.org>
26620
26621	Clarify yank-pop doc string
26622
26623	* lisp/simple.el (yank-pop): Mention `kill-ring' to make it more
26624	clear what the command is doing (bug#25196).
26625
266262019-07-27  Eli Zaretskii  <eliz@gnu.org>
26627
26628	Move tty-colors-tests.el to its proper directory.
26629
266302019-07-27  Pip Cet  <pipcet@gmail.com>
26631
26632	Use the CSS convention for #RGB colors (bug#36304)
26633
26634	* src/xterm.c (x_parse_color): Change interpretation of #RGB color
26635	triplets to match CSS rather than X conventions.
26636
26637	* lisp/term/tty-colors.el (tty-color-standard-values): Change
26638	interpretation of #RGB color triplets to match CSS rather than X
26639	conventions.  Allow upper-case digits.  Fix rgb:R/G/B
26640	interpretation.
26641
26642	* doc/emacs/display.texi (Colors): Specify the convention used for
26643	"#RGB" color triplets.
26644
26645	* test/lisp/term/tty-colors-tests.el: New file.
26646
26647	* etc/NEWS: Mention the change.
26648
266492019-07-27  Lars Ingebrigtsen  <larsi@gnus.org>
26650
26651	Allow global-auto-revert-ignore-buffer to be a predicate function
26652
26653	* lisp/autorevert.el (global-auto-revert-ignore-buffer): Allow
26654	this to be a predicate function (bug#25277).
26655	(auto-revert--global-add-current-buffer): Use it.
26656
266572019-07-27  Pip Cet  <pipcet@gmail.com>
26658
26659	Don't double-decompress cached HTTP responses (bug#36773)
26660
26661	* lisp/url/url-http.el (url-handle-content-transfer-encoding): Modify
26662	the message headers as well as the message body to reflect
26663	decompression.
26664	* lisp/mail/mail-utils.el (mail-fetch-field): Add DELETE argument, to
26665	delete header lines included in the result.
26666
266672019-07-27  Lars Ingebrigtsen  <larsi@gnus.org>
26668
26669	Rename coverage symbols in edebug to avoid collisions
26670
26671	* lisp/emacs-lisp/edebug.el (edebug-clear-coverage): Use
26672	edebug-unknown and edebug-ok-coverage instead of unknown and
26673	ok-coverage to avoid naming collisions with packages that use
26674	those two symbols (bug#25471).
26675	(edebug--update-coverage, edebug-display-freq-count): Ditto.
26676
266772019-07-27  Lars Ingebrigtsen  <larsi@gnus.org>
26678
26679	Allow directory-files-recursively to follow symlinks
26680
26681	* doc/lispref/files.texi (Contents of Directories): Document it.
26682
26683	* lisp/files.el (directory-files-recursively): Allow following
26684	symlinks.
26685
266862019-07-27  Lars Ingebrigtsen  <larsi@gnus.org>
26687
26688	define-derived-mode doc string clarification
26689
26690	* lisp/emacs-lisp/derived.el (define-derived-mode): Doc string
26691	clarification about the keywords (bug#26301).
26692
266932019-07-26  Noam Postavsky  <npostavs@gmail.com>
26694
26695	Clarify docstring of last-command-event.
26696
26697	* src/keyboard.c (syms_of_keyboard) <last-command-event>: Reword docstring.
26698
266992019-07-26  Stefan Monnier  <monnier@iro.umontreal.ca>
26700
26701	Adjust remaining uses of `NILP (HASH_HASH)`.
26702
26703	* src/json.c (lisp_to_json_toplevel_1):
26704	* src/pdumper.c (dump_hash_table_stable_p, hash_table_contents):
26705	* src/print.c (print, print_vectorlike):
26706	* src/minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
26707	Use `EQ (HASH_KEY, Qunbound)` instead of `NILP (HASH_HASH)`.
26708
267092019-07-26  Stefan Monnier  <monnier@iro.umontreal.ca>
26710
26711	Don't dump the `hash` vector if it will need to be recomputed anyway
26712
26713	* src/fns.c (hash_table_rehash): Only set `hash` field at the end.
26714	(sweep_weak_table): Only set slot of `hash` vector when that vector exists.
26715	(Fhash_table_count): No need to hash_rehash_if_needed any more.
26716
26717	* src/lisp.h (hash_rehash_needed_p): Test the presence of `hash` instead.
26718
26719	* src/pdumper.c (check_hash_table_rehash, dump_hash_table):
26720	Set `hash` to nil to indicate that the table needs to be rehashed.
26721
267222019-07-26  Stefan Monnier  <monnier@iro.umontreal.ca>
26723
26724	* src/fns.c: Use `EQ (key, Qunbound)` to check if a slot is in use
26725
26726	(make_hash_table): Use Qunbound for the key_and_value table.
26727	(maybe_resize_hash_table): Set new key_and_value slots to Qunbound.
26728	(hash_table_rehash): Don't bother copying the old table of hashes since
26729	we're recomputing it completely.
26730	(hash_table_rehash): Use hash_rehash_needed_p more.
26731	(hash_put): Add assertion that the slot was indeed considered empty.
26732	(hash_remove_from_table, hash_clear, sweep_weak_table): Set empty
26733	slot's key to Qunbound.
26734	(Fmaphash): Use `EQ (key, Qunbound)` to check if a slot is in use.
26735
26736	* src/lisp.h (struct Lisp_Hash_Table): Update comments.
26737
267382019-07-26  Stefan Monnier  <monnier@iro.umontreal.ca>
26739
26740	* src/fns.c (hash_index_size): New function, extracted from make_hash_table
26741
26742	(make_hash_table, maybe_resize_hash_table): Use it.
26743
26744	* src/pdumper.c (check_hash_table_rehash): Use hash_rehash_needed_p.
26745
267462019-07-26  Alan Mackenzie  <acm@muc.de>
26747
26748	CC Mode.  Create lang vars for certain skipping expressions at compile time
26749
26750	This saves repeated calculations at run time.
26751
26752	* lisp/progmodes/cc-langs.el (c-stmt-boundary-skip-chars)
26753	(c-stmt-boundary-skip-list, c-stmt-boundary-skip-chars-with-comma)
26754	(c-stmt-boundary-skip-list-with-comma): New lang constants/variables.
26755
26756	* lisp/progmodes/cc-engine.el (c-commas-bound-stmts): New variable
26757	(c-beginning-of-statement-1): Set c-commas-bound-stmts rather than
26758	c-stmt-delim-chars.
26759	(c-crosses-statement-barrier-p): Remove the now unneeded calculations of
26760	c-stmt-delim-chars.  Set skip chars to one of the new lang variables, and
26761	later to a substring of it.
26762	(c-at-statement-start-p): Set c-syntactic-skip-backward from the new
26763	variables.
26764	(c-at-expression-start-p): Bind c-commas-bound-stmts.  Use
26765	c-stmt-delim-chars-with-comma rather than c-stmt-delim-chars in a backward
26766	scan.
26767	(c-guess-basic-syntax): Bind c-commas-bound-stmts rather than
26768	c-stmt-delim-chars to itself.  Bind c-commas-bound-stmts to t at another place
26769	rather than setting c-stmt-delim-chars to c-stmt-delim-chars-with-comma.
26770
267712019-07-26  Stefan Monnier  <monnier@iro.umontreal.ca>
26772
26773	* src/fns.c (maybe_resize_hash_table): Obey rehash_size (bug#25743)
26774
267752019-07-26  Paul Eggert  <eggert@cs.ucla.edu>
26776
26777	Fix recently-introduced file-name-absolute-p typo
26778
26779	Fix a bug introduced in 2019-07-24T21:28:13!eggert@cs.ucla.edu.
26780	* src/fileio.c (file_name_absolute_p):
26781	~/foo is also absolute (Bug#36809).
26782	* test/src/fileio-tests.el (fileio-tests--file-name-absolute-p):
26783	Rename from fileio-tests--no-such-user and add more tests.
26784
267852019-07-26  Paul Eggert  <eggert@cs.ucla.edu>
26786
26787	Fix ‘make check’ failure
26788
26789	Problem introduced in 2019-07-26T07:08:40!larsi@gnus.org.
26790	* lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
26791	Don’t count "0 unexpected" as unexpected.
26792
267932019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26794
26795	Tweak the display in gnus-summary-browse-url
26796
26797	* lisp/gnus/gnus-sum.el (gnus-summary-browse-url): Don't force
26798	article conf, because the command may be called from the article
26799	buffer (which may be the only buffer displayed).
26800
268012019-07-26  Noam Postavsky  <npostavs@gmail.com>
26802
26803	* lisp/mail/footnote.el (footnote--local-advice): Add missing comma.
26804
268052019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26806
26807	Separate out the "/" prefix into a named keymap in ibuffer
26808
26809	* lisp/ibuffer.el (ibuffer--filter-map): Separate out into its own
26810	keymap (bug#25797).
26811	(ibuffer-mode-map): Bind the "/" key to it.
26812
268132019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26814
26815	Add version tag to smtpmail-servers-requiring-authorization
26816
26817	* lisp/mail/smtpmail.el
26818	(smtpmail-servers-requiring-authorization): Add version tag.
26819
268202019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26821
26822	Remove interactive spec from eshell-source-file
26823
26824	* lisp/eshell/em-script.el (eshell-source-file): This function
26825	can't work as an interactive command, so remove the interactive
26826	spec (bug#26057).
26827
268282019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26829
26830	Clarify when gpg2 and gpg are used in the epg-gpg-program doc string
26831
26832	* lisp/epg-config.el (epg-gpg-program): Doc string clarification
26833	(bug#26090).
26834
268352019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26836
26837	Make ffap find {/etc} files again
26838
26839	* lisp/ffap.el (ffap-string-at-point-mode-alist): Make
26840	(ffap-file-at-point) work on {/etc} again (bug#26190).
26841
268422019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26843
26844	Fix obsoletion notice in dired-pop-to-buffer
26845
26846	* lisp/dired.el (dired-pop-to-buffer): `dired-mark-pop-up' doesn't
26847	seem to have anything to do with this function, so saying that
26848	it's a replacement seems misleading (bug#26243).
26849
268502019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26851
26852	Minor rewording of a couple of sentences in define-derived-mode doc
26853
26854	* lisp/emacs-lisp/derived.el (define-derived-mode): Reword
26855	documentation to be less whimsical (bug#26301).
26856
268572019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26858
26859	Doc clarification in time-stamp-pattern
26860
26861	* lisp/time-stamp.el (time-stamp-pattern): Try to document what
26862	the examples mean (bug#26335).
26863
268642019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26865
26866	Add a NEWS item about smtpmail-servers-requiring-authorization
26867
268682019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26869
26870	Allow specifying that SMTP auth should always be used
26871
26872	* doc/misc/smtpmail.texi (Authentication): Document it.
26873
26874	* lisp/mail/smtpmail.el
26875	(smtpmail-servers-requiring-authorization): New variable (bug#26359).
26876	(smtpmail-via-smtp): Use it.
26877
268782019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26879
26880	Clarify last-command-event doc string
26881
26882	* src/keyboard.c (syms_of_keyboard): Clarify the doc string
26883	(bug#26626).
26884
268852019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26886
26887	Add an autoload cookie to package-upload-file
26888
26889	* lisp/emacs-lisp/package-x.el (package-upload-file): Add an
26890	autoload cookie (bug#26724).
26891
268922019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26893
26894	Tweak prompt when symlinking in dired
26895
26896	* lisp/dired-aux.el (dired-do-create-files): Fix prompt when
26897	sym/hardlinking (bug#26870).
26898
268992019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26900
26901	Don't infloop in url.el when sending invalid basic auth
26902
26903	* lisp/url/url-http.el (url-http-handle-authentication): Bail out
26904	if the wrong credentials were passed to the server instead of
26905	inflooping (bug#27022).
26906
269072019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26908
26909	Further tweak dired-compress error message
26910
26911	* lisp/dired-aux.el (dired-compress): The function is called on
26912	both compression and uncompression, so be more ambiguous in the
26913	error message.
26914
269152019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26916
26917	Tweak the error message on dired compression failures
26918
26919	* lisp/dired-aux.el (dired-compress): Fix error message.
26920
269212019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26922
26923	Remove debugging left in previous patch
26924
26925	* lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
26926	Provide completion for `ignore-error'.
26927
269282019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26929
26930	Add new macro `ignore-error'
26931
26932	* doc/lispref/control.texi (Handling Errors): Document
26933	`ignore-error'.
26934	* lisp/subr.el (ignore-error): New macro.
26935
26936	* lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
26937	Provide completion for `ignore-error'.
26938
269392019-07-26  Lars Ingebrigtsen  <larsi@gnus.org>
26940
26941	Always include the number of unexpected results here too
26942
26943	* lisp/emacs-lisp/ert.el (ert-run-tests-batch): Always include the
26944	number of unexpected results here as well.
26945
269462019-07-25  Lars Ingebrigtsen  <larsi@gnus.org>
26947
26948	Don't run gpg when loading package.el
26949
26950	* lisp/emacs-lisp/package.el (package-check-signature): Don't run
26951	gpg on startup, but just default to `allow-unsigned'.
26952	(package-check-signature): New function to check whether a OpenPGP
26953	configuration is found when `allow-unsigned'.
26954	(package--check-signature-content, package--check-signature)
26955	(package--download-one-archive, package-refresh-contents)
26956	(package-install-from-archive): Use function instead of variable
26957	throughout.
26958	* doc/emacs/package.texi (Package Installation): Document this.
26959
269602019-07-25  Paul Eggert  <eggert@cs.ucla.edu>
26961
26962	Minor pdumper tweaks
26963
26964	* src/pdumper.c (dump_hash_table_stable_p):
26965	Bool vectors and bignums are also stable keys.
26966	(decode_emacs_reloc, drain_reloc_list, Fdump_emacs_portable):
26967	(dump_bitset_clear): Simplify use of memset.
26968
269692019-07-25  Lars Ingebrigtsen  <larsi@gnus.org>
26970
26971	Tweak the behaviour of thing-at-point--end-of-sexp
26972
26973	* lisp/thingatpt.el (thing-at-point--end-of-sexp): Don't return
26974	nil when called with point between two parentheses (bug#29499).
26975
269762019-07-25  Paul Eggert  <eggert@cs.ucla.edu>
26977
26978	Don't crash when parsing bad SVG data
26979
26980	Derived from a patch by Pip Cet (Bug#36773#47).
26981	* src/image.c (svg_load_image): Work around librsvg 2.40.13 bug.
26982
269832019-07-25  Lars Ingebrigtsen  <larsi@gnus.org>
26984
26985	Fix mouse-1 in profiler-report-mode-map
26986
26987	* lisp/profiler.el (profiler-report-mode-map): Make `mouse-1'
26988	respect `mouse-1-click-follows-link' (bug#30515).
26989
269902019-07-25  Lars Ingebrigtsen  <larsi@gnus.org>
26991
26992	Make cl-destructuring-bind errors a bit more understandable
26993
26994	* lisp/emacs-lisp/cl-macs.el (cl-destructuring-bind): Make errors
26995	when giving the wrong number of arguments to the bindings form
26996	more informational (bug#29345).
26997
269982019-07-25  Eric Abrahamsen  <eric@ericabrahamsen.net>
26999
27000	Don't set marks on imap groups when there are no marks to set
27001
27002	* lisp/gnus/nnimap.el (nnimap-update-qresync-info): This code runs in
27003	a fairly tight loop and shouldn't call all these functions if not
27004	necessary.
27005
270062019-07-25  Alan Mackenzie  <acm@muc.de>
27007
27008	* lisp/progmodes/cc-awk.el (c-awk-var-num-ket-re): Remove /x80-/xff from it.
27009
270102019-07-25  Lars Ingebrigtsen  <larsi@gnus.org>
27011
27012	Tweak the sizing of the shr placeholder images on HiDPI screens
27013
27014	* lisp/net/shr.el (shr-make-placeholder-image): We have already
27015	computed the size of the placeholder including the scale, so force
27016	the automatic scale to 1.  This will make the placeholder the
27017	correct size on HiDPI screen.
27018
270192019-07-25  Lars Ingebrigtsen  <larsi@gnus.org>
27020
27021	Make `C-u w' in the Gnus Summary buffer open externally
27022
27023	* doc/misc/gnus.texi (Article Commands): Document new behaviour.
27024
27025	* lisp/gnus/gnus-sum.el (gnus-shorten-url): New function.
27026	(gnus-summary-browse-url): Change function to make `C-u' use the
27027	external browser (as Gnus does when you hit URLs manually).  Don't
27028	use an initial input.
27029
270302019-07-25  Lars Ingebrigtsen  <larsi@gnus.org>
27031
27032	Tweak previous footnote-mode patch
27033
27034	* lisp/mail/footnote.el (footnote--local-advice): Ensure that the
27035	variable really is local.
27036
270372019-07-25  Lars Ingebrigtsen  <larsi@gnus.org>
27038
27039	Fix setting fill-paragraph-function in footnote-mode
27040
27041	* lisp/mail/footnote.el (footnote--local-advice): New macro
27042	refactored out from the code used to advice
27043	footnote--adaptive-fill-function in footnote-mode.
27044	(footnote-mode): Use it to advice both that variable and
27045	fill-paragraph-function (the latter to avoid overwriting the major
27046	mode's value) (bug#27775)
27047	(footnote--fill-paragraph): Adjust calling convention now that
27048	it's an :around advice.
27049
270502019-07-25  Eli Zaretskii  <eliz@gnu.org>
27051
27052	Fix HarfBuzz support on MS-Windows
27053
27054	* src/w32uniscribe.c [HAVE_HARFBUZZ]: Include hb-ot.h.
27055	(fn_hb_ot_font_set_funcs, hb_ot_font_set_funcs): Define.
27056	(w32hb_get_font): Call hb_ot_font_set_funcs after creating the
27057	hb_font_t object, to make the code work with versions of
27058	HarfBuzz before 2.0.0.  Problem reported by Stephen Leake
27059	<stephen_leake@stephe-leake.org>.  Solution suggested by
27060	Khaled Hosny <dr.khaled.hosny@gmail.com> in
27061	https://lists.freedesktop.org/archives/harfbuzz/2019-July/007412.html.
27062
270632019-07-25  Lars Ingebrigtsen  <larsi@gnus.org>
27064
27065	Fix many-compilations case of compilation-goto-in-progress-buffer
27066
27067	* lisp/progmodes/compile.el (compilation-goto-in-progress-buffer):
27068	Fix thinko in initial version of the function in the
27069	many-compilations case.
27070
270712019-07-25  Eli Zaretskii  <eliz@gnu.org>
27072
27073	Fix recent commit in xref.el
27074
27075	* lisp/progmodes/xref.el (xref-file-name-display): Doc fix.
27076
27077	* etc/NEWS: Fix the corresponding entry.
27078
270792019-07-25  Eric Abrahamsen  <eric@ericabrahamsen.net>
27080
27081	Leave note about removing gnus-start-news-server
27082
27083	* lisp/gnus/gnus-int.el (gnus-nntp-server): Once this option is gone,
27084	that whole function can go.
27085
270862019-07-25  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27087
27088	Strip trailing whitespaces at the end of converted do block
27089
27090	* lisp/progmodes/ruby-mode.el (ruby-brace-to-do-end):
27091	Strip trailing whitespaces at the end of converted do block
27092	(bug#36756).
27093
27094	https://bugs.ruby-lang.org/issues/16014
27095	https://github.com/syl20bnr/spacemacs/issues/12548
27096
270972019-07-25  Lars Ingebrigtsen  <larsi@gnus.org>
27098
27099	Clarify in the manual when to use function-key-map
27100
27101	* doc/misc/efaq.texi (No Escape key):
27102	* doc/emacs/msdos-xtra.texi (MS-DOS Keyboard): Change back to
27103	function-key-map from local-function-key-map, because these
27104	bindings apply to all terminals.
27105
27106	* doc/lispref/keymaps.texi (Translation Keymaps): Clarify in what
27107	circumstances you may still want to use function-key-map.
27108
271092019-07-24  Juri Linkov  <juri@linkov.net>
27110
27111	* lisp/vc/vc.el (vc-log-search): Fix docstring (bug#36644).
27112
27113	* lisp/vc/vc-git.el (vc-git-log-search): Add docstring.
27114
271152019-07-24  Paul Eggert  <eggert@cs.ucla.edu>
27116
27117	Do not treat ~nosuchuser as an absolute file name
27118
27119	Derived from Ken Brown’s patch (Bug#36502#97).
27120	* doc/lispref/files.texi (Relative File Names):
27121	* etc/NEWS: Document this.
27122	* src/fileio.c (user_homedir): New function.
27123	(Fexpand_file_name, file_name_absolute_p): Use it.
27124	(search_embedded_absfilename): Simplify via file_name_absolute_p.
27125	* test/src/fileio-tests.el (fileio-tests--no-such-user): New test.
27126
271272019-07-24  Sam Steingold  <sds@gnu.org>
27128
27129	Add `gnus-collect-urls-primary-text'
27130
27131	* lisp/gnus/gnus-sum.el (gnus-collect-urls-primary-text): Add defcustom.
27132	(gnus-collect-urls): Use it.
27133	(gnus-summary-browse-url): Mention it in the docstring.
27134
271352019-07-24  Paul Eggert  <eggert@cs.ucla.edu>
27136
27137	Port double-slash test to z/OS
27138
27139	* admin/merge-gnulib (GNULIB_MODULES): Add double-slash-root.
27140	Emacs was already using this Gnulib module indirectly, so this
27141	is merely noting that there is now a direct dependency.
27142	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
27143	* src/fileio.c (search_embedded_absfilename):
27144	Use DOUBLE_SLASH_IS_DISTINCT_ROOT instead of (WINDOWSNT || CYGWIN).
27145	Simplify.
27146
271472019-07-24  Paul Eggert  <eggert@cs.ucla.edu>
27148
27149	Update from Gnulib
27150
27151	This incorporates:
27152	2019-07-16 update-copyright: Make it work again
27153	* build-aux/config.guess, build-aux/update-copyright:
27154	Copy from Gnulib.
27155
271562019-07-24  Sam Steingold  <sds@gnu.org>
27157
27158	Avoid potential extensive verbosity in gnus-summary-browse-url
27159
27160	* lisp/wid-edit.el (widget-move): Accept suppress-echo argument.
27161	* lisp/gnus/gnus-sum.el (gnus-collect-urls): Use it.
27162
271632019-07-24  Lars Ingebrigtsen  <larsi@gnus.org>
27164
27165	Use input-decode-map in the manuals
27166
27167	* doc/misc/edt.texi (Changes):
27168	* doc/emacs/custom.texi (Terminal Init): Use input-decode-map
27169	instead of local-function-key-map, according to Stefan Monnier.
27170
271712019-07-24  Mattias Engdegård  <mattiase@acm.org>
27172
27173	Use destructuring in filenotify backend handlers
27174
27175	* lisp/filenotify.el (file-notify--callback-inotify)
27176	(file-notify--callback-kqueue, file-notify--callback-w32notify)
27177	(file-notify--callback-gfilenotify, file-notify--callback): Use cl-defun.
27178
271792019-07-24  Mattias Engdegård  <mattiase@acm.org>
27180
27181	Use defstruct instead of list for filenotify pending-rename
27182
27183	* lisp/filenotify.el (file-notify--rename): New defstruct.
27184	(file-notify--pending-rename): Changed type.
27185	(file-notify--handle-event): Adapt to new type.
27186
271872019-07-24  Mattias Engdegård  <mattiase@acm.org>
27188
27189	Refactor the callback half of filenotify.el
27190
27191	Split callback code into backend-specific and general parts.  Refactor
27192	pending event, which is always a rename, to include relevant
27193	information only.  General clean-up.
27194
27195	* lisp/filenotify.el (file-notify--pending-event): Rename.
27196	(file-notify--event-watched-file, file-notify--event-file-name)
27197	(file-notify--event-file1-name, file-notify--event-cookie): Remove.
27198	(file-notify--rename, file-notify--expand-file-name)
27199	(file-notify--callback-inotify, file-notify--callback-kqueue)
27200	(file-notify--callback-w32notify, file-notify--callback-gfilenotify)
27201	(file-notify--call-handler, file-notify--handle-event): New.
27202	(file-notify-callback): Split general parts into
27203	file-notify--call-handler and file-notify--handle-event.
27204	(file-notify--add-watch-inotify, file-notify--add-watch-kqueue)
27205	(file-notify--add-watch-w32notify)
27206	(file-notify--add-watch-gfilenotify): Use new callbacks.
27207
272082019-07-24  Mattias Engdegård  <mattiase@acm.org>
27209
27210	Don't use internal filenotify function in test
27211
27212	* test/lisp/filenotify-tests.el
27213	(file-notify--test-file, file-notify--test-add-watch): New.
27214	(file-notify--test-event-test, file-notify--test-event-handler)
27215	(file-notify-test02-rm-watch, file-notify-test03-events)
27216	(file-notify-test05-file-validity, file-notify-test07-many-events)
27217	(file-notify-test08-backup, file-notify-test09-watched-file-in-watched-dir):
27218	Avoid using the internal `file-notify--event-watched-file' so that it
27219	can be removed from filenotify.el.
27220	Instead, pass the file name to the callback as an extra argument;
27221	use `file-notify--test-add-watch' instead of `file-notify-add-watch'.
27222
272232019-07-24  Mattias Engdegård  <mattiase@acm.org>
27224
27225	Local definitions of accessors only used in test
27226
27227	* test/lisp/filenotify-tests.el (file-notify--test-event-file)
27228	(file-notify--test-event-file1, file-notify--test-event-test)
27229	(file-notify--test-event-handler):
27230	Define accessors locally, so that they can be removed from filenotify.el.
27231
272322019-07-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
27233
27234	soap-client: Do not double-encode duplicate types
27235
27236	* lisp/net/soap-client.el (soap-encode-xs-complex-type): Eliminate
27237	duplicates from type hierarchy before encoding values.
27238
272392019-07-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
27240
27241	soap-client: Encode simple type attributes
27242
27243	* lisp/net/soap-client.el (soap-encode-xs-simple-type-attributes):
27244	Encode simple type attributes.
27245
272462019-07-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
27247
27248	soap-client: Allow attributes and a value
27249
27250	* lisp/net/soap-client.el (soap-encode-xs-basic-type): Allow
27251	attributes and a value to be specified in the same element.
27252
272532019-07-24  Andreas Schwab  <schwab@suse.de>
27254
27255	* lisp/gnus/gnus-cus.el (gnus-extra-group-parameters): Allow nil
27256	for modseq.
27257
272582019-07-23  Juri Linkov  <juri@linkov.net>
27259
27260	Customizable char-fold with char-fold-symmetric, char-fold-include (bug#35689)
27261
27262	* doc/emacs/search.texi (Lax Search): Document
27263	char-fold-symmetric, char-fold-include, char-fold-exclude.
27264
27265	* lisp/char-fold.el (char-fold--default-include)
27266	(char-fold--default-exclude, char-fold--default-symmetric)
27267	(char-fold--previous): New defconsts.
27268	(char-fold-include, char-fold-exclude, char-fold-symmetric):
27269	New defcustoms.
27270	(char-fold-make-table): Use them.
27271	(char-fold-update-table): New function called at top-level.
27272
27273	* test/lisp/char-fold-tests.el (char-fold--test-no-match-exactly)
27274	(char-fold--permutation): New functions.
27275	(char-fold--test-without-customization)
27276	(char-fold--test-with-customization): New tests.
27277
272782019-07-23  Paul Eggert  <eggert@cs.ucla.edu>
27279
27280	Merge pdumper.c and alloc.c builtin symbol tests
27281
27282	* src/alloc.c (c_symbol_p): Move from here ...
27283	* src/lisp.h (c_symbol_p): ... to here, and make it more portable
27284	to hypothetical platforms where pointers are wider than ptrdiff_t.
27285	* src/pdumper.c (dump_builtin_symbol_p): Use c_symbol_p.
27286
272872019-07-23  Lars Ingebrigtsen  <larsi@gnus.org>
27288
27289	Make "Compiling" in the mode line a clickable command
27290
27291	* lisp/progmodes/compile.el (compilation-goto-in-progress-buffer):
27292	New command.
27293	(compilation-in-progress): Don't put the in-progress mode-line
27294	marker among the minor modes (because it's not a minor mode), and
27295	add a command that allows you to switch to the in-progress
27296	compilation buffer (bug#27252).
27297
272982019-07-23  Robert Pluim  <rpluim@gmail.com>
27299
27300	Follow decomposition chains when constructing char-fold-table
27301
27302	* lisp/char-fold.el (char-fold-make-table): Decompose the
27303	decomposition of each character, adding equivalences to the original
27304	character, until no more decompositions are left.
27305
273062019-07-23  Lars Ingebrigtsen  <larsi@gnus.org>
27307
27308	Refer to local-function-key-map in various manuals
27309
27310	* doc/misc/viper.texi (Key Bindings):
27311	* doc/misc/efaq.texi (X key translations for Emacs)
27312	(No Escape key):
27313	* doc/misc/edt.texi (Changes):
27314	* doc/emacs/msdos-xtra.texi (MS-DOS Keyboard):
27315	* doc/emacs/custom.texi (Terminal Init): Refer to
27316	local-function-key-map instead of function-key-map, since the
27317	latter isn't supposed to be changed (bug#27490).
27318
273192019-07-23  Paul Eggert  <eggert@cs.ucla.edu>
27320
27321	Improve pdumper doc; say unexec is deprecated
27322
27323	Say that pdumping cannot redump unless -batch is used.  Say that
27324	the traditional unexec dumping method is by default not available,
27325	and is deprecated.  Don't call dump files "portable", as dump files
27326	are not any more portable than the Emacs executables themselves.
27327	Just call them "dump files".  Similar, prefer "portable dumper"
27328	(since the dumper code is portable) to "portable dumping" (since
27329	the dump file is not).  Be more systematic about calling them
27330	"dump files" instead of "dumped images" or whatnot.
27331
273322019-07-23  Stefan Monnier  <monnier@iro.umontreal.ca>
27333
27334	* src/fns.c (hashfn_user_defined): Make sure we always return a fixnum.
27335
273362019-07-23  Alan Mackenzie  <acm@muc.de>
27337
27338	Fix problems in CC Mode with " being entered into a comment at EOB.
27339
27340	* lisp/progmodes/cc-engine.el (c-full-lit-near-cache): Amend the definition
27341	such that an element's END element will be nil if the pertinent literal is
27342	open at EOB.
27343	(c-full-pp-to-literal): Before setting the aforementioned END element, check
27344	that we're no longer in a literal.  (c-literal-limits): When
27345	c-full-pp-to-literal returns a list with a nil END element, replace this by
27346	(point-max) to keep the interface of c-literal-limits unchanged.
27347
27348	* lisp/progmodes/cc-mode.el (c-after-change-mark-abnormal-strings): Having
27349	found a string quote, check it is not inside an unterminated comment (i.e. one
27350	at EOB).
27351
273522019-07-23  Paul Eggert  <eggert@cs.ucla.edu>
27353
27354	Support "%x" etc. formats on more floats
27355
27356	* doc/lispref/strings.texi (Formatting Strings): Document this.
27357	* src/editfns.c (styled_format): Support %o, %x, and %X on
27358	finite floats less than zero or greater than UINTMAX_MAX.
27359	* test/src/editfns-tests.el (format-%x-large-float)
27360	(read-large-integer, format-%o-negative-float):
27361	Adjust tests to match extended behavior.
27362	Rename the latter test from format-%o-invalid-float,
27363	since the float is no longer invalid.
27364
27365	* test/src/editfns-tests.el (format-%x-large-float)
27366	(read-large-integer): Test this.
27367
273682019-07-22  Paul Eggert  <eggert@cs.ucla.edu>
27369
27370	Tweak performance of cmpfn_profiler
27371
27372	* src/profiler.c (cmpfn_profiler):
27373	Improve performance when VECTORP (bt1) && EQ (bt1, bt2).
27374
273752019-07-22  Paul Eggert  <eggert@cs.ucla.edu>
27376
27377	Avoid overexposing fixnums for hash codes
27378
27379	Following a suggestion by Stefan Monnier in:
27380	https://lists.gnu.org/r/emacs-devel/2019-07/msg00530.html
27381	* doc/lispref/hash.texi (Creating Hash, Defining Hash):
27382	* src/fns.c (Fsxhash_eq, Fsxhash_eql, Fsxhash_equal, Fmake_hash_table):
27383	Don’t insist that hash codes be fixnums, reverting
27384	the recent doc changes to the contrary.
27385	* src/bytecode.c (exec_byte_code): Special-case only the eq case,
27386	as the others aren’t worth tuning now that we treat bignum hashes
27387	like fixnums.
27388	* src/fns.c (hashfn_user_defined): If the hash code is a bignum,
27389	reduce its hash down to a fixnum.
27390
273912019-07-22  Stefan Kangas  <stefankangas@gmail.com>
27392
27393	Document normal usage in ibuffer.el
27394
27395	* lisp/ibuffer.el (Commentary): Document normal usage.  (Bug#5608)
27396	Remove redundant :group args.
27397
273982019-07-22  Paul Eggert  <eggert@cs.ucla.edu>
27399
27400	Do not pdump user-defined hashtabs
27401
27402	* src/pdumper.c (dump_hash_table_stable_p):
27403	Signal an error if a hash table has user-defined tests (Bug#36769).
27404	* src/fns.c (hashfn_user_defined): Now extern.
27405
274062019-07-22  Paul Eggert  <eggert@cs.ucla.edu>
27407
27408	Keep track of consing while GC’s inhibited
27409
27410	* src/alloc.c (allow_garbage_collection): Do not discard the count
27411	of consing that occurred while GC was inhibited.
27412	Problem and initial fix reported by Pip Cet in:
27413	https://lists.gnu.org/r/emacs-devel/2019-07/msg00523.html
27414
274152019-07-22  Pip Cet  <pipcet@gmail.com>
27416
27417	Avoid byte compiler warning for subr.el
27418
27419	* lisp/subr.el (number-sequence): Simplify to avoid byte compiler warning.
27420
274212019-07-22  Paul Eggert  <eggert@cs.ucla.edu>
27422
27423	Remove no-longer-needed integer overflow code
27424
27425	* lisp/calculator.el (calculator-number-to-string):
27426	Use truncate, not calculator-truncate, since integer
27427	overflow cannot occur here.
27428	* lisp/calendar/cal-persia.el (calendar-persian-year-from-absolute):
27429	* lisp/gnus/gnus-agent.el (gnus-agent-read-article-number):
27430	* lisp/gnus/nnmaildir.el (nnmaildir--group-maxnum)
27431	(nnmaildir--new-number):
27432	* lisp/scroll-bar.el (scroll-bar-scale):
27433	* lisp/simple.el (beginning-of-buffer, end-of-buffer):
27434	Simplify, now that integer overflow cannot occur.
27435
274362019-07-22  Eric Abrahamsen  <eric@ericabrahamsen.net>
27437
27438	Adjust regexp for parsing IMAP header response
27439
27440	* lisp/gnus/nnimap.el (nnimap-transform-headers): The first header
27441	might have no value, or a continuation header might start with a
27442	newline.
27443
274442019-07-22  Stefan Monnier  <monnier@iro.umontreal.ca>
27445
27446	* lisp/progmodes/opascal.el: Tweak code to ease edebugging
27447
27448	(opascal-strings): Inline in its sole use.
27449	(opascal-save-excursion): Add Edebug spec.
27450	(opascal-is): Remove.  Use `memq` directly instead.
27451	(opascal--in): New pcase pattern.
27452	(opascal-literal-end-pattern): Remove unused function.
27453	(opascal--scan-non-whitespace-backward): New macro.
27454	(opascal-block-start, opascal-else-start, opascal-is-use-clause-end)
27455	(opascal-previous-indent-of, opascal-section-indent-of)
27456	(opascal-enclosing-indent-of): Use it.
27457	(opascal-corrected-indentation): Presume we're already at first token.
27458	(opascal-indent-line): Use indent-line-to.
27459	(opascal-new-comment-line): Declare obsolete.
27460	(opascal-mode-map): Keep the default M-j binding instead.
27461
274622019-07-22  Eric Abrahamsen  <eric@ericabrahamsen.net>
27463
27464	Fix case of IMAP Noselect flag
27465
27466	* lisp/gnus/nnimap.el (nnimap-get-groups): We should be looking for
27467	%Noselect, not %NoSelect.
27468
274692019-07-22  Mattias Engdegård  <mattiase@acm.org>
27470
27471	Remove some obsolete integer overflow handling
27472
27473	* lisp/subr.el (number-sequence):
27474	* lisp/org/org-gnus.el (org-gnus-follow-link):
27475	* lisp/ls-lisp.el (ls-lisp-insert-directory):
27476	Remove dead code guarding against integer overflow.
27477
274782019-07-22  Stefan Monnier  <monnier@iro.umontreal.ca>
27479
27480	* lisp/progmodes/opascal.el: Allow inline `var` decl in `for` (bug#36348)
27481
27482	(opascal-enclosing-indent-of): Ignore decls "neutered" by delimiter.
27483
274842019-07-22  Mattias Engdegård  <mattiase@acm.org>
27485
27486	Make tramp test regexp more robust
27487
27488	* test/lisp/net/tramp-tests.el (tramp-test17-insert-directory):
27489	Match a greater variety of human-readable size values.
27490
274912019-07-22  Michael Albinus  <michael.albinus@gmx.de>
27492
27493	Support history files in remote shells (Bug#36742)
27494
27495	* doc/emacs/misc.texi (Shell Ring): Mention history file for
27496	remote shells.
27497
27498	* lisp/shell.el (shell--start-prog): New buffer-local variable.
27499	(shell): Set it.
27500	(shell-mode): Handle history file for remote shells. (Bug#36742)
27501
275022019-07-22  Martin Rudalics  <rudalics@gmx.at>
27503
27504	Handle persistence of windows' scroll bar and fringes settings (Bug#36193)
27505
27506	* doc/lispref/display.texi (Fringe Size/Pos): Document new
27507	argument PERSISTENT of 'set-window-fringes'.
27508	(Scroll Bars): Document new argument PERSISTENT of
27509	'set-window-scroll-bars'.  Mention that HORIZONTAL-TYPE must
27510	be 'bottom' to show a horizontal scroll bar on mini windows.
27511	* lisp/window.el (window-min-pixel-height): For mini windows the
27512	minimum height is one line.
27513	(window--min-size-1): Use value returned by
27514	'window-min-pixel-height' when dealing with mini windows.
27515	(window--resize-mini-window): Try to handle horizontal scroll
27516	bars and size restrictions more accurately.
27517	(window--state-put-2): Handle persistence of scroll bar
27518	settings.
27519	* src/frame.c (make_frame): Allow horizontal scroll bars in
27520	mini windows.
27521	(adjust_frame_size): Drop PIXELWISE argument in
27522	'resize_frame_windows' calls.
27523	* src/window.c (set_window_buffer): Don't override WINDOW's
27524	scroll bar and fringe settings when marked as persistent.
27525	(resize_frame_windows): Drop fourth argument PIXELWISE - SIZE
27526	is always specified in terms of pixels.  Try to handle height
27527	of mini windows more accurately.
27528	(grow_mini_window, shrink_mini_window): Use body height of
27529	mini window when calculating expected height change.  Take
27530	horizontal scroll bars into account.
27531	(struct saved_window): Two new members to handle persistence
27532	of window fringes and scroll bars.
27533	(Fset_window_configuration, save_window_save): Handle
27534	persistence of fringes and scroll bars.
27535	(set_window_fringes, set_window_scroll_bars): New arguments
27536	PERSISTENT.  Make dimension checks more accurate.
27537	(Fset_window_fringes): New argument PERSISTENT.
27538	(Fwindow_fringes, Fwindow_scroll_bars): Add PERSISTENT to
27539	return values.
27540	(Fset_window_scroll_bars): New argument PERSISTENT.  In
27541	doc-string mention that 'bottom' must be specified to get a
27542	horizontal scroll bar in mini windows.
27543	(compare_window_configurations): Add checks for persistence of
27544	fringes and scroll bars.
27545	* src/window.h (struct window): New boolean slots
27546	'fringes_persistent' and 'scroll_bars_persistent'.
27547	(WINDOW_HAS_HORIZONTAL_SCROLL_BAR): Allow horizontal scroll bars
27548	for mini windows.
27549	(resize_frame_windows): Remove fourth argument of
27550	'resize_frame_windows' in external declaration.
27551	* src/xdisp.c (resize_mini_window): Use box text height to
27552	tell whether mini window height changed.
27553	(set_horizontal_scroll_bar): Set mini window's horizontal
27554	scroll bar when its type is specified as 'bottom'.
27555	* etc/NEWS: Mention new options for 'set-window-fringes' and
27556	'set-window-scroll-bars'.
27557
275582019-07-21  Alan Mackenzie  <acm@muc.de>
27559
27560	Implement C++ Mode attributes.  This fixes bug #36650.
27561
27562	* lisp/progmodes/cc-engine.el (c-looking-at-c++-attribute)
27563	(c-enclosing-c++-attribute, c-slow-enclosing-c++-attribute): New macro and
27564	functions.
27565	(c-crosses-statement-barrier-p): Add [ into skip-chars for C++ Mode, and use
27566	it to detect and skip over an attribute whilst scanning forward.
27567	(c-sws-lit-type): Use the new value 'attribute.
27568	(c-invalidate-sws-region-before): Put a save-match-data around this function.
27569	Detect and handle an enclosing attribute at either END or BEG.
27570	(c-invalidate-sws-region-after): Handle C++ attributes.
27571	(c-forward-sws, c-backward-sws): Handle C++ attributes.
27572
27573	* lisp/progmodes/cc-mode.el (c-fl-decl-end): Detect and handle point being
27574	inside a C++ attribute.
27575
275762019-07-21  Paul Eggert  <eggert@cs.ucla.edu>
27577
27578	Fix lifetime error in previous patch
27579
27580	Problem reported by Pip Cet in:
27581	https://lists.gnu.org/r/emacs-devel/2019-07/msg00520.html
27582	* src/alloc.c (inhibit_garbage_collection): Use new function.
27583	(allow_garbage_collection): Accept intmax_t, not pointer.
27584	* src/eval.c (default_toplevel_binding, do_one_unbind)
27585	(backtrace_eval_unrewind, Fbacktrace__locals, mark_specpdl):
27586	Support SPECPDL_UNWIND_INTMAX.
27587	(record_unwind_protect_excursion): New function.
27588	* src/lisp.h (enum specbind_tag): New constant SPECPDL_UNWIND_INTMAX.
27589	(union specbinding): New member unwind_intmax.
27590
275912019-07-21  Paul Eggert  <eggert@cs.ucla.edu>
27592
27593	Speed up maybe_gc when GC is inhibited
27594
27595	* src/alloc.c (allow_garbage_collection)
27596	(inhibit_garbage_collection): Temporarily bump
27597	consing_until_gc, to improve performance of maybe_gc while
27598	garbage collection is inhibited.  Suggested by Stefan Monnier in:
27599	https://lists.gnu.org/r/emacs-devel/2019-07/msg00511.html
27600
276012019-07-21  Paul Eggert  <eggert@cs.ucla.edu>
27602
27603	Avoid integer overflow in hash table size
27604
27605	* src/fns.c (INDEX_SIZE_BOUND): Use a tighter bound.
27606	(maybe_resize_hash_table): Avoid integer overflow when
27607	checking for hash table size overflow.  Fix confusion
27608	between INDEX_SIZE_BOUND (which is for the index vector)
27609	and hash table size.  Fix typo in debugging message
27610	when ENABLE_CHECKING.
27611
276122019-07-21  Paul Eggert  <eggert@cs.ucla.edu>
27613
27614	Improve doc for hash tables
27615
27616	* doc/lispref/hash.texi (Creating Hash, Defining Hash):
27617	* src/fns.c (Fsxhash_eq, Fsxhash_eql, Fsxhash_equal):
27618	Say that hashes are fixnums.
27619	(Fmake_hash_table): Say that that an integer rehash-size
27620	should be a fixnum.
27621	* doc/lispref/hash.texi (Defining Hash): Say that hash and
27622	comparison functions should be consistent and pure, and should
27623	return quickly.
27624
276252019-07-21  Paul Eggert  <eggert@cs.ucla.edu>
27626
27627	pure_alloc returns cleared memory
27628
27629	* src/alloc.c (pure_alloc): Clear any heap-allocated storage.
27630	This is simpler than auditing all the callers to make sure
27631	they don’t assume pure memory is cleared memory, and the
27632	performance implication is nonexistent except when Emacs
27633	is misconfigured.  Also, add an assertion to catch
27634	caller misuse when pure space is exhausted.
27635
276362019-07-21  Lars Ingebrigtsen  <larsi@gnus.org>
27637
27638	Make the unflag-p parameter in dired-mark-unmarked-files work
27639
27640	* lisp/dired-x.el (dired-mark-unmarked-files): Make the unflag-p
27641	parameter work (bug#27465).
27642
276432019-07-21  Lars Ingebrigtsen  <larsi@gnus.org>
27644
27645	Don't override SSH_AUTH_SOCK in the example emacs.service file
27646
27647	* etc/emacs.service (ExecStop): Don't override SSH_AUTH_SOCK by
27648	default, because it varies by distribution where the socket is
27649	(bug#27620).
27650
276512019-07-21  Lars Ingebrigtsen  <larsi@gnus.org>
27652
27653	Fill footnotes better on `M-q'
27654
27655	* lisp/mail/footnote.el (footnote--fill-paragraph): New function
27656	(bug#27775).
27657	(footnote-mode): Use it.
27658
276592019-07-21  Ken Brown  <kbrown@cornell.edu>
27660
27661	Fix expand-file-name for names starting with '~'
27662
27663	* src/fileio.c: (file_name_absolute_no_tilde_p):
27664	New static function.
27665	(Fexpand_file_name): If the current buffer's default-directory
27666	starts with "~user" where "user" is not a valid user name, don't
27667	give the '~' a special meaning.  Just treat the value of
27668	default-directory as a relative name.  (Bug#36502)
27669	* test/src/fileio-tests.el
27670	(fileio-tests--relative-default-directory): Add a test.
27671
276722019-07-21  Gemini Lasswell  <gazally@runbox.com>
27673
27674	Fix inline-quote Edebug spec
27675
27676	* lisp/emacs-lisp/inline.el (inline-quote): Fix the edebug spec
27677	(bug#31051).
27678
276792019-07-20  Paul Eggert  <eggert@cs.ucla.edu>
27680
27681	Tweak recent hash-table fix
27682
27683	* src/fns.c (maybe_resize_hash_table): Completely initialize the
27684	new ‘next’ vector before allocating more vectors, as this
27685	preserves locality a bit better and it’s safer not to leave an
27686	uninitialized Lisp object around.  Use next_size instead of
27687	new_size to compute new index size.
27688
276892019-07-20  Paul Eggert  <eggert@cs.ucla.edu>
27690
27691	Fix crash if user test munges hash table
27692
27693	* src/fns.c (restore_mutability)
27694	(hash_table_user_defined_call): New functions.
27695	(cmpfn_user_defined, hashfn_user_defined): Use them.
27696	(make_hash_table, copy_hash_table):
27697	Mark new hash table as mutable.
27698	(check_mutable_hash_table): New function.
27699	(Fclrhash, Fputhash, Fremhash): Use it instead of CHECK_IMPURE.
27700	* src/lisp.h (struct hash_table_test): User-defined functions
27701	now take pointers to struct Lisp_Hash_Table, not to struct
27702	hash_table_test.  All uses changed.
27703	(struct Lisp_Hash_Table): New member ‘mutable’.
27704	* src/pdumper.c (dump_hash_table): Copy it.
27705	* test/src/fns-tests.el (test-hash-function-that-mutates-hash-table):
27706	New test, which tests for the bug.
27707
277082019-07-20  Paul Eggert  <eggert@cs.ucla.edu>
27709
27710	Simplify hashfn/cmpfn calling convention
27711
27712	* src/fns.c (cmpfn_eql, cmpfn_equal, cmpfn_user_defined)
27713	(hashfn_eq, hashfn_equal, hashfn_eql, hashfn_user_defined):
27714	* src/profiler.c (cmpfn_profiler, hashfn_profiler):
27715	Use new calling convention where the return value is a fixnum
27716	instead of EMACS_UINT.  While we’re at it, put the hash table
27717	at the end, since that’s a bit simpler and generates better
27718	code (at least on the x86-64).  All callers changed.
27719	* src/fns.c (hash_lookup): Store fixnum rather than EMACS_UINT.
27720	All callers changed.
27721	(hash_put): Take a fixnum rather than an EMACS_UINT.
27722	All callers changed.  Remove unnecessary eassert (XUFIXNUM does it).
27723	* src/lisp.h (struct hash_table_test):
27724	Adjust signatures of cmpfn and hashfn.
27725
277262019-07-20  Paul Eggert  <eggert@cs.ucla.edu>
27727
27728	Inhibit GC after inhibit_garbage_collection
27729
27730	Without this patch, there are unlikely ways that garbage
27731	collection could occur (sometimes causing undefined behavior)
27732	even when inhibit_garbage_collection is in effect.
27733	* src/alloc.c (garbage_collection_inhibited): New var.
27734	(pure_alloc): Increment it if pure space is exhausted, so that
27735	garbage_collect_1 no longer needs to inspect
27736	pure_bytes_used_before_overflow.
27737	(allow_garbage_collection): New function.
27738	(inhibit_garbage_collection): Increment the new variable rather
27739	than specbinding a user variable.
27740	(garbage_collect_1): Do not garbage collect if the new variable
27741	is set, rather than if pure_bytes_used_before_overflow is set.
27742
277432019-07-20  Paul Eggert  <eggert@cs.ucla.edu>
27744
27745	Simplify maybe_gc implementation
27746
27747	* src/alloc.c (consing_until_gc): New variable, replacing the
27748	combination of consing_since_gc and gc_relative_threshold.
27749	All uses changed.
27750	(byte_ct): Move decl here from lisp.h.
27751	(memory_full_cons_threshold): New an enum constant.
27752	(free_cons): Check for integer overflow in
27753	statistics calculation.
27754	* src/lisp.h (object_ct): Move decl here from alloc.c.
27755	(OBJECT_CT_MAX): New macro.
27756	(maybe_gc): Simplify accordingly.
27757
277582019-07-20  Paul Eggert  <eggert@cs.ucla.edu>
27759
27760	Rename ‘pure’ to ‘purecopy’
27761
27762	* src/lisp.h (struct Lisp_Hash_Table): Rename ‘pure’ member to
27763	‘purecopy’, as the old name was quite confusing (it did not
27764	mean the hash table was pure).  All uses changed.
27765
277662019-07-20  Paul Eggert  <eggert@cs.ucla.edu>
27767
27768	Fix hash table overallocation etc.
27769
27770	* src/fns.c (set_hash_key_and_value, set_hash_next)
27771	(set_hash_hash, set_hash_index): Remove.  All uses removed.
27772	(maybe_resize_hash_table): Don’t update h->next until it’s
27773	known that all the allocations succeeded, to avoid trashing
27774	the hash table if memory is exhausted.  Don’t overallocate the
27775	other vectors.  Don’t output growth message if the hash table
27776	didn’t actually grow due to allocation failure.  Assume C99
27777	decls after statements.
27778
277792019-07-20  Noam Postavsky  <npostavs@gmail.com>
27780
27781	Merge from emacs-26
27782
27783	150bdfe43a Handle completely undecoded input in term (Bug#29918)
27784	021f32cca1 * doc/misc/forms.texi (Control File Format): Fix a doc error.
27785	76538d09b7 Fix typo in package-alist docstring
27786	b2fde4b5e8 * doc/lispref/text.texi (Mode-Specific Indent): Fix a typo...
27787	7e62778548 ; Another minor change in 'bidi-display-reordering's doc s...
27788	4455ddbe56 Improve doc string of 'bidi-display-reordering'
27789	34ee26dd93 Add warning to bidi-display-reordering doc string
27790
27791	# Conflicts:
27792	#	lisp/term.el
27793	#	test/lisp/term-tests.el
27794
277952019-07-20  Basil L. Contovounesios  <contovob@tcd.ie>
27796
27797	Use lexical-binding in compface.el
27798
27799	* lisp/image/compface.el: Use lexical-binding.  Extend Keywords
27800	header.
27801	(uncompface): Call call-process-region directly.
27802
278032019-07-20  Oleh Krehel  <ohwoeowho@gmail.com>
27804
27805	* lisp/files.el (file-size-function): Add :version tag
27806
278072019-07-20  Stefan Monnier  <monnier@iro.umontreal.ca>
27808
27809	* test/manual/indent/octave.m (spmd): Add test for last change
27810
27811	* lisp/progmodes/octave.el (matchedrules): Add `spmd...end` (bug#36703)
27812
278132019-07-20  Basil L. Contovounesios  <contovob@tcd.ie>
27814
27815	Fix last change to format-spec
27816
27817	* doc/lispref/text.texi (Interpolated Strings): Use @result and fix
27818	typos.
27819	* lisp/format-spec.el: Avoid loading subr-x at runtime.
27820	(format-spec--parse-modifiers): Optimize slightly.
27821
278222019-07-20  Basil L. Contovounesios  <contovob@tcd.ie>
27823
27824	Allow counter-clockwise rotations in image-rotate
27825
27826	* lisp/image.el (image-rotate): Extend with an optional argument
27827	specifying the rotation in degrees (bug#35421).
27828	* doc/lispref/display.texi (Showing Images):
27829	* etc/NEWS: Document the change.
27830	* test/lisp/image-tests.el (image-rotate): New test.
27831
278322019-07-20  Lars Ingebrigtsen  <larsi@gnus.org>
27833
27834	Mark the gnus-article-date-headers NEWS entry as documented
27835
278362019-07-20  Adam Sjøgren  <asjo@koldfront.dk>
27837
27838	Enable showing local time and lapsed time in Gnus
27839
27840	* lisp/gnus/gnus-art.el (article-make-date-combine-with-lapsed) factor
27841	code out into new function, used for providing both combined-lapsed
27842	and combined-local-lapsed.
27843
278442019-07-20  Lars Ingebrigtsen  <larsi@gnus.org>
27845
27846	Clean up code in nnimap-parse-flags slightly
27847
27848	* lisp/gnus/nnimap.el (nnimap-parse-flags): Clean up code
27849	slightly, removing redundant checks for `end'.
27850
278512019-07-20  Eli Zaretskii  <eliz@gnu.org>
27852
27853	Fix last change
27854
27855	* etc/NEWS: Call out the change in matching REGEXP.
27856
27857	* lisp/files.el (magic-mode-alist)
27858	(magic-fallback-mode-alist): Doc fix.  (Bug#36401)
27859
278602019-07-20  Benjamin Riefenstahl  <b.riefenstahl@turtle-trading.net>
27861
27862	Make REs in magic-(fallback-)mode-alist case-sensitive.
27863
27864	These variables are used for well-defined file formats where relaxed
27865	case matching is not wanted usually.
27866
27867	* lisp/files.el (magic-mode-alist, magic-fallback-mode-alist): Update
27868	the doc string.
27869	(set-auto-mode): Make looking-at for elements of magic-mode-alist and
27870	magic-fallback-mode-alist use case-fold-search == nil.
27871	* lisp/files.el (files-test-magic-mode-alist-re-baseline)
27872	(files-test-magic-mode-alist-re-no-match)
27873	(files-test-magic-mode-alist-re-case-diff): Add.
27874
278752019-07-20  Stefan Kangas  <stefankangas@gmail.com>
27876
27877	Make finder-exit use quit-window (Bug#33610)
27878
27879	* lisp/finder.el (finder-exit): Quit window instead of
27880	deleting.  This restores previous contents of the window,
27881	if any, that was usurped by "C-h p" to show the list of
27882	packages.
27883
278842019-07-20  Mauro Aranda  <maurooaranda@gmail.com>
27885
27886	Remove duplicated code in octave-eldoc-function
27887
27888	* lisp/progmodes/octave.el (octave-eldoc-function): The
27889	test of position of the opening parenthesis in
27890	inferior-octave-process was duplicated.  Remove one of
27891	the tests.  (Bug#36557)
27892
278932019-07-19  Oleh Krehel  <ohwoeowho@gmail.com>
27894
27895	* lisp/files.el (file-size-function): New defcustom
27896
278972019-07-19  Mattias Engdegård  <mattiase@acm.org>
27898
27899	Neater free disk space formatting
27900
27901	* lisp/files.el (get-free-disk-space): Update doc string.
27902	Use `iec' style and proper spacing.
27903
279042019-07-19  Martin Rudalics  <rudalics@gmx.at>
27905
27906	Have 'display-buffer-reuse-window' prefer window on selected frame (Bug#36680)
27907
27908	* lisp/window.el (display-buffer-reuse-window): Preferably reuse
27909	window on selected frame (Bug#36680).
27910	* doc/lispref/windows.texi (Buffer Display Action Functions): Say
27911	that 'display-buffer-reuse-window' prefers window on the selected
27912	frame.
27913
279142019-07-18  Noam Postavsky  <npostavs@gmail.com>
27915
27916	Don't load elec-pair in elisp-mode (Bug#36539)
27917
27918	* lisp/progmodes/elisp-mode.el (emacs-lisp-set-electric-text-pairs):
27919	New function.
27920	(emacs-lisp-mode): Add it to electric-pair-mode-hook, if elec-pair
27921	hasn't been loaded yet.
27922
279232019-07-18  Stefan Kangas  <stefankangas@gmail.com>
27924
27925	Use lexical-binding in help-fns-tests.el (Bug#36585)
27926
27927	* test/lisp/help-fns-tests.el: Use lexical-binding.  Doc fix.
27928
279292019-07-18  Stefan Kangas  <stefankangas@gmail.com>
27930
27931	Declare mwheel-install obsolete (Bug#36553)
27932
27933	* lisp/mwheel.el: Update `Commentary' section.
27934	(mwheel-install): Declare obsolete in favor of mouse-wheel-mode.
27935	* etc/NEWS: Announce it.
27936
279372019-07-18  Juri Linkov  <juri@linkov.net>
27938
27939	* lisp/vc/vc-git.el (vc-git-log-search): Remove shell-quote-argument.
27940
27941	(Bug#36644)
27942
279432019-07-18  Simen Heggestøyl  <simenheg@gmail.com>
27944
27945	Use lexical-binding in asm-mode.el and add tests
27946
27947	* lisp/progmodes/asm-mode.el: Use lexical-binding.
27948	(asm-comment-char): Remove redundant :group arg.
27949	(asm-mode): Use `setq-local'.
27950	(asm-calculate-indentation): Remove moot `or'.
27951
27952	* test/lisp/progmodes/asm-mode-tests.el: New file with tests for
27953	asm-mode.el.
27954
279552019-07-18  Michael Albinus  <michael.albinus@gmx.de>
27956
27957	Determine `file-notify' handler in Tramp from `special-event-map'.
27958
27959	* lisp/net/tramp-sh.el (tramp-sh-gio-monitor-process-filter)
27960	(tramp-sh-gvfs-monitor-dir-process-filter)
27961	(tramp-sh-inotifywait-process-filter): Determine `file-notify'
27962	handler from `special-event-map'.
27963
279642019-07-18  Stefan Monnier  <monnier@iro.umontreal.ca>
27965
27966	* lisp/server.el (server-ensure-safe-dir): Revert part of b663c8372495
27967
27968	A non-cosmetic change that was mistakenly included.
27969
279702019-07-18  Glenn Morris  <rgm@gnu.org>
27971
27972	Update a tramp test for get-free-disk-space change
27973
27974	* test/lisp/net/tramp-tests.el (tramp-test17-insert-directory):
27975	Handle optional unit suffix in free space.
27976
279772019-07-18  Oleh Krehel  <ohwoeowho@gmail.com>
27978
27979	* lisp/files.el (get-free-disk-space): Use file-size-human-readable
27980
27981	Since there is no longer an option to do:
27982
27983	    (setq directory-free-space-args "-Pmh")
27984
279852019-07-18  Eli Zaretskii  <eliz@gnu.org>
27986
27987	* lisp/abbrev.el (abbrev-prefix-mark): Fix a typo.  (Bug#36715)
27988
279892019-07-17  Eric Abrahamsen  <eric@ericabrahamsen.net>
27990
27991	Fix indexing of Gnus entry in gnus-group-unsubscribe-group
27992
27993	* lisp/gnus/gnus-group.el (gnus-group-unsubscribe-group): Hopefully
27994	  that's the last of these.
27995
279962019-07-17  Stephen Leake  <stephen_leake@stephe-leake.org>
27997
27998	Add xref-file-name-display
27999
28000	* lisp/progmodes/xref.el (xref-file-name-display): New user variable.
28001	(xref-location-group): Use it.
28002
28003	* etc/NEWS: Mention it.
28004
280052019-07-17  Nick Drozd  <nicholasdrozd@gmail.com>
28006
28007	* test/lisp/progmodes/cc-mode-tests.el: Add a test with /***/ in #define lines
28008
280092019-07-17  Alan Mackenzie  <acm@muc.de>
28010
28011	* lisp/progmodes/cc-fonts.el (gtkdoc-font-lock-keywords): Fix faulty regexp
28012
280132019-07-16  Glenn Morris  <rgm@gnu.org>
28014
28015	An electric test is now passing
28016
28017	* test/lisp/electric-tests.el
28018	(electric-pair-whitespace-chomping-2-at-point-4-in-c++-mode-in-strings):
28019	Seems to pass since today's cc-mode changes.
28020
280212019-07-16  Glenn Morris  <rgm@gnu.org>
28022
28023	* lisp/wid-edit.el: Previous change needs subr-x.
28024
280252019-07-16  Sam Steingold  <sds@gnu.org>
28026
28027	Treat the "Link" link in gnus-summary-browse-urls specially
28028
28029	* lisp/gnus/gnus-sum.el (gnus-collect-urls): Make sure that
28030	the URL labeled "Link" is the first in the return list.
28031	(gnus-summary-browse-url): Use the 1st URL as the default.
28032	* lisp/wid-edit.el (widget-text): New function.
28033
280342019-07-16  Alan Mackenzie  <acm@muc.de>
28035
28036	CC Mode: allow bogusly "adjacent" double quote marks to pair up syntactically
28037
28038	For this introduce the text property c-fl-syn-tab to "mirror" syntax-table.
28039
28040	* lisp/progmodes/cc-defs.el (c-is-escaped, c-will-be-escaped, c-put-syn-tab)
28041	(c-clear-syn-tab, c-clear-syn-tab-properties, c-with-extended-string-fences):
28042	new macros.
28043	(c-point): Use c-is-escaped
28044	(c-search-forward-char-property, c-search-backward-char-property)
28045	(c-search-forward-char-property-with-value-on-char)
28046	(c-search-forward-char-property-without-value-on-char): Fix regexp error
28047	involving \n.
28048
28049	* lisp/progmodes/cc-engine.el (c-semi-pp-to-literal): User
28050	c-with-extended-string-fences around a parse-partial-sexp.
28051	(c-full-get-near-cache-entry): Fix an off-by-one error.
28052	(c-full-pp-to-literal): Avoid writing duplicate entries into a cache.
28053	(c-after-change-unmark-raw-strings): Use c-clear-syn-tab-properties.
28054
28055	* lisp/progmodes/cc-mode.el (c-leave-cc-mode-mode): Clear the c-fl-syn-tab
28056	properties, too.
28057	(c-basic-common-init): Mark c-fl-syn-tab as a non-sticky text property.
28058	(c-depropertize-new-text): Also handle c-fl-syn-tab.
28059	(c-multiline-string-check-final-quote, c-parse-quotes-after-change): Use
28060	c-is-escaped.
28061	(c-fl-syn-tab-region): New variable.
28062	(c-clear-string-fences, c-restore-string-fences, c-remove-string-fences): New
28063	functions.
28064	(c-before-change-check-unbalanced-strings)
28065	(c-after-change-mark-abnormal-strings, c-after-change-escape-NL-in-string):
28066	Use the new functions and macros.
28067	(c-before-change, c-after-change, c-font-lock-fontify-region): Restore the
28068	syntax-table text properties from c-fl-syn-tab text properties for these
28069	functions.
28070	(c-electric-pair-inhibit-predicate): Test the c-fl-syn-tab property rather
28071	than syntax-table.
28072
280732019-07-16  Basil L. Contovounesios  <contovob@tcd.ie>
28074
28075	Fix failing secrets-test03-items
28076
28077	* test/lisp/net/secrets-tests.el: Use lexical-binding.
28078	(secrets-test03-items): Do not assume :xdg:schema attribute is
28079	silently added to the front of the collection (bug#36694).
28080	(secrets-test04-search, secrets-test-all): Quote function symbols as
28081	such.
28082
280832019-07-16  Mattias Engdegård  <mattiase@acm.org>
28084
28085	Fix calc number formatting with digit grouping (bug#36689)
28086
28087	The functions math-format-hex and math-format-octal were not
28088	implemented, yet called, leading to a crash when using hex or octal
28089	radix with digit grouping.
28090
28091	* test/lisp/calc/calc-tests.el (calc-test-format-radix): New test.
28092	* lisp/calc/calc-ext.el: Don't declare non-existing functions.
28093	(math--format-integer-fancy): Don't call non-existing functions.
28094	* lisp/calc/calc-bin.el (math-format-binary, math-binary-digits):
28095	Simplify, fixing 0-padding bug.
28096
280972019-07-16  Lars Ingebrigtsen  <larsi@gnus.org>
28098
28099	Revert "Add support for paths to svg.el"
28100
28101	This reverts commit d6bc55ae2dc98c83e58a28e380ce4bcf2ed00bb3.
28102
28103	Paperwork not ready for Felix Klee; will reapply once that's in place.
28104
281052019-07-16  Lars Ingebrigtsen  <larsi@gnus.org>
28106
28107	Revert "* doc/lispref/display.texi (SVG Images): Add menu for subsection."
28108
28109	This reverts commit e5cd597c7736b587f80c16fde1c53f904d921310.
28110
28111	Paperwork nod ready for the SVG Path patch.
28112
281132019-07-16  Mattias Engdegård  <mattiase@acm.org>
28114
28115	Set revert-buffer-function in ert-results-mode
28116
28117	* lisp/emacs-lisp/ert.el (ert-results-mode): Set revert-buffer-function
28118	to re-run the same test selection.  It is a good fit and permits use of
28119	the standard "g" key binding.
28120
281212019-07-16  Stephen Berman  <stephen.berman@gmx.net>
28122
28123	Prevent infinite loop on entering wdired-mode
28124
28125	* lisp/wdired.el (wdired-preprocess-symlinks): Remove unneeded use
28126	of beginning-of-line, which also triggers an infinite loop in a
28127	find-dired buffer that doesn't end with a newline (see discussion
28128	in bug#35609).
28129
281302019-07-15  Juri Linkov  <juri@linkov.net>
28131
28132	* lisp/vc/vc.el (vc-log-search): New command (bug#36644).
28133
28134	* lisp/vc/vc-git.el (vc-git-log-search): New function.
28135	(vc-git-log-view-mode): Check vc-log-view-type for log-search.
28136
281372019-07-15  Juri Linkov  <juri@linkov.net>
28138
28139	* lisp/vc/vc-dir.el (vc-dir-search): Remove lambda.
28140
28141	(Bug#31578) Thanks to Dmitry Gutov <dgutov@yandex.ru>
28142
281432019-07-15  Juri Linkov  <juri@linkov.net>
28144
28145	* lisp/frame.el (make-frame-on-display): Use x-display-list in completion.
28146
28147	(Bug#29713)
28148
281492019-07-15  Juri Linkov  <juri@linkov.net>
28150
28151	* lisp/progmodes/sh-script.el (sh-assignment): Put delete-selection on symbol
28152
281532019-07-15  Glenn Morris  <rgm@gnu.org>
28154
28155	* doc/lispref/display.texi (SVG Images): Add menu for subsection.
28156
281572019-07-15  Stefan Monnier  <monnier@iro.umontreal.ca>
28158
28159	* lisp/gnus/nntp.el: Use lexical-binding
28160
28161	(nntp-server-action-alist): Expose the code to the compiler.
28162	(nntp-with-open-group-function): No need to obfuscate identifiers any more.
28163	(nntp-authinfo-rejected): Use `define-error`.
28164
281652019-07-15  Lars Ingebrigtsen  <larsi@gnus.org>
28166
28167	Fix INITIAL-INPUT cons handling in ido-read-internal
28168
28169	* lisp/ido.el (ido-read-internal): Is INITIAL-INPUT is a cons that
28170	specifies cursor position, adjust the number to be palatable for
28171	`read-for-minibuffer' (bug#27807).
28172
281732019-07-15  Lars Ingebrigtsen  <larsi@gnus.org>
28174
28175	Fix saving certificates in the NSM on high security levels
28176
28177	* lisp/net/nsm.el (nsm-check-certificate): `nsm-fingerprint-ok-p'
28178	will save the fingerprint in the correct temporary/permanent
28179	storage, so saving it once more (in the permanent storage) if the
28180	security level is high or greater is a mistake (bug#27823).
28181
281822019-07-15  Lars Ingebrigtsen  <larsi@gnus.org>
28183
28184	Tweak mouse-face highlighting of Occur buffers
28185
28186	* lisp/replace.el (occur-engine): Ensure that the mouse highlight
28187	is done over the entire line (bug#27846).
28188
281892019-07-15  Lars Ingebrigtsen  <larsi@gnus.org>
28190
28191	open-dribble-file doc string clarification
28192
28193	* src/keyboard.c (Fopen_dribble_file): Clarify when the file is
28194	closed, and when events are written to the file (bug#27996).
28195
281962019-07-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
28197
28198	Possibly skip IMAP server FETCH responses
28199
28200	See bug#35433
28201
28202	* lisp/gnus/nnimap.el (nnimap-transform-headers): Skip FETCH responses
28203	  that only provide message flags, not message headers.
28204
282052019-07-15  Felix E. Klee  <felix.klee@inka.de>
28206
28207	Add support for paths to svg.el
28208
28209	* doc/lispref/display.texi (SVG Images): Document svg-path,
28210	svg-clip-path and svg-node (bug#32359).
28211
28212	* doc/lispref/display.texi (SVG Path Commands): New node.
28213
28214	* lisp/svg.el (svg--plist-delete, svg--path-command-symbol)
28215	(svg--elliptical-arc-coordinates, svg--elliptical-arc-command)
28216	(svg--moveto-command, svg--closepath-command)
28217	(svg--lineto-command, svg--horizontal-lineto-command)
28218	(svg--vertical-lineto-command, svg--curveto-command)
28219	(svg--smooth-curveto-command)
28220	(svg--quadratic-bezier-curveto-command)
28221	(svg--smooth-quadratic-bezier-curveto-command)
28222	(svg--eval-path-command, svg-path, svg-clip-path, svg-node): New
28223	functions.
28224
282252019-07-15  Lars Ingebrigtsen  <larsi@gnus.org>
28226
28227	Revert "Add edebug specs for inline.el"
28228
28229	This reverts commit ed29d9fe5286ab6ecfb2bfa5a015b9945a84512b.
28230
28231	The edebug specs were already in the declare form, and in addition, it didn't fix the problem.
28232
282332019-07-15  Lars Ingebrigtsen  <larsi@gnus.org>
28234
28235	Mention changing the font size in the Emacs manual
28236
28237	* doc/emacs/frames.texi (Fonts): Mention changing the font scale
28238	(bug#28196).
28239
282402019-07-15  Samuel Bronson  <naesten@gmail.com>
28241
28242	Mark semantic functions correctly in defcustom
28243
28244	* lisp/cedet/semantic/format.el (semantic-format-tag-custom-list):
28245	Mark functions correctly in defcustom (bug#28267).
28246
282472019-07-15  Lars Ingebrigtsen  <larsi@gnus.org>
28248
28249	Clarify doc of isearch-wrap-function
28250
28251	* lisp/isearch.el (isearch-wrap-function): Doc clarification
28252	(bug#28388).
28253
282542019-07-15  Robert Pluim  <rpluim@gmail.com>
28255
28256	Don't delete GnuTLS boot parameters too early
28257
28258	* src/process.c (connect_network_socket): Don't delete the GnuTLS
28259	boot parameters until after we've managed to connect at the IP
28260	level (bug#36660).
28261
282622019-07-15  Lars Ingebrigtsen  <larsi@gnus.org>
28263
28264	Fix *Messages* grouping in C-Mouse-1 buffer menu
28265
28266	* lisp/mouse.el (mouse-buffer-menu-mode-groups): Don't group the
28267	*Messages* buffer with Mail/News (bug#32007).
28268
282692019-07-15  Michael Albinus  <michael.albinus@gmx.de>
28270
28271	* lisp/net/tramp-cmds.el (tramp-bug, tramp-append-tramp-buffers):
28272
28273	Don't cancel if debug buffers aren't appended.
28274
282752019-07-15  Lars Ingebrigtsen  <larsi@gnus.org>
28276
28277	Make directory-files-recursively take a PREDICATE parameter
28278
28279	* lisp/files.el (directory-files-recursively): Take an optional
28280	PREDICATE parameter (bug#28567).
28281
28282	* doc/lispref/files.texi (Contents of Directories): Document it.
28283
282842019-07-15  Lars Ingebrigtsen  <larsi@gnus.org>
28285
28286	Tweak gv-define-setter debug setting
28287
28288	* lisp/emacs-lisp/gv.el (gv-define-setter): Change edebug spec
28289	from body to def-body (bug#28729).
28290
282912019-07-15  Michael Albinus  <michael.albinus@gmx.de>
28292
28293	Fix edge cases in Tramp's copy
28294
28295	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
28296	Special handling for "rsync".
28297	(tramp-find-inline-compress): Make check more robust on MS Windows.
28298
282992019-07-14  Lars Ingebrigtsen  <larsi@gnus.org>
28300
28301	package-archive-priorities doc addition
28302
28303	* lisp/emacs-lisp/package.el (package-archive-priorities):
28304	Document that negative priorities will lead to packages not being
28305	updated (bug#28897).
28306
283072019-07-14  Glenn Morris  <rgm@gnu.org>
28308
28309	Stop wdired tests leaving behind symlink /tmp/emacs1000
28310
28311	* test/lisp/wdired-tests.el (server-socket-dir): Make effective.
28312
283132019-07-14  Lars Ingebrigtsen  <larsi@gnus.org>
28314
28315	Mark octave-block-offset as a safe local variable
28316
28317	* lisp/progmodes/octave.el (octave-block-offset): Mark as safe as
28318	a local variable (bug#28916).
28319
283202019-07-14  Glenn Morris  <rgm@gnu.org>
28321
28322	Update a ffap test
28323
28324	* test/lisp/ffap-tests.el (ffap-other-window--bug-25352):
28325	Update for incompatible ffap-other-window change.
28326
283272019-07-14  Lars Ingebrigtsen  <larsi@gnus.org>
28328
28329	Make elint understand condition-case-unless-debug
28330
28331	* lisp/emacs-lisp/elint.el (elint-special-forms): Teach elint
28332	about `condition-case-unless-debug' (bug#29585).
28333
283342019-07-14  Lars Ingebrigtsen  <larsi@gnus.org>
28335
28336	Fix prompting in functions like ffap-read-only
28337
28338	* lisp/ffap.el (ffap-prompter, ffap-other-window)
28339	(ffap-other-frame, ffap-read-only)
28340	(ffap-read-only-other-window, ffap-read-only-other-frame)
28341	(ffap-alternate-file, ffap-alternate-file-other-window)
28342	(ffap-literally): Rework to be able to specify different prompts
28343	for different actions (bug#30284) and don't use
28344	`call-interactively' all over the place.
28345
283462019-07-14  Lars Ingebrigtsen  <larsi@gnus.org>
28347
28348	Make describe-face also output the version information
28349
28350	* lisp/help-fns.el (describe-variable-custom-version-info): Allow
28351	taking a type as an optional input, so this can be used for faces,
28352	too (bug#30527).
28353
28354	* lisp/faces.el (describe-face): Use this to output the version
28355	information.
28356
283572019-07-14  Alan Third  <alan@idiocy.org>
28358
28359	Use correct colorspace for XBM images
28360
28361	* src/nsimage.m ([EmacsImage setXBMColor:]): Use 'generic RGB' color
28362	space.
28363
283642019-07-14  Lars Ingebrigtsen  <larsi@gnus.org>
28365
28366	Revert "Make describe-face also output the version information"
28367
28368	This reverts commit a7aae1473c1aed7758b550a23cda61ee17668e23.
28369
28370	The patch broke the build.
28371
283722019-07-14  Lars Ingebrigtsen  <larsi@gnus.org>
28373
28374	Tweak bug ID prompting in gnus-group--read-bug-ids
28375
28376	* lisp/gnus/gnus-group.el (gnus-group--read-bug-ids): Default to
28377	current bug id on RET.
28378
283792019-07-14  Lars Ingebrigtsen  <larsi@gnus.org>
28380
28381	Make describe-face also output the version information
28382
28383	* lisp/help-fns.el (describe-variable-custom-version-info): Allow
28384	taking a type as an optional input, so this can be used for faces,
28385	too (bug#30527).
28386
28387	* lisp/faces.el (describe-face): Use this to output the version
28388	information.
28389
283902019-07-14  Noam Postavsky  <npostavs@gmail.com>
28391
28392	Use ngettext in vc-dir-clean-files
28393
28394	* lisp/vc/vc-dir.el (vc-dir-clean-files): Use ngettext to separate
28395	pluralization from format string.
28396
283972019-07-14  Lars Ingebrigtsen  <larsi@gnus.org>
28398
28399	Tweak background colour handling in shr
28400
28401	* lisp/net/shr.el (shr-fill-line): Keep the background colour on
28402	the newline and the indentation.
28403
284042019-07-14  Lars Ingebrigtsen  <larsi@gnus.org>
28405
28406	Rename vc-dir-delete-files-no-vc to vc-dir-clean-files
28407
28408	* doc/emacs/maintaining.texi (VC Directory Commands): Adjust
28409	command name.
28410
28411	* lisp/vc/vc-dir.el (vc-dir-clean-files): Rename from
28412	vc-dir-delete-files-no-vc, and work on unregistered files only
28413	(bug#31732).
28414	(vc-dir-menu-map): Adjust command name.
28415
284162019-07-14  Eric Ludlam  <zappo@gnu.org>
28417
28418	Allow bad tags in Scheme
28419
28420	* admin/grammars/scheme.by (scheme-in-list): Allow bad tags in
28421	Scheme (bug#36521).
28422
284232019-07-13  Nick Drozd  <nicholasdrozd@gmail.com>
28424
28425	* etc/NEWS: Announce new Georgian inputs.  (Bug#36639)
28426
28427	* etc/HELLO: Fix name of Georgian language
28428
28429	* lisp/leim/quail/georgian.el: Add georgian-nuskhuri input method
28430
28431	* lisp/leim/quail/georgian.el: Add missing characters to georgian input
28432
28433	* lisp/leim/quail/georgian.el: Add georgian-qwerty input method
28434
284352019-07-13  Stefan Kangas  <stefankangas@gmail.com>
28436
28437	Restore focus to Bookmark List after editing annotation
28438
28439	There are two entry points to bookmark-edit-annotation-mode: the first
28440	when we add a bookmark and bookmark-use-annotations is non-nil; the
28441	second when bookmark-bmenu-edit-annotation is run from the bookmark
28442	list.  When editing is concluded, in the first case, we should just
28443	quit window.  In the second case, we should instead return to the
28444	bookmark list.
28445
28446	* lisp/bookmark.el (text-property-search): Require.
28447	(bookmark-annotation-name): Make buffer-local and improve doc string.
28448	(bookmark--annotation-from-bookmark-list): New buffer-local variable.
28449	(bookmark-edit-annotation): New argument from-bookmark-list sets
28450	bookmark--annotation-from-bookmark-list.
28451	(bookmark-bmenu-edit-annotation): Call bookmark-edit-annotation with
28452	argument from-bookmark-list set to t.
28453	(bookmark-send-edited-annotation): When editing originated in the
28454	bookmark list, restore focus to bookmark list and move point back to
28455	edited bookmark. (Bug#20150)
28456
28457	(bookmark-edit-annotation-mode): Fix typo.
28458	(bookmark-bmenu-buffer): New variable.
28459	(bookmark-bmenu-surreptitiously-rebuild-list)
28460	(bookmark-bmenu-list): Use it.
28461
28462	* test/lisp/bookmark-tests.el (with-bookmark-bmenu-test): New macro.
28463	(bookmark-tests-set/bookmark-use-annotations-t)
28464	(bookmark-bmenu-edit-annotation/show-annotation)
28465	(bookmark-bmenu-send-edited-annotation)
28466	(bookmark-bmenu-send-edited-annotation/restore-focus): New test cases.
28467
284682019-07-13  Marco Wahl  <marcowahlsoft@gmail.com>
28469
28470	New function for scroll-lock-mode to almost always scroll
28471
28472	* lisp/scroll-lock.el (scroll-lock-next-line-always-scroll): New
28473	function.  Opposed to scroll-lock-next-line it does not switch to
28474	forward-line at eob.  S-down is the default key binding for this
28475	function.  (Bug#36494)
28476	* test/lisp/scroll-lock-tests.el: A few tests for
28477	scroll-lock-next-line-always-scroll.
28478	* etc/NEWS: Announce the new command.
28479
284802019-07-13  Eli Zaretskii  <eliz@gnu.org>
28481
28482	Fix recent changes
28483
28484	* src/sysstdio.h: Include stdarg.h, for va_list.
28485
284862019-07-13  Pip Cet  <pipcet@gmail.com>
28487
28488	Avoid returning negative numbers from `hash-table-count'
28489
28490	* src/fns.c (Fhash_table_count): Rehash argument if necessary.
28491
284922019-07-13  Paul Eggert  <eggert@cs.ucla.edu>
28493
28494	* src/lisp.h (struct Lisp_Hash_Table.count): Improve comment.
28495
284962019-07-13  Noam Postavsky  <npostavs@gmail.com>
28497
28498	Remove incorrect commentary about #$ in autoloads
28499
28500	* lisp/emacs-lisp/autoload.el (autoload-rubric):
28501	`package-quickstart-refresh' does in fact support load-file-name as
28502	well.
28503
285042019-07-13  Noam Postavsky  <npostavs@gmail.com>
28505
28506	Use syntax-ppss-toplevel-pos for defvar search (Bug#34233)
28507
28508	* lisp/progmodes/elisp-mode.el (eval-sexp-add-defvars): Use
28509	syntax-ppss-toplevel-pos instead of a raw check of syntax components.
28510
285112019-07-13  Paul Eggert  <eggert@cs.ucla.edu>
28512
28513	Avoid interleaving stderr lines when shutting down
28514
28515	* src/emacs.c (shut_down_emacs) [!DOS_NT]: Avoid interleaving
28516	to stderr in the usual case, by using a single write and by
28517	appending a newline.
28518	* src/sysdep.c (emacs_backtrace) [HAVE_BACKTRACE_SYMBOLS_FD]:
28519	Omit newline since shut_down_emacs now does that.
28520
285212019-07-13  Paul Eggert  <eggert@cs.ucla.edu>
28522
28523	Use a better buffer size in emacs_perror
28524
28525	* src/sysdep.c (emacs_perror): Since the buffer is for avoiding
28526	interleaving, size it via PIPE_BUF not BUFSIZ.
28527	* src/sysstdio.h (PIPE_BUF): Provide a default.
28528
285292019-07-13  Paul Eggert  <eggert@cs.ucla.edu>
28530
28531	Avoid interleaving stderr in dump_fingerprint
28532
28533	* src/fns.c (hexbuf_digest): New function, containing most of
28534	the old make_digest_string.
28535	(make_digest_string): Use it.
28536	* src/pdumper.c (dump_fingerprint): Rewrite to use a single
28537	fprintf call, to avoid interleaving on GNU/Linux.
28538
285392019-07-13  Paul Eggert  <eggert@cs.ucla.edu>
28540
28541	Avoid interleaving stderr in a few cases
28542
28543	* src/sysdep.c (buferr): New static var.
28544	(init_standard_fds) [_PC_PIPE_BUF]: Initialize it.
28545	(errstream, errputc, verrprintf, errwrite): New functions.
28546	(close_output_streams): Check buferr status too.
28547	* src/xdisp.c: Include sysstdio.h instead of stdio.h.
28548	(message_to_stderr, vmessage): Use the new functions
28549	to avoid interleaving stderr.
28550
285512019-07-13  Andreas Schwab  <schwab@linux-m68k.org>
28552
28553	Revert "Fix typo in sh-assignment-regexp"
28554
28555	This reverts commit 194f370a3da72d560975adc2835254ce251881a7.
28556
285572019-07-13  Lars Ingebrigtsen  <larsi@gnus.org>
28558
28559	Add edebug specs for inline.el
28560
28561	* lisp/emacs-lisp/inline.el (inline-quote)
28562	(inline-letevals): Add edebug specs (bug#31051).
28563
285642019-07-13  Lars Ingebrigtsen  <larsi@gnus.org>
28565
28566	Tweak output of doc in advice--make-docstring
28567
28568	* lisp/emacs-lisp/nadvice.el (advice--make-docstring): Make the
28569	bit about the function/macro having an advice into a complete
28570	sentence (bug#31063) and make it less dramatic.
28571
285722019-07-13  Lars Ingebrigtsen  <larsi@gnus.org>
28573
28574	Add a :format to `text' widgets
28575
28576	* lisp/wid-edit.el (text): Add a :format so that the 'text fields
28577	work (bug#31309).  Suggested by Phil Sainty.
28578
285792019-07-13  Lars Ingebrigtsen  <larsi@gnus.org>
28580
28581	Doc fix for Finteractive (only %s is allowed)
28582
28583	* src/callint.c (Finteractive): Any other format spec than %s will
28584	bug out with "Format specifier doesn’t match argument type", so
28585	say explicitly that only %s is supported (bug#31314).
28586
285872019-07-13  Lars Ingebrigtsen  <larsi@gnus.org>
28588
28589	Don't have savehist-save bug out on non-existing directory
28590
28591	* lisp/savehist.el (savehist-save): Ensure that the directory
28592	exists before saving (bug#31348).
28593
285942019-07-13  Lars Ingebrigtsen  <larsi@gnus.org>
28595
28596	Fix display-fill-column-indicator custom spec typo
28597
28598	* lisp/cus-start.el (standard): Fix typo in
28599	display-fill-column-indicator custom spec.
28600
28601	Debugger entered--Lisp error: (wrong-type-argument stringp integer)
28602	  string-match("\\([0-9]+\\)\\(\\.\\([0-9]+\\)\\)?" integer)
28603	  customize-version-lessp("25.3" integer)
28604	 [...]
28605	  customize-changed-options("")
28606
286072019-07-13  Lars Ingebrigtsen  <larsi@gnus.org>
28608
28609	Make check-declare understand cl-defun
28610
28611	* lisp/emacs-lisp/check-declare.el (check-declare-verify): Add
28612	cl-defun to the defun-ish regexp (bug#31396).
28613
286142019-07-13  Lars Ingebrigtsen  <larsi@gnus.org>
28615
28616	plist-get/lax-plist-get doc fix
28617
28618	* src/fns.c (Fplist_get): Mention that comparison is done with eq
28619	(bug#31441).
28620	(Flax_plist_get): Refer to plist-get for details.
28621
286222019-07-13  Lars Ingebrigtsen  <larsi@gnus.org>
28623
28624	citeasnoun in reftex can take an optional parameter
28625
28626	* lisp/textmodes/reftex-vars.el (reftex-cite-format-builtin):
28627	citeasnoun can take an optional parameter (bug#31476).  Suggested
28628	by Konrad Podczeck.
28629
286302019-07-13  Lars Ingebrigtsen  <larsi@gnus.org>
28631
28632	Fix typo in sh-assignment-regexp
28633
28634	* lisp/progmodes/sh-script.el (sh-assignment-regexp): Fix typo in
28635	bash regexp that inhibited fontification of stuff like foo.=bar
28636	(bug#31710).
28637
286382019-07-13  Lars Ingebrigtsen  <larsi@gnus.org>
28639
28640	Mark ediff-before-session-group-setup-hooks as obsolete
28641
28642	* lisp/vc/ediff-mult.el (ediff-before-session-group-setup-hooks):
28643	Mark this apparently unused variable as obsolete (bug#36618).
28644
286452019-07-13  Lars Ingebrigtsen  <larsi@gnus.org>
28646
28647	Add a way to more conveniently log/debug nnmail splitting
28648
28649	* doc/misc/gnus.texi (Fancy Mail Splitting): Mention it.
28650
28651	* lisp/gnus/nnmail.el (nnmail-debug-splitting): New variable.
28652
28653	* lisp/gnus/nnmail.el (nnmail-log-split): New function.
28654	(nnmail-split-it): Use it.
28655
286562019-07-13  Lars Ingebrigtsen  <larsi@gnus.org>
28657
28658	Fix cl-defstruct doc string fix
28659
28660	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Remove sentence from
28661	doc string that was left in by mistake when fixing the arglist
28662	documentation.
28663
286642019-07-13  Phil Sainty  <psainty@orcon.net.nz>
28665
28666	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a docstring typo
28667
286682019-07-13  Phil Sainty  <psainty@orcon.net.nz>
28669
28670	* lisp/so-long.el (so-long-variable-overrides): Improve doc
28671
28672	Explain the 'line-move-visual' and 'truncate-lines' values.
28673
286742019-07-13  Phil Sainty  <psainty@orcon.net.nz>
28675
28676	* lisp/so-long.el (so-long-variable-overrides): Use correct bidi option
28677
28678	Set 'bidi-paragraph-direction' to 'left-to-right', rather than setting
28679	'bidi-display-reordering' to nil, as the latter is only intended for
28680	use when debugging the display code.
28681
286822019-07-13  Michael Albinus  <michael.albinus@gmx.de>
28683
28684	Make check for compression programs more robust in Tramp
28685
28686	* lisp/net/tramp-sh.el (tramp-inline-compress-start-size):
28687	Revert change of init value.  We fix this differently.
28688	(tramp-find-inline-compress): Check also the output of the
28689	processes, not only the return code.
28690
286912019-07-13  Michael Albinus  <michael.albinus@gmx.de>
28692
28693	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Adapt docstring.
28694
286952019-07-13  Eli Zaretskii  <eliz@gnu.org>
28696
28697	Fix TTY menus in GUD and GDB-MI modes
28698
28699	* lisp/menu-bar.el (menu-bar-open): Accept a numerical
28700	argument interactively, and drop down menu at that X
28701	coordinate.
28702	(popup-menu): Detect when MENU is not a list.  (Bug#36613)
28703
287042019-07-13  Eli Zaretskii  <eliz@gnu.org>
28705
28706	Avoid loading mule-util at startup
28707
28708	* lisp/international/mule-util.el (char-displayable-p): Move
28709	from here...
28710	* lisp/international/mule.el (char-displayable-p): ...to
28711	here.  This avoids always loading mule-util at startup due
28712	to a call to 'char-displayable-p' in
28713	'startup--setup-quote-display'.
28714
287152019-07-13  Eli Zaretskii  <eliz@gnu.org>
28716
28717	Improve documentation of So Long mode
28718
28719	* doc/emacs/trouble.texi (Long Lines): Improve wording, add
28720	indexing, mention the mode name and its main customization
28721	options.
28722
287232019-07-13  Stefan Kangas  <stefankangas@gmail.com>
28724
28725	Fix looking up functions like "-e" in cperl-mode
28726
28727	* lisp/progmodes/cperl-mode.el (cperl-perldoc): Handle functions with
28728	leading dash (e.g. "-f"). (Bug#6013)
28729
287302019-07-13  Eli Zaretskii  <eliz@gnu.org>
28731
28732	Fix last commit
28733
28734	* etc/NEWS: Fix formatting and punctuation of last change.
28735
28736	* lisp/isearch.el (isearch-highlight-regexp)
28737	(isearch-highlight-lines-matching-regexp): Doc fix.
28738
287392019-07-13  Dima Kogan  <dima@secretsauce.net>
28740
28741	Add ability to highlight-lines-matching-regexp directly from Isearch
28742
28743	* lisp/isearch.el: Implement the new functionality.
28744	(isearch-highlight-lines-matching-regexp): New function bound
28745	to 'M-s h l' in isearch.
28746	(isearch--highlight-regexp-or-lines): New internal function.
28747
28748	* etc/NEWS (Search and Replace): Mention this change.
28749
28750	* doc/emacs/search.texi (Special Isearch): Document 'M-s h l'.
28751	(Bug#18241)
28752
287532019-07-12  Phil Sainty  <psainty@orcon.net.nz>
28754
28755	Merge branch 'scratch/so-long'
28756
28757	Add tests for so-long.el
28758
287592019-07-12  Phil Sainty  <psainty@orcon.net.nz>
28760
28761	Add so-long library
28762
28763	* lisp/so-long.el: New library.
28764	* doc/emacs/trouble.texi (Long Lines): New node covering so-long.el.
28765	* doc/emacs/emacs.texi (Top): Add menu entry for the Long Lines node.
28766	* etc/NEWS: Include under "New Modes and Packages in Emacs 27.1"
28767
287682019-07-12  Paul Eggert  <eggert@cs.ucla.edu>
28769
28770	Replace Vdead with tagged pointer
28771
28772	This speeds up ‘make compile-always’ by 0.1% on my platform.
28773	Suggested by Pip Cet in:
28774	https://lists.gnu.org/r/emacs-devel/2019-07/msg00257.html
28775	* src/.gdbinit (pwinx, pgx, xbuffer, xprintstr):
28776	Output dead_object () as "DEAD".
28777	* src/alloc.c (Vdead, DEADP): Remove.
28778	All uses replaced by dead_object () / deadp.
28779	(deadp): New function.
28780	(init_alloc_once_for_pdumper): Remove no-longer-needed
28781	initialization.
28782	* src/lisp.h (dead_object): New function.
28783
287842019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28785
28786	Mention columns width variables in the buffer-menu doc string
28787
28788	* lisp/buff-menu.el (buffer-menu): Mention the variables that can
28789	be used to change the columns widths (bug#36587).
28790
287912019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28792
28793	Mention `M-n' for VALUE in the `set-variable' command
28794
28795	* lisp/simple.el (set-variable): Mention that the current variable
28796	is accessible in `M-n' (bug#36586).
28797
287982019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28799
28800	Mark the new vc-dir-delete command as documented
28801
288022019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28803
28804	Add a new command in vc-dir mode to delete files
28805
28806	* doc/emacs/maintaining.texi (VC Directory Commands): Document it.
28807
28808	* lisp/vc/vc-dir.el (vc-dir-delete-files-no-vc): New command and
28809	keystroke (bug#31732).
28810
288112019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28812
28813	Add more spook.lines
28814
28815	* etc/spook.lines: Add Black Cube (bug#32309)
28816	(https://en.wikipedia.org/wiki/Black_Cube).
28817
288182019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28819
28820	Document fix for cl-defstruct
28821
28822	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Document that we can
28823	have a doc string (bug#32340).
28824
288252019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28826
28827	Allow using wdired in all dired-derived modes
28828
28829	* lisp/wdired.el (wdired-change-to-wdired-mode): Allow using in
28830	dired derived modes (bug#32392).  Suggested by James Nguyen.
28831
288322019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28833
28834	Add some indices for regexp character classes
28835
28836	* doc/lispref/searching.texi (Char Classes): Add some concept
28837	index entries for a handful of character classes (bug#32430).
28838
288392019-07-12  Tino Calancha  <tino.calancha@gmail.com>
28840
28841	End predicate `dired-in-this-tree' with '-p'
28842
28843	* lisp/dired.el(dired-in-this-tree-p): Rename from `dired-in-this-tree'.
28844	Add docstring.
28845
28846	(dired-in-this-tree): Define an alias to `dired-in-this-tree-p'.
28847
28848	(dired-buffers-for-dir)
28849	* lisp/dired-aux.el (dired-tree-down, dired-kill-tree)
28850	(dired-insert-subdir, dired-rename-subdir): Update all callers (bug#32892).
28851
288522019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28853
28854	Document format-spec and expand the modifiers it supports
28855
28856	* doc/lispref/text.texi (Interpolated Strings): New section.
28857	* lisp/format-spec.el (format-spec--parse-modifiers)
28858	(format-spec--pad): New functions.
28859	(format-spec): Support more format modifiers (bug#32931).
28860
288612019-07-12  Teemu Likonen  <tlikonen@iki.fi>
28862
28863	Use the gpg --sender option
28864
28865	* lisp/epg.el (epg-start-encrypt)
28866	* lisp/gnus/mml-sec.el (mml-secure-epg-encrypt): When
28867	'mml-secure-openpgp-sign-with-sender' is non-nil message sender's
28868	email address (in addition to its old behaviour) will also be used
28869	to set gpg's "--sender email@domain" option.
28870
288712019-07-12  Paul Eggert  <eggert@cs.ucla.edu>
28872
28873	* lib-src/make-docfile.c: Fix comment typo.
28874
288752019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28876
28877	Always include the number of unexpected ert tests
28878
28879	* lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
28880	Always include the number of failed tests, because absence of the
28881	text is not reassuring (bug#36616).
28882
288832019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28884
28885	Fix long credentials when using auth in nnimap.el
28886
28887	* lisp/gnus/nnimap.el (nnimap-login): When base64-ing
28888	credentials, don't let bsae64-encode-string split the result into
28889	several lines, because servers do not understand that (bug#34458).
28890
288912019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28892
28893	Fix long credentials when using auth in url.el
28894
28895	* lisp/url/url-auth.el (url-basic-auth): When base64-ing
28896	credentials, don't let bsae64-encode-string split the result into
28897	several lines, because servers do not understand that (bug#36619).
28898
288992019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28900
28901	Fold rfc2047 headers correctly when narrowed to header value
28902
28903	* lisp/mail/rfc2047.el (rfc2047-fold-region): Fold headers
28904	correctly if narrowed to the header value.
28905
289062019-07-12  Juri Linkov  <juri@linkov.net>
28907
28908	* test/lisp/replace-tests.el (replace-tests-with-undo): Override
28909
28910	replace-highlight to emulate clobbering match-data (bug#36328).
28911
289122019-07-12  Juri Linkov  <juri@linkov.net>
28913
28914	* lisp/progmodes/compile.el (compilation-filter): `compilation--ensure-parse'
28915
28916	is used instead of `font-lock-ensure' (bug#36564).
28917
28918	* test/lisp/progmodes/compile-tests.el (compile-test-error-regexps)
28919	(compile-test-grep-regexps): Check the number of errors.
28920
289212019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28922
28923	Remove initial and trailing whitespace in message-fetch-field
28924
28925	* lisp/gnus/message.el (message-fetch-field): Remove initial and
28926	trailing whitespace.
28927
289282019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28929
28930	Fix breaking of rfc2047 headers with long words
28931
28932	* lisp/mail/rfc2047.el (rfc2047-fold-region): Don't break lines
28933	right after the Header: field, but wait until the next
28934	whitespace.  (This only makes a difference for words that are very
28935	long (i.e., longer than, say, 60 characters, depending on the
28936	header name length.)
28937
289382019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28939
28940	Refactor rfc2047-fold-region slightly and add a couple of tests
28941
28942	* lisp/mail/rfc2047.el (rfc2047--break-line): Refactor out to
28943	avoid code repetition...
28944	(rfc2047-fold-region): ... from this function.
28945
289462019-07-12  Lars Ingebrigtsen  <larsi@gnus.org>
28947
28948	Add comments to rfc2047
28949
28950	* lisp/mail/rfc2047.el (rfc2047-fold-region): Add comments to the
28951	function.
28952
289532019-07-12  Michael Albinus  <michael.albinus@gmx.de>
28954
28955	Merge from origin/emacs-26
28956
28957	305abae50e Raise required librsvg version so as to match the current use
28958	c6775bc9ca * lisp/net/tramp-sh.el (tramp-inline-compress-start-size):...
28959
289602019-07-12  Michael Albinus  <michael.albinus@gmx.de>
28961
28962	Check directory in Tramp's {copy,rename}-file
28963
28964	* lisp/net/tramp-adb.el (tramp-adb-handle-copy-file)
28965	(tramp-adb-handle-rename-file):
28966	* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
28967	* lisp/net/tramp-rclone.el (tramp-rclone-do-copy-or-rename-file):
28968	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file):
28969	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-file)
28970	(tramp-smb-handle-rename-file):
28971	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-do-copy-or-rename-file):
28972	Check, that NEWNAME is not a directory given as file name.
28973
28974	* test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
28975	(tramp-test12-rename-file): Extend tests.
28976
289772019-07-12  Michael Albinus  <michael.albinus@gmx.de>
28978
28979	Re-add tramp-autoload cookie for all defcustoms
28980
28981	* lisp/net/tramp-adb.el (tramp-adb-program)
28982	(tramp-adb-connect-if-not-connected, tramp-adb-prompt):
28983	* lisp/net/tramp-cache.el (tramp-persistency-file-name):
28984	* lisp/net/tramp-gvfs.el (tramp-gvfs-zeroconf-domain):
28985	* lisp/net/tramp-rclone.el (tramp-rclone-program):
28986	* lisp/net/tramp-sh.el (tramp-copy-size-limit, tramp-histfile-override)
28987	(tramp-use-ssh-controlmaster-options):
28988	* lisp/net/tramp-smb.el (tramp-smb-program, tramp-smb-acl-program)
28989	(tramp-smb-conf, tramp-smb-winexe-program)
28990	(tramp-smb-winexe-shell-command)
28991	(tramp-smb-winexe-shell-command-switch): Re-add tramp-autoload
28992	cookie for all defcustoms.
28993
28994	* lisp/net/tramp-adb.el (tramp-adb-handle-copy-file)
28995	(tramp-adb-handle-rename-file):
28996	* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
28997	* lisp/net/tramp-rclone.el (tramp-rclone-do-copy-or-rename-file):
28998	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file):
28999	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-file)
29000	(tramp-smb-handle-rename-file):
29001	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-do-copy-or-rename-file):
29002	Check, that NEWNAME is not a directory given as file name.
29003
290042019-07-12  Michael Albinus  <michael.albinus@gmx.de>
29005
29006	* doc/misc/tramp.texi (Inline methods): Precise about used external programs.
29007
290082019-07-12  Michael Albinus  <michael.albinus@gmx.de>
29009
29010	Change Tramp version to 2.4.3-pre
29011
29012	* doc/misc/trampver.texi:
29013	* lisp/net/trampver.el: Change version to "2.4.3-pre".
29014
29015	* lisp/net/tramp.el: Bump version to 2.4.3-pre.
29016
290172019-07-11  Paul Eggert  <eggert@cs.ucla.edu>
29018
29019	Tweak builtin symbol order for speed
29020
29021	* lib-src/make-docfile.c (compare_globals):
29022	Make symbols 1 through 4 be t, unbound, error, lambda.
29023	This is in addition to symbol 0 being nil.
29024	This change improved ‘make compile-always’ performance by 0.6%
29025	on my platform.
29026
290272019-07-11  Paul Eggert  <eggert@cs.ucla.edu>
29028
29029	Avoid duplicate comparison in describe_map_compare
29030
29031	* src/fns.c (string_version_cmp): New function.
29032	This has most of the old Fstring_version_lessp,
29033	with an assertion to make things a bit clearer.
29034	* src/fns.c (Fstring_version_lessp):
29035	* src/keymap.c (describe_map_compare): Use it (Bug#33237).
29036
290372019-07-11  Juri Linkov  <juri@linkov.net>
29038
29039	* lisp/progmodes/compile.el (compilation-filter): Use font-lock-ensure
29040
29041	to update the number of errors in compilation-mode-line-errors
29042	displayed in the mode-line.  (Bug#36564)
29043
290442019-07-11  Juri Linkov  <juri@linkov.net>
29045
29046	Better match-data handling in perform-replace
29047
29048	* lisp/replace.el (perform-replace): Don't wrap replace-highlight
29049	in save-match-data.  Use `(nth 0 real-match-data)' instead of
29050	`(match-beginning 0)' after replace-highlight.  (Bug#36328)
29051
290522019-07-11  Michael Albinus  <michael.albinus@gmx.de>
29053
29054	Remove lisp/obsolete/xesam.el
29055
29056	* test/lisp/format-spec-tests.el (test-format-unknown): Use `should-error'.
29057
290582019-07-11  Lars Ingebrigtsen  <larsi@gnus.org>
29059
29060	Allow passing unknown specs to format-spec
29061
29062	* lisp/format-spec.el (format-spec): Allow passing through format
29063	strings that have no specs (to be able to act as a filter).  Also
29064	add an example.
29065	* test/lisp/format-spec-tests.el (test-format-spec): Add tests for
29066	the new functionality.
29067
290682019-07-11  Lars Ingebrigtsen  <larsi@gnus.org>
29069
29070	Add tests for format-spec
29071
29072	Add test to time-stamp.el
29073
290742019-07-11  Phil Sainty  <psainty@orcon.net.nz>
29075
29076	Support program switches in 'comint-run' command
29077
29078	* etc/NEWS:
29079	* doc/emacs/misc.texi: Describe new behaviour (bug#33037).
29080	* lisp/comint.el (comint-run): Add optional SWITCHES argument.
29081	With prefix argument C-u, prompt for SWITCHES.
29082
290832019-07-11  Lars Ingebrigtsen  <larsi@gnus.org>
29084
29085	Clarify the expand-file-name doc string
29086
29087	* src/fileio.c (Fexpand_file_name): Clarify that "~" in NAME is
29088	expanded, and not just "~/".  Also clarify that ~USER is not
29089	expanded if USER doesn't exist (bug#36490).
29090
290912019-07-11  Lars Ingebrigtsen  <larsi@gnus.org>
29092
29093	Tweak the order keystrokes are sorted in keymap listings
29094
29095	* src/keymap.c (describe_map_compare): Change the sorting order of
29096	keystrokes, so that we get the order <f1> <f2> <f11> instead of
29097	<f1> <f11> <f2> (bug#33237).
29098
290992019-07-11  Lars Ingebrigtsen  <larsi@gnus.org>
29100
29101	Tweak misterioso header line background color
29102
29103	* etc/themes/misterioso-theme.el (class): Make the header line
29104	background darker so that cedet function names and parameters are
29105	legible (bug#33061).
29106
291072019-07-11  Stefan Kangas  <stefankangas@gmail.com>
29108
29109	Remove misleading message in customize
29110
29111	* lisp/cus-edit.el (custom-buffer-create-internal): Remove misleading
29112	message about "Resetting customization items" (bug#22451).
29113
291142019-07-11  Lars Ingebrigtsen  <larsi@gnus.org>
29115
29116	Fix C-x C-e with defvars in comments preceding
29117
29118	* lisp/progmodes/elisp-mode.el (eval-sexp-add-defvars): When
29119	collecting defvars in the current buffer, ignore the ones that are
29120	in comments or strings (bug#34233).
29121
291222019-07-11  Eli Zaretskii  <eliz@gnu.org>
29123
29124	Resurrect SVG support on MS-Windows
29125
29126	* src/image.c (syms_of_image) <Qgio> [HAVE_NTGUI]: New DEFSYM.
29127	(init_svg_functions) [LIBRSVG_CHECK_VERSION >= 2.32.0]: Load
29128	g_file_new_for_path and g_memory_input_stream_new_from_data
29129	from libgio, not from libglib.  (Bug#35548)
29130
29131	* lisp/term/w32-win.el (dynamic-library-alist): Add the libgio
29132	DLL.
29133
291342019-07-11  Eli Zaretskii  <eliz@gnu.org>
29135
29136	Avoid assertion violations when resize-mini-windows is nil
29137
29138	* src/xdisp.c (resize_mini_window): Always reset the
29139	mini-window's start point to the beginning of the buffer, even
29140	if resizing is not needed.  This avoids assertion violations
29141	when resize-mini-windows is nil.  (Bug#36595)
29142
291432019-07-10  Paul Eggert  <eggert@cs.ucla.edu>
29144
29145	Avoid functions deprecated in librsvg 2.45.1
29146
29147	* src/image.c (init_svg_functions) [WINDOWSNT]:
29148	Load the pre-2.32 or 2.32 functions,
29149	depending on LIBRSVG_CHECK_VERSION.
29150	(svg_load_image): In librsvg 2.32 or later, use
29151	g_memory_input_stream_new_from_data, g_file_new_for_path and
29152	rsvg_handle_new_from_stream_sync rather than the
29153	deprecated-in-2.45 rsvg_handle_write and rsvg_handle_close.
29154	From a patch by YAMAMOTO Mitsuharu (Bug#35548#11).
29155
291562019-07-10  Mattias Engdegård  <mattiase@acm.org>
29157
29158	Fix trig simplification crash (bug#33052)
29159
29160	* lisp/calc/calc-alg.el (calcFunc-sec, calcFunc-csc, calcFunc-cot):
29161	Check that `math-known-sin' and `math-known-tan' succeeded before
29162	using their value in arithmetic.
29163	* test/lisp/calc/calc-tests.el (calc-test-trig): Add regression tests.
29164
291652019-07-10  Stefan Kangas  <stefankangas@gmail.com>
29166
29167	Small cleanups in asm-mode.el (Bug#36540)
29168
29169	* lisp/progmodes/asm-mode.el: Remove "tools" from "Keywords" header.
29170	Doc fixes.
29171	(asm-comment-char, asm-comment): Doc fixes.
29172	(asm-newline): Redefine as an obsolete function alias for
29173	'newline-and-indent' instead of using a defalias.
29174
291752019-07-10  Lars Ingebrigtsen  <larsi@gnus.org>
29176
29177	Add recursion check for comint password prompting
29178
29179	* lisp/comint.el (comint--prompt-recursion-depth): New variable
29180	(bug#33252).
29181	(comint-watch-for-password-prompt): Use it to avoid bugging out
29182	and making Emacs unusable when a shell script is prompting for
29183	passwords in an infloop.
29184
291852019-07-10  Lars Ingebrigtsen  <larsi@gnus.org>
29186
29187	Fold too-long headers in Message automatically
29188
29189	* lisp/gnus/message.el (message--fold-long-headers): Header lines
29190	should be no longer than 79 characters before folding
29191	(bug#33313).  Previous comment about 998 octets is about maximum
29192	allowed header field length.
29193
291942019-07-10  Lars Ingebrigtsen  <larsi@gnus.org>
29195
29196	Doc clarification in abbrev-prefix-mark
29197
29198	* lisp/abbrev.el (abbrev-prefix-mark): Clarify when the hyphen is
29199	removed (bug#33382).
29200
292012019-07-10  Lars Ingebrigtsen  <larsi@gnus.org>
29202
29203	Fix problem with files like "~" in `directory-files-recursively'
29204
29205	* lisp/files.el (directory-files-recursively): Don't bug out on
29206	files like "~" that have special meaning to `expand-file-name'
29207	(bug#36490).
29208
292092019-07-10  Stefan Kangas  <stefankangas@gmail.com>
29210
29211	Add new section on reading a bug to admin/notes/bugtracker
29212
29213	* admin/notes/bugtracker: New section "How do I read a bug?" in
29214	"Quickstart" (Bug#36560).
29215
292162019-07-10  Lars Ingebrigtsen  <larsi@gnus.org>
29217
29218	Fix pretty-printing of {}
29219
29220	* lisp/json.el (json-pretty-print): Fix reading {}, which returns nil.
29221
292222019-07-10  Stefan Kangas  <stefankangas@gmail.com>
29223
29224	Fix warnings in todo-mode-tests.el (Bug#36569)
29225
29226	* test/lisp/calendar/todo-mode-tests.el (todo-test--insert-item):
29227	Fix "Unused lexical argument" warnings.
29228
292292019-07-10  Stefan Kangas  <stefankangas@gmail.com>
29230
29231	Fix warning in electric-tests.el (Bug#36570)
29232
29233	* test/lisp/electric-tests.el (plainer-c-mode): Remove duplicate
29234	definition.
29235
292362019-07-09  Paul Eggert  <eggert@cs.ucla.edu>
29237
29238	Simplify math-get-calendar-tzinfo
29239
29240	* lisp/calc/calc-forms.el (calendar-current-time-zone-cache):
29241	Remove defvar.
29242	(math-get-calendar-tzinfo): Simplify and do not reach
29243	into caldst’s cache.
29244
292452019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29246
29247	Fix documentation of cl-member
29248
29249	* doc/misc/cl.texi (Lists as Sets): cl-member with no :test is not
29250	equal to memq (because it uses eql) (bug#33655).
29251
292522019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29253
29254	auth-source does not support "host" in .netrc files
29255
29256	* doc/misc/auth.texi (Help for users): Remove mention of "host" in
29257	.netrc files, because it's not supported (bug#33826).
29258
292592019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29260
29261	White-space fix in fortune-compile
29262
29263	* lisp/play/fortune.el (fortune-compile): Reindent function.
29264
292652019-07-09  Benjamin Ragheb  <ben@benzado.com>  (tiny change)
29266
29267	Search exec-path for fortune strfile program
29268
29269	* lisp/play/fortune.el (fortune-compile): Search exec-path for
29270	strfile program (bug#33984).
29271
292722019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29273
29274	Remove json-pretty-print-max-secs introduced earlier this year
29275
29276	* lisp/json.el (json-pretty-print-max-secs): Remove the variable
29277	as it's no longer used.
29278
292792019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29280
29281	Fix timezone east of GMT in Calv
29282
29283	* lisp/calc/calc-forms.el (math-calendar-tzinfo): Make timezone
29284	calculation work east of Greenwich.  Fix proposed by David O'Shea
29285	(bug#34075).
29286
292872019-07-09  Stefan Monnier  <monnier@iro.umontreal.ca>
29288
29289	* src/fileio.c: Fix bug#36431
29290
29291	(decide_coding_unwind): Re-introduce.  Move text back to the gap.
29292	Return the new `inserted` via the unwind_data.
29293	(Finsert_file_contents): Use it.
29294	Make sure `inserted` is always 0 when we jump straight to `notfound`.
29295	Don't insert the text in the buffer until we know it's properly decoded
29296	for the byteness of the buffer.
29297
29298	* test/src/fileio-tests.el (fileio-tests--insert-file-interrupt):
29299	Allow insert-file-contents to return an empty buffer in case of
29300	non-local exit in set-auto-coding-function.
29301
293022019-07-09  Paul Eggert  <eggert@cs.ucla.edu>
29303
29304	Defend fingerprint against even-smarter LTO
29305
29306	* src/pdumper.c (Fdump_emacs_portable, pdumper_load):
29307	Don’t cast volatile to non-volatile pointer, as that does not in
29308	general suffice to prevent a compiler from optimizing away memcmp
29309	and/or memcpy calls.  Instead, copy the fingerprint by hand.
29310
293112019-07-09  Stefan Monnier  <monnier@iro.umontreal.ca>
29312
29313	Revert "Turn off bytecode jumptables to avoid Bug#36447"
29314
29315	This reverts commit 122198d2f1aaf0b74c102874cc9b04ae4789f54f.
29316	Should not be needed any more thanks to Pip Cet's patch to hash_table_rehash.
29317
293182019-07-09  Pip Cet  <pipcet@gmail.com>
29319
29320	Don't alter shared structure in dumped purecopied hash tables.
29321
29322	* src/fns.c (hash_table_rehash): Make sure we're operating on
29323	fresh copies of ->next, ->index, ->hash.
29324
293252019-07-09  Stefan Monnier  <monnier@iro.umontreal.ca>
29326
29327	Merge branch 'master' of git+ssh://git.sv.gnu.org/srv/git/emacs into trunk
29328
293292019-07-09  Paul Eggert  <eggert@cs.ucla.edu>
29330
29331	Do not alter match data in Fcapitalize etc.
29332
29333	Without this patch, (capitalize "x") can alter the match data,
29334	which is not what users expect.  Problem found by running
29335	morse-tests-unnato-region in a stripped-down Emacs.
29336	Perhaps ‘load’ should also save and restore the match data?
29337	That would be a simpler fix, though arguably incompatible.
29338	* src/lread.c (save_match_data_load): New function.
29339	* src/chartab.c (uniprop_table):
29340	* src/doc.c (reread_doc_file):
29341	* src/eval.c (Fautoload_do_load):
29342	* src/fns.c (Frequire): Use it.
29343
293442019-07-09  Paul Eggert  <eggert@cs.ucla.edu>
29345
29346	Port image-type-from-file-header-test to non-SVG Emacs
29347
29348	Problem reported privately by Michael Albinus.
29349	* test/lisp/image-tests.el (image-type-from-file-header-test):
29350	Don’t assume svg is a supported image type.
29351
293522019-07-09  Andreas Schwab  <schwab@linux-m68k.org>
29353
29354	Make fingerprint handling compatible with LTO
29355
29356	Tell the compiler that the fingerprint variable is modified unpredictably.
29357
29358	* lib/fingerprint.h (fingerprint): Remove const.
29359	* lib/fingerprint.c (fingerprint): Likewise.
29360	* src/pdumper.c (Fdump_emacs_portable): Cast fingerprint variable.
29361	(pdumper_load): Likewise.
29362	* lib-src/make-fingerprint.c (main): Likewise.
29363
293642019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29365
29366	Fix pretty-printing of multiple JSON objects
29367
29368	* lisp/json.el (json-pretty-print-max-secs): Make obsolete.
29369	(json-pretty-print): Pretty-print all JSON objects in the region
29370	instead of just the first one (and then deleting all other
29371	objects) (bug#34160).
29372
293732019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29374
29375	Revert "Fix pretty-printing of multiple JSON objects"
29376
29377	This reverts commit 48daf77a9d963c05ee198b3ab108c7f0b3686da6.
29378
29379	This apparently led to build errors.
29380
293812019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29382
29383	Fix pretty-printing of multiple JSON objects
29384
29385	* lisp/json.el (json-pretty-print-max-secs): Make obsolete.
29386	(json-pretty-print): Pretty-print all JSON objects in the region
29387	instead of just the first one (and then deleting all other
29388	objects) (bug#34160).
29389
293902019-07-09  Michael Albinus  <michael.albinus@gmx.de>
29391
29392	* lisp/simple.el (shell-command): Raise a user-error instead of an error.
29393
293942019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29395
29396	Clarify json-read and json-encode parameters and return values
29397
29398	* lisp/json.el (json-read): Try to clarify what's returned (bug#34242).
29399	(json-encode): Refer to `json-read' about what the input is and
29400	say what error is signaled.
29401
294022019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29403
29404	Fix alternative-email-as-from with empty To headers in Message
29405
29406	* lisp/gnus/message.el (message-use-alternative-email-as-from):
29407	Don't add a "," at the start of the address if the To header
29408	doesn't exist (bug#34293).
29409
294102019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29411
29412	Make gnus-read-ephemeral-emacs-bug-group autoloadable
29413
29414	* lisp/gnus/gnus-group.el (gnus-read-ephemeral-emacs-bug-group):
29415	Add an autoload cookie, because the command can be used from
29416	without Gnus.
29417
294182019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29419
29420	Checkdoc would bug out on empty files
29421
29422	* lisp/emacs-lisp/checkdoc.el (checkdoc--next-docstring): Don't
29423	bug out on malformed Emacs Lisp (bug#34760).
29424	(checkdoc-file-comments-engine): Don't bug out on empty buffers.
29425
294262019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29427
29428	Clarify warning about unknown articles in Gnus
29429
29430	* lisp/gnus/gnus-sum.el (gnus-summary-mark-article-as-unread)
29431	(gnus-mark-article-as-unread): Clarify warning (bug#34990).
29432
294332019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29434
29435	Don't try to save articles in Gnus that have disappeared
29436
29437	* lisp/gnus/gnus-sum.el (gnus-summary-save-article): Stop trying
29438	to save articles if the articles have disappeared (bug#35188).
29439
294402019-07-09  Mattias Engdegård  <mattiase@acm.org>
29441
29442	Rename font_driver member close -> close_font
29443
29444	* src/alloc.c (cleanup_vector):
29445	* src/xftfont.c (xftfont_driver):
29446	* src/xfont.c (xfont_driver):
29447	* src/nsfont.m (nsfont_driver):
29448	* src/macfont.m (macfont_driver):
29449	* src/ftxfont.c (ftxfont_driver):
29450	* src/ftfont.c (ftfont_driver):
29451	* src/ftcrfont.c (ftcrfont_driver):
29452	* src/font.h (struct font_driver):
29453	* src/font.c (font_clear_cache, font_close_object):
29454	Rename `close' member to `close_font', to avoid clash with preprocessor
29455	define of `close' in nt/inc/ms-w32.h and for consistency with `open_font'.
29456
294572019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29458
29459	Mention `call-process-region' in the `call-process' doc string
29460
29461	* src/callproc.c (Fcall_process): Mention `call-process-region'
29462	(bug#35187).
29463
294642019-07-09  Mattias Engdegård  <mattiase@acm.org>
29465
29466	Rename font_driver member open -> open_font
29467
29468	* src/xftfont.c (xftfont_driver):
29469	* src/xfont.c (xfont_driver):
29470	* src/nsfont.m (nsfont_driver):
29471	* src/macfont.m (macfont_driver):
29472	* src/ftxfont.c (ftxfont_driver):
29473	* src/ftfont.c (ftfont_driver):
29474	* src/ftcrfont.c (ftcrfont_driver):
29475	* src/font.h (struct font_driver):
29476	* src/font.c (font_open_entity):
29477	Rename `open' member to `open_font', to avoid clash with preprocessor
29478	define of `open' in lib/fcntl.h and nt/inc/ms-w32.h.  Remove earlier
29479	#undef hack.
29480
294812019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29482
29483	Add a really simple nadvice example
29484
29485	* doc/lispref/functions.texi (Advising Functions): Add a really
29486	trivial and simple example (bug#35250).
29487
294882019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29489
29490	Make two variables for extended command suggestions mention each other
29491
29492	* lisp/simple.el (suggest-key-bindings):
29493	(extended-command-suggest-shorter): Mention each other, because
29494	they are vaguely related (bug#35309).
29495
294962019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29497
29498	Make the manual say what undo-auto-amalgamate does
29499
29500	* doc/lispref/text.texi (Undo): Say what undo-auto-amalgamate does
29501	in addition to describing what amalgamation is (bug#35344).
29502
295032019-07-09  Eli Zaretskii  <eliz@gnu.org>
29504
29505	Unbreak the MS-Windows build
29506
29507	* src/font.c (open): Don't undef on WINDOWSNT, as ms-w32.h
29508	redirects it to sys_open.
29509
295102019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29511
29512	.har files are JSON files
29513
29514	* lisp/files.el (auto-mode-alist): Map .har files to
29515	javascript-mode (bug#35407).
29516
295172019-07-09  Ryan Brown  <ryan@derivita.com>
29518
29519	Fix for lisp tagbody indentation
29520
29521	* lisp/emacs-lisp/cl-indent.el (lisp-indent-259): Indent PROG
29522	better (bug#36552).
29523
295242019-07-09  Lars Ingebrigtsen  <larsi@gnus.org>
29525
29526	Add more quote-end characters to sentence-end-base
29527
29528	* lisp/textmodes/paragraphs.el (sentence-end-base): Add › and »
29529	(bug#36359).
29530
295312019-07-09  Stefan Monnier  <monnier@iro.umontreal.ca>
29532
29533	* lisp/progmodes/verilog-mode.el: Update Version:
29534
29535	Merge branch 'emacs-26' into trunk
29536
295372019-07-09  Mattias Engdegård  <mattiase@acm.org>
29538
29539	Repair macOS build
29540
29541	Avoid macro redefinition of `open' in lib/fcntl.h to break use of it as
29542	a struct member in src/font.c.
29543
29544	* src/font.c: #undef open
29545
295462019-07-09  Glenn Morris  <rgm@gnu.org>
29547
29548	Conditionalize result of a bytecomp test
29549
29550	* test/lisp/emacs-lisp/bytecomp-tests.el
29551	(bytecomp-test--switch-duplicates):
29552	Apparently the result depends on byte-compile-cond-use-jump-table.
29553
295542019-07-08  Lars Ingebrigtsen  <larsi@gnus.org>
29555
29556	Make delimit-columns-region say what it does
29557
29558	* lisp/delim-col.el (delimit-columns-region): Make the doc string
29559	say a bit more about what it does (bug#35651).
29560	(delimit-columns-rectangle): Refer to the first function.
29561
295622019-07-08  Katsumi Yamaoka  <yamaoka@jpl.org>
29563
29564	Allow using @@ in @uref in texinfo
29565
29566	* lisp/textmodes/texinfmt.el (texinfo-format-uref): Allow using @@
29567	in @uref (bug#36186) to allow things like
29568	@uref{mailto:foo@@example.com}.
29569
295702019-07-08  Lars Ingebrigtsen  <larsi@gnus.org>
29571
29572	Tweak compilation face in the wheatgrass theme
29573
29574	* etc/themes/wheatgrass-theme.el: The compilation info was too
29575	light to be readable (bug#36203).
29576
295772019-07-08  Lars Ingebrigtsen  <larsi@gnus.org>
29578
29579	Don't set url-mime-charset-string from set-language-environment
29580
29581	* lisp/url/url-vars.el (url-set-mime-charset-string): Make
29582	obsolete and don't add to set-language-environment-hook
29583	(bug#36268).  If you loaded url-vars before calling
29584	set-language-environment, you would suddenly get an unusable long
29585	url-mime-charset-string.
29586
295872019-07-08  Lars Ingebrigtsen  <larsi@gnus.org>
29588
29589	Remove compat code in url-mime-charset-string
29590
29591	* lisp/url/url-vars.el (url-mime-charset-string): Remove compat code.
29592
295932019-07-08  Lars Ingebrigtsen  <larsi@gnus.org>
29594
29595	Tweak messaging in re-builder
29596
29597	* lisp/emacs-lisp/re-builder.el (reb-copy): Say what we copied to
29598	the kill ring.
29599
296002019-07-08  Lars Ingebrigtsen  <larsi@gnus.org>
29601
29602	Mention {la,}tex-run-command in the TeX Print info node
29603
29604	* doc/emacs/text.texi (TeX Print): Mention {la,}tex-run-command,
29605	too.  Suggested by Sebastian Urban (bug#36400).
29606
296072019-07-08  Paul Eggert  <eggert@cs.ucla.edu>
29608
29609	Avoid some unnecessary stdio.h includes
29610
29611	* src/atimer.c, src/callproc.c, src/coding.c, src/dired.c, src/eval.c:
29612	* src/fringe.c, src/ftcrfont.c, src/ftfont.c, src/ftxfont.c:
29613	* src/gfilenotify.c, src/indent.c, src/kqueue.c, src/menu.c:
29614	* src/scroll.c, src/terminal.c, src/unexcoff.c, src/window.c:
29615	* src/xfont.c, src/xftfont.c:
29616	Do not include stdio.h since it is unused.
29617
296182019-07-08  Paul Eggert  <eggert@cs.ucla.edu>
29619
29620	Use fewer locks when accessing stdio
29621
29622	* src/alloc.c, src/bidi.c, src/emacs-module.c, src/pdumper.c:
29623	* src/regex-emacs.c, src/unexhp9k800.c, src/unexmacosx.c:
29624	* src/widget.c, src/xdisp.c, src/xselect.c, src/xterm.c:
29625	Include sysstdio.h instead of stdio.h, to avoid locking
29626	stdio streams in many cases.
29627	* src/alloc.c (test_setjmp):
29628	* src/bidi.c (bidi_dump_cached_states):
29629	* src/cm.c (calccost):
29630	* src/dispnew.c (init_display_interactive):
29631	* src/emacs.c (main):
29632	* src/image.c (convert_mono_to_color_image):
29633	* src/minibuf.c (read_minibuf_noninteractive):
29634	* src/nsfont.m (ns_descriptor_to_entity)
29635	(ns_dump_glyphstring):
29636	* src/nsterm.h (NSTRACE_MSG_NO_DASHES):
29637	* src/nsterm.m (ns_mouse_position)
29638	(sendEvent:, keyDown:, performDragOperation:):
29639	* src/pdumper.c (dump_fingerprint, print_paths_to_root_1):
29640	* src/print.c (debug_print):
29641	* src/regex-emacs.c (debug_putchar, print_fastmap)
29642	(print_partial_compiled_pattern, print_compiled_pattern)
29643	(print_double_string, regex_compile):
29644	* src/term.c (vfatal):
29645	* src/unexhp9k800.c (read_header):
29646	* src/unexmacosx.c (unexec_error):
29647	* src/widget.c (EmacsFrameInitialize):
29648	* src/xdisp.c (message_to_stderr, vmessage, dump_glyph_row)
29649	(Fdump_glyph_matrix, Fdump_frame_glyph_matrix, dump_glyph_string):
29650	* src/xfaces.c (Fdump_colors, Fdump_face):
29651	* src/xselect.c (x_clipboard_manager_error_2):
29652	* src/xterm.c (x_initialize):
29653	* src/xwidget.c (WEBKIT_FN_INIT):
29654	Prefer unlocked calls like fputs to locked calls like fprintf.
29655	* src/charset.c (read_hex):
29656	* src/cm.c (cmputc, cmcheckmagic):
29657	* src/dispnew.c (update_frame, update_frame_with_menu)
29658	(update_frame_1, Fsend_string_to_terminal, Fding)
29659	(bitch_at_user):
29660	* src/emacs.c (main, Fdump_emacs):
29661	* src/emacs-module.c (module_abort):
29662	* src/fileio.c (Fdo_auto_save):
29663	* src/image.c (slurp_file)
29664	(png_read_from_file, png_load_body, our_stdio_fill_input_buffer):
29665	* src/keyboard.c (record_char, kbd_buffer_get_event)
29666	(handle_interrupt):
29667	* src/lread.c (readbyte_from_stdio, read1):
29668	* src/minibuf.c (read_minibuf_noninteractive):
29669	* src/print.c (printchar_to_stream, strout)
29670	(Fredirect_debugging_output):
29671	* src/sysdep.c (reset_sys_modes, close_output_streams)
29672	(procfs_ttyname, procfs_get_total_memory):
29673	* src/term.c (tty_ring_bell, tty_send_additional_strings)
29674	(tty_set_terminal_modes, tty_reset_terminal_modes)
29675	(tty_update_end, tty_clear_end_of_line, tty_write_glyphs)
29676	(tty_write_glyphs_with_face, tty_insert_glyphs)
29677	(tty_menu_activate):
29678	* src/xfaces.c (Fx_load_color_file):
29679	Simplify by using ordinary calls like putc to explicitly-unlocked
29680	calls like putc_unlocked, since the ordinary calls are now
29681	unlocked anyway.
29682	* src/emacs.c (main, Fdump_emacs):
29683	* src/pdumper.c (Fdump_emacs_portable):
29684	Coalesce adjacent printfs.
29685	* src/nsterm.h: Include sysstdio.h as this file’s macros rely on it.
29686	* src/regex-emacs.c (print_compiled_pattern):
29687	Omit redundant fflush.
29688	* src/sysstdio.h: Include unlocked-io.h.
29689	(clearerr_unlocked, feof_unlocked, ferror_unlocked)
29690	(fflush_unlocked, fgets_unlocked, fputc_unlocked)
29691	(fputs_unlocked, fread_unlocked, fwrite_unlocked)
29692	(getc_unlocked, getchar_unlocked, putc_unlocked)
29693	(putchar_unlocked): Remove these macros; now done by unlocked-io.h.
29694	* src/xwidget.c: Include sysstdio.h.
29695
296962019-07-08  Basil L. Contovounesios  <contovob@tcd.ie>
29697
29698	Tidy up sieve.el text formatting
29699
29700	* lisp/net/sieve.el (sieve-edit-script, sieve-upload): Do not pass
29701	arbitrary string as first argument to 'message' (bug#25764).
29702	(sieve-help): Split long string across multiple lines.
29703	(sieve-refresh-scriptlist): Use ngettext.  Fix grammar.
29704
297052019-07-08  Stefan Kangas  <stefankangas@gmail.com>
29706
29707	Delegate to rectangle version in delim-col when appropriate
29708
29709	* lisp/delim-col.el (delimit-columns-region): Delegate to
29710	`delimit-columns-rectangle' when called with a rectangular
29711	region (bug#36453).
29712
297132019-07-08  Ismail S  <ismail-s.no-reply@github.com>  (tiny change)
29714
29715	Fix minor typo in org-capture-templates
29716
29717	* lisp/org/org-capture.el (org-capture-templates): Fix typo in doc
29718	string (bug#36491).
29719
297202019-07-08  Ken Brown  <kbrown@cornell.edu>
29721
29722	Ensure that expand-file-name returns an absolute file name
29723
29724	* src/fileio.c (Fexpand_file_name): Don't directly use the current
29725	buffer's default-directory if it is relative.  Instead replace it
29726	by its expansion relative to invocation-directory.  (Bug#36502)
29727	* test/src/fileio-tests.el
29728	(fileio-tests--relative-default-directory): New test.
29729
297302019-07-08  Noam Postavsky  <npostavs@gmail.com>
29731
29732	Turn off bytecode jumptables to avoid Bug#36447
29733
29734	* lisp/emacs-lisp/bytecomp.el (byte-compile-cond-use-jump-table): Set
29735	to nil.  We can turn this back on again when Bug#36447 is solved and
29736	we handle dumped hash tables correctly.
29737
297382019-07-08  Lars Ingebrigtsen  <larsi@gnus.org>
29739
29740	Remove mention of :group in define-minor-mode info
29741
29742	* doc/lispref/modes.texi (Defining Minor Modes): The :group stuff
29743	in the example and documentation isn't correct since this is not a
29744	global mode and `hunger-mode' therefore isn't customizable
29745	(bug#36501).
29746
297472019-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
29748
29749	Improvements to sieve script usability
29750
29751	* lisp/net/sieve-mode.el (sieve-mode-menu): Add
29752	  `sieve-upload-and-kill' to the mode menu.
29753
29754	* lisp/net/sieve.el (sieve-manage-mode-menu): Add `sieve-manage-quit'
29755	  to the mode menu.
29756	  (sieve-help): Mention quitting in mode help.
29757	  (sieve-manage-mode): Directly derive from special-mode.
29758	  (sieve-edit-script): Start off with unmodified buffer.
29759	  (sieve-upload): Set buffer unmodified after successful upload.
29760
29761	Changes are aimed at 1) increasing discoverability of commands and 2)
29762	using buffer modification to help users understand what's happening.
29763
297642019-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
29765
29766	Make sure gnus-group-set-info sets both the hashtable and alist
29767
29768	* lisp/gnus/gnus-group.el (gnus-group-set-info): Apparently this
29769	  method of updating the group info will only apply to the
29770	  gnus-newsrc-hashtb, not gnus-newsrc-alist. Do the alist explicitly.
29771
297722019-07-08  Michael Albinus  <michael.albinus@gmx.de>
29773
29774	* doc/misc/tramp.texi (Remote processes): Fix a typo.
29775
297762019-07-08  Alan Mackenzie  <acm@muc.de>
29777
29778	Fix coding error in c-forward-decl-or-cast-1.  This fixes bug #36492.
29779
29780	* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): While testing for,
29781	e.g., foo(), check we've found the ( before trying to go to its position.
29782
297832019-07-08  Michael Albinus  <michael.albinus@gmx.de>
29784
29785	Allow chown/chgrp for remote directories on w32
29786
29787	* lisp/dired-aux.el (dired-do-chgrp, dired-do-chown):
29788	Allow them for remote directories, even when run on w32.  See
29789	<https://emacs.stackexchange.com/questions/51477/chown-with-dired-over-tramp-from-windows-machine>.
29790
297912019-07-08  Alan Mackenzie  <acm@muc.de>
29792
29793	Fix bug #36474, such that CC Mode quotes work properly in electric-pair-mode
29794
29795	Also finishes the fix for bug #36423.
29796
29797	* lisp/progmodes/cc-mode.el (c-initialize-cc-mode): Add an `eval-after-load'
29798	to set electric-pair-inhibit-predicate for existing CC Mode buffers when
29799	elec-pair.elc gets loaded.
29800	(c-basic-common-init): Set electric-pair-inhibit-predicate when a CC Mode mode
29801	gets initialized.
29802	(c-electric-pair-inhibit-predicate): New function.
29803
298042019-07-07  Paul Eggert  <eggert@cs.ucla.edu>
29805
29806	* src/xselect.c: Fix comment.
29807
29808	* src/dispnew.c (init_display_interactive): Fix comment to match code.
29809
298102019-07-07  Juri Linkov  <juri@linkov.net>
29811
29812	* lisp/vc/vc-dir.el (vc-dir-view-file): New command for consistency with dired
29813
29814	* lisp/vc/vc-git.el (vc-git-log-incoming, vc-git-log-outgoing):
29815	Remove interactive spec from non-command functions.  (Bug#12492)
29816
298172019-07-07  Juri Linkov  <juri@linkov.net>
29818
29819	Handle scroll-error-top-bottom in follow.el and view.el (bug#21893)
29820
29821	* lisp/follow.el (follow-scroll-up-arg, follow-scroll-up-window):
29822	Use scroll-up-command instead of scroll-up.
29823	(follow-scroll-down-arg, follow-scroll-down-window):
29824	Use scroll-down-command instead of scroll-down.
29825	(follow-scroll-up, follow-scroll-down): Handle scroll-error-top-bottom.
29826
29827	* lisp/view.el (view-scroll-lines): Use scroll-down-command
29828	instead of scroll-down and scroll-up-command instead of scroll-up.
29829	(view-really-at-end): Handle scroll-error-top-bottom.
29830
298312019-07-07  Juri Linkov  <juri@linkov.net>
29832
29833	* lisp/replace.el (perform-replace): Move save-match-data here
29834
29835	from replace-highlight for isearch-lazy-highlight-new-loop (bug#36328).
29836
298372019-07-07  Glenn Morris  <rgm@gnu.org>
29838
29839	Avoid makeinfo error "@code expected braces"
29840
29841	* doc/lispref/searching.texi (Rx Constructs): Fix for makeinfo 4.13.
29842
298432019-07-07  Paul Eggert  <eggert@cs.ucla.edu>
29844
29845	Fix typo in previous patch
29846
29847	* src/editfns.c (styled_format): Fix stray ‘pMd’.
29848
298492019-07-07  Paul Eggert  <eggert@cs.ucla.edu>
29850
29851	Remove printmax_t etc.
29852
29853	printmax_t etc. were needed only for platforms that lacked
29854	support for printing intmax_t.  These platforms are now so
29855	obsolete that they are no longer practical porting targets.
29856	* src/image.c (gs_load): Fix unlikely buffer overrun
29857	discovered while making these changes.  It was introduced in
29858	2011-07-17T00:34:43!eggert@cs.ucla.edu.
29859	* src/lisp.h (printmax_t, uprintmax_t, pMd, pMu, pMx):
29860	Remove.  All uses replaced by their standard counterparts
29861	intmax_t, uintmax_t, PRIdMAX, PRIuMAX, PRIxMAX.
29862
298632019-07-07  Nick Drozd  <nicholasdrozd@gmail.com>
29864
29865	Handle 'abbr' and 'acronym' tags in shr.el
29866
29867	* lisp/net/shr.el (shr-tag-abbr, shr-tag-acronym): New functions
29868	handling 'abbr' and 'acronym' tags, respectively.
29869	* etc/NEWS: Announce change in shr behavior (bug#36475).
29870
298712019-07-07  Mattias Engdegård  <mattiase@acm.org>
29872
29873	Shorter `rx' doc string (bug#36496)
29874
29875	* lisp/emacs-lisp/rx.el (rx): Replace long description with a condensed
29876	summary of the rx syntax, with reference to the manual section.
29877
298782019-07-07  Mattias Engdegård  <mattiase@acm.org>
29879
29880	Describe the rx notation in the elisp manual (bug#36496)
29881
29882	The additions are excluded from the print version to avoid making it
29883	thicker.
29884
29885	* doc/lispref/elisp.texi (Top): New menu entry.
29886	* doc/lispref/searching.texi (Regular Expressions): New menu entry.
29887	(Regexp Example): Add rx form of the example.
29888	(Rx Notation, Rx Constructs, Rx Functions): New nodes.
29889	* doc/lispref/control.texi (pcase Macro): Describe the rx pattern.
29890
298912019-07-06  Paul Eggert  <eggert@cs.ucla.edu>
29892
29893	Don’t ignore stderr failure when ADDRESS_SANITIZER
29894
29895	* src/emacs.c (close_output_streams): Move from here ...
29896	* src/sysdep.c: ... to here, where it really belongs anyway.
29897	When ADDRESS_SANITIZER, fflush stderr and check for ferror,
29898	to catch stderr output errors even in this case.
29899
299002019-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
29901
29902	* lisp/emacs-lisp/nadvice.el: Make it a package separate from `emacs`.
29903
29904	* lisp/finder.el (finder-compile-keywords): Grab version from
29905	package--builtin-versions when available.
29906
299072019-07-06  Glenn Morris  <rgm@gnu.org>
29908
29909	Merge from origin/emacs-26
29910
29911	1e6d8e0 (origin/emacs-26) ; * doc/emacs/killing.texi (Secondary Selec...
29912	e2344a7 * lisp/svg.el, lisp/progmodes/ada-mode.el: Fix bug#36360.
29913	ff738ab Minor copyedit of "Font Lock" in user manual
29914	faf99dc Improve description of image descriptors
29915	21351cc ; * src/lread.c (Fread): Make the comment wording more accurate.
29916	d176090 Improve documentation of secondary selections
29917	8910fe1 * src/fns.c (Fmapconcat): Doc fix.  (Bug#36418)
29918
29919	# Conflicts:
29920	#	lisp/svg.el
29921
299222019-07-06  Glenn Morris  <rgm@gnu.org>
29923
29924	Merge from origin/emacs-26
29925
29926	e97c043 Fix python.el docstring (Bug#36458)
29927	e660801 ; Add thing-at-point-looking-at test (Bug#35708)
29928	f5b4846 ; Fix typo, insure -> ensure in ChangeLogs
29929	cb8fb59 * lisp/hi-lock.el (hi-lock-line-face-buffer): Doc fix.  (Bug3...
29930
299312019-07-06  Glenn Morris  <rgm@gnu.org>
29932
29933	Merge from origin/emacs-26
29934
29935	316f5a3 Fix typo in doc string of file-exists-p (bug#36408)
29936	bfc7c6e * test/lisp/url/url-file-tests.el (url-file): Fix for POSIX f...
29937	13b95e1 Fix typo in windows.texi
29938	8b775c3 Clarify & update (elisp) Writing Emacs Primitives
29939	7648c12 Clarify a subtle issue in the Internals chapter of lispref
29940
299412019-07-06  Xu Chunyang  <mail@xuchunyang.me>
29942
29943	* lisp/dom.el (dom-texts): Simplify (Bug#36441).
29944
299452019-07-06  Noam Postavsky  <npostavs@users.sourceforge.net>
29946
29947	Use buffer's name for help-mode bookmarks (Bug#24573)
29948
29949	* lisp/help-mode.el (help-bookmark-make-record): Replace buffer
29950	objects with their names in help-args, otherwise the bookmark won't be
29951	readable from the bookmark save file.
29952
299532019-07-06  Noam Postavsky  <npostavs@gmail.com>
29954
29955	Add commentary about #$ in autoload files
29956
29957	* lisp/emacs-lisp/autoload.el (autoload-rubric): Add commentary about
29958	`#$' trick.
29959
299602019-07-06  Wilson Snyder  <wsnyder@wsnyder.org>
29961
29962	Fix indentation of default clocking definitions.
29963
29964	* lisp/progmodes/verilog-mode.el (verilog-default-clocking-re): Fix indentation of default
29965	clocking definitions, Verilog-Mode bug1457. Reported by Paul Donahue.
29966
299672019-07-06  Wilson Snyder  <wsnyder@wsnyder.org>
29968
29969	Backout replacing manually crafted hex regexes with [:xdigit:].
29970
29971	* lisp/progmodes/verilog-mode.el (verilog-delay-re):
29972	(verilog-type-font-keywords, verilog-read-always-signals-recurse):
29973	(verilog-is-number): Backout replacing manually crafted hex regexes with
29974	[:xdigit:] (Bug#36167).  This repairs Verilog-mode regressions;
29975	Verilog-mode maintains back-compatibility with Emacsen before this syntax
29976	was supported.
29977
299782019-07-06  Pip Cet  <pipcet@gmail.com>
29979
29980	Update current buffer when changing text properties
29981
29982	* src/textprop.c (add_text_properties_1, set_text_properties)
29983	(set_text_properties_1, Fremove_text_properties): Switch buffer if
29984	necessary.  (Bug#36190)
29985
29986	* doc/lispref/text.texi (Examining Properties): Document performance
29987	FIXME.
29988
299892019-07-06  Paul Eggert  <eggert@cs.ucla.edu>
29990
29991	Update from Gnulib
29992
29993	This incorporates:
29994	2019-07-06 thread, lock, cond, tls: Remove support for Pth threads
29995	2019-07-02 verify: document ‘assume’ better
29996	2019-06-30 Include <stdlib.h> when needed
29997	2019-06-30 inet_ntop, inet_pton: Avoid conflict with native Windows
29998	* build-aux/config.sub, lib/faccessat.c, lib/fcntl.c, lib/fstatat.c:
29999	* lib/readlinkat.c, lib/verify.h, m4/pthread_sigmask.m4:
30000	* m4/sys_socket_h.m4: Copy from Gnulib.
30001	* lib/gnulib.mk.in: Regenerate.
30002
300032019-07-06  Paul Eggert  <eggert@cs.ucla.edu>
30004
30005	Fix [[:xdigit:]] glitch on Solaris
30006
30007	* admin/charsets/mapconv: Revert this [[:xdigit:]] change.
30008	Solaris 10 ‘sed’ does not support [[:xdigit:]].
30009
300102019-07-06  Drew Adams  <drew.adams@oracle.com>
30011
30012	Tweak point movement in view-echo-area-messages
30013
30014	* lisp/help.el (view-echo-area-messages): Move the point to the
30015	end of the *Messages* buffer even if it's already displayed
30016	(bug#36343).
30017
300182019-07-06  Stefan Kangas  <stefankangas@gmail.com>
30019
30020	Remove outdated comment in uniquify.el
30021
30022	* lisp/uniquify.el: Remove outdated comment regarding some ancient
30023	version of uniquify.el (bug#36384).
30024
300252019-07-06  Stefan Kangas  <stefankangas@gmail.com>
30026
30027	Improve an error message in bookmark.el
30028
30029	* lisp/bookmark.el (bookmark-alist-from-buffer): Improve error
30030	message (bug#36391).
30031
300322019-07-06  Basil L. Contovounesios  <contovob@tcd.ie>
30033
30034	Improve Gnus ephemeral bug group browsing
30035
30036	* doc/misc/gnus.texi (Foreign Groups): Update description of
30037	gnus-read-ephemeral-emacs-bug-group for multiple bug
30038	IDs (bug#11961).
30039
30040	* lisp/gnus/gnus-group.el (gnus-bug-group-download-format-alist):
30041	Use HTTPS for Debian's bug tracker.
30042	(gnus-group--read-bug-ids): New function for reading multiple bug
30043	IDs in the minibuffer.  Improves on previous brittle approach of
30044	word-at-point -> read-string -> string-to-number by a) defaulting to
30045	the more accurate bug-reference-bug-regexp or number-at-point
30046	without using the intrusive INITIAL-INPUT argument, and b) not
30047	attempting to parse bug IDs.
30048	(gnus-read-ephemeral-bug-group): Use it.  Extend docstring and
30049	commentary.  Fix handling of multiple bug IDs as either numbers or
30050	strings.  Hoist some string consing out of inner loop.  Delete
30051	temporary file even on error.  Throw more informative error when
30052	url-insert-file-contents successfully returns an error (bug#36433).
30053	(gnus-read-ephemeral-debian-bug-group): Use gnus-group--read-bug-ids
30054	and fix docstring for multiple bug IDs.  Accept optional WINDOW-CONF
30055	like other ephemeral bug group commands.
30056	(gnus-read-ephemeral-emacs-bug-group): Use gnus-group--read-bug-ids
30057	and fix string/numeric ID conversions.  Try loading debbugs-gnu
30058	before testing for debbugs-gnu-summary-mode (bug#36433).
30059
300602019-07-06  Stefan Kangas  <stefankangas@gmail.com>
30061
30062	Add tests for text-property-search to check prop-match-value
30063
30064	* test/lisp/emacs-lisp/text-property-search-tests.el
30065	(with-match-test): New macro.
30066	(text-property-search-forward-prop-match-match-face-nil-nil)
30067	(text-property-search-forward-prop-match-match-face-bold-t)
30068	(text-property-search-forward-prop-match-match-face-bold-nil)
30069	(text-property-search-backward-prop-match-match-face-nil-nil)
30070	(text-property-search-backward-prop-match-match-face-italic-t)
30071	(text-property-search-backward-prop-match-match-face-italic-nil):
30072	Add test cases to also verify the value of prop-match-value
30073	(bug#36486).
30074
300752019-07-06  Eli Zaretskii  <eliz@gnu.org>
30076
30077	Improve the default value of 'doc-view-ghostscript-program'
30078
30079	* lisp/doc-view.el (doc-view-ghostscript-program): Make the
30080	default value dependent on the underlying OS.  (Bug#36357)
30081
300822019-07-06  Stefan Kangas  <stefankangas@gmail.com>
30083
30084	Make "M-x pdb" use "[:graph:]" to match file names
30085
30086	* lisp/progmodes/gud.el (gud-pdb-marker-regexp): Use "[:graph:]" to
30087	match file name in prompt.  (Bug#34489)
30088
300892019-07-06  Stefan Kangas  <stefankangas@gmail.com>
30090
30091	* lisp/net/goto-addr.el: Remove leftover XEmacs compat code.  (Bug#36512)
30092
30093	* lisp/bookmark.el (bookmark-set-internal): Doc fix. (Bug#25032)
30094
300952019-07-06  Stefan Kangas  <stefankangas@gmail.com>
30096
30097	* lisp/bookmark.el (bookmark-quit-flag): Mark unused variable obsolete.
30098
30099	(Bug#36460)
30100
301012019-07-06  Stefan Kangas  <stefankangas@gmail.com>
30102
30103	Prefer progress-reporter to 'message' in bookmark.el
30104
30105	* lisp/bookmark.el (bookmark-upgrade-file-format-from-0)
30106	(bookmark-bmenu-execute-deletions): Use progress-reporter.
30107	(Bug#36462)
30108
301092019-07-06  Konstantin Kharlamov  <Hi-Angel@yandex.ru>
30110
30111	Replace manually crafted hex regexes with [:xdigit:]
30112
30113	* admin/charsets/mapconv:
30114	* build-aux/gitlog-to-changelog (parse_amend_file, git_dir_option):
30115	* lisp/progmodes/verilog-mode.el (verilog-delay-re):
30116	(verilog-type-font-keywords, verilog-read-always-signals-recurse):
30117	(verilog-is-number):
30118	* lisp/progmodes/vera-mode.el (vera-font-lock-keywords):
30119	* test/src/emacs-module-tests.el (mod-test-sum-test):
30120	* lisp/xml.el: (xml--entity-replacement-text):
30121	* lisp/version.el (emacs-repository-version-git):
30122	* lisp/textmodes/sgml-mode.el (sgml-quote):
30123	* lisp/textmodes/css-mode.el (css-escapes-re)
30124	(css--colors-regexp):
30125	* lisp/progmodes/prolog.el (prolog-syntax-propertize-function):
30126	* lisp/progmodes/hideif.el (hif-token-regexp, hif-tokenize):
30127	* lisp/progmodes/ebnf-dtd.el: (ebnf-dtd-attlistdecl)
30128	(ebnf-dtd-entitydecl, ebnf-dtd-lex):
30129	* lisp/progmodes/ebnf-ebx.el (ebnf-ebx-hex-character):
30130	* lisp/progmodes/ebnf-abn.el (ebnf-abn-character):
30131	* lisp/progmodes/cperl-mode.el (cperl-highlight-charclass)
30132	(cperl-find-pods-heres):
30133	* lisp/progmodes/cc-mode.el (c-maybe-quoted-number-head)
30134	(c-maybe-quoted-number, c-parse-quotes-before-change)
30135	(c-parse-quotes-after-change, c-quoted-number-head-before-point)
30136	(c-quoted-number-straddling-point):
30137	* lisp/progmodes/ada-mode.el (featurep, ada-in-numeric-literal-p)
30138	(ada-font-lock-keywords):
30139	* lisp/org/org-mobile.el (org-mobile-copy-agenda-files)
30140	* lisp/org/org-table.el (org-table-number-regexp):
30141	(org-mobile-update-checksum-for-capture-file):
30142	* lisp/nxml/xsd-regexp.el (xsdre-gen-categories):
30143	* lisp/nxml/xmltok.el (let*):
30144	* lisp/nxml/rng-xsd.el (rng-xsd-convert-hex-binary)
30145	(rng-xsd-convert-any-uri):
30146	* lisp/nxml/rng-uri.el (rng-uri-file-name-1)
30147	(rng-uri-unescape-multibyte, rng-uri-unescape-unibyte)
30148	(rng-uri-unescape-unibyte-match)
30149	(rng-uri-unescape-unibyte-replace):
30150	* lisp/nxml/rng-cmpct.el (rng-c-process-escapes):
30151	* lisp/nxml/nxml-maint.el (nxml-insert-target-repertoire-glyph-set):
30152	* lisp/net/shr-color.el (shr-color->hexadecimal):
30153	* lisp/mail/rfc2231.el (rfc2231-decode-encoded-string):
30154	* lisp/international/mule-cmds.el (read-char-by-name):
30155	* lisp/htmlfontify.el (hfy-hex-regex):
30156	* lisp/gnus/nneething.el (nneething-decode-file-name):
30157	* lisp/gnus/mml-sec.el (mml-secure-find-usable-keys):
30158	* lisp/gnus/gnus-art.el (gnus-button-mid-or-mail-heuristic-alist):
30159	* lisp/faces.el (read-color):
30160	* lisp/epg.el (epg--status-ERRSIG, epg--status-VALIDSIG)
30161	(epg--status-SIG_CREATED, epg--decode-percent-escape)
30162	(epg--decode-hexstring, epg--decode-quotedstring)
30163	(epg-dn-from-string):
30164	* lisp/emulation/cua-rect.el (cua-incr-rectangle):
30165	* lisp/dnd.el (dnd-unescape-uri):
30166	* lisp/cedet/semantic/lex.el (semantic-lex-number-expression):
30167	* lisp/cedet/semantic/java.el (semantic-java-number-regexp):
30168	* lisp/calc/calc-lang.el (pascal):
30169	* lisp/calc/calc-ext.el (math-read-number-fancy):
30170	* lisp/calc/calc-aent.el (math-read-token):
30171	Replace various combinations of [0-9a-fA-F] with [[:xdigit:]].
30172	(Bug#36167)
30173
301742019-07-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30175
30176	Add HarfBuzz fallbacks for libotf functions used in ftfont_list
30177
30178	* src/ftfont.c [!HAVE_LIBOTF && HAVE_HARFBUZZ]: Include hb-ot.h.
30179	(OTF, OTF_tag) [!HAVE_LIBOTF && HAVE_HARFBUZZ]: New typedefs.
30180	(hbotf_open, hbotf_check_features) [!HAVE_LIBOTF && HAVE_HARFBUZZ]: New
30181	functions.
30182	(OTF_open, OTF_close, OTF_check_features) [!HAVE_LIBOTF && HAVE_HARFBUZZ]:
30183	New macros.
30184	(ftfont_list) [!HAVE_LIBOTF && HAVE_HARFBUZZ]: Use them.
30185
301862019-07-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30187
30188	Avoid crash inside CFCharacterSetIsLongCharacterMember
30189
30190	* src/macfont.m (macfont_supports_charset_and_languages_p)
30191	(macfont_has_char): Don't pass integers outside the Unicode codespace to
30192	CFCharacterSetIsLongCharacterMember.
30193
301942019-07-05  Juri Linkov  <juri@linkov.net>
30195
30196	* lisp/replace.el (replace-highlight): Add save-match-data (bug#36328)
30197
30198	* lisp/term/tty-colors.el (tty-color-canonicalize):
30199	Replace string-match with string-match-p.
30200
30201	Thanks to Jayden Navarro <jayden@yugabyte.com> and Alan Mackenzie <acm@muc.de>
30202
302032019-07-04  Juri Linkov  <juri@linkov.net>
30204
30205	* lisp/minibuffer.el (minibuffer-message-properties): New variable.
30206
30207	(minibuffer-message): Use it to propertize message unless already
30208	propertized by the caller.
30209
30210	* lisp/simple.el (minibuffer-error-function): Propertize the error.
30211
30212	* lisp/isearch.el (isearch-message-properties): New variable.
30213	(isearch--momentary-message, isearch-message-prefix)
30214	(isearch-message-suffix): Use it.  (Bug#21112)
30215
302162019-07-04  Juri Linkov  <juri@linkov.net>
30217
30218	* lisp/char-fold.el (char-fold-to-regexp): Implement arg LAX (bug#36398).
30219
30220	* test/lisp/char-fold-tests.el (char-fold--test-multi-lax): New test.
30221
302222019-07-04  Mattias Engdegård  <mattiase@acm.org>
30223
30224	Optimise more inputs to `regexp-opt' (bug#36444)
30225
30226	Use a more precise test to determine whether the input to `regexp-opt'
30227	is safe to optimise when KEEP-ORDER is non-nil, permitting more inputs
30228	to be optimised than before.  For example, ("good" "goal" "go") is now
30229	accepted.
30230
30231	* lisp/emacs-lisp/regexp-opt.el (regexp-opt):
30232	More precise test for whether the list is safe w.r.t. KEEP-ORDER.
30233	(regexp-opt--contains-prefix): Remove.
30234
30235	* test/lisp/emacs-lisp/regexp-opt-tests.el: Use lexical-binding.
30236	(regexp-opt-test--permutation, regexp-opt-test--factorial)
30237	(regexp-opt-test--permutations, regexp-opt-test--match-all)
30238	(regexp-opt-test--check-perm, regexp-opt-test--explain-perm)
30239	(regexp-opt-keep-order): Test KEEP-ORDER.
30240
302412019-07-04  Stefan Monnier  <monnier@iro.umontreal.ca>
30242
30243	* src/coding.c (decode_coding): Improve doc.
30244
302452019-07-04  Lars Ingebrigtsen  <larsi@gnus.org>
30246
30247	In Message, respect Content-Type provided by the user
30248
30249	* lisp/gnus/mml.el (mml-parse-1): Respect any Content-Type
30250	inserted by the user instead of insisting on text/plain.
30251
302522019-07-04  Alan Mackenzie  <acm@muc.de>
30253
30254	Fix an infinite loop in c-end-of-macro.  Should fix bug #36484
30255
30256	Also fix two faulty regexps, save-match-data, and check c-major-mode-is
30257	'c++-mode where needed.
30258
30259	* lisp/progmodes/cc-langs.el (c-last-c-comment-end-on-line-re)
30260	(c-last-open-c-comment-start-on-line-re): Handle repeated *s in regexp
30261	correctly.
30262
30263	* lisp/progmodes/cc-engine.el (c-beginning-of-macro, c-end-of-macro): Protect
30264	the match-data with save-match-data around regexp operations.
30265	(c-end-of-macro): In the loop handling multiline block comments, check a
30266	comment actually is multiline.
30267
30268	* lisp/progmodes/cc-mode.el (c-depropertize-CPP): Only call
30269	c-depropertize-raw-strings-in-region in C++ Mode.
30270
302712019-07-03  João Távora  <joaotavora@gmail.com>
30272
30273	Fix Flymake's user-visible accessors of diagnostic positions
30274
30275	Diagnostics are supported by overlays, and they can legitimately move
30276	around.  So flymake-diagnostic-beg and flymake-diagnostic-end must
30277	look up the overlay positions, not the immutable slots of the
30278	flymake--diag structure, which become stale.
30279
30280	* lisp/progmodes/flymake.el (version): Bump to 1.0.8.
30281	(flymake-diagnostic-beg, flymake-diagnostic-end): Use diag's
30282	overlay.
30283	(flymake-show-diagnostic): Use flymake-diagnostic-end,
30284	flymake-diagnostic-beg.
30285
302862019-07-03  João Távora  <joaotavora@gmail.com>
30287
30288	Fix Flymake's treatment of region-specific reports
30289
30290	We're supposed to delete intersecting diagnostics in that situation,
30291	but the intersection logic was way off.
30292
30293	* lisp/progmodes/flymake.el (version): Bump to 1.0.7.
30294	(flymake--intersects-p): New helper.
30295	(flymake--handle-report): Fix handling of :region.
30296
302972019-07-03  Eric Abrahamsen  <eric@ericabrahamsen.net>
30298
30299	Small fix to writing Gnus dribble change-level entries
30300
30301	* lisp/gnus/gnus-start.el (gnus-group-change-level): PREVIOUS needs to
30302	  still be a string when the dribble entry is written, so don't
30303	  convert it to an entry until after that's done. Also, we're not
30304	  meant to write PREVIOUS itself, we're meant to write the group that
30305	  comes _after_ it in the sort-order of gnus-group-list, so do that
30306	  instead.
30307
303082019-07-03  Stefan Kangas  <stefankangas@gmail.com>
30309
30310	Add tests for bookmark.el (Bug#36452)
30311
30312	* test/lisp/bookmark-resources/example.txt:
30313	* test/lisp/bookmark-resources/test.bmk:
30314	* test/lisp/bookmark-tests.el: New files.
30315	* lisp/bookmark.el: Minor cleanups.
30316	(bookmark-insert-annotation): Signal error on invalid bookmark.
30317	(bookmark-write-file): Add newline at end of file.
30318
303192019-07-03  Eli Zaretskii  <eliz@gnu.org>
30320
30321	Fix rotation validity test in image.c
30322
30323	* src/image.c (compute_image_rotation): Fix the validity test
30324	for :rotation values.  This avoids logging error messages when
30325	no :rotation was provided in the image spec.
30326
303272019-07-03  Eli Zaretskii  <eliz@gnu.org>
30328
30329	Fix compiler warnings due to a recent commit
30330
30331	* src/xdisp.c (expose_window, expose_frame): Avoid compilation
30332	warnings about printing unsigned values with %d.
30333
303342019-07-03  Michael Albinus  <michael.albinus@gmx.de>
30335
30336	Change expected result of a flymake test on emba
30337
30338	* test/lisp/progmodes/flymake-tests.el (different-diagnostic-types):
30339	Test is now passing on emba.gnu.org, too.
30340
303412019-07-02  Paul Eggert  <eggert@cs.ucla.edu>
30342
30343	Replace TRACE with redisplay_trace, etc.
30344
30345	This simplifies callers and catches trace printf format errors
30346	even with typical (non-debugging) compiles.
30347	* src/dispextern.h (TRACE) [GLYPH_DEBUG]:
30348	Move definitions to xdisp.c if it’s used only there.
30349	* src/xdisp.c (redisplay_trace): New function, replacing TRACE macro.
30350	(move_trace): New function, replacing TRACE_MOVE macro.
30351	All uses changed.
30352	(dump_glyph): When tracing, don’t use %d to format ptrdiff_t,
30353	or %x to format a pointer.
30354	(expose_frame): Redo trace printfs to avoid interleaved output
30355	on GNU/Linux.
30356
303572019-07-02  Glenn Morris  <rgm@gnu.org>
30358
30359	Change expected result of a flymake test on hydra
30360
30361	* test/lisp/progmodes/flymake-tests.el (different-diagnostic-types):
30362	Test is now passing on hydra.nixos.org, since today.
30363
303642019-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
30365
30366	* src/json.c (Fjson_insert): Don't temporarily insert invalid bytes in buffer
30367
303682019-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
30369
30370	(Finsert_file_contents): Keep buffer consistent in non-local exit
30371
30372	* src/fileio.c (decide_coding_unwind): Delete function.
30373	(Finsert_file_contents): Don't let invalid multibyte byte sequences
30374	escape when we exit non-locally.
30375
30376	* test/src/fileio-tests.el (fileio-tests--insert-file-interrupt): New test.
30377
303782019-07-02  Paul Eggert  <eggert@cs.ucla.edu>
30379
30380	Fix printf formats when DEBUG_TRACE_MOVE
30381
30382	Problem caught by gcc -DDEBUG_TRACE_MOVE -Wformat.
30383	* src/xdisp.c (move_it_in_display_line_to, move_it_to)
30384	(move_it_vertically) [DEBUG_TRACE_MOVE]: Fix printf format typos.
30385
303862019-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
30387
30388	* src/insdel.c (insert_from_gap_1): New fun, extracted from insert_from_gap.
30389
30390	(insert_from_gap): Use it.
30391	* src/lisp.h (insert_from_gap_1): Declare it.
30392	* src/json.c (Fjson_insert):
30393	* src/fileio.c (Finsert_file_contents): Use it.
30394
303952019-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
30396
30397	* src/coding.c (decode_coding_gap): Remove `chars` argument.
30398
30399	* src/json.c (Fjson_insert):
30400	* src/fileio.c (Finsert_file_contents):
30401	* src/coding.h (decode_coding_gap): Adjust accordingly.
30402
304032019-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
30404
30405	* test/src/editfns-tests.el (test-group-name): Accept nil group-name.
30406
304072019-07-02  Andreas Schwab  <schwab@linux-m68k.org>
30408
30409	Correct customize type for gnus-group-customize
30410
30411	* lisp/gnus/gnus-cus.el (gnus-extra-group-parameters): Add more
30412	group parameters used by nnimap.
30413
304142019-07-02  João Távora  <joaotavora@gmail.com>
30415
30416	Correctly reindent previous line in electric-indent-mode
30417
30418	(Bug#35254)
30419
30420	Do this even when electric-indent-inhibit is t, except when the
30421	newline insertion is being performed by electric-layout-mode.
30422
30423	* lisp/electric.el (electric-indent-post-self-insert-function):
30424	Reindent previous line unless operating under
30425	electric-layout-mode.
30426	(electric-layout-post-self-insert-function-1): Bind
30427	electric-indent-inhibit to 'electric-layout-mode.
30428
30429	* test/lisp/electric-tests.el
30430	(electric-layout-control-reindentation): New test.
30431
304322019-07-02  João Távora  <joaotavora@gmail.com>
30433
30434	Protect Flymake from being corrupted by backends
30435
30436	A backend building a diagnostic with a nil :type would cause Flymake
30437	to create a diagnostic without an overlay, confusing Flymake's
30438	accounting of overlays and diagnostics
30439
30440	* lisp/progmodes/flymake.el (flymake--highlight-line): Return
30441	non-nil unconditionally.
30442
304432019-07-02  João Távora  <joaotavora@gmail.com>
30444
30445	More carefully cleanup Flymake C/C++ backend's temp buffers
30446
30447	Sometimes the Flymake process dies by some means that doesn't involve
30448	a sentinel call for the "exit" status, so we clean up the temporary
30449	buffer as soon as we notice it's not process-alive-p anymore.
30450
30451	* lisp/progmodes/flymake-cc.el (flymake-cc): Broaden cleanup
30452	conditions.
30453
304542019-07-02  João Távora  <joaotavora@gmail.com>
30455
30456	Don't create nil-severity diagnostics in the Flymake C/C++ backend
30457
30458	* lisp/progmodes/flymake-cc.el (flymake-cc--make-diagnostics): Use
30459	`:error` as a diagnostic severity.
30460
304612019-07-02  João Távora  <joaotavora@gmail.com>
30462
30463	Revert "Avoid occasional confusion of Flymake C/C++ backend"
30464
30465	This reverts commit 67c3a3af1d9e2582193d5ea33b6c190e79ad56e6, which
30466	creates more problems than it solves.
30467
304682019-07-02  Alan Mackenzie  <acm@muc.de>
30469
30470	CC Mode: Improve handling of unbalanced strings
30471
30472	* lisp/progmodes/cc-fonts.el (c-before-font-lock-functions): Add function
30473	c-after-change-escape-NL-in-string into value for most languages.
30474
30475	* lisp/progmodes/cc-mode.el (c-after-change-escape-NL-in-string): New
30476	function.
30477	(c-before-change-check-unbalanced-strings): Handle the making and breaking of
30478	escaped newlines, by removal or addition of text.
30479
304802019-07-02  Mattias Engdegård  <mattiase@acm.org>
30481
30482	Better error message for C-h P RET
30483
30484	Previously:
30485	  package--incompatible-p: Wrong type argument: package-desc, nil
30486	Now:
30487	  No package specified
30488
30489	* lisp/emacs-lisp/package.el (describe-package): Don't use ## as input.
30490
304912019-07-02  Paul Eggert  <eggert@cs.ucla.edu>
30492
30493	Fix performDragOperation: diagnostic typo
30494
30495	* src/nsterm.m (performDragOperation:): Fix missing newline.
30496
304972019-07-01  Paul Eggert  <eggert@cs.ucla.edu>
30498
30499	Fix regex-emacs debug format glitches
30500
30501	These patches affect behavior only if REGEX_EMACS_DEBUG.
30502	* src/regex-emacs.c (debug_putchar): Use unsigned for %x.
30503	(print_compiled_pattern, ENSURE_FAIL_STACK, PUSH_FAILURE_POINT)
30504	(POP_FAILURE_POINT): Use %td for ptrdiff_t.
30505	(print_compiled_pattern, regex_compile, re_match_2_internal):
30506	Put newlines at ends of lines, not at starts of next lines.
30507	Omit white space at line ends.
30508
305092019-07-01  Michael Albinus  <michael.albinus@gmx.de>
30510
30511	Minor changes in tramp.texi
30512
30513	* doc/misc/tramp.texi (Obtaining Tramp): Mention file INSTALL.
30514	(Cleanup remote connections): The session timer is also deleted.
30515
305162019-07-01  Eli Zaretskii  <eliz@gnu.org>
30517
30518	More XFIXNUM fixes
30519
30520	* src/hbfont.c (hbfont_shape): Don't assume LGLYPH_TO is
30521	always a fixnum.
30522	* src/fontset.c (fontset_find_font): A cleaner test for
30523	matching charset_id.
30524
305252019-07-01  Eli Zaretskii  <eliz@gnu.org>
30526
30527	Fix assertion violations in fontset_find_font
30528
30529	* src/fontset.c (fontset_find_font): Don't assume REPERTORY
30530	must be a fixnum.
30531
305322019-07-01  Eli Zaretskii  <eliz@gnu.org>
30533
30534	Adjust return value of image-transforms-p
30535
30536	* src/image.c (Fimage_transforms_p):
30537	* doc/lispref/display.texi (Image Descriptors):
30538	image-transforms-p now returns at most (scale rotate90), even
30539	if ImageMagick is available.
30540
305412019-07-01  Sam Steingold  <sds@gnu.org>
30542
30543	Extract gnus-collect-urls from gnus-summary-browse-url
30544
30545	* lisp/gnus/gnus-sum.el (gnus-collect-urls): Extract from ...
30546	(gnus-summary-browse-url): Use it here.
30547	Extracting URLs from an article will be useful in BBDB interaction.
30548
305492019-07-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30550
30551	Implement the otf_capability method for HarfBuzz
30552
30553	* src/hbfont.c: Include hb-ot.h.
30554	[HAVE_NTGUI]: Add DEF_DLL_FN and #define for hb_tag_to_string,
30555	hb_font_get_face, hb_ot_layout_table_get_script_tags,
30556	hb_ot_layout_table_get_feature_tags, hb_ot_layout_script_get_language_tags,
30557	and hb_ot_layout_language_get_feature_tags.
30558	(hbfont_init_w32_funcs) [HAVE_NTGUI]: Add LOAD_DLL_FN for them.
30559	(hbfont_otf_features, hbfont_otf_capability): New functions.
30560
30561	* src/font.h (hbfont_otf_capability) [HAVE_HARFBUZZ]: Add extern.
30562
30563	* src/ftcrfont.c (syms_of_ftcrfont_for_pdumper) [HAVE_HARFBUZZ]:
30564	* src/ftfont.c (syms_of_ftfont_for_pdumper) [HAVE_HARFBUZZ]:
30565	* src/w32uniscribe.c (syms_of_w32uniscribe_for_pdumper) [HAVE_HARFBUZZ]:
30566	* src/xftfont.c (syms_of_xftfont_for_pdumper) [HAVE_HARFBUZZ]: Populate
30567	otf_capability method with hbfont_otf_capability.
30568
305692019-06-30  Paul Eggert  <eggert@cs.ucla.edu>
30570
30571	Remove divide_double
30572
30573	* src/image.c (divide_double): Remove.  All uses replaced
30574	with inline equivalents.  Suggested by Eli Zaretskii in:
30575	https://lists.gnu.org/r/emacs-devel/2019-06/msg01067.html
30576
305772019-06-30  Alan Mackenzie  <acm@muc.de>
30578
30579	C++ Mode: change the default doc comment style from nothing to gtkdoc
30580
30581	Also amend a pertinent regular expression.  This fixes bug #11865.
30582
30583	* lisp/progmodes/cc-vars.el (c-doc-comment-style): Insert an entry for
30584	c++-mode, namely gtkdoc.
30585
30586	* lisp/progmodes/cc-fonts.el (gtkdoc-font-lock-keywords): Amend the regexp
30587	recognizing the introductory "/**" to allow subsequent characters on that
30588	line.
30589
305902019-06-30  Michael Albinus  <michael.albinus@gmx.de>
30591
30592	Release Tramp 2.4.2
30593
30594	* lisp/net/tramp.el: Bump version.
30595
30596	* test/lisp/net/tramp-tests.el (tramp--test-instrument-test-case):
30597	Add `add-name-to-file' error message.
30598	(tramp--test-ignore-add-name-to-file-error): Make error handler
30599	more explicit about the error.
30600
306012019-06-30  Andreas Schwab  <schwab@linux-m68k.org>
30602
30603	Doc fix
30604
30605	* doc/emacs/display.texi (Displaying Boundaries): Document
30606	display-fill-column-indicator-character, not
30607	display-fill-column-indicator-char.
30608
306092019-06-30  Andreas Schwab  <schwab@linux-m68k.org>
30610
30611	Fix use of undefined macro
30612
30613	* src/xdisp.c (append_space_for_newline): Use FRAME_FONT only
30614	inside HAVE_WINDOW_SYSTEM.
30615	(extend_face_to_end_of_line): Likewise.
30616	(syms_of_xdisp): Doc fix.
30617
306182019-06-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30619
30620	Fix negation in elements of OTF feature list
30621
30622	* src/ftfont.c (ftfont_get_open_type_spec):
30623	* src/macfont.m (macfont_get_open_type_spec): Take bitwise or instead of and.
30624
306252019-06-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30626
30627	Fix error in mouse-set-font on GTK 3 with Harfbuzz (Bug#36288)
30628
30629	* src/gtkutil.c (xg_get_font) [HAVE_GTK3]: Remove type property from font
30630	spec.  This effectively undoes the fix for Bug#3228, but gives consistent
30631	results overall.
30632
306332019-06-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30634
30635	* src/xfns.c (x_create_tip_frame): Support inhibit-double-buffering.
30636
30637	* src/xfns.c (Fx_show_tip): Call flush_frame.  (Bug#34819)
30638
306392019-06-29  Paul Eggert  <eggert@cs.ucla.edu>
30640
30641	Pacify gcc and other image rotation tweaks
30642
30643	* src/image.c: No need to include <float.h> as lisp.h does that.
30644	(matrix3x3_copy): Remove; no longer needed.
30645	(divide_double): New function, to avoid undefined behavior
30646	when dividing by zero on non-IEEE hosts.
30647	(image_set_transform): Simplify transformation computation
30648	by avoiding the need to copy a matrix.  Pacify
30649	gcc 9 -Wdouble-promotion and -Wmaybe-uninitialized.
30650	Avoid unnecessary assignment of width and height.
30651	Improve error reporting for unsupported native image rotation.
30652
306532019-06-29  Ken Brown  <kbrown@cornell.edu>
30654
30655	Simplify workaround for Cygwin O_PATH bug
30656
30657	Suggested by Paul Eggert (Bug#36405#22).
30658	* configure.ac (HAVE_CYGWIN_O_PATH_BUG): New AC_DEFINE, for Cygwin
30659	versions 3.0.0 through 3.0.7.
30660	* src/dired.c (O_PATH) [__CYGWIN__]: Remove #undef.
30661	(file_attributes) [HAVE_CYGWIN_O_PATH_BUG]: Don't use O_PATH.
30662
306632019-06-29  Eli Zaretskii  <eliz@gnu.org>
30664
30665	Support native image transforms on MS-Windows
30666
30667	This changeset also rearranges native image transform code
30668	for other platforms to make it cleaner, and also removes
30669	the support for native cropping.  For the discussions, see
30670	https://lists.gnu.org/archive/html/emacs-devel/2019-06/msg00242.html
30671
30672	* src/w32term.c (w32_image_rotations_p, transform): New functions.
30673	(w32_draw_image_foreground): If image rotation is requested
30674	and supported, call PlgBlt to transform the image.
30675	(w32_initialize): Populate the PlgBlt function pointer if it
30676	is supported.
30677	* src/w32term.h (w32_image_rotations_p): Add prototype.
30678	* src/dispextern.h (struct image) [HAVE_NTGUI]: New member xform.
30679	* src/image.c (compute_image_rotation): Renamed from
30680	image_set_rotation.  Only compute and returns the rotation
30681	angle; leave the matrix calculation for later.  Log an error
30682	message if the :rotation parameter is not a number.
30683	(image_set_crop): Function deleted.  We no longer support
30684	native cropping, as one can display an image slice instead.
30685	(image_set_transform): Compute the transform matrix in its
30686	entirety here, in two variants: one for XRender and Cairo, the
30687	other for NS and MS-Windows.  call compute_image_size and
30688	compute_image_rotation internally.
30689	(lookup_image) [HAVE_NATIVE_TRANSFORMS]: Call only
30690	image_set_transform.  No need to pass the transform matrix to
30691	image_set_transform.
30692	(Fimage_transforms_p): Return a list of transform capabilities
30693	rather than a simple boolean.  Support TTY frames as well.
30694	* src/nsimage.m (setTransform:): Don't invert the matrix, as
30695	it is already inverted in image.c.
30696
30697	* test/manual/image-transforms-tests.el (test-cropping): State
30698	in the text that only ImageMagick supports cropping.
30699
30700	* doc/lispref/display.texi (Image Descriptors): Update the
30701	documentation of native image transforms.
30702	(ImageMagick Images): Move the description of ':crop' here.
30703
30704	* etc/NEWS: Minor copyedits of the feature announcement.
30705
307062019-06-29  Shuguang Sun  <shuguang79@qq.com>
30707
30708	Fix recent change in Tramp
30709
30710	* lisp/net/tramp-adb.el:
30711	* lisp/net/tramp-archive.el:
30712	* lisp/net/tramp-integration.el: Remove superfluous `progn' in
30713	`with-eval-after-load'.
30714
307152019-06-29  Lars Ingebrigtsen  <larsi@gnus.org>
30716
30717	Cosmetic fix-up of message-forward-included-headers
30718
30719	* lisp/gnus/message.el (message-forward-included-headers): Use
30720	consistent capitalization in the regexps.
30721
307222019-06-29  Eli Zaretskii  <eliz@gnu.org>
30723
30724	Fix display of fringe bitmaps for tooltips in echo area
30725
30726	* src/xdisp.c (display_line): Force redrawing of fringe
30727	bitmaps when redisplaying a minibuffer window with
30728	truncate-lines set to a non-nil value.  (Bug#36308)
30729
307302019-06-29  Mattias Engdegård  <mattiase@acm.org>
30731
30732	Allow empty argument to `regexp-opt-charset'
30733
30734	* test/lisp/emacs-lisp/regexp-opt-tests.el (regexp-opt-charset):
30735	Handle nil argument, and use regexp-quote for singletons.
30736	* lisp/emacs-lisp/regexp-opt.el (regexp-opt-charset): Expand tests.
30737
307382019-06-28  Paul Eggert  <eggert@cs.ucla.edu>
30739
30740	Revert O_PATH change to fileio.c
30741
30742	Ken Brown pointed out it wasn’t needed (Bug#36405#16):
30743	* src/fileio.c (O_PATH) [__CYGWIN__]: Remove #undef.
30744
307452019-06-28  Andreas Schwab  <schwab@linux-m68k.org>
30746
30747	* test/src/json-tests.el (json-serialize/object): Fix spacing.
30748
307492019-06-28  Pip Cet  <pipcet@gmail.com>
30750
30751	Fix json-serialize/object test failure
30752
30753	* test/src/json-tests.el (json-serialize/object):
30754	Accept failure with different code.
30755
307562019-06-28  Mattias Engdegård  <mattiase@acm.org>
30757
30758	Strength-reduce `equal', `eql', `member' and `memql'
30759
30760	When comparing against symbols, turn `equal' and `eql' into `eq',
30761	and `member' and `memql' into `memq'.
30762
30763	* lisp/emacs-lisp/byte-opt.el (byte-optimize--constant-symbol-p)
30764	(byte-optimize-equal, byte-optimize-member): New.
30765	(member, memql, equal, eql): Use new byte-optimizers.
30766
307672019-06-28  Stefan Kangas  <stefankangas@gmail.com>
30768
30769	Document bookmark annotations in Emacs Manual (bug#36417)
30770
30771	* doc/emacs/regs.texi (Bookmarks): Document annotations.
30772	* lisp/bookmark.el (bookmark-use-annotations): Clarify docstring.
30773
307742019-06-28  Mattias Engdegård  <mattiase@acm.org>
30775
30776	Correct regexp matching of raw bytes
30777
30778	Make regexp matching of raw bytes work in all combination of unibyte
30779	and multibyte patterns and targets, as exact strings and in character
30780	alternatives (bug#3687).
30781
30782	* src/regex-emacs.c (analyze_first):
30783	Include raw byte in fastmap when pattern is a multibyte exact string.
30784	Include leading byte in fastmap for raw bytes in character alternatives.
30785	(re_match_2_internal):
30786	Decrement the byte count by the number of bytes in the pattern character,
30787	not 1.
30788	* test/src/regex-emacs-tests.el (regexp-unibyte-unibyte)
30789	(regexp-multibyte-unibyte, regexp-unibyte-mutibyte)
30790	(regexp-multibyte-multibyte): New tests.
30791
307922019-06-28  Michael Albinus  <michael.albinus@gmx.de>
30793
30794	Tramp requires Emacs 24.4
30795
30796	* doc/misc/tramp.texi (Frequently Asked Questions):
30797	Use `with-eval-after-load'. in example.
30798
30799	* doc/misc/trampver.texi: Set variable emacsver.
30800
30801	* lisp/net/tramp.el (tramp-send-string, tramp-call-process)
30802	(tramp-call-process-region, tramp-process-lines):
30803	* lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
30804	(tramp-adb-sh-fix-ls-output, tramp-adb-maybe-open-connection):
30805	* lisp/net/tramp-gvfs.el (tramp-gvfs-get-directory-attributes)
30806	(tramp-gvfs-handle-file-notify-add-watch)
30807	* lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
30808	(tramp-do-copy-or-rename-file-out-of-band)
30809	(tramp-sh-handle-file-notify-add-watch, tramp-find-executable)
30810	(tramp-set-remote-path)
30811	(tramp-open-connection-setup-interactive-shell)
30812	(tramp-maybe-open-connection, tramp-send-command):
30813	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
30814	(tramp-smb-handle-file-acl, tramp-smb-handle-process-file)
30815	(tramp-smb-handle-set-file-acl)
30816	(tramp-smb-handle-start-file-process)
30817	(tramp-smb-maybe-open-connection):
30818	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-set-file-acl):
30819	(tramp-sudoedit-send-command): Use `string-join' and `string-empty-p'.
30820
30821	* lisp/net/tramp-adb.el:
30822	* lisp/net/tramp-archive.el:
30823	* lisp/net/tramp-integration.el:
30824	* lisp/net/tramp-ftp.el: Use `with-eval-after-load'.
30825
30826	* lisp/net/tramp-cmds.el (tramp-cleanup-connection)
30827	(tramp-cleanup-all-connections): Cancel timer.
30828
30829	* lisp/net/tramp-compat.el (subr-x): Require.
30830	(default-toplevel-value): Don't make it a defalias.
30831
30832	* lisp/net/tramp-gvfs.el: Use `dbus-event-error-functions'.  Do
30833	not special handle `split-string'.
30834
30835	* lisp/net/tramp.el: Require Emacs 24.4.
30836	(tramp-password-prompt-regexp): Use `password-word-equivalents'.
30837	(tramp-user-error): Use `user-error'.
30838	(tramp-replace-environment-variables): Use `substitute-env-vars'.
30839	(tramp-wait-for-regexp): Rearrange `with-current-buffer' call.
30840	(tramp-get-local-gid): Use `group-gid'.
30841
30842	* lisp/net/trampver.el: Check for Emacs 24.4.
30843
30844	* test/lisp/net/tramp-tests.el (tramp-test02-file-name-dissect)
30845	(tramp-test02-file-name-dissect-simplified)
30846	(tramp-test02-file-name-dissect-separate)
30847	(tramp-test03-file-name-host-rules)
30848	(tramp-test03-file-name-method-rules): Don't check for `user-error'.
30849
308502019-06-28  Lars Ingebrigtsen  <larsi@gnus.org>
30851
30852	Doc fix for Gnus "very wide" reply commands
30853
30854	* lisp/gnus/gnus-msg.el (gnus-summary-very-wide-reply-with-original)
30855	(gnus-summary-very-wide-reply): Clarify what a "very wide reply" is.
30856
308572019-06-28  Lars Ingebrigtsen  <larsi@gnus.org>
30858
30859	Revert "Fontify _emphasis_ in info nodes"
30860
30861	This reverts commit 72963b4e82eef5767e3172f28bd9bd97f487c98a.
30862
30863	The change incorrectly fontified whole sentences as emphasis.
30864
308652019-06-28  Lars Ingebrigtsen  <larsi@gnus.org>
30866
30867	Include To and Cc headers when forwarding with Message
30868
30869	* lisp/gnus/message.el (message-forward-included-headers): Include
30870	more of the important headers when forwarded: To and Cc.
30871
308722019-06-28  Michael Albinus  <michael.albinus@gmx.de>
30873
30874	* lisp/gnus/gnus-art.el (gnus-article-stop-animations):
30875
30876	Use `cancel-function-timers'.
30877
308782019-06-28  Mattias Engdegård  <mattiase@acm.org>
30879
30880	More readable regexp debug output
30881
30882	* src/regex-emacs.c (debug_putchar): New.
30883	(print_fastmap, print_partial_compiled_pattern, print_double_string)
30884	(regex_compile): Use debug_putchar.
30885	(re_match_2_internal): Add newline.
30886
308872019-06-28  Mattias Engdegård  <mattiase@acm.org>
30888
30889	Consistently use stderr for debug output in regexp code
30890
30891	* src/regex-emacs.c (DEBUG_PRINT, print_fastmap, print_compiled_pattern)
30892	(print_double_string, regex_compile): Print to stderr instead of stdout.
30893
308942019-06-28  Lars Ingebrigtsen  <larsi@gnus.org>
30895
30896	Don't inhibit quit in Gnus when prefetching articles
30897
30898	* lisp/gnus/gnus-async.el (gnus-async-prefetch-next): Don't
30899	inhibit quit when running `gnus-async-prefetch-article'.
30900
309012019-06-27  Alex Branham  <alex.branham@gmail.com>
30902
30903	* lisp/simple.el (undo): Make message less enthusiastic
30904
309052019-06-27  Ola Nilsson  <ola.nilsson@gmail.com>
30906
30907	Allow underscore in defun-prompt-regex names for sh-script
30908
30909	* lisp/progmodes/sh-script.el (defun-prompt-regexp):
30910	Allow underscore in function names.
30911
309122019-06-27  Paul Eggert  <eggert@cs.ucla.edu>
30913
30914	Improve ‘equal’ and array doc
30915
30916	* doc/lispref/objects.texi (Array Type): Array sizes are
30917	nonnegative fixnums, not arbitrary integers.
30918	(Equality Predicates): Do not say that ‘eq’ equals ‘=’ on bignums.
30919	Do not imply that ‘equal’ must signal an error on circular lists.
30920
309212019-06-27  Paul Eggert  <eggert@cs.ucla.edu>
30922
30923	* src/xfaces.c (resolve_face_name): Simplify.
30924
309252019-06-27  Pip Cet  <pipcet@gmail.com>
30926
30927	Remove unnecessary tortoise checks.
30928
30929	* src/fns.c (Fplist_get, Fplist_put, Flax_plist_get)
30930	(Flax_plist_put, Fplist_member): Remove unnecessary check.
30931	* src/json.c (lisp_to_json_toplevel_1): Remove unnecessary check.
30932
309332019-06-27  Paul Eggert  <eggert@cs.ucla.edu>
30934
30935	Work around Cygwin bug with O_PATH
30936
30937	Problem reported by Ken Brown (Bug#36405).
30938	* src/dired.c, src/fileio.c (O_PATH) [__CYGWIN__]: Undef.
30939
309402019-06-27  Paul Eggert  <eggert@cs.ucla.edu>
30941
30942	Omit a few minor unnecessary range checks
30943
30944	Based on Pip Cet’s review (Bug#36370#19).
30945	* src/fileio.c (Fdo_auto_save):
30946	* src/image.c (lookup_image):
30947	* src/textprop.c (Fnext_single_char_property_change):
30948	Prefer XFIXNUM to XFIXNAT for clarity and consistency with
30949	neighboring code, and to avoid unnecessary range checks.
30950	* src/image.c (lookup_image): Omit unnecessary range checks.
30951
309522019-06-27  Paul Eggert  <eggert@cs.ucla.edu>
30953
30954	Improve XFIXNUM cleanup a bit
30955
30956	Based on Pip Cet’s review (Bug#36370#13).
30957	* src/ccl.c (Fccl_execute_on_string): Use clearer indexing.
30958	* src/dosfns.c (Fint86, Fdos_memput):
30959	Avoid runtime checks for negative fixnums when debugging.
30960	This restores the earlier machine code.
30961	* src/lisp.h (XFIXNUM, XUFIXNUM): Use eassert, not eassume.
30962	(XFIXNAT): At the start, merely eassert FIXNUMP rather
30963	than eassuming FIXNATP.  At the end, eassume that the
30964	result is nonnegative.  This restores help to the compiler
30965	that the previous patch mistakenly removed.
30966
309672019-06-27  Paul Eggert  <eggert@cs.ucla.edu>
30968
30969	Clean up use of XFIXNUM etc.
30970
30971	A few bits of the code were relying on the fact that XFIXNUM,
30972	XFIXNAT, and XUFIXNUM do something even with arguments that
30973	are not fixnums/fixnats.  Separate these rare uses out into
30974	XFIXNUM_RAW and XUFIXNUM_RAW.
30975	Problem and original patch reported by Pip Cet (Bug#36370).
30976	* src/ccl.c (Fccl_execute_on_string):
30977	* src/fileio.c (Finsert_file_contents, a_write)
30978	(Fdo_auto_save):
30979	* src/process.c (conv_lisp_to_sockaddr):
30980	* src/textprop.c (Fnext_single_char_property_change)
30981	(Fprevious_single_char_property_change)
30982	(Fnext_property_change, Fnext_single_property_change)
30983	(Fprevious_property_change)
30984	(Fprevious_single_property_change):
30985	Don’t assume fixnums are nonnegative.
30986	* src/ccl.c (Fccl_execute_on_string):
30987	Fix range-checking bug if AREF (status, i) is out of int range.
30988	* src/data.c (arith_driver): Use XFIXNUM_RAW as we want
30989	efficient garbage if the value is not a fixnum.
30990	* src/dosfns.c (Fint86, Fdos_memput):
30991	Check that args are nonnegative.
30992	* src/image.c (lookup_image): Check that args are in range.
30993	* src/lisp.h (lisp_h_XHASH): Use XUFIXNUM_RAW, since this
30994	is for hashing.
30995	(lisp_h_XFIXNAT, XFIXNAT) [USE_LSB_TAG]: Remove macros.
30996	(lisp_h_XFIXNUM_RAW, XFIXNUM_RAW) [USE_LSB_TAG]: New macros, with
30997	the semantics of the old macros without _RAW.
30998	(XFIXNUM_RAW, XUFIXNUM_RAW): New inline functions, with the
30999	semantics of the old functions without _RAW.
31000	(FIXNUMP): Move definition up to avoid forward use.
31001	(XFIXNUM, XFIXNAT, XUFIXNUM): Use eassume to add a runtime
31002	check (when debugging) that the argument has the proper form.
31003	(XFIXNUM, XFIXNAT): Now inline functions only, since they
31004	refer to their arguments more than once now that they use eassume.
31005	* src/textprop.c (Fprevious_single_char_property_change):
31006	Avoid fixnum overflow with invalid input.
31007	(set_text_properties): Fix unlikely failure
31008	to validate arguments, by using EQ instead of XFIXNAT.
31009	* src/w32term.c (w32_draw_glyph_string):
31010	* src/xterm.c (x_draw_glyph_string):
31011	Treat negative minimums as 0 rather than as garbage patterns.
31012
310132019-06-27  Paul Eggert  <eggert@cs.ucla.edu>
31014
31015	Catch duplicate keywords in image specs
31016
31017	* src/image.c (struct image_keyword.count): Now bool, not int,
31018	since it is either 0 or 1.
31019	(parse_image_spec, xpm_image_p): Use bool for boolean.
31020	(parse_image_spec): Fix a bug introduced in
31021	2011-09-21T17:41:20!eggert@cs.ucla.edu that reported only
31022	triplicate (or more) keywords, not duplicates.
31023
310242019-06-27  Lars Ingebrigtsen  <larsi@gnus.org>
31025
31026	Mention the new emacsclient -a/--eval behaviour
31027
310282019-06-27  Lars Ingebrigtsen  <larsi@gnus.org>
31029
31030	emacsclient: ignore --eval parameters when starting alternate editor
31031
31032	* lib-src/emacsclient.c (fail): If the user said --eval, don't
31033	pass those arguments to the alternate editor as file names.
31034	Suggested by a patch from Scott Turner (bug#11474).
31035
310362019-06-27  Vasilij Schneidermann  <v.schneidermann@gmail.com>
31037
31038	Allow for retrieving profiler logs after stopping
31039
31040	* lisp/profiler.el (profiler-cpu-log, profiler-memory-log): New
31041	variables.
31042	(profiler-cpu-profile): Work even if the profiler is no longer
31043	running (bug#22114).
31044	(profiler-memory-profile): Ditto.
31045	(profiler-stop): Save the data.
31046	(profiler-reset): Clear the saved data.
31047	(profiler-report-cpu, profiler-report-memory): Report on the saved
31048	data.
31049	(profiler-report): Save the data here, too.
31050
310512019-06-27  Dan Nicolaescu  <dann@ics.uci.edu>
31052
31053	Include the date in the bzr annotation buffer
31054
31055	* lisp/vc/vc-bzr.el (vc-bzr-annotate-command)
31056	(vc-bzr-annotate-time)
31057	(vc-bzr-annotate-extract-revision-at-line): Include a date in the
31058	bzr annotation buffer (bug#5428).
31059
310602019-06-27  Stefan Kangas  <stefankangas@gmail.com>
31061
31062	Add new ispell-change-dictionary-hook (Bug#1110)
31063
31064	* lisp/textmodes/ispell.el (ispell-change-dictionary-hook): New hook.
31065	(ispell-change-dictionary): Call new hook (bug#1110).
31066
310672019-06-27  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
31068
31069	Add a new regexp variable to control boring winner buffers
31070
31071	* doc/emacs/windows.texi (Window Convenience): Mention it.
31072
31073	* lisp/winner.el (winner-boring-buffers-regexp): New variable.
31074
31075	* lisp/winner.el (winner-set): Use it (bug#11151).
31076
310772019-06-27  Ken Brown  <kbrown@cornell.edu>
31078
31079	Fix invoking Emacs via a symlink on Cygwin
31080
31081	* src/emacs.c (load_pdump) [CYGWIN]: Strip ".exe" suffix.
31082
310832019-06-27  Lennart Borgman  <lennart.borgman@gmail.com>
31084
31085	Add more fontification to regexp builder mode
31086
31087	* lisp/emacs-lisp/re-builder.el (reb-copy): Work in the presence
31088	of newlines in the regexps.
31089	(reb-change-syntax): Use a dedicated history variable.
31090	(reb-fontify-string-re): Fontify sub-matches.
31091	(reb-regexp-grouping-backslash, reb-regexp-grouping-construct):
31092	New faces.
31093	(reb-string-font-lock-keywords): New variable.
31094	(reb-mark-non-matching-parenthesis): Match parenthesis.
31095	(reb-restart-font-lock): New function.
31096
31097	* lisp/emacs-lisp/re-builder.el (reb-mode-map): Add divider some
31098	dividers (bug#6347).
31099
311002019-06-27  Lars Ingebrigtsen  <larsi@gnus.org>
31101
31102	Rename displayor to displayer in CEDET
31103
31104	* doc/misc/sem-user.texi (Idle Completions Mode): Rename
31105	displayor->displayer throughout.
31106	(Idle Completions Mode): Ditto.
31107
31108	* lisp/cedet/semantic/complete.el: Rename displayor->displayer
31109	throughout and add aliases for all the methods that used that name.
31110
311112019-06-27  Dmitry Gutov  <dgutov@yandex.ru>
31112
31113	Use `default-indent-new-line' instead of `indent-new-comment-line'
31114
31115	* lisp/simple.el (default-indent-new-line): Doc string fix.
31116
31117	* lisp/textmodes/refill.el (refill-post-command-function): Make
31118	default-indent-new-line work as indent-new-comment-line.
31119
31120	* lisp/textmodes/refill.el (refill-post-command-function): Bind
31121	`M-C-j' and `M-j' to default-indent-new-line instead of
31122	indent-new-comment-line to allow overriding via
31123	`comment-line-break-function' (bug#12413).
31124
311252019-06-27  Lars Ingebrigtsen  <larsi@gnus.org>
31126
31127	Revert "Apply font-lock in hexl-mode buffers"
31128
31129	This reverts commit 573de396f03684efa89ead24a371b0f4c9bf8d5d.
31130
31131	The change wasn't necessary -- the hexl-mode buffer is automatically fontified.
31132
311332019-06-27  Aaron S. Hawley  <aaron.s.hawley@gmail.com>
31134
31135	Allow generating wiki and mediawiki tables
31136
31137	* lisp/textmodes/table.el (table--generate-source-prologue)
31138	(table--generate-source-epilogue)
31139	(table--generate-source-scan-rows)
31140	(table--generate-source-cells-in-a-row): Insert the wiki/mediawiki
31141	separators.
31142
31143	* lisp/textmodes/table.el (table-source-languages): Add support
31144	for wiki and mediawiki tables (bug#13287).
31145
31146	2019-06-27  Lars Ingebrigtsen  <larsi@gnus.org>
31147
31148		* doc/emacs/text.texi (Table Misc): Mention the new wiki and
31149		mediawiki formats.
31150
311512019-06-27  Wilfred Hughes  <me@wilfred.me.uk>
31152
31153	Apply font-lock in hexl-mode buffers
31154
31155	* lisp/hexl.el (hexl-mode): After setting font-lock-defaults, we
31156	need to call `font-lock-ensure' to apply hexl-mode faces
31157	(bug#24645).
31158
311592019-06-27  Juanma Barranquero  <lekktu@gmail.com>
31160
31161	Add :local specifier to defcustom
31162
31163	* lisp/custom.el (custom-declare-variable): Allow the new :local
31164	parameter (bug#14591).
31165	(defcustom): Document it.
31166
311672019-06-27  Paul Eggert  <eggert@cs.ucla.edu>
31168
31169	Tweak ‘error’ and ‘user-error’ doc strings
31170
31171	* lisp/net/tramp.el (tramp-user-error):
31172	* lisp/subr.el (user-error):
31173	Say that user errors are sometimes called pilot errors.
31174	* lisp/subr.el (error, user-error):
31175	Reorder wording to discuss mechanism first, then formatting advice,
31176	rather than going back and forth between the two topics.
31177	Tighten up the wording a bit.
31178
311792019-06-27  Stefan Kangas  <stefankangas@gmail.com>
31180
31181	Clarify error and user-error docstrings
31182
31183	* lisp/subr.el (error, user-error)
31184	* lisp/net/tramp.el (tramp-user-error): Change "pilot error" to "user
31185	error" and improve documentation.
31186
311872019-06-26  Basil L. Contovounesios  <contovob@tcd.ie>
31188
31189	Remove gnus-bug from report-emacs-bug TODO entry
31190
31191	For discussion, see the following thread:
31192	https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg01196.html
31193	https://lists.gnu.org/archive/html/emacs-devel/2019-06/msg00967.html
31194
31195	* etc/TODO: Remove gnus-bug from list of obsolete bug-reporting
31196	commands now that it is implemented in terms of report-emacs-bug.
31197
311982019-06-26  Mattias Engdegård  <mattiase@acm.org>
31199
31200	Document bug in `replace-regexp-in-string'
31201
31202	`replace-regexp-in-string' omits the first START characters of the
31203	input string in its return value.  This is a clear bug, but fixing it
31204	probably causes more trouble; document the behaviour instead (bug#36372).
31205
31206	* doc/lispref/searching.texi (Search and Replace)
31207	* lisp/subr.el (replace-regexp-in-string):
31208	Document current behaviour.
31209
312102019-06-26  Stefan Monnier  <monnier@iro.umontreal.ca>
31211
31212	* lisp/textmodes/page-ext.el (sort-pages-buffer): Fix typo
31213
31214	Reported by Marco Wahl <marcowahlsoft@gmail.com>.
31215	Update `Commentary:` to use the new command names.
31216	(pages--ctl-x-ctl-p-map): Fix `mark-page` binding.
31217	(pages-directory-mode-map): Update `add-new-page` => `pages-add-new-page`.
31218
312192019-06-26  Eli Zaretskii  <eliz@gnu.org>
31220
31221	Support invoking Emacs via a symlink on MS-Windows
31222
31223	* src/w32.c (w32_my_exename): Resolve symlinks in the
31224	executable name, to support searching for the pdumper file
31225	when the executable is found via a symlink.
31226	* src/emacs.c (load_pdump): Add a comment about symlink
31227	resolution on Windows.
31228
312292019-06-26  Andrzej P  <andrzej@morgangilbert.co.uk>  (tiny change)
31230
31231	Fix redisplay of registers in gdb-mi
31232
31233	* lisp/progmodes/gdb-mi.el (gdb-update): Call
31234	gdb-get-changed-registers before updating the GDB-MI buffers.
31235	(Bug#16366)
31236
312372019-06-26  Lars Ingebrigtsen  <larsi@gnus.org>
31238
31239	Restrict indirect lookups in Fdocumentation_property
31240
31241	* src/doc.c (Fdocumentation_property): Only look up indirect
31242	variables if we've been asked for the variable documentation.
31243
312442019-06-26  Stefan Monnier  <monnier@iro.umontreal.ca>
31245
31246	Merge branch 'master' of git+ssh://git.sv.gnu.org/srv/git/emacs into trunk
31247
312482019-06-26  Bruce Stephens  <bruce.stephens@isode.com>
31249
31250	* lisp/calc/calc-ext.el (math-scalarp): Fix typo
31251
312522019-06-26  Lars Ingebrigtsen  <larsi@gnus.org>
31253
31254	Fdocumentation_property: Return doc string for indirect variables
31255
31256	* src/doc.c (Fdocumentation_property): When dealing with indirect
31257	variables (i.e., aliases), also check the symbol being pointed to
31258	for the doc string (bug #17180).
31259
312602019-06-26  Stefan Monnier  <monnier@iro.umontreal.ca>
31261
31262	Revert "* lisp/calc/calc-ext.el (math-scalarp): Fix typo"
31263
31264	This reverts commit 698ff554ac2699ec48fefc85a1307cbc4a183b0d.
31265
312662019-06-26  Johan Claesson  <johanclaesson@bredband.net>  (tiny change)
31267
31268	help-C-file-name shouldn't error out if we can't find the name
31269
31270	* lisp/help-fns.el (help-C-file-name): Make help-C-file-name
31271	return nil instead of signaling an error if we can't find the
31272	file name (bug#17250).
31273
312742019-06-26  Stefan Monnier  <monnier@iro.umontreal.ca>
31275
31276	* test/lisp/calc/calc-tests.el (test-math-bignum, test-calc-23889): Disable
31277
31278	Not applicable any more with native bignums.
31279
312802019-06-26  Stefan Monnier  <monnier@iro.umontreal.ca>
31281
31282	* lisp/calc/calc-ext.el (math-scalarp): Fix typo
31283
312842019-06-26  Noam Postavsky  <npostavs@gmail.com>
31285
31286	Fix (rx-to-string (and (literal STR) (regexp STR)) regression
31287
31288	* lisp/emacs-lisp/rx.el (rx-regexp, rx-literal): Check the cadr of the
31289	form for stringness, not the form itself.
31290	* test/lisp/emacs-lisp/rx-tests.el (rx-to-string-lisp-forms): New test.
31291
312922019-06-26  Mattias Engdegård  <mattiase@acm.org>
31293
31294	Merge consecutive constant `concat' args (bug#14769)
31295
31296	Suggested by Shigeru Fukaya <shigeru.fukaya@gmail.com>
31297
31298	* lisp/emacs-lisp/byte-opt.el (byte-optimize-concat): New.
31299	(concat): Add byte-optimizer.
31300
313012019-06-25  Stefan Monnier  <monnier@iro.umontreal.ca>
31302
31303	* lisp/calc/calc.el: Take advantage of native bignums.
31304
31305	Remove redundant :group args.
31306
31307	(calc-trail-mode): Use inhibit-read-only.
31308	(math-bignum-digit-length, math-bignum-digit-size)
31309	(math-small-integer-size): Delete constants.
31310	(math-normalize): Use native bignums.
31311	(math-bignum, math-bignum-big): Delete functions.
31312	(math-make-float): The mantissa can't be a calc bignum any more.
31313	(math-neg, math-scale-left, math-scale-right, math-scale-rounding)
31314	(math-add, math-sub, math-mul, math-idivmod, math-quotient)
31315	(math-format-number, math-read-number, math-read-number-simple):
31316	Don't bother handling calc bignums.
31317	(math-div10-bignum, math-scale-left-bignum, math-scale-right-bignum)
31318	(math-add-bignum, math-sub-bignum, math-mul-bignum, math-mul-bignum-digit)
31319	(math-div-bignum, math-div-bignum-digit, math-div-bignum-big)
31320	(math-div-bignum-part, math-div-bignum-try, math-format-bignum)
31321	(math-format-bignum-decimal, math-read-bignum): Delete functions.
31322	(math-numdigs): Don't presume that native ints are small enough to use
31323	a slow algorithm.
31324
31325	* lisp/calc/calc-aent.el (calc-do-quick-calc):
31326	* lisp/calc/calc-vec.el (calcFunc-vunpack):
31327	* lisp/calc/calc-alg.el (math-beforep): Don't bother handling calc bignums.
31328
31329	* lisp/calc/calc-bin.el (math-bignum-logb-digit-size)
31330	(math-bignum-digit-power-of-two): Remove constants.
31331	(calcFunc-and, math-binary-arg, calcFunc-or, calcFunc-xor)
31332	(calcFunc-diff, calcFunc-not, math-clip, math-format-twos-complement):
31333	Use Emacs's builtin bignums.
31334	(math-and-bignum, math-or-bignum, math-xor-bignum, math-diff-bignum)
31335	(math-not-bignum, math-clip-bignum)
31336	(math-format-bignum-radix, math-format-bignum-binary)
31337	(math-format-bignum-octal, math-format-bignum-hex): Delete functions.
31338	(math-format-binary): Fix old copy&paste error.
31339
31340	* lisp/calc/calc-comb.el (calc-prime-factors): Adjust for unused arg.
31341	(math-prime-test): math-fixnum is now the identity.
31342
31343	* lisp/calc/calc-ext.el: Require cl-lib.
31344	(math-oddp): Use cl-oddp.  Don't bother with calc bignums.
31345	(math-integerp, math-natnump, math-ratp, math-realp, math-anglep)
31346	(math-numberp, math-scalarp, math-vectorp, math-objvecp, math-primp)
31347	(math-num-natnump, math-objectp, math-check-integer, math-compare):
31348	Don't bother handling calc bignums.
31349	(math-check-fixnum): Use fixnump.
31350	(math-fixnum, math-fixnum-big, math-bignum-test): Remove functions.
31351	(math--format-integer-fancy): Rename from math-format-bignum-fancy.
31352	Adjust for internal bignums.
31353
31354	* lisp/calc/calc-funcs.el (calcFunc-besJ): Use cl-isqrt.
31355
31356	* lisp/calc/calc-macs.el (Math-zerop, Math-integer-negp)
31357	(Math-integer-posp, Math-negp, Math-posp, Math-integerp)
31358	(Math-natnump, Math-ratp, Math-realp, Math-anglep, Math-numberp)
31359	(Math-scalarp, Math-vectorp, Math-objectp, Math-objvecp)
31360	(Math-integer-neg, Math-primp, Math-num-integerp):
31361	Don't bother handling calc bignums.
31362	(Math-bignum-test): Delete function.
31363
31364	* lisp/calc/calc-math.el (math-use-emacs-fn): Remove unused `fx`.
31365	(math-isqrt, math-sqrt): Use cl-isqrt.  Don't bother handling calc bignums.
31366	(math-isqrt-bignum, math-isqrt-bignum-iter, math-isqrt-small):
31367	Delete function.
31368
31369	* lisp/calc/calc-misc.el (math-fixnump, math-fixnatnump): Use fixnump.
31370	(math-evenp): Use cl-evenp.
31371	(math-zerop, math-negp, math-posp, math-div2): Don't bother handling
31372	calc bignums.
31373	(math-div2-bignum): Delete function.
31374
313752019-06-25  Noam Postavsky  <npostavs@gmail.com>
31376
31377	Merge from emacs-26
31378
31379	e62ad04963 Fix sgml-mode handling of quotes within parens (Bug#36347)
31380	06b35b2f92 ; * lisp/frame.el: Enhance add-variable-watcher commentary.
31381	572e34bb6f Rename 'make-symbolic-link' argument NEWNAME to LINKNAME
31382	04477adedc Check that length of data returned by sysctl is non-zero
31383	81535eeadb * test/lisp/progmodes/python-tests.el (python-virt-bin): D...
31384	9d48979ca8 Fix Python tests depending on system-type
31385	fcf6cc3177 Fix problem with wdired test when symlinks cannot be created.
31386	4701e0663e Improve wording of documentation of click events
31387
31388	# Conflicts:
31389	#	lisp/textmodes/sgml-mode.el
31390	#	test/lisp/textmodes/sgml-mode-tests.el
31391
313922019-06-25  Noam Postavsky  <npostavs@gmail.com>
31393
31394	Merge from emacs-26
31395
31396	2b765c650a Remove outdated comment in winner.el (Bug#36185)
31397
313982019-06-25  Noam Postavsky  <npostavs@gmail.com>
31399
31400	Don't bind search-spaces-regexp around possible autoload (Bug#35802)
31401
31402	* lisp/isearch.el (isearch-search-fun-default): Move possible autoload
31403	trigger outside let-binding of search-spaces-regexp.
31404	* lisp/char-fold.el (char-fold-make-table): Remove no longer needed
31405	workaround.
31406
31407	* lisp/info.el (Info-search-whitespace-regexp):
31408	* lisp/isearch.el (search-whitespace-regexp):
31409	* src/search.c (syms_of_search) <search-spaces-regexp>: Add warning
31410	about adding capturing groups to the value.
31411
31412	* test/lisp/char-fold-tests.el: Remove, binding search-spaces-regexp
31413	to a different should be considered a bug.
31414
314152019-06-25  Noam Postavsky  <npostavs@gmail.com>
31416
31417	Support (rx (and (regexp EXPR) (literal EXPR))) (Bug#36237)
31418
31419	* lisp/emacs-lisp/rx.el (rx-regexp): Allow non-string forms.
31420	(rx-constituents): Add literal constituent, which is like a plain
31421	STRING form, but allows arbitrary lisp expressions.
31422	(rx-literal): New function.
31423	(rx-compile-to-lisp): New variable.
31424	(rx--subforms): New helper function for handling subforms, including
31425	non-constant case.
31426	(rx-group-if, rx-and, rx-or, rx-=, rx->=, rx-repeat, rx-submatch)
31427	(rx-submatch-n, rx-kleene, rx-atomic-p): Use it to handle non-constant
31428	subforms.
31429	(rx): Document new form, wrap non-constant forms with concat call.
31430	* test/lisp/emacs-lisp/rx-tests.el (rx-tests--match): New macro.
31431	(rx-nonstring-expr, rx-nonstring-expr-non-greedy): New tests.
31432	* etc/NEWS: Announce changes.
31433
314342019-06-25  Juanma Barranquero  <lekktu@gmail.com>
31435
31436	Fix PATH_MAX change to lib-src/emacsclient.c
31437
31438	* lib-src/emacsclient.c (get_current_dir_name): Declare pwdlen.
31439
314402019-06-25  Lars Ingebrigtsen  <larsi@gnus.org>
31441
31442	Fix previous patch to dired-mark-if
31443
31444	* lisp/dired.el (dired-mark-if): Don't use looking-at to check for
31445	characters.
31446
314472019-06-25  Paul Eggert  <eggert@cs.ucla.edu>
31448
31449	Prefer PATH_MAX to MAXPATHLEN
31450
31451	PATH_MAX is standardized, MAXPATHLEN is not.
31452	Also, the Gnulib pathmax module fixes some rare bugs with PATH_MAX.
31453	So prefer PATH_MAX to MAXPATHLEN unless we know the latter is
31454	also correct (for some platform-specific code).
31455	* admin/merge-gnulib (GNULIB_MODULES): Add pathmax.
31456	This module was already present, as a dependency of canonicalize-lgpl,
31457	but now Emacs is using it directly.  Sort.
31458	* lib-src/emacsclient.c: Include stdint.h, pathmax.h.
31459	(get_current_dir_name): Sync to current src/sysdep.c.
31460	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
31461	* src/sysdep.c: Include pathmax.h.
31462	(get_current_dir_name_or_unreachable):
31463	Use PATH_MAX instead of MAXPATHLEN.
31464
314652019-06-25  Dima Kogan  <dima@secretsauce.net>
31466
31467	View-search-... now hit all the matches, regardless of window position
31468
31469	* lisp/view.el (view-search): Jump to the next/prev occurrence of
31470	the search, even if it's displayed in the buffer (bug#18131).
31471	This seems more logical than the previous (undocumented) behaviour.
31472
314732019-06-25  Paul Eggert  <eggert@cs.ucla.edu>
31474
31475	Avoid some strlen work, primarily via strnlen
31476
31477	* admin/merge-gnulib (GNULIB_MODULES): Add strnlen.
31478	* lib-src/etags.c (find_entries):
31479	* src/emacs.c (main):
31480	* src/nsmenu.m (parseKeyEquiv:):
31481	* src/nsterm.m (ns_xlfd_to_fontname):
31482	* src/term.c (vfatal):
31483	Prefer !*X to !strlen (X).
31484	* lib-src/etags.c (pfnote, add_regex):
31485	* lib-src/pop.c (pop_open):
31486	* lib-src/update-game-score.c (main):
31487	* lwlib/lwlib.c (lw_separator_p):
31488	* src/doprnt.c (doprnt):
31489	* src/emacs.c (main):
31490	* src/inotify.c (inotifyevent_to_event):
31491	* src/keyboard.c (menu_separator_name_p, parse_tool_bar_item):
31492	* src/sysdep.c (get_current_dir_name_or_unreachable):
31493	* src/xdisp.c (store_mode_line_string):
31494	Use strnlen to avoid unnecessary work with strlen.
31495	* lib-src/etags.c (Prolog_functions, prolog_pr)
31496	(Erlang_functions, erlang_func):
31497	Prefer ptrdiff_t to size_t when either will do.
31498	(prolog_pr, erlang_func): New arg LASTLEN, to avoid
31499	unnecessary strlen call. All callers changed.
31500	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
31501	* lib/strnlen.c, m4/strnlen.m4: New files, copied from Gnulib.
31502	* lwlib/lwlib.c (lw_separator_p):
31503	* src/json.c (json_has_prefix):
31504	Use strncmp to avoid unecessary work with strlen + memcmp.
31505	* src/process.c (set_socket_option): Use SBYTES instead of strlen.
31506
315072019-06-25  Emilio C. Lopes  <eclig@gmx.net>  (tiny change)
31508
31509	Support opening a new connection when reverting a telnet buffer
31510
31511	* lisp/net/telnet.el (telnet-connect-command): New variable.
31512	(telnet-revert-buffer): New function.
31513	(telnet-mode): Use `telnet-revert-buffer' as `revert-buffer-function'.
31514	(telnet, rsh): Set `telnet-connect-command' accordingly (bug#18312).
31515
315162019-06-25  Arash Esbati  <arash@gnu.org>
31517
31518	Suppress warning about unix-sync in nnmaildir.el
31519
31520	* lisp/gnus/nnmaildir.el (nnmaildir-request-replace-article): Check if the
31521	function `unix-sync' is bound before running it.
31522
315232019-06-25  Ivan Shmakov  <ivan@siamics.net>
31524
31525	Check labels in smerge-mode
31526
31527	* lisp/vc/diff.el (diff-check-labels): Separated out into its own
31528	function (bug#18850)...
31529	(diff-no-select): ... from here.
31530
31531	* lisp/vc/smerge-mode.el (smerge-diff): Use diff-check-labels.
31532
315332019-06-25  Basil L. Contovounesios  <contovob@tcd.ie>
31534
31535	Avoid using subr-x.el function in files.el
31536
31537	* lisp/files.el (file-size-human-readable): Open code string-empty-p
31538	call.  This was the single occurrence of a subr-x.el function in
31539	files.el, which does not (yet) load subr-x.el.
31540
315412019-06-25  Stefan Monnier  <monnier@iro.umontreal.ca>
31542
31543	* lisp/emacs-lisp/cl-extra.el (cl-isqrt): Speed up bignum case
31544
315452019-06-25  Jonathan Shin Hayase  <pythonnut@gmail.com>
31546
31547	Highlight zsh glob flags and qualifiers in sh-mode
31548
31549	* lisp/progmodes/sh-script.el (sh-syntax-propertize-function):
31550	Add regexps to highlight zsh glob flags and alternate qualifiers
31551	without mistaking them for comments. (bug#19455).
31552
315532019-06-25  Lars Ingebrigtsen  <larsi@gnus.org>
31554
31555	Build fix for previous buffers.texi change
31556
315572019-06-25  Stefan Monnier  <monnier@iro.umontreal.ca>
31558
31559	* etc/NEWS: Fix vocabulary in last change
31560
315612019-06-25  Stefan Monnier  <monnier@iro.umontreal.ca>
31562
31563	* lisp/tar-mode.el: Use lexical-binding; remove redundant :groups.
31564
31565	(tar-new-entry): Remove unused var `buffer`.
31566
315672019-06-25  Lars Ingebrigtsen  <larsi@gnus.org>
31568
31569	Move widen/narrow in tabulated lists to } and {
31570
31571	* doc/emacs/buffers.texi (Several Buffers): Document it.
31572
31573	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode-map):
31574	Move widen/narrow to `}' and `{'.
31575
315762019-06-25  Glenn Morris  <rgm@gnu.org>
31577
31578	* test/lisp/progmodes/flymake-tests.el (ruby-backend): Skip on hydra.
31579
31580	Another unstable test.
31581
315822019-06-25  Stefan Monnier  <monnier@iro.umontreal.ca>
31583
31584	* lisp/net/tramp.el (tramp-file-name-handler): Use autoload-do-load
31585
315862019-06-25  Ivan Shmakov  <ivan@siamics.net>
31587
31588	Heed default directory in tar-untar-buffer
31589
31590	* lisp/tar-mode.el (tar-untar-buffer): Fix use the value of
31591	default-directory local to the tar-mode buffer (bug#19865).
31592
315932019-06-25  David Hull  <david.hull@openx.com>
31594
31595	etags: Fix handling of quoted symbol names in Erlang
31596
31597	* lib-src/etags.c (erlang_attribute): Fix handling of quoted
31598	symbol names in Erlang (bug#24960).
31599
316002019-06-25  Paul Eggert  <eggert@cs.ucla.edu>
31601
31602	Update from Gnulib
31603
31604	This incorporates:
31605	2019-06-24 unistd: stddef.h and sys/types.h namespace cleanup
31606	* lib/gnulib.mk.in: Regenerate.
31607	* lib/unistd.in.h: Copy from gnulib.
31608
316092019-06-25  Glenn Morris  <rgm@gnu.org>
31610
31611	* lisp/info.el (info-emphasis): Fix doc, version.
31612
316132019-06-25  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
31614
31615	Preserve header lines from derived modes in tabulated lists
31616
31617	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-init-header):
31618	Preserve header line set by derived modes (bug#21025).
31619
316202019-06-25  Drew Adams  <drew.adams@oracle.com>
31621
31622	Make dired commands report how many files they mark
31623
31624	* lisp/dired.el (dired-mark-if): Report the number of files marked
31625	when called, not the total number of marked files (bug#22457).
31626
316272019-06-25  Stefan Monnier  <monnier@iro.umontreal.ca>
31628
31629	* lisp/simple.el (forward-visible-line, end-of-visible-line): Use invisible-p
31630
316312019-06-25  Lars Ingebrigtsen  <larsi@gnus.org>
31632
31633	Add a new command to report the number and size of the marked files
31634
31635	2019-06-25  Constantino Calancha  <f92capac@gmail.com>
31636
31637		* lisp/dired.el (dired-mode-map): New keystroke and menu binding
31638		(bug#22829).
31639
31640	2019-06-25  Lars Ingebrigtsen  <larsi@gnus.org>
31641
31642		* doc/emacs/dired.texi (Marks vs Flags): Document it.
31643
31644		* lisp/dired.el (dired-number-of-marked-files): New command.
31645
316462019-06-25  Phil Sainty  <psainty@orcon.net.nz>
31647
31648	Fix `goto-address-url-regexp'
31649
31650	* lisp/net/goto-addr.el (goto-address-uri-schemes-ignored): New
31651	variable.
31652	(goto-address-uri-schemes): Ditto.
31653	(goto-address-url-regexp): Use them to compose the final regexp.
31654
31655	* lisp/net/goto-addr.el: The URI schemes to be recognised by
31656	`goto-address-mode' were not regexp-quoted (Bug#23343).
31657
316582019-06-25  Tino Calancha  <f92capac@gmail.com>
31659
31660	Make winner restore point in all windows that display a buffer
31661
31662	* lisp/window.el (window--before-delete-windows): New defun.
31663	(delete-window, delete-other-windows): Use it.
31664	* lisp/winner.el (winner-set): Use marker in 'window-prev-buffers'
31665	when available and different than the value returned by
31666	'winner-get-point' (bug#23621).
31667
316682019-06-25  Bastian Beischer  <bastian.beischer@gmail.com>  (tiny change)
31669
31670	Use xref in cedet
31671
31672	* lisp/cedet/semantic/complete.el (semantic-complete-jump-local)
31673	* lisp/cedet/semantic/analyze/refs.el
31674	(semantic-analyze-proto-impl-toggle): Use xref to handle jumping
31675	(bug#23793).
31676
316772019-06-25  Drew Adams  <drew.adams@oracle.com>
31678
31679	Fontify _emphasis_ in info nodes
31680
31681	* lisp/info.el (Info-fontify-node): Fontify _emphasis_ (bug#23798).
31682	(info-emphasis): New face.
31683
316842019-06-25  Robert Weiner  <rsw@gnu.org>
31685
31686	Unlispify even more in custom-unlispify-menu-entry
31687
31688	* lisp/cus-edit.el (custom-unlispify-menu-entry): Also allow : and
31689	/ as separators in symbols when making the symbols look more
31690	human-readable (bug#23986).
31691
316922019-06-25  Michael Shields  <shields@msrl.com>
31693
31694	[PATCH 1/1] Pass frame-parameters to server-create-tty-frame
31695
31696	* lisp/server.el: Pass frame-parameters when creating frames, even
31697	on a tty (bug#24147).
31698
316992019-06-25  Basil L. Contovounesios  <contovob@tcd.ie>
31700
31701	Fix recent tex-mode safe-local-variable changes
31702
31703	* lisp/textmodes/tex-mode.el (tex-verbatim-environments): Replace
31704	(delq t ...) with more usual (memq nil ...).
31705	(latex-noindent-environments, latex-noindent-commands): Fix typos
31706	and thinkos in safe-local-variable logic.
31707
317082019-06-25  Lars Ingebrigtsen  <larsi@gnus.org>
31709
31710	Don't delete macuvs.h in extraclean
31711
31712	* admin/unidata/Makefile.in (extraclean): Don't delete macuvs.h,
31713	because it's a checked-in file, and make targets altering
31714	checked-in files is confusing.
31715
317162019-06-25  Fritz Stelzer  <brotzeitmacher@gmail.com>  (tiny change)
31717
31718	Make xref-show-xrefs-function a defcustom
31719
31720	* lisp/progmodes/xref.el (xref-show-xrefs-function): Make into a
31721	defcustome (bug#29206).
31722
31723	* lisp/progmodes/xref.el (xref-show-definitions-function): Ditto.
31724
317252019-06-25  Antoine Beaupré  <anarcat@orangeseeds.org>  (tiny change)
31726
31727	Add imenu support to package-menu-mode
31728
31729	* lisp/vc/vc-git.el (vc-git-grep-template): Include <C> in
31730	template to be more consistent with lgrep/rgrep (bug#35326).  This
31731	will introduce the --color and -i flags to the "git grep" command.
31732
317332019-06-25  Alan Mackenzie  <acm@muc.de>
31734
31735	Fix documentation of inhibit-modification-hooks in overlays + text properties
31736
31737	This fixes bug #25111.
31738
31739	* doc/lispref/display.texi (Overlay Properties): For the hook property
31740	modification-hooks, state that inhibit-modification-hooks is bound to non-nil
31741	when calling its functions.  This also applies to insert-in-front-hooks and
31742	insert-behind-hooks, which refer to modification-hooks.
31743
31744	* doc/lispref/text.texi (Special Properties): For the hook property
31745	modification-hooks, state that inhibit-modification-hooks is NOT bound to
31746	non-nil when calling its functions.  For the hooks insert-in-fron-hooks and
31747	insert-behind-hooks, state that that variable does get bound to non-nil.
31748
317492019-06-24  Hong Xu  <hong@topbug.net>
31750
31751	Add imenu support to package-menu-mode
31752
31753	* lisp/gnus/gnus-cite.el (gnus-message-citation-mode): Fontify if the major
31754	mode is derived from message-mode (not necessarily equal to
31755	message-mode) (bug#25124).
31756
317572019-06-24  Damien Cassou  <damien@cassou.me>
31758
31759	Add imenu support to package-menu-mode
31760
31761	* lisp/emacs-lisp/package.el
31762	(package--imenu-prev-index-position-function
31763	package--imenu-extract-index-name-function): Add Imenu functions
31764	to package-menu-mode (bug#27134).
31765
317662019-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
31767
31768	* lisp/textmodes/tex-mode.el (latex-noindent-commands): New custom var
31769
31770	(latex-find-indent): Obey it.
31771	(latex-noindent-environments): Make it into a defcustom as well.
31772
317732019-06-24  Lars Ingebrigtsen  <larsi@gnus.org>
31774
31775	Make message_to_stderr do one single fwrite
31776
31777	* src/xdisp.c (message_to_stderr): When running as a batch
31778	process, the output from `message' goes to stderr, and has a
31779	newline appended.  Rewrite the code so that only one fwrite is
31780	performed to enable messages that are shorter than PIPE_BUF
31781	(usually 4096 on modern operating systems) are written out as one
31782	chunk, as this will ensure that the messages are not interleaved
31783	with messages from other processes that are writing at the same
31784	time.  This does not affect other stderr outputs, just the ones
31785	from `message'.
31786
317872019-06-24  Kaushal Modi  <kaushal.modi@gmail.com>
31788
31789	Add example for enabling minor modes in .dir-local.el
31790
31791	* doc/emacs/custom.texi (Directory Variables): Add an example that
31792	shows how a minor mode can be enabled in a .dir-local.el (Bug#27639).
31793	Clarify that indent-tabs-mode is not a minor mode.
31794
317952019-06-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
31796
31797	* configure.ac: Set HAVE_XFT to no for summary if HAVE_CAIRO is yes.
31798
317992019-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
31800
31801	* lisp/svg.el: Prepare for distribution via GNU ELPA
31802
31803	Add a Version: and Package-Requires:.
31804	Don't require subr-x.
31805	Bring Commentary: from the GNU ELPA version of the package.
31806	(svg-remove): Don't use when-let*.
31807
318082019-06-24  Eric Abrahamsen  <eric@ericabrahamsen.net>
31809
31810	Tweaks to html mode
31811
31812	* lisp/textmodes/sgml-mode.el (sgml-attributes): Add the "class" and
31813	  "id" attributes when needed.
31814	  (html-mode-map): Add the `html-div' and `html-span' commands to the
31815	  `html-quick-keys' map.
31816	  (html-ordered-list, html-unordered-list, html-paragraph): Use the
31817	  "\n" element properly.
31818	  (html-div, html-span): New HTML skeletons.
31819
318202019-06-24  Lars Ingebrigtsen  <larsi@gnus.org>
31821
31822	rectangle--pos-cols shouldn't move point
31823
31824	* lisp/rect.el (rectangle--pos-cols): Don't move point while
31825	calculating the values (bug#25777).
31826
318272019-06-24  Eli Zaretskii  <eliz@gnu.org>
31828
31829	Fix MS-Windows build as followup to pdumper executable lookup
31830
31831	* src/w32.c (w32_my_exename): New function.
31832	* src/w32.h (w32_my_exename): Add prototype.
31833	* src/emacs.c (load_pdump_find_executable) [WINDOWSNT]: Find
31834	the actual file name of the program without looking along
31835	PATH, by calling w32_my_exename.
31836
31837	* nt/mingw-cfg.site (ac_cv_func_canonicalize_file_name)
31838	(ac_cv_func_realpath, gl_cv_func_realpath_works): Disable
31839	testing.
31840	* nt/gnulib-cfg.mk (OMIT_GNULIB_MODULE_canonicalize-lgpl): Set
31841	to true.
31842
318432019-06-24  Lars Ingebrigtsen  <larsi@gnus.org>
31844
31845	Make C-l in iimage-mode call recenter-top-bottom
31846
31847	* lisp/iimage.el (iimage-recenter): Call `recenter-top-bottom'
31848	instead of `recenter', since that's the default function for `C-l'
31849	(bug#27610).  Suggested by Arne Frederic Maria Döring.
31850
318512019-06-24  Michael Albinus  <michael.albinus@gmx.de>
31852
31853	Improve error handling in Tramp
31854
31855	* lisp/net/tramp-compat.el (ls-lisp): Require.
31856
31857	* lisp/net/tramp.el (ls-lisp-use-insert-directory-program):
31858	Don't declare.
31859	(tramp-current-connection): Adapt docstring.
31860	(tramp-debug-message): Adapt function names.
31861	(tramp-error, tramp-run-real-handler): Let-bind `signal-hook-function'.
31862	(tramp-signal-hook-function): New defun.
31863	(tramp-debug-on-error, tramp-condition-case-unless-debug): Remove.
31864	(tramp-file-name-handler): Handle `tramp-current-connection'.
31865	Let-bind `signal-hook-function'.  Use `unwind-protect' instead of
31866	`tramp-condition-case-unless-debug'.
31867	(tramp-handle-insert-directory): Don't require ls-lisp.
31868	(tramp-process-actions): Check, that
31869	`tramp-password-save-function' is non-nil.
31870	(tramp-equal-remote): Handle the case both files are local.
31871
31872	* test/lisp/net/tramp-tests.el (tramp--test-instrument-test-case):
31873	Do not bind `tramp-debug-on-error'.
31874	(tramp--test-ignore-make-symbolic-link-error): Make error handler
31875	more explicit about the error.
31876
318772019-06-24  Lars Ingebrigtsen  <larsi@gnus.org>
31878
31879	Fix up key bindings in previous tabulated-list patch
31880
31881	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode-map):
31882	Actually use `w'/`c' as described in previous patch.
31883
318842019-06-24  Lars Ingebrigtsen  <larsi@gnus.org>
31885
31886	Add new commands to widen/narrow tabulated list columns
31887
31888	* doc/emacs/buffers.texi: Document widen/contracting commands in
31889	tabulated list mode.
31890	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode-map): Add
31891	keystrokes.
31892	(tabulated-list-widen-current-column): New command.
31893	(tabulated-list-narrow-current-column): Ditto.  The code was
31894	written by Boruch Baum and then tweaked by Drew Adams (bug#32106)
31895	before some white-space changes before the commit.
31896
318972019-06-24  Lars Ingebrigtsen  <larsi@gnus.org>
31898
31899	Remove -q from zstd invocation
31900
31901	* lib-src/etags.c (compressors): -q isn't necessary since standard
31902	output goes to /dev/null.  From Michael Albinus (bug#33919).
31903
319042019-06-24  Lars Ingebrigtsen  <larsi@gnus.org>
31905
31906	NEWS fix up for Zstandard patches
31907
31908	* etc/NEWS: tramp-archive is a new feature, so no need to say that
31909	specific parts of it are new.  From Michael Albinus.
31910
319112019-06-24  Lars Ingebrigtsen  <larsi@gnus.org>
31912
31913	Fix up Zstandard/tramp patch slightly
31914
31915	* lisp/net/tramp-archive.el (tramp-archive-suffixes): Fix tzst
31916	suffix.  From Michael Albinus (bug#33919).
31917
319182019-06-24  Alexander Gramiak  <agrambot@gmail.com>
31919
31920	Add Zstandard compression support for Tramp
31921
31922	* lisp/net/tramp-archive.el (tramp-archive-suffixes)
31923	(tramp-archive-compression-suffixes): Add zstd compression suffixes.
31924	* lisp/net/tramp-sh.el (tramp-inline-compress-commands): Add
31925	zstd (de)compression commands.
31926
319272019-06-24  Alexander Gramiak  <agrambot@gmail.com>
31928
31929	Add Zstandard compression support for dired
31930
31931	* lisp/dired-aux.el (dired-compress-file-suffixes): Add suffixes for
31932	zstd compressed tarballs and other files.
31933	(dired-compress-file): Treat options found in
31934	`dired-compress-file-suffixes' as arguments instead of part of the
31935	program name.
31936
319372019-06-24  Alexander Gramiak  <agrambot@gmail.com>
31938
31939	Add Zstandard compression support for etags
31940
31941	* lib-src/etags.c: (compressors): Add zstd support.
31942	(print_language_names): Report zstd support.
31943	* doc/man/etags.1: Update doc.
31944
319452019-06-24  Daniel Colascione  <dancol@dancol.org>
31946
31947	Fix pdumper executable-finding code
31948
31949	* src/emacs.c:
31950	(load_pdump_find_executable): New function.
31951	(load_pdump): Use it.
31952
319532019-06-24  Damien Cassou  <damien@cassou.me>
31954
31955	* doc/misc/auth.texi (The Unix password store): Complete rewrite
31956
31957	* etc/NEWS: Describe changes to auth-source-pass
31958
31959	* lisp/auth-source-pass.el: Version 5.0.0
31960
319612019-06-24  Damien Cassou  <damien@cassou.me>
31962
31963	Refactoring of auth-source-pass
31964
31965	* lisp/auth-source-pass.el (auth-source-pass--find-match): Refactor by
31966	moving some code to auth-source-pass--disambiguate.
31967	(auth-source-pass--disambiguate)
31968	(auth-source-pass--entries-matching-suffix): New function.
31969	(auth-source-pass--find-match-unambiguous)
31970	(auth-source-pass--select-from-entries)
31971	(auth-source-pass--entry-reducer): Refactor to simplify and improve
31972	logging.
31973	(auth-source-pass--matching-entries)
31974	(auth-source-pass--accumulate-matches): Remove.
31975	* test/lisp/auth-source-pass-tests.el: Complete rewrite to facilitate
31976	maintenance.
31977	(auth-source-pass--have-message-containing): Remove.
31978	(auth-source-pass--have-message-matching)
31979	(auth-source-pass--explain--have-message-matching)
31980	(auth-source-pass--explain-match-entry-p)
31981	(auth-source-pass--includes-sorted-entries)
31982	(auth-source-pass--explain-includes-sorted-entries)
31983	(auth-source-pass--explain-match-any-entry-p)
31984	(auth-source-pass--matching-entries)
31985	(auth-source-pass-match-entry-p)
31986	(auth-source-pass-match-any-entry-p): New function.
31987
319882019-06-24  Keith Amidon  <camalot@picnicpark.org>
31989
31990	* lisp/auth-source-pass.el: Add Keith Amidon to authors
31991
319922019-06-24  Keith Amidon  <camalot@picnicpark.org>
31993
31994	Minimize entry parsing in auth-source-pass
31995
31996	Prior to this commit, while searching for the most applicable entry
31997	password-store entries were decrypted and parsed to ensure they were
31998	valid.  The entries were parsed in the order they were found on the
31999	filesystem and all applicable entries would be decrypted and parsed,
32000	which varied based on the contents of the password-store and the entry
32001	to be found.
32002
32003	This is fine when the GPG key is cached and each entry can be
32004	decrypted without user interaction.  However, for security some people
32005	have their GPG on a hardware token like a Yubikey setup so that they
32006	have to touch a sensor on the toke for every cryptographic operation,
32007	in which case it becomes inconvenient as each attempt to find an entry
32008	requires a variable number of touches of the hardware token.
32009
32010	The implementation already assumes that names which contain more of
32011	the information in the search key should be preferred so there is an
32012	ordering of preference of applicable entries.  If the decrypt and
32013	parsing is removed from the initial identification of applicable
32014	entries in the store then in most cases a single decrypt and parse of
32015	the most preferred entry will suffice, improving the experience for
32016	hardware token users that require interaction with the token.
32017
32018	This commit implements that strategy.  It is in spirit a refactor of
32019	the existing code.
32020
32021	* lisp/auth-source-pass.el (auth-source-pass--matching-entries): New
32022	function, generate an ordered list of regular expression matchers for
32023	all possible names that could be in the password-store for the entry
32024	to be found and then makes a pass over the password-store entry names
32025	accumulating the matching entries in a list after the regexp that
32026	matched.  This implementation ensures the password-store entry list
32027	still only has to be scanned once.
32028	(auth-source-pass--find-match-unambiguous): Use it to obtain candidate
32029	entries and then parse them one by one until an entry containing the
32030	desired information is located.  When complete, return the parsed data
32031	of the entry instead of the entry name so that the information can be
32032	used directly to construct the auth-source response.
32033	(auth-source-pass--build-result): Update accordingly.
32034	(auth-source-pass--find-match): Update docstring accordingly.
32035	(auth-source-pass--select-one-entry)
32036	(auth-source-pass--entry-valid-p)
32037	(auth-source-pass--find-all-by-entry-name)
32038	(auth-source-pass--find-one-by-entry-name): Remove.
32039	(auth-source-pass--select-from-entries)
32040	(auth-source-pass--accumulate-matches)
32041	(auth-source-pass--entry-reducer)
32042	(auth-source-pass--generate-entry-suffixes)
32043	(auth-source-pass--domains)
32044	(auth-source-pass--name-port-user-suffixes): New functions.
32045
32046	* test/lisp/auth-source-pass-tests.el: One test case was added to the
32047	test suite to verify that only the minimal number of entries are
32048	parsed in common cases.  The
32049	auth-source-pass-only-return-entries-that-can-be-open test case had to
32050	be re-implemented because the function it was used eliminated as the
32051	functionality is provided elsewhere.  All the other fairly substantial
32052	changes to the test suite are the result of mechanical changes that
32053	were required to adapt to auth-source-pass--find-match returning the
32054	data from a parsed password-store entry instead of the entry name.
32055
320562019-06-24  Keith Amidon  <camalot@picnicpark.org>
32057
32058	Split out the attribute retrieval form auth-source-pass-get
32059
32060	Eliminate the need to repeatedly retrieve and parse the data for the
32061	entry.  This is generally a good thing since it eliminates repetitions
32062	of the same crypto and parsing operations.  It is especially valuable
32063	when protecting an entry with a yubikey with touch required for crypto
32064	operations as it eliminates the need to touch the yubikey sensor for
32065	each attribute retrieved.
32066
32067	* lisp/auth-source-pass.el (auth-source-pass-get): Extract some code to
32068	`auth-source-pass--get-attr'.
32069	(auth-source-pass--get-attr): New function to get a field value from a
32070	parsed entry.
32071	(auth-source-pass--build-result): Make use of
32072	`auth-source-pass--get-attr` to avoid repeated parsing.
32073
320742019-06-24  Keith Amidon  <camalot@picnicpark.org>
32075
32076	Fix auth-source-pass to search for hostname:port/username
32077
32078	auth-source-pass supports entries with username either prefixed to the
32079	hostname with an @ as separator or in a subdirectory under the
32080	hostname.  This was true when there was no port or service included in
32081	the name, but got broken with the introduction of
32082	auth-source-pass-port-separator.
32083
32084	* lisp/auth-source-pass.el (auth-source-pass--find-match-unambiguous): Fix
32085	to match hostname:port/username.
32086	* test/lisp/auth-source-pass-tests.el: Add corresponding tests.
32087
320882019-06-24  Iku Iwasa  <iku.iwasa@gmail.com>
32089
32090	Add auth-source-pass-port-separator option
32091
32092	* lisp/auth-source-pass.el (auth-source-pass-port-separator): New
32093	option to specify separator between host and port, default to
32094	colon (":").
32095	(auth-source-pass--find-match-unambiguous): Adapt to make use of the
32096	new variable.
32097	* test/lisp/auth-source-pass-tests.el: Add corresponding tests.
32098
320992019-06-24  galaunay  <gaby.launay@tutanota.com>
32100
32101	Add auth-source-pass-filename option
32102
32103	* lisp/auth-source-pass.el (auth-source-pass)
32104	(auth-source-pass-filename): Add option to specify a customized
32105	password-store path.
32106	(auth-source-pass--read-entry)
32107	(auth-source-pass-entries): Use the new option instead of hard-coded
32108	`~/.password-store'.
32109
321102019-06-24  Damien Cassou  <damien@cassou.me>
32111
32112	* lisp/auth-source-pass.el (auth-source-pass-get): Add autoload
32113
32114	* lisp/auth-source-pass.el: Version 4.0.2
32115
321162019-06-24  Magnus Henoch  <magnus.henoch@gmail.com>  (tiny change)
32117
32118	Fix auth-source-pass to return nil if no entry found
32119
32120	* lisp/auth-source-pass.el (auth-source-pass-search): If there is no
32121	matching entry, auth-source-pass-search should return nil, not (nil).
32122	This lets auth-source fall back to other backends in the auth-sources
32123	list.
32124	* test/lisp/auth-source-pass-tests.el: Add corresponding test.
32125
321262019-06-23  Daniel Colascione  <dancol@dancol.org>
32127
32128	Fix locating pdump by symlink
32129
32130	* admin/merge-gnulib (GNULIB_MODULES): Add canonicalize-lgpl module
32131	* build-aux/config.guess, build-aux/gitlog-to-changelog,
32132	build-aux/update-copyright, lib/canonicalize-lgpl.c,
32133	lib/gnulib.mk.in, lib/malloca.c, lib/malloca.h, lib/pathmax.h,
32134	m4/canonicalize.m4, m4/double-slash-root.m4, m4/gnulib-comp.m4,
32135	m4/malloca.m4, m4/pathmax.m4: copy from GNUlib or regenerate from
32136	update
32137	* src/emacs.c: find dump by canonical path
32138
321392019-06-23  Lars Ingebrigtsen  <larsi@gnus.org>
32140
32141	Document syntax-ppss-context
32142
32143	* doc/lispref/syntax.texi (Parser State): Document it.
32144
32145	* lisp/emacs-lisp/syntax.el (syntax-ppss-context): Add a doc
32146	string (bug#32504).
32147
321482019-06-23  Martin Kletzander  <nert.pinx@gmail.com>  (tiny change)
32149
32150	Autojoin channels with same name on different servers in erc
32151
32152	* lisp/erc/erc-join.el (erc-autojoin-channels): Join channels with
32153	the same name on different servers (bug#32723).
32154
321552019-06-23  Alex Branham  <alex.branham@gmail.com>
32156
32157	(if-let): Improve docstring by mentioning let*
32158
32159	* lisp/emacs-lisp/subr-x.el (if-let): Clarify that if-let is like
32160	let*, not like let (bug#33550).
32161
321622019-06-23  Carlos Pita  <carlosjosepita@gmail.com>
32163
32164	Fix auto-revert resizing in image mode
32165
32166	* lisp/image-mode.el (image-transform-properties): Get image
32167	parameters right after reverting; in particular, compute the
32168	correct max size (bug#33631).
32169
321702019-06-23  Paul Eggert  <eggert@cs.ucla.edu>
32171
32172	Don’t line-buffer stderr
32173
32174	* src/sysdep.c (init_standard_fds) [DOS_NT]: Don’t line-buffer stderr.
32175	This reverts 2019-06-20T07:32:17!eggert@cs.ucla.edu.  See:
32176	https://lists.gnu.org/r/emacs-devel/2019-06/msg00882.html
32177
321782019-06-23  Mattias Engdegård  <mattiase@acm.org>
32179
32180	Check validity of rx submatch-n number
32181
32182	* lisp/emacs-lisp/rx.el (rx-submatch): Type and range check (Bug#34373).
32183
321842019-06-23  Mattias Engdegård  <mattiase@acm.org>
32185
32186	Optional space and unit in `file-size-human-readable' (bug#35756)
32187
32188	To improve readability of strings produced by
32189	`file-size-human-readable', add two optional arguments:
32190
32191	- SPACE, to provide a string (typically a space or non-breaking space)
32192	to put between the number and unit.  For compatibility, the default is
32193	an empty string.
32194
32195	- UNIT, a string to use as unit.  For compatibility, the default is
32196	"B" in `iec' mode and the empty string otherwise.
32197
32198	Also fix a glitch with small numbers in `iec' mode which caused a
32199	stray "i" in the result.
32200
32201	* lisp/files.el (file-size-human-readable):
32202	Add optional SPACE and UNIT arguments and handle small numbers correctly.
32203	(files--ask-user-about-large-file, warn-maybe-out-of-memory):
32204	Call with `iec' and space.
32205	* test/lisp/files-tests.el (files-test-file-size-human-readable): New test.
32206	* lisp/url/url-http.el (url-http-simple-after-change-function)
32207	(url-http-content-length-after-change-function): Call with `iec' and space.
32208	* etc/NEWS (Lisp Changes): Mention the change.
32209
322102019-06-23  Michael Brumlow  <m@brumlow.io>  (tiny change)
32211
32212	(hfy-fontify-buffer): Inhibit read only
32213
32214	* lisp/htmlfontify.el (hfy-fontify-buffer): Inhibit read only to
32215	enable the function to work with text that comes from buffers that
32216	put read-only text properties on things (bug#35025).
32217
322182019-06-23  Mauro Aranda  <maurooaranda@gmail.com>
32219
32220	Document Winner mode user options
32221
32222	* doc/emacs/windows.texi (Window Convenience): Add documentation for
32223	the user options winner-dont-bind-my-keys, winner-ring-size and
32224	winner-boring-buffers (bug#35146).
32225
322262019-06-23  Alexander Gramiak  <agrambot@gmail.com>
32227
32228	src/bytecode.c (exec_byte_code) Unroll Blist3 and Blist4
32229
32230	* src/bytecode.c (exec_byte_code): Unroll Blist3 and Blist4
32231	(bug#35321).
32232
322332019-06-23  Eric Abrahamsen  <eric@ericabrahamsen.net>
32234
32235	Add NEWS entry for new command gnus-summary-browse-url
32236
32237	* etc/NEWS: It is documented in the manual.
32238
322392019-06-23  Drew Adams  <drew.adams@oracle.com>
32240
32241	Make ls-lisp--dired ape dired-noselect more closely
32242
32243	* lisp/ls-lisp.el (ls-lisp--dired): Emulate the behaviour of
32244	non-ls-lisp.el dired better by defaulting to default-directory as
32245	dired-noselect does (bug#35390).
32246
322472019-06-23  Van L  <van@scratch.space>
32248
32249	Add a Code: tag to subr.el
32250
32251	* lisp/subr.el: Add a Code: tag comment (bug#35595).
32252
322532019-06-23  Lars Ingebrigtsen  <larsi@gnus.org>
32254
32255	Remove outdate comment about an utf-8 cookie that was removed in 2015
32256
322572019-06-23  Nick Drozd  <nicholasdrozd@gmail.com>
32258
32259	Handle 'code' tag in shr.el
32260
32261	* etc/NEWS: Announce change in shr behavior (bug#36247).
32262	* lisp/net/shr.el: Add 'code' tag handling.
32263
322642019-06-23  Eric Abrahamsen  <eric@ericabrahamsen.net>
32265
32266	New command gnus-summary-browse-url
32267
32268	* lisp/gnus/gnus-sum.el (gnus-summary-browse-url): New command for
32269	  browsing URLs from the article buffer from the summary buffer.
32270	  (gnus-summary-mode-map): Bind to "w".
32271	  (gnus-summary-article-map): And to "A w".
32272	* doc/misc/gnus.texi (Article Commands): Document.
32273
322742019-06-23  Michael Albinus  <michael.albinus@gmx.de>
32275
32276	Improve error handling in tramp-gvfs
32277
32278	* lisp/net/tramp-gvfs.el (tramp-gvfs-get-directory-attributes)
32279	(tramp-gvfs-get-root-attributes)
32280	(tramp-gvfs-handle-file-attributes): Don't ignore errors.
32281	(tramp-make-goa-name): New defun.
32282	(tramp-gvfs-get-remote-prefix): Use it.
32283	(tramp-gvfs-maybe-open-connection): Raise user errors in case of.
32284	Check also, that GOA accounts are proper.
32285	(tramp-get-goa-accounts): Cache connection property.
32286
32287	* lisp/net/tramp.el (tramp-handle-file-equal-p)
32288	(tramp-handle-file-in-directory-p): Use `tramp-equal-remote'.
32289
322902019-06-23  Lars Ingebrigtsen  <larsi@gnus.org>
32291
32292	Document what the `t' value for HIST in `read-string' means
32293
32294	* src/minibuf.c (syms_of_minibuf): Say that `t' means "no history"
32295	(bug#36324).
32296	(Fread_from_minibuffer): Say the same for HIST.
32297
322982019-06-22  Simen Heggestøyl  <simenheg@gmail.com>
32299
32300	Split up and add tests for two page.el functions
32301
32302	* lisp/textmodes/page.el (page--count-lines-page): New function
32303	extracted from `count-lines-page'.
32304	(count-lines-page): Extract main logic into `page--count-lines-page'.
32305	(page--what-page); New function extracted from `what-page'.
32306	(what-page): Extract main logic into `page--what-page'.
32307
32308	* test/lisp/textmodes/page-tests.el (page-tests-count-lines-page)
32309	(page-tests-what-page): New tests for `page--count-lines-page' and
32310	`page--what-page'.  (Bug#36009)
32311
323122019-06-22  Stefan Monnier  <monnier@iro.umontreal.ca>
32313
32314	(with-suppressed-warnings): Also suppress warnings when not byte-compiling
32315
32316	* lisp/emacs-lisp/byte-run.el (with-suppressed-warnings): Bind
32317	byte-compile--suppressed-warnings when possible.
32318
323192019-06-22  Allen Li  <darkfeline@felesatra.moe>
32320
32321	Fix defining inverse abbrevs on previous words (Bug#36243)
32322
32323	* lisp/abbrev.el (inverse-add-abbrev): Skip trailing nonword
32324	characters when defining abbrev.
32325
32326	* test/lisp/abbrev-tests.el (abbrev-edit-save-to-file-test): Add
32327	regression tests.
32328
323292019-06-22  Noam Postavsky  <npostavs@gmail.com>
32330
32331	Fix python docstring auto-fill (Bug#36056)
32332
32333	* lisp/progmodes/python.el (python-mode): Set
32334	fill-indent-according-to-mode locally to t.  This lets auto-fill do
32335	the right thing when auto-filling inside a docstring.  The default was
32336	to nil on 2001-11-25 "(fill-indent-according-to-mode): Default to nil"
32337	with the comment that it "screws up CC-mode's filling tricks".  But
32338	presumably it shouldn't be a problem for python-mode.
32339	* test/lisp/progmodes/python-tests.el (python-auto-fill-docstring):
32340	New test.
32341
323422019-06-22  Noam Postavsky  <npostavs@gmail.com>
32343
32344	Make rcirc parsing more RFC2812 compliant (Bug#36233)
32345
32346	Do continue to allow multiple spaces between arguments, even though
32347	that is technically not allowed by the RFC.
32348	* lisp/net/rcirc.el (rcirc-process-server-response-1): Fix parsing of
32349	arguments which contain colons.
32350	* test/lisp/net/rcirc-tests.el: New test.
32351
323522019-06-22  Noam Postavsky  <npostavs@gmail.com>
32353
32354	* lisp/net/rcirc.el (rcirc-prompt-for-encryption): Simplify.
32355
323562019-06-22  Paul Eggert  <eggert@cs.ucla.edu>
32357
32358	Bring macuvs.h back under Git control
32359
32360	* admin/unidata/Makefile.in (maintainer-clean):
32361	Instead of removing macuvs.h here ...
32362	(extraclean): ... Remove it here.
32363	* admin/unidata/uvs.el (uvs-print-table-ivd):
32364	Add to comment explaining why macuvs.h is in Git.
32365	* src/macuvs.h: Regenerate and re-add to Git.
32366
323672019-06-22  Lars Ingebrigtsen  <larsi@gnus.org>
32368
32369	Respect case-insensite DelSp flow-fill parameter
32370
32371	* lisp/gnus/mm-view.el (mm-inline-text): The DelSp parameter is
32372	case-insentitive, so make it work then it's "Yes" (bug#26775).
32373
323742019-06-22  Andreas Schwab  <schwab@linux-m68k.org>
32375
32376	(nnir-notmuch-remove-prefix): Respect MAILDIR
32377
32378	* lisp/gnus/nnir.el (nnir-notmuch-remove-prefix): Respect MAILDIR
32379	and regexp-quote the result (bug#34940).
32380
323812019-06-22  Lars Ingebrigtsen  <larsi@gnus.org>
32382
32383	Use plain report-emacs-bug instead of gnus-bug
32384
32385	* doc/misc/gnus.texi (Compatibility): Remove mention of deprecated
32386	variable.
32387	* lisp/gnus/gnus-msg.el (gnus-bug): Just use `report-emacs-bug'.
32388	(gnus-bug-kill-buffer): Remove.
32389	(gnus-bug-create-help-buffer, gnus-bug-message): Remove.
32390
323912019-06-22  Robert Pluim  <rpluim@gmail.com>
32392
32393	Export Gnus calendar events to org even if they have no description
32394
32395	* lisp/gnus/gnus-icalendar.el (gnus-icalendar-event->org-entry):
32396	Don't ignore events that have no description.
32397
323982019-06-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32399
32400	Make ftcr font backend driver more consistent with xft
32401
32402	* src/ftcrfont.c: Include charset.h.
32403	(ftcrfont_has_char): Import font adstyle related code from ftfont_has_char.
32404
324052019-06-22  Lars Ingebrigtsen  <larsi@gnus.org>
32406
32407	Remove XEmacs compat code from savehist.el (reworked)
32408
32409	* lisp/savehist.el (savehist-coding-system, savehist-install)
32410	(savehist-uninstall, savehist-save): Remove XEmacs compat code.
32411	(savehist-trim-history): Made obsolete.
32412	(savehist-minibuffer-hook): Update comment to reflect the t value
32413	of HISTORY in `read-string'.
32414
324152019-06-22  Christophe Troestler  <Christophe.Troestler@umons.ac.be>  (tiny change)
32416
32417	epg: Use unibyte string to decode percent escapes
32418
32419	* lisp/epg.el (epg--status-USERID_HINT, epg--status-*SIG)
32420	(epg--status-IMPORTED): Call epg--decode-percent-escape-as-utf-8.
32421	(epg--decode-percent-escape): Convert STRING to unibyte.
32422	(epg--decode-percent-escape-as-utf-8): New function.  (Bug#36098)
32423
324242019-06-22  Stefan Kangas  <stefankangas@gmail.com>
32425
32426	Add tests for mail/flow-fill.el
32427
32428	* test/lisp/mail/flow-fill-tests.el: New file.
32429	* lisp/mail/flow-fill.el (fill-flowed-encode-tests)
32430	(fill-flowed-test): Make obsolete.  (Bug#36174)
32431
324322019-06-22  Stefan Kangas  <stefankangas@gmail.com>
32433
32434	Make toolbar show keyboard equivalents in its tooltips
32435
32436	* src/keyboard.c (parse_tool_bar_item): Add equivalent key binding to
32437	the tooltip string of toolbar buttons.
32438	* etc/NEWS: Announce it.
32439	* etc/TODO: Remove its entry.  (Bug#36156)
32440
324412019-06-22  Teemu Likonen  <tlikonen@iki.fi>
32442
32443	Update epg.el algorithm id-name association lists
32444
32445	* lisp/epg.el (epg-pubkey-algorithm-alist)
32446	(epg-digest-algorithm-alist, epg-compress-algorithm-alist): Add
32447	new identifiers from openpgpdefs.h.
32448
324492019-06-22  Stefan Kangas  <stefankangas@gmail.com>
32450
32451	Move mantemp.el to obsolete/
32452
32453	* lisp/progmodes/mantemp.el: Move to obsolete/. (bug#34789)
32454	* doc/emacs/ack.texi (Acknowledgments): Remove obsolete library
32455	mantemp.el.
32456
324572019-06-22  Eli Zaretskii  <eliz@gnu.org>
32458
32459	Fix an off-by-one error in assertion
32460
32461	* src/fileio.c (Fexpand_file_name): Fix off-by-one error in an
32462	assertion.  This avoids assertion violations when the home
32463	directory is an empty string for some reason.  (Bug#36363)
32464
324652019-06-22  Eli Zaretskii  <eliz@gnu.org>
32466
32467	Correct and update the mapping of LaTeX encodings
32468
32469	* lisp/international/latexenc.el
32470	(latex-inputenc-coding-alist): Fix the association of latin5.
32471	(Bug#36253) Uncomment latin10 and map it to iso-8859-16.
32472
324732019-06-22  Eli Zaretskii  <eliz@gnu.org>
32474
32475	Avoid using string-make-unibyte in select.el
32476
32477	* lisp/select.el (selection-coding-system): Doc fix.
32478	(xselect--encode-string): For C_STRING, if the text is not
32479	already unibyte, use encode-coding-string instead of
32480	string-make-multibyte to make it unibyte.
32481
324822019-06-21  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32483
32484	Make ftcr font backend driver more consistent with xft
32485
32486	* src/ftcrfont.c (ftcrfont_open): Use metrics of glyph ID 0 if there is no
32487	glyph for an ASCII printable.
32488
324892019-06-21  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32490
32491	* src/font.c (Ffont_xlfd_name): Don't use strcpy for overlapping strings.
32492
324932019-06-21  Paul Eggert  <eggert@cs.ucla.edu>
32494
32495	Fix default build-from-Git on macOS
32496
32497	* configure.ac (NS_IMPL_COCOA): Do not default to "yes" if
32498	src/macuvs.h is absent, which is possible in a build from Git.
32499
325002019-06-21  Paul Eggert  <eggert@cs.ucla.edu>
32501
32502	Remove src/macuvs.h from Git repository
32503
32504	It can be generated automatically and easily during a normal
32505	bootstrap, so there’s no need to keep it in the repository.
32506	* admin/unidata/Makefile.in (maintainer-clean):
32507	Behave like extraclean and remove macuvs.h etc.
32508	* src/macuvs.h: Remove.
32509
325102019-06-21  Lars Ingebrigtsen  <larsi@gnus.org>
32511
32512	Revert "Remove XEmacs compat code from savehist.el"
32513
32514	This reverts commit a97ba6eb305c9db8641c0e65748907cd53dbfa5e.
32515
32516	According to bug#36324, this broke savehist.el
32517
325182019-06-21  Stefan Monnier  <monnier@iro.umontreal.ca>
32519
32520	* lisp/emacs-lisp/bytecomp.el (byte-compile-dynamic): Mark obsolete
32521
32522	See bug#11649 for an example problem, and emacs-devel discussion
32523	«Prickliness of the "invalid byte code" stuff».
32524
32525	* lisp/wid-edit.el, lisp/wdired.el, lisp/vc/pcvs-util.el:
32526	* lisp/progmodes/executable.el, lisp/mail/sendmail.el:
32527	* lisp/emacs-lisp/cl-seq.el, lisp/emacs-lisp/cl-macs.el:
32528	* lisp/emacs-lisp/cl-lib.el, lisp/emacs-lisp/cl-extra.el:
32529	* lisp/dired-x.el, lisp/dired-aux.el, lisp/calendar/calendar.el:
32530	Don't use byte-compile-dynamic any more.
32531
325322019-06-20  Stefan Monnier  <monnier@iro.umontreal.ca>
32533
32534	* lisp/vc/ediff-*.el: Use lexical-binding, plus misc cleanup
32535
32536	Re-enable lexical-binding in ediff.  For that, change ediff-find-file
32537	so as not to rely on dynamic scoping in its calling convention.
32538
32539	* lisp/vc/ediff-diff.el: Move `provide` to the end.
32540	Remove redundant :group.
32541	(ediff-exec-process): Disregard current directory.
32542	(ediff-forward-word-function): Use defvar-local.
32543
32544	* lisp/vc/ediff-help.el (ediff-set-help-message): Use functionp.
32545
32546	* lisp/vc/ediff-hook.el (menu-bar-ediff-misc-menu): Make a toggle, as
32547	in the XEmacs menu.
32548
32549	* lisp/vc/ediff-init.el (ediff-defvar-local): Add `doc-string` prop.
32550	(ediff-check-version): Delete function, unused.
32551
32552	* lisp/vc/ediff-mult.el: Move `provide` to the end.
32553	Remove redundant :groups.
32554	(ediff-dir-diffs-buffer-map):
32555	Move initialization into declaration.
32556	(ediff-meta-mode): Use define-derived-mode.
32557	(ediff-intersect-directories): Remove `comparison-func`, unused.
32558	(ediff-prepare-meta-buffer): Fix use of `startup-hooks`.
32559
32560	* lisp/vc/ediff-ptch.el: Move `provide` to the end.
32561
32562	* lisp/vc/ediff-util.el (ediff-add-to-history): Use add-to-history instead.
32563
32564	* lisp/vc/ediff-vers.el (ediff-vc-internal, ediff-vc-merge-internal):
32565	Use push and closures.
32566
32567	* lisp/vc/ediff-wind.el: Remove redundant :groups.
32568
32569	* lisp/vc/ediff.el: Move `provide` to the end.
32570	Remove redundant :groups.
32571	(ediff--magic-file-name, ediff--startup-hook): New vars.
32572	(ediff-find-file): Change calling convention so as not to use
32573	symbols as value cells.
32574	(ediff--buffer-file-name): New function.
32575	(ediff-files-internal): Adjust to new calling convention of ediff-find-file.
32576	(ediff-directories-internal, ediff-directory-revisions-internal)
32577	(ediff-regions-internal): Use push and closures.
32578
325792019-06-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32580
32581	* src/xterm.c (x_update_end) [USE_CAIRO]: Flush non-double-buffered surface.
32582
325832019-06-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32584
32585	Fix blank tooltips on cairo (Bug#36298)
32586
32587	* src/xterm.h (x_cr_update_surface_desired_size) [USE_CAIRO]: Add extern.
32588	* src/xterm.c (x_cr_update_surface_desired_size) [USE_CAIRO]: Make non-static.
32589	* src/xfns.c (Fx_show_tip) [USE_CAIRO]: Call x_cr_update_surface_desired_size.
32590
325912019-06-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32592
32593	Fix broken display by frame maximization on cairo (Bug#23925)
32594
32595	* src/xterm.c (handle_one_xevent) [USE_CAIRO && USE_GTK]: Make calls to
32596	x_cr_update_surface_desired_size coincide with those to xg_frame_resized.
32597
325982019-06-20  Stefan Monnier  <monnier@iro.umontreal.ca>
32599
32600	* lisp/vc/vc-dir.el (vc-dir-search): Avoid `eval`.
32601
326022019-06-20  Paul Eggert  <eggert@cs.ucla.edu>
32603
32604	Fix extraclean in a different way for info+lib/sys
32605
32606	* Makefile.in (extraclean):
32607	* lib/Makefile.in (extraclean): Use rmdir but suppress any
32608	error indication.  That way, ‘make extraclean’ will remove the
32609	directory if it’s empty, and successfully do nothing otherwise.
32610
326112019-06-20  Eli Zaretskii  <eliz@gnu.org>
32612
32613	Fix aborts when the value of a display property causes redisplay
32614
32615	* src/xdisp.c (handle_single_display_spec): Protect the bidi
32616	cache from evaluation that triggers redisplay.  (Bug#36312)
32617
326182019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32619
32620	Leave the emtpy info and lib/sys in extraclean
32621
32622	* lib/Makefile.in: Ditto.
32623
32624	* Makefile.in (extraclean): Don't use GNU-specific rmdir; just
32625	leave the empty directory be.
32626
326272019-06-20  Paul Eggert  <eggert@cs.ucla.edu>
32628
32629	Simplify lib-src version printing
32630
32631	* lib-src/Makefile.in (etags_cflags): Remove.
32632	All uses replaced by a simple ‘-o $@’.
32633	(ebrowse${EXEEXT}, emacsclient${EXEEXT}, emacsclientw${EXEEXT}):
32634	Omit -DVERSION= option.
32635	* lib-src/ebrowse.c (VERSION):
32636	* lib-src/emacsclient.c (VERSION):
32637	* lib-src/etags.c (EMACS_NAME, VERSION): Remove.
32638	All uses replaced by PACKAGE_NAME and PACKAGE_VERSION.
32639	* lib-src/ebrowse.c (version):
32640	* lib-src/etags.c (print_version):
32641	Use fputs to output the version info, since that’s fputs_unlocked.
32642	* lib-src/etags.c (PROGRAM_NAME): New macro.
32643	(print_version): Use it.
32644
326452019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32646
32647	Make extraclean return tree to pristine state by deleting more
32648
32649	* src/Makefile.in (extraclean): Remove TAGS and config.in.
32650
32651	* Makefile.in (extraclean): Remove info, configure and
32652	emacsver.texi in extraclean.
32653	* admin/unidata/Makefile.in (extraclean): Make it depend on
32654	distclean to remove .elc files.
32655
32656	* leim/Makefile.in (extraclean): Depend on bootstrap-clean to
32657	remove generated .el files.
32658
32659	* lib/Makefile.in (extraclean): Added target to remove sys
32660	directory and run distclean.
32661
32662	* lisp/Makefile.in (extraclean): Also remove loaddefs*.el~ files.
32663
326642019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32665
32666	Add doc strings to the ielm * variables
32667
32668	* lisp/ielm.el: (*, **, ***): Add doc strings.
32669
326702019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32671
32672	Don't define *, ** and ** in ielm as real variables
32673
32674	* lisp/ielm.el: (*, **, ***): Change defvars into compiler
32675	directives instead of real variable definitions to avoid polluting
32676	the global Emacs namespace.
32677	(*1, *2, *3): Ditto.
32678
326792019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32680
32681	Fix compilation warning in esh-mode
32682
32683	* lisp/eshell/esh-mode.el (eshell-mode): Remove special binding
32684	for M-. in eshell buffers: The comment indicates that this is
32685	outdated code.
32686	(eshell-find-tag): Make obsolete.
32687
326882019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32689
32690	Fix compilation warning in viper-exp involving tags
32691
32692	* lisp/emulation/viper-ex.el (ex-tag): Use xref/next-error instead
32693	of the deprecated tags functions.
32694
326952019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32696
32697	Declare semantic-*overlay* aliases obsolete
32698
32699	* lisp/cedet/semantic/fw.el: Declare all the semantic-*overlay*
32700	aliases obsolete.
32701
327022019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32703
32704	Throughout cedet, don't use semantic-overlay-* compat aliases
32705
327062019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32707
32708	Remove XEmacs compat code from cedet
32709
32710	* lisp/cedet/srecode/mode.el (srecode-menu-bar):
32711	* lisp/cedet/semantic/wisent/comp.el (wisent-debug-flag)
32712	(wisent-print-results):
32713	* lisp/cedet/semantic/util-modes.el
32714	(semantic-stickyfunc-indent-string)
32715	(semantic-stickyfunc-header-line-format)
32716	(semantic-highlight-func-mode-map):
32717	* lisp/cedet/semantic/symref/list.el
32718	(semantic-symref-list-menu-entries):
32719	* lisp/cedet/semantic/idle.el ()
32720	(semantic-idle-breadcrumbs-popup-menu):
32721	* lisp/cedet/semantic/grammar.el (semantic-grammar-item-value)
32722	(semantic-grammar-create-package)
32723	(semantic-grammar-batch-build-packages)
32724	(semantic-grammar-setup-menu):
32725	* lisp/cedet/semantic/fw.el (semantic-overlay-live-p)
32726	(semantic-event-window, semantic-make-local-hook)
32727	(semantic-run-mode-hooks, semantic-subst-char-in-string)
32728	(semantic-menu-item, semantic-find-file-noselect):
32729	* lisp/cedet/semantic/format.el (semantic-format-face-alist)
32730	(semantic--format-colorize-merge-text):
32731	* lisp/cedet/semantic/decorate/include.el ()
32732	(semantic-decoration-on-include-menu)
32733	(semantic-decoration-on-unknown-include-menu)
32734	(semantic-decoration-on-fileless-include-menu)
32735	(semantic-decoration-on-unparsed-include-menu):
32736	* lisp/cedet/semantic/decorate.el (semantic-set-tag-read-only)
32737	(semantic-tag-read-only-p):
32738	* lisp/cedet/mode-local.el (activate-mode-local-bindings):
32739	* lisp/cedet/data-debug.el (data-debug-overlay-properties): Remove
32740	XEmacs compat code.
32741
327422019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32743
32744	Remove XEmacs compat code from gravatar.el
32745
32746	* lisp/image/gravatar.el (gravatar-retrieve): Remove XEmacs compat code
32747
327482019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32749
32750	Remove XEmacs compat code from erc
32751
32752	* lisp/erc/erc-button.el (button, erc-button-keymap)
32753	(erc-button-setup, erc-button-add-button): Remove XEmacs compat code.
32754
32755	* lisp/erc/erc-compat.el (erc-replace-match-subexpression-in-string):
32756
32757	* lisp/erc/erc-log.el (erc-log-file-coding-system):
32758
32759	* lisp/erc/erc-menu.el (menu):
32760
32761	* lisp/erc/erc-stamp.el (erc-timestamp-use-align-to):
32762
32763	* lisp/erc/erc-track.el (erc-modified-channels-object, track)
32764	(erc-track-mouse-face):
32765
32766	* lisp/erc/erc.el (erc-update-undo-list)
32767	(erc-quit-reason-various, erc-part-reason-various, erc-cmd-SV)
32768	(erc-input-message, erc-get-channel-mode-from-keypress)
32769	(erc-update-mode-line-buffer):
32770
327712019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32772
32773	Remove XEmacs compat code from table.el
32774
32775	* lisp/textmodes/table.el:
32776	(table-disable-menu, null, table-recognize-cell)
32777	(table--make-cell-map, table--update-cell)
32778	(table--update-cell-widened, table--update-cell-heightened)
32779	(table--read-from-minibuffer, table--untabify)
32780	(table--update-cell-face, table--warn-incompatibility)
32781	(table--fill-region, table--set-timer): Remove XEmacs compat code.
32782
327832019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32784
32785	Remove XEmacs compat code from dns-mode.el
32786
32787	* lisp/textmodes/dns-mode.el (dns-mode): Remove XEmacs compat code.
32788
327892019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32790
32791	Clean up eieio-custom slightly
32792
32793	* lisp/emacs-lisp/eieio-custom.el: Remove commented out code.
32794
327952019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32796
32797	Remove XEmacs compat code from checkdoc.el
32798
32799	* lisp/emacs-lisp/checkdoc.el (checkdoc-minor-mode-map): Remove
32800	XEmacs compat code.
32801
328022019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32803
32804	Clean up after previous viper patch
32805
32806	* lisp/emulation/viper-ex.el (viper-get-ex-address-subr): Fix
32807	syntax error in last checkin.
32808	(viper-ex): Don't use now-obsolete function.
32809
328102019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32811
32812	Remove most of the XEmacs compat code from viper*.el
32813
32814	* lisp/emulation/viper-cmd.el ()
32815	(viper-insert-state-post-command-sentinel)
32816	(viper-change-state-to-vi, viper-change-state-to-insert)
32817	(viper-change-state-to-emacs, viper-escape-to-state)
32818	(viper-special-read-and-insert-char, viper-toggle-key-action)
32819	(viper-prefix-arg-value, viper-prefix-arg-com)
32820	(viper-digit-argument, viper-command-argument, )
32821	(viper-exec-Yank, viper-repeat, viper-forward-char)
32822	(viper-backward-char, viper-forward-word, viper-forward-Word)
32823	(viper-end-of-word, viper-end-of-Word, viper-backward-word)
32824	(viper-backward-Word, viper-beginning-of-line)
32825	(viper-bol-and-skip-white, viper-goto-eol, viper-goto-col)
32826	(viper-next-line, viper-next-line-at-bol, viper-previous-line)
32827	(viper-previous-line-at-bol, viper-goto-line, )
32828	(viper-repeat-find, viper-repeat-find-opposite)
32829	(viper-window-top, viper-window-middle, viper-window-bottom)
32830	(viper-paren-match, viper-search, viper-buffer-search-enable)
32831	(viper-put-back, viper-Put-back, viper-mark-point)
32832	(viper-cycle-through-mark-ring, viper-goto-mark-subr)
32833	(viper-brac-function, viper-register-to-point)
32834	(viper-submit-report): Remove some XEmacs compat code.
32835
32836	* lisp/emulation/viper-ex.el (viper-get-ex-address-subr)
32837	(viper-handle-!, ex-edit, ex-mark, ex-next-related-buffer)
32838	(ex-help, ex-write, ex-write-info, viper-info-on-file): Ditto.
32839
32840	* lisp/emulation/viper-keym.el (viper-add-keymap): Ditto.
32841
32842	* lisp/emulation/viper-macs.el (viper-record-kbd-macro): Remove
32843	XEmacs compat code.
32844
32845	* lisp/emulation/viper-mous.el (viper-mouse-click-insert-word)
32846	(viper-mouse-click-search-word): Remove some XEmacs compat code.
32847
32848	* lisp/emulation/viper-util.el (viper-overlay-p)
32849	(viper-color-defined-p, viper-iconify, viper-memq-char)
32850	(viper-char-equal, viper=, viper-color-display-p)
32851	(viper-get-cursor-color, viper-frame-value)
32852	(viper-change-cursor-color, viper-save-cursor-color)
32853	(viper-restore-cursor-color, viper-get-visible-buffer-window)
32854	(viper-file-checked-in-p, viper-put-on-search-overlay)
32855	(viper-flash-search-pattern, viper-hide-search-overlay)
32856	(viper-move-replace-overlay, viper-set-replace-overlay)
32857	(viper-set-replace-overlay-glyphs, viper-hide-replace-overlay)
32858	(viper-replace-start, viper-replace-end)
32859	(viper-set-minibuffer-overlay, viper-check-minibuffer-overlay)
32860	(viper-abbreviate-file-name, viper-mark-marker)
32861	(viper-set-mark-if-necessary, viper-leave-region-active)
32862	(viper-copy-event, viper-read-event-convert-to-char)
32863	(viper-event-key, viper-last-command-char)
32864	(viper-key-to-emacs-key, viper-eventify-list-xemacs)
32865	(viper-set-unread-command-events, viper-char-array-p)
32866	(viper-key-press-events-to-chars, viper-read-char-exclusive):
32867	Remove most of the XEmacs compat code.
32868
32869	* lisp/emulation/viper.el (viper-go-away, viper-set-hooks)
32870	(viper-non-hook-settings): Remove some XEmacs compat code.
32871
328722019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32873
32874	Remove XEmacs compat code from viper-macs.el
32875
32876	* lisp/emulation/viper-macs.el (viper-char-array-to-macro):
32877	Remove XEmacs compat code.
32878
328792019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32880
32881	Remove XEmacs compat code from viper-cmd.el
32882
32883	* lisp/emulation/viper-cmd.el (viper-change-state)
32884	(viper-escape-to-state, viper-special-read-and-insert-char)
32885	(viper-prefix-arg-value, viper-prefix-arg-com)
32886	(viper-display-current-destructive-command)
32887	(viper-file-add-suffix, viper-adjust-window)
32888	(viper-set-searchstyle-toggling-macros)
32889	(viper-set-parsing-style-toggling-macro)
32890	(viper-set-emacs-state-searchstyle-macros): Remove XEmacs compat code.
32891
328922019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32893
32894	Remove XEmacs and old Emacs compat code from gamegrid.el
32895
32896	* lisp/play/gamegrid.el (gamegrid-event-x, gamegrid-event-y)
32897	(gamegrid-make-glyph, image-size, gamegrid-initialize-display)
32898	(gamegrid-start-timer, gamegrid-set-timer)
32899	(gamegrid-kill-timer)
32900	(gamegrid-add-score-with-update-game-score-1)
32901	(gamegrid-add-score-insecure): Removed XEmacs compat code.
32902	(gamegrid-characterp, gamegrid-set-display-table): Removed functions.
32903
329042019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32905
32906	Remove XEmacs compat code from binhex.el
32907
32908	* lisp/mail/binhex.el (binhex-insert-char): Remove XEmacs compat
32909	code and made into a function instead of a defalias.
32910	(binhex-decode-region-internal): Remove XEmacs compat code.
32911
329122019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32913
32914	Remove XEmacs compat code from uudecode.el
32915
32916	* lisp/mail/uudecode.el (uudecode-decode-region-external)
32917	(uudecode-decode-region-internal): Remove XEmacs compat code.
32918
329192019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32920
32921	Remove XEmacs compat code from pascal.el
32922
32923	* lisp/progmodes/pascal.el (pascal-mark-defun): Remove XEmacs compat.
32924
329252019-06-20  Lars Ingebrigtsen  <larsi@gnus.org>
32926
32927	Remove XEmacs support from cperl-mode
32928
32929	* lisp/progmodes/cperl-mode.el (condition-case)
32930	(cperl-electric-parens-mark, cperl-del-back-ch)
32931	(cperl-do-not-fontify, cperl-mode, cperl-find-pods-heres)
32932	(cperl-write-tags, cperl-tags-hier-init, cperl-perldoc)
32933	(cperl-build-manpage): Remove XEmacs support.
32934
32935	There's a lot of support code in here for older versions of Emacs that
32936	could be removed, too.
32937
329382019-06-20  Paul Eggert  <eggert@cs.ucla.edu>
32939
32940	Simplify stdout buffering
32941
32942	* src/sysdep.c (_sobuf): Remove; we no longer need this
32943	microoptimization.
32944	(init_sys_modes): Simplify by assuming setvbuf.
32945
329462019-06-20  Paul Eggert  <eggert@cs.ucla.edu>
32947
32948	Remove no-longer-needed fflushes of stderr
32949
32950	* src/gmalloc.c (mabort) [GC_MCHECK && !__GNU_LIBRARY__]:
32951	* src/term.c (vfatal): Remove fflush (stderr) when it is now a
32952	no-op because newline automatically flushes stderr.
32953
329542019-06-20  Paul Eggert  <eggert@cs.ucla.edu>
32955
32956	Line-buffer stderr
32957
32958	* src/sysdep.c (init_standard_fds) [!DOS_NT]:
32959	Use setvbuf to ensure stderr is line-buffered.
32960
329612019-06-20  Paul Eggert  <eggert@cs.ucla.edu>
32962
32963	Fix arbitrary INT_MAX limit on referrer repr
32964
32965	* src/pdumper.c (print_paths_to_root_1):
32966	Don’t assume strlen (repr) < INT_MAX.
32967
329682019-06-20  Paul Eggert  <eggert@cs.ucla.edu>
32969
32970	Minor putc tweaks
32971
32972	* src/emacs-module.c (module_abort):
32973	* src/xdisp.c (vmessage):
32974	Prefer fputc to putc, since speed isn’t crucial here.
32975	* src/region-cache.c (pp_cache) [ENABLE_CHECKING]: Simplify.
32976
329772019-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32978
32979	Change font_put_extra value for property removal from Qnil to Qunbound
32980
32981	* src/font.c (font_put_extra): If VAL is Qunbound, delete the slot for PROP from
32982	the list of extra properties.  Previous value Qnil is valid as boolean.
32983	(font_clear_prop): Changed argument of font_put_extra for property removal.
32984
329852019-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
32986
32987	Fix failure of setting default face attribute in init script (Bug#36284)
32988
32989	* src/xsettings.c (apply_xft_settings): Undo replacing all #ifdef HAVE_XFT
32990	with #if defined USE_CAIRO || defined HAVE_XFT for this function.
32991
329922019-06-19  Roland Winkler  <winkler@gnu.org>
32993
32994	* lisp/bookmark.el (bookmark-set-internal): Fix format string.
32995
329962019-06-19  Juri Linkov  <juri@linkov.net>
32997
32998	Add file sorting options to find-dired and grep-find (bug#36110)
32999
33000	* lisp/find-dired.el (find-ls-option-default-ls)
33001	(find-ls-option-default-exec, find-ls-option-default-xargs):
33002	New variables for values used for options of 'find-ls-option'.
33003	(find-ls-option): Use these variables for default values and options.
33004	(find-dired-refine-function): Refine :type.
33005
33006	* lisp/progmodes/grep.el (grep-find-use-xargs): Use defcustom
33007	instead of defvar.  Add new value 'gnu-sort'.
33008	(grep-compute-defaults): Handle new 'gnu-sort' option of
33009	'grep-find-use-xargs'.
33010
330112019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33012
33013	Remove XEmacs and ancient Emacs compatibility from newst-backend.el
33014
33015	* lisp/net/newst-backend.el: Remove compatibility with XEmacs and
33016	ancient Emacs versions.
33017
330182019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33019
33020	Doc string fix
33021
33022	* lisp/calendar/timeclock.el (timeclock-completing-read): Fix doc
33023	string punctuation.
33024
330252019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33026
33027	Remove XEmacs compat code from timeclock.el
33028
33029	* lisp/calendar/timeclock.el (timeclock-completing-read)
33030	(timeclock-ask-for-project, timeclock-ask-for-reason): Remove
33031	XEmacs compat code.
33032
330332019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33034
33035	Remove more XEmacs compat code from epa.el
33036
33037	* lisp/epa.el (epa-key-mode, epa-key-list-mode): Remove XEmacs
33038	compat code.
33039
330402019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33041
33042	Remove XEmacs compat code from calc
33043
33044	* lisp/calc/calc.el (calc-read-key-sequence)
33045	(calcDigit-start, calc-read-key, calc-unread-command)
33046	(calc-clear-unread-commands):
33047	* lisp/calc/calc-misc.el (calc-dispatch-help):
33048	* lisp/calc/calc-help.el (calc-help-for-help)
33049	(calc-describe-key):
33050	* lisp/calc/calc-ext.el (calc-fancy-prefix, calc-user-key-map):
33051	Remove XEmacs compat code.
33052
330532019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33054
33055	Remove XEmacs compat code from savehist.el
33056
33057	* lisp/savehist.el:
33058	(savehist-install, savehist-uninstall, savehist-save)
33059	(savehist-trim-history, savehist-printable)
33060	(savehist-minibuffer-hook): Remove XEmacs compat code.
33061
330622019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33063
33064	Remove XEmacs compat code from ps-print
33065
33066	* lisp/ps-print.el:
33067	(ps-print-color-p, ps-postscript-code-directory, ps-setup):
33068	* lisp/ps-def.el:
33069	(ps-mark-active-p, ps-face-foreground-name)
33070	(ps-face-background-name, ps-color-device, ps-color-values)
33071	(ps-face-bold-p, ps-face-italic-p, ps-face-strikeout-p)
33072	(ps-face-overline-p, ps-face-box-p)
33073	(ps-generate-postscript-with-faces1): Remove XEmacs compat code
33074	and some outdated Emacs compat code.
33075
330762019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33077
33078	Remove XEmacs compat code from epa.el
33079
33080	* lisp/epa.el (epa-key-list-mode, epa-key-mode)
33081	(epa--find-coding-system-for-mime-charset): Remove XEmacs compat
33082	code and comments.
33083
330842019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33085
33086	Remove XEmacs compat code from dframe.el
33087
33088	* lisp/dframe.el (dframe-update-speed, dframe-update-keymap)
33089	(dframe-frame-mode, dframe-detach, dframe-set-timer-internal)
33090	(dframe-popup-kludge, dframe-mouse-event-p)
33091	(dframe-track-mouse, dframe-help-echo, dframe-mouse-set-point)
33092	(dframe-double-click, dframe-temp-buffer-show-function)
33093	(dframe-hack-buffer-menu, dframe-mouse-hscroll): Remove XEmacs
33094	compat code (and some ancient Emacs compat code).
33095
330962019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33097
33098	Remove XEmacs compat code from ansi-color.el
33099
33100	* lisp/ansi-color.el (ansi-color-apply-overlay-face)
33101	(ansi-color-make-face, ansi-color-make-extent)
33102	(ansi-color-set-extent-face): Remove XEmacs compat code.
33103
331042019-06-19  Alan Mackenzie  <acm@muc.de>
33105
33106	Update CC Mode's version number to 5.34
33107
33108	* doc/misc/cc-mode.texi (top level, "Introduction"),
33109	lisp/progmodes/cc-defs.el (c-version): Update version number to 5.34.
33110
331112019-06-19  Eli Zaretskii  <eliz@gnu.org>
33112
33113	Update documentation of font backends on MS-Windows
33114
33115	* doc/emacs/msdos.texi (Windows Fonts): Update the
33116	documentation of requesting specific font backends.
33117
331182019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33119
33120	Fix typo in previous erc.el change
33121
33122	* lisp/erc/erc.el (erc-send-input): Fix typo in previous checkin.
33123
331242019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33125
33126	Use add/remove-hook on erc-pre-send-functions
33127
33128	* lisp/erc/erc-goodies.el (noncommands): Ditto.
33129
33130	* lisp/erc/erc-ring.el (ring): Use add/remove-hook.
33131
331322019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33133
33134	Move around defgeneric/defmethods in eieio
33135
33136	* lisp/emacs-lisp/eieio.el (object-print):
33137	* lisp/emacs-lisp/eieio-base.el (eieio-object-set-name-string):
33138	Move the defgeneric before the defmethod, because that makes more
33139	sense.
33140
331412019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33142
33143	Fix previous change to erc (where commands like /me wouldn't be sent)
33144
33145	* lisp/erc/erc-ring.el (erc-add-to-input-ring):
33146	* lisp/erc/erc-goodies.el (erc-send-distinguish-noncommands): Pass
33147	in a erc-input structure instead of a simple string.
33148	* lisp/erc/erc.el (erc-pre-send-functions): Document the new
33149	argument to the filter functions.
33150	(erc-send-input): Use the new structure to allow the filter
33151	functions to alter all three things: The string, whether to insert
33152	the string, and whether to send the string.
33153
331542019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33155
33156	Don't have erc-goodies and erc-ring register functions multiple times
33157
33158	* lisp/erc/erc-goodies.el (noncommands): Don't register functions
33159	twice.
33160
33161	* lisp/erc/erc-ring.el (ring): Ditto.
33162
331632019-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
33164
33165	(with-suppressed-warnings): Make it apply to macro-expansion as well
33166
33167	* lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
33168	Change with-suppressed-warnings so it also affects the macro-expansion of
33169	the body.
33170
331712019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33172
33173	Rename function in completion.el to use completion- prefixes
33174
33175	* lisp/completion.el (locate-completion-entry)
33176	(completion-locate-entry, locate-completion-entry-retry)
33177	(completion-locate-entry-retry, locate-completion-db-error):
33178	Rename to use a completion- prefix and make the old names obsolete
33179	aliases.
33180	(add-completion-to-head, delete-completion): Use the new function
33181	names.
33182
331832019-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
33184
33185	* lisp/textmodes/page-ext.el: Further cleanup
33186
33187	(pages--ctl-x-ctl-p-map): Rename from ctl-x-ctl-p-map.
33188	Move initialization into declaration.
33189	(pages-ctl-x-ctl-p-prefix): Rename from ctl-x-ctl-p-prefix.
33190	(sort-subr): Remove redundant autoload.
33191	(pages-set-delimiter): Use explicit `interactively` arg instead of
33192	`called-interactively`.  Use `setq-local`.
33193	(pages-directory-for-addresses): Use `setq-local`.
33194
331952019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33196
33197	Fix compilation warning in pcmpl-gnu.el
33198
33199	* lisp/pcmpl-gnu.el (pcomplete/tar): Remove binding of
33200	pcomplete-suffix-list, because it's not consulted in any of the
33201	functions called here, and has had no effect since 2011.  If we
33202	want to support not inserting a space after the = sign, we have to
33203	implement that, but it's not currently done.
33204
332052019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33206
33207	Revert "Fix one of the tags/xref warnings in viper-ex.el"
33208
33209	This reverts commit 4f2f95049738be97df8647705a8fc05a029ed244.
33210
33211	We can't mix calls to find-tag and xref-find-definitions
33212
332132019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33214
33215	Fix up the function/variable names in page-ext.el
33216
33217	* lisp/textmodes/page-ext.el (previous-page)
33218	(search-pages)
33219	(sort-pages-in-region)
33220	(sort-pages-buffer)
33221	(pages-sort-buffer)
33222	(pages-set-delimiter): Rename to have pages- prefixes and make the
33223	previous name into aliases for the new names.
33224	(ctl-x-ctl-p-map): Use the new command names.
33225
332262019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33227
33228	Touch up the OKURI-NASI progress reporting
33229
33230	* lisp/international/ja-dic-cnv.el (skkdic-convert-okuri-ari)
33231	(skkdic-convert-postfix, skkdic-convert-prefix)
33232	(skkdic-collect-okuri-nasi): Use INFO progress reporting.
33233	(skkdic-set-okuri-nasi): Use the progress reporter instead of a
33234	per-1000 output.
33235
332362019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33237
33238	Tweak progess reporting in finder-compile-keywords
33239
33240	* lisp/finder.el (finder-compile-keywords): Use progress reporter
33241	to report the processing.
33242
332432019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33244
33245	Allow specifying the expected number of shift/reduce conflicts
33246
33247	* admin/grammars/grammar.wy: Add %expectedconflicts.
33248
33249	* lisp/cedet/semantic/grammar-wy.el
33250	(semantic-grammar-wy--keyword-table): Ditto.
33251
33252	* lisp/cedet/semantic/grammar.el
33253	(semantic-grammar-expected-conflicts): New function.
33254	(semantic-grammar-insert-defconst-with-eval): New function.
33255	(semantic-grammar-create-package): Output the number of expected
33256	shift/reduce conflicts.
33257
33258	* lisp/cedet/semantic/wisent/comp.el (wisent-total-conflicts):
33259	Don't output the warning if the number of shift/reduce conflicts
33260	is expected.
33261	(wisent-expected-conflicts): Made obsolete.
33262
332632019-06-19  Lars Ingebrigtsen  <larsi@gnus.org>
33264
33265	Tweak progress reporting in update-directory-autoloads
33266
33267	* lisp/emacs-lisp/autoload.el (update-directory-autoloads): Use
33268	progress reporter so say what percentage the progress is at.
33269
332702019-06-19  Mattias Engdegård  <mattiase@acm.org>
33271
33272	Compile any subsequence of `cond' clauses to switch (bug#36139)
33273
33274	A single `cond' form can how be compiled to any number of switch ops,
33275	optionally interspersed with non-switch conditions.
33276	Previously, switch ops would only be used for whole `cond' forms
33277	containing no other tests.
33278
33279	* lisp/emacs-lisp/bytecomp.el (byte-compile--cond-vars):
33280	Rename from `byte-compile-cond-vars'.
33281	(byte-compile--default-val): Remove.
33282	(byte-compile--cond-switch-prefix):
33283	Replace `byte-compile-cond-jump-table-info'; now also returns
33284	trailing non-switch clauses.
33285	(byte-compile-cond-jump-table): New arguments; no longer compiles
33286	the default case.
33287	(byte-compile-cond): Look for and compile switches at any place in the
33288	list of clauses.
33289	* test/lisp/emacs-lisp/bytecomp-tests.el (byte-opt-testsuite-arith-data):
33290	Add test expression.
33291
332922019-06-19  Mattias Engdegård  <mattiase@acm.org>
33293
33294	Compile cond with heterogeneous tests into switch (bug#36139)
33295
33296	Allow any mixture of `eq', `eql' and `equal', `memq', `memql' and
33297	`member' in a switch-like `cond' to be compiled into a single switch.
33298
33299	* lisp/emacs-lisp/bytecomp.el (byte-compile--common-test): New.
33300	(byte-compile-cond-jump-table-info): Use most specific common test.
33301	* test/lisp/emacs-lisp/bytecomp-tests.el (byte-opt-testsuite-arith-data):
33302	Add test cases for multi-value clause cond forms.
33303
333042019-06-19  Mattias Engdegård  <mattiase@acm.org>
33305
33306	Tighter pcase or-pattern member function selection (bug#36139)
33307
33308	* lisp/emacs-lisp/pcase.el (pcase--u1):
33309	Use the most specific of `memq', `memql' and `member' in or-patterns
33310	with constant cases.  This improves performance and may help the byte-code
33311	compiler generate a switch.
33312	* test/lisp/emacs-lisp/pcase-tests.el (pcase-tests-member):
33313	Add mixed-type or-pattern test cases.
33314
333152019-06-19  Mattias Engdegård  <mattiase@acm.org>
33316
33317	Compile list member functions in cond to switch (bug#36139)
33318
33319	* lisp/emacs-lisp/bytecomp.el (byte-compile-cond-jump-table-info):
33320	Expand `memq', `memql' and `member' to their corresponding
33321	equality tests.
33322	(byte-compile-cond-jump-table): Cases now have multiple values.
33323	* lisp/emacs-lisp/byte-opt.el (byte-decompile-bytecode-1)
33324	(byte-optimize-lapcode): Don't assume switch hash tables to be injective.
33325
333262019-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
33327
33328	Fix oversights of "support X core font driver on cairo" change
33329
33330	* src/Makefile.in (FONT_OBJ): Fix comment for USE_CAIRO.
33331	* src/xfns.c (x_create_tip_frame) [USE_CAIRO]: Register xfont_driver.
33332
333332019-06-19  Paul Eggert  <eggert@cs.ucla.edu>
33334
33335	--with-cairo is no longer experimental
33336
33337	Suggested by YAMAMOTO Mitsuharu in:
33338	https://lists.gnu.org/r/emacs-devel/2019-06/msg00686.html
33339	* configure.ac: Do not say --with-cairo is experimental.
33340	* etc/NEWS: Say that --with-cairo is no longer experimental.
33341
333422019-06-18  Glenn Morris  <rgm@gnu.org>
33343
33344	Disable lexical-binding in ediff
33345
33346	Since it breaks the thing (bug#36157, bug#36281).
33347	* lisp/vc/ediff-diff.el, lisp/vc/ediff-help.el, lisp/vc/ediff-hook.el:
33348	* lisp/vc/ediff-init.el, lisp/vc/ediff-merg.el, lisp/vc/ediff-mult.el:
33349	* lisp/vc/ediff-ptch.el, lisp/vc/ediff-vers.el, lisp/vc/ediff-wind.el:
33350	* lisp/vc/ediff.el: Set lexical-binding to nil.
33351
333522019-06-18  Eli Zaretskii  <eliz@gnu.org>
33353
33354	Fix the handling of font backend supersedence on MS-Windows
33355
33356	* src/w32font.c (syms_of_w32font): Don't make the Uniscribe
33357	font backend "superceded" here, ...
33358	* src/w32uniscribe.c (syms_of_w32uniscribe_for_pdumper):
33359	... make it "superceded" here, only if the HarfBuzz DLL was
33360	successfully loaded.  This is because Emacs compiled with
33361	HarfBuzz support might run on a system without the DLL.
33362	* src/w32fns.c (Fx_create_frame, w32_create_tip_frame):
33363	Register the HarfBuzz font backend only if it is available.
33364
333652019-06-18  Lars Ingebrigtsen  <larsi@gnus.org>
33366
33367	Revert "Add a mechanism to specify expected shift/reduce .wy conflicts"
33368
33369	This reverts commit f21ec24524c705e18674a2e9e4db37b11fa3ebab.
33370
33371	*sigh*  Revert again because this created a bootstrap problem in a different part of the process.
33372
333732019-06-18  Lars Ingebrigtsen  <larsi@gnus.org>
33374
33375	Add a mechanism to specify expected shift/reduce .wy conflicts
33376
33377	* admin/grammars/python.wy: Set the expected number of
33378	shift/reduce conflicts to four.
33379
33380	* lisp/cedet/semantic/grammar.el
33381	(semantic-grammar-expected-conflicts): New function.
33382
33383	* lisp/cedet/semantic/wisent/comp.el (wisent-total-conflicts): Use
33384	it to suppress warnings about the expected number of shift/reduce
33385	conflicts.
33386
333872019-06-18  Lars Ingebrigtsen  <larsi@gnus.org>
33388
33389	Revert "Add a mechanism to specify expected shift/reduce .wy conflicts"
33390
33391	This reverts commit d715ae8788e16b22f7f68cb82b51a40ad95c78c2.
33392
33393	This commit led to a build error, so revert for now.
33394
333952019-06-18  Lars Ingebrigtsen  <larsi@gnus.org>
33396
33397	Add a mechanism to specify expected shift/reduce .wy conflicts
33398
33399	* admin/grammars/python.wy: Set the expected number of
33400	shift/reduce conflicts to four.
33401
33402	* lisp/cedet/semantic/grammar.el
33403	(semantic-grammar-expected-conflicts): New function.
33404	* lisp/cedet/semantic/wisent/comp.el (wisent-total-conflicts): Use
33405	it to suppress warnings about the expected number of shift/reduce
33406	conflicts.
33407
334082019-06-18  Lars Ingebrigtsen  <larsi@gnus.org>
33409
33410	Rename symbols in ind-util.el to have indian- prefixes
33411
33412	* lisp/language/ind-util.el (indian-ucs-to-is13194-regexp)
33413	(indian-ucs-to-iscii-region, indian-iscii-to-ucs-region): Rename
33414	unprefixed function to indian-*.
33415
334162019-06-18  Lars Ingebrigtsen  <larsi@gnus.org>
33417
33418	Report progress during custom-make-dependencies instead of file count
33419
33420	* lisp/cus-dep.el (custom-make-dependencies): Rewrite to use
33421	reporter to report progress instead of how many files we've
33422	processed.
33423
33424	* lisp/emacs-lisp/byte-run.el (byte-compile-info-string): New function.
33425	(byte-compile-info-message): Use it.
33426
334272019-06-18  Lars Ingebrigtsen  <larsi@gnus.org>
33428
33429	Make quail conversion output quieter
33430
33431	* lisp/international/quail.el (quail-update-leim-list-file): Ditto.
33432	* lisp/international/titdic-cnv.el (tit-process-header)
33433	(tit-process-body, miscdic-convert, batch-titdic-convert): Reduce
33434	messaging.
33435
334362019-06-18  Lars Ingebrigtsen  <larsi@gnus.org>
33437
33438	Fix compilation warning in bookmark.el
33439
33440	* lisp/bookmark.el (bookmarks-already-loaded): Move obsolete alias
33441	definition to before its referent.
33442
33443	In toplevel form:
33444	bookmark.el:279:1:Warning: Alias for `bookmark-bookmarks-timestamp' should be
33445	    declared before its referent
33446
334472019-06-18  Lars Ingebrigtsen  <larsi@gnus.org>
33448
33449	Output progress reports when scanning for finder/custom
33450
33451	* lisp/cus-dep.el (custom-make-dependencies): Ditto.
33452
33453	* lisp/finder.el (finder-compile-keywords): Instead of outputting
33454	the directories being scanned, output progress reports on the
33455	number of files being scanned.  This makes the output more similar
33456	to the autoload scraping.
33457
334582019-06-18  Lars Ingebrigtsen  <larsi@gnus.org>
33459
33460	Touch up the byte-compilation messaging in skkdic-set-okuri-nasi
33461
33462	* lisp/international/ja-dic-cnv.el (skkdic-set-okuri-nasi): Use
33463	the "INFO" format for these informational messages, and be more
33464	explicit in saying what they're doing.
33465
334662019-06-18  Lars Ingebrigtsen  <larsi@gnus.org>
33467
33468	Add types to some no-type tokes in js.wy
33469
33470	* admin/grammars/js.wy: Add types to the FALSE, TRUE and QUERY tokens.
33471
33472	Without the types, you'd get the warning
33473
33474	*Warning* default value of <<no-type>> tokens changed to QUERY, was NULL_TOKEN
33475	*Warning* default value of <<no-type>> tokens changed to TRUE, was QUERY
33476	*Warning* default value of <<no-type>> tokens changed to FALSE, was TRUE
33477
33478	I think this should be harmless, and it doesn't seem to break handling
33479	.js files.
33480
334812019-06-18  Lars Ingebrigtsen  <larsi@gnus.org>
33482
33483	Comment out useless nonterminals from python.wy
33484
334852019-06-18  Lars Ingebrigtsen  <larsi@gnus.org>
33486
33487	Remove nonterminals that semantic claims are useless
33488
33489	* admin/grammars/js.wy (VariableStatement): Remove useless
33490	nonterminals.
33491
33492	Debug output from wisent:
33493
33494	Useless nonterminals:
33495
33496	   StatementList
33497	   BlockExpand
33498
334992019-06-18  Lars Ingebrigtsen  <larsi@gnus.org>
33500
33501	Silence spurious load message in latin-ltx.el
33502
33503	* lisp/leim/quail/latin-ltx.el (latin-ltx--define-rules): Silence
33504	the `load' because it's not very informative.
33505
335062019-06-18  Lars Ingebrigtsen  <larsi@gnus.org>
33507
33508	Tweak implementation of byte-compile-info-message
33509
33510	* lisp/emacs-lisp/byte-run.el (byte-compile-info-message): Clean
33511	up implementation.
33512
335132019-06-17  Roland Winkler  <winkler@gnu.org>
33514
33515	* lisp/bookmark.el: Watch bookmark file.  Use lexical binding.
33516
33517	(bookmark-watch-bookmark-file): New user variable.
33518	(bookmark-alist): Fix docstring.
33519	(bookmark-bookmarks-timestamp): Renamed from bookmarks-already-loaded.
33520	(bookmark-maybe-load-default-file, bookmark-save, bookmark-load):
33521	Use bookmark-bookmarks-timestamp.
33522	(bookmark-bmenu-mode-map): Define menu bar menu.
33523	(bookmark-show-annotation, bookmark-show-all-annotations):
33524	Make bookmarks buffer read-only.
33525	(bookmark-bmenu-save): Use call-interactively.
33526
335272019-06-17  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
33528
33529	Support font driver supersession
33530
33531	* src/font.c (font_update_drivers): If argument NEW_DRIVERS is t, then don't
33532	use superseded drivers.
33533	(syms_of_font) <Qfont_driver_superseded_by>: New DEFSYM.
33534
33535	* src/ftfont.c (syms_of_ftfont) [HAVE_HARFBUZZ]:
33536	* src/ftcrfont.c (syms_of_ftcrfont) [HAVE_HARFBUZZ]:
33537	* src/w32font.c (syms_of_w32font) [HAVE_HARFBUZZ]:
33538	* src/xftfont.c (syms_of_xftfont) [HAVE_HARFBUZZ]: Make Harfbuzz variants
33539	supersede non-Harfbuzz ones.
33540
33541	* src/w32fns.c (Fx_create_frame, w32_create_tip_frame): Remove font backend
33542	determination code.
33543
335442019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33545
33546	Output progress messages when scraping autoloads during bootstrap
33547
33548	* lisp/emacs-lisp/byte-run.el (byte-compile-info-message): New
33549	function to outout informational messages during byte compilation.
33550
33551	* lisp/emacs-lisp/autoload.el (update-directory-autoloads): Use it
33552	to report progress when scraping autoloads during bootstrap (which
33553	may take half a minute).
33554
335552019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33556
33557	Silence message in latin-ltx about the normal situation
33558
33559	* lisp/leim/quail/latin-ltx.el (latin-ltx--define-rules): Don't
33560	output the summary message unless there are conflicts.
33561
335622019-06-17  Paul Eggert  <eggert@cs.ucla.edu>
33563
33564	* src/image.c (image_set_rotation): Do negation at compile-time.
33565
335662019-06-17  Alan Mackenzie  <acm@muc.de>
33567
33568	Move defvars of c-doc-line-join-re + two others from cc-fonts.el to cc-mode.el
33569
33570	This is because these variables are needed at runtime even when cc-fonts.el
33571	hasn't been loaded, as in XEmacs when font locking hasn't been enabled.
33572
33573	* lisp/progmodes/cc-fonts.el (c-doc-line-join-re)
33574	(c-doc-bright-comment-start-re, c-doc-line-join-end-ch): Move definitions to
33575	cc-mode.el.
33576
335772019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33578
33579	Compilation work-around for obsolete eieio-object-set-name-string
33580
33581	* lisp/emacs-lisp/eieio-base.el (eieio-object-set-name-string):
33582	Move the generic definition of this method to here from eieio.el
33583	and place it after the cl-method definition.  This avoids a
33584	warning about it being obsolete when doing macro expansion.
33585
335862019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33587
33588	Work around warning from macroexpanding obsolete method
33589
33590	* lisp/emacs-lisp/eieio.el (object-print): Move method definition
33591	to before generic definition because the generic definition
33592	obsoletes the method, which will then output a warning from when
33593	macroexpanding.
33594
335952019-06-17  Alex Branham  <alex.branham@gmail.com>
33596
33597	Avoid a flyspell error if point is at beginning of buffer
33598
33599	* lisp/textmodes/flyspell.el (flyspell-generic-progmode-verify): Check
33600	if point is at the beginning of the buffer.  This prevents an error
33601	when e.g. 'flyspell-auto-correct-word' gets called with point at the
33602	beginning of the buffer.
33603
33604	Bug#35967
33605
336062019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33607
33608	Declare unknown slots to silence the compiler
33609
33610	* lisp/cedet/ede/config.el (classpath): Declare slot.
33611	(ede-java-classpath): Revert previous hack.
33612
33613	* lisp/cedet/srecode/srt-mode.el (key): Declare slot.
33614	(srecode-macro-help): Revert previous hack.
33615	(srecode-parse-this-macro): Ditto.
33616
336172019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33618
33619	Change the eieio-declare-slots function into a macro
33620
33621	* lisp/emacs-lisp/eieio-core.el (eieio-declare-slots): Change into
33622	a compile-only macro.
33623
336242019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33625
33626	New function eieio-declare-slots
33627
33628	* lisp/emacs-lisp/eieio-core.el (eieio-declare-slots): New
33629	function to suppress compiler warnings about unknown slots.
33630
336312019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33632
33633	Fix use of obsolete constructor in semantic/complete.el
33634
33635	* lisp/cedet/semantic/complete.el (make-instance): Use
33636	make-instance instead of the obsolete constructor method...  which
33637	didn't work, anyway.  The following would bug out
33638
336392019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33640
33641	Fix compilation warning by having ede-target inherit from eieio-named
33642
33643	* lisp/cedet/ede/base.el (ede-target): Inherit from eieio-named so
33644	that if you're customizing objects via eieio-object-value-get, you
33645	can set the name.
33646
33647	* lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get): Don't
33648	use obsolete function `eieio-object-set-name-string'.
33649
336502019-06-17  Alan Mackenzie  <acm@muc.de>
33651
33652	Remove the now unneeded c-font-lock-flush from CC Mode.
33653
33654	* lisp/progmodes/cc-defs.el (c-font-lock-flush): Delete this macro.
33655
33656	* lisp/progmodes/cc-engine.el (c-propertize-raw-string-opener): Delete the
33657	call to the macro.
33658
336592019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33660
33661	Make calc-macs.el lexical
33662
33663	* lisp/calc/calc-macs.el: Enable lexical binding.  This fixes a
33664	build warning in calc.el (which is lexical).
33665
336662019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33667
33668	Suppress warning in isearchb about iswitchb being obsolete
33669
33670	* lisp/isearchb.el (obsolete): Suppress warning about package
33671	being obsolete.  Instead, this has been reported to the bug
33672	tracker, because it requires a rewrite of isearchb.
33673
336742019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33675
33676	Make do-after-load-evaluation check whether warnings are enabled.
33677
33678	* lisp/subr.el (do-after-load-evaluation): Heed
33679	`byte-compile-warning-enabled-p', if defined.  This allows
33680	suppressing the warning about packages being obsolete.
33681
336822019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33683
33684	Suppress compilation warning in srt-mode
33685
33686	* lisp/cedet/srecode/srt-mode.el (srecode-parse-this-macro): Check
33687	for the existence of `key' in the macro before using it, and
33688	suppress the warning.
33689
336902019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33691
33692	Suppress warning about out-of-tree Java class in cedet
33693
33694	* lisp/cedet/ede/config.el (ede-java-classpath): Hack to suppress
33695	a compilation warning in glue code to out-of-tree code.
33696
336972019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33698
33699	Suppress warning about object-print in eieio.el
33700
33701	* lisp/emacs-lisp/eieio.el (obsolete): Suppress warning about
33702	object-print being obsolete, because there are no in-tree
33703	definitions any more.
33704
337052019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33706
33707	Add check for enabled warning before issuing
33708
33709	* lisp/emacs-lisp/bytecomp.el (byte-compile-function-warn): Check
33710	whether we want the `obsolete' warning before issuing it.
33711
337122019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33713
33714	Suppress warning about object-print in eieio.el
33715
33716	* lisp/emacs-lisp/eieio.el (cl-print-object): Suppress the warning
33717	about object-print being obsolete, since there are no in-tree
33718	methods like that any more.
33719
337202019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33721
33722	Make with-suppressed-warnings work in cl-defmethod
33723
33724	* lisp/emacs-lisp/cl-generic.el (cl-defmethod): Pass the symbol
33725	name on to `byte-compile-warning-enabled-p' to make
33726	with-suppressed-warnings work in cl-defmethods, too.
33727
337282019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33729
33730	Rewrite object-print methods in cedet to be cl-print-object methods
33731
33732	* lisp/cedet/semantic/db-el.el (object-print): Ditto.
33733	(object-print): Ditto.
33734
33735	* lisp/cedet/semantic/db-global.el (object-print): Ditto.
33736
33737	* lisp/cedet/semantic/db.el (object-print): Remove; unused.
33738	* lisp/cedet/semantic/db.el (semanticdb-debug-info): New method.
33739	(object-print): Rewritten to be cl-print-object.
33740
33741	* lisp/emacs-lisp/eieio.el (eieio-object-name): Allow the EXTRA
33742	argument to be a list of strings.
33743
337442019-06-17  Lars Ingebrigtsen  <larsi@gnus.org>
33745
33746	Add doc strings to the -at-point commands in vc-git
33747
33748	* lisp/vc/vc-git.el (vc-git-stash-delete-at-point)
33749	(vc-git-stash-show-at-point, vc-git-stash-apply-at-point)
33750	(vc-git-stash-pop-at-point): Add doc strings to these commands.
33751
337522019-06-16  Roland Winkler  <winkler@gnu.org>
33753
33754	* lisp/find-dired.el (find-dired-refine-function): Fix defcustom.
33755
337562019-06-16  Eric Abrahamsen  <eric@ericabrahamsen.net>
33757
33758	Prevent the Gnus registry from being loaded twice at startup
33759
33760	* lisp/gnus/gnus-registry.el (gnus-registry-load): Check if the
33761	  registry is already loaded, and don't load again unless new optional
33762	  FORCE argument is non-nil.
33763	  (gnus-registry-clear): New function to clear the registry, added as
33764	  a Gnus shutdown. Now that loading doesn't unilaterally reset the
33765	  registry, we need to make sure it is reloaded when Gnus is.
33766
337672019-06-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
33768
33769	Avoid rounding error in image rotation
33770
33771	* src/image.c (image_set_rotation): Halve translations as double values.
33772
337732019-06-16  Glenn Morris  <rgm@gnu.org>
33774
33775	Tweak compilation mode used by byte-recompile-directory
33776
33777	* lisp/emacs-lisp/bytecomp.el (emacs-lisp-compilation-mode):
33778	Doc fix.
33779	(byte-recompile-directory): Use emacs-lisp-compilation-mode.
33780
337812019-06-16  Glenn Morris  <rgm@gnu.org>
33782
33783	Disable filling of warnings in a bytecomp test
33784
33785	* test/lisp/emacs-lisp/bytecomp-tests.el (test-suppression):
33786	Disable filling rather than working around it.
33787
337882019-06-16  Glenn Morris  <rgm@gnu.org>
33789
33790	Tweak how byte-compile-print-syms fills
33791
33792	* lisp/emacs-lisp/bytecomp.el (byte-compile-print-syms):
33793	Use fill-column from the compile log buffer.
33794
337952019-06-16  Glenn Morris  <rgm@gnu.org>
33796
33797	Don't hard-code the fill-column for display-warning
33798
33799	* lisp/emacs-lisp/warnings.el (warning-fill-column): New variable.
33800	(display-warning): Use warning-fill-column.
33801	* doc/lispref/display.texi (Warning Variables):
33802	Mention warning-fill-column.
33803
338042019-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
33805
33806	* lisp/emacs-lisp/cl-generic.el (gv-setter): Move declaration.
33807
33808	Move it to those places where we know gv has been loaded.
33809
338102019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33811
33812	Fix up the --no-print-directory changes in src/Makefile.in
33813
33814	* src/Makefile.in (AM_V_NO_PD): New macro written by Andreas
33815	Schwab that can be either --no-print-directory or "".
33816	(%.elc): Use it instead if the if statement.
33817
338182019-06-16  Juanma Barranquero  <lekktu@gmail.com>
33819
33820	Bump up max_specpdl_size to 1500.  (Bug#36216)
33821
33822	* src/eval.c (init_eval_once): Set max_specpdl_size to 1500.
33823	* doc/lispref/variables.texi (Local Variables): Document it.
33824
338252019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33826
33827	Add comment to eieio-opt about why we're requiring cl-extra
33828
33829	* lisp/emacs-lisp/eieio-opt.el (cl-extra): Add comment about why
33830	we're not requiring cl-lib.
33831
338322019-06-16  Alan Third  <alan@idiocy.org>
33833
33834	Revert "Simplify image transforms"
33835
33836	This reverts commit cf3081d208814ea02fce33aac645abfc24f880a6.
33837
338382019-06-16  Alan Third  <alan@idiocy.org>
33839
33840	Simplify image transforms
33841
33842	* src/image.c: (image_set_rotation, image_set_size,
33843	image_set_transform): Combine into image_set_transform.
33844	(image_set_crop): Remove function.
33845	(lookup_image): Remove calls to removed functions and remove
33846	transform_matrix.
33847	* test/manual/image-transforms-tests.el (test-cropping): Remove
33848	function.
33849	(test-transforms): Remove reference to test-cropping.
33850
338512019-06-16  Alan Third  <alan@idiocy.org>
33852
33853	Document image transforms
33854
33855	* doc/lispref/display.texi (Image Descriptors): Document :crop and
33856	update :rotation.
33857	* src/image.c: Describe the image transform matrix layout.
33858	* test/manual/image-transforms-tests.el: New file.
33859
338602019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33861
33862	Fix compilation warning about gv-setter in cl-generic
33863
33864	* lisp/emacs-lisp/cl-generic.el (gv-setter): Declare to avoid a
33865	compilation warning.
33866
338672019-06-16  Alan Mackenzie  <acm@muc.de>
33868
33869	CC Mode: Remedy recent loss in performance
33870
33871	* lisp/progmodes/cc-engine.el (c-back-over-member-initializers): call
33872	c-parse-state outside of the narrowing operation.
33873
33874	* lisp/progmodes/cc-fonts.el (c-get-fontification-context)
33875	(c-font-lock-cut-off-declarators): Replace calls to c-determine-limit with
33876	crude position calculations for speed.
33877
338782019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33879
33880	Fix compilation warning i eieio-base
33881
33882	* lisp/emacs-lisp/eieio-base.el (clone): Use eieio-object-class
33883	instead of obsolete function class-of.
33884
338852019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33886
33887	Fix compilation warning in ede.el
33888
33889	* lisp/cedet/ede/auto.el (ede-project-autoload): Inherit from
33890	eieio-named, because we want to set the object name...
33891
33892	* lisp/cedet/ede.el (ede-new): ... which we do here, and fix the
33893	compilation warning about the obsolete
33894	eieio-object-set-name-string function.
33895
338962019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33897
33898	Revert "Fix compilation warning in ede.el"
33899
33900	This reverts commit 7bbb56bc430465a6807a8129a322c704c89e3eba.
33901
33902	The commit led to a bootstrap error.
33903
339042019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33905
33906	Fix compilation warning in ede.el
33907
33908	* lisp/cedet/ede.el (ede-new): ... which we do here, and fix the
33909	compilation warning about the obsolete
33910	eieio-object-set-name-string function.
33911
33912	* lisp/cedet/ede/auto.el (ede-project-autoload): Inherit from
33913	eieio-named, because we want to set the object name...
33914
339152019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33916
33917	Remove obsolete name arg from two constructors
33918
33919	* lisp/cedet/semantic/grammar.el
33920	(semantic-analyze-current-context): Remove obsolete name arg.
33921
33922	* lisp/cedet/srecode/insert.el (srecode--insert-into-buffer): Ditto.
33923
339242019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33925
33926	Compilation fix for previous change to eieio-opt
33927
33928	* lisp/emacs-lisp/eieio-opt.el (cl-extra): Require for
33929	cl--describe-class.
33930
339312019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33932
33933	Fix compilation warning in eieio-opt
33934
33935	* lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor): Don't
33936	use obsolete function eieio-help-class.
33937
339382019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33939
33940	Avoid "unknown slot" compilation warning in eieio-custom
33941
33942	* lisp/emacs-lisp/eieio-custom.el
33943	(eieio-read-customization-group): Slot `name' may not exist in all
33944	classes, so protect against that (and avoid a compilation warning
33945	about it).
33946
339472019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33948
33949	Avoid a compilation warning in srt-mode.el
33950
33951	* lisp/cedet/srecode/srt-mode.el (srecode-macro-help): Add hack to
33952	avoid compilation warning about slot that has to exist at this
33953	point.
33954
339552019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33956
33957	Fix one of the tags/xref warnings in viper-ex.el
33958
33959	* lisp/emulation/viper-ex.el (ex-tag): Avoid a compilation warning
33960	about find-tag-other-window.
33961
339622019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33963
33964	Declare function in esh-mode before #'-ing it
33965
33966	* lisp/eshell/esh-mode.el (ansi-color-apply-text-property-face):
33967	Declare to avoid a compilation warning.
33968
339692019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33970
33971	Avoid obsolete function in reftex-global.el
33972
33973	* lisp/textmodes/reftex-global.el (reftex-query-replace-document):
33974	Rewrite to use fileloop directly to avoid the obsolete function
33975	tags-query-replace.
33976
339772019-06-16  Lars Ingebrigtsen  <larsi@gnus.org>
33978
33979	Use fileloop directly in vc-dir to avoid obsolete function
33980
33981	* lisp/vc/vc-dir.el (vc-dir-query-replace-regexp): Rewrite to use
33982	fileloop directly to avoid the obsolete function
33983	tags-query-replace.
33984
339852019-06-16  Alan Mackenzie  <acm@muc.de>
33986
33987	Maintain c-syntax-table-hwm when changing syntax-table text properties
33988
33989	* lisp/progmodes/cc-defs.el: (c-syntax-table-hwm): Move the defvar to here
33990	from cc-mode.el, since the variable is needed at compile time in
33991	c-emacs-features.
33992	(c-min-property-position): New macro.
33993	(c-put-char-property, c-clear-char-property, c-clear-char-properties)
33994	(c-clear-char-property-with-value-function)
33995	(c-clear-char-property-with-value-on-char-function)
33996	(c-put-char-properties-on-char): Adjust c-syntax-table-hwm appropriately when
33997	syntax-table text properties are changed.
33998
33999	* lisp/progmodes/cc-engine.el (c-truncate-lit-pos-cache): Remove the now
34000	unneeded setting of c-syntax-table-hwm, and the unneeded declaration of
34001	c-syntax-table-hwm.
34002
340032019-06-16  Michael Albinus  <michael.albinus@gmx.de>
34004
34005	Say how Tramp is packaged with Emacs
34006
34007	* doc/misc/tramp.texi (Obtaining Tramp):
34008	Mention `customize-package-emacs-version-alist'.
34009
340102019-06-15  Dmitry Gutov  <dgutov@yandex.ru>
34011
34012	Fix regressions in xref-find-definitions and ...-other-window
34013
34014	* lisp/progmodes/xref.el:
34015	(xref--display-buffer-in-other-window)
34016	(xref--display-buffer-in-window): New functions.
34017	(xref--show-pos-in-buf): Use them (bug#33870)
34018
340192019-06-15  Stefan Kangas  <stefankangas@gmail.com>
34020
34021	Add MESSAGE string to bookmark-errors (bug#23408)
34022
34023	* lisp/bookmark.el (bookmark-errors): Add MESSAGE parameter string.
34024
340252019-06-15  Noam Postavsky  <npostavs@gmail.com>
34026
34027	Always try to display tree-widget with images (Bug#36147)
34028
34029	Checking the result of display-images-p doesn't make sense if the
34030	display capabilities when loading the file are different from the
34031	display used to actually look at the widget (which is easily possible
34032	now that Emacs supports both tty and graphic frames in the same
34033	instance).
34034	* lisp/tree-widget.el (tree-widget-image-enable): Default to t,
34035	always.  This still shows text on displays that can't show images.
34036
340372019-06-15  Noam Postavsky  <npostavs@gmail.com>
34038
34039	Allow trailing whitespace in --eval argument (Bug#36219)
34040
34041	* lisp/startup.el (command-line-1): Don't complain about trailing
34042	garbage if it's only space, tab, or newline characters.
34043
340442019-06-15  Michael Albinus  <michael.albinus@gmx.de>
34045
34046	* lisp/net/trampver.el (customize-package-emacs-version-alist):
34047
34048	Adapt Tramp version integrated in Emacs 26.3.
34049
340502019-06-15  Philipp Stephani  <phst@google.com>
34051
34052	* src/xfaces.c (dump_realized_face): Fix incorrect format string.
34053
34054	* src/xfaces.c (dump_realized_face): Fix format specifier.
34055
34056	* src/nsterm.m (ns_row_rect): Remove unused variable ‘f.’
34057
340582019-06-15  Glenn Morris  <rgm@gnu.org>
34059
34060	Merge from origin/emacs-26
34061
34062	7a8f22b * test/lisp/url/url-file-tests.el (url-file): Use file:///, n...
34063	0c5f6c6 Fix doc of srecompile-compile-split-code (Bug#36200)
34064
340652019-06-15  Glenn Morris  <rgm@gnu.org>
34066
34067	Merge from origin/emacs-26
34068
34069	6242324 * lisp/net/sieve-manage.el (sieve-manage-parse-capability): D...
34070
340712019-06-15  Glenn Morris  <rgm@gnu.org>
34072
34073	Merge from origin/emacs-26
34074
34075	f53ce87 ; ChangeLog.3 update
34076	eca2677 Fix description of 'display-buffer-in-previous-window' again ...
34077	7be50cd Consistently use @minus{} for negative arguments
34078
34079	# Conflicts:
34080	#	ChangeLog.3
34081
340822019-06-15  Eli Zaretskii  <eliz@gnu.org>
34083
34084	Update hash value in pdumper.c
34085
34086	* src/pdumper.c (dump_fwd_buffer_obj) [CHECK_STRUCTS]: Update
34087	the hash in HASH_Lisp_Buffer_Objfwd.  (Bug#36225)
34088
340892019-06-15  Eli Zaretskii  <eliz@gnu.org>
34090
34091	Improve error message when dmpstruct.h needs to be updated
34092
34093	* src/pdumper.c (dump_cons, dump_interval_tree, dump_string)
34094	(dump_marker, dump_overlay, dump_finalizer)
34095	(dump_bignum, dump_float, dump_fwd_int, dump_fwd_bool)
34096	(dump_fwd_obj, dump_fwd_buffer_obj, dump_fwd_kboard_obj)
34097	(dump_fwd, dump_blv, dump_symbol, dump_vectorlike_generic)
34098	(dump_hash_table, dump_buffer, dump_bool_vector, dump_subr)
34099	(dump_vectorlike, dump_object, dump_charset) [CHECK_STRUCTS]:
34100	Make the error message more specific where to find the comment
34101	to CHECK_STRUCTS.
34102
341032019-06-15  Lars Ingebrigtsen  <larsi@gnus.org>
34104
34105	Probably fix the `helper' argument in feedmail.el
34106
34107	* lisp/mail/feedmail.el (feedmail-queue-send-edit-prompt-inner):
34108	Return the helper function (instead of the symbol `helper') so
34109	that the caller can actually call it.
34110
341112019-06-15  Lars Ingebrigtsen  <larsi@gnus.org>
34112
34113	Fix compilation warning in esh-cmd.el
34114
34115	* lisp/eshell/esh-cmd.el (pcomplete--here): Declare function to
34116	avoid byte compilation warning, which is what erc-notify.el also
34117	does in a similar situation.
34118
341192019-06-15  Lars Ingebrigtsen  <larsi@gnus.org>
34120
34121	Fix build warning in srecode/srt-mode
34122
34123	* lisp/cedet/srecode/srt-mode.el (srecode-inserter-prin-example):
34124	Declare and require before use.
34125
341262019-06-15  Lars Ingebrigtsen  <larsi@gnus.org>
34127
34128	Silence warnings about obsolete functions in obsolete/vip.el
34129
34130	* lisp/obsolete/vip.el (ex-tag): Silence warnings about obsolete
34131	functions because this is an obsolete file.
34132
341332019-06-15  Lars Ingebrigtsen  <larsi@gnus.org>
34134
34135	Suppress compilation warnings in obsolete/otodo-mode.el
34136
34137	* lisp/obsolete/otodo-mode.el (lexical): Suppress warnings about
34138	non-prefixed variables because this file is obsolete.
34139
341402019-06-15  Lars Ingebrigtsen  <larsi@gnus.org>
34141
34142	Silence warning in obsolete/complete.el
34143
34144	* lisp/obsolete/complete.el (PC-do-completion): Suppress warning
34145	about obsolete variable in obsolete function.
34146
341472019-06-15  Lars Ingebrigtsen  <larsi@gnus.org>
34148
34149	Make obsolete function zip-lists work again
34150
34151	* lisp/obsolete/cl-compat.el (zip-lists): Use cl-mapcan instead of
34152	mapcan; mapcan now takes only two parameters.
34153
341542019-06-15  Lars Ingebrigtsen  <larsi@gnus.org>
34155
34156	Suppress compilation warning in supercite.el
34157
34158	* lisp/mail/supercite.el (curline): Suppress warning about
34159	non-prefixed variable used by forms in the `sc-mail-glom-frame'
34160	variable.
34161
341622019-06-15  Lars Ingebrigtsen  <larsi@gnus.org>
34163
34164	Suppress warning in mailheader.el
34165
34166	* lisp/mail/mailheader.el (headers): Suppress warning about
34167	non-prefixed variable part of the advertised interface.
34168
341692019-06-15  Lars Ingebrigtsen  <larsi@gnus.org>
34170
34171	Suppress warning about non-prefixed variable in mailalias.el
34172
34173	* lisp/mail/mailalias.el (patters): Suppress warning about
34174	non-prefixed variable used by `mail-complete-alist'.
34175
341762019-06-15  Lars Ingebrigtsen  <larsi@gnus.org>
34177
34178	Fix byte compilation warning in bindat.el
34179
34180	* lisp/emacs-lisp/bindat.el (bindat--unpack-item): Avoid a byte
34181	compilation warning by using unibyte-string instead of concat +
34182	string-make-unibyte.
34183
341842019-06-15  Lars Ingebrigtsen  <larsi@gnus.org>
34185
34186	Avoid printing entering/leaving messages in second stage bootstrap
34187
34188	* src/Makefile.in (%.elc): Default to not printing the
34189	entering/leaving lines when compiling .el files in the second
34190	stage of bootstrapping Emacs.  V=1 will output them.
34191
341922019-06-15  Lars Ingebrigtsen  <larsi@gnus.org>
34193
34194	Also test unpacking
34195
34196	Refactor for reuse
34197
34198	New file to test bindat functions
34199
342002019-06-15  Lars Ingebrigtsen  <larsi@gnus.org>
34201
34202	Suppress warning about `entry' in calendar
34203
34204	* lisp/calendar/cal-china.el (entry):
34205	* lisp/calendar/cal-hebrew.el (entry): Suppress warning about
34206	dynamically bound `entry', which has to be bound for
34207	diary-chinese-anniversary and diary-hebrew-birthday to work.
34208	These function can be used in the sexp part of users' diary files.
34209
342102019-06-15  Lars Ingebrigtsen  <larsi@gnus.org>
34211
34212	Suppress warning about prefixless date variable in calendar
34213
34214	* lisp/calendar/lunar.el (date):
34215	* lisp/calendar/cal-persia.el (date):
34216	* lisp/calendar/cal-mayan.el (date):
34217	* lisp/calendar/cal-julian.el (date):
34218	* lisp/calendar/cal-iso.el (date):
34219	* lisp/calendar/cal-islam.el (date):
34220	* lisp/calendar/cal-hebrew.el (date):
34221	* lisp/calendar/cal-french.el (date):
34222	* lisp/calendar/cal-coptic.el (date):
34223	* lisp/calendar/cal-china.el (date):
34224	* lisp/calendar/cal-bahai.el (date): Suppress warning about this
34225	prefix-less dynamic variable, because it's part of the documented
34226	calling convention used in the sexp part of users' diary files.
34227
342282019-06-15  Wilson Snyder  <wsnyder@wsnyder.org>
34229
34230	Clean up verilog-mode.el documentation examples to match behavior.
34231
34232	* lisp/progmodes/verilog-mode.el (verilog-auto, verilog-auto-arg)
34233	(verilog-auto-ascii-enum, verilog-auto-inout)
34234	(verilog-auto-inout-comp, verilog-auto-inout-in)
34235	(verilog-auto-inout-modport, verilog-auto-inout-module)
34236	(verilog-auto-inout-param, verilog-auto-input)
34237	(verilog-auto-insert-lisp, verilog-auto-inst)
34238	(verilog-auto-inst-param, verilog-auto-inst-param-value)
34239	(verilog-auto-output, verilog-auto-output-every, verilog-auto-reg)
34240	(verilog-auto-reg-input, verilog-auto-reset, verilog-auto-sense)
34241	(verilog-auto-tieoff, verilog-auto-undef, verilog-auto-unused)
34242	(verilog-auto-wire, verilog-inject-auto, verilog-read-sub-decls):
34243	Clean up documentation examples to match behavior.
34244
342452019-06-15  Michael Albinus  <michael.albinus@gmx.de>
34246
34247	Make url-tramp more robust
34248
34249	* lisp/url/url-tramp.el (url-tramp-convert-url-to-tramp)
34250	(url-tramp-convert-tramp-to-url): Check, that obj is non-nil.
34251
342522019-06-15  Stefan Kangas  <stefankangas@gmail.com>
34253
34254	Remove another variable obsolete since Emacs 22
34255
34256	* lisp/progmodes/cc-langs.el: Remove obsolete variable
34257	c-opt-op-identitier-prefix.
34258	* etc/NEWS: Announce it.  (Bug#36173)
34259
342602019-06-15  Michael Albinus  <michael.albinus@gmx.de>
34261
34262	Let tramp-archive unmount clean
34263
34264	* lisp/net/tramp-archive.el (tramp-archive-cleanup-hash):
34265	Don't check for a proper method.
34266
342672019-06-15  Michael Albinus  <michael.albinus@gmx.de>
34268
34269	Make Tramp compatible to recent progress-reporter-update
34270
34271	* lisp/net/tramp-compat.el (tramp-compat-progress-reporter-update):
34272	New defalias.
34273
34274	* lisp/net/tramp.el (tramp-progress-reporter-update): Add optional SUFFIX.
34275
342762019-06-15  Michael Albinus  <michael.albinus@gmx.de>
34277
34278	Some changes in process output read of Tramp
34279
34280	* lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
34281	Read pending output.
34282
34283	* test/lisp/net/tramp-tests.el (tramp-test31-interrupt-process):
34284	Use a timeout when reading process output.
34285
342862019-06-15  Michael Albinus  <michael.albinus@gmx.de>
34287
34288	Tag remote autorevert tests as unstable
34289
34290	* test/lisp/autorevert-tests.el (auto-revert--timeout):
34291	Derive value from `auto-revert-interval'.
34292	(auto-revert--deftest-remote): Tag it as `:unstable'.
34293	(auto-revert-test05-global-notify, auto-revert-test06-write-file):
34294	Suppress final newline.  Use `auto-revert--timeout'.
34295
342962019-06-15  Stefan Kangas  <stefankangas@gmail.com>
34297
34298	Remove Lucid Emacs support from bookmark.el
34299
34300	* lisp/bookmark.el: Remove Lucid Emacs support.
34301	(Bug#36179)
34302
343032019-06-15  Eli Zaretskii  <eliz@gnu.org>
34304
34305	Improve documentation of hash-code functions
34306
34307	* src/fns.c (Fsxhash_eq, Fsxhash_eql, Fsxhash_equal):
34308	* doc/lispref/hash.texi (Defining Hash): Warn against assuming
34309	that sxhash returns consistent results.
34310
343112019-06-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
34312
34313	* configure.ac: Lower required cairo version to 1.8.0.
34314
343152019-06-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
34316
34317	Remove non-Xdbe double-buffering code on cairo
34318
34319	* src/xterm.c (x_begin_cr_clip, x_update_end) [USE_CAIRO]: Don't do
34320	handcrafted double-buffering with image surface.
34321
343222019-06-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
34323
34324	Rework x_scroll_run on cairo
34325
34326	* src/xterm.c (x_scroll_run) [USE_CAIRO]: Use FRAME_CR_CONTEXT or surface type
34327	for conditions to call XCopyArea rather than FRAME_X_DOUBLE_BUFFERED_P.
34328	Set compositing operator to CAIRO_OPERATOR_SOURCE when copying image.
34329
343302019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34331
34332	Revert "Silence okuri-nasi count-up messaging during compilation"
34333
34334	This takes long enough on some systems that the messages are useful.
34335
34336	This reverts commit 1d2e4d22c922f94d6f4b75a5ead18cbc679c5dfe.
34337
343382019-06-14  Michael Albinus  <michael.albinus@gmx.de>
34339
34340	Fix problem in remote file notification
34341
34342	* lisp/net/tramp-sh.el (tramp-sh-gio-monitor-process-filter)
34343	(tramp-sh-gvfs-monitor-dir-process-filter)
34344	(tramp-sh-inotifywait-process-filter): Do not kill the process.
34345	Let `file-notify-rm-watch' do the job.
34346
34347	* test/lisp/filenotify-tests.el (file-notify-test03-events)
34348	(file-notify-test05-file-validity)
34349	(file-notify-test09-watched-file-in-watched-dir): Do not
34350	special-case remote files.
34351
343522019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34353
34354	Silence okuri-nasi count-up messaging during compilation
34355
34356	* lisp/international/ja-dic-cnv.el (skkdic-set-okuri-nasi): Remove
34357	messaging while compilation to make compilation more regular.
34358
343592019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34360
34361	Revert "srecode/srt-mode compilation fix"
34362
34363	This led to a recursive require.
34364
34365	This reverts commit 9fac0e70e3f5b7d0b12b77cac50078e01f68ee70.
34366
343672019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34368
34369	Fix previous object-print/cl-print-object changes
34370
34371	* lisp/cedet/srecode/insert.el
34372	(srecode-insert-variable-secondname-handler):
34373	* lisp/cedet/semantic/decorate/include.el
34374	(semantic-decoration-fileless-include-describe):
34375	(semantic-decoration-all-include-summary):
34376	* lisp/cedet/semantic/db-find.el (semanticdb-find-log-activity):
34377	* lisp/cedet/semantic/bovine/c.el
34378	(semantic-c-describe-environment):
34379	* lisp/cedet/semantic/analyze/debug.el
34380	(semantic-analyzer-debug-insert-include-summary): Fix previous
34381	object-print/cl-print-object changes that were nonsensical.
34382
343832019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34384
34385	Avoid using registerv-make in senator.el
34386
34387	* lisp/cedet/semantic/senator.el (senator-register): New class.
34388	(register-val-jump-to, register-val-describe)
34389	(register-val-insert): New methods.
34390	(senator-copy-tag-to-register): Use this instead of the deprecated
34391	registerv-make function.
34392
343932019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34394
34395	analyze/debug compilation fix
34396
34397	* lisp/cedet/semantic/analyze/debug.el (pulse): Require to avoid
34398	byte compilation warning.
34399
344002019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34401
34402	semantic/lex-spp compilation fix
34403
34404	* lisp/cedet/semantic/lex-spp.el
34405	(semantic-lex-spp-analyzer-push-tokens-for-symbol): Use new name
34406	for `semantic-lex-spp-anlyzer-do-replace'.
34407
344082019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34409
34410	Use cl-typep instead of obsolete predicate functions throughout cedet
34411
34412	* lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
34413	(srecode-dictionary-add-entries):
34414	(srecode-compound-toString):
34415	(srecode-dump):
34416	* lisp/cedet/srecode/compile.el (srecode-dump-code-list):
34417	* lisp/cedet/semantic/util.el (semantic-something-to-tag-table):
34418	* lisp/cedet/semantic/db-typecache.el (semanticdb-typecache-length):
34419	* lisp/cedet/semantic/db-ref.el (semanticdb-check-references):
34420	* lisp/cedet/semantic/db-find.el
34421	(semanticdb-find-incomplete-cache-entries-p):
34422	(semanticdb-find-translate-path-includes-default):
34423	(semanticdb-find-results-p):
34424	(semanticdb-find-result-with-nil-p):
34425	* lisp/cedet/semantic/analyze/complete.el
34426	(semantic-analyze-possible-completions): Use cl-typep instead of
34427	functions like `srecode-dictionary-compound-value-child-p' etc.
34428
344292019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34430
34431	srecode/srt-mode compilation fix
34432
34433	* lisp/cedet/srecode/srt-mode.el (srecode/insert): Require to
34434	avoid compilation warning about unknown slot.  Remove function
34435	declarations that point to that file.
34436
344372019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34438
34439	srecode/find compilation fix
34440
34441	* lisp/cedet/srecode/find.el (srecode/compile): Require to
34442	avoid compilation warning about unknown slot.  Remove function
34443	declarations that point to that file.
34444
344452019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34446
34447	srecode/dictionary compilation warning fix
34448
34449	* lisp/cedet/srecode/dictionary.el (srecode/fields): Require to
34450	avoid compilation warning about unknown slot.  Remove function
34451	declarations that point to that file.
34452
344532019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34454
34455	srecode/dictionary compilation fix
34456
34457	* lisp/cedet/srecode/ctxt.el (srecode/dictionary): Require to
34458	avoid compilation warning about unknown slot.  Remove function
34459	declarations that point to that file.
34460
344612019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34462
34463	srecode-inserter-prin-example compilation fix
34464
34465	* lisp/cedet/srecode/insert.el (srecode-inserter-prin-example):
34466	Move prin1 example to file that defines the structure it prints.
34467
344682019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34469
34470	Move functions from semantic.el to analyze.el to avoid warnings
34471
34472	* lisp/cedet/semantic.el (semantic-analyze-completion-at-point-function)
34473	(semantic-analyze-notc-completion-at-point-function)
34474	(semantic-analyze-nolongprefix-completion-at-point-function): Add
34475	autoloads for the moved functions.
34476
34477	* lisp/cedet/semantic/analyze.el
34478	(semantic-analyze-completion-at-point-function)
34479	(semantic-analyze-notc-completion-at-point-function)
34480	(semantic-analyze-nolongprefix-completion-at-point-function): Move
34481	here from semantic.el to avoid getting compilation warnings about
34482	unknown slot `bounds'.
34483
344842019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34485
34486	Adjust erc functions after previous erc-pre-send-function change
34487
344882019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34489
34490	Adjust erc functions after previous erc-pre-send-function change
34491
34492	* lisp/erc/erc-goodies.el (noncommands): Use
34493	erc-pre-send-functions instead of the hook.
34494	(erc-send-distinguish-noncommands): Adjust function to new interface.
34495
34496	* lisp/erc/erc-ring.el (ring): Ditto.
34497	(erc-add-to-input-ring): Ditto.
34498
34499	* lisp/erc/erc.el (erc-send-this): Really make obsolete.
34500	(erc-pre-send-functions): Change to a list of functions to allow
34501	erc-goodies and erc-ring to work as before.
34502
345032019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34504
34505	Unobsolete string-to-multibyte
34506
34507	* lisp/subr.el: Un-obsolete string-to-multibyte, because it's a
34508	useful function.  string-to-unibyte has already been un-obsoleted.
34509
345102019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34511
34512	Use CLOS-style accessors in oref/oset
34513
34514	* lisp/cedet/srecode/texi.el (srecode-semantic-handle-:texitag):
34515	* lisp/cedet/srecode/table.el (srecode-mode-table-new):
34516	(srecode-dump):
34517	* lisp/cedet/srecode/srt-mode.el (srecode-parse-this-macro):
34518	(semantic-analyze-possible-completions):
34519	* lisp/cedet/srecode/semantic.el (srecode-compound-toString):
34520	(srecode-semantic-apply-tag-to-dict-default):
34521	* lisp/cedet/srecode/mode.el (srecode-minor-mode-templates-menu):
34522	(srecode-edit):
34523	* lisp/cedet/srecode/insert.el (srecode-insert-method):
34524	(srecode-inserter-apply-state):
34525	(srecode-insert-ask-default):
34526	(srecode-insert-method-ask):
34527	(srecode-insert-method-field):
34528	(srecode-insert-method-helper):
34529	(srecode-parse-input):
34530	(srecode-match-end):
34531	(srecode-insert-include-lookup):
34532	(srecode-insert-method):
34533	* lisp/cedet/srecode/find.el (srecode-template-table-in-project-p):
34534	(srecode-template-get-table):
34535	(srecode-template-get-table-for-binding):
34536	(srecode-all-template-hash):
34537	* lisp/cedet/srecode/extract.el (srecode-inserter-extract):
34538	(srecode-inserter-extract):
34539	* lisp/cedet/srecode/el.el (srecode-semantic-apply-tag-to-dict):
34540	* lisp/cedet/srecode/dictionary.el (initialize-instance):
34541	(srecode-dictionary-add-template-table):
34542	(srecode-compound-toString):
34543	* lisp/cedet/srecode/cpp.el (srecode-semantic-apply-tag-to-dict):
34544	* lisp/cedet/srecode/compile.el (srecode-compile-template-table):
34545	(srecode-dump):
34546	* lisp/cedet/srecode/args.el (srecode-semantic-handle-:project):
34547	* lisp/cedet/semantic/texi.el (semantic-analyze-possible-completions):
34548	* lisp/cedet/semantic/symref/list.el (semantic-symref-results-dump):
34549	(semantic-symref-list-create-macro-on-open-hit):
34550	(semantic-symref-list-rename-open-hits):
34551	(semantic-symref-list-map-open-hits):
34552	* lisp/cedet/semantic/symref/idutils.el
34553	(semantic-symref-perform-search):
34554	(semantic-symref-parse-tool-output-one-line):
34555	* lisp/cedet/semantic/symref/global.el (semantic-symref-perform-search):
34556	(semantic-symref-parse-tool-output-one-line):
34557	* lisp/cedet/semantic/symref/cscope.el (semantic-symref-perform-search):
34558	(semantic-symref-parse-tool-output-one-line):
34559	* lisp/cedet/semantic/mru-bookmark.el
34560	(semantic-mrub-ring-to-assoc-list):
34561	* lisp/cedet/semantic/grammar.el
34562	(semantic-analyze-possible-completions):
34563	* lisp/cedet/semantic/decorate/include.el
34564	(semantic-decoration-include-describe):
34565	* lisp/cedet/semantic/debug.el (semantic-debug-highlight-lexical-token):
34566	(semantic-debug-highlight-rule):
34567	* lisp/cedet/semantic/db-typecache.el
34568	(semanticdb-typecache-for-database):
34569	* lisp/cedet/semantic/complete.el
34570	(semantic-collector-calculate-completions-raw):
34571	* lisp/cedet/semantic/bovine/make.el
34572	(semantic-analyze-possible-completions):
34573	* lisp/cedet/semantic/analyze/refs.el (semantic-analyze-refs-impl):
34574	(semantic-analyze-refs-proto):
34575	* lisp/cedet/semantic/analyze/debug.el
34576	(semantic-analyzer-debug-describe-scope):
34577	* lisp/cedet/semantic/analyze.el (semantic-analyze-interesting-tag):
34578	(semantic-analyze-interesting-tag):
34579	(semantic-analyze-pulse):
34580	* lisp/cedet/ede/util.el (ede-update-version):
34581	* lisp/cedet/ede/shell.el (ede-shell-run-something):
34582	* lisp/cedet/ede/project-am.el (project-am-load-makefile):
34583	(project-rescan):
34584	(project-am-macro):
34585	(ede-buffer-mine):
34586	(project-compile-target-command):
34587	(project-am-package-info):
34588	* lisp/cedet/ede/files.el (ede--project-inode):
34589	(ede-directory-get-open-project):
34590	(ede-directory-get-toplevel-open-project):
34591	(ede-find-subproject-for-directory):
34592	(ede-toplevel-project):
34593	* lisp/cedet/ede/cpp-root.el (initialize-instance):
34594	(project-compile-project):
34595	(project-compile-target):
34596	* lisp/cedet/ede/config.el (ede-config-get-configuration):
34597	(project-debug-target):
34598	(project-run-target):
34599	(project-compile-project):
34600	(ede-preprocessor-map):
34601	(ede-java-classpath):
34602	* lisp/cedet/ede/base.el (ede-normalize-file/directory): Use
34603	CLOS-style oref/oset accessors instead of eieio-style :colon
34604	accessors.  This avoids compilation warnings and is allegedly
34605	faster.
34606
346072019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34608
34609	Obsolete erc-send-pre-hook and add new erc-pre-send-function
34610
34611	* lisp/erc/erc.el (erc-send-pre-hook): Make obsolete.
34612	(erc-send-input): Ditto.
34613	(erc-pre-send-function): New function.
34614	(erc-send-input): Use the new function, and silence byte
34615	compilation warning about the dynamic variable `str' used by the
34616	now-obsolete hook.
34617
346182019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34619
34620	Fix compilation warning in rmailmm
34621
34622	* lisp/mail/rmailmm.el (rmail-mime-insert-bulk): Remove apparently
34623	superfluous call to string-as-unibyte -- the buffer should be
34624	unibyte already at this point.
34625
346262019-06-14  Lars Ingebrigtsen  <larsi@gnus.org>
34627
34628	Avoid compilation warning in byte-run
34629
34630	* lisp/emacs-lisp/byte-run.el (macro-declaration-function): Avoid
34631	compilation warning by not using `symbol-function'.
34632
346332019-06-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34634
34635	* lisp/gnus/message.el: Fix NNTP sending, broken by e51adfbdb7
34636
34637	(message-check-news-header-syntax): `message--check-continuation-headers`
34638	signals an error instead of returning nil on error.
34639
346402019-06-13  Glenn Morris  <rgm@gnu.org>
34641
34642	Stop a tramp test leaving a file behind
34643
34644	* test/lisp/net/tramp-tests.el
34645	(tramp-test10-write-region-file-precious-flag):
34646	Avoid leaving a backup file after we are done.
34647
346482019-06-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34649
34650	* lisp/widget.el (define-widget-keywords): Use `declare`.
34651
34652	* lisp/progmodes/ps-mode.el (ps-mode-octal-region): Simplify.
34653
346542019-06-13  Lars Ingebrigtsen  <larsi@gnus.org>
34655
34656	Fix typo in object-print cleanup
34657
34658	* lisp/cedet/srecode/insert.el
34659	(srecode-insert-variable-secondname-handler): Fix typo in
34660	object-print cleanup.
34661
346622019-06-13  Lars Ingebrigtsen  <larsi@gnus.org>
34663
34664	Remove outdated FIXME
34665
34666	* lisp/emacs-lisp/eieio-core.el (eieio--slot-name-index): Remove
34667	comment about issuing a byte compilation warning about accessing
34668	slots via :initarg -- it was implemented a few months later.
34669
346702019-06-13  Lars Ingebrigtsen  <larsi@gnus.org>
34671
34672	semantic/senator.el byte compilation fix
34673
34674	* lisp/cedet/semantic/senator.el (semantic/analyze): Require to
34675	avoid compilation warnings about unknown slots, and remove
34676	declare-function.
34677
346782019-06-13  Lars Ingebrigtsen  <larsi@gnus.org>
34679
34680	semantic/idle.el compilation warning fix
34681
34682	* lisp/cedet/semantic/idle.el (semantic/analyze): Require to
34683	avoid compilation warnings about unknown slots, and remove
34684	declare-function.
34685
346862019-06-13  Lars Ingebrigtsen  <larsi@gnus.org>
34687
34688	semantic/grammar byte compilation fixes
34689
34690	* lisp/cedet/semantic/grammar.el (semantic/analyze): Require to
34691	avoid compilation warnings about unknown slots, and remove
34692	declare-function.
34693
346942019-06-13  Lars Ingebrigtsen  <larsi@gnus.org>
34695
34696	semantic/chart.el compilation warning fixes
34697
34698	* lisp/cedet/semantic/chart.el (semantic/db-typecache)
34699	(semantic/scope): Require to avoid byte compilation warnings about
34700	undefined slots.  Remove declare-functions from these packages.
34701
347022019-06-13  Lars Ingebrigtsen  <larsi@gnus.org>
34703
34704	Fix some cedet compilation warnings pertaining to semantic/db
34705
34706	* lisp/cedet/ede/config.el (semantic/db)
34707	(ede-preprocessor-map): Ditto.
34708
34709	* lisp/cedet/ede/cpp-root.el (semantic/db): Ditto.
34710
34711	* lisp/cedet/ede/emacs.el (semantic/db): Ditto.
34712
34713	* lisp/cedet/ede/linux.el (semantic/db): Require to avoid warnings
34714	about unknown slot lexical-table, and remove declare-functions
34715	from the now-required semantic/db.
34716
347172019-06-13  Lars Ingebrigtsen  <larsi@gnus.org>
34718
34719	project.el compilation warning fix
34720
34721	* lisp/progmodes/project.el (xref--regexp-to-extended)
34722	(xref--convert-hits): Declare more xref functions to avoid
34723	compilation warnings.
34724
347252019-06-13  Alan Mackenzie  <acm@muc.de>
34726
34727	Depessimize bits of CC Mode for long C macros.
34728
34729	* lisp/progmodes/cc-engine.el (c-end-of-macro): Check for being in a
34730	degenerate zero length "macro", when setting the macro cache.
34731	(c-determine-+ve-limit): Add in a missing goto-char form for when start-pos is
34732	non-nil.
34733	(c-back-over-member-initializers): Add a search limit parameter.
34734
34735	* lisp/progmodes/cc-fonts.el (c-get-fontification-context): Add a search limit
34736	to c-go-up-list-backward.
34737	(c-font-lock-cut-off-declarators): Add a search limit to
34738	c-back-over-member-initializers.
34739
34740	* lisp/progmodes/cc-mode.el (c-before-change-check-unbalanced-strings): Don't
34741	set c-new-END to the end of logical line (which might be a long macro).
34742	(c-after-change-mark-abnormal-strings): Calculate end-hwm in place of the
34743	setting of c-new-END (above).  Use this as a search limit rather than
34744	c-new-END.
34745
347462019-06-13  Stefan Kangas  <stefankangas@gmail.com>
34747
34748	Remove XEmacs support from bookmark.el
34749
34750	* lisp/bookmark.el (bookmark-store): Remove XEmacs compat code
34751	(bug#36189).
34752
347532019-06-13  Lars Ingebrigtsen  <larsi@gnus.org>
34754
34755	Use cl-print-object instead of object-print throughout cedet
34756
34757	* lisp/cedet/semantic/db-find.el (semanticdb-find-log-activity):
34758	Ditto.
34759
34760	* lisp/cedet/semantic/analyze/debug.el
34761	(semantic-analyzer-debug-insert-include-summary): Ditto.
34762
34763	* lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment)
34764	(semantic-c-describe-environment)
34765	(semantic-c-describe-environment): Ditto.
34766
34767	* lisp/cedet/semantic/decorate/include.el
34768	(semantic-decoration-fileless-include-describe): Ditto.
34769	(semantic-decoration-all-include-summary): Ditto.
34770
34771	* lisp/cedet/srecode/insert.el
34772	(srecode-insert-variable-secondname-handler): Use cl-print-object
34773	instead of object-print.
34774
347752019-06-13  Lars Ingebrigtsen  <larsi@gnus.org>
34776
34777	erc-dcc.el minor clean-ups
34778
34779	* lisp/erc/erc-dcc.el: Remove outdated comments.
34780	(erc-dcc-get-file): Remove XEmacs compat code.
34781
347822019-06-13  Lars Ingebrigtsen  <larsi@gnus.org>
34783
34784	Fix erc-dcc server-close code and fix compilation warning
34785
34786	* lisp/erc/erc-dcc.el (erc-dcc-get-filter): We receive unibyte
34787	data, so no need to convert to unibyte.
34788	(erc-dcc-send-filter): Kill the process before killing the buffer
34789	so that we're not queried about killing the process.
34790
347912019-06-13  Lars Ingebrigtsen  <larsi@gnus.org>
34792
34793	Make erc-dcc-server work again by making synchronous
34794
34795	* lisp/erc/erc-dcc.el (erc-dcc-server): :server and :nowait can't
34796	be mixed, so remove the :nowait.
34797
347982019-06-13  Pip Cet  <pipcet@gmail.com>
34799
34800	Escape newlines when printing functions in timer list
34801
34802	* lisp/emacs-lisp/timer-list.el (list-timers): Bind
34803	`print-escape-newlines' to avoid newlines in printed
34804	representation (bug#36187).
34805
348062019-06-13  Lars Ingebrigtsen  <larsi@gnus.org>
34807
34808	Compilation fix for previous change
34809
348102019-06-13  Lars Ingebrigtsen  <larsi@gnus.org>
34811
34812	Compilation warning fix for disass.el
34813
34814	* lisp/emacs-lisp/disass.el (disassemble-1): Remove a
34815	string-as-unibyte that probably doesn't do anything, because the
34816	string in question should be unibyte anyway.  If the assert fails,
34817	revert the patch.
34818
348192019-06-13  Alan Mackenzie  <acm@muc.de>
34820
34821	CC Mode: replace an erroneous re-search-forward with search-forward
34822
34823	Move two declarations to a more suitable point in the cc-engine.el.
34824
34825	* lisp/progmodes/cc-engine.el (c-after-change-unmark-raw-strings): Change an
34826	re-search-forward to search-forward.
34827	(c-semi-lit-near-cache, c-semi-near-cache-limit): Move the declarations.
34828
348292019-06-13  Eli Zaretskii  <eliz@gnu.org>
34830
34831	Fix display of Hebrew text with precomposed characters
34832
34833	* lisp/language/hebrew.el (base): Include precomposed
34834	Hebrew characters from the Alphabetic Presentation Forms in
34835	the composition patterns.  (Bug#36171)
34836
348372019-06-13  Eli Zaretskii  <eliz@gnu.org>
34838
34839	Fix text shaping of precomposed characters with HarfBuzz
34840
34841	* src/hbfont.c (hbfont_shape): Fix setting TO of lglyph for
34842	the case when Lisp shape-gstring function performed some
34843	compositions by itself.  This happens with hebrew.el.  See
34844	https://lists.freedesktop.org/archives/harfbuzz/2019-June/007396.html
34845	for the details of the problem this solves.
34846
348472019-06-13  Alan Mackenzie  <acm@muc.de>
34848
34849	Move declaration of c-syntax-table-hwm to avoid compiler warnings.
34850
34851	This variable was declared after an invocation of a defsubst which used it,
34852	the defsubst being in another file.
34853
34854	* lisp/progmodes/cc-mode.el (c-syntax-table-hwm): Move the declaration to earlier
34855	in the file.
34856
348572019-06-12  Glenn Morris  <rgm@gnu.org>
34858
34859	Allow for line breaks in a bytecomp test
34860
34861	* test/lisp/emacs-lisp/bytecomp-tests.el (test-suppression):
34862	Warnings from the byte compiler may be filled.
34863
348642019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34865
34866	Avoid string-make-multibyte in ps-mode.el
34867
34868	* lisp/progmodes/ps-mode.el (ps-mode-octal-region): Avoid usage of
34869	string-make-multibyte, but work in both unibyte and multibyte buffers.
34870
348712019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34872
34873	Add more ps-mode octal tests
34874
34875	* test/lisp/progmodes/ps-mode-tests.el
34876	(ps-mode-test-octal-region-multibyte): New test.
34877
348782019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34879
34880	Revert previous ps-mode.el change
34881
34882	* lisp/progmodes/ps-mode.el (ps-mode-octal-region): Revert
34883	previous change because the `string-make-unibyte' insertion was
34884	the previous single change (in 2013) to this file, so it must have
34885	some subtle meaning or other.
34886
348872019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34888
34889	Add ps-mode-tests.el and remove a compilation warning
34890
34891	* lisp/progmodes/ps-mode.el (ps-mode-octal-region): Remove a
34892	string-make-unibyte that apparently had no effect here.
34893	* test/lisp/progmodes/ps-mode-tests.el: New file.
34894
348952019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34896
34897	Suppress warnings in tildify.el
34898
34899	* lisp/textmodes/tildify.el (tildify--deprecated-ignore-evironments):
34900	(tildify-tildify, tildify-mode): Suppress warnings about obsolete
34901	internal function `tildify--pick-alist-entry'.  Apparently these
34902	semi-deprecated functions rely on each other.
34903
349042019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34905
34906	Add comment to clarify the use of `str'
34907
349082019-06-12  Glenn Morris  <rgm@gnu.org>
34909
34910	Revert "Compilation warning fix for byte-run.el"
34911
34912	* lisp/emacs-lisp/byte-run.el (macro-declaration-function):
34913	Revert change that causes a bootstrap failure.
34914
349152019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34916
34917	Fix compilation warnings in rfc2104
34918
34919	* lisp/net/rfc2104.el (rfc2104-hash): Remove superflous calls to
34920	string-make-unibyte and avoid two compilation warnings.
34921
349222019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34923
34924	New file rfc2104-tests.el
34925
34926	* test/lisp/net/rfc2104-tests.el: New file to test rfc2104 hashes.
34927
349282019-06-12  Glenn Morris  <rgm@gnu.org>
34929
34930	Give more information in a bytecomp test failure
34931
34932	* test/lisp/emacs-lisp/bytecomp-tests.el (test-suppression):
34933	More informative failure messages.
34934
349352019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34936
34937	Fix compilation warning in qp.el
34938
34939	* lisp/mail/qp.el (quoted-printable-encode-region): No need to
34940	convert the regexp to multibyte before searching.
34941
349422019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34943
34944	Fix warning about obsolete func calling obsolete func in etags.el
34945
34946	* lisp/progmodes/etags.el (find-tag-other-frame): Don't give a
34947	warning about an obsolete function calling another obsolete function.
34948
349492019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34950
34951	Compilation warning fix in feedmail.el
34952
34953	* lisp/mail/feedmail.el (feedmail-scroll-buffer): Remove XEmacs
34954	compat code (that gave a compilation warning).
34955
349562019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34957
34958	Remove XEmacs compat code from mml.el that gave a compilation warning
34959
34960	* lisp/gnus/mml.el (mml-mode): Remove XEmacs compat code
34961
349622019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34963
34964	message.el byte compilation warning fix
34965
34966	* lisp/gnus/message.el (message-inhibit-body-encoding): Move
34967	earlier to avoid compilation warning.
34968
349692019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34970
34971	Compilation warning fix for byte-run.el
34972
34973	* lisp/emacs-lisp/byte-run.el (macro-declaration-function):
34974	Suppress warning about obsolete function used by obsolete variable.
34975
349762019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34977
34978	todo-mode.el compilation warning fix
34979
34980	* lisp/calendar/todo-mode.el (hl-line-highlight): Declare to avoid
34981	compilation warning.
34982
349832019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34984
34985	Touch ups to the XEmacs deletion patch for idlw-shell.el
34986
34987	* lisp/progmodes/idlw-shell.el (idlwave-xemacs-hack-mouse-track):
34988	Fix up previous obsoletion.
34989
349902019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
34991
34992	Remove XEmacs support from idlw-shell.el
34993
34994	* lisp/progmodes/idlw-shell.el (idlwave-shell-make-temp-file)
34995	(idlwave-shell-mouse-examine)
34996	(idlwave-xemacs-hack-mouse-track, idlwave-display-buffer)
34997	(idlwave-shell-debug-line-map)
34998	(idlwave-shell-make-new-bp-overlay, idlwave-shell-mode-map):
34999	Remove XEmacs support.
35000
350012019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
35002
35003	Remove XEmacs support from ido.el
35004
35005	* lisp/ido.el (ido-active, ido-completion-help)
35006	(ido-minibuffer-setup): Remove XEmacs support.
35007
350082019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
35009
35010	Remove compat code for XEmacs and pre-Emacs 20 Emacs in pcomplete.el
35011
35012	* lisp/pcomplete.el (pcomplete-event-matches-key-specifier-p)
35013	(pcomplete-read-event, pcomplete-show-completions): Remove XEmacs
35014	support and mark now-trivial defaliases as obsolete.
35015
350162019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
35017
35018	Remove XEmacs support from dig.el
35019
35020	* lisp/net/dig.el (dig-mode): Remove XEmacs support.
35021
350222019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
35023
35024	Remove XEmacs support from goto-addr.el
35025
35026	* lisp/net/goto-addr.el (goto-address-highlight-keymap): Remove
35027	XEmacs support.
35028
350292019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
35030
35031	Remove XEmacs support from dns.el
35032
35033	* lisp/net/dns.el (dns-read-string-name, dns-write, dns-read)
35034	(dns-make-network-process, dns-query): Remove XEmacs support.
35035
350362019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
35037
35038	Remove XEmacs compat code from tempo.el
35039
35040	* lisp/tempo.el (tempo-insert-template): Remove XEmacs compat code.
35041
350422019-06-12  Alan Mackenzie  <acm@muc.de>
35043
35044	CC Mode: Add a workaround for syntax-ppss ignoring syntax-table prop changes
35045
35046	* lisp/progmodes/cc-engine.el (c-truncate-lit-pos-cache): Maintain the new
35047	variable c-syntax-table-hwm after buffer changes.
35048
35049	* lisp/progmodes/cc-mode.el (c-syntax-table-hwm): New variable.
35050	(c-before-change): Set c-syntax-table-hwm to "infinity".
35051	(c-after-change): Call syntax-ppss-flush-cache, just before a font locking is
35052	due to take place.
35053
350542019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
35055
35056	Restore image scaling support when there's no native image scaling
35057
35058	* lisp/net/shr.el (shr--image-type): New function.
35059	(shr-rescale-image): Use it to allow image scaling on Emacsen with
35060	ImageMagick support that does not have native image scaling support.
35061
350622019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
35063
35064	Rewrite the kmacro register function to avoid using obsolete functions
35065
35066	* lisp/kmacro.el (kmacro-register): New struct to replace the
35067	general registerv struct.
35068	(register-val-jump-to, register-val-describe)
35069	(register-val-insert): New methods to implement the register
35070	interface.
35071	(kmacro-to-register): Use the kmacro-register struct.
35072
350732019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
35074
35075	(beginning-of-defun-raw): Suppress warning about syntax-begin-function
35076
35077	* lisp/emacs-lisp/lisp.el (beginning-of-defun-raw):
35078	font-lock-compile-keywords also suppresses warnings about the
35079	obsolete syntax-begin-function variable, so suppress the only
35080	other use not in syntax.el.
35081
350822019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
35083
35084	Suppress warning about pi not having a prefix
35085
35086	* lisp/emacs-lisp/float-sup.el (pi): Suppress warning about this
35087	obsolete variable not having a prefix.
35088
350892019-06-12  Richard Copley  <rcopley@gmail.com>
35090
35091	* doc/lispref/text.texi (Base 64): Fix typos.
35092
350932019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
35094
35095	Suppress warning about obsolete function custom-show
35096
35097	* lisp/cus-edit.el (custom-variable-value-create): Suppress
35098	warning about obsolete function custom-show.  The widget this
35099	supports has been obsolete since Emacs 24, but we should perhaps
35100	be very conservative about removing widget types, so suppress the
35101	warning instead of removing the widget type.
35102
351032019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
35104
35105	Suppress warning in display-completion-list about itself
35106
35107	* lisp/minibuffer.el (display-completion-list):
35108	`display-completion-list' calls itself with the old, obsolete
35109	callargs, so suppress this warning.
35110
351112019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
35112
35113	Suppress interactive-only warnings in epa*.el
35114
35115	* lisp/epa-mail.el (epa-mail-decrypt, epa-mail-verify)
35116	(epa-mail-sign, epa-mail-encrypt): Ditto.
35117
35118	* lisp/epa.el (epa-verify-cleartext-in-region): Suppress warnings
35119	about calling interactive-only functions, because these are
35120	interactive-only thin wrappers around those functions.
35121
351222019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
35123
35124	ehelp.el: Suppress warning
35125
35126	* lisp/ehelp.el (electric-help-execute-extended): Suppress warning
35127	about `execute-extended-command' only being interactive, because
35128	we're still using it interactively, but via a wrapper.
35129
351302019-06-12  Lars Ingebrigtsen  <larsi@gnus.org>
35131
35132	Add the new macro with-suppressed-warnings
35133
35134	* lisp/emacs-lisp/byte-run.el (with-suppressed-warnings): New macro.
35135
35136	* doc/lispref/compile.texi (Compiler Errors): Document
35137	with-suppressed-warnings and deemphasise with-no-warnings
35138	slightly.
35139
35140	* lisp/emacs-lisp/bytecomp.el (byte-compile--suppressed-warnings):
35141	New internal variable.
35142	(byte-compile-warning-enabled-p): Heed
35143	byte-compile--suppressed-warnings, bound via with-suppressed-warnings.
35144	(byte-compile-initial-macro-environment): Provide a macro
35145	expansion of with-suppressed-warnings.
35146	(byte-compile-file-form-with-suppressed-warnings): New byte hunk
35147	handler for the suppressed symbol machinery.
35148	(byte-compile-suppressed-warnings): Ditto for the byteop.
35149	(byte-compile-file-form-defmumble): Ditto.
35150	(byte-compile-form, byte-compile-normal-call)
35151	(byte-compile-normal-call, byte-compile-variable-ref)
35152	(byte-compile-set-default, byte-compile-variable-set)
35153	(byte-compile-function-form, byte-compile-set-default)
35154	(byte-compile-warn-obsolete, byte-compile--declare-var): Pass the
35155	symbol being warned in to byte-compile-warning-enabled-p.
35156
35157	* test/lisp/emacs-lisp/bytecomp-tests.el (test-suppression): New
35158	function.
35159	(bytecomp-test--with-suppressed-warnings): Tests.
35160
351612019-06-11  Roland Winkler  <winkler@gnu.org>
35162
35163	Fix to previous commit
35164
35165	* lisp/find-dired.el (find-dired-sentinel): Check whether
35166	find-dired-refine-function is non-nil.
35167
351682019-06-11  Roland Winkler  <winkler@gnu.org>
35169
35170	Allow refining the *Find* buffer of find-dired. (Bug#29513)
35171
35172	* lisp/find-dired.el (find-dired-refine-function): New user variable.
35173	(find-dired-sentinel): Use it.  Simplify.
35174	(find-dired-sort-by-filename): New function.
35175
351762019-06-11  Mattias Engdegård  <mattiase@acm.org>
35177
35178	Keep auto-revert-mode working when changing buffer file name (bug#36159)
35179
35180	* lisp/autorevert.el (after-set-visited-file-name-hook):
35181	Add unconditionally.
35182	(global-auto-revert-mode): Don't use
35183	`after-set-visited-file-name-hook' here.
35184	(auto-revert-set-visited-file-name): Rename from
35185	`auto-revert--global-set-visited-file-name' and generalise.
35186	* test/lisp/autorevert-tests.el (auto-revert-test06-write-file): New.
35187
351882019-06-11  Michael Albinus  <michael.albinus@gmx.de>
35189
35190	Minor fixes on tramp-tests.el for w32
35191
35192	* test/lisp/net/tramp-tests.el (tramp-test32-shell-command):
35193	Ignore absence of tput.
35194	(tramp-test43-asynchronous-requests): Don't start watchdog on w32.
35195
351962019-06-11  Glenn Morris  <rgm@gnu.org>
35197
35198	Merge from origin/emacs-26
35199
35200	5ca093d (origin/emacs-26) Fix doc of 'display-buffer-in-previous-wind...
35201	add2cac lisp/*.el: Minor docstring fixes
35202
352032019-06-11  Glenn Morris  <rgm@gnu.org>
35204
35205	Merge from origin/emacs-26
35206
35207	758e9a8 Revert "Don't mark main_thread (Bug#36155)"
35208	1877b7b Don't mark main_thread (Bug#36155)
35209	4904fb3 More quotation fixes (Bug#35885)
35210	4cc4b5d ; * src/keyboard.c (tool_bar_items): Fix a typo.  (Bug#36143)
35211	b58ecaf Minor copyedits in efaq-w32
35212	48422af Tiny improvement of documentation of major mode conventions
35213	25d44d2 * nt/addpm.c (main): Fix buffer overflow
35214
352152019-06-11  Pip Cet  <pipcet@gmail.com>
35216
35217	Fix list-processes typo with thread-name
35218
35219	* lisp/simple.el (list-processes--refresh):
35220	Don’t assume thread-name succeeds (Bug#36163).
35221
352222019-06-11  Eli Zaretskii  <eliz@gnu.org>
35223
35224	Fix shaping of Arabic test when the region is extended
35225
35226	* src/xdisp.c (compute_stop_pos): Set the limit for searching
35227	for changes in text properties such that the limit is never in
35228	the middle of composable text.  (Bug#28312)
35229
352302019-06-11  Philipp Stephani  <phst@google.com>
35231
35232	Add missing indentation declaration to a few macros.
35233
35234	* lisp/window.el (with-temp-buffer-window)
35235	(with-current-buffer-window, with-displayed-buffer-window):
35236	Add missing indentation declaration
35237
352382019-06-11  Pip Cet  <pipcet@gmail.com>
35239
35240	Fix mouse cursor movement in 'select-frame-set-input-focus' (Bug#36165)
35241
35242	* lisp/frame.el (select-frame-set-input-focus): With
35243	'mouse-autoselect-window' use 'set-mouse-pixel-position' to
35244	avoid selecting another window manager window (Bug#36165).
35245
352462019-06-10  Noam Postavsky  <npostavs@gmail.com>
35247
35248	Don't keep warning about unescaped literals (Bug#36068)
35249
35250	* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Restore lost
35251	let-binding of lread--unescaped-character-literals, so that unescaped
35252	literals warning will only apply to the form just read.
35253	* test/lisp/emacs-lisp/bytecomp-tests.el
35254	(bytecomp-tests--unescaped-char-literals): Expand test to check that
35255	we don't keep warning about old unescaped literals.
35256
352572019-06-10  Michael Albinus  <michael.albinus@gmx.de>
35258
35259	Make tramp-test43-asynchronous-requests working, again
35260
35261	* test/lisp/net/tramp-tests.el (tramp-list-tramp-buffers):
35262	Declare `tramp-list-tramp-buffers'.
35263	(tramp--test-ignore-make-symbolic-link-error)
35264	(tramp--test-ignore-add-name-to-file-error): Improve declaration.
35265	(tramp--test-with-proper-process-name-and-buffer): New macro.
35266	(tramp-test43-asynchronous-requests): Use the macro for timer,
35267	process filter and process sentinel.  Comment the remote file
35268	operation in the timer.  Remove further async events.  Accept
35269	output from all processes.
35270
352712019-06-10  Michael Albinus  <michael.albinus@gmx.de>
35272
35273	Fix quoting problem in Tramp on w32 systems
35274
35275	* lisp/net/tramp-adb.el (tramp-adb-connection-local-default-profile):
35276	* lisp/net/tramp-integration.el (tramp-connection-local-default-profile):
35277	Revert patch from 2019-05-24.  It is fixed differently.
35278
35279	* lisp/net/tramp.el (tramp-encoding-shell):
35280	(tramp-encoding-command-switch)
35281	(tramp-encoding-command-interactive, )
35282	(tramp-unquote-shell-quote-argument): Suppress `shell-file-name'.
35283	(tramp-set-file-uid-gid):
35284	* lisp/net/tramp-sh.el (tramp-find-inline-compress)
35285	(tramp-make-copy-program-file-name):
35286	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory):
35287	Use `tramp-unquote-shell-quote-argument'.
35288
352892019-06-10  Mattias Engdegård  <mattiase@acm.org>
35290
35291	Fix copy-paste error in autorevert-test
35292
35293	* test/lisp/autorevert-tests.el: Use correct name to define a remote test.
35294
352952019-06-09  Juanma Barranquero  <lekktu@gmail.com>
35296
35297	* src/editfns.c (Fngettext): Fix typos in docstring.
35298
352992019-06-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
35300
35301	Avoid empty menu bar on Xaw with cairo
35302
35303	* lwlib/lwlib-utils.c (crxft_font_open_name) [USE_CAIRO]: Return NULL if
35304	font extents are bogus.
35305
353062019-06-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
35307
35308	Document exporting/printing text with X core fonts to outline images on cairo
35309
35310	* src/xfns.c (Fx_export_frames) [USE_CAIRO]:
35311	(Fx_print_frames_dialog) [USE_CAIRO && USE_GTK]: Add notes on x font backend.
35312
353132019-06-09  Dmitry Gutov  <dgutov@yandex.ru>
35314
35315	Omit the misplaced and unnecessary shyness qualifier
35316
35317	* lisp/progmodes/ruby-mode.el (ruby-find-library-file):
35318	Omit the misplaced and unnecessary shyness qualifier.
35319	Suggested by Mattias Engdegård <mattiase@acm.org>.
35320
353212019-06-09  Dmitry Gutov  <dgutov@yandex.ru>
35322
35323	Unbreak saving xref--original-window, etc
35324
35325	* lisp/progmodes/xref.el (xref--show-xref-buffer)
35326	(xref--show-defs-buffer-at-bottom): Move major mode calls earlier.
35327	So that local variable values are not lost.
35328
353292019-06-09  Stefan Kangas  <stefankangas@gmail.com>
35330
35331	Add tests for mail/uudecode.el
35332
35333	* lisp/mail/uudecode.el: Remove redundant :group usage.
35334	* test/lisp/mail/uudecode-resources/uudecoded.txt,
35335	test/lisp/mail/uudecode-resources/uuencoded.txt,
35336	test/lisp/mail/uudecode-tests.el: New files.
35337
353382019-06-09  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
35339
35340	Fig grammar of count-lines-page
35341
35342	* lisp/textmodes/page.el (count-lines-page):
35343	Say "Page has 1 line", not "Page has 1 lines" (Bug#35981).
35344
353452019-06-09  Stefan Kangas  <stefankangas@gmail.com>
35346
35347	Make bookmark-old-default-file variable obsolete
35348
35349	* lisp/bookmark.el (bookmark-old-default-file):
35350	Redefine as obsolete variable alias for 'bookmark-default-file'.
35351	(bookmark-maybe-load-default-file): Don't try to rename file
35352	'bookmark-old-default-file' (~/.emacs-bkmrks) to new name (Bug#35940).
35353
353542019-06-09  Stefan Kangas  <stefankangas@gmail.com>
35355
35356	Make bookmark-maybe-message obsolete (Bug#35918)
35357
35358	* lisp/bookmark.el (bookmark-maybe-message):
35359	Redefine as obsolete function alias for 'message'.
35360	(bookmark-write-file): Use a progress reporter.
35361	(bookmark-load-file): Use a progress reporter.
35362
353632019-06-09  Stefan Kangas  <stefankangas@gmail.com>
35364
35365	Make `bookmark-file' variable obsolete
35366
35367	* lisp/bookmark.el (bookmark-file): Redefine as obsolete variable
35368	alias for `bookmark-default-file'.  (Bug#35917)
35369
353702019-06-09  Glenn Morris  <rgm@gnu.org>
35371
35372	* make-dist: Doc fix for --help re --snapshot (since 201612 change).
35373
353742019-06-09  Stefan Kangas  <stefankangas@gmail.com>
35375
35376	Remove interactive spec from bookmark-set-internal (bug#36121)
35377
35378	* lisp/bookmark.el (bookmark-set-internal): Remove interactive spec.
35379
353802019-06-09  Stefan Kangas  <stefankangas@gmail.com>
35381
35382	Pacify compiler in paragraphs.el after lexical-binding
35383
35384	* lisp/textmodes/paragraphs.el: Pacify byte compiler.
35385
353862019-06-09  Stefan Kangas  <stefankangas@gmail.com>
35387
35388	Use lexical-binding in password-cache.el and add tests
35389
35390	* lisp/password-cache.el: Use lexical-binding.
35391	* test/lisp/password-cache-tests.el: New file.
35392
353932019-06-09  Paul Eggert  <eggert@cs.ucla.edu>
35394
35395	* src/fns.c (cmpfn_eql): Simplify.
35396
353972019-06-09  Alex Branham  <alex.branham@gmail.com>
35398
35399	Use lexical binding for ediff
35400
35401	* lisp/vc/ediff-diff.el:
35402	* lisp/vc/ediff-help.el:
35403	* lisp/vc/ediff-hook.el:
35404	* lisp/vc/ediff-init.el:
35405	* lisp/vc/ediff-merg.el:
35406	* lisp/vc/ediff-vers.el:
35407	* lisp/vc/ediff-wind.el:
35408	* lisp/vc/ediff-mult.el:
35409	* lisp/vc/ediff-ptch.el:
35410	* lisp/vc/ediff.el: Use lexical binding.
35411	(ediff-version): Increase.
35412	(ediff-date): Remove.
35413
354142019-06-09  Dmitry Gutov  <dgutov@yandex.ru>
35415
35416	Rename xref--pop-to-location to xref-pop-to-location
35417
35418	* lisp/progmodes/xref.el (xref-pop-to-location):
35419	Rename from xref-pop-to-location.  So that third-party
35420	xref-show-definitions-function implementations can use it safely
35421	(bug#36144).  Update all callers.
35422
354232019-06-09  Dmitry Gutov  <dgutov@yandex.ru>
35424
35425	Add a built-in alternative for xref-show-definitions-function
35426
35427	* lisp/progmodes/xref.el (xref--transient-buffer-mode-map):
35428	New variable.
35429	(xref--transient-buffer-mode): New major mode.
35430	(xref--button-map): Remove the RET binding (it was unnecessary in
35431	the first place).
35432	(xref--show-common-initialize):
35433	Extract from xref--show-xref-buffer.
35434	(xref--show-defs-buffer-at-bottom): New function.
35435
354362019-06-09  Stefan Kangas  <stefankangas@gmail.com>
35437
35438	Fix TODO to convert defvar with leading '*' to defcustom
35439
35440	* etc/TODO: Remove done TODO to remove '*' from defvar.
35441	* doc/misc/gnus.texi: Remove leading '*' from defvar example.
35442	* lisp/kermit.el (kermit-esc-char): Convert to defcustom.
35443	* lisp/desktop.el (desktop-header):
35444	* lisp/obsolete/cc-compat.el (c-indent-level)
35445	(c-brace-imaginary-offset, c-brace-offset, c-argdecl-indent)
35446	(c-label-offset, c-continued-statement-offset)
35447	(c-continued-brace-offset): Remove leading '*' from docstring.
35448	* lisp/progmodes/dcl-mode.el: Remove leading '*' from docstring in
35449	comment.
35450	* test/manual/cedet/tests/test.el: Add comment asking if example of
35451	defvar with leading '*' should be removed.
35452	(Bug#35994)  (The previous commit is also for the same bug.)
35453
354542019-06-09  Stefan Kangas  <stefankangas@gmail.com>
35455
35456	Fix TODO to remove leading '*' from defcustom
35457
35458	* etc/TODO: Remove done TODO to remove leading '*' from defcustom
35459	doc-strings.
35460	* lisp/ibuffer.el (ibuffer-inline-columns): Remove leading '*' from
35461	doc-string.
35462
354632019-06-08  Stefan Kangas  <stefankangas@gmail.com>
35464
35465	Mark define-widget-keywords as obsolete
35466
35467	* lisp/widget.el (define-widget-keywords): Mark as obsolete.
35468	(Bug#36065)
35469
354702019-06-08  Stefan Kangas  <stefankangas@gmail.com>
35471
35472	Use lexical-binding in underline.el and add tests
35473
35474	* lisp/textmodes/underline.el: Use lexical-binding.
35475	* test/lisp/textmodes/underline-tests.el: New file.
35476	(Bug#36063)
35477
354782019-06-08  Stefan Kangas  <stefankangas@gmail.com>
35479
35480	Checkdoc fixes in lisp/bookmark.el
35481
35482	* lisp/bookmark.el (bookmark-bmenu-inline-header-height)
35483	(bookmark-bmenu-marks-width, bookmark-map, bookmark-quit-flag)
35484	(bookmark-name-from-full-record, bookmark-set-internal)
35485	(bookmark-insert-annotation, bookmark--jump-via)
35486	(bookmark-bmenu-set-header, bookmark-show-annotation)
35487	(bookmark-bmenu-other-window-with-mouse, bookmark-bmenu-relocate):
35488	Checkdoc docstring fixes.  (Bug#35916)
35489
354902019-06-08  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
35491
35492	Fix int overflow bug in ‘equal’
35493
35494	* src/fns.c (internal_equal):
35495	Fix bug when vector lengths exceed INT_MAX.
35496
354972019-06-08  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
35498
35499	Tune base64 decoding
35500
35501	This improves performance of base64-decode-region by about 7.5% on
35502	my platform, and gets rid of some macros.
35503	* src/fns.c (IS_ASCII, IS_BASE64, IS_BASE64_IGNORABLE)
35504	(READ_QUADRUPLET_BYTE): Remove.
35505	(base64_value_to_char, base64_char_to_value):
35506	Now an array of two arrays.  All uses changed.
35507	(base64url_value_to_char, base64url_char_to_value):
35508	Remove.  All uses changed to the other array.
35509	(base64_char_to_value): Entries are now of type signed char, not
35510	short, since we can assume C99.  Use C99 initializers; this is
35511	clearer and caters to the (theoretical) possibility of systems
35512	that do not use ASCII or do not have 8-bit bytes.  Allow any index
35513	in the range 0..UCHAR_MAX instead of limiting it to 0..127, so
35514	that uses need not check for in-range indexes.  Also record
35515	padding chars.  All uses changed.
35516	(base64_decode_1): Always store number of chars in *NCHARS_RETURN,
35517	for simplicity.  All callers changed.  Speed up the byte-fetching.
35518
355192019-06-08  Paul Eggert  <eggert@cs.ucla.edu>
35520
35521	Fix out-of-source make-dist problems
35522
35523	Problem with jisx2131-filter reported by Phillip Lord in:
35524	https://lists.gnu.org/r/emacs-devel/2019-06/msg00147.html
35525	* admin/charsets/Makefile.in (SED_SCRIPT):
35526	Put it in $(srcdir), which is not necessarily the working directory.
35527	($(SED_SCRIPT)): Rename from jisx2131-filter.  All uses changed.
35528	(clean): Do not remove SED_SCRIPT.
35529	(extraclean): Remove it here instead.
35530	* make-dist (possibly_non_vc_files): Remove src/emacs-module.h.
35531	Although it is portable and could be distributed in the tarball,
35532	it's too much hassle to do that, so let each builder make it.
35533
355342019-06-08  Bernhard Rotter  <bernhard.rotter@gmail.com>
35535
35536	Fix path for current directory in eshell on MS-Windows
35537
35538	On MS-Windows, PATH implicitly includes the current directory.
35539	Do it right for Eshell by adding "./" instead of ".", to
35540	avoid finding .FOO instead of ./FOO.
35541	* lisp/eshell/esh-util.el (eshell-get-path): New function.
35542	* lisp/eshell/em-cmpl.el (eshell-complete-commands-list):
35543	* lisp/eshell/esh-ext.el (eshell-search-path): Use eshell-get-path.
35544
355452019-06-08  Eli Zaretskii  <eliz@gnu.org>
35546
35547	Minor fixes for the last commits
35548
35549	* src/fns.c (Fbase64url_encode_region)
35550	(Fbase64url_encode_string, Fbase64_decode_region)
35551	(Fbase64_decode_string): Fix doc strings.
35552	(base64_decode_1): Minor stylistic code changes.
35553
35554	* doc/lispref/text.texi (Base 64): Fix typos and improve
35555	wording of the last committed text.
35556
355572019-06-08  Pierre Téchoueyres  <pierre.techoueyres@free.fr>
35558
35559	Add support for base64url variant of base-64 encoding/decoding
35560
35561	Implement the RFC4648 variant of base64 encoding used by URLs.
35562	* doc/lispref/text.texi (base64url-encode-region,
35563	base64url-encode-string): Document new functions.
35564	(base64-decode-region, base64-decode-string): Document new optional
35565	parameter 'base64url' used to use url variant when decoding data.
35566
35567	* src/fns.c (base64url-encode-region, base64url-encode-region): New
35568	functions to manage url variant.
35569	(base64-decode-region, base64-decode-string): Add optional
35570	parameter to indicate use of url-variant.
35571	(base64_encode_region_1, base64_encode_string_1): Internal functions
35572	with extracted code from 'base64_encode_region' and
35573	'base64_encode_string' and optional parameters to manage padding and
35574	url variant.
35575	(base64-encode-region, base64-encode-string) : Use
35576	base64_encode_region_1 and base64_encode_string_1.
35577	(base64-encode-1): Add parameters to manage padding and url variant.
35578	(base64-decode-1): Add parameter to manage url variant.
35579
35580	* test/src/fns-tests.el (fns-tests--with-region): New helper macro to
35581	test region variant of base64 encode / decode functions.
35582	(fns-tests--string-repeat): Helper function used in base64 tests.
35583	(fns-tests-base64-encode-region, fns-tests-base64-encode-string):
35584	Tests for standard base64 function.
35585	(fns-test-base64url-encode-region,
35586	fns-test-base64url-encode-string): Tests for url variant.
35587	(fns-tests-base64-decode-string): Tests for decoding part.
35588
355892019-06-07  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
35590
35591	Support X core font driver on cairo (Bug#28236)
35592
35593	* configure.ac (HAVE_X_WINDOWS): Add xfont.o to FONT_OBJ if HAVE_CAIRO.
35594
35595	* doc/lispref/frames.texi (Font and Color Parameters): Mention X core font
35596	driver with Cairo drawing.
35597
35598	* src/font.c (syms_of_font) [HAVE_X_WINDOWS && USE_CAIRO]: Call syms_of_xfont.
35599
35600	* src/xfns.c (x_create_tip_frame) [USE_CAIRO]: Register xfont_driver.
35601
35602	* src/xterm.c (x_cr_gc_clip) [USE_CAIRO]: New function extracted from
35603	x_begin_cr_clip.
35604	(x_begin_cr_clip) [USE_CAIRO]: Use it.
35605	(xlib_surface_key, saved_drawable_key) [USE_CAIRO]: New variables.
35606	(x_cr_destroy_xlib_surface, x_try_cr_xlib_drawable)
35607	(x_end_cr_xlib_drawable) [USE_CAIRO]: New functions.
35608	(x_draw_composite_glyph_string_foreground)
35609	(x_draw_glyph_string_foreground) [USE_CAIRO]: Get Xlib surface when drawing
35610	text with X core fonts into bitmap surfaces.  Add fallback code for drawing
35611	into outline surfaces.
35612
356132019-06-07  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
35614
35615	Implement native image rotation and cropping on cairo
35616
35617	* src/dispextern.h (struct image) [USE_CAIRO]:
35618	* src/image.c (free_image, image_clear_image_1)
35619	(image_set_crop, image_set_size, image_set_rotation)
35620	(image_create_x_image_and_pixmap) [USE_CAIRO]: #ifdef out HAVE_XRENDER part.
35621
35622	* src/image.c (cr_create_surface_from_pix_containers) [USE_CAIRO]: Rename
35623	from cr_create_surface_from_pix_containers.  Change arguments to pair of
35624	Emacs_Pix_Container:s.  Move block_input and unblock_input to caller.
35625	(cr_put_image_to_cr_data) [USE_CAIRO]: New function.
35626	(prepare_image_for_display) [USE_CAIRO]: Use it.
35627	(image_set_transform) [USE_CAIRO]: Create dummy solid color pattern equipped
35628	with transformation matrix and set it to img->cr_data.
35629
35630	* src/xterm.c (fringe_bmp) [USE_CAIRO]: Change type to cairo_pattern_t **.
35631	(x_cr_define_fringe_bitmap, x_cr_destroy_fringe_bitmap) [USE_CAIRO]: Create
35632	or destroy cairo pattern.
35633	(x_cr_draw_image) [USE_CAIRO]: Remove arguments image_width and image_height.
35634	Change type of image to cairo pattern.  All callers changed.
35635
35636	* src/gtkutil.c (xg_get_image_for_pixmap) [USE_CAIRO]: Get cairo surface
35637	from img->cr_data, which is of cairo pattern now.
35638
356392019-06-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
35640
35641	Make icalendar-import-buffer not show diary file buffer
35642
35643	* lisp/calendar/diary-lib.el (diary-make-entry): Add
35644	omit-trailing-space parameter.  Add do-not-show parameter to
35645	allow not showing diary file buffer.
35646	* lisp/calendar/icalendar.el (icalendar--add-diary-entry): Remove
35647	workaround to omit trailing space in diary entry.  Have
35648	diary-make-entry not display the diary file buffer.  (Bug#35645)
35649
356502019-06-07  Paul Eggert  <eggert@cs.ucla.edu>
35651
35652	Fix commentary about fixnums and hashes.
35653
356542019-06-07  Paul Eggert  <eggert@cs.ucla.edu>
35655
35656	Fix minor ssize_t / ptrdiff_t confusion
35657
35658	* src/fileio.c (Fcopy_file): This limit is because of ssize_t,
35659	so use TYPE_MAXIMUM (ssize_t) not PTRDIFF_MAX.
35660
356612019-06-07  Paul Eggert  <eggert@cs.ucla.edu>
35662
35663	Use machine pointer width for face hashes
35664
35665	* src/dispextern.h (struct face):
35666	* src/xfaces.c (hash_string_case_insensitive, lface_hash)
35667	(cache_face, lookup_face): Use uintptr_t for face hashes
35668	instead of discarding the upper pointer bits on 64-bit machines.
35669
356702019-06-07  Stefan Monnier  <monnier@iro.umontreal.ca>
35671
35672	* lisp/gnus: Further reduce assumptions about gnus-data format
35673
35674	* lisp/gnus/gnus-registry.el (gnus-registry-fetch-message-id-fast)
35675	(gnus-registry-fetch-simplified-message-subject-fast)
35676	(gnus-registry-fetch-sender-fast, gnus-registry-fetch-recipients-fast)
35677	(gnus-registry--set/remove-mark): Don't hardcode assoc for gnus-data-find-in.
35678
35679	* lisp/gnus/gnus-sum.el (gnus-data-update-list): Don't hardcode `nth 2`
35680	for gnus-data-pos.
35681	(gnus-summary-insert-old-articles, gnus-summary-insert-new-articles)
35682	(gnus-summary-first-article-p): Don't hardcode `car` for `gnus-data-number`.
35683	(gnus-summary-move-article, gnus-summary-expire-articles)
35684	(gnus-summary-delete-article): Don't hardcode assoc for gnus-data-find-in.
35685
35686	* lisp/gnus/spam.el (spam-fetch-article-header): Don't hardcode `nth 3`
35687	for gnus-data-header.
35688
356892019-06-07  Eli Zaretskii  <eliz@gnu.org>
35690
35691	Support text shaping with HarfBuzz
35692
35693	The code to support HarfBuzz was written by these individuals:
35694
35695	  Khaled Hosny <dr.khaled.hosny@gmail.com>
35696	  YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
35697	  Eli Zaretskii <eliz@gnu.org>
35698
35699	* src/xftfont.c (xftfont_list): Call ftfont_list2.
35700	(xftfont_match): Call ftfont_match2.
35701	(xftfont_open) [HAVE_HARFBUZZ]: Set the font driver to
35702	xfthbfont_driver as required.  Reset xftfont_info->hb_font to
35703	NULL.
35704	(xftfont_close) [HAVE_HARFBUZZ]: Dispose of the hb_font object.
35705	(xftfont_shape): Accept an additional argument DIRECTION and
35706	pass it to ftfont_shape.
35707	(xfthbfont_list, xfthbfont_match, xfthbfont_begin_hb_font)
35708	(xfthbfont_end_hb_font) [HAVE_HARFBUZZ]: New functions.
35709	(syms_of_xftfont): New DEFSYM 'xfthb'.
35710	(syms_of_xftfont_for_pdumper) [HAVE_HARFBUZZ]: Initialize
35711	xfthbfont_driver.
35712
35713	* src/xfns.c (Fx_create_frame, x_create_tip_frame)
35714	[HAVE_HARFBUZZ]: Register the HarfBuzz font driver.
35715
35716	* src/w32uniscribe.c (bswap_32) [HAVE_HARFBUZZ]: Define to use
35717	the builtin for GCC 4.3.9 and newer; else use byteswap.h from
35718	Gnulib.
35719	(struct uniscribe_font_info): New member 'scale'.  The member
35720	'cache' is now used both by Uniscribe and HarfBuzz backends.
35721	(uniscribe_open): Set the font backend as required by the font
35722	entity's font_type field.
35723	(uniscribe_close) [HAVE_HARFBUZZ]: Dispose of the hb_font
35724	object.
35725	(uniscribe_shape): Accept an additional argument DIRECTION.
35726	(w32hb_list, w32hb_match, free_cb, w32hb_get_font_table)
35727	(w32hb_get_font, w32hb_encode_char, w32hb_begin_font)
35728	(w32hb_get_variation_glyphs, load_harfbuzz_funcs)
35729	[HAVE_HARFBUZZ]: New functions.
35730	(syms_of_w32uniscribe_for_pdumper): Initialize
35731	harfbuzz_font_driver if loading the requisite functions from
35732	the HarfBuzz DLL succeeded.
35733
35734	* src/w32font.c (syms_of_w32font): New DEFSYM 'harfbuzz'.
35735
35736	* src/w32fns.c (Fx_create_frame, w32_create_tip_frame):
35737	Determine whether we should register the HarfBuzz backend, or
35738	Uniscribe backend, or both for the new frame.
35739
35740	* src/w32common.h (hbfont_init_w32_funcs) [HAVE_HARFBUZZ]: Add
35741	prototype.
35742
35743	* src/macfont.m (lgstring_direction): New enumeration.
35744	(mac_font_shape_1, mac_screen_font_shape, macfont_shape):
35745	Accept an additional argument DIRECTION; all callers changed.
35746
35747	* src/lisp.h (get_unicode_property): Add prototype.
35748
35749	* src/hbfont.c: New file.
35750
35751	* src/ftxfont.c (ftxfont_list): Call ftfont_list2.
35752	(ftxfont_match): Call ftfont_match2.
35753
35754	* src/ftfont.h [HAVE_HARFBUZZ]: Include hb.h and hb-ft.h.
35755	(struct font_info): New member hb_font.
35756
35757	* src/ftfont.c (ftfont_list2, ftfont_list_family): New functions.
35758	(ftfont_open) [HAVE_HARFBUZZ]: Reset ftfont_info->hb_font to
35759	NULL.  Set the font backend to fthbfont_driver when required.
35760	(ftfont_close) [HAVE_HARFBUZZ]: Dispose of ftfont_info->hb_font.
35761	(ftfont_glyph_metrics): New function.
35762	(ftfont_text_extents): Call ftfont_glyph_metrics instead of
35763	FT_Load_Glyph.
35764	(ftfont_shape): Accept an additional argument DIRECTION.
35765	(ftfont_variation_glyphs) [!HAVE_OTF_GET_VARIATION_GLYPHS]:
35766	Support for variation glyphs without FLT.
35767	(fthbfont_begin_hb_font) [HAVE_HARFBUZZ]: New function.
35768	(syms_of_ftfont): New DEFSYM freetypehb.
35769	(syms_of_ftfont_for_pdumper): Initialize fthbfont_driver.
35770
35771	* src/ftcrfont.c (ftcrfont_list): Call ftfont_list2.
35772	(ftcrfont_match): Call ftfont_match2.
35773	(ftcrfont_open) [HAVE_HARFBUZZ]: Set the font backend to
35774	ftcrhbfont_driver as required.  Reset ftcrfont_info->hb_font
35775	to NULL.
35776	(ftcrfont_close) [HAVE_HARFBUZZ]: Discard of
35777	ftcrfont_info->hb_font.
35778	(ftcrfont_shape): Pass DIRECTION to ftfont_shape.
35779	(ftcrhbfont_list, ftcrhbfont_match)
35780	(ftcrhbfont_begin_hb_font, ftcrhbfont_end_hb_font)
35781	[HAVE_HARFBUZZ]: New functions.
35782	(syms_of_ftcrfont): New DEFSYM ftcrhb.
35783	(syms_of_ftcrfont_for_pdumper): Initialize ftcrhbfont_driver.
35784
35785	* src/font.h [HAVE_HARFBUZZ]: Include hb.h.
35786	(struct font_driver): Update comments and function signatures
35787	to reflect the new argument DIRECTION accepted by the 'shape'
35788	method.  New methods 'begin_hb_font' and 'end_hb_font'.
35789	(hbfont_shape, hbfont_combining_capability)
35790	(fthbfont_begin_hb_font) [HAVE_HARFBUZZ]: Add prototypes.
35791
35792	* src/font.c (Ffont_shape_gstring): Accept an additional
35793	argument DIRECTION, and pass it to the font driver's 'shape'
35794	method.
35795	(Ffont_variation_glyphs): Doc fix.
35796	(syms_of_font): New DEFSYMS L2R and R2L.
35797
35798	* src/composite.h (composition_reseat_it): Adjust prototype.
35799
35800	* src/composite.c (autocmp_chars): Accept additional argument
35801	DIRECTION, and pass it to auto-composition-function.  All
35802	callers changed.
35803	(composition_reseat_it): Accept additional argument
35804	BIDI_LEVEL, and use it to determine the DIRECTION argument to
35805	be passed to autocmp_chars.  All callers changed.
35806	(syms_of_composite) <auto-composition-function>: Improve the
35807	doc string; document the meaning of the new argument
35808	DIRECTION.
35809
35810	* src/chartab.c (get_unicode_property): New function,
35811	refactored from the body of get-unicode-property-internal.
35812	(Fget_unicode_property_internal): Call get_unicode_property
35813	after validating the input arguments.
35814
35815	* src/Makefile.in (HARFBUZZ_CFLAGS, HARFBUZZ_LIBS): New macros.
35816	(EMACS_CFLAGS): Use HARFBUZZ_CFLAGS.
35817	(SOME_MACHINE_OBJECTS): Add hbfont.o
35818	(LIBES): Add HARFBUZZ_LIBS.
35819
35820	* lisp/language/tv-util.el (tai-viet-composition-function):
35821	* lisp/language/thai-util.el (thai-composition-function):
35822	* lisp/language/misc-lang.el (arabic-shape-gstring):
35823	* lisp/language/lao-util.el (lao-composition-function):
35824	* lisp/language/japanese.el (compose-gstring-for-variation-glyph):
35825	* lisp/language/hebrew.el (hebrew-shape-gstring):
35826	* lisp/language/ethio-util.el (ethio-composition-function):
35827	* lisp/composite.el (compose-chars-after)
35828	(compose-gstring-for-graphic)
35829	(compose-gstring-for-dotted-circle)
35830	(compose-gstring-for-terminal, auto-compose-chars): All
35831	composition functions that call shapers now accept an
35832	additional argument DIRECTION, either L2R or R2L.
35833
35834	* etc/NEWS: Document the HarfBuzz support.
35835
35836	* etc/HELLO: Add diacritics to Hebrew greetings.
35837
35838	* doc/lispref/frames.texi (Font and Color Parameters):
35839	* doc/emacs/msdos.texi (Windows Fonts): Describe the
35840	'harfbuzz' font backend on MS-Windows and how it is preferred
35841	to 'uniscribe'.
35842
35843	* configure.ac (--wthout-harfbuzz): New option.
35844	(HAVE_HARFBUZZ): New tests.
35845	(FONT_OBJ) [HAVE_HARFBUZZ]: Add hbfont.o
35846	(emacs_config_features): Add HARFBUZZ.
35847
35848	* admin/nt/dist-build/build-dep-zips.py: Add HarfBuzz dependency.
35849
358502019-06-07  Tak Kunihiro  <tkk@misasa.okayama-u.ac.jp>
35851
35852	Make mouse-wheel-scroll-amount consistent among platforms
35853
35854	* lisp/term/ns-win.el (mouse-wheel-scroll-amount): Do not put any
35855	values on mouse-wheel-scroll-amount on ns.
35856
358572019-06-07  Glenn Morris  <rgm@gnu.org>
35858
35859	Merge from origin/emacs-26
35860
35861	9254885 (origin/emacs-26) Resurrect display-line-number-mode in clien...
35862	aecbbd5 * src/fns.c (Fmapconcat): Doc fix.  (Bug#35710)
35863	8e5fc38 Fix typo
35864	ee21b40 * lisp/term/w32-win.el ([noname]): Bind to 'ignore'.  (Bug#36...
35865	f68b33f Fix styling of Unicode codepoints in manuals
35866	ff7ec6f Fix a few uses of quotes in user manual
35867	b67042b More minor copyedits in the Emacs manual
35868	9734b5c Fix minor issues in the Emacs manual
35869	c153250 Try to improve text on atomic windows in Elisp manual
35870	fb314ba Don't recommend insert-before-markers in process filters
35871
358722019-06-07  Glenn Morris  <rgm@gnu.org>
35873
35874	Merge from origin/emacs-26
35875
35876	2860285 Allow macros autoloaded as functions during bytecomp (Bug#36022)
35877
358782019-06-07  Eli Zaretskii  <eliz@gnu.org>
35879
35880	Fix failures of term-tests on MS-Widows
35881
35882	* test/lisp/term-tests.el (term-simple-lines)
35883	(term-carriage-return, term-line-wrap, term-cursor-movement)
35884	(term-scrolling-region, term-set-directory)
35885	(term-line-wrapping-then-motion, term-to-margin): Skip tests
35886	on MS-Windows and MS-DOS.
35887
358882019-06-07  John Shahid  <jvshahid@gmail.com>
35889
35890	Consider line spacing and font height when deriving proc window size
35891
35892	* lisp/window.el (window-adjust-process-window-size): Use
35893	  window-screen-lines instead of window-body-height.
35894	* lisp/term.el (term-mode): Use window-screen-lines to set the initial
35895	  window height.
35896
358972019-06-07  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
35898
35899	Fix image_set_crop yet again
35900
35901	* src/image.c (image_set_crop) [HAVE_NATIVE_TRANSFORMS]: Don't call
35902	compute_image_size, as it is already called from image_set_size.
35903	(image_set_size, image_set_crop) [HAVE_NATIVE_TRANSFORMS]: Use harmless
35904	matrix transformation code also for USE_CAIRO and HAVE_NTGUI cases,
35905	though image_set_transform is not yet implemented on them.
35906
359072019-06-07  Eli Zaretskii  <eliz@gnu.org>
35908
35909	Avoid compiler warning in copy-file-range.c on MS-Windows
35910
35911	* nt/mingw-cfg.site (gl_cv_func_copy_file_range): Set to "yes",
35912	to avoid compiling lib/copy-file-range.c on MS-Windows.
35913
359142019-06-07  Paul Eggert  <eggert@cs.ucla.edu>
35915
35916	Fix recently-introduced image_set_crop typo
35917
35918	* src/image.c (image_set_crop) [!HAVE_NATIVE_TRANSFORMS]:
35919	Don’t call compute_image_size, as it does not exist and its
35920	result is not needed.
35921
359222019-06-07  Paul Eggert  <eggert@cs.ucla.edu>
35923
35924	Use copy_file_range to copy files
35925
35926	The copy_file_range syscall (introduced in Linux kernel
35927	version 4.5) can copy files more efficiently via server-side
35928	copy etc.
35929	* admin/merge-gnulib (GNULIB_MODULES): Add copy-file-range.
35930	* lib/copy-file-range.c, m4/copy-file-range.m4:
35931	New files, copied from Gnulib.
35932	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
35933	* src/fileio.c (Fcopy_file): Try copy_file_range first,
35934	falling back on read+write only if copy_file_range failed or
35935	if the input is empty and so could be a /proc file.
35936
359372019-06-07  Paul Eggert  <eggert@cs.ucla.edu>
35938
35939	Update from Gnulib
35940
35941	This incorporates:
35942	2019-06-04 copy-file-range: new module
35943	2019-05-28 binaty-io: O_BINARY on consoles no longer fails
35944	* doc/misc/texinfo.tex, lib/binary-io.c, lib/binary-io.h:
35945	* lib/unistd.in.h, m4/unistd_h.m4: Copy from Gnulib.
35946	* lib/gnulib.mk.in: Regenerate.
35947
359482019-06-06  Noam Postavsky  <npostavs@gmail.com>
35949
35950	Add "pin" to password-word-equivalents (Bug#35523)
35951
35952	* lisp/international/mule-conf.el (password-word-equivalents): Add "pin".
35953	* test/lisp/comint-tests.el (comint-testsuite-password-strings): Add
35954	test case.
35955
359562019-06-06  Paul Eggert  <eggert@cs.ucla.edu>
35957
35958	Fix overflow issues in image rotation
35959
35960	Also, do some refactoring to simplify code.
35961	* src/dispextern.h (INIT_MATRIX, COPY_MATRIX, MULT_MATRICES): Remove.
35962	* src/image.c (matrix3x3): New type, replacing all uses of 3x3 double.
35963	(matrix3x3_copy, matrix3x3_mult): New functions, replacing
35964	COPY_MATRIX, MULT_MATRICES.  Replace INIT_MATRIX by C initializers.
35965	(image_set_rotation): Use Fmod to avoid undefined behavior on
35966	double-to-int conversion and to reduce bignum rotations correctly.
35967	(image_set_crop): Finish up previous correction, by not re-setting
35968	width and height if compute_image_size has set them.
35969	Prefer shifting right by 1 to dividing by 2 if either will do.
35970
359712019-06-06  Eli Zaretskii  <eliz@gnu.org>
35972
35973	Fix redisplay glitches with RTL composed text
35974
35975	* src/xdisp.c (init_to_row_end): Fail if the first visible
35976	position on the line following ROW is bidi-reordered and could
35977	be composed.  (Bug#35811)
35978
359792019-06-06  Oleh Krehel  <ohwoeowho@gmail.com>
35980
35981	lisp/gnus/message.el (message--send-mail-maybe-partially): Extract
35982
35983	lisp/gnus/message.el (message--check-continuation-headers): Extract
35984
35985	lisp/gnus/message.el (message--fold-long-headers): Add docstring
35986
359872019-06-06  Mark A. Hershberger  <mah@nichework.com>
35988
35989	Restore height and with from that were accidentally removed
35990
35991	See 610fb73ab6d7a22b722f523d6ebc4aa8fa1db7c9
35992	USE_CARIO needs these.
35993
359942019-06-05  Steve Scott  <steve@stevescott.ca>  (tiny change)
35995
35996	Check rcirc-server for auto authentication (Bug#10162)
35997
35998	Since the hostname returned by irc.freenode.net can be something other
35999	than irc.freenode.net, e.g. niven.freenode.net, the entries for
36000	rcirc-authinfo and rcirc-server-alist will not match.
36001	* lisp/net/rcirc.el (rcirc-handler-001): Check rcirc-server (the
36002	hostname connected to) instead of rcirc-server-name (the hostname
36003	returned), this corresponds with what rcirc-authenticate does.
36004	Moreover, if rcirc-auto-authenticate-flag is set, check the
36005	corresponding rcirc-authinfo, regardless of whether the
36006	rcirc-authenticate-before-join must happen.
36007
360082019-06-05  Noam Postavsky  <npostavs@gmail.com>
36009
36010	Keep nxml prolog updated via syntax-propertize
36011
36012	Instead of using after-change-functions.  Also, stop consulting
36013	nxml-prolog-regions during syntax-propertize.  It turns out the
36014	problems fixed by using prolog information are actually due to using
36015	the wrong syntax table during propertizing.  This was fixed in
36016	2019-06-04 "* lisp/emacs-lisp/syntax.el: Use syntax-ppss-table for
36017	syntax-propertize." so consulting the prolog data is no longer needed.
36018	* lisp/nxml/nxml-rap.el (nxml-maybe-rescan-prolog): Remove.
36019	* lisp/nxml/nxml-mode.el (nxml-mode): Stop using it.
36020	(nxml-syntax-propertize): Don't use nxml-prolog-regions, just call
36021	nxml-scan-prolog if needed before delegating to
36022	sgml-syntax-propertize.
36023	* test/lisp/nxml/nxml-mode-tests.el (nxml-mode-edit-prolog): New test.
36024
360252019-06-05  Alan Third  <alan@idiocy.org>
36026
36027	Add native image rotation and cropping
36028
36029	* lisp/image.el (image--get-imagemagick-and-warn): Only fallback to
36030	ImageMagick if native transforms aren't available.
36031	* src/dispextern.h (INIT_MATRIX, COPY_MATRIX, MULT_MATRICES): New
36032	macros for matrix manipulation.
36033	(HAVE_NATIVE_SCALING, HAVE_NATIVE_TRANSFORMS): Rename and change all
36034	relevant locations.
36035	* src/image.c (x_set_image_rotation):
36036	(x_set_transform): New functions.
36037	(x_set_image_size): Use transform matrix for resizing under X and NS.
36038	(x_set_image_crop): New function.
36039	(lookup_image): Use the new transform functions.
36040	(Fimage_scaling_p, Fimage_transforms_p): Rename and update all
36041	callers.
36042	* src/nsimage.m (ns_load_image): Remove rotation code.
36043	(ns_image_set_transform): New function.
36044	([EmacsImage dealloc]): Release the saved transform.
36045	([EmacsImage rotate:]): Remove unneeded method.
36046	([EmacsImage setTransform:]): New method.
36047	* src/nsterm.h (EmacsImage): Add transform property and update method
36048	definitions.
36049	* src/nsterm.m (ns_dumpglyphs_image): Use the transform to draw the
36050	image correctly.
36051	* src/xterm.c (x_composite_image): Use PictOpSrc as we don't care
36052	about alpha values here.
36053	* doc/lispref/display.texi (Image Descriptors): Add :rotation.
36054	(ImageMagick Images): Remove :rotation.
36055
360562019-06-05  Phillip Lord  <phillip.lord@russet.org.uk>
36057
36058	No longer add debug symbols to release build
36059
36060	* admin/nt/dist-build/build-zips.sh: Remove -g3 from release build and
36061	  install with install-strip
36062
360632019-06-05  Juri Linkov  <juri@linkov.net>
36064
36065	* lisp/wid-edit.el (widget-choose): Use display-buffer-in-direction
36066
36067	to display buffer in bottom direction with fit-window-to-buffer.
36068
36069	* lisp/proced.el (proced-with-processes-buffer): Idem.  (Bug#35592)
36070
360712019-06-05  Michael Albinus  <michael.albinus@gmx.de>
36072
36073	* doc/misc/tramp.texi (Obtaining Tramp): Explain version scheme.
36074
36075	(Traces and Profiles): Add `tramp-verbose' to @vindex.
36076
360772019-06-05  Dario Gjorgjevski  <dario.gjorgjevski+git@gmail.com>
36078
36079	Do not use syntax-ppss-table in syntax-propertize when nil (Bug#36095)
36080
36081	* lisp/emacs-lisp/syntax.el (syntax-propertize): Use (syntax-table)
36082	instead of syntax-ppss-table when the latter is nil.
36083
360842019-06-04  Stefan Monnier  <monnier@iro.umontreal.ca>
36085
36086	* lisp/emacs-lisp/syntax.el: Use syntax-ppss-table for syntax-propertize.
36087
36088	`syntax-ppss` uses `syntax-ppss-table` while parsing the buffer as well
36089	as when it calls `syntax-propertize`, but `syntax-propertize` can also
36090	be called directly rather than via `syntax-ppss` so it needs to explicitly
36091	use `syntax-ppss-table` as well in order to avoid using sometimes one
36092	table and sometimes another.
36093
36094	(syntax-ppss-table): Move before new use.
36095	(syntax-propertize): Use it.
36096
360972019-06-04  Paul Eggert  <eggert@cs.ucla.edu>
36098
36099	Remove retired maintainers from comments
36100
36101	* lisp/international/quail.el, lisp/language/ind-util.el:
36102	* lisp/language/indian.el, lisp/mail/smtpmail.el, lisp/mwheel.el:
36103	* lisp/obsolete/longlines.el, lisp/progmodes/idlw-complete-structtag.el:
36104	* lisp/progmodes/idlw-help.el, lisp/progmodes/idlw-shell.el:
36105	* lisp/progmodes/idlw-toolbar.el, lisp/progmodes/idlwave.el:
36106	* lisp/progmodes/simula.el, lisp/ps-print.el, lisp/ps-samp.el:
36107	Remove Maintainer: lines for maintainers who have retired.
36108
361092019-06-04  Stefan Monnier  <monnier@iro.umontreal.ca>
36110
36111	* lisp/emacs-lisp/thunk.el (thunk-delay): Fix memory leak
36112
36113	Get rid of references to the free variables of `body` once the thunk has
36114	been forced (bug#30626).
36115
361162019-06-04  Stefan Monnier  <monnier@iro.umontreal.ca>
36117
36118	* lisp/textmodes/sgml-mode.el (sgml-syntax-propertize-rules): More verbose comments
36119
361202019-06-04  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
36121
36122	Specify the matching chars for JSX open/close parenthesis
36123
36124	* lisp/progmodes/js.el (js-jsx--syntax-propertize-tag): Indicate the
36125	matching parenthesis character (since JSX’s < and > aren’t typical
36126	parenthesis) for the sake of packages like rainbow-delimiters which
36127	need that information.
36128
361292019-06-04  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
36130
36131	Revert "Add extra text property to fix issue with js2-mode integration"
36132
36133	This reverts commit 382a508ed21e4f12ace9f8871818e25235e8f05e.
36134
36135	We ended up deciding against using this in js2-mode.  Instead,
36136	js2-mode may eventually use js-mode’s syntax-propertize-function to
36137	set syntax-table text properties.
36138
361392019-06-04  Paul Eggert  <eggert@cs.ucla.edu>
36140
36141	Update lispref spellfile
36142
36143	* doc/lispref/spellfile: Omit words no longer in the manual.
36144	How is this spellfile used?  Does anybody use it any more?
36145
361462019-06-04  Paul Eggert  <eggert@cs.ucla.edu>
36147
36148	Adjust comments/debug to match C bignum code
36149
36150	* doc/lispintro/emacs-lisp-intro.texi (Digression into C):
36151	Adjust to match current C code.
36152	* lisp/emacs-lisp/ert.el (ert--force-message-log-buffer-truncation):
36153	Simplify.
36154	* src/.gdbinit (Lisp_Object_Printer.to_string): Return
36155	a string that says "make_fixnum", not "make_number".
36156
361572019-06-04  Paul Eggert  <eggert@cs.ucla.edu>
36158
36159	Always allow at least double-precision bignums
36160
36161	Without this fix, Emacs can get into a tight loop reporting
36162	a range error when calculating timestamps.
36163	* doc/lispref/numbers.texi (Integer Basics):
36164	* src/alloc.c (syms_of_alloc): Document this.
36165	* src/bignum.c (make_bignum_bits): Always allow bignums
36166	of at least twice the width of (u)intmax_t.
36167
361682019-06-04  Stefan Monnier  <monnier@iro.umontreal.ca>
36169
36170	* lisp/gnus/message.el (message-send-mail): Tweak last commit
36171
361722019-06-04  Noam Postavsky  <npostavs@gmail.com>
36173
36174	Keep nxml-prolog-end up to date (Bug#18871)
36175
36176	The change on 2016-01-16 "lisp/nxml: Use syntax-tables for comments"
36177	removed the update of nxml-prolog-end, although it already failed to
36178	work correctly after 2013-10-07 "* lisp/nxml/nxml-mode.el: Use
36179	lexical-binding and syntax-propertize."
36180	* lisp/nxml/nxml-rap.el: New function.
36181	* lisp/nxml/nxml-mode.el (nxml-mode): Add it to
36182	after-change-functions.
36183
361842019-06-04  Noam Postavsky  <npostavs@gmail.com>
36185
36186	Don't sgml-syntax-propertize-inside XML prolog (Bug#32823)
36187
36188	* lisp/nxml/nxml-mode.el (nxml-syntax-propertize): New function.
36189	(nxml-mode): Use it as the syntax-propertize-function.
36190	* test/lisp/nxml/nxml-mode-tests.el (nxml-mode-doctype-and-quote-syntax)
36191	(nxml-mode-prolog-comment): New tests.
36192
361932019-06-04  Noam Postavsky  <npostavs@gmail.com>
36194
36195	Don't fontify text outside of SGML/XML tags (Bug#33887)
36196
36197	* lisp/textmodes/sgml-mode.el (sgml-font-lock-syntactic-face): New
36198	function.
36199	(sgml-mode):
36200	* lisp/nxml/nxml-mode.el (nxml-mode): Use it as
36201	font-lock-syntactic-face-function value.
36202
362032019-06-04  Noam Postavsky  <npostavs@gmail.com>
36204
36205	Fix some SGML syntax edge cases (Bug#33887)
36206
36207	* lisp/textmodes/sgml-mode.el (sgml-syntax-propertize-rules): Handle
36208	single and double quotes symmetrically.  Don't skip quoted comment
36209	enders.
36210	* test/lisp/textmodes/sgml-mode-tests.el (sgml-tests--quotes-syntax):
36211	Add more test cases.
36212	(sgml-mode-quote-in-long-text): New test.
36213
362142019-06-04  Michael Albinus  <michael.albinus@gmx.de>
36215
36216	Stronger check for Tramp method
36217
36218	* lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
36219	* lisp/net/tramp-rclone.el (tramp-rclone-maybe-open-connection):
36220	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-maybe-open-connection):
36221	Use `tramp-get-connection-name'.
36222
36223	* lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link):
36224	* lisp/net/tramp-smb.el (tramp-smb-handle-make-symbolic-link):
36225	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-make-symbolic-link):
36226	Don't check remote TARGET.
36227
36228	* lisp/net/tramp.el (tramp-dissect-file-name): Check for proper method.
36229	(tramp-file-name-for-operation): Take only 2nd argument into
36230	account for file name handler.
36231	(tramp-file-name-handler): Suppress checks for `file-remote-p'.
36232
36233	* test/lisp/net/tramp-archive-tests.el
36234	(tramp-archive-test02-file-name-dissect): Suppress check for wrong
36235	method.
36236
36237	* test/lisp/net/tramp-tests.el (tramp--test-instrument-test-case):
36238	Dump *all* Tramp buffers.
36239	(tramp-test02-file-name-dissect)
36240	(tramp-test02-file-name-dissect-simplified)
36241	(tramp-test02-file-name-dissect-separate): Check also wrong method.
36242	(tramp-test03-file-name-defaults): Check, that the respective
36243	Tramp package is loaded.
36244	(tramp-test04-substitute-in-file-name)
36245	(tramp-test05-expand-file-name)
36246	(tramp-test06-directory-file-name, tramp-test44-auto-load):
36247	Suppress check for wrong method.
36248	(tramp-test30-make-process): Remove instrumentation code.
36249	(tramp-test31-interrupt-process, tramp-test36-vc-registered):
36250	Guarantee that connection is established prior starting process.
36251
362522019-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
36253
36254	* src/xterm.c (x_scroll_run) [USE_CAIRO]: Dirty only destination rectangle.
36255
36256	* src/image.c (cr_create_cr_surface_from_image): Add const to variable `key'.
36257
362582019-06-03  Noam Postavsky  <npostavs@gmail.com>
36259
36260	Let untarring (and hence package installation) go faster (Bug#35909)
36261
36262	* lisp/subr.el (progress-reporter-update)
36263	(progress-reporter-force-update, progress-reporter-do-update): Accept
36264	new optional argument, SUFFIX.
36265	* doc/lispref/display.texi (Progress): Document it.
36266	* etc/NEWS: Announce it.
36267	* lisp/tar-mode.el (tar-untar-buffer): Use a progress reporter instead
36268	of calling message.  Suppress message from write-region.  Let-bind
36269	write-region-inhibit-fsync to t.
36270
362712019-06-03  Phillip Lord  <phillip.lord@russet.org.uk>
36272
36273	Update dependencies
36274
36275	* admin/nt/dist-build/build-dep-zips.py: Add harfbuzz as dependency
36276
362772019-06-03  Juri Linkov  <juri@linkov.net>
36278
36279	User-friendly display of error messages at the end of minibuffer
36280
36281	* lisp/simple.el (minibuffer-setup-hook): Add minibuffer-error-initialize.
36282	(minibuffer-error-initialize, minibuffer-error-function): New functions.
36283	(Bug#34939)
36284
362852019-06-03  Juri Linkov  <juri@linkov.net>
36286
36287	* lisp/char-fold.el (char-fold-make-table): New function
36288
36289	with body extracted from INITVALUE of defconst (bug#35689).
36290	Bind search-spaces-regexp to nil (bug#35802).
36291
36292	* test/lisp/char-fold-tests.el: Relocate helpers to file beginning.
36293	(char-fold--test-bug-35802): New test.
36294
362952019-06-03  Stefan Monnier  <monnier@iro.umontreal.ca>
36296
36297	* lisp/gnus/gnus-async.el: Use lexical-binding
36298
36299	Remove redundant :group args.
36300	(gnus-async-post-fetch-function): Make it always be a function.
36301	(gnus-make-async-article-function, gnus-async-prefetch-headers):
36302	Use a closure rather than `(lambda ...)
36303
363042019-06-03  Oleh Krehel  <ohwoeowho@gmail.com>
36305
36306	lisp/gnus/message.el (message-send-mail): Don't wrongly assert on Unicode msg
36307
36308	Using this setting:
36309
36310	    (setq message-send-mail-function 'message-send-mail-with-sendmail)
36311	    (setq sendmail-program "msmtp")
36312
36313	the message seding is handled by an external program, so no Unicode
36314	encoding is performed in Emacs. Thus Emacs must not assert that the
36315	Unicode encoding was performed.
36316
363172019-06-02  Juanma Barranquero  <lekktu@gmail.com>
36318
36319	* lisp/help-fns.el (help-fns--first-release): Do not fail if no release is found.
36320
363212019-06-02  Stefan Monnier  <monnier@iro.umontreal.ca>
36322
36323	* lisp/gnus/gnus-sum.el, lisp/gnus/gnus-async.el: Eliminate assumptions about gnus-data format
36324
36325	* lisp/gnus/gnus-async.el (gnus-async-with-semaphore): Use `declare`.
36326	(gnus-async-prefetch-next): Don't assume gnus-data-number == car.
36327
36328	* lisp/gnus/gnus-sum.el (gnus-data-find-in): New function.
36329	(gnus-data-find, gnus-data-find-list): Use it.
36330	(gnus-summary-article-subject): Make it a function.
36331	(gnus--dummy-data-list): New const.
36332	(gnus-update-summary-mark-positions): Use it.
36333
363342019-06-02  Stefan Monnier  <monnier@iro.umontreal.ca>
36335
36336	* lisp/gnus/gnus.el: Fix cycle in eager macroexpansion
36337
36338	* lisp/gnus/gnus-sum.el (gnus-data): Use cl-defstruct.
36339	(gnus-data-set-pos, gnus-data-set-header, gnus-data-set-mark)
36340	(gnus-data-set-number): Delete macros; use `setf` instead.
36341	(gnus-data-unread-p, gnus-data-read-p, gnus-data-pseudo-p, gnus-data-find)
36342	(gnus-summary-skip-intangible, gnus-summary-article-number):
36343	Redefine as inlinable functions rather than macros.
36344
36345	* lisp/gnus/gnus.el: Adjust autoloads for the macros turned functions.
36346
363472019-06-02  Stefan Monnier  <monnier@iro.umontreal.ca>
36348
36349	* lisp/help-fns.el: Make hyperlink for the "first release" info
36350
36351	* lisp/help-fns.el (help-fns--first-release): Return a "button".
36352	(help-fns--mention-first-release): Preserve the string's text-properties.
36353
36354	* lisp/help-mode.el (help-news): New button type.
36355
363562019-06-02  Alan Mackenzie  <acm@muc.de>
36357
36358	Change default offset of CC Mode syntactic symbol inlambda to 0
36359
36360	It's previous default was c-lineup-inexpr-block.  This change is mainly to
36361	prevent excessive indentation of the innards of C++ lambda functions.
36362
36363	* lisp/progmodes/cc-vars.el (c-offsets-alist): Amend the offset for inlambda
36364	to 0.
36365
36366	* doc/misc/cc-mode.texi (FAQ): Amend the answer to the question about this
36367	matter.
36368
363692019-06-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
36370
36371	Implement the get_variation_glyphs method for FreeType >= 2.3.6
36372
36373	* configure.ac: Check availability of FT_Face_GetCharVariantIndex.
36374
36375	* src/ftfont.c (ftfont_variation_glyphs) [HAVE_FT_FACE_GETCHARVARIANTINDEX]:
36376	Add function implementation.
36377
36378	* src/ftcrfont.c (ftcrfont_variation_glyphs)
36379	[HAVE_FT_FACE_GETCHARVARIANTINDEX]: Use function implementation for
36380	HAVE_OTF_GET_VARIATION_GLYPHS.
36381
36382	* src/ftfont.c (ftfont_driver) [HAVE_FT_FACE_GETCHARVARIANTINDEX]:
36383	* src/xftfont.c (xftfont_driver) [HAVE_FT_FACE_GETCHARVARIANTINDEX]:
36384	* src/ftxfont.c (ftxfont_driver) [HAVE_FT_FACE_GETCHARVARIANTINDEX]:
36385	* src/ftcrfont.c (ftcrfont_driver) [HAVE_FT_FACE_GETCHARVARIANTINDEX]:
36386	Populate the get_variation_glyphs method.
36387
363882019-06-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
36389
36390	Revert previous commit
36391
36392	This reverts commit 1ab69630dcb8c7a1b1b4171211a7c8ebf11b0d1c.
36393	It has a wrong commit message.
36394
363952019-06-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
36396
36397	Make fthbfont and derivatives use common HarfBuzz code in hbfont.c
36398
36399	* src/font.h (fthbfont_shape, fthbfont_combining_capability)
36400	[HAVE_HARFBUZZ]: Remove prototypes.
36401
36402	* src/ftfont.c: Don't include math.h.
36403	(uni_combining, uni_general, uni_mirroring, get_hb_unicode_funcs)
36404	(fthbfont_shape_by_hb, fthbfont_combining_capability, fthbfont_shape)
36405	[HAVE_HARFBUZZ]: Remove functions.
36406
36407	* src/ftfont.c (syms_of_ftfont_for_pdumper) [HAVE_HARFBUZZ]:
36408	* src/xftfont.c (syms_of_xftfont_for_pdumper) [HAVE_HARFBUZZ]:
36409	* src/ftcrfont.c (syms_of_ftcrfont_for_pdumper) [HAVE_HARFBUZZ]: Use
36410	hbfont_shape and hbfont_combining_capability for fthbfont_shape and
36411	fthbfont_combining_capability, respectively.
36412
364132019-06-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
36414
36415	Make fthbfont and derivatives use common HarfBuzz code in hbfont.c
36416
36417	* src/font.h (fthbfont_shape, fthbfont_combining_capability)
36418	[HAVE_HARFBUZZ]: Remove prototypes.
36419
36420	* src/ftfont.c: Don't include math.h.
36421	(uni_combining, uni_general, uni_mirroring, get_hb_unicode_funcs)
36422	(fthbfont_shape_by_hb, fthbfont_combining_capability, fthbfont_shape)
36423	[HAVE_HARFBUZZ]: Remove functions.
36424
36425	* src/ftfont.c (syms_of_ftfont_for_pdumper) [HAVE_HARFBUZZ]:
36426	* src/xftfont.c (syms_of_xftfont_for_pdumper) [HAVE_HARFBUZZ]:
36427	* src/ftcrfont.c (syms_of_ftcrfont_for_pdumper) [HAVE_HARFBUZZ]: Use
36428	hbfont_shape and hbfont_combining_capability instead of fthbfont_shape
36429	and fthbfont_combining_capability, respectively.
36430
364312019-06-01  Glenn Morris  <rgm@gnu.org>
36432
36433	Skip some flymake tests on hydra.nixos.org
36434
36435	* test/lisp/progmodes/flymake-tests.el (perl-backend)
36436	(included-c-header-files, recurrent-backend):
36437	Skip on hydra.nixos due to frequent intermittent failures.  (Bug#32764)
36438
364392019-06-01  Stefan Kangas  <stefankangas@gmail.com>
36440
36441	Use lexical-binding in morse.el and studly.el and add tests
36442
36443	* lisp/play/morse.el: Use lexical-binding.
36444	* lisp/play/studly.el: Use lexical-binding.
36445	* test/lisp/play/morse-tests.el: New file.
36446	* test/lisp/play/studly-tests.el: New file.
36447
364482019-06-01  Stefan Kangas  <stefankangas@gmail.com>
36449
36450	Use lexical-binding in paragraphs.el and add tests
36451
36452	* lisp/textmodes/paragraphs.el: Use lexical-binding.
36453	(repunctuate-sentences): Make it work non-interactively.
36454	* test/lisp/textmodes/paragraphs-tests.el: New file.
36455
364562019-06-01  Paul Eggert  <eggert@cs.ucla.edu>
36457
36458	Fix .gitignore spec for personal customizations
36459
36460	Problem reported by Mauro Aranda (Bug#35945).
36461	* .gitignore: Replace .dir-locals?.el with .dir-locals-2.el.
36462
364632019-06-01  Paul Eggert  <eggert@cs.ucla.edu>
36464
36465	Tune cl-assoc
36466
36467	* lisp/emacs-lisp/cl-seq.el (cl-assoc):	Use assq for fixnums.
36468
364692019-06-01  Mattias Engdegård  <mattiase@acm.org>
36470
36471	Fix `cl-member' and `cl-assoc' for bignums
36472
36473	* lisp/emacs-lisp/cl-seq.el (cl-member, cl-assoc): Work with bignums.
36474	* test/lisp/emacs-lisp/cl-seq-tests.el (cl-seq-bignum-eql): New.
36475
364762019-06-01  Daniel Ralston  <wubbulous@gmail.com>  (tiny change)
36477
36478	Make rcirc PART and QUIT reasons customizable (Bug#12857)
36479
36480	* lisp/net/rcirc.el: (rcirc-default-part-reason, rcirc-default-quit-reason):
36481	New customizable vars.
36482	(rcirc-cmd-quit, rcirc-cmd-part): Consult them.
36483
364842019-06-01  Noam Postavsky  <npostavs@gmail.com>
36485
36486	Handle argument to rcirc /part properly (Bug#11157)
36487
36488	* lisp/net/rcirc.el (part): Split out channel name and part reason.
36489	* doc/misc/rcirc.texi (rcirc commands): Clarify that channel name may
36490	be provided to /part.
36491
364922019-06-01  Noam Postavsky  <npostavs@gmail.com>
36493
36494	* lisp/net/rcirc.el: Remove redundant :group usage
36495
36496	... and empty Todo comment section.
36497
364982019-06-01  Alan Mackenzie  <acm@muc.de>
36499
36500	Debug and disentangle the literal cacheing in CC Mode
36501
36502	(Final Commit)
36503
36504	* lisp/progmodes/cc-engine.el (c-semi-trim-near-cache): Correct a comparison
36505	with the wrong ...-limit variable.
36506	(c-semi-pp-to-literal): Remove a wrong setting of c-lit-pos-cache-limit.
36507	(c-full-get-near-cache-entry): Eliminate extravagant and unneeded coding.
36508	(c-state-cache-init, c-record-parse-state-state): No longer manipulate
36509	c-lit-pos-cache, which is no longer regarded as part of c-parse-state.
36510
36511	* lisp/progmodes/cc-mode.el (c-basic-common-init): Call
36512	c-truncate-lit-pos-cache to initialize the literal cache.
36513
365142019-06-01  Alan Mackenzie  <acm@muc.de>
36515
36516	* lisp/progmodes/cc-engine.el: Permute certain literal cacheing functions
36517
365182019-06-01  Alan Mackenzie  <acm@muc.de>
36519
36520	Tidy up the literal cacheing in CC Mode, optimizing c-full-pp-to-literal
36521
36522	(Intermediate commit)
36523
36524	* lisp/progmodes/cc-engine.el, lisp/progmodes/cc-fonts.el
36525	* lisp/progmodes/cc-mode.el : Rename:
36526	c-state-semi-nonlit-pos-cache -> c-lit-pos-cache,
36527	c-state-semi-nonlit-pos-cache-limit -> c-lit-pos-cache-limit,
36528	c-state-semi-nonlit-near-cache -> c-semi-lit-near-cache,
36529	c-truncate-semi-nonlit-pos-cache -> c-truncate-lit-pos-cache,
36530	c-state-semi-trim-near-cache -> c-semi-trim-near-cache,
36531	c-state-semi-get-near-cache-entry -> c-semi-get-near-cache-entry,
36532	c-state-semi-put-near-cache-entry -> c-semi-put-near-cache-entry,
36533	c-state-semi-pp-to-literal -> c-semi-pp-to-literal,
36534	c-state-full-pp-to-literal -> c-full-pp-to-literal,
36535	c-state-semi-trim-cache -> c-trim-lit-pos-cache.
36536
36537	* lisp/progmodes/cc-engine.el (c-semi-near-cache-limit): New variable.
36538	(c-truncate-lit-pos-cache): This now truncates the cache variables for all
36539	three lit- sub-caches.
36540	(c-semi-put-near-cache-entry): Increase c-semi-near-cache-limit to the
36541	position of the new entry.
36542	(c-full-near-cache-limit, c-full-lit-near-cache): New variables.
36543	(c-full-trim-near-cache, c-full-get-near-cache-entry)
36544	(c-full-put-near-cache-entry): New functions.
36545	(c-full-pp-to-literal): Amend to use the new functions, and to optimize the
36546	use of the available caches, similarly to c-semi-pp-to-literal.
36547
365482019-06-01  Paul Eggert  <eggert@cs.ucla.edu>
36549
36550	Port hbfont.c to GCC 9 with --enable-gcc-warnings
36551
36552	* src/hbfont.c (hbfont_shape): Use ptrdiff_t, not int,
36553	for indexes that in theory might overflow int.
36554	Add UNINIT to pacify GCC 9 and omit an unnecessary initialization.
36555
365562019-06-01  Glenn Morris  <rgm@gnu.org>
36557
36558	Merge from origin/emacs-26
36559
36560	008b263 (origin/emacs-26, emacs-26) * lisp/gnus/gnus.el: Mark autoloa...
36561	daf32f1 Speed up redisplay of HELLO
36562	d8a6d82 Improve documentation of 'safe-local-variable' property
36563
36564	# Conflicts:
36565	#	etc/HELLO
36566
365672019-06-01  Glenn Morris  <rgm@gnu.org>
36568
36569	Merge from origin/emacs-26
36570
36571	134edc1 Warn about wrong number of args for subrs (Bug#35767)
36572	5f01af6 Use plain symbols for eieio type descriptors (Bug#29220)
36573	4b24b01 Pacify GCC 9 -Wredundant-decls
36574
365752019-06-01  Glenn Morris  <rgm@gnu.org>
36576
36577	Merge from origin/emacs-26
36578
36579	b2e44b4 Pacify GCC when compiling unexelf.c on Fedora 30
36580
365812019-06-01  Glenn Morris  <rgm@gnu.org>
36582
36583	Merge from origin/emacs-26
36584
36585	1b2f83b Fix docstring of bookmark-get-bookmark
36586
365872019-06-01  Glenn Morris  <rgm@gnu.org>
36588
36589	Merge from origin/emacs-26
36590
36591	2168165 ; * doc/lispref/nonascii.texi (Explicit Encoding): Fix typo.
36592	8f18d12 Improve documentation of decoding into a unibyte buffer
36593	7681a57 Remove redundants "See" before @xref or @pxref (Bug#35793)
36594	9bee762 ; * src/coding.c: Improve commentary.  (Bug#34765)
36595	e61349c Fix customization type of recentf-max-saved-items
36596
36597	# Conflicts:
36598	#	src/coding.c
36599
366002019-06-01  Eli Zaretskii  <eliz@gnu.org>
36601
36602	Implement the get_variation_glyphs method for HarfBuzz on MS-Windows
36603
36604	* src/w32uniscribe.c [HAVE_HARFBUZZ]: DEF_DLL_FN
36605	hb_font_get_variation_glyph.
36606	(hb_font_get_variation_glyph): New redirection macro.
36607	(w32hb_get_variation_glyphs): New function.
36608	(load_harfbuzz_funcs): Load hb_font_get_variation_glyph.
36609	(syms_of_w32uniscribe_for_pdumper): Populate the
36610	get_variation_glyphs method of harfbuzz_font_driver.
36611
366122019-06-01  Simen Heggestøyl  <simenheg@gmail.com>
36613
36614	Use lexical-binding in page.el and add tests
36615
36616	* lisp/textmodes/page.el: Use lexical-binding.
36617	(forward-page): Replace `(if x nil y)' with `(unless x y)'.
36618
36619	* test/lisp/textmodes/page-tests.el: New file with tests for page.el.
36620
366212019-06-01  Eli Zaretskii  <eliz@gnu.org>
36622
36623	Update the documentation due to changes in loading font backends
36624
36625	* doc/emacs/msdos.texi (Windows Fonts): Reflect the fact that
36626	Uniscribe is not enabled by default.
36627
366282019-06-01  Eli Zaretskii  <eliz@gnu.org>
36629
36630	Prefer HarfBuzz to Uniscribe on MS-Windows
36631
36632	* src/w32fns.c (Fx_create_frame, w32_create_tip_frame):
36633	Register the Uniscribe font backend only if HarfBuzz is not
36634	available, or if explicitly requested via frame parameters
36635	or resources.
36636
366372019-06-01  Eli Zaretskii  <eliz@gnu.org>
36638
36639	Move common HarfBuzz code to a common file hbfont.c
36640
36641	* src/hbfont.c: New file, with code moved from w32uniscribe.c
36642	and renamed/modified as appropriate.
36643	* src/w32uniscribe.c: Move to hbfont.c DEF_DLL_FN and macro
36644	definitions for HarfBuzz functions used in hbfont.c
36645	(load_harfbuzz_funcs): Move loading of HarfBuzz functions used
36646	by hbfont.c to hbfont.c:hbfont_init_w32_funcs, and call that
36647	function from here.
36648	(syms_of_w32uniscribe_for_pdumper): Fill the 'shape' and
36649	'combining_capability' members with hbfont.c function names.
36650	* src/w32common.h (hbfont_init_w32_funcs) [HAVE_HARFBUZZ]: Add
36651	prototype.
36652	* src/font.h (hbfont_shape, hbfont_combining_capability)
36653	[HAVE_HARFBUZZ]: Add prototypes.
36654	* src/Makefile.in (SOME_MACHINE_OBJECTS): Add hbfont.o.
36655
36656	* configure.ac (FONT_OBJ): Add hbfont.o if HAVE_HARFBUZZ.
36657
366582019-06-01  Stefan Kangas  <stefankangas@gmail.com>
36659
36660	Use lexical-binding in timezone.el and add tests
36661
36662	* lisp/timezone.el: Use lexical-binding.
36663	* test/lisp/timezone-tests.el: New file.
36664
366652019-05-31  Simen Heggestøyl  <simenheg@gmail.com>
36666
36667	Use lexical-binding in autoinsert.el and add tests
36668
36669	* lisp/autoinsert.el: Use lexical-binding.
36670	Remove redundant :group args.
36671	(auto-insert): Simplify.
36672
36673	* test/lisp/autoinsert-tests.el: New file with tests for
36674	autoinsert.el.
36675
366762019-05-31  Eli Zaretskii  <eliz@gnu.org>
36677
36678	Unbreak MinGW64 build with pthreads.h installed
36679
36680	* nt/mingw-cfg.site (gl_cv_func_pthread_sigmask_macro): Set to
36681	"no", to avoid compiling Gnulib's pthread_sigmask.c.
36682	Reported by Richard Copley <rcopley@gmail.com>.
36683
366842019-05-31  Eli Zaretskii  <eliz@gnu.org>
36685
36686	Enhance Hebrew display in HELLO
36687
36688	* etc/HELLO: Show off display of Hebrew with diacriticals
36689	(a.k.a. "nikkud").
36690
366912019-05-31  Eli Zaretskii  <eliz@gnu.org>
36692
36693	Fix handling of -xrm on MS-Windows broken by recent commits
36694
36695	* src/w32reg.c (w32_get_string_resource): The argument V_RDB
36696	is a 'char **', not a 'char *'.  This fixes -xrm handling on
36697	MS-Windows, broken by conversion of x_get_string_resource to
36698	terminal-specific hook.
36699
36700	(cherry picked from commit 833097cbc4856001ae77b33365faf09c1b3c30e3)
36701
367022019-05-31  Eli Zaretskii  <eliz@gnu.org>
36703
36704	Unbreak display of characters on MS-Windows
36705
36706	* src/w32font.c (w32font_draw): Convert the glyph_string's
36707	char2b array to 16-bit WCHAR data that ExtTextOutW needs.
36708
36709	(cherry picked from commit 38564f8a664347c42f7614d9c91e0d49e4a073e8)
36710
367112019-05-31  Eli Zaretskii  <eliz@gnu.org>
36712
36713	Add HarfBuzz font backend for MS-Windows
36714
36715	* src/w32uniscribe.c [HAVE_HARFBUZZ]: Include math.h and
36716	hb.h.
36717	(bswap_32): Define for GCC 4.3.0 and later; else include
36718	<byteswap.h> from Gnulib.
36719	(struct uniscribe_font_info): Extend for HarfBuzz; 'cache' is
36720	now a 'void *' (all users changed).
36721	[HAVE_HARFBUZZ]: Define typedefs for HarfBuzz functions to be
36722	loaded dynamically from the HarfBuzz DLL.  Define macros to
36723	call those functions via function pointers.
36724	(uniscribe_open) [HAVE_HARFBUZZ]: Use the HarfBuzz font driver
36725	if the type of the font entity is 'harfbuzz'.
36726	(uniscribe_close) [HAVE_HARFBUZZ]: For fonts using the
36727	HarfBuzz backend, call hb_font_destroy to free memory used for
36728	the cached hb_font data.
36729	(uniscribe_shape): Fix assignment of character codepoints to
36730	glyphs from a single cluster.
36731	(w32hb_list, w32hb_match, free_cb, w32hb_get_font_table)
36732	(w32hb_get_font, w32hb_encode_char, w32hb_begin_font)
36733	(w32uni_combining, w32uni_general, w32uni_mirroring)
36734	(get_hb_unicode_funcs, w32hb_shape)
36735	(w32hb_combining_capability, load_harfbuzz_funcs)
36736	[HAVE_HARFBUZZ]: New functions.
36737	(syms_of_w32uniscribe_for_pdumper) [HAVE_HARFBUZZ]: Load the
36738	HarfBuzz DLL and register the HarfBuzz backend with its
36739	functions.
36740	* src/w32font.c (syms_of_w32font) <Qharfbuzz>: New DEFSYM.
36741	* src/w32fns.c (Fx_create_frame, w32_create_tip_frame)
36742	[HAVE_HARFBUZZ]: Register the harfbuzz font backend.
36743	* src/lisp.h (get_unicode_property): Declare prototype.
36744	* src/font.h (harfbuzz_font_driver) [HAVE_NTGUI]: Declare.
36745	* src/chartab.c (get_unicode_property): New function, body
36746	taken from get-unicode-property-internal.
36747	(Fget_unicode_property_internal): Call get_unicode_property
36748	after validating input.
36749
36750	* doc/lispref/frames.texi (Font and Color Parameters):
36751	* doc/emacs/msdos.texi (Windows Fonts): Document support for
36752	HarfBuzz text shaping on MS-Windows.
36753
36754	* configure.ac (HAVE_HARFBUZZ): Move out of the X-specific
36755	part, and consider HarfBuzz also for HAVE_W32 systems.
36756	Require HarfBuzz v1.2.3 for w32.
36757
367582019-05-30  Paul Eggert  <eggert@cs.ucla.edu>
36759
36760	Improve eq1/memql performance
36761
36762	* src/fns.c (Fmemql, Feql): Inline to tweak performance.
36763
367642019-05-30  Mattias Engdegård  <mattiase@acm.org>
36765
36766	Fix `memql' for bignums
36767
36768	* src/fns.c (Fmemql): Make `memql' work for bignums.
36769	* test/src/fns-tests.el (test-bignum-eql): Also test `memql'.
36770
367712019-05-30  Alan Mackenzie  <acm@muc.de>
36772
36773	Optimize one of CC Mode's syntax caches for long comments and strings.
36774
36775	* lisp/progmodes/cc-langs.el (c-block-comment-awkward-chars): New lang
36776	constant and variable.
36777
36778	* lisp/progmodes/cc-engine.el (c-state-semi-nonlit-pos-cache): Enhance the
36779	doc comment.
36780	(c-state-semi-get-near-cache-entry, c-state-semi-pp-to-literal): Reuse entry
36781	if the sought position is in a literal, and lies between the literal start and
36782	the entry's position.
36783	(c-cache-to-parse-ps-state, c-parse-ps-state-below): Amend such that instead
36784	of cacheing a state for a position after a backslash or first character of a
36785	2-character comment delimiter, this is done for the previous character
36786	position.
36787
367882019-05-30  Dmitry Gutov  <dgutov@yandex.ru>
36789
36790	Fix a void-function error
36791
36792	* lisp/dired-aux.el (dired-do-find-regexp):
36793	Require 'xref' (bug#35352).
36794
367952019-05-30  Dmitry Gutov  <dgutov@yandex.ru>
36796
36797	Rename xref-refresh-results to xref-revert-buffer
36798
36799	* lisp/progmodes/xref.el (xref-revert-buffer): Rename from
36800	'xref-refresh-results' (https://debbugs.gnu.org/35737#40).
36801
368022019-05-30  Dmitry Gutov  <dgutov@yandex.ru>
36803
36804	New command ruby-find-library-file
36805
36806	* lisp/progmodes/ruby-mode.el (ruby-find-library-file):
36807	New command.
36808	(ruby-mode-map): Add binding for it.
36809
368102019-05-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
36811
36812	Add stipple support on cairo
36813
36814	* src/xterm.h (struct x_bitmap_record) [USE_CAIRO]: Remove unused member img.
36815	Add member stipple.
36816	(x_bitmap_stipple) [USE_CAIRO]: Add extern.
36817
36818	* src/image.c (x_bitmap_stipple) [HAVE_X_WINDOWS && USE_CAIRO]: New function.
36819	(image_create_bitmap_from_data, image_create_bitmap_from_file)
36820	(x_create_bitmap_from_xpm_data) [HAVE_X_WINDOWS && USE_CAIRO]: Initialize
36821	stipple member of struct x_bitmap_record.
36822	(free_bitmap_record) [HAVE_X_WINDOWS && USE_CAIRO]: Destroy stipple member.
36823
36824	* src/xterm.c (x_fill_rectangle) [USE_CAIRO]: Inspect gc and draw stipple if
36825	necessary.  Use x_bitmap_stipple.
36826
368272019-05-29  Basil L. Contovounesios  <contovob@tcd.ie>
36828
36829	Simplify Gnus buffer liveness checking and killing
36830
36831	* lisp/gnus/gnus-agent.el (gnus-agent-synchronize-group-flags):
36832	Fix indentation.
36833	* lisp/gnus/gnus-util.el (gnus-buffer-exists-p): Define as obsolete
36834	alias of gnus-buffer-live-p.
36835	(gnus-buffer-live-p): If the given argument is or names a live
36836	buffer, return the corresponding buffer object instead of a boolean.
36837	* lisp/gnus/gnus-win.el (gnus-delete-windows-in-gnusey-frames)
36838	(gnus-remove-some-windows): Simplify.
36839	* lisp/gnus/gnus.el (gnus-prune-buffers): Redefine as alias of
36840	gnus-buffers.
36841	(gnus-kill-buffer, gnus-buffers, gnus-group-find-parameter):
36842	* lisp/gnus/gnus-art.el (gnus-kill-sticky-article-buffers)
36843	(gnus-request-article-this-buffer):
36844	* lisp/gnus/gnus-bcklg.el (gnus-backlog-shutdown):
36845	* lisp/gnus/gnus-cus.el (gnus-group-customize)
36846	(gnus-agent-customize-category):
36847	* lisp/gnus/gnus-draft.el (gnus-draft-edit-message):
36848	* lisp/gnus/gnus-group.el (gnus-group-set-mode-line)
36849	(gnus--abort-on-unsaved-message-buffers, gnus-group-compact-group):
36850	* lisp/gnus/gnus-msg.el (gnus-inews-add-send-actions)
36851	(gnus-summary-supersede-article, gnus-copy-article-buffer):
36852	* lisp/gnus/gnus-score.el (gnus-score-edit-current-scores)
36853	(gnus-score-edit-file):
36854	* lisp/gnus/gnus-spec.el (gnus-update-format-specifications):
36855	* lisp/gnus/gnus-srvr.el (gnus-server-compact-server):
36856	* lisp/gnus/gnus-start.el (gnus-clear-system, gnus-dribble-enter)
36857	(gnus-dribble-save, gnus-dribble-clear, gnus-save-newsrc-file):
36858	* lisp/gnus/gnus-sum.el (gnus-summary-setup-buffer)
36859	(gnus-update-summary-mark-positions, gnus-summary-exit)
36860	(gnus-deaden-summary, gnus-kill-or-deaden-summary)
36861	(gnus-summary-next-group):
36862	* lisp/gnus/gnus-win.el (gnus-configure-frame):
36863	* lisp/gnus/mail-source.el (mail-source-movemail):
36864	* lisp/gnus/message.el (message-with-reply-buffer)
36865	(message-with-reply, message-send-and-exit)
36866	(message-send-mail-with-sendmail, message-pop-to-buffer)
36867	(message-do-send-housekeeping, message-forward-make-body-plain)
36868	(message-forward-make-body-mml):
36869	* lisp/gnus/mm-decode.el (mm-display-external, mm-remove-part):
36870	* lisp/gnus/nnbabyl.el (nnbabyl-server-opened)
36871	(nnbabyl-possibly-change-newsgroup, nnbabyl-read-mbox)
36872	(nnbabyl-check-mbox):
36873	* lisp/gnus/nndiary.el (nndiary-save-nov):
36874	* lisp/gnus/nndoc.el (nndoc-close-group)
36875	(nndoc-possibly-change-buffer):
36876	* lisp/gnus/nnfolder.el (nnfolder-close-group, nnfolder-save-nov):
36877	* lisp/gnus/nnimap.el (nnimap-make-process-buffer, nnimap-keepalive)
36878	(nnimap-find-connection):
36879	* lisp/gnus/nnmail.el (nnmail-cache-open, nnmail-cache-close):
36880	* lisp/gnus/nnmbox.el (nnmbox-close-server, nnmbox-server-opened)
36881	(nnmbox-possibly-change-newsgroup, nnmbox-read-mbox):
36882	* lisp/gnus/nnml.el (nnml-save-incremental-nov, nnml-open-nov)
36883	(nnml-save-nov):
36884	* lisp/gnus/nnoo.el (nnoo-server-opened):
36885	* lisp/gnus/nntp.el (nntp-kill-buffer, nntp-make-process-buffer)
36886	(nntp-open-connection, nntp-async-trigger):
36887	* lisp/net/mairix.el (mairix-gnus-fetch-field): Simplify buffer
36888	liveness checking and killing, replacing buffer-name with
36889	buffer-live-p and gnus-buffer-exists-p with gnus-buffer-live-p or
36890	equivalent where applicable.
36891
368922019-05-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
36893
36894	Fix breakage of native image scaling on XRENDER by previous change
36895
36896	* src/image.c (image_create_x_image_and_pixmap_1) [HAVE_XRENDER]: Get depth if
36897	it is unspecified.
36898
368992019-05-29  Paul Eggert  <eggert@cs.ucla.edu>
36900
36901	Update from Gnulib
36902
36903	This incorporates:
36904	2019-05-24 flexmember: update comments
36905	2019-05-18 pthread_sigmask: fix --enable-threads=windows compilation
36906	2019-05-14 close-stream, closein, closeout: simplify
36907	2019-05-09 verify: remove verify_true
36908	2019-05-09 verify: support C2X and C++17 static_assert
36909	* build-aux/config.guess, build-aux/config.sub:
36910	* doc/misc/texinfo.tex, lib/flexmember.h, lib/verify.h:
36911	* m4/flexmember.m4, m4/pthread_sigmask.m4:
36912	Copy from Gnulib
36913	* m4/gnulib-comp.m4: Regenerate.
36914
36915	2019-05-26  Paul Eggert  <eggert@cs.ucla.edu>
36916
36917	Update author/maintainer info
36918	This mostly updates email addresses and fixes spellings of
36919	author and maintainer names.
36920
369212019-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
36922
36923	* lisp/subr.el (add-hook): Turn `append` into `depth` (bug#35508)
36924
36925	Make it possible to control the relative ordering of functions on hooks by
36926	specifying `depth` in the same was as was possible with `add-function`.
36927
36928	* lisp/electric.el (electric--sort-post-self-insertion-hook):
36929	Delete function.
36930	(electric-indent-mode, electric-layout-mode, electric-quote-mode):
36931	* lisp/elec-pair.el (electric-pair-mode): Use new `depth` arg instead of
36932	electric--sort-post-self-insertion-hook.
36933
36934	* lisp/emacs-lisp/syntax.el (syntax-propertize, syntax-ppss):
36935	Use new `depth` arg to make sure noone accidentally gets added
36936	after syntax-ppss-flush-cache.
36937
36938	* doc/lispref/modes.texi (Setting Hooks): Document new `depth` arg.
36939
36940	* test/lisp/subr-tests.el (subr-tests-add-hook-depth): New test.
36941
369422019-05-29  Simen Heggestøyl  <simenheg@gmail.com>
36943
36944	Use lexical-binding in makesum.el and add tests
36945
36946	* lisp/makesum.el: Use lexical-binding.
36947	(make-command-summary): Replace `if..progn' with `when'.
36948	(double-column): Add docstring and apply trivial simplifications.
36949
36950	* test/lisp/makesum-tests.el: New file with tests for makesum.el.
36951
369522019-05-29  Basil L. Contovounesios  <contovob@tcd.ie>
36953
36954	Simplify gnus-or and gnus-and
36955
36956	* lisp/gnus/gnus-art.el: Make implicit seq.el dependency explicit.
36957	(gnus-treat-predicate): Use seq-some in place of mapcar + gnus-or
36958	and evaluate lambda predicate.
36959	* lisp/gnus/gnus-util.el (gnus-or, gnus-and): Simplify.
36960
369612019-05-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
36962
36963	Rework cairo image support to improve consistency (Bug#35871)
36964
36965	* src/dispextern.h (Emacs_Pix_Container) [USE_CAIRO]: New struct.  Also used
36966	as aliases of Emacs_Pixmap and Emacs_Pix_Context.
36967	(x_kill_gs_process) [USE_CAIRO]: #ifdef out extern.
36968	(RGB_PIXEL_COLOR) [USE_CAIRO]: Define as unsigned long.
36969
36970	* src/image.c: Include stdint.h.  On cairo, remove existing image support
36971	code, use non-X11-specific code for XBM/XPM, and remove POSTSCRIPT support.
36972	(PUT_PIXEL): New macro.  Use it instead of XPutPixel when not specific to X11.
36973	(GET_PIXEL, NO_PIXMAP, PIX_MASK_RETAIN, PIX_MASK_DRAW)
36974	(RGB_TO_ULONG, ARGB_TO_ULONG, RED_FROM_ULONG)
36975	(GREEN_FROM_ULONG, BLUE_FROM_ULONG, RED16_FROM_ULONG)
36976	(GREEN16_FROM_ULONG, BLUE16_FROM_ULONG)	[USE_CAIRO]: New macros.
36977	(image_create_pix_container, image_pix_container_put_pixel)
36978	(image_pix_context_get_pixel, image_pix_container_create_from_bitmap_data)
36979	(cr_create_cr_surface_from_image) [USE_CAIRO]: New functions.
36980	(image_create_x_image_and_pixmap_1, image_destroy_x_image)
36981	(image_check_image_size): Extract X11-specific code from here ...
36982	(x_create_x_image_and_pixmap, x_destroy_x_image)
36983	(x_check_image_size) [HAVE_X_WINDOWS]: ... to here.
36984	(x_create_bitmap_mask) [HAVE_X_WINDOWS]: Use them.  Inline specialized version
36985	of four_corners_best.
36986	(prepare_image_for_display, image_clear_image_1, image_destroy_x_image)
36987	(gui_put_x_image, image_put_x_image, image_get_x_image, image_unget_x_image)
36988	(Create_Pixmap_From_Bitmap_Data, lookup_rgb_color)
36989	(image_to_emacs_colors) [USE_CAIRO]: Add cairo support.
36990	(image_background, png_load_body) [USE_CAIRO]: Use image_alloc_image_color for
36991	img->background.
36992	(image_sync_to_pixmaps) [USE_CAIRO]: #ifdef out function.
36993	(Create_Pixmap_From_Bitmap_Data) [HAVE_X_WINDOWS]: Move image_check_image_size
36994	call from here ...
36995	(xbm_load_image): ... to here.
36996	(xpm_load_image):
36997	(image_build_heuristic_mask, pbm_load, gif_load) [USE_CAIRO]: Use
36998	lookup_rgb_color for argument of PUT_PIXEL.
36999	(image_pixmap_draw_cross) [HAVE_X_WINDOWS || USE_CAIRO]: New function.
37000	(image_disable_image) [HAVE_X_WINDOWS || USE_CAIRO]: Use it.
37001	(CrossForeground) [!HAVE_NTGUI && !HAVE_NS]: New macro.
37002	(image_disable_image) [!HAVE_NTGUI && !HAVE_NS]: Use it.
37003
37004	* src/xterm.c (handle_one_xevent) <ClientMessage> [USE_CAIRO]: #ifdef out
37005	x_kill_gs_process call.
37006	(x_free_pixmap) [USE_CAIRO]: Free Emacs_Pix_Container and data it contains.
37007
370082019-05-28  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
37009
37010	Improve previous change for tool bar image support on GTK+2 with cairo
37011
37012	* src/gtkutil.c (xg_get_pixbuf_from_surface) [USE_CAIRO && !HAVE_GTK3]: Remove
37013	unused argument f.  All callers changed.  Handle general alpha value.
37014
370152019-05-28  Stefan Monnier  <monnier@iro.umontreal.ca>
37016
37017	* lisp/international/mule-cmds.el (encoded-string-description): Require unibyte string as input
37018
370192019-05-28  Stefan Monnier  <monnier@iro.umontreal.ca>
37020
37021	* lisp/international/mule-cmds.el (encode-coding-char): Fix ASCII case
37022
37023	Don't bother with string-as-multibyte since `string` already returns
37024	multibyte when needed.  Don't forget to encode when the string is
37025	ASCII, e.g. for ebcdic case and to make sure we always return
37026	a unibyte string.
37027
37028	* test/lisp/international/mule-tests.el (mule-cmds-tests--encode-ebcdic):
37029	New test.
37030
370312019-05-28  Michael Heerdegen  <michael_heerdegen@web.de>
37032
37033	* doc/misc/cl.texi (Macro Bindings): Add a detail
37034
37035	Say that calls of 'cl-macrolet' bound macros are expanded in the
37036	global environment.
37037
370382019-05-28  Stefan Monnier  <monnier@iro.umontreal.ca>
37039
37040	* lisp/gnus/gnus-art.el: Use mail-header-p
37041
37042	(gnus-summary-save-in-pipe, gnus-article-prepare)
37043	(gnus-request-article-this-buffer): Use mail-header-p instead of vectorp.
37044	(gnus-request-article-this-buffer): Use insert-buffer-substring since
37045	it doesn't behave like string-make-multibyte any more.
37046
370472019-05-28  Eli Zaretskii  <eliz@gnu.org>
37048
37049	Fix handling of -xrm on MS-Windows broken by recent commits
37050
37051	* src/w32reg.c (w32_get_string_resource): The argument V_RDB
37052	is a 'char **', not a 'char *'.  This fixes -xrm handling on
37053	MS-Windows, broken by conversion of x_get_string_resource to
37054	terminal-specific hook.
37055
370562019-05-28  Stefan Monnier  <monnier@iro.umontreal.ca>
37057
37058	* lisp/frameset.el: Stop using obsolete registerv objects
37059
37060	(frameset-register): New type.
37061	(register-val-jump-to): Define on this new type, replacing
37062	frameset--jump-to-register.
37063	(register-val-describe): Define on this new type, replacing
37064	frameset--print-register.
37065	(frameset-to-register): Use new frameset-make-register.
37066	(frameset--reuse-frame): η-reduce.
37067
370682019-05-28  Stefan Kangas  <stefankangas@gmail.com>
37069
37070	Cleanup of TODO to prefer report-emacs-bug
37071
37072	* etc/TODO: Remove already completed removal of `report-calc-bug'.
37073	* lisp/calc/calc.el: Remove any mention of `report-calc-bug'.
37074	* lisp/epg-config.el: Redefine `epg-bug-report-address' as obsolete
37075	variable alias for `report-emacs-bug-address'.
37076	* lisp/expand.el: Remove any mention of `expand-submit-report'.
37077	* lisp/obsolete/fast-lock.el: Remove commented out code for
37078	`fast-lock-submit-bug-report'.
37079
370802019-05-28  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
37081
37082	Support tool bar icon image also on GTK+2 with cairo
37083
37084	* src/gtkutil.c (xg_get_pixbuf_from_surface) [USE_CAIRO && !HAVE_GTK3]: New
37085	function.
37086	(xg_get_image_for_pixmap) [USE_CAIRO && !HAVE_GTK3]: Use it.
37087	(xg_tool_item_stale_p, update_frame_tool_bar) [USE_CAIRO && !HAVE_GTK3]: Use
37088	cairo code also on GTK+2.
37089
370902019-05-27  Glenn Morris  <rgm@gnu.org>
37091
37092	* test/lisp/autorevert-tests.el: Give on on remote hydra.nixos tests.
37093
37094	(auto-revert--test-enabled-remote): Disable on hydra.nixos.
37095
370962019-05-27  Glenn Morris  <rgm@gnu.org>
37097
37098	* test/lisp/autorevert-tests.el: Try to fix remote hydra.nixos tests.
37099
371002019-05-27  Simen Heggestøyl  <simenheg@gmail.com>
37101
37102	Remap `complete-symbol' in CSS mode
37103
37104	* lisp/textmodes/css-mode.el (css-mode-map): Remap `complete-symbol'
37105	to `completion-at-point'.
37106	(css-mode): Update docstring to produce the right key binding.
37107
371082019-05-27  Mattias Engdegård  <mattiase@acm.org>
37109
37110	Correctly eliminate duplicate cases in switch compilation
37111
37112	Fix code mistakes that prevented the correct elimination of duplicated
37113	cases when compiling a `cond' form to a switch bytecode, as in
37114
37115	  (cond ((eq x 'a) 1)
37116	        ((eq x 'b) 2)
37117	        ((eq x 'a) 3)   ; should be elided
37118	        ((eq x 'c) 4))
37119
37120	Sometimes, this caused the bytecode to use the wrong branch (bug#35770).
37121
37122	* lisp/emacs-lisp/bytecomp.el (byte-compile-cond-vars): Return obj2 eval'ed.
37123	(byte-compile-cond-jump-table-info):
37124	Discard redundant condition.  Use `obj2' as evaluated.
37125	Discard duplicated cases instead of failing the table generation.
37126	* test/lisp/emacs-lisp/bytecomp-tests.el (toplevel): Require subr-x.
37127	(byte-opt-testsuite-arith-data, bytecomp-test--switch-duplicates): Test.
37128
371292019-05-27  Michael Albinus  <michael.albinus@gmx.de>
37130
37131	Another attempt to fix Bug#35769
37132
37133	* lisp/net/tramp.el (tramp-call-process, tramp-call-process-region)
37134	(tramp-process-lines): Suppress `process-environment' entries
37135	dedicated for remote processes.  (Bug#35769)
37136
371372019-05-26  Simen Heggestøyl  <simenheg@gmail.com>
37138
37139	Add a menu bar menu for CSS mode
37140
37141	* lisp/textmodes/css-mode.el (css-mode-map): Add menu bar menu.
37142
371432019-05-26  Michael Albinus  <michael.albinus@gmx.de>
37144
37145	* lisp/net/tramp-sh.el (tramp-maybe-open-connection): Revert fix for Bug#35769
37146
371472019-05-26  Noam Postavsky  <npostavs@gmail.com>
37148
37149	Avoid infloop in read-multiple-choice (Bug#32257)
37150
37151	* lisp/emacs-lisp/rmc.el (read-multiple-choice): Use `read-event'
37152	which won't get stuck (return the same event over and over again) for
37153	non-character events, unlike `read-char'.
37154
371552019-05-26  Basil L. Contovounesios  <contovob@tcd.ie>
37156
37157	Tweak recent additions in tabify-tests.el
37158
37159	* test/lisp/tabify-tests.el (tabify-tests--test-changes): Rename
37160	third argument to avoid "lexical argument shadows dynamic variable"
37161	warnings.  Use mapconcat in place of mapcar+concat.
37162	(tabify-tests-untabify, tabify-tests-tabify): Quote function symbols
37163	as such.
37164
371652019-05-26  Simen Heggestøyl  <simenheg@gmail.com>
37166
37167	Use lexical-binding in paren.el and add tests
37168
37169	* lisp/paren.el: Use lexical-binding.
37170	(show-paren--default): Use imperative form in doc-string.
37171
37172	* test/lisp/paren-tests.el: New file with tests for paren.el.
37173
371742019-05-26  Paul Eggert  <eggert@cs.ucla.edu>
37175
37176	Update author/maintainer info
37177
37178	Update email addresses and fix spellings of some author and
37179	maintainer names.
37180
371812019-05-26  Paul Eggert  <eggert@cs.ucla.edu>
37182
37183	Remove Maintainer: when it duplicates Author:
37184
37185	The convention is that a file with Author: but not Maintainer:
37186	means the author is a maintainer, which makes it confusing
37187	when a file lists the same person as author and maintainer.
37188	Avoid the confusion by removing the duplicate Maintainer: line.
37189
371902019-05-25  Stefan Kangas  <stefankangas@gmail.com>
37191
37192	Use lexical-binding in tabify.el and add tests
37193
37194	* lisp/tabify.el: Use lexical-binding.
37195	* test/lisp/tabify-tests.el: New file.
37196
371972019-05-25  Paul Eggert  <eggert@cs.ucla.edu>
37198
37199	* CONTRIBUTE: Split git configuration from fetch-and-build
37200
372012019-05-25  Paul Eggert  <eggert@cs.ucla.edu>
37202
37203	Document ‘Maintainer: emacs-devel@gnu.org’
37204
37205	* doc/lispref/tips.texi (Library Headers): Document that the
37206	Maintainer: line now says ‘emacs-devel@gnu.org’ rather than ‘FSF’.
37207
372082019-05-25  Paul Eggert  <eggert@cs.ucla.edu>
37209
37210	Go back to "Maintainer: emacs-devel@gnu.org"
37211
37212	Restore lines saying "Maintainer: emacs-devel@gnu.org" when there is
37213	no special maintainer for a file.  Although this wasn't documented
37214	it was common practice and removing the lines didn't have consensus.
37215
372162019-05-25  Dmitry Gutov  <dgutov@yandex.ru>
37217
37218	Expand some xref documentation
37219
37220	* lisp/progmodes/xref.el (xref-show-xrefs-function)
37221	(xref-show-definitions-function, xref--create-fetcher):
37222	Add or extend the docstring.
37223
372242019-05-25  Eric S. Raymond  <esr@thyrsus.com>
37225
37226	Implement and document XDG-style startup files under ~/.config.
37227
37228	* lisp/startup.el (command-line): Allow XDG-style as well as old
37229	 style init paths.
37230	* doc/emacs/custom.texi: Document the above change.
37231
372322019-05-25  Mauro Aranda  <maurooaranda@gmail.com>
37233
37234	Remove redundants "See" before @xref or @pxref (Bug#35793)
37235
37236	* doc/misc/gnus.texi (Group Parameters): Remove redundant "See" before
37237	cross reference, add comma after it.
37238
372392019-05-25  Michael Albinus  <michael.albinus@gmx.de>
37240
37241	* doc/misc/tramp.texi (Obtaining Tramp): Tramp is available via GNU ELPA.
37242
372432019-05-24  Dmitry Gutov  <dgutov@yandex.ru>
37244
37245	Rename xref--revert-xref-buffer to xref-refresh-results
37246
37247	* lisp/progmodes/xref.el (xref-refresh-results):
37248	Rename from xref--revert-xref-buffer (bug#35702).
37249
372502019-05-24  Dmitry Gutov  <dgutov@yandex.ru>
37251
37252	Support reverting in xref-find-definitions results as well
37253
37254	* lisp/progmodes/xref.el (xref--show-xref-buffer): Expect the
37255	first argument to always be a function (bug#35702).  Handle a
37256	FETCHED-XREFS entry in ALIST.
37257	(xref--show-defs-buffer): Update accordingly.
37258	(xref--create-fetcher): Extract from xref--find-xrefs.
37259	(xref--find-definitions): Use it.
37260
372612019-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
37262
37263	* lisp/emacs-lisp/package.el (package-install-from-archive): Fix last change
37264
37265	Don't place the unibyte content of of the downloaded file into
37266	a multibyte buffer.
37267
372682019-05-24  Michael Albinus  <michael.albinus@gmx.de>
37269
37270	Fix Bug#35769
37271
37272	* lisp/net/tramp-adb.el (tramp-adb-connection-local-default-profile):
37273	* lisp/net/tramp-integration.el (tramp-connection-local-default-profile):
37274	Do not set it on w32 systems.  (Bug#35769)
37275
372762019-05-24  Matthew Bauer  <mjbauer95@gmail.com>
37277
37278	Add "Enter Auth" prompt handling for OpenVPN (Bug#35724)
37279
37280	* lisp/comint.el (comint-password-prompt-regexp): Allow "Enter Auth"
37281	at the beginning.
37282
372832019-05-23  Dmitry Gutov  <dgutov@yandex.ru>
37284
37285	Support "reverting" Xref buffers (bug#35702)
37286
37287	* lisp/progmodes/xref.el (xref--fetcher): New variable.
37288	(xref--xref-buffer-mode-map): Add binding for 'g'.
37289	(xref--revert-xref-buffer): New command.
37290	(xref--show-xref-buffer): Accept a function as the first argument.
37291	(xref--show-xrefs): Same.
37292	(xref--find-xrefs): Pass the above a fetcher function.
37293
37294	* lisp/progmodes/project.el (project-find-regexp)
37295	(project-or-external-find-regexp): Same.
37296
37297	* lisp/dired-aux.el (dired-do-find-regexp): Same.
37298
372992019-05-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
37300
37301	Undo use of Emacs_Pixmap over Pixmap for x_kill_gs_process
37302
37303	* src/dispextern.h (x_kill_gs_process):
37304	* src/image.c (x_kill_gs_process): Undo use of Emacs_Pixmap over Pixmap.
37305	* src/dispextern.h (x_kill_gs_process): Move extern inside HAVE_X_WINDOWS.
37306
373072019-05-23  Michael Heerdegen  <michael_heerdegen@web.de>
37308
37309	Improve documentation of the 'function' special form
37310
37311	Point out that 'function' quoting is beneficial also for symbols.
37312
37313	* src/eval.c (function): Enhance docstring.
37314	* doc/lispref/functions.texi (Anonymous Functions): Improve
37315	documentation.
37316
373172019-05-23  Michael Heerdegen  <michael_heerdegen@web.de>
37318
37319	* lisp/emacs-lisp/cl-macs.el (cl-callf): Tweak in docstring
37320
37321	Say that lambdas are also allowed as FUNC argument.
37322
373232019-05-22  Paul Eggert  <eggert@cs.ucla.edu>
37324
37325	Avoid backslash-newline-newline in source code
37326
37327	* etc/refcards/Makefile (PDF_FRENCH):
37328	* lib-src/etags.c (LOOP_ON_INPUT_LINES):
37329	* lisp/dabbrev.el (dabbrev-check-other-buffers):
37330	* lisp/org/org-id.el (org-id-link-to-org-use-id):
37331	* lisp/org/org.el (org-support-shift-select, org-file-apps):
37332	* src/alloc.c (CHECK_ALLOCATED_AND_LIVE)
37333	(CHECK_ALLOCATED_AND_LIVE_SYMBOL):
37334	* src/frame.h (FRAME_PIXEL_WIDTH_TO_TEXT_COLS):
37335	* src/regex-emacs.c (PREFETCH_NOLIMIT):
37336	* src/window.h (WINDOW_BUFFER):
37337	Remove backslash-newline that immediately precedes another
37338	newline, as this is not the usual style and is confusing.
37339
373402019-05-22  Eli Zaretskii  <eliz@gnu.org>
37341
37342	Unbreak display of characters on MS-Windows
37343
37344	* src/w32font.c (w32font_draw): Convert the glyph_string's
37345	char2b array to 16-bit WCHAR data that ExtTextOutW needs.
37346
373472019-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
37348
37349	* lisp/cedet/srecode/insert.el: Use lexical-binding
37350
37351	(srecode-insert-method): No need for lexical-let any more.
37352
373532019-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
37354
37355	* lisp/allout.el, lisp/allout-widgets.el: Use cl-lib and pcase
37356
373572019-05-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
37358
37359	Merge branch 'master' into harfbuzz
37360
373612019-05-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
37362
37363	Make Cairo build obey hint-style font setting (Bug#35781)
37364
37365	* src/ftfont.h (ftfont_open2): Remove extern.
37366	(ftfont_fix_match, ftfont_add_rendering_parameters)
37367	(ftfont_entity_pattern): Add externs.
37368	(struct font_info): Remove member bitmap_strike_index.
37369	(struct font_info) [USE_CAIRO]: Remove member ft_size_draw.  All uses removed.
37370	Add member bitmap_position_unit.
37371
37372	* src/xftfont.c (xftfont_fix_match, xftfont_add_rendering_parameters): Move
37373	functions from here ...
37374	* src/ftfont.c (ftfont_fix_match, ftfont_add_rendering_parameters): ... to
37375	here.  All uses changed.
37376	* src/xftfont.c (xftfont_open): Extract FcPattern creation from font entity
37377	from here ...
37378	* src/ftfont.c (ftfont_entity_pattern):	... to here.
37379	* src/xftfont.c (syms_of_xftfont): Move DEFSYMs for Fontconfig's rendering
37380	parameters from here ...
37381	* src/ftfont.c (syms_of_ftfont): ... to here.
37382
37383	* src/ftfont.c (ftfont_open, ftfont_open2): Undo introduction of
37384	bitmap_strike_index.  Merge functions into ftfont_open.
37385
37386	* src/ftcrfont.c (ftcrfont_open): Align code with xftfont_open rather than
37387	ftfont_open.
37388	(ftcrfont_close): Likewise.
37389	(ftcrfont_has_char, ftcrfont_encode_char):
37390	(ftcrfont_otf_capability) [HAVE_LIBOTF]:
37391	(ftcrfont_variation_glyphs) [HAVE_OTF_GET_VARIATION_GLYPHS]: New functions.
37392	(ftcrfont_driver): Register them.
37393	(ftcrfont_get_bitmap, ftcrfont_anchor_point):
37394	(ftcrfont_shape) [HAVE_M17N_FLT && HAVE_LIBOTF]: Use bitmap_position_unit
37395	instead of bitmap_strike_index to screen bitmap fonts.
37396	(ftcrfont_get_bitmap, ftcrfont_anchor_point):
37397	(ftcrfont_otf_capability) [HAVE_LIBOTF]:
37398	(ftcrfont_shape) [HAVE_M17N_FLT && HAVE_LIBOTF]:
37399	(ftcrfont_variation_glyphs) [HAVE_OTF_GET_VARIATION_GLYPHS]: Temporarily
37400	assign ftcrfont_info->ft_size and call corresponding ftfont functions.
37401	(ftcrfont_draw): Don't flush cairo surface when exporting.
37402
374032019-05-22  Basil L. Contovounesios  <contovob@tcd.ie>
37404
37405	Fix url-copy-file argument handling
37406
37407	For discussion, see the following thread:
37408	https://lists.gnu.org/archive/html/emacs-devel/2019-05/msg00500.html
37409	* lisp/url/url-handlers.el: Update autoloaded docstrings.
37410	Quote function symbols as such.
37411	(url-handler-regexp): Make grouping construct shy.
37412	(url-file-handler, url-insert-buffer-contents)
37413	(url-handlers-create-wrapper, url-handlers-set-buffer-mode):
37414	Simplify.
37415	(url-file-handler-identity): Clarify calling convention.
37416	(file-name-absolute-p, url-file-local-copy): Mark ignored arguments
37417	as such.
37418	(url-handler-directory-file-name): Prefer string comparison over
37419	regexp match where either will do.
37420	(url-copy-file): Handle integer as third argument as per copy-file.
37421
374222019-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
37423
37424	* lisp/textmodes/sgml-mode.el: Fix lone `>` in sgml text
37425
37426	(sgml--syntax-propertize-ppss):New variable and function.
37427	(sgml-syntax-propertize-rules): Use it.
37428	Don't ignore quotes not followed by a matching quote or a '>' or '<'.
37429	(sgml-syntax-propertize): Set up sgml--syntax-propertize-ppss.
37430
37431	* test/lisp/textmodes/sgml-mode-tests.el (sgml-tests--quotes-syntax):
37432	Add test for lone '>'.
37433
374342019-05-22  Dmitry Gutov  <dgutov@yandex.ru>
37435
37436	Make xref-find-definitions more customizable
37437
37438	* lisp/progmodes/xref.el (xref--show-defs-buffer): New function.
37439	Move a bit of logic from xref--show-defs to make it more
37440	customizable.
37441	(xref--push-markers): New function, extracted from
37442	xref--show-xrefs.
37443	(xref-show-definitions-function): Set to the new function.
37444
374452019-05-22  Dmitry Gutov  <dgutov@yandex.ru>
37446
37447	Separate xref-find-definitions' behavior from other commands
37448
37449	* lisp/progmodes/xref.el (xref-show-definitions-function):
37450	New variable.
37451	(xref--show-defs): Split off from xref--show-xrefs.
37452	(xref--find-definitions): Use it.
37453	(xref--not-found-error): New function.
37454	(xref--show-xrefs): Simplify.  Show the list buffer even when
37455	there is just one item in the list.  Remove the last argument.
37456
37457	* lisp/dired-aux.el (dired-do-find-regexp): Update accordingly.
37458
374592019-05-22  Paul Eggert  <eggert@cs.ucla.edu>
37460
37461	Remove fixnum restriction on some display vars
37462
37463	This is a minor patch to remove some fixnum restrictions.
37464	Many more such patches are needed, but one thing at a time.
37465	* doc/emacs/custom.texi (Examining): Update fill-column example.
37466	* src/buffer.c (fill-column, left-margin, tab-width)
37467	(buffer-saved-size, left-margin-width, right-margin-width)
37468	(left-fringe-width, right-fringe-width, scroll-bar-width)
37469	(scroll-bar-height, buffer-display-count):
37470	Allow any integer; do not restrict to fixnums.
37471	* src/character.h (SANE_TAB_WIDTH): Do not assume tab_width
37472	is a nonnegative fixnum.
37473	(sanitize_tab_width): Take a Lisp_Object integer, not an
37474	EMACS_INT.  Only use changed.
37475	* src/data.c (store_symval_forwarding): Remove unnecessary
37476	SYMBOLP since the predicate (e.g., Qintegerp) is always a
37477	symbol (leave the test in as an eassert).  Avoid assignments
37478	inside if-conditions.
37479	* src/fileio.c (Fdo_auto_save): Do not assume
37480	buffer-saved-size is a fixnum.  Avoid undefined behavior
37481	on EMACS_INT overflow by multiplying a fixnum by at most 4,
37482	not by at most 13.
37483	* src/window.c (set_window_buffer): When buffer-display-count
37484	is too large for a fixnum, make it a bignum.
37485	* src/xdisp.c (FILL_COLUMN_INDICATOR_NEEDED): Remove macro, ...
37486	(fill_column_indicator_column): ... replacing with this new function.
37487	All uses changed.  The function is a bit pickier, to prevent
37488	problems with non-character fixnums and columns out of range
37489	for int, and to remove the assumption that integers are in
37490	fixnum range.
37491	(append_space_for_newline, extend_face_to_end_of_line):
37492	Avoid undefined behavior with signed integer overflow.
37493	Simplify.
37494
374952019-05-22  Glenn Morris  <rgm@gnu.org>
37496
37497	Merge from origin/emacs-26
37498
37499	b0da915 (origin/emacs-26, emacs-26) Fix a typo in ELisp manual
37500	400907b Add option to disable help completion autoloading (Bug#28607)
37501	122ba16 Don't segfault on force-window-update of deleted window
37502	015b12e Fix typo in ELisp manual
37503	eadf044 Remove repeated function call in picture.el
37504	1228a90 ; Fix mm-destroy-parts docstring typo
37505	6cfd68d Fix Hideshow key binding typo in Emacs manual
37506
375072019-05-22  Glenn Morris  <rgm@gnu.org>
37508
37509	Merge from origin/emacs-26
37510
37511	5d24af8 Remove from docs references to obsolete MULE variables
37512	2bdc419 Do potentially destructive operations in prepare-commit-msg
37513
37514	# Conflicts:
37515	#	src/search.c
37516
375172019-05-21  Alexander Gramiak  <agrambot@gmail.com>
37518
37519	* src/xfont.c (xfont_draw): Allocate the XChar2b array (Bug#35814)
37520
375212019-05-21  Alan Third  <alan@idiocy.org>
37522
37523	Fix some deprecation notices on macOS 10.14
37524
37525	* src/nsimage.m ([EmacsImage setXBMColor:]): Replace colorSpaceName
37526	code.
37527	* src/nsmenu.m ([EmacsDialogPanel initWithContentRect:styleMask:]):
37528	Remove reference to oneShot.
37529	* src/nsterm.h (ns_enable_screen_updates): Remove function prototype.
37530	(NSPasteboardTypeString):
37531	(NSPasteboardTypeTabularText):
37532	(NSControlStateValueOn):
37533	(NSControlStateValueOff):
37534	(NSBezelStyleRounded):
37535	(NSPasteboardTypeURL): Define new names and replace all callers.
37536	* src/nsterm.m ([EmacsColor colorUsingDefaultColorSpace]): Replace
37537	calls to colorUsingColorSpaceName on macOS > 10.7.
37538	([EmacsView performDragOperation:]): Add FIXME about deprecation.
37539	(ns_disable_screen_updates):
37540	(ns_enable_screen_updates): Remove functions and all callers.
37541	(disable_screen_updates_count): Remove variable.
37542	* src/macfont.m (macfont_draw): Use CGContext instead of graphicsPort
37543	on macOS >= 10.10
37544
375452019-05-21  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
37546
37547	Pacify libpng on interlaced images (Bug#35843)
37548
37549	* src/image.c (png_set_interlace_handling) [WINDOWSNT]:
37550	New function to link.
37551	(init_png_functions): Link it.
37552	(png_load_body): Call it before calling png_read_update_info.
37553
375542019-05-21  Paul Eggert  <eggert@cs.ucla.edu>
37555
37556	Remove time-date debugging scaffolding
37557
37558	Problem reported by Lars Ingebrigtsen in:
37559	https://lists.gnu.org/r/emacs-devel/2019-05/msg00721.html
37560	* lisp/calendar/time-date.el (date-to-time):
37561	Use plain condition-case, not condition-case-unless-debug.
37562
375632019-05-21  Federico Tedin  <federicotedin@gmail.com>
37564
37565	Use lexical-binding in tempo.el and add tests
37566
37567	For discussion, see the following thread:
37568	https://lists.gnu.org/archive/html/emacs-devel/2019-05/msg00395.html
37569	* lisp/tempo.el: Use lexical-binding.
37570	(tempo-define-template): Expand documentation to mention
37571	`tempo-user-elements'.
37572	(tempo-local-tags, tempo-collection, tempo-dirty-collection)
37573	(tempo-marks, tempo-match-finder): Define with defvar-local.
37574	(tempo-named-insertions, tempo-region-start, tempo-region-stop): Make
37575	them automatically buffer-local.
37576	* test/lisp/tempo-tests.el: Add tests for tempo.el.
37577
375782019-05-21  Alan Mackenzie  <acm@muc.de>
37579
37580	C Mode: Fix indentation of DEFUN's function's argument list.
37581
37582	Formally, when DEFUNs still used knr argument lists, these were indented by
37583	the syntactic context knr-argdecl-intro (5 columns).  Since this is no longer
37584	the case, we now just use c-basic-offset (2 columns in "gnu" style).
37585
37586	* lisp/progmodes/cc-align.el (c-indent-gnu-DEFUN-intro-cont): Modernize the
37587	indentation.  Amend the doc string accordingly.
37588
375892019-05-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
37590
37591	* src/ftcrfont.c (ftcrfont_open): Skip zero glyph index.
37592
375932019-05-20  Stephen Leake  <stephen_leake@stephe-leake.org>
37594
37595	Revert recent project-find-file change
37596
37597	* lisp/progmodes/project.el (project-find-file): Delete recently added
37598	'filename' arg; just use project-find-file-in.
37599
376002019-05-20  Mattias Engdegård  <mattiase@acm.org>
37601
37602	Allow zero-argument rx `or' and `seq' forms
37603
37604	Make the rx `or' and `seq' forms accept zero arguments to produce a
37605	never-matching regexp and an empty string, respectively.
37606
37607	* lisp/emacs-lisp/rx.el: Require cl-extra.
37608	(rx-constituents, rx-or): Permit zero args.
37609	(rx): Amend doc string for `or' and `seq'.
37610	* test/lisp/emacs-lisp/rx-tests.el (rx-or, rx-seq): Test the change.
37611	* etc/NEWS (Changes in Specialized Modes and Packages): Mention the change.
37612
376132019-05-20  Mattias Engdegård  <mattiase@acm.org>
37614
37615	Revert "Allow zero-argument rx `or' and `seq' forms"
37616
37617	This reverts commit b552fc05c231ca6800330a318d3a74ddd0f5a13c.
37618	It caused a bootstrapping failure which I have yet to resolve - sorry.
37619
376202019-05-20  Basil L. Contovounesios  <contovob@tcd.ie>
37621
37622	Improve C and Elisp Git diff hunk headers
37623
37624	For discussion, see the following threads:
37625	https://lists.gnu.org/archive/html/emacs-devel/2019-03/msg00457.html
37626	https://lists.gnu.org/archive/html/emacs-devel/2019-05/msg00369.html
37627
37628	* autogen.sh: Extend the built-in Git xfuncname pattern 'cpp' to
37629	match preprocessor and DEFUN macros, and the 'elisp' pattern to
37630	match cl-lib and other top-level defuns.
37631
376322019-05-20  Stefan Kangas  <stefankangas@gmail.com>
37633
37634	Use lexical-binding in delim-col.el and add tests
37635
37636	Thanks to Basil L. Contovounesios for additional cleanups.
37637	For discussion, see the following thread:
37638	https://lists.gnu.org/archive/html/emacs-devel/2019-05/msg00177.html
37639
37640	* lisp/delim-col.el: Use lexical-binding.
37641
37642	* test/lisp/delim-col-tests.el: New file.
37643	(delim-col-tests-delimit-colummns-before-after)
37644	(delim-col-tests-delimit-columns)
37645	(delim-col-tests-delimit-columns-format/nil)
37646	(delim-col-tests-delimit-columns-format/padding)
37647	(delim-col-tests-delimit-columns-format/separator)
37648	(delim-col-tests-delimit-columns-separator)
37649	(delim-col-tests-delimit-columns-str-before-after)
37650	(delim-col-tests-delimit-columns-str-separator)
37651	(delim-col-tests-delimit-rectangle): New unit tests.
37652
376532019-05-20  Alan Mackenzie  <acm@muc.de>
37654
37655	CC Mode: Remove unused code from c-maybe-re-mark-raw-string
37656
37657	Acknowledge that when the function is called, it is always at the start of a
37658	string, never in the middle or at the end of one.
37659
37660	* lisp/progmodes/cc-engine.el (c-maybe-re-mark-raw-string): Reformulate the
37661	cond form into a `when' form, with all but the first arm of the cond
37662	discarded.
37663
376642019-05-20  Lars Ingebrigtsen  <larsi@gnus.org>
37665
37666	w32--os-description: Fix previous change
37667
37668	* lisp/w32-fns.el (w32--os-description): Fix inadvertant "o" added
37669	to the end of the function name in the previous patch (bug#35807).
37670
376712019-05-20  Lars Ingebrigtsen  <larsi@gnus.org>
37672
37673	Mark nnheader-cancel-timer as obsolete and adjust callers
37674
37675	* lisp/gnus/nnheader.el (nnheader-cancel-timer)
37676	(nnheader-cancel-function-timers): Mark as obsolete.
37677
37678	* lisp/gnus/nntp.el (nntp-with-open-group-function)
37679	(nntp-async-stop): Adjust caller.
37680
37681	* lisp/gnus/gnus-art.el (gnus-stop-date-timer): Ditto.
37682
37683	* lisp/gnus/gnus-async.el (gnus-async-prefetch-next): Ditto.
37684
37685	* lisp/gnus/gnus-demon.el (gnus-demon-run-callback)
37686	(gnus-demon-cancel): Ditto.
37687
37688	* lisp/gnus/mail-source.el (mail-source-report-new-mail): Ditto.
37689
37690	* lisp/gnus/nnmaildir.el (nnmaildir-request-accept-article): Ditto.
37691
376922019-05-20  Mattias Engdegård  <mattiase@acm.org>
37693
37694	Allow zero-argument rx `or' and `seq' forms
37695
37696	Make the rx `or' and `seq' forms accept zero arguments to produce a
37697	never-matching regexp and an empty string, respectively.
37698
37699	* lisp/emacs-lisp/rx.el (rx-constituents, rx-or): Permit zero args.
37700	(rx): Amend doc string for `or' and `seq'.
37701	* test/lisp/emacs-lisp/rx-tests.el (rx-or, rx-seq): Test the change.
37702	* etc/NEWS (Changes in Specialized Modes and Packages): Mention the change.
37703
377042019-05-20  Mattias Engdegård  <mattiase@acm.org>
37705
37706	Avoid polling in global-auto-revert-mode (bug#35418)
37707
37708	Make `auto-revert-avoid-polling' have effect in global-auto-revert-mode.
37709	Buffers actually handled by that mode are marked with a non-nil value
37710	of `auto-revert--global-mode'.  When global-auto-revert-mode is
37711	entered, eligible buffers are marked in that way, and hooks are set up
37712	to mark new buffers and take care of buffers whose file names change.
37713	This way the existing poll-avoidance logic can be used, since the
37714	entire set of buffers in auto-revert is known.
37715
37716	A new hook, `after-set-visited-file-name-hook', was added to handle
37717	the case when the file name of a tracked buffer changes.
37718
37719	* lisp/autorevert.el (auto-revert-avoid-polling): Amend doc string.
37720	(auto-revert--global-mode): New buffer-local variable.
37721	(global-auto-revert-mode): Mark existing buffers and set up hooks when
37722	mode is entered; do the opposite when exited.
37723	(auto-revert--global-add-current-buffer)
37724	(auto-revert--global-adopt-current-buffer)
37725	(auto-revert--set-visited-file-name-advice): New functions.
37726	(auto-revert--polled-buffers, auto-revert--need-polling-p)
37727	(auto-revert-notify-handler)
37728	(auto-revert-active-p): Modify logic to cover global-auto-revert-mode.
37729	* lisp/files.el (after-set-visited-file-name-hook): New hook.
37730	(set-visited-file-name-hook): Call new hook.
37731	* test/lisp/autorevert-tests.el (top):  Use lexical-binding.
37732	(auto-revert-test--write-file, auto-revert-test--buffer-string)
37733	(auto-revert-test--wait-for, auto-revert-test--wait-for-buffer-text)
37734	(auto-revert-test05-global-notify): New test.
37735	* doc/lispref/hooks.texi (Standard Hooks):
37736	Mention new hook (in a comment, since it's unclear whether it should
37737	actually be documented here)
37738	* etc/NEWS (Changes in Specialized Modes and Packages): Update entry.
37739
377402019-05-20  Michael Albinus  <michael.albinus@gmx.de>
37741
37742	Fix problems in autorevert-tests
37743
37744	* test/lisp/autorevert-tests.el (auto-revert--deftest-remote):
37745	Fix typo.
37746	(auto-revert-test02-auto-revert-deleted-file): On emba, there are
37747	no stopped events.
37748
377492019-05-19  Paul Eggert  <eggert@cs.ucla.edu>
37750
37751	Fixes for "Maintainer:" and related lines
37752
37753	Mostly, this just removes "Maintainer: emacs-devel@gnu.org" lines,
37754	which are not that useful.  It also cleans up and regularizes a
37755	few similar lines.
37756
377572019-05-19  Alexander Gramiak  <agrambot@gmail.com>
37758
37759	Use HAVE_WINDOW_SYSTEM over HAVE_X11 || HAVE_NTGUI || HAVE_NS
37760
37761	* src/keyboard.c (kbd_buffer_get_event, make_lispy_event): Use
37762	HAVE_WINDOW_SYSTEM.
37763
377642019-05-19  Alexander Gramiak  <agrambot@gmail.com>
37765
37766	Introduce Emacs_Pix_Container and Emacs_Pix_Context typedefs
37767
37768	Emacs_Pix_Container is a pointer to a struct representing pixmap data
37769	on the backend.  Emacs_Pix_Context is the context for the
37770	bitmap/pixmap on the backend.  Only w32 currently makes this
37771	distinction; they are otherwise the same type.
37772
37773	* src/dispextern.h: Remove XImagePtr in favor of
37774	using XImage* directly. Rename XImagePtr_or_DC to Emacs_Pix_Context.
37775	[HAVE_X_WINDOWS] Alias Emacs_Pix_Container and
37776	Emacs_Pix_Context to XImage*.
37777	[HAVE_NS] Alias Emacs_Pix_Container and Emacs_Pix_Context to trivial
37778	Emacs_Pixmap definition.
37779	[HAVE_NTGUI]: Alias Emacs_Pix_Container to XImage* and
37780	Emacs_Pix_Context to HDC.
37781
37782	* src/dispextern.h:
37783	* src/image.c: Use Emacs_Pix_Container over XImagePtr and
37784	Emacs_Pix_Context over XImagePtr_or_DC.
37785
377862019-05-19  Alexander Gramiak  <agrambot@gmail.com>
37787
37788	Replace XChar2b with unsigned in all font backends
37789
37790	The xfont backend using XChar2b in its API doesn't mean that we should
37791	use it everywhere else.
37792
37793	* src/dispextern.h (glyph_string):
37794	* src/ftcrfont.c (ftcrfont_draw):
37795	* src/ftxfont.c (ftxfont_draw):
37796	* src/w32term.c (w32_draw_glyphless_glyph_string_foreground):
37797	* src/xdisp.c (init_glyph_string, get_char_face_and_encoding)
37798	(get_glyph_face_and_encoding, get_char_glyph_code)
37799	(fill_gstring_glyph_string, fill_stretch_glyph_string)
37800	(normal_char_ascent_descent, gui_get_glyph_overhangs)
37801	(compute_overhangs_and_x, gui_produce_glyphs):
37802	* src/xfont.c (xfont_get_pcm, xfont_chars_supported, xfont_open)
37803	(xfont_encode_char, xfont_text_extents, xfont_draw)
37804	* src/xftfont.c (xftfont_draw):
37805	* src/xterm.c (x_compute_glyph_string_overhangs)
37806	(x_draw_glyphless_glyph_string_foreground): Use unsigned over XChar2b.
37807
37808	* src/nsgui.h:
37809	* src/w32gui.h:
37810	* src/xterm.h: Remove XChar2b, STORE_XCHAR2B, XCHAR2B_BYTE1, and
37811	XCHAR2B_BYTE2 typedefs and macros.
37812
37813	* src/font.h (font_driver):
37814	(ftfont_text_extents)
37815	* src/ftcrfont.c (ftcrfont_text_extents):
37816	* src/ftfont.c (ftfont_text_extents):
37817	* src/macfont.m (macfont_text_extents):
37818	* src/nsfont.m (nsfont_text_extents):
37819	* src/w32font.h (w32_font_text_extents):
37820	* src/font.c (xfont_text_extents):
37821	* src/xftfont.c (xftfont_text_extents): Make code parameter const.
37822
378232019-05-19  Alexander Gramiak  <agrambot@gmail.com>
37824
37825	Introduce Emacs_GC struct and typedef
37826
37827	* src/dispextern.h [HAVE_X_WINDOWS]: Alias Emacs_GC to XGCValues.
37828	[!HAVE_X_WINDOWS]: Define Emacs_GC, GCForeground, and GCBackground.
37829
37830	* src/nsgui.h:
37831	* src/w32gui.h:Remove obsolete XGCValues, GC, GCForeground,
37832	GCBackground, and GCFont definitions.
37833
37834	* src/w32fns.c (w32_make_gc): Do not set unused font field.
37835
37836	* src/w32term.c: Use Emacs_GC over XGCValues. Do not set unused font
37837	field.
37838
37839	* src/xfaces.c: Use Emacs_GC over XGCValues and GC.
37840
378412019-05-19  Alexander Gramiak  <agrambot@gmail.com>
37842
37843	Introduce Emacs_Rectangle struct and typedef
37844
37845	* src/dispextern.h [HAVE_X_WINDOWS]: Alias Emacs_Rectangle to
37846	XRectangle.
37847	[!HAVE_X_WINDOWS]: Define Emacs_Rectangle struct.
37848	Use Emacs_Rectangle over XRectangle.
37849
37850	* src/frame.h (MonitorInfo):
37851	* src/msdos.h:
37852	* src/w32term.c:
37853	* src/xdisp.c: Use Emacs_Rectangle over XRectangle.
37854
37855	* src/nsgui.h:
37856	* src/w32gui.h: Remove old XRectangle structs.
37857
37858	* src/xdisp.c:
37859	* src/nsgui.h:
37860	* src/w32gui.h: Rename CONVERT_FROM_XRECT and CONVERT_TO_XRECT to
37861	CONVERT_FROM_EMACS_RECT and CONVERT_TO_EMACS_RECT respectively.
37862
378632019-05-19  Alexander Gramiak  <agrambot@gmail.com>
37864
37865	Introduce Emacs_Pixmap typedef
37866
37867	* src/dispextern.h [HAVE_X_WINDOWS]: Alias Emacs_Pixmap to Pixmap.
37868	(image, x_kill_gs_process): Use Emacs_Pixmap over Pixmap.
37869
37870	* src/image.c:
37871
37872	* src/nsgui.h:
37873	* src/nsterm.m:
37874	* src/termhooks.h:
37875	* src/w32gui.h:
37876	* src/w32term.c:
37877	* src/w32term.h:
37878	* src/xterm.c (x_free_pixmap): Use Emacs_Pixmap over Pixmap.
37879
37880	* src/w32gui.h: Remove unused typedef Bitmap.
37881
378822019-05-19  Alexander Gramiak  <agrambot@gmail.com>
37883
37884	Introduce Emacs_Cursor typedef
37885
37886	* src/dispextern.h [HAVE_X_WINDOWS]: Define Emacs_Cursor alias. Move
37887	the No_Cursor definition from xterm.h.
37888	(redisplay_interface): Use Emacs_Cursor over Cursor.
37889
37890	* src/nsgui.h:
37891	* src/nsterm.h:
37892	* src/nsterm.m:
37893	* src/w32gui.h:
37894	* src/w32term.c:
37895	* src/xdisp.c:
37896	* src/xterm.c (x_define_frame_cursor): Use Emacs_Cursor over Cursor.
37897
378982019-05-19  Alexander Gramiak  <agrambot@gmail.com>
37899
37900	Introduce Emacs_Color struct and typedef
37901
37902	This avoids clashing with the XColor struct from X.
37903
37904	* src/dispextern.h [HAVE_X_WINDOWS]: Define Emacs_Color alias.
37905	[!HAVE_X_WINDOWS]: Rename XColor compatibility struct to
37906	Emacs_Color. Remove unused fields.
37907
37908	* src/gtkutil.c:
37909	* src/gtkutil.h:
37910	* src/image.c:
37911	* src/nsterm.h:
37912	* src/nsterm.m:
37913	* src/termhooks.h:
37914	* src/w32fns.c:
37915	* src/w32term.c:
37916	* src/w32term.h:
37917	* src/xfaces.c:
37918	* src/xfns.c:
37919	* src/xterm.h: Use Emacs_Color over XColor outside of X-specific
37920	sections.
37921
379222019-05-19  Mattias Engdegård  <mattiase@acm.org>
37923
37924	Comment out inexplicable condition in filenotify
37925
37926	* lisp/filenotify.el (file-notify-callback):
37927	Comment out condition that does not seem to make any sense. All it
37928	seems to do is allowing notifications for files on the form DIR/X/X
37929	when we really just are watching DIR/X/Y.
37930
379312019-05-19  Juri Linkov  <juri@linkov.net>
37932
37933	* lisp/vc/vc-dispatcher.el (vc-do-command): Let-bind inhibit-message to t
37934
37935	in active minibuffer.  (Bug#34939)
37936
379372019-05-19  Juri Linkov  <juri@linkov.net>
37938
37939	Publicize behavior of log-view-diff at beginning/end of active region
37940
37941	* lisp/vc/log-view.el (log-view-diff, log-view-diff-changeset):
37942	* doc/emacs/maintaining.texi (VC Change Log): Document behavior of
37943	log-view-diff at the beginning and the end of the log buffer
37944	when the region is active.  (Bug#35624)
37945
37946	* lisp/vc/vc-git.el (vc-git-print-log): Insert newline at the
37947	beginning to enable the feature of diffing with the working revision.
37948
379492019-05-19  Lars Ingebrigtsen  <larsi@gnus.org>
37950
37951	cus-edit.el: Remove XEmacs compat code
37952
37953	* lisp/cus-edit.el (custom-browse-insert-prefix): Remove XEmacs
37954	compat code and make obsolete.
37955	(custom-group-value-create): Use `insert' directly.
37956
37957	* lisp/emacs-lisp/elint.el (elint-check-conditional-form): Don't
37958	refer to function that doesn't have an if any more.
37959
379602019-05-19  Lars Ingebrigtsen  <larsi@gnus.org>
37961
37962	bs.el: Remove XEmacs compat code
37963
37964	* lisp/bs.el (bs-mode-font-lock-keywords): Remove XEmacs compat code.
37965	(bs-mode-map): Ditto.
37966
379672019-05-19  Lars Ingebrigtsen  <larsi@gnus.org>
37968
37969	arc-mode.el: Remove XEmacs compat code
37970
37971	* lisp/arc-mode.el (archive-mode-map): Remove XEmacs compat code.
37972	(archive-summarize-files): Ditto.
37973
379742019-05-19  Lars Ingebrigtsen  <larsi@gnus.org>
37975
37976	rfc2104.el: Remove XEmacs compat code.
37977
37978	* lisp/net/rfc2104.el (rfc2104-string-make-unibyte): Remove XEmacs
37979	  compat code.
37980
379812019-05-19  Lars Ingebrigtsen  <larsi@gnus.org>
37982
37983	(mml-generate-mime-1): Remove XEmacs compat code
37984
37985	* lisp/gnus/mml.el (mml-generate-mime-1): Remove XEmacs compat code.
37986
379872019-05-19  Stephen Leake  <stephen_leake@stephe-leake.org>
37988
37989	Minor updates to project.el
37990
37991	* lisp/progmodes/project.el (project-find-file): Add optional 'filename' arg.
37992	(project--completing-read-strict): Ignore 'default' set to empty string.
37993
379942019-05-19  Eric Abrahamsen  <eric@ericabrahamsen.net>
37995
37996	Fix Gnus group sorting to use gnus-group-list
37997
37998	* lisp/gnus/gnus-group.el (gnus-group-sort-flat): As
37999	  gnus-newsrc-hashtb is now a real (unsorted) hash table, use
38000	  gnus-group-list to maintain group sort order.
38001	  (gnus-group-sort-selected-flat): Ditto.
38002	* lisp/gnus/gnus-start.el (gnus-subscribe-alphabetically): Simplify
38003	  function using seq-find.
38004	  (gnus-subscribe-killed, gnus-subscribe-zombies): Use cl-pushnew to
38005	  avoid adding duplicates (can happen when un/subscribing multiple
38006	  times to one group).
38007
380082019-05-19  Lars Ingebrigtsen  <larsi@gnus.org>
38009
38010	Remove usage of string-to-multibyte from arc-mode.el
38011
38012	* lisp/arc-mode.el (arc-insert-unibyte): Rename from
38013	insert-unibyte, make into a function, and remove the superfluous
38014	string-to-multibyte.  Change callers throughout the file.
38015
380162019-05-19  Paul Eggert  <eggert@cs.ucla.edu>
38017
38018	* doc/lispintro/emacs-lisp-intro.texi: Remove euphemism.
38019
380202019-05-19  Noam Postavsky  <npostavs@gmail.com>
38021
38022	Fix dired-omit-files regexp (Bug#35668)
38023
38024	* lisp/dired-x.el (dired-omit-files): Match beginning and end of
38025	string, rather than beginning and end of line.
38026
380272019-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
38028
38029	* lisp/progmodes/hideshow.el: Simplify mouse binding; Use lexical-binding
38030
38031	(hs-set-up-overlay, hs-adjust-block-beginning): Use non-nil default for
38032	function variables, so `add-function` can be used on them.
38033	(hs-toggle-hiding): Make it work for mouse bindings as well.
38034	(hs-minor-mode-map): Use it for the mouse binding.
38035	(hs-grok-mode-type): Use bound-and-true-p.
38036	(hs-life-goes-on): Use `declare` for the debug spec.
38037	(hs-mouse-toggle-hiding): Make it an obsolete alias.
38038
380392019-05-19  Michael Albinus  <michael.albinus@gmx.de>
38040
38041	* test/lisp/autorevert-tests.el (auto-revert--deftest-remote):
38042
38043	Do not handle errors.
38044
380452019-05-19  Martin Rudalics  <rudalics@gmx.at>
38046
38047	New buffer display action function 'display-buffer-in-direction'
38048
38049	* lisp/window.el (windows-sharing-edge)
38050	(window--try-to-split-window-in-direction)
38051	(display-buffer-in-direction): New functions.
38052	* doc/lispref/windows.texi (Buffer Display Action Functions):
38053	Describe new action function 'display-buffer-in-direction'.
38054	(Buffer Display Action Alists): Describe new entry 'direction'.
38055	Amend description of 'window' entry.
38056	* etc/NEWS: Mention 'display-buffer-in-direction' and 'direction'
38057	and 'window' action alist entries.
38058
380592019-05-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
38060
38061	Avoid triple buffering with Xdbe in cairo
38062
38063	* src/xterm.h (struct x_output): Remove member cr_surface.
38064	Add members cr_surface_desired_width and cr_surface_desired_height.
38065	(x_cr_destroy_frame_context) [USE_CAIRO]: Add extern.
38066
38067	* src/xterm.c (x_free_cr_resources): Remove function.
38068	(FRAME_CR_SURFACE) [USE_CAIRO]: Remove macro.
38069	(FRAME_CR_SURFACE_DESIRED_WIDTH, FRAME_CR_SURFACE_DESIRED_HEIGHT) [USE_CAIRO]:
38070	New macros.
38071	(x_cr_destroy_frame_context) [USE_CAIRO]: Rename from x_cr_destroy_surface.
38072	All Uses changed.  Don't use FRAME_CR_SURFACE.  Make non-static.
38073	(x_cr_update_surface_desired_size) [USE_CAIRO]: New function.
38074	(x_begin_cr_clip) [USE_CAIRO]: Create Xlib surface if Xdbe is in use.
38075	Use FRAME_CR_SURFACE_DESIRED_WIDTH and FRAME_CR_SURFACE_DESIRED_HEIGHT.
38076	(x_end_cr_clip) [USE_CAIRO]: Call x_mark_frame_dirty if Xdbe is in use.
38077	(x_cr_draw_frame, x_cr_export_frames) [USE_CAIRO]: Save and restore cairo
38078	context instead of freeing and clearing it.
38079	(x_update_begin) [USE_CAIRO]: Don't create cairo surface here.
38080	(show_back_buffer) [USE_CAIRO]: Call cairo_surface_flush before swapping.
38081	(x_update_end) [USE_CAIRO]: Don't copy image surface if Xdbe is in use.
38082	Get image surface by cairo_get_target instead of FRAME_CR_SURFACE.
38083	(x_scroll_run) [USE_CAIRO]: Use XCopyArea if Xdbe is in use.
38084	(handle_one_xevent) [USE_CAIRO] <ConfigureNotify>: Call
38085	x_cr_update_surface_desired_size instead of x_cr_destroy_surface.
38086	(x_free_frame_resources) [USE_CAIRO]: Call x_cr_destroy_frame_context instead
38087	of x_free_cr_resources.
38088
38089	* src/xfns.c (set_up_x_back_buffer, tear_down_x_back_buffer) [USE_CAIRO]:
38090	Call x_cr_destroy_frame_context.
38091
380922019-05-18  Stefan Monnier  <monnier@iro.umontreal.ca>
38093
38094	* lisp/emacs-lisp/package.el: Fix decoding of downloaded files
38095
38096	This is a different fix for bug#34909, which should also fix bug#35739.
38097
38098	Our downloading code used to automatically decode the result according
38099	to the usual heuristics for files.  This caused problems when we later
38100	needed to save the data in a file that needed to be byte-for-byte
38101	equal to the original in order to pass the signature verification,
38102	especially because we didn't keep track of which coding-system was
38103	used to decode the data.
38104
38105	(package--unless-error): New macro extracted from
38106	package--with-response-buffer-1, so that we can specify edebug and
38107	indent specs.
38108	(package--with-response-buffer-1): Use it.  More importantly, change
38109	code so it runs `body` in a unibyte buffer with undecoded data.
38110	(package--download-one-archive): Don't encode with utf-8 since the data
38111	is not decoded yet.
38112	(describe-package-1): Explicitly decode the readem.txt files here.
38113
38114	* lisp/url/url-handlers.el (url-insert-file-contents): Use it.
38115	(url-insert): Don't decode if buffer is unibyte.
38116
38117	* lisp/url/url-http.el (url-http--insert-file-helper): New function,
38118	extracted from url-insert-file-contents.
38119
381202019-05-18  Stefan Monnier  <monnier@iro.umontreal.ca>
38121
38122	* lisp/emacs-lisp/package.el: Reduce macrology in ...with-response-buffer
38123
38124	(package--with-response-buffer-1): New function, extracted from
38125	package--with-response-buffer.
38126	(package--with-response-buffer): Use it.
38127
381282019-05-18  Mattias Engdegård  <mattiase@acm.org>
38129
38130	Fix broken logic in file-notify
38131
38132	* lisp/filenotify.el (file-notify-callback):
38133	Repair warped condition that didn't match rename-to/from events correctly.
38134
381352019-05-18  Paul Eggert  <eggert@cs.ucla.edu>
38136
38137	* lisp/textmodes/texinfmt.el: Chassell is no longer maintainer.
38138
381392019-05-18  Jean-Christophe Helary  <brandelune@gmail.com>
38140
38141	Bob Chassell passed away
38142
38143	* doc/lispintro/emacs-lisp-intro.texi (About the Author): Update.
38144
381452019-05-18  Paul Eggert  <eggert@cs.ucla.edu>
38146
38147	Fix recent Tramp typo that broke the build
38148
38149	‘make bootstrap’ without this patch should reproduce the problem.
38150	* lisp/net/tramp-gvfs.el (tramp-gvfs-enabled):
38151	Autoload zeroconf-init.
38152
381532019-05-18  Basil L. Contovounesios  <contovob@tcd.ie>
38154
38155	Remove XEmacs audio checks from mm-decode.el
38156
38157	For discussion, see the following threads:
38158	https://lists.gnu.org/archive/html/emacs-devel/2019-03/msg01087.html
38159	https://lists.gnu.org/archive/html/emacs-devel/2019-05/msg00584.html
38160	* lisp/gnus/mm-decode.el (mm-inline-media-tests): Remove no-op media
38161	tests for XEmacs features.
38162
381632019-05-18  Paul Eggert  <eggert@cs.ucla.edu>
38164
38165	For SVG, 8192 is the new 256
38166
38167	Prefer librsvg for display of splash.svg
38168	When both librsvg and Imagemagick are available, Emacs should
38169	prefer librsvg to render SVG images.  However, Emacs was using
38170	Imagemagick to render its own splash.svg file because
38171	image-type-from-file-header returned nil for that file.
38172	* lisp/image.el (image-type-from-buffer)
38173	(image-type-from-file-header): Look at the first 8192 bytes of
38174	the image, not just the first 256.  For Emacs’s own splash.svg
38175	file, image-type-header-regexps needs to look at 939 bytes.
38176	8192 bytes is a reasonable number nowadays given typical file
38177	system design.
38178	* test/lisp/image-tests.el (image-tests--emacs-images-directory):
38179	New contant.
38180	(image-type-from-file-header-test): New test.
38181
381822019-05-18  Michael Albinus  <michael.albinus@gmx.de>
38183
38184	Bug#35769
38185
38186	* lisp/net/tramp-sh.el: (tramp-maybe-open-connection):
38187	Arrange `process-environment' that it doesn't work for local
38188	processes.  (Bug#35769)
38189
381902019-05-18  Alan Mackenzie  <acm@muc.de>
38191
38192	CC Mode: Handle several consecutive noise macros in declaration contexts.
38193
38194	In the bug scenario, the second and subsequent noise macros with parentheses
38195	were getting font-lock-type-face.
38196
38197	* lisp/progmodes/cc-engine.el (c-end-of-token)
38198	(c-forward-noise-clause-not-macro-decl): New functions.
38199	(c-find-decl-prefix-search): Handle noise macros by skipping over them.
38200	(c-forward-decl-or-cast-1): In the loop checking for types, skip over all
38201	consecutive noise macros with parens, not just one.
38202
382032019-05-18  Bastien  <bzg@gnu.org>
38204
38205	Fix missing declaration in gnus-sum.el
38206
38207	* lisp/gnus/gnus-sum.el (gnus-tmp-name): Declare var.
38208
382092019-05-18  Eli Zaretskii  <eliz@gnu.org>
38210
38211	Fix display of images on MS-Windows broken by a recent commit
38212
38213	* src/image.c (initialize_image_type): Test if the type is in
38214	Vlibrary_cache up front, and return true without calling the
38215	'init' method if the type was already initialized.
38216
382172019-05-18  Michael Albinus  <michael.albinus@gmx.de>
38218
38219	Suppress compiler warnings for older Emacsen in tramp-tests.el
38220
38221	* test/lisp/net/tramp-tests.el (tramp-test17-insert-directory):
38222	Add error name to test.
38223	(tramp-test30-make-process, tramp-test45-unload):
38224	Suppress compiler warnings from older Emacsen.
38225
382262019-05-18  Michael Albinus  <michael.albinus@gmx.de>
38227
38228	Require less packages in Tramp
38229
38230	* lisp/net/tramp-compat.el (format-spec): Do not require advice, cl-lib,
38231	custom, password-cache, timer and ucs-normalize.
38232
38233	* lisp/net/tramp-gvfs.el: Do not require zeroconf.  Declare
38234	zeroconf-* functions.
38235	(tramp-gvfs-enabled): Autoload `zeroconf-init'.
38236
38237	* lisp/net/tramp-sh.el: Do not require dired.
38238
38239	* lisp/net/tramp.el (tramp-get-debug-buffer): Do not require outline.
38240	(tramp-file-name-for-operation): Extend docstring.
38241	(tramp-parse-netrc): Do not require netrc.  Autoload `netrc-parse'.
38242
382432019-05-18  Mattias Engdegård  <mattiase@acm.org>
38244
38245	Don't use file notification on non-file buffers
38246
38247	Allow non-file buffers to declare that notification on their
38248	default-directory is sufficient to know when auto-revert updates are
38249	required by setting the new variable `buffer-auto-revert-by-notification'
38250	to non-nil.  If nil, the default, then auto-revert will poll
38251	those buffers instead. (bug#35418).
38252	Currently, only Dired sets that variable.
38253
38254	* lisp/autorevert.el (auto-revert-buffers):
38255	Modify condition for using notification.
38256	* lisp/files.el (buffer-auto-revert-by-notification): New variable.
38257	* lisp/dired.el (dired-mode): Set buffer-auto-revert-by-notification.
38258	* doc/emacs/arevert-xtra.texi (Non-File Buffers): Document new variable.
38259	* etc/NEWS (Changes in Specialized Modes and Packages): Describe new variable.
38260
382612019-05-18  Lars Ingebrigtsen  <larsi@gnus.org>
38262
38263	(epa-file-decode-and-insert): Byte compilation warning fix
38264
38265	* lisp/epa-file.el (epa-file-decode-and-insert): Remove
38266	superfluous call to `string-to-multibyte string'.
38267
382682019-05-18  Michael Albinus  <michael.albinus@gmx.de>
38269
38270	* lisp/net/tramp.el (tramp-interrupt-process): Return proper value.
38271
382722019-05-18  Eli Zaretskii  <eliz@gnu.org>
38273
38274	Remove usage of string-as-unibyte in arc-mode
38275
38276	* lisp/arc-mode.el (archive-l-e): Encode with utf-8-emacs-unix
38277	instead of using string-as-unibyte.
38278
382792019-05-18  Eli Zaretskii  <eliz@gnu.org>
38280
38281	Fix visiting and saving UTF-16 encoded XML files
38282
38283	* lisp/international/mule.el (sgml-xml-auto-coding-function):
38284	When the 'enncoding' tag specifies a UTF-16 encoding, enforce
38285	saving the buffer with BOM, per the XML spec.
38286	(xml-find-file-coding-system): Recognize UTF-16 encodings with
38287	BOM.  (Bug#35766)  (Bug#8282)
38288	* lisp/international/mule-cmds.el (select-safe-coding-system):
38289	Don't consider UTF-16 encodings with and without BOM as
38290	"different", so as not to annoy users with redundant questions
38291	about mismatch between the XML/SGML header and the selected
38292	explicit encoding.
38293
382942019-05-17  Lars Ingebrigtsen  <larsi@gnus.org>
38295
38296	Mitigate byte-compile warning in arc-mode
38297
38298	* lisp/arc-mode.el (byte-after): Remove defsubst.
38299	Replace all calls to byte-after with get-byte throughout the file,
38300	because byte-after gave compilation warnings.
38301
383022019-05-17  Eli Zaretskii  <eliz@gnu.org>
38303
38304	(hexl-insert-multibyte-char): Avoid using `string-as-unibyte'
38305
38306	* lisp/hexl.el (hexl-insert-multibyte-char): Avoid using
38307	`string-as-unibyte' in the fallback case.
38308
383092019-05-17  Lars Ingebrigtsen  <larsi@gnus.org>
38310
38311	(dirtrack-toggle, dirtrackp): Remove obsolete aliases
38312
38313	* lisp/dirtrack.el (dirtrack-toggle, dirtrackp): Remove
38314	function/variable aliases declared obsolete in Emacs 23.1 (and
38315	that issued a byte-compile warning).
38316
383172019-05-17  Paul Eggert  <eggert@cs.ucla.edu>
38318
38319	Clean up and simplify image-type setup
38320
38321	This also fixes an unlikely hang involving a circular image
38322	description.
38323	* src/dispextern.h (struct image.type): Now pointer-to-const.
38324	* src/image.c (struct image_type.init) [!WINDOWSNT]: Omit.
38325	(IMAGE_TYPE_INIT): New macro.
38326	(image_types): Now a small array-of-const, not a pointer.
38327	(CACHE_IMAGE_TYPE): Remove; the code’s simpler without it.
38328	(ADD_IMAGE_TYPE): Remove this macro, replacing with ...
38329	(add_image_type): ... this equivalent function.  All uses changed.
38330	(define_image_type): Remove.  All uses removed.
38331	(valid_image_p): Use FOR_EACH_TAIL_SAFE to avoid Emacs hanging
38332	if the user creates a circular description of an image.
38333	(xbm_type, xpm_type, pbm_type, png_type, jpeg_type, tiff_type)
38334	(gif_type, imagemagick_type, svg_type, gs_type):
38335	Remove; now done by image_types.
38336	(init_imagemagick_functions): Remove decl of nonexistent function.
38337	(gs_clear_image): Remove; all uses replaced by image_clear_image.
38338	(initialize_image_type): New function, which captures a lot
38339	of the previously-scattered WINDOWSNT ifdefs.
38340	(lookup_image_type): Use it.
38341	(reset_image_types): Remove.  All uses removed.
38342	(syms_of_image): Don’t worry about ignoring image_types for
38343	pdumper, since it’s a constant now.
38344
383452019-05-17  Stefan Monnier  <monnier@iro.umontreal.ca>
38346
38347	* lisp/gnus/gnus-sum.el (gnus-tmp-thread): New var
38348
38349	The recent change to use lexical-binding introduced a bug because
38350	gnus-summary-line-format-alist refers to variable `thread` which is now
38351	lexical and hence not available there any more.  Replace it with
38352	a dynamically scoped var `gnus-tmp-thread` as was already done with
38353	all other vars.
38354
38355	(gnus-summary-line-format-alist): Use it instead of `thread`.
38356	(gnus-summary-prepare-threads): Bind it around call to (eval
38357	gnus-summary-line-format-spec).
38358
383592019-05-17  Lars Ingebrigtsen  <larsi@gnus.org>
38360
38361	Move Info-edit-* commands from info.el to obsolete/info-edit.el
38362
38363	* lisp/info.el: Move Info-edit-* commands to obsolete/info-edit.el.
38364
38365	* lisp/obsolete/info-edit.el: New file.
38366
383672019-05-17  Lars Ingebrigtsen  <larsi@gnus.org>
38368
38369	Use cl-assert instead of assert in ps-print.el
38370
38371	* lisp/ps-print.el (ps-begin-job): Use cl-assert instead of assert
38372	and require cl-lib.
38373
383742019-05-17  Lars Ingebrigtsen  <larsi@gnus.org>
38375
38376	(ps-begin-job): Remove two unneeded string-as-unibyte calls
38377
38378	* lisp/ps-print.el (ps-begin-job): Remove two unneeded
38379	string-as-unibyte calls to avoid byte compilation warnings.
38380
383812019-05-17  Eli Zaretskii  <eliz@gnu.org>
38382
38383	Fix a recent commit in select.el
38384
38385	* lisp/select.el (gui-get-selection): Revert a recent
38386	incorrect change.  Add a comment explaining what we are trying
38387	to do with C_STRING and why.
38388	(xselect--encode-string): Add a comment explaining what we are
38389	trying to do with C_STRING and why.
38390
383912019-05-16  Lars Ingebrigtsen  <larsi@gnus.org>
38392
38393	Remove obsolete example functions from imenu.el
38394
38395	* lisp/imenu.el (imenu-example--create-c-index)
38396	(imenu-example--function-name-regexp-c)
38397	(imenu-example--create-lisp-index)
38398	(imenu-example--lisp-extract-index-name): Remove functions (and
38399	internal variables used by those functions) declared obsolete in
38400	Emacs 23.2.  The functions gave compilation warnings.
38401
384022019-05-16  Lars Ingebrigtsen  <larsi@gnus.org>
38403
38404	Remove unused internal function completion-pcm--optimize-pattern
38405
38406	* lisp/minibuffer.el (completion-pcm--optimize-pattern): Remove
38407	unused internal function (that signaled a compilation warning).
38408
384092019-05-16  Stefan Monnier  <monnier@iro.umontreal.ca>
38410
38411	* lisp/gnus: Remove assumptions about mail-header being a vector
38412
38413	Use `mail-header-p` and `make-full-mail-header` instead of `vectorp` and
38414	`vector`, respectively.
38415
38416	* lisp/gnus/message.el (message-cite-original-1, message-reply)
38417	(message-followup):
38418	* lisp/gnus/gnus-sum.el (gnus-get-newsgroup-headers):
38419	Use make-full-mail-header instead of `vector`.
38420	(gnus--dummy-mail-header): New const, using make-full-mail-header.
38421	(gnus-update-summary-mark-positions): Use it instead of
38422	an immediate vector.
38423	(gnus-set-mode-line, gnus-summary-article-pseudo-p)
38424	(gnus-summary-article-subject, gnus-summary-insert-subject)
38425	(gnus-summary-find-subject, gnus-summary-goto-subject)
38426	(gnus-summary-limit-to-age, gnus-summary-find-matching)
38427	(gnus-summary-mark-article-as-unread, gnus-summary-mark-article)
38428	(gnus-summary-save-article):
38429	* lisp/gnus/gnus.el (gnus-news-group-p): Use mail-header-p instead
38430	of vectorp.
38431
384322019-05-16  Lars Ingebrigtsen  <larsi@gnus.org>
38433
38434	Declare fileloop-continue in dired-aux to avoid warning
38435
38436	* lisp/dired-aux.el (fileloop-continue): Declare to avoid
38437	compilation warning.  `fileloop-initialize-search' (used before
38438	-continue) will load fileloop.el.
38439
384402019-05-16  Lars Ingebrigtsen  <larsi@gnus.org>
38441
38442	Avoind string-as-multibyte in ps-output-string-prim
38443
38444	* lisp/ps-print.el (ps-output-string-prim): Avoid
38445	`string-as-multibyte', and encode as utf-8 instead if multibyte.
38446
384472019-05-16  Lars Ingebrigtsen  <larsi@gnus.org>
38448
38449	(gui-get-selection): Avoid using `string-to-multibyte'
38450
38451	* lisp/select.el (gui-get-selection): Avoid using
38452	`string-to-multibyte' -- instead encode as `eight-bit' if the
38453	string is unibyte.
38454
384552019-05-16  Lars Ingebrigtsen  <larsi@gnus.org>
38456
38457	Declare two w32 functions to avoid byte compilation warnings
38458
38459	* lisp/w32-fns.el (w32-version, w32-read-registry): Declare these
38460	functions to avoid byte compilation warnings.  The functions
38461	should be loaded when `w32--os-description' is called, as far as I
38462	can tell.
38463
384642019-05-16  Lars Ingebrigtsen  <larsi@gnus.org>
38465
38466	Remove obsolete epg functions
38467
38468	* lisp/epg.el (epg-start-sign-keys, epg-sign-keys): Remove
38469	functions declared obsolete since Emacs 23.1.
38470
384712019-05-16  Lars Ingebrigtsen  <larsi@gnus.org>
38472
38473	Declare rectangle functions in mouse.el to avoid warnings
38474
38475	* lisp/mouse.el (rectangle-dimensions)
38476	(rectangle-position-as-coordinates, rectangle-intersect-p):
38477	Declare these functions from rect.el to avoid compilation warnings.
38478
384792019-05-16  Stefan Monnier  <monnier@iro.umontreal.ca>
38480
38481	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix docstring of accessors.
38482
384832019-05-16  Stefan Monnier  <monnier@iro.umontreal.ca>
38484
38485	* lisp/gnus/nnheader.el (mail-header-*): Define via cl-defstruct
38486
38487	This also has the side effect that the accessors are now defined as proper
38488	functions rather than as macros, so they can be passed to `mapcar` etc..
38489
38490	* lisp/gnus/nnheader.el (mail-header-number, mail-header-subject)
38491	(mail-header-from, mail-header-date, mail-header-id)
38492	(mail-header-references, mail-header-chars, mail-header-lines)
38493	(mail-header-xref, mail-header-extra): Define via cl-defstruct.
38494	(mail-header-set-number, mail-header-set-subject)
38495	(mail-header-set-from, mail-header-set-date, mail-header-set-id)
38496	(mail-header-set-message-id, mail-header-set-references)
38497	(mail-header-set-chars, mail-header-set-lines, mail-header-set-xref)
38498	(mail-header-set-extra): Remove, use `setf` instead.  All callers adjusted.
38499
38500	* lisp/gnus/gnus-sum.el (gnus-select-newsgroup)
38501	(gnus-summary-pop-limit, gnus-summary-limit-mark-excluded-as-read)
38502	(gnus-summary-find-matching, gnus-find-matching-articles):
38503	* lisp/gnus/gnus-kill.el (gnus-apply-kill-file-internal, gnus-execute):
38504	* lisp/gnus/gnus-score.el (gnus-score-adaptive):
38505	Eta-reduce, now that mail-header-FIELD are functions.
38506
385072019-05-16  Katsumi Yamaoka  <yamaoka@jpl.org>
38508
38509	Fix ffap behavior in the Gnus group buffer (bug#35693)
38510
38511	* lisp/ffap.el (ffap-file-exists-string, ffap-file-at-point):
38512	Don't recognize "" as a path or a file name (bug#35693).
38513
385142019-05-16  Stefan Monnier  <monnier@iro.umontreal.ca>
38515
38516	* lisp/international/mule.el (set-buffer-file-coding-system): Don't burp on iso-2022-7bit
38517
385182019-05-16  Paul Pogonyshev  <pogonyshev@gmail.com>
38519
38520	Make `package' not "uninhibit" messages (Bug#34037)
38521
38522	* lisp/emacs-lisp/package.el: Don't let-bind inhibit-message to a
38523	different value if it was non-nil.
38524
385252019-05-16  Basil L. Contovounesios  <contovob@tcd.ie>
38526
38527	Fix gnus-summary-expand-window placement of point
38528
38529	* lisp/gnus/gnus-win.el (gnus-configure-frame): Replace
38530	switch-to-buffer with pop-to-buffer-same-window to avoid messing
38531	with point. (bug#35613)
38532
385332019-05-16  Basil L. Contovounesios  <contovob@tcd.ie>
38534
38535	Add docstring to project--read-file-cpd-relative
38536
38537	For discussion, see thread starting at:
38538	https://lists.gnu.org/archive/html/emacs-devel/2019-05/msg00460.html
38539	* lisp/progmodes/project.el (project--read-file-cpd-relative):
38540	Describe arglist as promised by user option
38541	project-read-file-name-function.
38542
385432019-05-16  Stefan Monnier  <monnier@iro.umontreal.ca>
38544
38545	* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-test--symbol-macrolet): New test
38546
385472019-05-16  Eric Abrahamsen  <eric@ericabrahamsen.net>
38548
38549	Fix stray call to make-vector
38550
38551	* lisp/gnus/gnus-agent.el (gnus-agent-fetch-group-1): This is meant to
38552	  be a hash table.
38553
385542019-05-16  Stefan Monnier  <monnier@iro.umontreal.ca>
38555
38556	* lisp/emacs-lisp/cl-macs.el (cl--sm-macroexpand) <setq>: Rewrite
38557
38558	The previous code had 2 problems:
38559	- It converted `setq` to `setf` in unrelated cases such as
38560	  (cl-symbol-macrolet ((x 1)) (setq (car foo) bar))
38561	- It macroexpanded places before `setf` had a chance to see if they
38562	  have a gv-expander.
38563
385642019-05-16  Paul Eggert  <eggert@cs.ucla.edu>
38565
38566	Distribute test cases in tarballs by default
38567
38568	* INSTALL, INSTALL.REPO, admin/make-tarball.txt:
38569	Mention ‘make check’.
38570	* configure.ac: Update comment.
38571	* etc/NEWS: Say that tarballs have a test directory.
38572	* make-dist (with_tests): Default to "yes".
38573	Add an option --no-tests to make it "no".
38574
385752019-05-16  Lars Ingebrigtsen  <larsi@gnus.org>
38576
38577	Make shr-rescale-image respect get-buffer-window again
38578
38579	* lisp/net/shr.el (shr-rescale-image): Partially revert previous
38580	change -- ressurrect the check for `get-buffer-window'.
38581
385822019-05-16  Ivan Shmakov  <ivan@siamics.net>
38583
38584	Improve user convenience of the rcirc debug buffer
38585
38586	* lisp/net/rcirc.el (rcirc-debug): Ignore rcirc-debug-buffer read-only
38587	status.  Restore point after insertion unless it was at the end.
38588	Ensure a newline before each [lead].  Replace %Y-%m-%d with the
38589	equivalent %F in format-time-string; remove useless concat.  (Bug#32470)
38590
385912019-05-16  Noam Postavsky  <npostavs@gmail.com>
38592
38593	Accept NO-PROPERTIES in thing-at-point aliases (Bug#35491)
38594
38595	* lisp/thingatpt.el (word-at-point, sentence-at-point): Accept and
38596	pass NO-PROPERTIES to thing-at-point.
38597	* etc/NEWS: Announce change.
38598
385992019-05-15  Michael Albinus  <michael.albinus@gmx.de>
38600
38601	* lisp/net/tramp.el (tramp-yesno-prompt-regexp): Extend.
38602
386032019-05-15  Stefan Monnier  <monnier@iro.umontreal.ca>
38604
38605	* lisp/textmodes/sgml-mode.el (sgml-syntax-propertize-rules): Fix typo
38606
38607	* test/lisp/textmodes/sgml-mode-tests.el (sgml-tests--quotes-syntax):
38608	New corresponding test.
38609
386102019-05-15  Noam Postavsky  <npostavs@gmail.com>
38611
38612	Fix merge of sgml-syntax-propertize-rules
38613
38614	During the merge of emacs-26, the sgml-syntax-propertize-rules part of
38615	2019-01-17 "* lisp/textmodes/sgml-mode.el: Try and fix bug#33887." got
38616	lost in the conflict against 2019-05-09 "Recognize single quote
38617	attribute values in nxml and sgml (Bug#35381)".
38618	* lisp/textmodes/sgml-mode.el (sgml-syntax-propertize-rules): Reapply
38619	the 2019-01-17 change to speed up sgml-syntax-propertize-rules, taking
38620	into account the 2019-05-09 which means we have to handle single
38621	quotes as well.
38622
386232019-05-15  Anders Lindgren  <andlind@gmail.com>
38624
38625	Fix diff-mode face problem when used in terminals (Bug#35695)
38626
38627	In a terminal supporting 256 colors, both diff-added and diff-removed
38628	was mapped to the same greyish color.
38629
38630	* lisp/vc/diff-mode.el: Modify the colors of diff-removed,
38631	  diff-added, diff-refine-removed, and diff-refine-added when
38632	  used in a 256 color environment.
38633
386342019-05-15  Stefan Monnier  <monnier@iro.umontreal.ca>
38635
38636	* lisp/gnus/gnus-sum.el: Use lexical-binding
38637
38638	(gnus-summary-make-menu-bar, gnus-summary-display-make-predicate)
38639	(gnus-summary-refer-thread, gnus-summary-find-matching)
38640	(gnus-summary-edit-article, gnus-summary-sort):
38641	Replace backquoted lambda with closure.
38642	(gnus-summary-article-header): Use define-inline rather than defmacro,
38643	so it's also a function.
38644	(gnus-save-hidden-threads, gnus-summary-iterate, gnus-with-article):
38645	Use `declare`.
38646	(gnus-thread-sort-by-random): Simplify.
38647	(gnus-summary-display-article, gnus-summary-limit-to-address):
38648	Hoist common code outside of `if`.
38649
386502019-05-15  Paul Eggert  <eggert@cs.ucla.edu>
38651
38652	Tune reading of radix integers
38653
38654	This improves the performance of (read "%xFF") by about 25%
38655	on my platform.
38656	* src/lread.c: Include <vla.h>, so that we can better document
38657	buffer sizes of arguments.
38658	(invalid_radix_integer_format, stackbufsize): New constants.
38659	(free_contents): Remove.  All uses removed.
38660	(invalid_radix_integer): New function.
38661	(read_integer): New arg STACKBUF.  Assume radix is in range.
38662	All uses changed.  Use STACKBUF to avoid calling malloc in the
38663	usual case.  Use grow_read_buffer to simplify.
38664	(read1): Tune.  Improve quality of diagnostic when
38665	MOST_POSITIVE_FIXNUM < radix <= EMACS_INT_MAX.
38666
386672019-05-15  Stefan Monnier  <monnier@iro.umontreal.ca>
38668
38669	* lisp/mail/footnote.el (footnote-prefix): Docstring typo.
38670
386712019-05-15  Mattias Engdegård  <mattiase@acm.org>
38672
38673	Add standard unmatchable regexp
38674
38675	Add `regexp-unmatchable' as a standard unmatchable regexp, defined as
38676	"\\`a\\`".  Use it where such a regexp is needed, replacing slower
38677	expressions in several places.
38678	From a suggestion by Philippe Schnoebelen.
38679
38680	* lisp/subr.el (regexp-unmatchable): New defconst.
38681	* etc/NEWS (Lisp Changes): Mention `regexp-unmatchable'.
38682	* doc/lispref/searching.texi (Regexp Functions): Document it.
38683	* lisp/emacs-lisp/regexp-opt.el (regexp-opt)
38684	* lisp/progmodes/cc-defs.el (cc-conditional-require-after-load)
38685	(c-make-keywords-re)
38686	* lisp/progmodes/cc-engine.el (c-beginning-of-statement-1)
38687	(c-forward-<>-arglist-recur, c-forward-decl-or-cast-1)
38688	(c-looking-at-decl-block)
38689	* lisp/progmodes/cc-fonts.el (c-doc-line-join-re)
38690	(c-doc-bright-comment-start-re)
38691	* lisp/progmodes/cc-langs.el (c-populate-syntax-table)
38692	(c-assignment-op-regexp)
38693	(c-block-comment-ender-regexp, c-font-lock-comment-end-skip)
38694	(c-block-comment-start-regexp, c-line-comment-start-regexp)
38695	(c-doc-comment-start-regexp, c-decl-start-colon-kwd-re)
38696	(c-type-decl-prefix-key, c-type-decl-operator-prefix-key)
38697	(c-pre-id-bracelist-key, c-enum-clause-introduction-re)
38698	(c-nonlabel-token-2-key)
38699	* lisp/progmodes/cc-mode.el (c-doc-fl-decl-start, c-doc-fl-decl-end)
38700	* lisp/progmodes/cc-vars.el (c-noise-macro-with-parens-name-re)
38701	(c-noise-macro-name-re, c-make-noise-macro-regexps)
38702	* lisp/progmodes/octave.el (octave-help-mode)
38703	* lisp/vc/vc-bzr.el (vc-bzr-log-view-mode, vc-bzr-revision-completion-table)
38704	* lisp/vc/vc-git.el (vc-git-log-view-mode)
38705	* lisp/vc/vc-hg.el (vc-hg-log-view-mode)
38706	* lisp/vc/vc-mtn.el (vc-mtn-log-view-mode):
38707	Use `regexp-unmatchable'.
38708	* lisp/textmodes/ispell.el (ispell-non-empty-string):
38709	Use `regexp-unmatchable', fixing a broken never-match regexp.
38710
387112019-05-15  John Shahid  <jvshahid@gmail.com>
38712
38713	Avoid infinitly looping in tramp-interrupt-process (bug#35506)
38714
38715	* lisp/net/tramp.el (tramp-interrupt-process): Remove with-timeout.
38716	Instead pass a timeout to tramp-accept-process-output.
38717	tramp-accept-process-output stops timers from running which makes the
38718	with-timeout ineffective.
38719
387202019-05-15  Alan Mackenzie  <acm@muc.de>
38721
38722	CC Mode: fix indentation in switch statement after "case a(1):".
38723
38724	* lisp/progmodes/cc-engine.el (c-beginning-of-statement-1): Enhance the
38725	analysis of case labels to handle parenthesised expressions (e.g. macros).
38726
38727	* lisp/progmodes/cc-langs.el (c-nonlabel-nonparen-token-key): New lang const
38728	and lang var.
38729
387302019-05-15  Lars Ingebrigtsen  <larsi@gnus.org>
38731
38732	Describe error data in url-retrieve better
38733
38734	* lisp/url/url.el (url-retrieve): Describe the error data more in
38735	depth (bug#25735).
38736
387372019-05-14  Lars Ingebrigtsen  <larsi@gnus.org>
38738
38739	Don't have url-basic-auth bug out when called with an URL string
38740
38741	* lisp/url/url-auth.el (url-basic-auth): Pass the parsed URL
38742	object to the prompting function instead of the parameter that's
38743	possibly a string (bug#26708).  Passing url-basic-auth with a
38744	string parameter would fail if passed a non-parsed URL.
38745
387462019-05-14  Lars Ingebrigtsen  <larsi@gnus.org>
38747
38748	Fix obscure HTTP chunked parsing problem
38749
38750	* lisp/url/url-http.el
38751	(url-http-chunked-encoding-after-change-function): Ensure that we
38752	parse the entire initial chunked header as the length (bug#35658).
38753
387542019-05-14  Lars Ingebrigtsen  <larsi@gnus.org>
38755
38756	Indent url-http-chunked-encoding-after-change-function
38757
387582019-05-14  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
38759
38760	Fix url-auth prompts when realm is empty
38761
38762	* lisp/url/url-auth.el (url-get-authentication): When realm is
38763	empty, use the entire URL in the prompt (bug#35688).
38764
387652019-05-14  Lars Ingebrigtsen  <larsi@gnus.org>
38766
38767	Make image scaling work without imagemagick support in eww
38768
38769	* lisp/net/shr.el (shr-rescale-image): Emacs has native image
38770	scaling now, so images can be rescaled without imagemagick
38771	support.
38772
387732019-05-14  Glenn Morris  <rgm@gnu.org>
38774
38775	Merge from origin/emacs-26
38776
38777	02bee78 Let dir locals for more specific modes override those from less
38778	b1235f9 Improve documentation of Hexl mode
38779	32d1813 Fix description of (move-to-column <n> t) when column <n> is ...
38780	0397b7c ; Fix smtpmail-stream-type docstring
38781	7dab3ee Recognize single quote attribute values in nxml and sgml (Bug...
38782	e4cde42 Disable extra display of &#10; in nxml-mode (Bug#32897)
38783	ca14dd1 Fix nxml-get-inside (Bug#32003)
38784	e7ab351 Fix positioning client buffer as instructed by emacsclient
38785
38786	# Conflicts:
38787	#	lisp/files.el
38788	#	lisp/textmodes/sgml-mode.el
38789
387902019-05-14  Juri Linkov  <juri@linkov.net>
38791
38792	* lisp/progmodes/project.el (project-read-file-name-function): Fix type.
38793
387942019-05-14  Stefan Monnier  <monnier@iro.umontreal.ca>
38795
38796	* lisp/savehist.el: Use lexical-binding
38797
38798	Remove redundant :group args.
38799	(savehist-no-conversion): Remove constant.
38800	(savehist-save): Use savehist-coding-system instead since it's no slower.
38801
388022019-05-13  Paul Eggert  <eggert@cs.ucla.edu>
38803
38804	Default to disabling ImageMagick (Bug#33587)
38805
38806	ImageMagick has continuing stability and security problems, suggesting
38807	that 'configure' should disable it by default.  See Glenn Morris's notes
38808	at: https://lists.gnu.org/r/emacs-devel/2018-12/msg00036.html
38809	* INSTALL, etc/NEWS, nt/INSTALL.W64: Mention this.
38810	* configure.ac (imagemagick): Default to off.
38811
388122019-05-13  Dmitry Gutov  <dgutov@yandex.ru>
38813
38814	Allow customizing the display of project file names when reading
38815
38816	To hopefully resolve a long-running discussion
38817	(https://lists.gnu.org/archive/html/emacs-devel/2019-05/msg00162.html).
38818
38819	* lisp/progmodes/project.el (project-read-file-name-function):
38820	New variable.
38821	(project--read-file-absolute, project--read-file-cpd-relative):
38822	New functions, possible values for the above.
38823	(project-find-file-in): Use the introduced variable.
38824	(project--completing-read-strict): Retain just the logic that fits
38825	the name.
38826
388272019-05-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
38828
38829	Avoid artifacts in ftx and ftcr font backend drivers
38830
38831	* src/ftcrfont.c (ftcrfont_open):
38832	* src/ftfont.c (ftfont_open2): Make font->height equal to sum of font->ascent
38833	and font->descent.  Respect :minspace property.
38834	(ftfont_open2): Remove redundant assignment.
38835	(syms_of_ftfont) <QCminspace>: New DEFSYM.
38836
388372019-05-13  Basil L. Contovounesios  <contovob@tcd.ie>
38838
38839	Fix mail-header-separator font lock in message.el
38840
38841	* lisp/gnus/message.el (message-font-lock-keywords): Dynamically
38842	font lock mail-header-separator, in case it changes. (bug#34898)
38843
388442019-05-13  Kévin Le Gouguec  <kevin.legouguec@gmail.com>
38845
38846	Extract common code for adding text properties
38847
38848	* lisp/font-lock.el (font-lock--add-text-property):
38849	New function.
38850	(font-lock-prepend-text-property)
38851	(font-lock-append-text-property): Use it.
38852
38853	(Bug#35476)
38854
388552019-05-13  Kévin Le Gouguec  <kevin.legouguec@gmail.com>
38856
38857	Stop splicing anonymous faces in font-lock-append-text-property
38858
38859	This is the same fix as 2019-04-29 "Refrain from splicing anonymous
38860	faces in text properties", which was only applied to
38861	font-lock-prepend-text-property.
38862
38863	* lisp/font-lock.el (font-lock-append-text-property): Distinguish list
38864	of faces from property list.
38865	* test/lisp/font-lock-tests.el: New test suite.
38866
38867	(Bug#35476)
38868
388692019-05-13  Basil L. Contovounesios  <contovob@tcd.ie>
38870
38871	Do not hard-code message-mode keys in docstring
38872
38873	* lisp/gnus/message.el (message-mode): Replace hard-coded bindings
38874	in docstring with summary of message-mode-map. (bug#31388)
38875
388762019-05-13  Basil L. Contovounesios  <contovob@tcd.ie>
38877
38878	Fix last change to message-signature :type
38879
38880	* lisp/gnus/message.el (message-signature): List more specific :type
38881	alternatives before more general ones, as per "(elisp) Composite
38882	Types".
38883
388842019-05-13  Robert Pluim  <rpluim@gmail.com>
38885
38886	Document nil value of message-signature and mail-signature
38887
38888	* lisp/gnus/message.el (message-signature): Allow nil as a
38889	customizable value, and describe its effect.
38890	* lisp/mail/sendmail.el (mail-signature): Describe effect of nil
38891	value (bug#32680).
38892
388932019-05-13  Juri Linkov  <juri@linkov.net>
38894
38895	* lisp/vc/log-view.el (log-view-diff-common): Use the previous revision
38896
38897	only when the end of the region is on a line after the last entry.
38898	(Bug#35624)
38899
389002019-05-13  Alexandre Garreau  <galex-713@galex-713.eu>
38901
38902	[PATCH 1/1] Adds variable 'eww-accept-content-types'
38903
38904	* lisp/gnus/message.el (message-simplify-subject): Decouple
38905	simplification from "Re:" adding (bug#33200).
38906	(message-reply): Add the "Re:"'s here.
38907	(message-followup): And here.
38908
389092019-05-13  Lars Ingebrigtsen  <larsi@gnus.org>
38910
38911	Make mml respect the "recipient-filename" parameter
38912
38913	* lisp/gnus/mml.el (mml-insert-mime-headers): Implement the
38914	already-documented "recipient-filename" parameter (bug#34654).
38915
389162019-05-13  Lars Ingebrigtsen  <larsi@gnus.org>
38917
38918	Make eww understand #fragment URLs at point interactively
38919
38920	* lisp/net/eww.el (eww-suggest-uris): Use
38921	thing-at-point-url-at-point instead of url-get-url-at-point
38922	(bug#31927) because it's much better at guessing what the URL
38923	actually is (especially with #fragments).
38924
389252019-05-13  Paul Eggert  <eggert@cs.ucla.edu>
38926
38927	Fix broken build on m68k
38928
38929	The GCC + valgrind fix caused the m68k build to fail (Bug#35711).
38930	Simplify string allocation a bit to make similar problems less
38931	likely in the future.
38932	* src/alloc.c (sdata, SDATA_NBYTES, SDATA_DATA) [GC_CHECK_STRING_BYTES]:
38933	Use the same implementation as with !GC_CHECK_STRING_BYTES,
38934	as the special case is no longer needed.
38935	(SDATA_ALIGN): New constant.
38936	(SDATA_SIZE): Remove this macro, replacing with ...
38937	(sdata_size): ... this new function.  All uses changed.
38938	Properly account for sizes and alignments even in the m68k case,
38939	and even if GC_CHECK_STRING_BYTES is not defined.
38940
389412019-05-13  Lars Ingebrigtsen  <larsi@gnus.org>
38942
38943	Add a comment about the previous shr change
38944
389452019-05-13  Lars Ingebrigtsen  <larsi@gnus.org>
38946
38947	Fix problems in shr when indenting tables
38948
38949	* lisp/net/shr.el (shr-mark-fill, shr-insert-table): Fix problems
38950	when block-quoting/<li>-ing a table -- the indentation/prefix was
38951	inserted twice (bug#32277).
38952
389532019-05-13  Federico Tedin  <federicotedin@gmail.com>  (tiny change)
38954
38955	Use a more specific Accepts header in eww
38956
38957	* lisp/net/eww.el (eww-accept-content-types): New variable.
38958	(eww): Use it.
38959	(eww-reload): Use it. (bug#33002).
38960
389612019-05-12  Xu Chunyang  <mail@xuchunyang.me>
38962
38963	(eww-follow-link): Record the location properly when following #links
38964
38965	* lisp/net/eww.el (eww-follow-link): Record the location properly
38966	when following #links (bug#35445).
38967
389682019-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
38969
38970	* lisp/emacs-lisp/package.el: Add `all` to package-check-signature
38971
38972	(package-check-signature): Add `all` option.
38973	(package--check-signature-content): Adjust accordingly.
38974
389752019-05-12  Noam Postavsky  <npostavs@gmail.com>
38976
38977	Improve printing for named keyboard macros (Bug#35486)
38978
38979	* lisp/macros.el (macros--insert-vector-macro): New function,
38980	extracted from insert-kbd-macro.
38981	(insert-kbd-macro): Use it and kmacro-extract-lambda to produce nicer
38982	expressions for macros produced by kmacro-lambda-form.
38983
389842019-05-12  Noam Postavsky  <npostavs@gmail.com>
38985
38986	Use remapping in ffap-bindings (Bug#35577)
38987
38988	* lisp/ffap.el (ffap-bindings): Bind to the [remap COMMAND] instead of
38989	hardcoding the default keybindings.  This better adapts better if
38990	non-default are used.  And lets the original keybindings be
38991	remembered, so that, e.g., \[find-file] in docstrings will still be
38992	substituted with C-x C-f (even though that binding has been remapped
38993	to find-file-at-point.
38994
389952019-05-12  Basil L. Contovounesios  <contovob@tcd.ie>
38996
38997	Fix Gnus summary widget navigation across frames
38998
38999	* lisp/gnus/gnus-sum.el (gnus-summary-widget-forward)
39000	(gnus-summary-widget-backward): Signal more informative error if
39001	article window is not found.  Consider other frames displaying
39002	article buffer, and raise its frame before navigating its
39003	widgets. (bug#35565)
39004	* lisp/gnus/gnus-win.el (gnus-get-buffer-window): Simplify and add
39005	docstring.
39006
390072019-05-12  Basil L. Contovounesios  <contovob@tcd.ie>
39008
39009	Make application/x-patch inlinable in mm-decode.el
39010
39011	* lisp/gnus/mm-decode.el (mm-inline-media-tests, mm-inlined-types):
39012	Include application/x-patch as a synonym of text/x-patch and
39013	text/x-diff. (bug#35236)
39014
390152019-05-12  Basil L. Contovounesios  <contovob@tcd.ie>
39016
39017	Fix some gnus-msg.el variables (bug#35239)
39018
39019	* lisp/gnus/gnus-msg.el (gnus-gcc-externalize-attachments):
39020	Fix custom :type.
39021	(gnus-debug-files, gnus-debug-exclude-variables): Mark variables
39022	that have been unused since Emacs 24.1 as obsolete.
39023	(gnus-check-before-posting): Remove unused variable.
39024
390252019-05-11  Mauro Aranda  <maurooaranda@gmail.com>
39026
39027	Use characters, not symbols for table-cell-bindings
39028
39029	* lisp/textmodes/table.el (table-cell-bindings): Add missing '?', to
39030	avoid confusion between symbols and characters in bindings.  (Bug#35533)
39031
390322019-05-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
39033
39034	Document font backends for Cairo and/or HarfBuzz
39035
39036	* doc/lispref/frames.texi (Font and Color Parameters): Mention xfthb, ftcr,
39037	and ftcrhb font backends.
39038
390392019-05-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
39040
39041	* src/xfns.c (x_create_tip_frame): Register font drivers as in normal frames.
39042
390432019-05-10  Mark Oteiza  <mvoteiza@udel.edu>
39044
39045	Generate some repetitive WordStar code with macros
39046
39047	* lisp/obsolete/ws-mode.el (ws-set-marker-0, ws-set-marker-1):
39048	(ws-set-marker-2, ws-set-marker-3, ws-set-marker-4, ws-set-marker-5):
39049	(ws-set-marker-6, ws-set-marker-7, ws-set-marker-8, ws-set-marker-9):
39050	(ws-find-marker-0, ws-find-marker-1, ws-find-marker-2, ws-find-marker-3):
39051	(ws-find-marker-4, ws-find-marker-5, ws-find-marker-6, ws-find-marker-7):
39052	(ws-find-marker-8, ws-find-marker-9): Remove.
39053	(ws-set-marker, ws-find-marker): New macros.  Use them.
39054
390552019-05-10  Alexander Gramiak  <agrambot@gmail.com>
39056
39057	Convert Free_Pixmap macro into terminal hook
39058
39059	* src/termhooks.h (terminal) [HAVE_WINDOW_SYSTEM]: New terminal hook
39060	free_pixmap.
39061
39062	* src/image.c: Replace Free_Pixmap with free_pixmap.
39063
39064	* src/msdos.h (FRAME_X_DISPLAY):
39065	* src/nsgui.h (Display):
39066	* src/nsterm.h (FRAME_NS_DISPLAY, FRAME_X_DISPLAY, FRAME_X_SCREEN)
39067	(FRAME_X_VISUAL):
39068	* src/w32term.h (FRAME_X_DISPLAY): Remove unused X-compatibility
39069	macros and typedefs.
39070
39071	* src/nsterm.m:
39072	* src/w32term.c:
39073	* src/xterm.c: Implement and set free_pixmap hook.
39074
390752019-05-10  Alexander Gramiak  <agrambot@gmail.com>
39076
39077	Remove display member of glyph_string
39078
39079	This member has little value even on X, and it leaks internal backend
39080	details to the glyph_string struct.
39081
39082	* src/dispextern.h (glyph_string): Remove X display member.
39083
39084	* src/xdisp.c (init_glyph_string): Remove initialization of display.
39085
39086	* src/xfont.c (xfont_draw):
39087	* src/xterm.c: Use FRAME_X_DISPLAY (s->f) instead of display member.
39088
390892019-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
39090
39091	* lisp/help.el (help--read-key-sequence): Handle `switch-frame' events
39092
39093	If you do `C-h k ... mouse-1 in other frame` (at least if you have a focus
39094	that follows the mouse), then additionally to the down-mouse-1 and mouse-1
39095	events, a `switch-frame` event (and `select-window` event as well sometimes)
39096	is generated.  When `read-key-sequence` is called with nil for
39097	`can-return-switch-frame`, this event is not returned but kept for later,
39098	which causes a subsequent `sit-for` to return nil immediately.
39099	This interfered without our "wait for double-click" which in turn prevented
39100	us from stopping after the mouse-1 click, getting stuck waiting for something
39101	else instead.
39102
39103	(help--read-key-sequence): Pass a non-nil `can-return-switch-frame`, so the
39104	subsequent `sit-for` returns more trustworthy information.
39105
391062019-05-10  Michael Albinus  <michael.albinus@gmx.de>
39107
39108	Handle subdomains in Tramp ad-hoc proxies
39109
39110	* lisp/net/tramp-sh.el (tramp-compute-multi-hops): Add proper
39111	regexps to `tramp-default-proxies-alist'.
39112
391132019-05-10  Noam Postavsky  <npostavs@gmail.com>
39114
39115	Stop using message-default-charset (Bug#35370)
39116
39117	In 2016-02-14 "Remove compat code for older Emacsen",
39118	message-default-charset was obsoleted, and a couple of uses were
39119	removed, but others were left behind.
39120	* lisp/gnus/message.el (message-send-mail)
39121	(message-send-news, message-do-fcc)
39122	(message-encode-message-body):
39123	* lisp/gnus/mml.el (mml-to-mime): Stop using message-default-charset.
39124
391252019-05-10  Alan Mackenzie  <acm@muc.de>
39126
39127	Optimize CC Mode a bit for repetitive insertion and replace-regexp
39128
39129	This is mainly by enhancing a parse-partial-sexp cache to retain recently
39130	calculated values.  Also, there are several miscellaneous optimizations and
39131	bug fixes.
39132
39133	* lisp/progmodes/cc-engine.el (c-state-semi-nonlit-near-cache): New buffer
39134	local variable.
39135	(c-state-semi-trim-near-cache, c-state-semi-get-near-cache-entry)
39136	(c-state-semi-put-near-cache-entry, c-state-semi-trim-cache): New functions.
39137	(c-state-semi-pp-to-literal, c-state-full-pp-to-literal): Use the new "near"
39138	cache.
39139	(c-parse-ps-state-below): Use the new function c-state-semi-trim-cache.
39140	(c-before-change-check-<>-operators): Check simply for < or > in the
39141	neighbourhood before doing more expensive processing.
39142	(c-maybe-re-mark-raw-string): Give a backward search limit to an operation
39143	which was needlessly lacking one.
39144
39145	* lisp/progmodes/cc-mode.el (c-doc-fl-decl-start, c-doc-fl-decl-end): Check a
39146	certain regexp is valid before performing the (somewhat expensive) actions of
39147	these functions.
39148	(c-fl-decl-start): In the search for a C++ lambda capture list, replace (slow)
39149	calculation of c-parse-state by a (less slow) c-go-up-list-backward.
39150
391512019-05-10  Alan Mackenzie  <acm@muc.de>
39152
39153	Make uncomment-region remove obtrusive spaces before tabs.
39154
39155	These spaces were typically inserted earlier by comment-region.  This patch
39156	makes these two complementary functions closer to inverses.
39157
39158	* lisp/newcomment.el (uncomment-region-default-1): Remove spaces before a tab
39159	where the comment opener has just been removed.
39160
391612019-05-09  Michael Heerdegen  <michael_heerdegen@web.de>
39162
39163	Fix alist-get gv setter not returning VAL
39164
39165	This fixes Bug#35546.
39166
39167	* lisp/emacs-lisp/gv.el (alist-get): Make setter return the set value
39168	to preserve 'setf' semantics.
39169
391702019-05-09  Stefan Monnier  <monnier@iro.umontreal.ca>
39171
39172	* lisp/mail/footnote.el: Avoid regexp-opt-charset, which is not autoloaded.
39173
39174	(footnote-hebrew-numeric-regex): Use rx-to-string instead.
39175
391762019-05-09  Michael Albinus  <michael.albinus@gmx.de>
39177
39178	Fix an error in tramp-vc-file-name-handler
39179
39180	* lisp/net/tramp.el (tramp-accept-process-output, tramp-send-string):
39181	* lisp/net/tramp-adb.el (tramp-adb-handle-make-process):
39182	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
39183	(tramp-sh-handle-make-process):
39184	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
39185	(tramp-smb-handle-file-acl, tramp-smb-handle-process-file)
39186	(tramp-smb-handle-set-file-acl)
39187	(tramp-smb-handle-start-file-process): Do not suppress timers.
39188
39189	* lisp/net/tramp-sh.el (tramp-vc-file-name-handler): Check, that
39190	`tramp-file-name-for-operation' returns a proper Tramp file.
39191
391922019-05-09  Michael Albinus  <michael.albinus@gmx.de>
39193
39194	* test/lisp/net/tramp-tests.el (cl-lib): Require instead of cl-seq.
39195
391962019-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
39197
39198	* lisp/emacs-lisp/syntax.el (syntax-propertize): `ignore` is like nil
39199
39200	(syntax-ppss-after-change-function): Mark it as obsolete.
39201	* lisp/font-lock.el (font-lock-apply-syntactic-highlight):
39202	Use syntax-ppss-flush-cache instead.
39203
392042019-05-08  Paul Eggert  <eggert@cs.ucla.edu>
39205
39206	Port LIBRSVG_CHECK_VERSION fix to picky cpp
39207
39208	* src/image.c (LIBRSVG_CHECK_VERSION): Define to yield false
39209	if it isn’t already defined.
39210	(svg_load_image): Port to C preprocessors that check the
39211	syntax of the entire preprocessing expression before
39212	evaluating any of it.
39213
392142019-05-08  Glenn Morris  <rgm@gnu.org>
39215
39216	Merge from origin/emacs-26
39217
39218	1c6484e (origin/emacs-26) Fix incorrect cloning of eieio-instance-inh...
39219	37436fe Fix cloning of eieio-named objects (Bug#22840)
39220	fb65a36 Fix ibuffer-unmark-backward synopsis (bug#35572)
39221	f77bd2b ; * src/lisp.h (DEFSYM): Fix inaccurate comment.
39222	3b86e0b Clarify handling of long options (Bug#24949)
39223	04340a8 Improve documentation of the daemon and emacsclient
39224	3e29de2 * etc/NEWS.24: Belatedly announce delete-consecutive-dups.
39225
392262019-05-08  Glenn Morris  <rgm@gnu.org>
39227
39228	Merge from origin/emacs-26
39229
39230	ec02c73 Update process filter example (Bug#35044)
39231
392322019-05-08  Eli Zaretskii  <eliz@gnu.org>
39233
39234	Fix compilation with old versions of librsvg
39235
39236	* src/image.c (svg_load_image): Use LIBRSVG_CHECK_VERSION only
39237	if it's defined; it isn't in old versions of librsvg.
39238
392392019-05-08  Michael Albinus  <michael.albinus@gmx.de>
39240
39241	Skip tramp-test10-write-region-file-precious-flag for Emacs < 27
39242
39243	* test/lisp/net/tramp-tests.el
39244	(tramp-test10-write-region-file-precious-flag): Skip for Emacs < 27.
39245
392462019-05-08  Jonathan Tomer  <jktomer@google.com>
39247
39248	Don't rewrite buffer contents after saving by rename (Bug#35497)
39249
39250	* lisp/files.el (basic-save-buffer-2): Don't rewrite file contents
39251	after saving-by-renaming.  (Bug#35497)
39252
39253	* test/lisp/files-tests.el (files-tests-dont-rewrite-precious-files):
39254	* test/lisp/net/tramp-tests.el
39255	(tramp-test10-write-region-file-precious-flag): Regression tests
39256	for this change.
39257
392582019-05-07  Eli Zaretskii  <eliz@gnu.org>
39259
39260	Add an assertion to xdisp.c
39261
39262	* src/xdisp.c (display_mode_element): Add an assertion where
39263	we assume that 'string' returned by decode_mode_spec is always
39264	either a Lisp string or nil.
39265
392662019-05-07  Juri Linkov  <juri@linkov.net>
39267
39268	* lisp/progmodes/flymake.el: Obsolete variable flymake-start-on-newline
39269
39270	(flymake-start-syntax-check-on-newline): Mark it obsolete.
39271	(flymake-after-change-function): Remove obsolete variable
39272	flymake-start-syntax-check-on-newline (temporarily renamed to
39273	flymake-start-on-newline).  (Bug#34294)
39274
39275	* doc/misc/flymake.texi: Remove obsolete variable.
39276
392772019-05-07  Paul Eggert  <eggert@cs.ucla.edu>
39278
39279	Pacify GCC 9.1
39280
39281	* src/intervals.c (set_intervals_multibyte_1): Omit unused temps.
39282	* src/xdisp.c (display_mode_element): Use !NILP instead of
39283	STRINGP.  This convinces GCC we’re not dereferencing a
39284	possibly-null pointer, and should be a bit faster anyway.
39285
392862019-05-07  John Shahid  <jvshahid@gmail.com>
39287
39288	Fix setting and resetting of scroll-with-delete
39289
39290	The start and end lines of the scroll region must to be in the range
39291	[0,term-height).  There are few placees that incorrectly set the end
39292	line of the scroll region to term-height which is outside the valid
39293	range.  Combined with another off-by-one error in
39294	term-set-scroll-region's clamping logic, this would cause
39295	term-scroll-with-delete to be unnecessarily turned on.
39296
39297	* lisp/term.el (term-scroll-start,term-scroll-end): Use defvar-local
39298	to define the variables and document the valid range of values that
39299	the variables can take.
39300	(term--last-line): New function to calculate the 0-based index of the
39301	last line.
39302	(term--reset-scroll-region): New function to reset the scroll region
39303	to the full height of the terminal.
39304	(term-mode,term-reset-size,term-reset-terminal): Call
39305	term--reset-scroll-region to reset the scroll region.
39306	(term-set-scroll-region): Fix the off-by-one error in the clamping
39307	logic which allowed term-scroll-end to have values outside the valid
39308	range [0,term-height).
39309
393102019-05-07  Stefan Monnier  <monnier@iro.umontreal.ca>
39311
39312	* src/marker.c (buf_bytepos_to_charpos): Re-add the CHAR_HEAD_P assertion
39313
39314	This assertion was removed in 1c349c62305d432abf0fa2b6e3f5d754fe4cab79
39315	because the assumption was invalid during set_intervals_multibyte_1.
39316	So we change set_intervals_multibyte_1 to solve the problem in the same
39317	way as in the rest of Fset_buffer_multibyte, which actually simplifies
39318	the code.
39319
39320	* src/buffer.c (advance_to_char_boundary): Not static any more.
39321	* src/buffer.h (advance_to_char_boundary): Add prototype.
39322	* src/intervals.c (set_intervals_multibyte_1): Use it.
39323
393242019-05-07  Glenn Morris  <rgm@gnu.org>
39325
39326	* doc/emacs/text.texi (Fill Commands): Use pxref in parentheses.
39327
39328	* doc/emacs/files.texi (Auto Revert): Fix makeinfo-4.13 compilation.
39329
393302019-05-07  Basil L. Contovounesios  <contovob@tcd.ie>
39331
39332	Clarify what constitutes an event (bug#35238)
39333
39334	* doc/lispref/commands.texi (Input Events): Specify that events are
39335	non-nil and remove vestiges of bug#10190.
39336	* doc/lispref/os.texi (Recording Input): Document optional argument
39337	of recent-keys.
39338	* lisp/subr.el (eventp): Check that the car of conses is non-nil.
39339	* etc/NEWS: Announce it as an incompatible change.
39340	* src/keyboard.c (Frecent_keys): Clarify that returned "events" are
39341	not real events.
39342
393432019-05-07  Eli Zaretskii  <eliz@gnu.org>
39344
39345	Fix 'load-average' on MS-Windows
39346
39347	* src/w32.c (getloadavg): Always return at least one element
39348	of the array.
39349
393502019-05-06  Wilson Snyder  <wsnyder@wsnyder.org>
39351
39352	Fix verilog-mode module backticks; whitespace from prev commits.
39353
39354	* lisp/progmodes/verilog-mode.el (verilog-read-inst-module-matcher):
39355	Work when point is near backtick. Reported by Mattias Engdegard.
39356
393572019-05-06  Juri Linkov  <juri@linkov.net>
39358
39359	* lisp/emacs-lisp/lisp.el (insert-pair-alist): Turn defvar into defcustom.
39360
39361	Revert to old default value.  (Bug#35480)
39362
393632019-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
39364
39365	Make combine-after-change-calls work in the common case again
39366
39367	* src/insdel.c (signal_after_change): Allow combine_after_change_calls
39368	even when syntax-ppss-flush-cache is on before-change-functions.
39369
393702019-05-06  John Shahid  <jvshahid@gmail.com>
39371
39372	Prevent accidental edits in the ansi-term buffer from breaking resizing
39373
39374	* lisp/term.el (term-unwrap-line, term-emulate-terminal): Prevent the
39375	  `term-line-wrap` property of newlines from spreading accidentally
39376	  when inserting text next to it.
39377
393782019-05-06  Alan Mackenzie  <acm@muc.de>
39379
39380	c-beginning-of-statement-1: Handle syntactic WS macros properly.
39381
39382	* lisp/progmodes/cc-engine.el (c-beginning-of-statement-1): The variable
39383	before-sws-pos should record the position of a closing paren/brace/bracket
39384	before moving backwards over a sexp.  When there is a syntactic WS macro
39385	between the starting point and the closing p/b/b, setq before-sws-pos again
39386	after moving backward over the macro.
39387
393882019-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
39389
39390	* lisp/custom.el: Avoid adding vars to load-history multiple times
39391
39392	Avoid the abuse of (eval `(defvar ...)) which tends to end up
39393	adding redundant entries in `load-history`, as discussed in
39394	https://lists.gnu.org/r/help-gnu-emacs/2019-03/msg00237.html
39395
39396	(custom-initialize-default): Don't add to load-history.
39397	(custom-declare-variable): Use internal--define-uninitialized-variable
39398	and only add the var to load-history once.  Do it before calling
39399	`initialize` so the special-variable-p flag is set.
39400
39401	* src/eval.c (Finternal__define_uninitialized_variable): New function.
39402	(Fdefvar, Fdefconst): Use it.
39403	(syms_of_eval): Defsubr' it.
39404
394052019-05-06  Michael Albinus  <michael.albinus@gmx.de>
39406
39407	Use lambda in tramp-compat-* functions
39408
39409	* lisp/net/tramp-compat.el (tramp-handle-temporary-file-directory):
39410	Declare.
39411	(tramp-compat-temporary-file-directory-function): Use function symbol.
39412	(tramp-compat-file-attribute-type)
39413	(tramp-compat-file-attribute-link-number)
39414	(tramp-compat-file-attribute-user-id)
39415	(tramp-compat-file-attribute-group-id)
39416	(tramp-compat-file-attribute-modification-time)
39417	(tramp-compat-file-attribute-size)
39418	(tramp-compat-file-attribute-modes)
39419	(tramp-compat-directory-name-p, tramp-compat-file-local-name)
39420	(tramp-compat-file-name-quoted-p, tramp-compat-file-name-quote)
39421	(tramp-compat-file-name-unquote, tramp-compat-exec-path)
39422	(tramp-compat-time-equal-p, tramp-compat-flatten-tree):
39423	Make them lambdas.
39424
394252019-05-05  Paul Eggert  <eggert@cs.ucla.edu>
39426
39427	Use simpler way to print function pointers
39428
39429	The module code can’t possibly work on weird platforms where
39430	function pointers are wider than data pointers, so there’s no need
39431	to bother with the stackoverflow-like approach that is intended
39432	only for portability to such platforms.  Besides, the
39433	stackoverflow-like approach does not work well on weird platforms
39434	where CHAR_BIT is not a multiple of 4.
39435	* src/lisp.h (pMx): New macro.
39436	* src/print.c (data_from_funcptr) [HAVE_MODULES]: New function.
39437	(print_vectorlike) [HAVE_MODULES]: Use it.
39438	(print_object): Make sure buf is big enough for this.
39439
394402019-05-05  Juri Linkov  <juri@linkov.net>
39441
39442	* lisp/progmodes/flymake.el (flymake-start): Check for flymake-mode.
39443
39444	Check for the value of flymake-mode after hooks are finished (bug#34294)
39445
394462019-05-05  Juri Linkov  <juri@linkov.net>
39447
39448	* lisp/progmodes/flymake.el: Rename flymake-start-on-newline (bug#34294)
39449
39450	* lisp/progmodes/flymake.el (flymake-start-on-newline): Rename from
39451	flymake-start-syntax-check-on-newline.
39452	(flymake-start-syntax-check-on-newline): Define obsolete alias.
39453	(flymake-no-changes-timeout): Add customization option nil.
39454
39455	* doc/misc/flymake.texi (Using Flymake): Rename variable.
39456
394572019-05-05  Juri Linkov  <juri@linkov.net>
39458
39459	* lisp/vc/ediff-ptch.el (ediff-fixup-patch-map): Remove Git prefixes.
39460
39461	Strip possible source/destination prefixes such as a/ and b/
39462	from directory names.   (Bug#35420)
39463	(ediff-fixup-patch-map, ediff-dispatch-file-patching-job)
39464	(ediff-patch-file-internal): Replace string-match with string-match-p.
39465
394662019-05-05  Juri Linkov  <juri@linkov.net>
39467
39468	Use ngettext instead of dired-plural-s in Dired (bug#35287)
39469
39470	* lisp/dired-aux.el (dired-map-over-marks-check): Use ngettext
39471	instead of dired-plural-s.
39472	(dired-create-files): Also add colon after operation name.
39473	(dired-compare-directories): Use ngettext and format-message.
39474	(dired-do-compress-to): Use ngettext.
39475
39476	* lisp/dired.el (dired-internal-do-deletions)
39477	(dired-clean-up-after-deletion): Use ngettext instead of dired-plural-s.
39478
394792019-05-05  Juri Linkov  <juri@linkov.net>
39480
39481	* lisp/emacs-lisp/lisp.el (insert-pair-alist): Precompute default value.
39482
39483	Use unicode-property-table-internal with 'paired-bracket to append
39484	pairs of open/close characters to the default value (bug#35480).
39485
394862019-05-05  Juri Linkov  <juri@linkov.net>
39487
39488	Rename shell-command-width to async-shell-command-width (bug#35055)
39489
39490	* lisp/simple.el (async-shell-command-width):
39491	* lisp/net/tramp.el (tramp-handle-shell-command):
39492	* test/lisp/net/tramp-tests.el (tramp-test32-shell-command):
39493	* doc/misc/tramp.texi (Remote processes): Rename this variable.
39494
39495	* doc/emacs/misc.texi (Single Shell): Add async-shell-command-width.
39496
394972019-05-05  Paul Eggert  <eggert@cs.ucla.edu>
39498
39499	Port mod-test to --enable-gcc-warnings
39500
39501	* test/data/emacs-module/mod-test.c (NDEBUG): Undef, to prevent
39502	GCC from complaining “error: unused variable ‘dummy’” and failing
39503	to build the test, if --enable-gcc-warnings.
39504
395052019-05-05  Eli Zaretskii  <eliz@gnu.org>
39506
39507	Fix compilation of mod-test.c on MinGW
39508
39509	* test/data/emacs-module/mod-test.c (Fmod_test_nanoseconds)
39510	[__MINGW32__]: Use _Static_assert, not static_assert, as the
39511	latter is not available in mingw.org's MinGW's assert.h.
39512
395132019-05-05  Jimmy Aguilar Mena  <spacibba@aol.com>
39514
39515	Fixed fill-column-indicator face removing background.
39516
39517	*lisp/faces.el: Removed background in default fill-column-indicator
39518	 face.
39519	*src/xdisp.c: fill-column-indicator face merged with saved face.
39520
395212019-05-05  Jimmy Aguilar Mena  <spacibba@aol.com>
39522
39523	;Corrected display-fill-column-indicator mode.
39524
39525	Small corrections in the documentation and code format to merge into master.
39526
395272019-05-05  Jimmy Aguilar Mena  <spacibba@aol.com>
39528
39529	*src/xdisp.c: Fixed fill column indicator position in terminal mode.
39530
395312019-05-05  Jimmy Aguilar Mena  <spacibba@aol.com>
39532
39533	display-fill-column-indicator interface corrections
39534
39535	*lisp/display-fill-column-indicator.el: Fixed character selection for
39536	the indicator based in the current faces. Extended condition to set
39537	display-fill-column-indicator-character in graphical displays.
39538
39539	*src/xdisp.c: Fixed some long lines.
39540
395412019-05-05  Jimmy Aguilar Mena  <spacibba@aol.com>
39542
39543	;Small changes in the documentation
39544
39545	*src/xdisp.c: Fixed docstring for display-fill-column-indicator-column
39546	*etc/NEWS: Concordance fix in the display-fill-column-indicator part.
39547	*doc/emacs/display.texi: Name mismatch fix.
39548
395492019-05-05  Jimmy Aguilar Mena  <spacibba@aol.com>
39550
39551	Added correction in the texinfo manual.
39552
39553	*doc/emacs/text.texi: Added a reference to the
39554	display-fill-column-indicator section.
39555
395562019-05-05  Jimmy Aguilar Mena  <spacibba@aol.com>
39557
39558	Added fill-column-indicator manual documentation
39559
39560	*etc/NEWS: reduced the comments about fill-column-indicator
39561	*doc/emacs/display.texi: Added documentation for fill-column-indicator
39562	 in this section in the manual
39563
395642019-05-05  Jimmy Aguilar Mena  <spacibba@aol.com>
39565
39566	Fixed fill-column-indicator for continuation lines
39567
39568	*src/xdisp.c: Grouped the test conditions for
39569	display-fill-column-indicator mode in a macro to simplify future
39570	modifications.
39571
395722019-05-05  Jimmy Aguilar Mena  <spacibba@aol.com>
39573
39574	Display-fill-column-indicator NEWS info.
39575
39576	*etc/NEWS: Added information about the fill-column-indicator mode.
39577	*lisp/faces.el: Added a face for the display fill column indicator.
39578
395792019-05-05  Jimmy Aguilar Mena  <spacibba@aol.com>
39580
39581	Start display-fill-column-indicator-mode.
39582
395832019-05-05  Michael Albinus  <michael.albinus@gmx.de>
39584
39585	Describe, how to adapt shell command output width in Tramp
39586
39587	* doc/misc/tramp.texi (Quick Start Guide, GVFS based methods):
39588	Fix @cindex.
39589	(Remote processes): Add some @vindex.  Describe shell command
39590	output width.
39591
395922019-05-05  Eli Zaretskii  <eliz@gnu.org>
39593
39594	Avoid compiler warning in print.c
39595
39596	* src/print.c (print_vectorlike): Don't use %hh, as that is
39597	not portable enough; we don't yet assume a C99-compliant
39598	library.
39599
396002019-05-05  Eli Zaretskii  <eliz@gnu.org>
39601
39602	Avoid crashes in read_integer
39603
39604	* src/lread.c (read_integer): Always allocate a buffer, since
39605	we need to use it even when the radix is invalid.  (Bug#35576)
39606
396072019-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
39608
39609	* lisp/files.el (hack-local-variables): Don't burp when files-x isn't loaded
39610
396112019-05-05  Michael Albinus  <michael.albinus@gmx.de>
39612
39613	Adapt tests for recent file-notification changes in Tramp
39614
39615	* lisp/net/tramp.el (tramp-file-notify-process-sentinel):
39616	Pacify byte compiler.
39617
39618	* test/lisp/autorevert-tests.el
39619	(auto-revert-test02-auto-revert-deleted-file):
39620	* test/lisp/filenotify-tests.el (file-notify-test03-events)
39621	(file-notify-test05-file-validity)
39622	(file-notify-test09-watched-file-in-watched-dir): Adapt for remote
39623	files.
39624
396252019-05-05  Mattias Engdegård  <mattiase@acm.org>
39626
39627	Reorganise (auto-)revert nodes in the manual
39628
39629	Put all information about auto-revert into a section of its own, and
39630	organise the text in a more logical way.  Previously it was mainly
39631	described in the section about reverting (bug#35418).
39632
39633	* doc/emacs/files.texi (Files): Adjust menu.
39634	(Reverting, Auto Revert, Autorevert): Add node `Auto Revert' and move
39635	text on that topic from `Reverting', rearranged.  Turn the old
39636	`Autorevert' node into a subsection under `Auto Revert'.
39637	* doc/emacs/arevert-xtra.texi (Autorevert): Rename and turn into
39638	subsubsection.
39639	* doc/emacs/buffers.texi (Several Buffers): Adjust references.
39640	* doc/emacs/emacs.texi (Top): Adjust menu.
39641	* doc/emacs/emacs-xtra.texi (Top): Adjust menu.
39642	(Non-File Buffers): Add node and section lines.
39643
396442019-05-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
39645
39646	Fix last changes in src/ftfont.c
39647
39648	* src/ftfont.c (ftfont_shape): Add missing argument direction.
39649	(fthbfont_shape) [HAVE_HARFBUZZ]: Remove unused variable ftfont_info.
39650	(fthbfont_driver) [HAVE_HARFBUZZ]: Remove redundant redeclaration.
39651
396522019-05-04  Philipp Stephani  <phst@google.com>
39653
39654	Avoid suppressing -Wcast-function-type warning.
39655
39656	GCC special-cases the type ‘void (*)(void)’ to not emit warnings when
39657	cast, see
39658	https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wcast-function-type.
39659	Make use of this to remove a warning suppression.
39660
39661	* src/dynlib.h: Use void (*)(void) as generic function pointer type.
39662
39663	* src/emacs-module.c: Remove warning suppression.
39664
396652019-05-04  Philipp Stephani  <phst@google.com>
39666
39667	Fix compilation of test module.
39668
39669	Because all other objects are compiled without -fPIC, we can’t use
39670	them when linking the test module.  Instead, use the source files
39671	directly.
39672
39673	* test/Makefile.in (HYBRID_MALLOC, LIBEGNU_ARCHIVE): Remove.
39674	($(test_module)): Use source files instead of objects and archives.
39675
396762019-05-04  Philipp Stephani  <phst@google.com>
39677
39678	Use extract_time in test module.
39679
39680	* test/data/emacs-module/mod-test.c (Fmod_test_sleep_until): Use
39681	extract_time for time argument.
39682	(signal_wrong_type_argument): Remove unused function.
39683
39684	* test/src/emacs-module-tests.el (mod-test-sleep-until): Remove
39685	unnecessary ‘float-time’.
39686
396872019-05-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
39688
39689	Add new font backend drivers for text shaping by HarfBuzz
39690
39691	* etc/NEWS: Mention new font backend drivers xfthb and ftcrhb.
39692
39693	* src/font.h [HAVE_HARFBUZZ]: Include hb.h.
39694	(struct font_driver) [HAVE_HARFBUZZ]: New members begin_hb_font and
39695	end_hb_font.
39696	(ftfont_match, ftfont_list): Remove externs.
39697	(ftfont_match2, ftfont_list2):
39698	(fthbfont_combining_capability, fthbfont_begin_hb_font)
39699	(fthbfont_shape) [HAVE_HARFBUZZ]:
39700	(xfthbfont_driver) [HAVE_XFT && HAVE_HARFBUZZ]:
39701	(ftcrhbfont_driver) [USE_CAIRO && HAVE_HARFBUZZ]: Add externs.
39702
39703	* src/ftcrfont.c (ftcrfont_list): Use ftfont_list2.
39704	(ftcrfont_match): Use ftfont_match2.
39705	(ftcrfont_open): Get font type from entity.
39706	(ftcrfont_open) [HAVE_HARFBUZZ]: Use HarfBuzz version of driver if specified.
39707	(ftcrfont_shape) [HAVE_HARFBUZZ]: Make shaping fail.
39708	(ftcrhbfont_list, ftcrhbfont_match)
39709	(ftcrhbfont_begin_hb_font) [HAVE_HARFBUZZ]: New functions.
39710	(ftcrhbfont_driver) [HAVE_HARFBUZZ]: New variable.
39711	(syms_of_ftcrfont_for_pdumper) [HAVE_HARFBUZZ]: Initialize and register it.
39712	(syms_of_ftcrfont) [HAVE_HARFBUZZ]: New symbol Qftcrhb.
39713
39714	* src/ftfont.c: Include math.h for lround.
39715	(fthbfont_driver) [HAVE_HARFBUZZ]: New variable.
39716	(ftfont_get_hb_font) [HAVE_HARFBUZZ]: Remove function.
39717	(ftfont_list, ftfont_match): Make static.
39718	(ftfont_list2, ftfont_match2): New functions.
39719	(ftfont_open2) [HAVE_HARFBUZZ]: Use HarfBuzz version of driver if specified.
39720	(ftfont_open): Get font type from entity.
39721	(ftfont_shape, ftfont_combining_capability, ftfont_driver) [HAVE_HARFBUZZ]:
39722	Move HarfBuzz specific part from here ...
39723	(fthbfont_shape, fthbfont_combining_capability)
39724	(fthbfont_driver) [HAVE_HARFBUZZ]: ... to here.   New functions and variable.
39725	(fthbfont_begin_hb_font) [HAVE_HARFBUZZ]: New function.
39726	(fthbfont_shape_by_hb) [HAVE_HARFBUZZ]: Rename from ftfont_shape_by_hb.
39727	Don't take FreeType specific arguments ft_face and matrix.  Use begin_hb_font
39728	and end_hb_font font driver functions.  Use text_extents font driver functions
39729	instead of ftfont_glyph_metrics.
39730	(syms_of_ftfont) [HAVE_HARFBUZZ]: New symbol Qfreetypehb.
39731	(syms_of_ftfont_for_pdumper) [HAVE_HARFBUZZ]: Initialize and register
39732	fthbfont_drivert.
39733
39734	* src/ftxfont.c (ftxfont_list): Use ftfont_list2.
39735	(ftxfont_match): Use ftfont_match2.
39736	(ftxfont_driver) [HAVE_HARFBUZZ]: Don't initialize shape member explicitly.
39737
39738	* src/xfns.c (Fx_create_frame) [USE_CAIRO && HAVE_HARFBUZZ]:
39739	(Fx_create_frame) [HAVE_XFT && HAVE_HARFBUZZ]: Register HarfBuzz versions of
39740	font drivers.
39741
39742	* src/xftfont.c (xftfont_list): Use ftfont_list2.
39743	(xftfont_match): Use ftfont_match2.
39744	(xftfont_open): Get font type from entity.
39745	(xftfont_open) [HAVE_HARFBUZZ]: Use HarfBuzz version of driver if specified.
39746	(xftfont_shape) [HAVE_HARFBUZZ]: Make shaping fail.
39747	(xfthbfont_list, xfthbfont_match, xfthbfont_begin_hb_font)
39748	(xfthbfont_end_hb_font) [HAVE_HARFBUZZ]: New functions.
39749	(xftfont_driver) [HAVE_HARFBUZZ]: Don't initialize shape member explicitly.
39750	(xfthbfont_driver) [HAVE_HARFBUZZ]: New variable.
39751	(syms_of_xftfont_for_pdumper) [HAVE_HARFBUZZ]: Initialize and register it.
39752	(syms_of_xftfont) [HAVE_HARFBUZZ]: New symbol Qxfthb.
39753
397542019-05-04  Philipp Stephani  <phst@google.com>
39755
39756	* test/Makefile.in (src/emacs-module-tests.elc): Require test module
39757
397582019-05-04  Philipp Stephani  <phst@google.com>
39759
39760	Refactoring: Factor out a function to set an mpz_t from a Lisp int.
39761
39762	* src/bignum.h (mpz_set_integer): New function.
39763
39764	* src/emacs-module.c (module_make_big_integer): Use it.
39765
397662019-05-04  Philipp Stephani  <phst@google.com>
39767
39768	Avoid undefined behavior when printing function pointers.
39769
39770	* src/print.c (print_vectorlike): Don’t pass a function pointer to
39771	‘snprintf’, as that is undefined behavior.  Instead, print the
39772	individual bytes making up the function pointer.
39773
397742019-05-04  Michael Albinus  <michael.albinus@gmx.de>
39775
39776	Notify broken file notification from Tramp
39777
39778	* lisp/net/tramp.el (tramp-file-notify-process-sentinel): New defun.
39779
39780	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
39781	* lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
39782	Set process sentinel.
39783
397842019-05-04  Paul Eggert  <eggert@cs.ucla.edu>
39785
39786	Port new fingerprinting scheme to clang + LTO
39787
39788	* lib-src/make-fingerprint.c (main): Don't consider multiple
39789	instances of the fingerprint to be an error, as this can
39790	happen with clang and -flto.  Instead, replace all instances
39791	of the fingerprint.  There is a tiny chance that this will
39792	silently corrupt the Emacs executable.
39793
39794	This patch suggests that we should go back to fingerprinting
39795	the inputs to the linker instead of its output, as the new
39796	fingerprinting scheme is unnecessarily complicated and this
39797	complexity reduces reliability. The old scheme (i.e., before
39798	commit 2019-05-14T23:31:24Z!eggert@cs.ucla.edu) was simpler
39799	and more portable and good enough, and it's looking like it
39800	would be less trouble in practice than the new scheme.
39801
398022019-05-04  Noam Postavsky  <npostavs@gmail.com>
39803
39804	Avoid slow overlay ansi coloring in eshell (Bug#29854)
39805
39806	* lisp/ansi-color.el (ansi-color-apply-on-region): Reset temporary
39807	markers after finishing with them.
39808	(ansi-color-apply-text-property-face): New function.
39809	* lisp/eshell/esh-mode.el (eshell-handle-ansi-color):
39810	* lisp/man.el (Man-fontify-manpage): Use it as the
39811	`ansi-color-apply-face-function' while calling
39812	`ansi-color-apply-on-region'.  Use `font-lock-face' to propertize
39813	instead of `face'.
39814
398152019-05-04  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
39816
39817	Fix bytecode optimization typo
39818
39819	Problem reported by Simon Frankau (Bug#35562).
39820	* src/bytecode.c (exec_byte_code): Fix typo when optimizing varset.
39821
398222019-05-04  John Shahid  <jvshahid@gmail.com>
39823
39824	Fix Bug#35506
39825
39826	* lisp/net/tramp.el (tramp-interrupt-process): Kill the entire
39827	process group.  (Bug#35506)
39828
398292019-05-04  Eli Zaretskii  <eliz@gnu.org>
39830
39831	Minor fix in .gdbinit
39832
39833	* src/.gdbinit (xprintsym): Don't attempt to print the
39834	symbol's name if it is not yet set.  This happens with
39835	built-in symbols at the beginning of 'main'.
39836
398372019-05-03  Paul Eggert  <eggert@cs.ucla.edu>
39838
39839	Skip tests if test subdir is missing
39840
39841	Problem reported by Jeffrey Walton in:
39842	https://lists.gnu.org/r/emacs-devel/2019-05/msg00041.html
39843	* Makefile.in (CHECK_TARGETS): New macro; use it
39844	to simplify 'check' and similar rules.
39845	($(CHECK_TARGETS)): If tests are missing, do not fail
39846	after issuing a diagnostic.  Just skip the tests.
39847
398482019-05-03  Paul Eggert  <eggert@cs.ucla.edu>
39849
39850	Modernize INSTALL a bit
39851
39852	* INSTALL: Omit filesystem space estimates.  These estimates
39853	were (1) wrong and (2) no longer important nowadays, as people
39854	have plenty of space.  Instead, start with how to get and
39855	unpack an Emacs tarball.  Don’t say "disk" as it’s often not
39856	disk nowadays.  Update URLs.
39857
398582019-05-03  Paul Eggert  <eggert@cs.ucla.edu>
39859
39860	Simplify use of NDEBUG in etags.c
39861
39862	* lib-src/etags.c [!DEBUG]: Do not define NDEBUG,
39863	as that’s conf_post.h’s job now.
39864	[NDEBUG]: Do not redefine ‘assert’, as that works around
39865	ancient bugs (e.g., sunos4 pcc) that don’t matter any more,
39866	as can be seen that other Emacs source files that successfully
39867	use assert.h without this workaround.
39868
398692019-05-03  Paul Eggert  <eggert@cs.ucla.edu>
39870
39871	Pacify librsvg 2.45.1 and later
39872
39873	* src/image.c (svg_load_image): Pacify librsvg 2.45.1 and later,
39874	and add a FIXME comment about the deprecated librsvg functions.
39875
398762019-05-03  Paul Eggert  <eggert@cs.ucla.edu>
39877
39878	Simplify xd_signature to pacify GCC 9
39879
39880	* src/dbusbind.c (xd_signature): Use simpler way to set up
39881	the subsignature.  This also pacifies GCC 9 on Fedora 30 x86-64.
39882
398832019-05-03  Paul Eggert  <eggert@cs.ucla.edu>
39884
39885	Update from Gnulib
39886
39887	This incorporates:
39888	2019-05-03 Port manywarnings to GCC 9
39889	* m4/manywarnings.m4: Copy from Gnulib.
39890
398912019-05-03  Michael Albinus  <michael.albinus@gmx.de>
39892
39893	Add tests for remote files in auto-revert-tests
39894
39895	* lisp/autorevert.el (auto-revert-debug): New defvar.
39896	(auto-revert-notify-handler): Write traces.
39897
39898	* lisp/filenotify.el (file-notify-debug): New defvar.
39899	(file-notify-handle-event, file-notify-callback): Write traces.
39900
39901	* lisp/net/tramp-sh.el (tramp-sh-handle-vc-registered):
39902	Handle nil `vc-handled-backends'.
39903
39904	* test/lisp/autorevert-tests.el
39905	(auto-revert-test-remote-temporary-file-directory): New defconst.
39906	Handle also $REMOTE_FILE_NOTIFY_LIBRARY.
39907	(auto-revert--test-enabled-remote-checked): New defvar.
39908	(auto-revert--test-enabled-remote): New defun.
39909	(auto-revert--wait-for-revert): Rewrite without timeout.
39910	(auto-revert--deftest-remote): New defmacro.
39911	(auto-revert-test01-auto-revert-several-files):
39912	(auto-revert-test02-auto-revert-deleted-file): Adapt for remote files.
39913	(auto-revert-test02-auto-revert-deleted-file):
39914	Use `auto-revert-debug' for debug messages.
39915	(auto-revert-test00-auto-revert-mode-remote)
39916	(auto-revert-test01-auto-revert-several-files-mode-remote)
39917	(auto-revert-test02-auto-revert-deleted-file-mode-remote)
39918	(auto-revert-test03-auto-revert-tail-mode-mode-remote)
39919	(auto-revert-test04-auto-revert-mode-dired-mode-remote): New tests.
39920
39921	* test/lisp/filenotify-tests.el (file-notify--test-event-handler):
39922	Use `file-notify-debug' for debug messages.
39923
399242019-05-03  Basil L. Contovounesios  <contovob@tcd.ie>
39925
39926	Fix Gnus inline attachment decoding (bug#35507)
39927
39928	Proposed by Andy Moreton <andrewjmoreton@gmail.com>
39929	and Noam Postavsky <npostavs@gmail.com>.
39930	* lisp/gnus/mm-view.el (mm-display-inline-fontify): Always decode
39931	handle text, falling back on 'undecided' coding system.
39932
399332019-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
39934
39935	* lisp/server.el: Cosmetic changes
39936
39937	Remove redundant :group args.
39938	(server-temp-file-regexp): Fix ^$ to  \`\'.
39939
399402019-05-03  Eli Zaretskii  <eliz@gnu.org>
39941
39942	Improve documentation of 'isearch-regexp-function'
39943
39944	* lisp/isearch.el (isearch-regexp-function): Doc fix.
39945	(Bug#35498)
39946
399472019-05-02  Alexander Gramiak  <agrambot@gmail.com>
39948
39949	Refactor update_window_begin and update_window_end hooks
39950
39951	Bug#35464.
39952
39953	* src/dispnew.c (gui_update_window_begin, gui_update_window_end): New
39954	procedures implementing common functionality.
39955
39956	* src/nsterm.m: (ns_update_window_begin, ns_update_window_end):
39957	* src/xterm.c: (x_update_window_begin, x_update_window_end): Remove in
39958	favor of only using the new generic versions.
39959
39960	* src/w32term.c: (w32_update_window_begin, w32_update_window_end):
39961	Remove duplicated and unused code.
39962
399632019-05-02  Dmitry Gutov  <dgutov@yandex.ru>
39964
39965	xref--find-ignores-arguments: Return "" if IGNORES is nil
39966
399672019-05-02  Dmitry Gutov  <dgutov@yandex.ru>
39968
39969	Allow project-find-regexp'ing inside an ignored dir
39970
39971	* lisp/progmodes/project.el (project-find-regexp): Don't pass
39972	project's ignores to project--files-in-directory.  The FILES glob
39973	should be enough, and we don't want to prohibit searching inside
39974	ignored directories this way (it can be counter-intuitive).
39975
399762019-05-02  Dmitry Gutov  <dgutov@yandex.ru>
39977
39978	(xref--mouse-2): Fix not to jump to the next line
39979
39980	* lisp/progmodes/xref.el (xref--mouse-2): Fix not to jump to the
39981	next line.
39982
399832019-05-02  Dmitry Gutov  <dgutov@yandex.ru>
39984
39985	Fix an "empty identifier" problem
39986
39987	* lisp/progmodes/xref.el (xref--read-identifier): Abort on empty
39988	input if there is no default
39989	(https://lists.gnu.org/archive/html/help-gnu-emacs/2019-05/msg00012.html).
39990
399912019-05-02  Alan Mackenzie  <acm@muc.de>
39992
39993	Fix fontification of first item in CC Mode macro without parentheses
39994
39995	* lisp/progmodes/cc-engine.el (c-find-decl-prefix-search): Handle the new
39996	matching possibility (of a #define construct) in the new
39997	c-decl-prefix-or-start-re.
39998	(c-find-decl-spots): Allow the initial search for an in-macro starting point
39999	settle on the # of #define, to facilitate the regexp matching in
40000	c-find-decl-prefix-search.
40001
40002	* lisp/progmodes/cc-langs.el (c-anchored-hash-define-no-parens): New lang
40003	const.
40004	(c-literal-start-regexp): Correct what was always supposed to be a "generic
40005	string" regexp element.
40006	(c-decl-prefix-or-start-re): Enhance also to match "#define <identifier>".
40007	(c-dposr-cpp-macro-depth): New lang variable and lang constant.
40008
400092019-05-02  Stefan Monnier  <monnier@iro.umontreal.ca>
40010
40011	* lisp/mail/footnote.el: Add TEXT and POINTERS together
40012
40013	Rather than adding POINTERS and TEXT separately to footnote--markers-alist,
40014	add them together, so we don't need footnote--first-text-marker because
40015	the TEXT part is never nil.
40016
40017	(footnote--insert-numbered-footnote): Return marker.
40018	(footnote--insert-text-marker, footnote--insert-pointer-marker):
40019	Delete functions.
40020	(footnote--insert-markers): New function to replace them.
40021	(footnote--insert-footnote): Adjust accordingly.
40022	Simplify pointless `unless`.
40023	(footnote--first-text-marker): Remove.  Replace all calls by
40024	(cadr (car footnote--markers-alist)) or just footnote--markers-alist.
40025
400262019-05-02  Alan Mackenzie  <acm@muc.de>
40027
40028	CC Mode: Fix multiline block comments in macros.
40029
40030	In particulr, handle multiline block comments whose newlines are not escaped.
40031	There is an example of this in #define EXTRA_CONTEXT_FIELDS in editfns.c.
40032
40033	* lisp/progmodes/cc-engine.el (c-beginning-of-macro, c-end-of-macro): Enclose
40034	the loops scanning escaped newlines with outer loops which check
40035	heuristically for, respectively, a block comment ender and a block comment
40036	starter on the lines we end up on.  (A rigorous syntactic check would be too
40037	slow, here.)
40038
40039	* lisp/progmodes/cc-langs.el (c-last-c-comment-end-on-line-re)
40040	(c-last-open-c-comment-start-on-line-re): New language constants/variables.
40041
400422019-05-02  Stefan Monnier  <monnier@iro.umontreal.ca>
40043
40044	* lisp/mail/footnote.el: Tweak markers convention
40045
40046	Instead of using markers that are sometimes before and sometimes after
40047	the [...] and using `insert-before-markers` to make sure those that are
40048	are before stay before, always place them before, and make them
40049	"move after"so they stay with their [...] without the need for
40050	insert-before-markers.
40051
40052	(footnote--current-regexp): Add arg to match previous style.
40053	Include the start/end "tags" in the regexp.  Adjust all callers.
40054	(footnote--markers-alist): Change position of POINTERS.
40055	(footnote--refresh-footnotes, footnote--renumber)
40056	(footnote--make-hole, footnote-delete-footnote)
40057	(footnote-back-to-message): Adjust accordingly, mostly by using
40058	`looking-at` instead of `looking-back`.
40059	(footnote--make-hole): Always return footnote nb to use.
40060	(footnote-add-footnote): Simplify call accordingly.
40061
40062	* test/lisp/mail/footnote-tests.el: New file.
40063
400642019-05-02  Sam Steingold  <sds@gnu.org>
40065
40066	use view-mode on score file for ease of scrolling and quitting
40067
40068	tetris-null-map: bind "q" to `quit-window`
40069
400702019-05-02  Mattias Engdegård  <mattiase@acm.org>
40071
40072	Small code clean-up of file-notify-add-watch
40073
40074	* lisp/filenotify.el (file-notify-add-watch):
40075	Clearly separate backend-specific code from the rest, and simplify.
40076	(file-notify--add-watch-inotify, file-notify--add-watch-kqueue)
40077	(file-notify--add-watch-w32notify, file-notify--add-watch-gfilenotify):
40078	New functions.
40079
400802019-05-02  Stefan Monnier  <monnier@iro.umontreal.ca>
40081
40082	* lisp/mail/footnote.el: Use dolist and hoist regexps out of loops
40083
40084	(footnote--refresh-footnotes): Use pcase-dolist; compute regexp once
40085	outside of the loops.  Use less confusing `literal` arg to `replace-match`
40086	and specify `fixedcase` since footnote--index-to-string already chose
40087	the proper case for us.
40088	(footnote--renumber): Use dolist; compute regexp once
40089	outside of the loops; shortcircuit when number is unchanged.
40090	(footnote--text-under-cursor): Rewrite.
40091	(footnote--make-hole): Use dolist.
40092	(footnote-add-footnote): CSE.
40093	(footnote-delete-footnote): Use dolist; compute regexp once
40094	outside of the loop.
40095	(footnote-delete-footnote): Don't renumber if there's no footnote left.
40096	(footnote-renumber-footnotes): Use dolist.
40097
400982019-05-02  Michael Albinus  <michael.albinus@gmx.de>
40099
40100	Fix tramp-compat-file-name-quoted-p
40101
40102	* lisp/net/tramp-compat.el (tramp-compat-file-local-name)
40103	(tramp-compat-file-name-quoted-p): Declare them.
40104	(top): Do not use `eval-and-compile'.
40105	(tramp-compat-file-name-quoted-p): Check also func-arity of
40106	`file-name-quoted-p'.
40107
401082019-05-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
40109
40110	Fix NS build
40111
40112	* src/macfont.m: Fix prototype of macfont_shape.
40113	(mac_font_shape): Fix type of 5th argument.
40114
401152019-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
40116
40117	* lisp/mail/footnote.el: Consolidate the two marker-alists
40118
40119	Consolidate footnote-text-marker-alist and footnote-pointer-marker-alist
40120	into a single footnote--markers-alist.
40121
40122	(footnote--markers-alist): New var.
40123	(footnote-text-marker-alist, footnote-pointer-marker-alist): Delete vars.
40124	(footnote--refresh-footnotes, footnote--text-under-cursor)
40125	(footnote--calc-fn-alignment-column, footnote-add-footnote)
40126	(footnote-goto-footnote, footnote-back-to-message): Adjust accordingly.
40127	(footnote--make-hole, footnote-delete-footnote)
40128	(footnote-renumber-footnotes): Simplify accordingly.
40129	(footnote-cycle-style): Indicate style name in echo area.
40130	(footnote--renumber): Take a single `alist-elem` arg instead of
40131	`pointer-alist` and `text-alist`.
40132	(footnote--insert-text-marker, footnote--insert-pointer-marker):
40133	Add to footnote--markers-alist instead.
40134	(footnote--first-text-marker): New function.
40135	(footnote--get-area-point-min): Use it.
40136	footnote--goto-first): New function.
40137	(footnote--insert-footnote): Use it.
40138	(footnote-style-number): Use defvar-local.
40139
401402019-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
40141
40142	* lisp/mail/footnote.el: Minor simplifications
40143
40144	Remove redundant :group args.
40145	(footnote-mode-hook): Let define-minor-mode define it.
40146	(footnote--style-p): Delete function.
40147	(footnote--index-to-string): Inline it instead, and simplify.
40148	(footnote-cycle-style): Use a pointer into the alist as the "index"
40149	instead of a number.
40150	(footnote-set-style): Use footnote-style-alist as the completion table.
40151	Prefer `assq` over `footnote--assoc-index`.
40152	(footnote--assoc-index): Delete function.
40153	(footnote--renumber): Remove first (unused) argument; Adjust all callers.
40154	(footnote--sort): Use car-less-than-car.
40155
401562019-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
40157
40158	Restore previous calling signature of gnus-set-info
40159
401602019-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
40161
40162	* lisp/emacs-lisp/edebug.el: Better handle instrumentation of `end-of-defun`
40163
40164	Remove redundant :group args.
40165	(edebug-read-top-level-form): Let-bind edebug-active.
40166	(edebug-active): Move before this new first use.
40167
401682019-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
40169
40170	* lisp/help.el (function-called-at-point): Use Elisp's forward-sexp-function
40171
401722019-04-30  Basil L. Contovounesios  <contovob@tcd.ie>
40173
40174	Minor region-noncontiguous-p simplification
40175
40176	* lisp/simple.el (region-noncontiguous-p): Don't needlessly traverse
40177	region-bounds.
40178
401792019-04-30  Stefan Monnier  <monnier@iro.umontreal.ca>
40180
40181	* lisp/progmodes/cc-engine.el: Silence minor compiler warnings
40182
40183	(c-restricted-<>-arglists, c-parse-and-markup-<>-arglists):
40184	Move declaration before first use.
40185	(c-after-change-unmark-raw-strings): Remove unused var `found-end`.
40186
401872019-04-30  Paul Eggert  <eggert@cs.ucla.edu>
40188
40189	Fix decode-time/encode-time roundtrip on macOS
40190
40191	* src/timefns.c (Fencode_time): Ignore DST flag when the zone is
40192	numeric or is a cons, as the doc string says it’s ignored in that
40193	case, and not ignoring it causes encode-time to not invert
40194	decode-time on some platforms (Bug#35502).
40195	* test/src/timefns-tests.el (encode-time-dst-numeric-zone):
40196	New test.
40197
401982019-04-30  Stefan Monnier  <monnier@iro.umontreal.ca>
40199
40200	* lisp/progmodes/cc-fonts.el: Silence some compiler warnings
40201
40202	(c-font-lock-declarators): Mark `id_end` and `not-top` as unused.
40203
402042019-04-30  Paul Eggert  <eggert@cs.ucla.edu>
40205
40206	Update from Gnulib
40207
40208	* build-aux/config.guess, doc/misc/texinfo.tex:
40209	* lib/mktime-internal.h, lib/mktime.c, lib/timegm.c:
40210	Copy from Gnulib.
40211	* lib/gnulib.mk.in: Regenerate.
40212
402132019-04-30  Mattias Engdegård  <mattiase@acm.org>
40214
40215	* lisp/autorevert.el (auto-revert-avoid-polling): Fix :set form.
40216
402172019-04-30  Alan Mackenzie  <acm@muc.de>
40218
40219	CC Mode: in certain font lock loops, check point is not beyond limit.
40220
40221	* lisp/progmodes/cc-fonts.el (c-font-lock-enum-body)
40222	(autodoc-font-lock-line-markup): As part of the `while' condition, check that
40223	the previous iteration of the loop hasn't moved point past `limit', thus
40224	obviating "wrong side of point" errors in re-search-forward, etc.
40225
402262019-04-30  Mattias Engdegård  <mattiase@acm.org>
40227
40228	Don't poll auto-revert files that use notification (bug#35418)
40229
40230	It is a waste to periodically poll files that use change notification
40231	in auto-revert mode; stop doing that.  If no files need polling,
40232	turn off the periodic execution entirely to further avoid wasting power.
40233	Use a timer to inhibit immediate reversion for some time after a
40234	notification, for throttling.
40235
40236	This change does not apply to files in global-auto-revert-mode, where
40237	polling is still necessary.  It is disabled by default, and enabled by
40238	setting `auto-revert-avoid-polling' to non-nil.
40239
40240	* lisp/autorevert.el
40241	(toplevel): Require cl-lib.
40242	(auto-revert-avoid-polling, auto-revert--polled-buffers)
40243	(auto-revert--need-polling-p, auto-revert--lockout-interval)
40244	(auto-revert--lockout-timer, auto-revert--end-lockout): New.
40245	(global-auto-revert-mode): Keep notifiers for buffers in auto-revert mode.
40246	(auto-revert-set-timer): Use auto-revert--need-polling-p.
40247	(auto-revert-notify-handler): Restart polling if notification stopped.
40248	Use new lockout timer.
40249	(auto-revert-buffers):
40250	Use auto-revert--polled-buffers and auto-revert--need-polling-p.
40251	(auto-revert-buffers-counter, auto-revert-buffers-counter-lockedout):
40252	Remove.
40253
40254	* etc/NEWS (Changes in Specialized Modes and Packages):
40255	Describe the new auto-revert-avoid-polling variable.
40256
40257	* doc/emacs/files.texi (Reverting):
40258	Add paragraph describing auto-revert-avoid-polling.
40259
402602019-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
40261
40262	Refrain from splicing anonymous faces in text properties
40263
40264	* lisp/font-lock.el (font-lock-prepend-text-property): Distinguish
40265	list of faces from property lists.
40266	(font-lock-ensure-function): Remove redundant code.
40267
402682019-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
40269
40270	* lisp/international/mule-util.el: Avoid setq; clarify meaning of -1.
40271
402722019-04-29  Paul Eggert  <eggert@cs.ucla.edu>
40273
40274	Sync latest SKK-JISYO.L
40275
40276	Problem reported by Tsuyoshi Kitamoto (Bug#35442).
40277	* leim/SKK-DIC/README: Update to current URL.
40278	* leim/SKK-DIC/SKK-JISYO.L: Sync to current upstream version.
40279
402802019-04-29  Paul Eggert  <eggert@cs.ucla.edu>
40281
40282	Disable __attribute__ ((cold)) on MinGW
40283
40284	* src/conf_post.h (ATTRIBUTE_COLD) [__MINGW32__]:
40285	Define to empty on this platform.
40286
402872019-04-29  Glenn Morris  <rgm@gnu.org>
40288
40289	Merge from origin/emacs-26
40290
40291	c26d452 (origin/emacs-26) * src/macfont.m (macfont_shape): Use conven...
40292	140e7f8 Recommend using font-lock-face over face (Bug#35044)
40293	7cb5364 Check if mouse_face_overlay was deleted (Bug#35273)
40294
40295	# Conflicts:
40296	#	src/macfont.m
40297
402982019-04-29  Glenn Morris  <rgm@gnu.org>
40299
40300	Merge from origin/emacs-26
40301
40302	0e8d452 ; * doc/lispref/nonascii.texi (Coding System Basics): Fix gra...
40303	25a2ff7 ; Add missing space in custom.texi
40304	9ec18fb * admin/admin.el (set-version): Check for increase in version...
40305	93912ba Be more careful about indent-sexp going over eol (Bug#35286)
40306
403072019-04-29  Paul Eggert  <eggert@cs.ucla.edu>
40308
40309	Replace ‘/* FALLTHROUGH! */’ with ‘break;’
40310
40311	* src/data.c (set_internal, set_default_internal):
40312	Replace obsolescent /* FALLTHROUGH! */ comments with ‘break;’,
40313	as ‘FALLTHROUGH;’ is not needed here.
40314
403152019-04-29  Michael Albinus  <michael.albinus@gmx.de>
40316
40317	* test/lisp/net/tramp-tests.el (tramp--test-timeout-handler): Instrument.
40318
403192019-04-29  Eli Zaretskii  <eliz@gnu.org>
40320
40321	Avoid compilation warnings in w32.c
40322
40323	* src/w32.c (unsetenv, readlink): Use memcpy instead of
40324	strncpy, to avoid a compiler warning about calculating the
40325	bound of the copy.
40326
403272019-04-28  Noam Postavsky  <npostavs@gmail.com>
40328
40329	Replace use of obsolete string-make-unibyte
40330
40331	* lisp/image-file.el (insert-image-file): Use encode-coding-region
40332	instead of string-make-unibyte.
40333	* test/lisp/image-file-tests.el: New test.
40334
403352019-04-28  Tommi Komulainen  <tommi.komulainen@iki.fi>  (tiny change)
40336
40337	python.el: Fix close paren indentation to match pep8 (Bug#20742)
40338
40339	* lisp/progmodes/python.el (python-indent--calculate-indentation):
40340	When opening paren is followed by newline the closing paren should
40341	follow the current indentation.  Otherwise the closing paren should be
40342	aligned with the opening paren.  This fixes the latter case.
40343
403442019-04-28  Paul Eggert  <eggert@cs.ucla.edu>
40345
40346	Update from GMP
40347
40348	* admin/update-copyright (updatable_files):
40349	Don’t update copyright year on files copied from GMP, so that
40350	they’re identical to upstream.
40351	* src/mini-gmp.c, src/mini-gmp.h: Copy from GMP development
40352	versions as of 2019-01-01 20:15:39 UTC.
40353
403542019-04-28  Philipp Stephani  <phst@google.com>
40355
40356	Export major version of latest Emacs supported by emacs-module.h.
40357
40358	This is useful if module authors want to support multiple versions of
40359	emacs-module.h.
40360
40361	* configure.ac (emacs_major_version): Define substitution.
40362
40363	* src/emacs-module.h.in (EMACS_MAJOR_VERSION): Define macro.
40364
40365	* doc/lispref/internals.texi (Module Initialization): Document
40366	EMACS_MAJOR_VERSION preprocessor macro.
40367
40368	* test/data/emacs-module/mod-test.c (emacs_module_init): Verify
40369	behavior of EMACS_MAJOR_VERSION.
40370
403712019-04-28  Philipp Stephani  <phst@google.com>
40372
40373	Fix another compilation warning.
40374
40375	* test/src/emacs-module-tests.el (multiply-string): Remove unused
40376	variable ‘i’.
40377
403782019-04-28  Philipp Stephani  <phst@google.com>
40379
40380	Also regenerate emacs-module.h if module-env-*.h changes.
40381
40382	* Makefile.in (CONFIG_STATUS_FILES_IN): Add versioned environment
40383	header fragments.
40384
403852019-04-28  Philipp Stephani  <phst@google.com>
40386
40387	* src/emacs-module.c (funcall_module): Add a nontrivial assertion
40388
403892019-04-28  Philipp Stephani  <phst@google.com>
40390
40391	Fix a few minor compilation and Checkdoc warnings.
40392
40393	* test/src/emacs-module-tests.el: Add package name and standard
40394	sections.
40395	(multiply-string): Add a docstring.
40396
403972019-04-28  Philipp Stephani  <phst@google.com>
40398
40399	* test/src/emacs-module-tests.el: Switch to lexical binding.
40400
404012019-04-28  Eli Zaretskii  <eliz@gnu.org>
40402
40403	Fix names of functions in last commit
40404
40405	* src/coding.h (build_string_from_utf8): Rename from
40406	build_utf8_string.  All callers changed.
40407	* src/coding.c (make_string_from_utf8): Rename from
40408	make_utf8_string.  All callers changed.
40409
404102019-04-28  Philipp Stephani  <phst@google.com>
40411
40412	Refactoring: move UTF-8 decoding functions into coding.h.
40413
40414	json_make_string and json_build_string are generally useful and not
40415	JSON-specific.  Move them to coding.[ch].
40416
40417	* src/coding.h (build_utf8_string): Move from json.c.
40418
40419	* src/coding.c (make_utf8_string): Move from json.c.
40420
40421	* src/json.c (json_make_string, json_build_string): Move to
40422	coding.[ch].  Split out JSON-specific comment.
40423	(json_parse_error, Fjson_serialize, json_to_lisp): Fix callers.
40424
40425	* src/emacs-module.c (module_make_function, module_make_string): Use
40426	new functions.
40427	(module_decode, module_decode_copy): Remove.
40428
404292019-04-27  Alan Mackenzie  <acm@muc.de>
40430
40431	Fix slow scrolling in C++ buffers with lots of template delimiters.
40432
40433	* lisp/progmodes/cc-engine.el (c-update-brace-stack): bind
40434	c-parse-and-markup-<>-arglists and c-restricted-<>-arglists to t around the
40435	call to c-forward-<>-arglist, to force the marking of template delimiters with
40436	syntax-table text properties.
40437
404382019-04-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
40439
40440	Merge branch 'master' into harfbuzz
40441
404422019-04-27  Eli Zaretskii  <eliz@gnu.org>
40443
40444	Fix -nw sessions on MS-Windows broken by a recent commit
40445
40446	* src/w32console.c: Include dispextern.h.
40447	(initialize_w32_display): Populate defined_color_hook.
40448
404492019-04-27  Eli Zaretskii  <eliz@gnu.org>
40450
40451	Fix MS-Windows build broken by a recent commit
40452
40453	* src/w32term.c (w32_new_focus_frame): Fix a typo in a recent
40454	commit.
40455
404562019-04-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
40457
40458	Fix --with-x-toolkit=no build breakage
40459
40460	* oldXMenu/Create.c (XMenuCreate): Add const modifier to variable def_val.
40461	* oldXMenu/Create.c:
40462	* src/frame.h: Add const modifier to return type of x_get_resource_string.
40463	* src/frame.c (x_get_resource_string): Exempt x_get_string_resource from
40464	renaming generic x_* identifiers.
40465
404662019-04-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
40467
40468	Update multicolor font support status
40469
40470	* etc/NEWS: Mention multicolor font support on Cairo and NS.
40471	* src/macfont.m (macfont_list): Re-enable color bitmap fonts.
40472
404732019-04-26  Alexander Gramiak  <agrambot@gmail.com>
40474
40475	* src/frame.c (x_get_resource_string): Fix typo
40476
40477	* src/xdisp.c: Only check FRAME_RIF for graphical frames
40478
404792019-04-26  Alexander Gramiak  <agrambot@gmail.com>
40480
40481	Rename x_highlight_frame property to highlight_frame
40482
40483	* src/nsterm.h:
40484	* src/nsterm.m:
40485	* src/w32term.c:
40486	* src/w32term.h:
40487	* src/xdisp.c:
40488	* src/xterm.c:
40489	* src/xterm.h: Rename.
40490
404912019-04-26  Alexander Gramiak  <agrambot@gmail.com>
40492
40493	Check for existence of terminal hooks before use
40494
40495	This should not be necessary, and is merely a precaution. For
40496	background, see:
40497	https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg00639.html
40498
40499	* src/frame.c:
40500	* src/xdisp.c: Check for existence of terminal hooks before use.
40501
405022019-04-26  Alexander Gramiak  <agrambot@gmail.com>
40503
40504	Add terminal hook query_frame_background_color
40505
40506	* src/termhooks.h (query_frame_background_color): New terminal hook.
40507
40508	* src/image.c (image_query_frame_background_color): Remove. Use the
40509	terminal hook instead.
40510
40511	* src/nsterm.m:
40512	* src/w32term.c:
40513	* src/xterm.c: Implement and set the new terminal hook.
40514
405152019-04-26  Alexander Gramiak  <agrambot@gmail.com>
40516
40517	Add terminal hook defined_color_hook
40518
40519	* src/termhooks.h (defined_color_hook): New terminal hook.
40520
40521	* src/xterm.c:
40522	* src/nsterm.m:
40523	* src/term.c:
40524	* src/w32term.c: Set defined_color_hook.
40525
40526	* src/xfaces.c: Use defined_color_hook.
40527	(defined_color): Remove.
40528
40529	* src/image.c: Remove redefinitions of x_defined_color, and use
40530	defined_color_hook.
40531
405322019-04-26  Alexander Gramiak  <agrambot@gmail.com>
40533
40534	Rename generic x_* identifiers
40535
40536	* src/image.c: Rename x_* procedures to image_*.
40537
40538	* src/frame.c: Rename x_* procedures to gui_*. Rename
40539	xrdb_get_resource to gui_display_get_resource. Rename x_get_arg to
40540	gui_display_get arg.
40541
40542	* src/frame.h: Rename can_x_set_window_size to can_set_window_size.
40543
40544	* src/xfaces.c: Rename realize_x_face to realize_gui_face. Rename
40545	x_supports_face_attributes_p to gui_supports_face_attributes_p.
40546
40547	* src/keyboard.c:
40548	* src/lisp.h:
40549	* src/nsterm.m:
40550	* src/w32term.c:
40551	* src/xterm.c: Rename x_get_keysym_name to get_keysym_name.
40552
40553	* src/nsfns.m:
40554	* src/nsterm.m: Rename x_* procedures to ns_*.
40555
40556	* src/w32fns.c:
40557	* src/w32term.c: Rename x_* procedures to w32_*.
40558
40559	* src/termhooks.h (query_colors, get_focus_frame, focus_frame_hook)
40560	(frame_visible_invisible_hook, iconify_frame_hook)
40561	(set_window_size_hook, set_frame_offset_hook, set_frame_alpha_hook)
40562	(set_new_font_hook, set_bitmap_icon_hook, implicit_set_name_hook)
40563	(activate_menubar_hook, change_tool_bar_height_hook)
40564	(set_scroll_bar_default_width_hook)
40565	(set_scroll_bar_default_height_hook, get_string_resource_hook): New
40566	terminal hooks to replace backend-specific x_* procedures.
40567
40568	* src/dispextern.h (clear_under_internal_border): New RIF procedure.
40569
40570	* src/alloc.c:
40571	* src/frame.c:
40572	* src/xdisp.c: Use FRAME_OUTPUT_DATA instead of FRAME_X_OUTPUT.
40573
40574	* src/frame.c:
40575	* src/w32term.c:
40576	* src/w32fns.c: Use FRAME_NATIVE_WINDOW instead of FRAME_X_WINDOW.
40577
405782019-04-26  Alexander Gramiak  <agrambot@gmail.com>
40579
40580	Add prefixes to some window system-dependent procedures
40581
40582	* src/nsterm.m (note_mouse_movement):
40583	* src/w32fns.c (construct_console_modifiers):
40584	* src/w32inevt.c:
40585	* src/w32term.c (frame_highlight, frame_unhighlight)
40586	(construct_mouse_click, construct_mouse_wheel, construct_drag_n_drop)
40587	(lispy_file_action, queue_notifications, note_mouse_movement):
40588	* src/w32term.h:
40589	* src/xterm.c (frame_highlight, frame_unhighlight)
40590	(construct_mouse_click, note_mouse_movement, get_current_wm_state):
40591	Add and use window system prefixes.
40592
405932019-04-26  Alexander Gramiak  <agrambot@gmail.com>
40594
40595	Rename generic x_* procedures in xdisp.c
40596
40597	* src/xdisp.c (x_consider_frame_title, x_get_glyph_overhangs)
40598	(x_produce_glyphs, x_write_glyphs, x_insert_glyphs)
40599	(x_clear_end_of_line), x_fix_overlapping_area)
40600	(x_update_cursor, x_clear_cursor, x_clear_window_mouse_face)
40601	(x_draw_vertical_border, x_draw_right_divider, x_draw_bottom_divider)
40602	(x_intersect_rectangles): Rename with a gui prefix to indicate
40603	non-X-specific functionality.
40604
40605	* src/composite.c:
40606	* src/dispextern.h:
40607	* src/nsfns.m:
40608	* src/nsterm.m:
40609	* src/w32fns.c:
40610	* src/w32term.c:
40611	* src/window.c:
40612	* src/xfns.c:
40613	* src/xterm.c: Use the renamed procedures.
40614
406152019-04-26  Eli Zaretskii  <eliz@gnu.org>
40616
40617	Avoid assertion violations in calculating line-number width
40618
40619	* src/indent.c (line_number_display_width): Don't use the
40620	window's start marker if it belongs to a different buffer.
40621	(Bug#35429)
40622
406232019-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
40624
40625	* lib-src/profile.c: Delete long-obsolete file
40626
40627	This auxiliary executable was used by the old `profile.el` which later
40628	inspired `elp.el`.  It was made obsolete when Emacs acquired native timers.
40629
40630	* lib-src/Makefile.in (UTILITIES): Remove profile.
40631	(profile${EXEEXT}): Delete rule.
40632
406332019-04-26  Michael Albinus  <michael.albinus@gmx.de>
40634
40635	Handle quoted file names in tramp-archive.el
40636
40637	* lisp/net/tramp-archive.el (tramp-archive-file-name-p):
40638	Suppress quoted file names.
40639	(tramp-archive-file-name-handler): Handle quoted file names.
40640
40641	* lisp/net/tramp-compat.el (tramp-compat-file-name-quoted-p):
40642	Add optional TOP argument.
40643
406442019-04-26  Eli Zaretskii  <eliz@gnu.org>
40645
40646	Avoid compiler warning in dynlib.c
40647
40648	* src/dynlib.c (dynlib_addr) [WINDOWSNT]: Rename the first
40649	argument to be consistent with other platforms.  Cast it to
40650	'void *' to avoid compiler warning as result of changing the
40651	function's signature as part of the last recent change in
40652	dynlib.c.
40653
406542019-04-25  Glenn Morris  <rgm@gnu.org>
40655
40656	* test/lisp/progmodes/sql-tests.el (sql-tests-buffer-naming-harness):
40657	Fix previous for TEST_LOAD_EL=no.
40658
406592019-04-25  Alan Mackenzie  <acm@muc.de>
40660
40661	Fix the formatting of '\' (including apostrophes) in CC Mode.
40662
40663	In particular, the second apostrophe must also get font-lock-warning-face.
40664
40665	* lisp/progmodes/cc-mode.el (c-parse-quotes-before-change)
40666	(c-parse-quotes-after-change): Add cond arms to recognize and handle the
40667	anomalous construct '\'.  Correct the handling of c-new-BEG in
40668	c-parse-quotes-before-change.
40669
406702019-04-25  Glenn Morris  <rgm@gnu.org>
40671
40672	* test/lisp/progmodes/sql-tests.el (sql-tests-buffer-naming-harness):
40673	Skip if no sqlite program.
40674
406752019-04-25  Stephen Leake  <stephen_leake@stephe-leake.org>
40676
40677	Fix Bug#33618; define search path variables for grep, byte-compile
40678
40679	* etc/NEWS: Mention new variables.
40680
40681	* lisp/emacs-lisp/bytecomp.el (emacs-lisp-compilation-search-path): New.
40682
40683	* lisp/progmodes/grep.el (grep-search-path): New.
40684
406852019-04-25  Paul Eggert  <eggert@cs.ucla.edu>
40686
40687	Minor tweaks to recent UBSan-related fix
40688
40689	* src/alloc.c: No need to include stdalign.h; it’s pervasive.
40690	(GC_STRING_OVERRUN_COOKIE_SIZE): Align to sdata’s alignment,
40691	so that the code works even if alignof (sdata) exceeds 8.
40692	Don’t require the cookie size to be 8, as this overly fattens
40693	32-bit platforms and one DEADBEEF should be enough.
40694	(GC_STRING_EXTRA): Omit now-unnecessary ‘verify’.
40695	(allocate_string_data): Omit unnecessary cast.
40696
406972019-04-25  Paul Eggert  <eggert@cs.ucla.edu>
40698
40699	Port to Oracle Developer Studio 12.6
40700
40701	This compiler is a bit pickier about checking conformance to
40702	the C standard, ranging from syntax trivia (no extra ";" at
40703	the top level) to portability trivia (warnings re conversion
40704	between function and data pointers) to more-important stuff
40705	like lack of support for some __attribute__ usages.
40706	* src/dynlib.c (dynlib_addr): First argument is a function
40707	pointer, not a data pointer.  All callers changed.
40708	* src/emacs-module.c (module_function_address):
40709	Return module_funcptr, not void *.  All uses changed.
40710	* src/lisp.h (module_funcptr) [HAVE_MODULES]: New type.
40711	* src/lread.c (union ieee754_double): Don’t assume the usual
40712	semantics for converting signed to unsigned int when initializing
40713	a bitfield, as the Oracle compiler complains and the C standard
40714	is unclear.
40715	* src/pdumper.c (ALLOW_IMPLICIT_CONVERSION): Make it clearer
40716	that -Wsign-conversion is disabled everywhere in this file.
40717	(dump_trace, dump_tailq_prepend, dump_tailq_append):
40718	Don’t assume __attribute__.
40719	(dump_object_self_representing_p): Don’t disable conversion
40720	warnings; it’s not needed here.
40721	(DEFINE_FROMLISP_FUNC): Avoid possible signal in integer
40722	conversion from unsigned to signed.
40723	(DEFINE_FROMLISP_FUNC, finish_dump_pvec): Avoid warning about
40724	unreachable statements on platforms not supporting the
40725	__attribute__.
40726	(intmax_t_from_lisp, intmax_t_to_lisp, dump_off_from_lisp)
40727	(dump_off_to_lisp, dump_emacs_reloc_immediate_lv)
40728	(dump_emacs_reloc_immediate_ptrdiff_t)
40729	(dump_emacs_reloc_immediate_intmax_t)
40730	(dump_emacs_reloc_immediate_int, dump_emacs_reloc_immediate_bool):
40731	Omit stray semicolon that violates C standard.
40732	(dump_metadata_for_pdumper): Add cast to pacify compiler complaining
40733	about conversion from function pointer to data pointer.
40734	(Fdump_emacs_portable): Do not use CALLN to call a function
40735	with zero arguments, as C99 prohibits empty initializers.
40736	* src/xdisp.c (syms_of_xdisp): Do not nest calls to pure_list,
40737	to work around a bug in Oracle Developer Studio 12.6.
40738
407392019-04-25  Stefan Monnier  <monnier@iro.umontreal.ca>
40740
40741	* lisp/simple.el (eval-expression): Fix paren typo.
40742
407432019-04-25  Philipp Stephani  <phst@google.com>
40744
40745	Make sure that ‘sdata’ objects in ‘sblock’ objects are aligned.
40746
40747	Issue found by Clang’s UBSan.
40748
40749	* src/alloc.c (GC_STRING_OVERRUN_COOKIE_SIZE): Increase to 8.
40750	(string_overrun_cookie): Extend accordingly.
40751	(GC_STRING_EXTRA): Ensure that it’s properly aligned for ‘sdata’.
40752	(allocate_string_data): Verify that ‘sdata’ blocks remain aligned.
40753
407542019-04-25  Stefan Monnier  <monnier@iro.umontreal.ca>
40755
40756	Use lexical-binding by default for M-:, --eval, and *scratch*
40757
40758	* lisp/startup.el (command-line): Default to lexical-binding in *scratch*.
40759	(normal-no-mouse-startup-screen, command-line-1):
40760	Use startup--get-buffer-create-scratch.
40761	(command-line-1):
40762	* lisp/simple.el (eval-expression):
40763	* lisp/server.el (server-eval-and-print): Use lexical-binding to
40764	evaluate the expression.
40765	(server-execute): Use startup--get-buffer-create-scratch.
40766	* lisp/ielm.el (inferior-emacs-lisp-mode): Default to lexical-binding.
40767
407682019-04-25  Alan Mackenzie  <acm@muc.de>
40769
40770	Restore fontification of delimiters of multiline CC Mode strings.
40771
40772	E.g., on typing the closing delimiter of a string continued onto a second
40773	line, the opening delimiter retained its font-lock-warning-face.
40774
40775	* lisp/progmodes/cc-defs.el (c-c++-raw-string-opener-re)
40776	(c-c++-raw-string-opener-1-re): New constants.
40777	(c-sub-at-c++-raw-string-opener, c-at-c++-raw-string-opener): New macros.
40778
40779	* lisp/progmodes/cc-engine.el (c-raw-string-pos)
40780	(c-depropertize-raw-strings-in-region, c-after-change-unmark-raw-strings):
40781	Replace uses of open-coded raw string regexps by the new constants and macros
40782	in cc-defs.el.
40783
40784	* lisp/progmodes/cc-fonts.el (c-font-lock-raw-strings): Ditto
40785
40786	* lisp/progmodes/cc-mode.el (c-before-change-check-unbalanced-strings): Set
40787	c-new-BEG to the beginning of the string when we encounter its closing ".
40788	When not in a raw string, but in a string, clear syntax-table properties from
40789	its delimiters and set c-new-BEG/END to its limits.
40790	(c-after-change-mark-abnormal-strings): When applying syntax-table properties
40791	to string delimiters, also set c-new-BEG/END to ensure subsequent
40792	fontification.
40793
407942019-04-25  Stephen Berman  <stephen.berman@gmx.net>
40795
40796	Make wdired-mode ignore ls file indicators
40797
40798	* lisp/wdired.el (wdired--restore-dired-filename-prop): When
40799	dired-listing-switches includes "F" or "classify", don't treat
40800	appended indicator characters as part of the file name (bug#34915).
40801
40802	* test/lisp/wdired-tests.el (wdired-test-bug34915): New test.
40803
408042019-04-25  Paul Eggert  <eggert@cs.ucla.edu>
40805
40806	Port emacsclient euidaccess to Solaris 10
40807
40808	Without this fix, linking emacsclient fails with ‘Undefined
40809	symbol eaccess’ on Solaris 10 sparc.
40810	* lib-src/Makefile.in (LIB_EACCESS): New macro.
40811	(emacsclient${EXEEXT}, emacsclientw${EXEEXT}): Use it.
40812
408132019-04-25  Alan Mackenzie  <acm@muc.de>
40814
40815	Fix some corner cases in the recognition of C++ raw strings.
40816
40817	These are where changing the identifier in a raw string delimiter causes
40818	different delimiters to match eachother.
40819
40820	* lisp/progmodes/cc-engine.el (c-raw-string-end-delim-disrupted): New
40821	variable.
40822	(c-before-change-check-raw-strings): Use new variable.
40823	(c-after-change-unmark-raw-strings): When typing into an opening delimiter or
40824	altering its close delimiter causes the opening delimiter to match a later
40825	closing delimiter, clear all syntax-table char properties from the opening
40826	delimiter onwards, and set c-new-END to point max.  Also, when changing a
40827	closing delimiter, check whether its new value matches a previously open
40828	opening delimiter earlier in the buffer, and amend the syntax-table text
40829	properties appropriately.
40830
408312019-04-24  Michael R. Mauger  <michael@mauger.com>
40832
40833	* lisp/progmodes/sql.el
40834	(sql-is-sqli-buffer-p): New function.
40835	(sql-generate-unique-sqli-buffer-name): Refactor and use it.
40836	(sql-product-interactive): Simplify name logic.
40837	* test/lisp/progmodes/sql-tests.el
40838	(sql-tests-placeholder-filter-harness): New macro.
40839	(sql-tests-placeholder-filter-simple)
40840	(sql-tests-placeholder-filter-ampersand)
40841	(sql-tests-placeholder-filter-period): Refactored tests and use macro.
40842	(sql-tests-buffer-naming-harness): New macro.
40843	(sql-tests-buffer-naming-default)
40844	(sql-tests-buffer-naming-multiple)
40845	(sql-tests-buffer-naming-explicit)
40846	(sql-tests-buffer-naming-universal-argument)
40847	(sql-tests-buffer-naming-existing): New tests.
40848
408492019-04-24  Paul Eggert  <eggert@cs.ucla.edu>
40850
40851	Improve port to platforms lacking euidaccess (Bug#35406)
40852
40853	* lib-src/emacsclient.c (set_local_socket):
40854	Use faccessat with AT_EACCESS instead of using euidaccess.
40855	* admin/merge-gnulib, lib/gnulib.mk.in, m4/gnulib-comp.m4:
40856	Revert previous change.
40857
408582019-04-24  Paul Eggert  <eggert@cs.ucla.edu>
40859
40860	Port to platforms lacking euidaccess (Bug#35406)
40861
40862	* admin/merge-gnulib (GNULIB_MODULES): Add euidaccess.
40863	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
40864
408652019-04-24  Paul Eggert  <eggert@cs.ucla.edu>
40866
40867	Merge from gnulib
40868
408692019-04-24  Mark Oteiza  <mvoteiza@udel.edu>
40870
40871	Fix some strings in wordstar mode
40872
40873	* lisp/obsolete/ws-mode.el (ws-search-direction, ws-error, ws-end-block):
40874	(ws-mark-word, ws-undo, ws-goto-last-cursorposition, ws-last-error):
40875	(ws-kill-bol): Remove full stops from message string endings.  Minor
40876	formatting tweaks.
40877
408782019-04-24  Mark Oteiza  <mvoteiza@udel.edu>
40879
40880	Change WordStar emulation into a minor mode (Bug#35148)
40881
40882	* lisp/obsolete/ws-mode.el: Turn on lexical-binding.  Update commentary.
40883	(wordstar): New custom group.
40884	(wordstar-mode-lighter): New custom variable.
40885	(wordstar-mode): Declare with define-minor-mode.
40886	(turn-on-wordstar-mode): New function.
40887	(global-wordstar-mode): New function.  Use previous new function.
40888
408892019-04-24  Dmitry Gutov  <dgutov@yandex.ru>
40890
40891	Fix project-find-regexp search for '--'
40892
40893	* lisp/progmodes/project.el (project--find-regexp-in-files):
40894	Add an explicit '-e' before the pattern.  Fixing the ability to
40895	search for '--'.  Reported by Juri Linkov <juri@linkov.net>.
40896
408972019-04-24  Juri Linkov  <juri@linkov.net>
40898
40899	* lisp/windmove.el (windmove-display-in-direction): Support consecutive calls
40900
40901	Remember action and delete it from display-buffer-overriding-action afterwards
40902
409032019-04-24  Philipp Stephani  <phst@google.com>
40904
40905	Unbreak build when building without GMP support.
40906
40907	Add support for a new preprocessor macro EMACS_MODULE_HAVE_MPZ_T to
40908	emacs-module.h.  If this macro is defined, assume that mpz_t is
40909	already defined and don’t include gmp.h.
40910
40911	Don’t document the new macro for now, as it’s unclear whether we want
40912	to support this in modules outside the Emacs tree.
40913
40914	* src/emacs-module.h.in: Allow user to prevent inclusion of gmp.h.
40915
40916	* src/emacs-module.c: Use mini-gmp if GMP is unavailable.  Don’t
40917	include gmp.h.
40918
40919	* src/lisp.h: Don’t require gmp.h.  It’s not needed for lisp.h.
40920
40921	* test/Makefile.in (GMP_LIB, GMP_OBJ): New variables.
40922	($(test_module)): Use them.
40923
40924	* test/data/emacs-module/mod-test.c: Use mini-gmp if GMP is unavailable.
40925
409262019-04-24  Philipp Stephani  <phst@google.com>
40927
40928	Add missing GMP library to test module.
40929
40930	* test/Makefile.in (GMP_LIB): Define variable.
40931	($(test_module)): Use it.
40932
409332019-04-24  Philipp Stephani  <phst@google.com>
40934
40935	Move definition of Lisp_Module_Function to emacs-module.c.
40936
40937	* src/lisp.h: Remove include of emacs-module.h.  Remove definition
40938	of Lisp_Module_Function structure.
40939
40940	* src/emacs-module.c (module_function_documentation)
40941	(module_function_address): New accessor functions for module function
40942	fields.
40943	(emacs_subr, struct Lisp_Module_Function): Move from lisp.h.
40944
40945	* src/print.c (print_vectorlike):
40946	* src/doc.c (Fdocumentation): Use the new accessor functions.
40947
409482019-04-24  Paul Eggert  <eggert@cs.ucla.edu>
40949
40950	Simplify thread initialization and GC
40951
40952	* src/lisp.h (PVECHEADERSIZE): New macro.
40953	(XSETPVECTYPESIZE): Use it.
40954	* src/search.c (syms_of_search): No need to initialize or
40955	staticpro last_thing_searched or saved_last_thing_searched, as
40956	the thread code arranges for initialization and GC.
40957	* src/thread.c (main_thread): Initialize statically.
40958	(Fmake_mutex, Fmake_condition_variable, Fmake_thread):
40959	Use ALLOCATE_ZEROED_PSEUDOVECTOR rather than zeroing by hand.
40960	(mark_one_thread): No need to mark Lisp_Object members.
40961	(init_main_thread, init_threads_once): Remove.  All uses removed.
40962
409632019-04-24  Eli Zaretskii  <eliz@gnu.org>
40964
40965	Regenerate src/emacs-module.h when emacs-module.h.in changes
40966
40967	* Makefile.in (CONFIG_STATUS_FILES_IN): Add
40968	src/emacs-module.h.in.
40969
409702019-04-24  Eli Zaretskii  <eliz@gnu.org>
40971
40972	Fix rescheduling timers after suspension
40973
40974	* lisp/emacs-lisp/timer.el (timer-event-handler): Fix the
40975	comparison between next invocation time and current time.
40976
409772019-04-24  Eli Zaretskii  <eliz@gnu.org>
40978
40979	Fix posn-at-point with line-number display and display properties
40980
40981	* src/xdisp.c (pos_visible_p): Account for line-number display
40982	width when CHARPOS is covered by display property that begins
40983	at the 2nd display element of a screen line.  (Bug#35404)
40984
409852019-04-24  Eli Zaretskii  <eliz@gnu.org>
40986
40987	Fix a typo in a recent commit
40988
40989	* src/timefns.c (timespec_to_lisp): Fix a typo in function
40990	definition.
40991
409922019-04-24  Philipp Stephani  <phst@google.com>
40993
40994	* doc/lispref/internals.texi (Module Values): Add a GMP example
40995
409962019-04-24  Philipp Stephani  <phst@google.com>
40997
40998	Clarify rounding mode when converting to struct timespec.
40999
41000	* doc/lispref/internals.texi (Module Values): Clarify that the
41001	truncation is towards negative infinity.
41002
41003	* test/data/emacs-module/mod-test.c (Fmod_test_nanoseconds): Add test
41004	function.
41005	(emacs_module_init): Define it.
41006
41007	* test/src/emacs-module-tests.el (mod-test-nanoseconds): New unit test.
41008
410092019-04-24  Philipp Stephani  <phst@google.com>
41010
41011	Fix return type of make_time.
41012
41013	make_time is documented to return a (TICKS . HZ) pair, so we can’t use
41014	make_lisp_time.  Introduce a new conversion function instead.
41015
41016	* src/emacs-module.c (module_make_time): Use timespec_to_lisp to
41017	correct return type.
41018
41019	* src/timefns.c (timespec_to_lisp): New function.
41020	(make_lisp_time): Use it.
41021
41022	* test/src/emacs-module-tests.el (mod-test-add-nanosecond/valid):
41023	Check return type.
41024
410252019-04-24  Philipp Stephani  <phst@google.com>
41026
41027	Add module functions to convert from and to big integers.
41028
41029	* src/module-env-27.h: Add new module functions to convert big
41030	integers.
41031
41032	* src/emacs-module.h.in (emacs_mpz): Define if GMP is available.
41033
41034	* src/emacs-module.c (module_extract_big_integer)
41035	(module_make_big_integer): New functions.
41036	(initialize_environment): Use them.
41037
41038	* test/data/emacs-module/mod-test.c (Fmod_test_double): New test
41039	function.
41040	(emacs_module_init): Define it.
41041
41042	* test/src/emacs-module-tests.el (mod-test-double): New unit test.
41043
41044	* doc/lispref/internals.texi (Module Values): Document new functions.
41045
410462019-04-24  Philipp Stephani  <phst@google.com>
41047
41048	Add conversions to and from struct timespec to module interface.
41049
41050	Time values are a fundamental data type, and such conversions are hard
41051	to implement within modules because of the various forms of time
41052	values in Emacs Lisp.  Adding dedicated conversion functions can
41053	significantly simplify module code dealing with times.
41054
41055	This approach uses nanosecond precision.  While Emacs in theory has
41056	support for higher-precision time values, in practice most languages
41057	and standards, such as POSIX, C, Java, and Go, have settled on
41058	nanosecond-precision integers to represent time.
41059
41060	* src/emacs-module.h.in: Add header for struct timespec.
41061
41062	* src/module-env-27.h: Add module functions for time conversion.
41063
41064	* src/emacs-module.c (module_extract_time, module_make_time): New
41065	functions.
41066	(initialize_environment): Use them.
41067
41068	* test/data/emacs-module/mod-test.c (Fmod_test_add_nanosecond): New
41069	test function.
41070	(emacs_module_init): Define it.
41071
41072	* test/src/emacs-module-tests.el (mod-test-add-nanosecond/valid)
41073	(mod-test-add-nanosecond/nil, mod-test-add-nanosecond/invalid): New
41074	unit tests.
41075
41076	* doc/lispref/internals.texi (Module Values): Document time
41077	conversion functions.
41078
410792019-04-23  Eli Zaretskii  <eliz@gnu.org>
41080
41081	Revert "Remove font.c code commented out for a decade"
41082
41083	This reverts commit 64d0cd9810af6bd0c378fc6bc666c76ddfa97e40.
41084
41085	Rationale: any font-related code and comments, even if unused
41086	for decades, serves as important source of useful information
41087	in an area of Emacs code that is notoriously under-documented.
41088
41089	Please do NOT remove this stuff until we have an active
41090	expert in this are on board, who will then decide whether
41091	this can be retired.
41092
410932019-04-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
41094
41095	Don't link libXft when using cairo
41096
41097	* configure.ac: Check cairo early.  Don't try Xft if cairo is used.
41098	* lwlib/lwlib-utils.h [USE_CAIRO]: Include cairo.h and fontconfig.h.
41099	(XftFont, XftDraw, XftColor, XGlyphInfo) [USE_CAIRO]: New typedefs.
41100	(XftFontOpenName, XftFontClose, XftDrawCreate, XftDrawDestroy)
41101	(XftDrawRect, XftDrawStringUtf8, XftTextExtentsUtf8) [USE_CAIRO]: New macros.
41102	(crxft_font_open_name, crxft_font_close, crxft_draw_create)
41103	(crxft_draw_rect, crxft_draw_string, crxft_text_extents) [USE_CAIRO]: New
41104	externs.
41105	* lwlib/lwlib-utils.c [USE_CAIRO]: Include math.h, cairo-ft.h, and
41106	cairo-xlib.h.
41107	(crxft_font_open_name, crxft_font_close, crxft_draw_create)
41108	(crxft_set_source_color, crxft_draw_rect, crxft_draw_string)
41109	(crxft_text_extents) [USE_CAIRO]: New Xft compatibility functions.
41110	* lwlib/xlwmenuP.h [USE_CAIRO]: Include lwlib-utils.h.
41111	* lwlib/xlwmenu.c (display_menu_item) [USE_CAIRO]: Call
41112	cairo_surface_mark_dirty and cairo_surface_flush.
41113	* lwlib/lwlib-Xaw.c [USE_CAIRO]: Include stdlib.h and lwlib-utils.h.
41114	(draw_text) [USE_CAIRO]: Call cairo_surface_flush.
41115	* src/xsettings.c [USE_CAIRO]: Include fontconfig.h
41116	(apply_xft_settings) [!HAVE_XFT]: Don't call XftDefaultSubstitute or
41117	XftDefaultSet.
41118	* lwlib/lwlib-Xaw.c:
41119	* lwlib/lwlib-int.h:
41120	* lwlib/xlwmenu.c:
41121	* lwlib/xlwmenuP.h:
41122	* src/xrdb.c:
41123	* src/xsettings.c:
41124	* src/xterm.c: Replace all #ifdef HAVE_XFT with #if defined USE_CAIRO ||
41125	defined HAVE_XFT.
41126	* src/xfns.c (x_default_font_parameter): Replace #ifdef HAVE_XFT with #if
41127	defined	USE_CAIRO || defined HAVE_XFT.
41128
411292019-04-23  Stefan Monnier  <monnier@iro.umontreal.ca>
41130
41131	* lisp/emacs-lisp/timer-list.el: Fix header-line alignment
41132
41133	Enable lexical-binding.
41134	(cl-print-compiled, cl-print-compiled-button): Declare.
41135	(timer-list-mode): Add spacing to align the header.
41136
411372019-04-23  Philipp Stephani  <phst@google.com>
41138
41139	* src/emacs-module.c: Add an additional requirement for API changes.
41140
411412019-04-23  Paul Eggert  <eggert@cs.ucla.edu>
41142
41143	Remove some unnecessary #ifdef directives
41144
41145	These directives are in files that are compiled only if the
41146	symbols are defined.
41147	* src/gfilenotify.c: Remove unnecessary ‘#ifdef HAVE_GFILENOTIFY’.
41148	* src/inotify.c: Remove unnecessary ‘#ifdef HAVE_INOTIFY’.
41149	* src/kqueue.c: Remove unnecessary ‘#ifdef HAVE_KQUEUE’.
41150
411512019-04-23  Stefan Monnier  <monnier@iro.umontreal.ca>
41152
41153	* etc/package-keyring.gpg: Add the 2019 key
41154
411552019-04-23  Paul Eggert  <eggert@cs.ucla.edu>
41156
41157	Remove font.c code commented out for a decade
41158
41159	* src/font.c (LSTRING_HEADER_SIZE, LSTRING_GLYPH_SIZE, check_gstring)
41160	(check_otf_features, otf_list, otf_tag_symbol, otf_open)
41161	(font_otf_capability, generate_otf_features)
41162	(font_otf_DeviceTable, font_otf_ValueRecord)
41163	(font_otf_Anchor, Ffont_drive_otf, Ffont_otf_alternates)
41164	(Fdraw_string, syms_of_font): Remove "experimental and not
41165	tested much" code that has been "#if 0"-ed out for more than a
41166	decade and which was getting in the way of maintenance.
41167
411682019-04-23  Philipp Stephani  <phst@google.com>
41169
41170	Use three-argument form for out-of-range errors.
41171
41172	This provides more debugging hints for callers.
41173
41174	* src/emacs-module.c (module_copy_string_contents): Use three-argument
41175	form of args-out-of-range.
41176
411772019-04-23  Philipp Stephani  <phst@google.com>
41178
41179	Use high-level integer conversion macro in a few cases.
41180
41181	INT_TO_INTEGER is more obviously correct and means we don’t have to
41182	worry about data type sizes and signedness.
41183
41184	* src/json.c (json_parse_error): Use INT_TO_INTEGER.  The tiny
41185	performance gain of make_fixed_natnum isn’t worth the trouble then
41186	signaling an error.
41187
411882019-04-23  Mattias Engdegård  <mattiase@acm.org>
41189
41190	Rename auto-revert-notify-watch-descriptor-hash-list
41191
41192	* lisp/autorevert.el
41193	(auto-revert-notify-watch-descriptor-hash-list):
41194	Rename to auto-revert--buffers-by-watch-descriptor.  Improved doc string.
41195	(auto-revert-notify-rm-watch, auto-revert-notify-add-watch,
41196	auto-revert-notify-handler): Use new name.
41197
411982019-04-23  Michael Albinus  <michael.albinus@gmx.de>
41199
41200	Remote processes cannot use a pipe process for stderr
41201
41202	* doc/lispref/processes.texi (Asynchronous Processes):
41203	(Accepting Output): Remote processes cannot use a pipe process for
41204	stderr.
41205
412062019-04-23  Philipp Stephani  <phst@google.com>
41207
41208	* src/json.c (json_make_string): Add missing cast.
41209
412102019-04-23  Eli Zaretskii  <eliz@gnu.org>
41211
41212	Speed up JSON parsing
41213
41214	Thanks to Dmitry Gutov <dgutov@yandex.ru> for running many
41215	benchmarks and for useful discussions.
41216	* src/json.c (json_make_string): Speed up parsing of JSON
41217	strings by optimizing the normal case of a valid UTF-8 string
41218	being returned from libjansson.  (Bug#31138)
41219
412202019-04-23  Philipp Stephani  <phst@google.com>
41221
41222	Small fix for a JSON unit test.
41223
41224	* test/src/json-tests.el (json-parse-string/null): Make JSON object
41225	syntactically valid.  This test is supposed to check whether an
41226	escaped null character causes an error, but without quoting the string
41227	it would be syntactically invalid in any case.
41228
412292019-04-23  Alan Mackenzie  <acm@muc.de>
41230
41231	Optimize for typing characters into long C++ raw strings.
41232
41233	* lisp/progmodes/cc-fonts.el (c-font-lock-complex-decl-prepare)
41234	(c-font-lock-objc-methods) (c-font-lock-declarations, c-font-lock-enum-tail)
41235	(c-font-lock-cut-off-declarators, c-font-lock-enclosing-decls): If the chunk
41236	been fontified consists entirely of comments and strings, don't attempt to
41237	perform the function's action.
41238
41239	* lisp/progmodes/cc-mode.el (c-before-change-check-unbalanced-strings): Don't
41240	expand (c-new-BEG c-new-END) unnecessarily to the entire raw string being
41241	fontified.
41242	(c-fl-decl-start, c-fl-decl-end): When in a (raw or otherwise) string, don't
41243	return a position outside of the string (which used to cause unneeded
41244	fontification).
41245
412462019-04-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
41247
41248	Release xft_data in widget destroy callback to avoid visual distraction
41249
41250	* lwlib/lwlib-int.h (struct _widget_instance) [HAVE_XFT]: Remove nr_xft_data.
41251	* lwlib/lwlib-Xaw.c (find_xft_data, xaw_update_one_widget) [HAVE_XFT]: Loop
41252	while widget member is not NULL instead of using nr_xft_data.
41253	(xaw_destroy_instance) [HAVE_XFT]: Move xft_data release code from here ...
41254	(destroy_xft_data) [HAVE_XFT]: ... to here.
41255	(make_dialog) [HAVE_XFT]: Add destroy_xft_data as destroy callback for dialog.
41256
412572019-04-22  Paul Eggert  <eggert@cs.ucla.edu>
41258
41259	Let plain ‘make’ work even not GNU Make
41260
41261	* Makefile.in (top_distclean): Clean makefile as well as Makefile.
41262	* configure.ac: If not using plain ‘make’, create a makefile
41263	so that plain ‘make’ simply calls $(MAKE).
41264
412652019-04-22  Paul Eggert  <eggert@cs.ucla.edu>
41266
41267	Revert Vinternal_interpreter_environment tweak
41268
41269	Stefan Monnier pointed out examples like (funcall `(closure
41270	,(let ((cycle (list nil))) (setcdr cycle cycle)) () a)),
41271	where the user can set Vinternal_interpreter_environment
41272	indirectly.
41273	* src/eval.c (Fsetq): Revert recent change, going back to Fassq.
41274
412752019-04-22  Paul Eggert  <eggert@cs.ucla.edu>
41276
41277	Improve UBSan discussion in etc/DEBUG
41278
41279	* etc/DEBUG: Improve -gdwarf-N documentation.
41280	Go into more detail about UndefinedBehaviorSanitizer.
41281
412822019-04-22  Paul Eggert  <eggert@cs.ucla.edu>
41283
41284	Tweak Vinternal_interpreter_environment lookup
41285
41286	* src/eval.c (Fsetq, eval_sub): Use assq_no_quit instead
41287	of Fassq for a list that cannot contain cycles or be that long.
41288
412892019-04-22  Paul Eggert  <eggert@cs.ucla.edu>
41290
41291	Improve wur coverage on older GCCs
41292
41293	* src/conf_post.h (__has_attribute_warn_unused_result):
41294	New macro for compilers lacking __has_attribute.
41295	* src/systhread.h (__has_attribute): Remove ineffective define.
41296	(ATTRIBUTE_WARN_UNUSED_RESULT): Work better on GCC 3.4 thru 4.
41297
412982019-04-22  Paul Eggert  <eggert@cs.ucla.edu>
41299
41300	Go back to old way of checking json int range
41301
41302	Although the lisp.h macros really need improvement,
41303	INTEGER_TO_INT is not the right way to go about it, as it
41304	causes conversion from intmax_t to uintmax_t and back again,
41305	which can cause a signal if the value is negative.
41306	* src/lisp.h (INTEGER_TO_INT, ranged_integer_to_int)
41307	(ranged_integer_to_uint): Remove, reverting recent changes to
41308	this file.
41309	* src/json.c (lisp_to_json): Revert to previous code,
41310	as the change messes up with uintmax_t<->intmax_t conversion.
41311
413122019-04-22  Philipp Stephani  <phst@google.com>
41313
41314	* src/lisp.h (INTEGER_TO_INT): Fix bug.
41315
413162019-04-22  Mattias Engdegård  <mattiase@acm.org>
41317
41318	Precise handling of filenotify `stopped' events
41319
41320	* lisp/autorevert.el (auto-revert-notify-handler):
41321	When getting a `stopped' event, deal with it for the buffers it applies to,
41322	rather than for all buffers in auto-revert mode.
41323
413242019-04-22  Mattias Engdegård  <mattiase@acm.org>
41325
41326	* lisp/autorevert.el (auto-revert-notify-rm-watch): Simplify.
41327
413282019-04-22  Mattias Engdegård  <mattiase@acm.org>
41329
41330	Revert "Don't remove notify descriptor that is already gone"
41331
41332	This reverts commit e9e807e9317ca7aa99a5dd220ee8586f8f4331bf,
41333	which is no longer necessary as `file-notify-rm-watch' has been
41334	made robust against reentry.
41335
413362019-04-22  Mattias Engdegård  <mattiase@acm.org>
41337
41338	Make file-notify-rm-watch robust against reentry
41339
41340	Allow file-notify callbacks to call `file-notify-rm-watch', harmlessly,
41341	after receiving a `stopped' event without triggering recursion.
41342
41343	* lisp/filenotify.el (file-notify--watch): Note that `callback' can be nil.
41344	(file-notify--rm-descriptor): Set the `callback' field to nil before
41345	sending `stopped'.
41346	(file-notify-rm-watch): Don't do anything if the `callback' field is nil.
41347
413482019-04-22  Philipp Stephani  <phst@google.com>
41349
41350	Introduce a helper macro to convert a Lisp integer to a C integer.
41351
41352	This is similar to CONS_TO_INTEGER.  The inverse (INT_TO_INTEGER)
41353	already exists.
41354
41355	* src/lisp.h (INTEGER_TO_INT): New macro.
41356	(ranged_integer_to_int, ranged_integer_to_uint): New
41357	functions.
41358
41359	* src/json.c (lisp_to_json): Use helper macro.
41360
413612019-04-22  Philipp Stephani  <phst@google.com>
41362
41363	Improve documentation around standard error pipes (Bug#35328).
41364
41365	* doc/lispref/processes.texi (Asynchronous Processes): Document
41366	existence and properties of the standard error process.
41367	(Accepting Output): Document that one has to accept output from the
41368	standard error process separately.
41369
413702019-04-22  Philipp Stephani  <phst@google.com>
41371
41372	Module API: Don’t require null-terminated strings in make_string.
41373
41374	* src/emacs-module.c (module_make_string): Use make_unibyte_string, which
41375	doesn’t require its argument to be null-terminated.  Since it always
41376	returns a heap-allocated string, we don’t have to copy it any more
41377	while decoding.
41378	(module_decode): New helper function.
41379
413802019-04-22  Philipp Stephani  <phst@google.com>
41381
41382	Use utf-8-unix for coding system conversions in the module API.
41383
41384	Factor out conversions into helper functions to provide a simpler
41385	interface.
41386
41387	* src/emacs-module.c (module_encode, module_decode_copy): New helper
41388	functions.
41389	(module_make_function, module_copy_string_contents)
41390	(module_make_string): Use them.
41391
413922019-04-22  Basil L. Contovounesios  <contovob@tcd.ie>
41393
41394	Improve pure and side-effect-free docs
41395
41396	For discussion, see thread starting at:
41397	https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg00316.html
41398	* doc/lispref/customize.texi (Composite Types): Do not overspecify
41399	:match-alternatives predicates.
41400	* doc/lispref/eval.texi (Intro Eval): Anchor definition of "side
41401	effect" for cross-referencing...
41402	* doc/lispref/functions.texi (What Is a Function): ...from here.
41403	Define what a pure function is.
41404	* doc/lispref/internals.texi (Writing Emacs Primitives): Describe
41405	currently preferred approach to marking primitives as pure and
41406	side-effect-free.
41407	* doc/lispref/symbols.texi (Standard Properties): Expand description
41408	of pure and side-effect-free properties.
41409
414102019-04-22  Philipp Stephani  <phst@google.com>
41411
41412	Refactoring: Inline a few macros.
41413
41414	Now that CATCHER_ALL catches signals as well, we can simplify
41415	MODULE_HANDLE_NONLOCAL_EXIT a bit.
41416
41417	* src/emacs-module.c (MODULE_SETJMP, MODULE_SETJMP_1): Remove.
41418	(MODULE_HANDLE_NONLOCAL_EXIT): Inline MODULE_SETJMP and
41419	MODULE_SETJMP_1.
41420
414212019-04-22  Michael Albinus  <michael.albinus@gmx.de>
41422
41423	Some changes in tramp-tests
41424
41425	* test/lisp/net/tramp-tests.el (tramp-test32-shell-command):
41426	Check for backward compatibility.
41427	(tramp-test33-environment-variables): Apply a better check for
41428	unset variable.
41429
414302019-04-21  Paul Eggert  <eggert@cs.ucla.edu>
41431
41432	Mention AddressSanitizer etc. in etc/DEBUG
41433
41434	* etc/DEBUG: Modernize for AddressSanitizer etc.
41435	* etc/NEWS: Defer to etc/DEBUG for this.
41436
414372019-04-21  Paul Eggert  <eggert@cs.ucla.edu>
41438
41439	Remove --enable-checking=xmallocoverrun
41440
41441	It doesn’t work anymore, and these days ‘gcc -fsanitize=address’
41442	does a better job anyway.
41443	* configure.ac: Remove the option.
41444	* configure.ac (ac_xmalloc_overrun, XMALLOC_OVERRUN_CHECK):
41445	* src/alloc.c (XMALLOC_OVERRUN_CHECK_OVERHEAD)
41446	(XMALLOC_OVERRUN_CHECK_SIZE, XMALLOC_OVERRUN_SIZE_SIZE)
41447	(xmalloc_overrun_check_header, xmalloc_overrun_check_trailer)
41448	(xmalloc_put_size, xmalloc_get_size, overrun_check_malloc)
41449	(overrun_check_realloc, overrun_check_free):
41450	Remove.  All uses removed.
41451	* etc/NEWS: Mention this.
41452
414532019-04-21  Paul Eggert  <eggert@cs.ucla.edu>
41454
41455	Remove --enablechecking=conslist configure option
41456
41457	* configure.ac: Remove the option.
41458	* configure.ac (ac_gc_check_cons_list, GC_CHECK_CONS_LIST):
41459	* src/alloc.c (check_cons_list) [GC_CHECK_CONS_LIST]:
41460	* src/lisp.h (lisp_h_check_cons_list, check_cons_list):
41461	Remove.  All uses removed.
41462	* etc/NEWS: Mention this.
41463
414642019-04-21  Paul Eggert  <eggert@cs.ucla.edu>
41465
41466	Simplify XPNTR
41467
41468	Because XPNTR now uses ATTRIBUTE_NO_SANITIZE_UNDEFINED,
41469	it can be simplified.
41470	* src/alloc.c (macro_PNTR_ADD, PNTR_ADD, macro_XPNTR): Remove.
41471	(XPNTR): Open-code rather than using the removed macros and
41472	functions.  Also, simplify by using LISP_WORD_TAG.
41473
414742019-04-21  Paul Eggert  <eggert@cs.ucla.edu>
41475
41476	Fix drain_reloc_list alignment bug
41477
41478	* src/pdumper.c (dump_charset): Use alignof (struct charset),
41479	not alignof (int), since struct charset might be more strictly
41480	aligned than int.  I think this is just a minor performance
41481	issue, but we might as well use the correct alignment.
41482	(drain_reloc_list): Use an alignment instead of a size for the
41483	output alignment.  This prevents undefined behavior when
41484	alignof (struct emacs_reloc) == 8 and sizeof (dump_off) == 4
41485	when building on x86-64 with gcc -fsanitize=undefined.
41486
414872019-04-21  Paul Eggert  <eggert@cs.ucla.edu>
41488
41489	Port dump_bitset_clear to -fsanitize=undefined
41490
41491	* src/pdumper.c (dump_bitset_clear):
41492	Pacify -fsanitize=undefined by avoiding memset (NULL, x, 0),
41493	which strictly speaking has undefined behavior although it
41494	works on all production platforms I know.
41495
414962019-04-21  Paul Eggert  <eggert@cs.ucla.edu>
41497
41498	Port to recent gcc -fsanitize=undefined
41499
41500	* src/alloc.c (XPNTR): Add ATTRIBUTE_NO_SANITIZE_UNDEFINED and
41501	remove ATTRIBUTE_UNUSED.  Do not define as a macro, so that
41502	ATTRIBUTE_NO_SANITIZE_UNDEFINED works.
41503	* src/lisp.h (lisp_h_XSYMBOL): Remove.  All uses removed.
41504	With recent GCC the macro does not work with -fsanitize=undefined,
41505	and the macro can be omitted as its only function is to optimize -O0.
41506
415072019-04-21  Basil L. Contovounesios  <contovob@tcd.ie>
41508
41509	Move side-effect-free from unsafep.el to subr.el
41510
41511	* lisp/emacs-lisp/unsafep.el: Move side-effect-free property setting
41512	from here...
41513	* lisp/subr.el: ...to here, as function declarations for modularity.
41514
415152019-04-21  Paul Eggert  <eggert@cs.ucla.edu>
41516
41517	Fix double-free in pdumper
41518
41519	Revert the double-free bug that I introduced in
41520	2019-03-11T15:20:54Z!eggert@cs.ucla.edu.
41521	* src/pdumper.c (dump_mmap_reset): Do not free the private member;
41522	that’s the release function’s job.
41523	(dump_mm_heap_cb_release): Free cb if its refcount goes to zero.
41524	(dump_mmap_contiguous_heap): Mention memory leak in comment.
41525
415262019-04-21  Glenn Morris  <rgm@gnu.org>
41527
41528	Merge from origin/emacs-26
41529
41530	9d7e08d (origin/emacs-26) Avoid false positives and false negatives o...
41531	75b589c Fix markup related to quoting in Info
41532	fd6ff29 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/emac...
41533	cd2204f Add a package: line to c-submit-bug-report.
41534	a992dca ; Remove empty NEWS sections
41535	ea67270 ; Add NEWS sections for 26.3
41536	45b0946 ; Bump Emacs version to 26.2.50
41537	aae8cc3 * admin/admin.el (set-version): Add NEWS headers for a .50 ve...
41538
415392019-04-21  Glenn Morris  <rgm@gnu.org>
41540
41541	Merge from origin/emacs-26
41542
41543	cd2204f Add a package: line to c-submit-bug-report.
41544	a992dca ; Remove empty NEWS sections
41545	ea67270 ; Add NEWS sections for 26.3
41546
41547	Conflicts:
41548		etc/NEWS
41549
415502019-04-21  Glenn Morris  <rgm@gnu.org>
41551
41552	Merge from origin/emacs-26
41553
41554	aae8cc3 * admin/admin.el (set-version): Add NEWS headers for a .50 ve...
41555
415562019-04-21  Glenn Morris  <rgm@gnu.org>
41557
41558	Merge from origin/emacs-26
41559
41560	037970f Document insert-image-file's return value (Bug#32978)
41561	598b45a Autoload cua-toggle-rectangle-mark (Bug#34947)
41562	95bd56d Tell xclip not to expect job-control under eshell (Bug#35257)
41563	9997bbb ; * src/emacs.c: Fix typo in comment (Bug#35320).
41564	a4ad7be Fix off-by-one-link error in image--set-property
41565
415662019-04-20  Paul Eggert  <eggert@cs.ucla.edu>
41567
41568	Port make-fingerprint to LeakSanitizer
41569
41570	* lib-src/make-fingerprint.c (buf): Now static,
41571	to pacify LeakSanitizer.
41572
415732019-04-20  Michael R. Mauger  <michael@mauger.com>
41574	Fix Bug#35307.
41575
41576	* lisp/progmodes/sql.el(sql-product-alist): Added
41577	:prompt-cont-regexp for ms.
41578
41579	Looking for experience with Microsofts SQLCMD interpreter and
41580	adjustments needed for Emacs to support it.
41581
415822019-04-20  Michael R. Mauger  <michael@mauger.com>
41583	Fix  Bug#24483.
41584
41585	* lisp/progmodes/sql.el
41586	(sql-interactive-remove-continuation-prompt): Properly protect
41587	`sql-prompt-cont-regexp'.
41588	(sql-interactive-mode): Same.
41589
41590	 * lisp/progmodes/sql.el
41591	(sql-product-alist): Corrected :terminator defns.
41592	(sql-debug-send): New variable.
41593	(sql-send-string): Use it and correct buffer context.
41594	(sql-send-magic-terminator): Use `sql-input-sender'.
41595	(sql-placeholders-filter): Bug#11481 Don't recursively replace placeholders
41596	* test/lisp/progmodes/sql-tests.el
41597	(sql-test-placeholder-filter): Test placeholder functionality.
41598
415992019-04-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
41600
41601	Fix text metrics calculation in Xft support for lwlib
41602
41603	* lwlib/lwlib-Xaw.c (get_text_width_and_height) [HAVE_XFT]:
41604	* lwlib/xlwmenu.c (string_width) [HAVE_XFT]: Use xOff member instead of width.
41605
416062019-04-20  Alexander Gramiak  <agrambot@gmail.com>
41607
41608	* src/configure.ac: Check for GTK 2 features only on GTK 2
41609
416102019-04-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
41611
41612	* lwlib/lwlib-Xaw.c (draw_text) [HAVE_XFT]: Fix memory leak.
41613
416142019-04-20  Dmitry Gutov  <dgutov@yandex.ru>
41615
41616	Support amending the last commit using VC-Hg
41617
41618	* lisp/vc/log-edit.el (log-edit--toggle-amend): Extract from
41619	vc-git-log-edit-toggle-amend (bug#34944).
41620
41621	* lisp/vc/vc-hg.el (vc-hg-log-edit-toggle-amend): New function.
41622	Use the aforementioned.
41623	(vc-hg-log-edit-mode-map): New variable.
41624	(vc-hg-log-edit-mode): New major mode.
41625
416262019-04-20  Michael Albinus  <michael.albinus@gmx.de>
41627
41628	Mark different-diagnostic-types as failed on emba.
41629
41630	* test/lisp/progmodes/flymake-tests.el (different-diagnostic-types):
41631	Expect also failure on emba.gnu.org.
41632
416332019-04-20  Paul Eggert  <eggert@cs.ucla.edu>
41634
41635	Improve XDG_RUNTIME_DIR diagnostic
41636
41637	* lib-src/emacsclient.c (set_local_socket):
41638	If there appears to be an XDG runtime directory for the user
41639	but XDG_RUNTIME_DIR is unset, suggest setting it while warning
41640	about potential security issues (Bug#35300).
41641
416422019-04-20  Alan Mackenzie  <acm@muc.de>
41643
41644	Fix Pike Mode's autodoc doc comments style's continued lines.
41645
41646	* lisp/progmodes/cc-engine.el (c-forward-sws, c-backward-sws): Recognize
41647	matches of c-doc-line-join-re as syntactic whitespace.
41648	(c-find-decl-prefix-search): Recognize and move over matches of
41649	c-doc-line-join-re as whitespace.
41650	(c-find-decl-spots): Before moving backward a char, check (bobp).  Before
41651	moving forward over a comment, check it isn't possibly a "bright" comment.
41652
41653	* lisp/progmodes/cc-fonts.el (c-get-doc-comment-style): New function,
41654	extracted from c-compose-keywords-list.
41655	(c-compose-keywords-list): Call the above new function.
41656	(pike-font-lock-keywords, pike-font-lock-keywords-2)
41657	(pike-font-lock-keywords-3): Call c-set-doc-comment-res.
41658	(c-doc-line-join-re, c-doc-bright-comment-start-re, c-doc-line-join-end-ch):
41659	New variables.
41660	(c-set-doc-comment-re-element, c-set-doc-comment-char-list): New macros.
41661	(c-set-doc-comment-res): New function.
41662	(c-font-lock-doc-comments): For consistency and repeatability, in a sequence
41663	of C++ style doc comments, don't fontify the region between BOL and the
41664	comment marker.
41665	(autodoc-line-join-re, autodoc-bright-comment-start-re)
41666	(autodoc-line-join-end-ch): New variables.
41667
41668	* lisp/progmodes/cc-mode.el (c-doc-fl-decl-start, c-doc-fl-decl-end): New
41669	functions.
41670	(c-change-expand-fl-region, c-context-expand-fl-region): Call the above two
41671	new functions for extra possibilities for the start and end of a construct.
41672
41673	* doc/misc/cc-mode.texi (Doc Comments): Add a sentence drawing attention to
41674	the possibility of fontifying constructs within a doc comment.
41675
416762019-04-19  Stefan Monnier  <monnier@iro.umontreal.ca>
41677
41678	* lisp/emacs-lisp/smie.el (smie-indent-comment-continue): Single-char case.
41679
41680	Make it so the comment-continue is aligned with the comment-start when
41681	comment-start is a single-char.
41682
416832019-04-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
41684
41685	* src/ftcrfont.c (ftcrfont_shape): Fix last change.
41686
416872019-04-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
41688
41689	Use bitmap strikes as fallbacks for ftcr font backend
41690
41691	* src/ftfont.h (struct font_info): New member bitmap_strike_index.
41692	* src/ftfont.c (ftfont_open2): Try bitmap strikes as fallbacks.
41693	(ftfont_open): Discard bitmap strikes.
41694	* src/ftcrfont.c (ftcrfont_open): Recalculate metrics for bitmap strikes.
41695	(ftcrfont_get_bitmap, ftcrfont_anchor_point, ftcrfont_shape): New functions.
41696	(struct font_driver): Use them.
41697
416982019-04-19  Stefan Monnier  <monnier@iro.umontreal.ca>
41699
41700	* lisp/emacs-lisp/radix-tree.el (pcase-defmacro): Improve docstring
41701
41702	* lisp/emacs-lisp/byte-run.el (define-obsolete-variable-alias): Tweak doc
41703
41704	* lisp/calendar/time-date.el (date-to-time): 'signal' only takes 2 args
41705
41706	* lisp/calendar/parse-time.el (parse-time-string): Use functionp and setf
41707
417082019-04-19  Paul Eggert  <eggert@cs.ucla.edu>
41709
41710	Fix GC_CHECK_STRING_BYTES false alarm with pdumper
41711
41712	* src/alloc.c (string_bytes): Don’t abort on strings
41713	taken from the dumped file.
41714
417152019-04-19  Paul Eggert  <eggert@cs.ucla.edu>
41716
41717	Fix another hash false alarm
41718
41719	* src/pdumper.c (dump_vectorlike): Fix hash.
41720
417212019-04-19  Paul Eggert  <eggert@cs.ucla.edu>
41722
41723	* src/emacs-module.c (value_storage_contains_p): Fix typo.
41724
417252019-04-19  Philipp Stephani  <phst@google.com>
41726
41727	Remove some ineffective #ifdefs.
41728
41729	Since DEFSYM doesn't by itself do anything and make-docfile ignores
41730	preprocessor statements, conditional compilation of DEFSYMs is
41731	ineffective.
41732
41733	* src/data.c (syms_of_data): Remove ineffective #ifdefs.
41734
417352019-04-19  Philipp Stephani  <phst@google.com>
41736
41737	Remove some #ifdefs for user pointers.
41738
41739	Even if Emacs is compiled without module support, we don't have to
41740	comment out every bit of user pointer support.  Defining the basic
41741	structures and functions and detecting user pointers in switch
41742	statements is harmless, and we're already doing the same for module
41743	functions.  Removing these #ifdefs makes the code a bit easier to
41744	read.
41745
41746	* src/lisp.h (PVEC_USER_PTR, struct Lisp_User_Ptr, USER_PTRP)
41747	(XUSER_PTR): Define unconditionally.
41748
41749	* src/data.c (Ftype_of):
41750	* src/alloc.c (cleanup_vector):
41751	* src/print.c (print_vectorlike):
41752	* src/pdumper.c (dump_vectorlike): Remove #ifdef for user pointers.
41753
417542019-04-19  Philipp Stephani  <phst@google.com>
41755
41756	Remove special-casing of tagged pointers.
41757
41758	This partially reverts commit
41759	09b2b8a5ce5b542856f93b645db51eb11cf9855a.
41760
41761	* src/alloc.c (mark_maybe_pointer): Remove special-casing of tagged
41762	pointers.  After commit 09d746dad36e4780d379f975a84b1b076da78c50,
41763	modules no longer rely on tagged pointers.
41764
417652019-04-19  Philipp Stephani  <phst@google.com>
41766
41767	Refactoring: Reduce code duplication
41768
41769	* src/emacs-module.c (value_storage_contains_p): New function.
41770	(module_free_global_ref, value_to_lisp): Use it.
41771
417722019-04-19  Mattias Engdegård  <mattiase@acm.org>
41773
41774	Remove subsumed regexp branches
41775
41776	* lisp/progmodes/cc-mode.el (c-before-change-check-unbalanced-strings)
41777	(c-after-change-mark-abnormal-strings): Remove `\r' subsumed by `.'.
41778
417792019-04-19  Paul Eggert  <eggert@cs.ucla.edu>
41780
41781	Fix Fload dangling pointer
41782
41783	* src/lread.c (Fload): Expand decl’s lifetime to match its use.
41784	Bug found by gcc -fsanitize=address.
41785
417862019-04-19  Paul Eggert  <eggert@cs.ucla.edu>
41787
41788	Fix comment and tweak eval_sub
41789
41790	* src/eval.c (eval_sub): Check whether Fassq returns Qnil,
41791	not whether it returns a cons, as NILP is faster than CONSP
41792	nowadays.  Remove incorrect comment “only original_fun and
41793	original_args have values that will be used below”; instead,
41794	move declarations around so that the set of variables with
41795	useful values is obvious.
41796
417972019-04-19  Paul Eggert  <eggert@cs.ucla.edu>
41798
41799	Fix dump_map_file on unusual platforms
41800
41801	* src/pdumper.c (dump_map_file): Fix recently-introduced typo
41802	on platforms that support neither POSIX nor MS-Windows VM.
41803
418042019-04-19  Paul Eggert  <eggert@cs.ucla.edu>
41805
41806	Minor lread.c tweaks
41807
41808	* src/lread.c (load_warn_unescaped_character_literals):
41809	Use AUTO_STRING to help the GC.
41810	(Fload): Use bool for boolean.
41811
418122019-04-19  Eric Abrahamsen  <eric@ericabrahamsen.net>
41813
41814	Clear gnus-group-list when the newsrc-hashtb is recreated
41815
41816	* lisp/gnus/gnus-start.el (gnus-make-hashtable-from-newsrc-alist):
41817	  This routine also happens when re-sorting groups; make sure we're
41818	  clearing the group list.
41819
418202019-04-19  Philipp Stephani  <phst@google.com>
41821
41822	Make warning about unescaped character literals more helpful.
41823
41824	See Bug#31676.
41825
41826	* lisp/emacs-lisp/byte-run.el
41827	(byte-run--unescaped-character-literals-warning): New defun.
41828
41829	* src/lread.c (load_warn_unescaped_character_literals): Use new defun.
41830	(syms_of_lread): Define symbol for new defun.
41831
41832	* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Use new
41833	defun.
41834
41835	* test/src/lread-tests.el (lread-tests--unescaped-char-literals):
41836	test/lisp/emacs-lisp/bytecomp-tests.el
41837	(bytecomp-tests--unescaped-char-literals): Adapt unit tests.
41838
418392019-04-19  Philipp Stephani  <phst@google.com>
41840
41841	Refactoring: simplify definition of some internal variables.
41842
41843	In some cases, we never specbind internal objects, so they don't have
41844	to be symbols.  Rather than using DEFSYM/DEFVAR and then uninterning
41845	the symbols, use plain static variables.  Call staticpro for all of
41846	them, to protect them from the garbage collector.
41847
41848	* src/eval.c (syms_of_eval): Use a static variable for
41849	Qcatch_all_memory_full.
41850
41851	* src/emacs-module.c (syms_of_module): Use static variables for
41852	Vmodule_refs_hash, Vmodule_runtimes, and Vmodule_environments.
41853
418542019-04-19  Eric Abrahamsen  <eric@ericabrahamsen.net>
41855
41856	Don't check for group existence in gnus-group-goto-group
41857
41858	* lisp/gnus/gnus-group.el (gnus-group-goto-group): Just look for the
41859	  string.
41860
418612019-04-19  Paul Eggert  <eggert@cs.ucla.edu>
41862
41863	Fix regexp branches that subsume other branches
41864
41865	Problems reported by Mattias Engdegård in:
41866	https://lists.gnu.org/r/emacs-devel/2019-04/msg00803.html
41867	* lisp/arc-mode.el (archive-rar-summarize):
41868	* lisp/eshell/em-hist.el (eshell-hist-word-designator):
41869	* lisp/info.el (Info-dir-remove-duplicates):
41870	* lisp/international/ja-dic-cnv.el (skkdic-convert-postfix)
41871	(skkdic-convert-prefix, skkdic-collect-okuri-nasi):
41872	* lisp/progmodes/cc-awk.el (c-awk-esc-pair-re):
41873	* lisp/xml.el (xml-att-type-re):
41874	Omit regexp branches that subsume other branches.
41875	* lisp/progmodes/cperl-mode.el (cperl-beautify-regexp-piece):
41876	$ and ^ aren’t simple-codes.
41877
418782019-04-19  Paul Eggert  <eggert@cs.ucla.edu>
41879
41880	Fix mail-extr regexp typo with ".".
41881
41882	Problem reported by Mattias Engdegård in:
41883	https://lists.gnu.org/r/emacs-devel/2019-04/msg00543.html
41884	* lisp/mail/mail-extr.el (mail-extr-telephone-extension-pattern):
41885	Escape the trailing optional period after an abbreviation.
41886
418872019-04-19  Michael Albinus  <michael.albinus@gmx.de>
41888
41889	* lisp/net/tramp-adb.el (tramp-adb-prompt): Remove repetition of expression
41890
41891	matching an empty string.
41892
418932019-04-19  Michael Albinus  <michael.albinus@gmx.de>
41894
41895	Do not handle :stop in tramp-*-handle-make-process
41896
41897	* lisp/net/tramp-adb.el (tramp-adb-handle-make-process):
41898	* lisp/net/tramp-sh.el (tramp-sh-handle-make-process): Do not
41899	handle :stop anymore.
41900
419012019-04-19  Philipp Stephani  <phst@google.com>
41902
41903	Remove :stop key from make-process.
41904
41905	This has never worked and caused issues such as Bug#30460.
41906
41907	* src/process.c (Fmake_process): Don't accept :stop key any more.
41908	(syms_of_process): Define needed symbol 'null'.
41909
41910	* test/src/process-tests.el (make-process/stop): New unit test.
41911
41912	* doc/lispref/processes.texi (Asynchronous Processes): Remove :stop
41913	key from manual.
41914
419152019-04-19  Michael Albinus  <michael.albinus@gmx.de>
41916
41917	Adapt tramp-test32-shell-command
41918
41919	* test/lisp/net/tramp-tests.el (tramp-test32-shell-command):
41920	Check "tput" before running `shell-command-width' test.
41921
419222019-04-19  Philipp Stephani  <p.stephani2@gmail.com>
41923
41924	Add a new user option 'ido-big-directories'.
41925
41926	This provides an alternative to 'ido-max-directory-size', for
41927	directories that are statically known to be too big for Ido
41928	completion.
41929
41930	* lisp/ido.el (ido-big-directories): New user option.
41931	(ido-directory-too-big-p): Use it.
41932
41933	* test/lisp/ido-tests.el (ido-directory-too-big-p): New unit test.
41934
419352019-04-19  Philipp Stephani  <phst@google.com>
41936
41937	Use eassume (false) for branch that's never taken.
41938
41939	* src/json.c (json_handle_nonlocal_exit): Use eassume (false) since
41940	this branch is never taken.
41941
419422019-04-19  Eli Zaretskii  <eliz@gnu.org>
41943
41944	Fix compilation warning due to a recent change
41945
41946	* src/json.c (json_handle_nonlocal_exit): Always return a
41947	value.
41948
419492019-04-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
41950
41951	* src/ftcrfont.c (ftcrfont_glyph_extents): Activate ft_size_draw.
41952
41953	* src/ftcrfont.c (ftcrfont_open): Avoid returning while blocking input.
41954
419552019-04-18  Philipp Stephani  <phst@google.com>
41956
41957	Refactoring: have CATCHER_ALL also catch signals.
41958
41959	In all cases where we use a CATCHER_ALL handler we also want to catch
41960	signals.  Therefore have 'signal' respect CATCHER_ALL.  Adapt internal
41961	interfaces so that handlers can distinguish among the two types of
41962	nonlocal exits in CATCHER_ALL handlers.
41963
41964	* src/lisp.h (enum nonlocal_exit): New enum.
41965	(struct handler): Add member 'nonlocal_exit' to hold the type of
41966	nonlocal exit during stack unwinding.
41967
41968	* src/eval.c (signal_or_quit): Also respect CATCHER_ALL handlers.
41969	(unwind_to_catch): Store nonlocal exit type in catch structure.
41970	(Fthrow, signal_or_quit): Adapt callers.
41971	(internal_catch_all): Install only one handler.  Give handler a
41972	nonlocal exit type argument.
41973	(internal_catch_all_1): Remove, no longer needed.
41974
41975	* src/emacs-module.c (MODULE_SETJMP): Install only one handler.
41976	(module_handle_nonlocal_exit): New function to handle all nonlocal
41977	exits.
41978	(MODULE_SETJMP_1): Pass nonlocal exit type to handler function.
41979	(module_handle_signal, module_handle_throw): Remove, no longer needed.
41980
41981	* src/json.c (json_handle_nonlocal_exit): New helper function.
41982	(json_insert_callback): Adapt to change in 'internal_catch_all'.
41983
419842019-04-18  Philipp Stephani  <phst@google.com>
41985
41986	Update module documentation for bignum support.
41987
41988	* doc/lispref/internals.texi (Module Values): Update documentation for
41989	'make_integer' and 'extract_integer' for bignum support.
41990
419912019-04-18  Philipp Stephani  <phst@google.com>
41992
41993	* lib-src/make-fingerprint.c (main): Properly initialize 'prog'
41994
41995	* src/emacs-module.c: Add instructions how to change the module API
41996
419972019-04-18  Paul Eggert  <eggert@cs.ucla.edu>
41998
41999	Fix make-fingerprint off-by-one bug
42000
42001	Problem reported by Alex Gramiak in:
42002	https://lists.gnu.org/r/emacs-devel/2019-04/msg00784.html
42003	* lib-src/make-fingerprint.c (main): Fix recently-introduced
42004	off-by-one bug when accessing args after -r.
42005
420062019-04-18  Eric Abrahamsen  <eric@ericabrahamsen.net>
42007
42008	Only encode Gnus group names if they come from symbol-name
42009
42010	* lisp/gnus/gnus-start.el (gnus-active-to-gnus-format): Names that
42011	  were strings to begin with should already be properly encoded.
42012
420132019-04-18  Paul Eggert  <eggert@cs.ucla.edu>
42014
42015	Mark _Noreturn error functions as cold
42016
42017	On my platform this made ‘make compile-always’ 1.3% faster.
42018	Suggested by Alex Gramiak in:
42019	https://lists.gnu.org/r/emacs-devel/2019-04/msg00684.html
42020	* configure.ac (nw): Don’t use -Wsuggest-attribute=cold.
42021	* lib-src/make-docfile.c (write_globals):
42022	Mark noreturn functions as cold.
42023	* src/callproc.c (exec_failed):
42024	* src/data.c (wrong_length_argument, wrong_type_argument):
42025	* src/emacs-module.c (module_abort):
42026	* src/emacs.c (terminate_due_to_signal):
42027	* src/eval.c (unwind_to_catch):
42028	* src/image.c (my_png_error, my_error_exit):
42029	* src/json.c (json_out_of_memory, json_parse_error):
42030	* src/keyboard.c (quit_throw_to_read_char, user_error):
42031	* src/lisp.h (die, wrong_type_argument, wrong_choice)
42032	(args_out_of_range, args_out_of_range_3, circular_list)
42033	(buffer_overflow, memory_full, buffer_memory_full)
42034	(string_overflow, xsignal, xsignal0, xsignal1, xsignal2)
42035	(xsignal3, signal_error, overflow_error, error, verror)
42036	(nsberror, report_file_errno, report_file_error)
42037	(report_file_notify_error, terminate_due_to_signal)
42038	(emacs_abort, fatal):
42039	* src/lread.c (load_error_old_style_backquotes)
42040	(end_of_file_error, invalid_syntax):
42041	* src/pdumper.c (error_unsupported_dump_object):
42042	* src/puresize.h (pure_write_error):
42043	* src/search.c (matcher_overflow):
42044	* src/sound.c (sound_perror, alsa_sound_perror):
42045	* src/sysdep.c (handle_arith_signal):
42046	* src/systime.h (time_overflow):
42047	* src/term.c (maybe_fatal, vfatal):
42048	* src/textprop.c (text_read_only):
42049	* src/timefns.c (invalid_time_zone_specification)
42050	(time_error, invalid_hz):
42051	* src/xterm.c (x_connection_closed):
42052	Use AVOID instead of _Noreturn void, so that it’s marked cold.
42053	* src/conf_post.h (__has_attribute_cold) [!__has_attribute]:
42054	New macro.
42055	(ATTRIBUTE_COLD): New macro.
42056	* src/frame.h (WINDOW_SYSTEM_RETURN): Add ATTRIBUTE_COLD.
42057	* src/lisp.h (AVOID): New macro.
42058	* src/xterm.c: Omit unnecessary static decls, so that we needn’t
42059	worry about which functions should be marked cold.
42060	(x_io_error_quitter): Mark as cold.
42061
420622019-04-17  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
42063
42064	* src/ftcrfont.c (ftcrfont_glyph_extents): Fix last change.
42065
420662019-04-17  Philipp Stephani  <phst@google.com>
42067
42068	Add ERT explainer for 'tramp--test-file-attributes-equal-p'
42069
42070	* test/lisp/net/tramp-tests.el (tramp--test-file-attributes-equal-p):
42071	Use ERT explainer for 'equal' to improve failure messages.
42072
420732019-04-17  Michael Albinus  <michael.albinus@gmx.de>
42074
42075	Fix tramp-test32-shell-command
42076
42077	* test/lisp/net/tramp-tests.el (tramp-test32-shell-command):
42078	Run only if "tput" exist.
42079
420802019-04-17  Glenn Morris  <rgm@gnu.org>
42081
42082	Merge from origin/emacs-26
42083
42084	a1c53d4 (origin/emacs-26) * admin/admin.el (make-manuals-dist--1): Up...
42085	d0f745f Document some compilation-mode faces
42086	23ccba0 Mention the assignment form in "Copyright Assignment"
42087	0f5568e Fix confusing wording in the user manual
42088	70ec392 Fix the MSDOS build when running under CWSDPMI
42089	7a608fc * lisp/progmodes/python.el: Be more careful about temp file r...
42090
420912019-04-17  Glenn Morris  <rgm@gnu.org>
42092
42093	Merge from origin/emacs-26
42094
42095	266c622 Downcase charset
42096	92f3459 Update for Emacs-26
42097	beb4eac * doc/lispref/display.texi (Showing Images): Fix a typo.  (Bu...
42098
420992019-04-17  Michael Albinus  <michael.albinus@gmx.de>
42100
42101	Fix Bug#35241
42102
42103	* lisp/files.el (executable-find): Quote default-directory.  (Bug#35241)
42104
42105	* test/lisp/files-tests.el (files-tests-executable-find): New test.
42106
421072019-04-17  Michael Albinus  <michael.albinus@gmx.de>
42108
42109	* test/lisp/files-tests.el: Unify test names
42110
42111	* test/lisp/files-tests.el (files-tests-local-variables)
42112	(files-tests-bug-18141, files-tests-make-temp-file-empty-prefix)
42113	(files-tests-bug-21454)
42114	(files-tests-save-buffers-kill-emacs--confirm-kill-processes)
42115	(files-tests-read-file-in-~)
42116	(files-tests-file-name-non-special--subprocess)
42117	(files-tests-file-name-non-special--buffers)
42118	(files-tests-insert-directory-wildcard-in-dir-p)
42119	(files-tests-make-directory, files-tests-no-file-write-contents)
42120	(files-tests-copy-directory, files-tests-abbreviated-home-dir):
42121	Unify test names.
42122
421232019-04-17  Michael Albinus  <michael.albinus@gmx.de>
42124
42125	Test `shell-command-width' in Tramp
42126
42127	* test/lisp/net/tramp-tests.el
42128	(tramp--test-shell-command-to-string-asynchronously): Move up.
42129	(tramp-test32-shell-command): Test `shell-command-width'.
42130
421312019-04-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
42132
42133	Use cairo_scaled_font_t object for text drawing and metrics calculation
42134
42135	* src/ftfont.h (struct font_info): Replace member cr_font_face of type
42136	cairo_font_face_t * with cr_scaled_font of type cairo_scaled_font_t *.
42137	* src/ftcrfont.c: Include math.h for floor, ceiling, and lround.
42138	(ftcrfont_glyph_extents): Use cairo_scaled_font_glyph_extents.
42139	(ftcrfont_open): Create cairo_scaled_font_t object and set it to
42140	cr_scaled_font member of struct font_info.
42141	(ftcrfont_close): Use cairo_scaled_font_destroy.
42142	(ftcrfont_draw): Use cairo_set_scaled_font.
42143
421442019-04-16  Andrii Kolomoiets  <andreyk.mad@gmail.com>  (tiny change)
42145
42146	Make python-shell-prompt-block-regexp match IPython prompt
42147
42148	* lisp/progmodes/python.el (python-shell-prompt-block-regexp): Match
42149	also IPython's multiline prompt.  It allows to correctly disable
42150	non-native completions during multiline statement in
42151	inferior-python-mode that runs IPython interpreter (Bug#34582).
42152
421532019-04-16  Juri Linkov  <juri@linkov.net>
42154
42155	* etc/NEWS: Mention new xref faces (bug#23179)
42156
421572019-04-16  Juri Linkov  <juri@linkov.net>
42158
42159	* lisp/vc/diff-mode.el (diff-syntax-fontify-hunk): Erase buffer
42160
42161	before inserting file contents to *diff-syntax-file*.
42162	Use absolute file names.
42163
421642019-04-16  Paul Eggert  <eggert@cs.ucla.edu>
42165
42166	* GNUmakefile: Update comment.
42167
421682019-04-16  Glenn Morris  <rgm@gnu.org>
42169
42170	* make-dist (possibly_non_vc_files): Remove recently deleted file.
42171
421722019-04-15  Paul Eggert  <eggert@cs.ucla.edu>
42173
42174	Fix uninit var in widget.c
42175
42176	* src/widget.c (EmacsFrameQueryGeometry):
42177	Avoid use of uninitialized variables ok_width, ok_height (Bug#35277).
42178
421792019-04-15  Paul Eggert  <eggert@cs.ucla.edu>
42180
42181	Remove Vparam_value_alist
42182
42183	* src/xfaces.c (Vparam_value_alist):
42184	Remove.  All uses removed.
42185	(Finternal_set_lisp_face_attribute):
42186	Simplify by using AUTO_FRAME_ARG.
42187
421882019-04-15  Noam Postavsky  <npostavs@users.sourceforge.net>
42189
42190	Properly bracket concat of comment-start-skip (Bug#34805)
42191
42192	* lisp/emacs-lisp/smie.el (smie-indent-fixindent):
42193	* lisp/cedet/semantic/doc.el (semantic-doc-snarf-comment-for-tag):
42194	* lisp/progmodes/fortran.el (fortran-previous-statement)
42195	(fortran-next-statement)
42196	(fortran-fill-statement):
42197	* lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-statement): Bracket
42198	comment-start-skip and comment-end-skip to avoid unexpected regexp
42199	operator precedence.
42200
422012019-04-15  Eli Zaretskii  <eliz@gnu.org>
42202
42203	Minor change in a comment
42204
42205	* test/src/callproc-tests.el
42206	(call-process-w32-debug-spawn-error): Minor copyedits of the
42207	commentary.
42208
422092019-04-15  Eli Zaretskii  <eliz@gnu.org>
42210
42211	Fix MS-Windows build broken by make-fingerprint changes
42212
42213	* lib-src/make-fingerprint.c (fseeko) [WNDOWSNT]: Define to
42214	fseeko64 for non-MinGW64 MinGW.
42215
42216	* lib-src/ntlib.c (stat): Fix calculation of file size.
42217	(fstat): New function, a subset of src/w32.c:fstat.  This is
42218	needed because make-fingerprint.c now calls 'fstat', and the
42219	MS version will fail to produce reliable results because
42220	nt/inc/sys/stat.h redefines 'struct stat'.
42221
422222019-04-15  Michael Albinus  <michael.albinus@gmx.de>
42223
42224	* .gitlab-ci.yml (test-filenotify-gio): Add autorevert changes.
42225
422262019-04-15  Mattias Engdegård  <mattiase@acm.org>
42227
42228	Don't remove notify descriptor that is already gone
42229
42230	* lisp/autorevert.el (auto-revert-use-notify, auto-revert-mode,
42231	global-auto-revert-mode, auto-revert-notify-rm-watch,
42232	auto-revert-notify-add-watch, auto-revert-notify-handler,
42233	auto-revert-notify-rm-watch-callback):
42234	Don't remove a notify descriptor after receiving a `stopped' notification
42235	event, because the descriptor is then already gone and any attempt to
42236	remove it causes a recursive call to `auto-revert-notify-handler'.
42237
422382019-04-15  Michael Albinus  <michael.albinus@gmx.de>
42239
42240	* doc/misc/tramp.texi: Fix direntry.
42241
422422019-04-14  Paul Eggert  <eggert@cs.ucla.edu>
42243
42244	Remove static var system_eol_type
42245
42246	* src/coding.c (system_eol_type): Remove.
42247	(coding_inherit_eol_type, syms_of_coding):
42248	Simplify to avoid the need for system_eol_type.
42249
422502019-04-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
42251
42252	Avoid compiler warnings on cairo build
42253
42254	* src/image.c (jpeg_load_body) [USE_CAIRO]: #ifdef out USE_SAFE_ALLOCA
42255	and SAFE_FREE.
42256	* src/xterm.c (x_composite_image) [USE_CAIRO]: #ifdef out unused function.
42257	(x_draw_image_glyph_string) [USE_CAIRO]: #ifdef out unused variable pixmap.
42258
422592019-04-14  Noam Postavsky  <npostavs@gmail.com>
42260
42261	Let debugger handle process spawn errors on w32 (Bug#33016)
42262
42263	Since child_setup() is called between block_input()...unblock_input(),
42264	when an error is signaled the Lisp debugger is prevented from
42265	starting.  Therefore, let the callers signal the error instead (which
42266	they already do for non-w32 platforms, just the error message needs an
42267	update).
42268	* src/callproc.c (child_setup) [WINDOWSNT]: Don't call
42269	report_file_error here.
42270	(call_process) [WINDOWNT]:
42271	* src/process.c (create_process) [WINDOWSNT]: Call report_file_errno
42272	here instead, after the unblock_input() call, same as for !WINDOWSNT.
42273	* src/lisp.h (CHILD_SETUP_ERROR_DESC): New preprocessor define.  Flip
42274	the containing ifndef DOS_NT branches so that it's ifdef DOS_NT.
42275	* src/eval.c (when_entered_debugger): Remove.
42276	(syms_of_eval) <internal-when-entered-debugger>: Define it as a Lisp
42277	integer variable instead.
42278	(maybe_call_debugger): Update comment.
42279	* test/src/process-tests.el (make-process-w32-debug-spawn-error):
42280	* test/src/callproc-tests.el (call-process-w32-debug-spawn-error): New
42281	tests.
42282
422832019-04-14  Alexander Gramiak  <agrambot@gmail.com>
42284
42285	Bump minimum GTK versions to 2.24 and 3.10
42286
42287	* configure.ac: Bump required GTK 2 and GTK 3 versions and the
42288	associated GLib versions. Remove obsolete AC_CHECK_FUNCS calls. These
42289	check for functions available in later GTK 2 versions. These checks
42290	and can safely be removed with the exception of
42291	gtk_window_set_has_resize_grip, which according to a comment in
42292	gtkutil.c causes an issue in Ubuntu's GTK 2.
42293
42294	* src/gtkutil.c:
42295	* src/xfns.c:
42296	* src/xterm.c:
42297	* src/xterm.h: Remove now unused conditional blocks. Use HAVE_GTK3
42298	instead of GTK_CHECK_VERSION where now applicable. Remove checks of
42299	now always true USE_GTK_TOOLTIP.
42300
423012019-04-14  Paul Eggert  <eggert@cs.ucla.edu>
42302
42303	Replace executable’s fingerprint in place
42304
42305	* admin/merge-gnulib (GNULIB_MODULES): Add memmem-simple.
42306	(AVOIDED_MODULES): Add memchr.
42307	* configure.ac (HAVE_PDUMPER): AC_SUBST it, too, for use in makefiles.
42308	* lib/Makefile.in (libgnu_a_OBJECTS): Add fingerprint.o.
42309	* lib/fingerprint.c: New file.
42310	* lib/memmem.c, lib/str-two-way.h, m4/memmem.m4: New files,
42311	copied from Gnulib.
42312	* lib/fingerprint.h: Rename from src/fingerprint.h.
42313	* lib-src/make-fingerprint.c: Include limits.h, sys/stat.h,
42314	fingerprint.h, intprops.h, min-max.h.
42315	(SSIZE_MAX): New macro, if not already defined.
42316	(main): Without -r, Replace the fingerprint in the input file
42317	instead of generating a fingerprint.c.
42318	* lib/Makefile.in (libgnu_a_OBJECTS): Add fingerprint.o.
42319	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
42320	* src/Makefile.in (HAVE_PDUMPER, MAKE_PDUMPER_FINGERPRINT):
42321	New macros.
42322	(temacs$(EXEEXT)): Use them to replace the fingerprint instead
42323	of precalculating it.
42324	(mostlyclean, ctagsfiles1): Do not worry about fingerprint.c.
42325
423262019-04-14  Paul Eggert  <eggert@cs.ucla.edu>
42327
42328	* m4/utimbuf.m4: Remove unused file.
42329
423302019-04-14  Dmitry Gutov  <dgutov@yandex.ru>
42331
42332	Sort files in the default impl of project-files alphabetically
42333
42334	* lisp/progmodes/project.el (project--files-in-directory):
42335	Sort the files alphabetically
42336	(https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23179#296).
42337
423382019-04-14  Michael Albinus  <michael.albinus@gmx.de>
42339
42340	Some rearragements for remote tests in filenotify-tests.el
42341
42342	* test/lisp/filenotify-tests.el (file-notify--deftest-remote):
42343	Change argument list, EXPECTED is not needed.
42344	(file-notify-test07-many-events-remote)
42345	(file-notify-test09-watched-file-in-watched-dir-remote):
42346	Adapt declaration accordingly.
42347
423482019-04-14  Michael Albinus  <michael.albinus@gmx.de>
42349
42350	Explain ad-hoc multi-hop in the Tramp Quick Start Guide
42351
42352	* doc/misc/tramp.texi (Quick Start Guide): New section "Combining
42353	@option{ssh} or @option{plink} with @option{su} or @option{sudo}".
42354
423552019-04-14  Michael Albinus  <michael.albinus@gmx.de>
42356
42357	Fix Bug#35055
42358
42359	* lisp/net/tramp.el (tramp-handle-shell-command):
42360	Handle `shell-command-width'.  (Bug#35055)
42361
423622019-04-14  Alexander Gramiak  <agrambot@gmail.com>
42363
42364	* lisp/frame.el (frame--size-history): Fix infloop. (Bug#35272)
42365
423662019-04-14  Stephen Leake  <stephen_leake@stephe-leake.org>
42367
42368	Merge commit '890440a44cd5f4f09742f521c7783785d114fffc'
42369
423702019-04-14  Stephen Leake  <stephen_leake@stephe-leake.org>
42371
42372	Rename new user variable `next-error-verbosity' to `next-error-verbose'
42373
42374	* etc/NEWS: Update entry to match renaming.
42375
42376	* lisp/simple.el (next-error-verbose): Rename.
42377	(next-error, next-error-internal): Match rename.
42378
423792019-04-14  Alexander Gramiak  <agrambot@gmail.com>
42380
42381	Simplify gdk_monitor_get_model string duplication
42382
42383	* src/xfns.c (x-display-monitor-attributes-list): Use dupstring over
42384	explicit if/xstrdup.
42385
42386	* src/frame.c (free_monitors): Remove redundant check for NULL.
42387
423882019-04-14  Eli Zaretskii  <eliz@gnu.org>
42389
42390	Improve documentation of a recent commit
42391
42392	* etc/NEWS: Fix the description of 'shell-command-width'.
42393	Mark the entry as not needing the manual update.
42394
42395	* lisp/simple.el (shell-command-width): Doc fix.  (Bug#35055)
42396
423972019-04-13  Paul Eggert  <eggert@cs.ucla.edu>
42398
42399	Update from Gnulib
42400
42401	This incorporates:
42402	2019-04-07 Add copyright notices in several files
42403	* build-aux/config.sub, doc/misc/texinfo.tex, lib/_Noreturn.h:
42404	Copy from Gnulib.
42405	* lib/gnulib.mk.in: Regenerate.
42406
424072019-04-13  Basil L. Contovounesios  <contovob@tcd.ie>
42408
42409	Fix gnus-group-describe-all-groups (bug#35233)
42410
42411	This fixes oversights from
42412	2018-04-26T16:26:27-07:00!eric@ericabrahamsen.net and
42413	2016-02-13T18:45:11+11:00!larsi@gnus.org.
42414	* lisp/gnus/gnus-group.el (gnus-group-describe-all-groups): Insert
42415	group name and description instead of group name twice.  Do not pass
42416	a hash-table to intern.  Call sort with correct number of arguments.
42417
424182019-04-13  Alexander Gramiak  <agrambot@gmail.com>
42419
42420	Fix segmentation fault with gdk_monitor_get_model (Bug#35259)
42421
42422	* src/frame.c (free_monitors): Check if NULL before freeing.
42423
42424	* src/xfns.c: (x-display-monitor-attributes-list): Check if NULL
42425	before copying.
42426
424272019-04-13  Juri Linkov  <juri@linkov.net>
42428
42429	* lisp/vc/log-edit.el (log-edit-insert-changelog): Add field "Summary"
42430
42431	explicitly after adding field "Author".  (Bug#34972)
42432
424332019-04-13  Juri Linkov  <juri@linkov.net>
42434
42435	New faces in xref (bug#23179)
42436
42437	* lisp/progmodes/xref.el (xref-file-header, xref-line-number)
42438	(xref-match):  New faces.
42439	(xref--insert-xrefs, xref--collect-matches-1): Use them.
42440
424412019-04-13  Juri Linkov  <juri@linkov.net>
42442
42443	* lisp/simple.el (shell-command-width): New defcustom.
42444
42445	(shell-command): Use it.  (Bug#35055)
42446
424472019-04-13  Alan Mackenzie  <acm@muc.de>
42448
42449	* lisp/progmodes/cc-langs.el (c-class-id-suffix-ws-ids-kwds): Correct a typo
42450
424512019-04-13  Alan Mackenzie  <acm@muc.de>
42452
42453	Implement "final" before C++ class inheritance lists.
42454
42455	* lisp/progmodes/cc-langs.el (c-class-id-suffix-ws-ids-kwds)
42456	(c-class-id-suffix-ws-ids-key): New lang const/var.
42457
42458	* lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 5D.4): Check for and
42459	skip over any matches for c-class-id-suffix-ws-ids-key (i.e. "final") before
42460	":".
42461
424622019-04-13  Michael Albinus  <michael.albinus@gmx.de>
42463
42464	Fix error in tramp-sh.el
42465
42466	* lisp/net/tramp-sh.el (tramp-sh-handle-make-process):
42467	Revert "simplification", which was an error.
42468
424692019-04-13  Michael Albinus  <michael.albinus@gmx.de>
42470
42471	* doc/misc/tramp.texi: Fix minor glitches.
42472
42473	Fix last patch
42474
424752019-04-13  Michael Albinus  <michael.albinus@gmx.de>
42476
42477	Replace (skip-unless nil) by tag :unstable in test packages
42478
42479	* test/lisp/filenotify-tests.el (file-notify--deftest-remote):
42480	Use tag :unstable if SKIP is non-nil.
42481
42482	* test/lisp/net/tramp-tests.el (tramp-test36-vc-registered):
42483	Use ert-skip instead of (skip-unless nil).
42484
42485	* test/lisp/progmodes/python-tests.el
42486	(python-tests--python-nav-end-of-statement--infloop): Use tag
42487	:unstable instead of (skip-unless nil).
42488
424892019-04-13  Eli Zaretskii  <eliz@gnu.org>
42490
42491	Minor cleanup in 'x_set_frame_alpha'
42492
42493	* src/xterm.c (x_set_frame_alpha): Remove redundant parts of
42494	testing of value of 'alpha'.  Suggested by Konstantin
42495	Kharlamov <Hi-Angel@yandex.ru>.  (Bug#35062)
42496
424972019-04-13  Eli Zaretskii  <eliz@gnu.org>
42498
42499	Improve documentation of JSONRPC
42500
42501	* doc/lispref/text.texi (JSONRPC Overview)
42502	(Process-based JSONRPC connections)
42503	(JSONRPC JSON object format): Fix wording and markup.  Add
42504	indexing.
42505
425062019-04-13  Eli Zaretskii  <eliz@gnu.org>
42507
42508	Improve documentation changes of a recent commit
42509
42510	* doc/lispref/text.texi (Parsing JSON): Improve wording of the
42511	documentation of 'json-parse-string' and 'json-parse-buffer'.
42512	* src/json.c (Fjson_parse_string, Fjson_parse_buffer): Doc fix.
42513	(Bug#34763)
42514
425152019-04-12  Paul Eggert  <eggert@cs.ucla.edu>
42516
42517	Omit/rewrite useless regexp repetitions
42518
42519	Problem reported by Mattias Engdegård in:
42520	https://lists.gnu.org/r/emacs-devel/2019-04/msg00527.html
42521	* lisp/align.el (align-rules-list):
42522	* lisp/cedet/srecode/srt-mode.el (srecode-font-lock-keywords):
42523	* lisp/emacs-lisp/copyright.el (copyright-regexp):
42524	* lisp/erc/erc-backend.el (JOIN):
42525	* lisp/erc/erc-goodies.el (erc-unmorse):
42526	* lisp/mail/mail-extr.el (mail-extr-telephone-extension-pattern):
42527	* lisp/net/tramp-adb.el (tramp-adb-prompt):
42528	* lisp/org/org-table.el (org-table-range-regexp):
42529	* lisp/progmodes/idlwave.el (idlwave-where):
42530	* lisp/progmodes/verilog-mode.el (verilog-declaration-re-2-no-macro)
42531	(verilog-declaration-re-2-macro, verilog-delete-auto-buffer)
42532	(verilog-auto-inst-port):
42533	* lisp/url/url-misc.el (url-data):
42534	Omit or rewrite useless repetitions that risk being very slow in
42535	the backtracking regexp engine in Emacs.
42536
425372019-04-12  Dmitry Gutov  <dgutov@yandex.ru>
42538
42539	Don't signal error from url debug functions
42540
42541	* lisp/url/url-http.el (url-http-debug): Don't signal error.
42542
42543	* lisp/url/url-util.el (url-debug): Same (bug#34763).
42544
425452019-04-12  Dmitry Gutov  <dgutov@yandex.ru>
42546
42547	Add :array-type option to json-parse-string
42548
42549	* src/json.c (enum json_array_type): New type.
42550	(struct json_configuration): New field array_type.
42551	(json_parse_args): Rename the last argument.  Handle the
42552	:array-type keyword argument (bug#32793).
42553	(Fjson_parse_string): Update the docstring accordingly.
42554	(json_to_lisp): Handle the case of :array-type being `list'.  Add
42555	a call to 'rarely_quit' inside the loop.
42556	(syms_of_json): Define new symbols.
42557	(Fjson_serialize, Fjson_insert, Fjson_parse_string)
42558	(Fjson_parse_buffer): Update the config struct initializers.
42559
425602019-04-12  Alan Mackenzie  <acm@muc.de>
42561
42562	Analyze C++ method with & or && ref-qualifier as defun, not brace list
42563
42564	Also firm up detection of beginning of brace list in
42565	c-looking-at-or-maybe-in-bracelist.
42566
42567	* lisp/progmodes/cc-engine.el (c-looking-at-or-maybe-in-bracelist): On
42568	detection of such a ref-qualifier, set braceassignp to nil.  When this
42569	variable has a nil value, return nil as the value of the function.  On
42570	encountering a } when scanning backwards, recognise this as the end of a
42571	previous construct and stop the scan.
42572
425732019-04-12  Stefan Monnier  <monnier@iro.umontreal.ca>
42574
42575	* lisp/help-fns.el (help-fns-describe-variable-functions): New hook
42576
42577	(help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete)
42578	(help-fns--interactive-only): Indent output by 2 spaces.
42579	(help-fns--side-effects): New function extracted from
42580	describe-function-1.
42581	(help-fns-describe-function-functions): Use it.
42582	(help-fns--first-release, help-fns--mention-first-release): New functions.
42583	(help-fns-function-description-header): Keymaps and macros can't
42584	be interactive.
42585	(help-fns--ensure-empty-line): New function.
42586	(describe-function-1): Use it.
42587	(help-fns--var-safe-local, help-fns--var-risky)
42588	(help-fns--var-ignored-local, help-fns--var-file-local)
42589	(help-fns--var-watchpoints, help-fns--var-obsolete)
42590	(help-fns--var-alias, help-fns--var-bufferlocal): New functions,
42591	extacted from describe-variable.
42592	(describe-variable): Run help-fns-describe-variable-functions instead.
42593
425942019-04-12  Glenn Morris  <rgm@gnu.org>
42595
42596	Merge from origin/emacs-26
42597
42598	818a68b * etc/HISTORY: Update for Emacs 26.2 release.
42599	e04aa5a ; ChangeLog.3 update
42600	8297e97 * etc/AUTHORS: Update.
42601	8582936 Improve documentation of 'read-command'
42602	dc81c05 ; * CONTRIBUTE: Mention where to ask for the copyright assign...
42603	b77723a Fix an outdated URL in a comment
42604
426052019-04-12  Glenn Morris  <rgm@gnu.org>
42606
42607	Merge from origin/emacs-26
42608
42609	cb5a340 Update nxml-mode.texi: completion now gives xmlns="-!-"
42610
426112019-04-12  Basil L. Contovounesios  <contovob@tcd.ie>
42612
42613	Move proper-list-p tests to fns-tests.el
42614
42615	This follows the move of proper-list-p from lisp/subr.el to
42616	src/fns.c in 2018-07-24T15:58:46-07:00!eggert@cs.ucla.edu.
42617	* test/lisp/subr-tests.el (subr-tests--proper-list-p): Move from
42618	here...
42619	* test/src/fns-tests.el (test-proper-list-p): ...to here.
42620
426212019-04-12  Basil L. Contovounesios  <contovob@tcd.ie>
42622
42623	Optimize byte-compilation of proper-list-p
42624
42625	For discussion, see thread starting at:
42626	https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg00316.html
42627	* lisp/emacs-lisp/byte-opt.el: Optimize proper-list-p as a
42628	predicate.
42629	* lisp/subr.el: Mark proper-list-p as pure, and side-effect and
42630	error free.
42631
426322019-04-12  Alex Murray  <murray.alex@gmail.com>  (tiny change)
42633
42634	Pop to originating erc buffer when clicking desktop notification
42635
42636	* lisp/erc/erc-desktop-notifications.el: Switch to lexical-binding.
42637	(erc-notifications-notify): Add a default action to the desktop
42638	notification which pops to the buffer from which the notification
42639	originated.  (Bug#35141)
42640
426412019-04-12  Basil L. Contovounesios  <contovob@tcd.ie>
42642
42643	Always set gnus-group property to a group name
42644
42645	* lisp/gnus/gnus-group.el (gnus-group-prepare-flat-list-dead): Set
42646	gnus-group property to a group name, not active info. (bug#33653)
42647	Simplify surrounding logic.
42648	(gnus-group-prepare-flat, gnus-group-goto-group): Use accessor
42649	macros.
42650	(gnus-group-insert-group-line, gnus-group-new-mail)
42651	(gnus-group-mark-group): Write ?\s instead of ? .
42652	(gnus-group-group-name, gnus-group-list-active): Simplify.
42653
426542019-04-11  Stefan Monnier  <monnier@iro.umontreal.ca>
42655
42656	* lisp/vc/diff-mode.el: Avoid re-initializing buffer in diff-syntax
42657
42658	(diff--syntax-file-attributes): New var.
42659	(diff-syntax-fontify-hunk): Detect when we're reusing the same buffer as
42660	last time, to avoid re-initializing it.  Skip the
42661	diff-syntax-fontify-revisions hash-table, since buffer-alist plays the
42662	same role.
42663	(diff-syntax-fontify-revisions): Delete var.
42664
426652019-04-11  Stephen Leake  <stephen_leake@stephe-leake.org>
42666
42667	Merge commit 'de238b39e335c6814283faa171b35145f124edf2'
42668
426692019-04-11  Stephen Leake  <stephen_leake@stephe-leake.org>
42670
42671	Make `next-error' output fewer messages about locus
42672
42673	* lisp/simple.el (next-error-verbosity): New user variable.
42674	(next-error, next-error-internal): Use it to control only outputting
42675	locus message if locus changed.
42676
426772019-04-11  Christopher Thorne  <c.thorne@reckondigital.com>  (tiny change)
42678
42679	Fix rgrep in dired using directory for search file pattern
42680
42681	* lisp/progmodes/grep.el (grep-read-files): Allow major modes to
42682	define file name to use for default search pattern.
42683	Add non-directory file at point as default search pattern candidate.
42684
42685	* lisp/dired.el (dired-grep-read-files): Use non-directory file at
42686	point for grep file name pattern.  (Bug#34621)
42687
426882019-04-10  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
42689
42690	Add extra text property to fix issue with js2-mode integration
42691
42692	* lisp/progmodes/js.el (js-jsx--put-syntax-table): New function for
42693	consistently ensuring smooth js2-mode integration.  js2-mode sets
42694	syntax-table temporarily while parsing buffers—seemingly to recover
42695	from parsing interruptions—and then it later clears syntax-table
42696	blindly.  When integrating with js-mode, this means that unterminated
42697	string quotes are re-broken in JSX (i.e., they become strings again,
42698	often stringifying large regions of the buffer which should not be
42699	strings).  We try to treat quotes in JSXText as non-strings by setting
42700	syntax-table to a non-“string quote” syntax class, but that stops
42701	working if we lose the property.  On the js2-mode end, by scanning for
42702	this second js-jsx-syntax-table property, we can recover the
42703	syntax-table property there.
42704	(js-jsx--text-range, js-jsx--syntax-propertize-tag): Use
42705	js-jsx--put-syntax-table for above reason.
42706	(js-jsx--text-properties): Clear the js-jsx-syntax-table property too.
42707
427082019-04-10  Paul Eggert  <eggert@cs.ucla.edu>
42709
42710	Bring back dmpstruct.h
42711
42712	Bring back the dmpstruct.h checking, and use it when
42713	--enable-checking=structs is specified.  The checking can be helpful
42714	to some developers, although it gets in the way of others and is
42715	not needed for ordinary tarball builds.
42716	* src/dmpstruct.awk: Restore this file, with mode 644 not 755.
42717	* configure.ac: New option-arg --enable-checking=structs,
42718	implied by --enable-checking.
42719	(CHECK_STRUCTS): New macro and var.
42720	* src/Makefile.in (CHECK_STRUCTS): New macro.
42721	(dmpstruct_headers, dmpstruct.h, dmpstruct.h):
42722	Restore these macros and rules.
42723	(pdumper.o): Restore this dependency if $(CHECK_STRUCTS) is true.
42724	(mostlyclean): Remove dmpstruct.h.
42725	* src/pdumper.c [CHECK_STRUCTS]: Include dmpstruct.h,
42726	and restore checks against hashes.
42727
427282019-04-10  Katsumi Yamaoka  <yamaoka@jpl.org>
42729
42730	Enable message saving to work when first use of Gnus (bug#35208)
42731
42732	* lisp/gnus/gnus-group.el (gnus-group-goto-group);
42733	Use gnus-active-hashtb in addition to gnus-newsrc-hashtb to check if
42734	a group exists since some kinds of groups are registered in only one
42735	of them (bug#35208).
42736
427372019-04-10  Juri Linkov  <juri@linkov.net>  (tiny change)
42738
42739	Inhibit displaying help buffer in main window in perform-replace
42740
42741	* lisp/replace.el (perform-replace): Use
42742	display-buffer-overriding-action with inhibit-same-window to prevent
42743	the help buffer from being displayed in the main window.  (Bug#34972)
42744
42745	Author: Michał Krzywkowski <k.michal@zoho.com>
42746
427472019-04-10  Paul Eggert  <eggert@cs.ucla.edu>
42748
42749	Fix $(MAKE) -C for out-of-tree bootstraps
42750
42751	Problem reported by Andy Moreton in:
42752	https://lists.gnu.org/r/emacs-devel/2019-04/msg00359.html
42753	* src/Makefile.in (${charsets}, $(lispsource)/loaddefs.el):
42754	Revert incorrect changes to $(MAKE) -C invocations when the
42755	target is in the source tree not the build tree.
42756
427572019-04-10  Glenn Morris  <rgm@gnu.org>
42758
42759	Merge from origin/emacs-26
42760
42761	5999401 (origin/emacs-26) Note that choose-completion-string-function...
42762	8d2f1df Address name conflicts in EIEIO documentation (bug#31660)
42763
427642019-04-10  Glenn Morris  <rgm@gnu.org>
42765
42766	Merge from origin/emacs-26
42767
42768	a5da653 * src/editfns.c (Fnarrow_to_region): Doc fix.  (Bug#35163)
42769	646d33d Fix doc strings of 'vc-version-diff' and 'vc-version-ediff'
42770	a30a6c3 Improve documentation of set-window-start
42771	92ce2dd Improve documentation of window parameters
42772	6dc42c5 Improve commentary in frame.el
42773	a8cffcf Fix typo in a doc string
42774	9e79f19 (emacs-26) ; * src/fontset.c (set-fontset-font): Use uppercas...
42775
42776	# Conflicts:
42777	#	lisp/vc/vc.el
42778
427792019-04-10  Stefan Monnier  <monnier@iro.umontreal.ca>
42780
42781	* test/lisp/progmodes/python-tests.el: "Fix" failing test
42782
42783	(python-tests--python-nav-end-of-statement--infloop): Disable.
42784
427852019-04-10  Stefan Monnier  <monnier@iro.umontreal.ca>
42786
42787	Eshell dependencies: Fix recent regressions
42788
42789	* lisp/dired.el (dired-insert-directory): Tweak bug#27817's ugly hack.
42790
42791	* lisp/eshell/em-ls.el: Refine 'require's.
42792
42793	* lisp/eshell/esh-opt.el: Require esh-util on behalf of its clients.
42794
427952019-04-09  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
42796
42797	* etc/NEWS: Document js-jsx-align->-with-<
42798
427992019-04-09  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
42800
42801	Add new defcustom js-jsx-align->-with-<
42802
42803	* lisp/progmodes/js.el (js-jsx-align->-with-<): New variable for users
42804	to control one opinionated aspect of JSX indentation.  It defaults to
42805	the style seen in the React docs, which many users expected as the
42806	“correct” indentation.  Still, the old SGML-style of indentation could
42807	be desirable too, especially since it was the old default.  This
42808	ensures users have a way of getting back the old behavior.
42809	(js-jsx--contextual-indentation): Respect js-jsx-align->-with-<.
42810
42811	* test/manual/indent/jsx-align-gt-with-lt.jsx: New test for
42812	js-jsx-align->-with-<.
42813
428142019-04-09  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
42815
42816	* etc/NEWS: Document way to revert to old JSX indentation behavior
42817
428182019-04-09  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
42819
42820	Add new defcustom js-jsx-indent-level
42821
42822	* lisp/progmodes/js.el (js-jsx-indent-level): New variable for users
42823	to set JSX indentation differently than JS, like before.
42824	(js-jsx--contextual-indentation): Respect js-jsx-indent-level when
42825	it’s set.
42826
42827	* test/manual/indent/jsx-indent-level.jsx: New test for
42828	js-jsx-indent-level.
42829
428302019-04-09  Paul Eggert  <eggert@cs.ucla.edu>
42831
42832	Remove the need for temacs.in
42833
42834	Instead of building a file temacs.in used only to compute a
42835	fingerprint, compute the fingerprint directly from the .o and
42836	.a files that go into temacs.in.  This speeds up the build by
42837	avoiding the need to link temacs twice, once with a dummy
42838	fingerprint.
42839	* lib-src/make-fingerprint.c (main): No need to generate
42840	a fingerprint file that includes config.h, now that fingerprint.c
42841	depends on all the .o files.
42842	* src/Makefile.in ($(libsrc)/make-fingerprint$(EXEEXT)):
42843	Use the same rule as $(libsrc)/make-docfile$(EXEEXT).
42844	* src/fingerprint-dummy.c: Remove.
42845	* src/Makefile.in (${charsets}, $(libsrc)/make-docfile$(EXEEXT))
42846	($(LIBEGNU_ARCHIVE), $(lwlibdir)/liblw.a, $(oldXMenudir)/libXMenu11.a)
42847	(../config.status, ${ETAGS}, ../lisp/TAGS, $(lwlibdir)/TAGS)
42848	($(lispsource)/loaddefs.el):
42849	Prefer ‘$(MAKE) -C $(dir $@)’ to ‘${MAKE} -C SOMESTRING’ when
42850	either will do, as the former is more regular and lets us
42851	coalesce rules better.
42852	(EMACS_DEPS_PRE, EMACS_DEPS_POST, BUILD_EMACS_PRE)
42853	(BUILD_EMACS_POST, temacs.in$(EXEEXT)): Remove.
42854	(FINGERPRINTED): New macro.
42855	(fingerprint.c): Use it instead of temacs.in$(EXEEXT), to
42856	avoid the need to build temacs.in at all.
42857	(temacs$(EXEEXT)): No need to depend on other .o files now;
42858	fingerprint.o is enough, since it depends on the rest.
42859	Spell out what used to be in BUILD_EMACS_PRE and BUILD_EMACS_POST.
42860	(mostlyclean): No need to remove temacs.in.
42861
428622019-04-09  Paul Eggert  <eggert@cs.ucla.edu>
42863
42864	Remove assumption of uint64_t etc. in portable code
42865
42866	C11 doesn’t guarantee the existence of types like uint64_t,
42867	so avoid these types in portable code, as it’s easy to do so.
42868	There’s no need to avoid the types in w32-specific code,
42869	since w32 is guaranteed to have them.
42870	* lib-src/make-fingerprint.c (main):
42871	* src/fingerprint-dummy.c:
42872	* src/fingerprint.h:
42873	* src/pdumper.c (dump_fingerprint, struct dump_header):
42874	Prefer unsigned char to uint8_t in portable code, as either will do.
42875	Put an "#include <config.h>" in fingerprint.c files, so
42876	that the corresponding .o file is rebuilt after ./configure is run.
42877	* lib-src/make-fingerprint.c (main):
42878	Simplify loop.
42879	* src/Makefile.in (fingerprint.c): Update atomically.
42880	* src/pdumper.c: Omit unnecessary check that off_t is the same
42881	size as int32_t or int64_t, as the code does not rely on this
42882	assumption.
42883	(dump_off): Use int_least32_t, not int32_t.
42884	(struct dump_reloc): Use unsigned int, not uint32_t.
42885	(dump_anonymous_allocate_w32, dump_anonymous_allocate_posix)
42886	(dump_anonymous_allocate, dump_map_file_w32, dump_map_file_posix)
42887	(dump_map_file:
42888	Do the sanity checks at compile time, not at run-time, to avoid
42889	usage of uint64_t etc. on non-w32 platforms.
42890
428912019-04-09  Paul Eggert  <eggert@cs.ucla.edu>
42892
42893	Remove dmpstruct.h
42894
42895	The hassles of updating the dmpstruct.h-using code bit me again.
42896	These updates are more trouble than they’re worth.  See:
42897	https://lists.gnu.org/r/emacs-devel/2019-03/msg00122.html
42898	As I’m the main person who’s made changes in this area since
42899	dmpstruct.h was introduced, I’m the most motivated to clean up
42900	the situation.
42901	* make-dist (possibly_non_vc_files): Remove src/dmpstruct.h.
42902	* src/Makefile.in (dmpstruct_headers, dmpstruct.h): Remove.
42903	(pdumper.o): Do not depend on dmpstruct.h.
42904	(mostlyclean): Do not remove dmpstruct.h.
42905	* src/dmpstruct.awk: Remove.
42906	* src/pdumper.c: Do not include dmpstruct.h.
42907	(CHECK_STRUCTS): Remove.  All uses removed.
42908
429092019-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
42910
42911	diff-font-lock-syntax: clarify distinction between t and hunk-also
42912
42913	* lisp/vc/diff-mode.el (diff-font-lock-syntax): Rework docstring.
42914	(diff-syntax-fontify-hunk): Never use the hunk method when
42915	diff-font-lock-syntax is just t.
42916
429172019-04-09  Alex Branham  <alex.branham@gmail.com>
42918
42919	Use lexical-binding in bug-reference.el
42920
42921	* .dir-locals.el: Set bug-reference-url-format in all modes, not just
42922	changelog mode. Use (eval . (bug-reference-mode)) as described
42923	in (info "(emacs) Specifying File Variables")
42924	* lisp/progmodes/bug-reference.el: Use lexical binding.
42925	(bug-reference-unfontify):
42926	(bug-reference-fontify): Mention args in docstring.
42927
42928	Bug#35123
42929
429302019-04-09  Basil L. Contovounesios  <contovob@tcd.ie>
42931
42932	Fix Gnus duplicate suppression guards (bug#34987)
42933
42934	* lisp/gnus/gnus-dup.el (gnus-dup-enter-articles)
42935	(gnus-dup-suppress-articles): Use gnus-dup-hashtb as an indicator of
42936	initialization instead of gnus-dup-list, which may happen to be nil.
42937	(gnus-dup-unsuppress-article): Do nothing if gnus-dup-hashtb is
42938	uninitialized.
42939
429402019-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
42941
42942	* lisp/printing.el: Use lexical-binding
42943
42944	Require easy-menu instead of adding declarations.
42945	Remove backward compatiblity.  Remove redundant ':group' args.
42946	(pr-region-active-p): Use use-region-p.
42947	(pr-set-keymap-name): Delete function and callers.
42948	(pr-set-keymap-parents): Delete function; use set-keymap-parent instead.
42949	(pr-read-string): Delete function; use read-string instead.
42950	(pr-menu-char-height): Delete function; use frame-char-height instead.
42951	(pr-menu-char-width): Delete function; use frame-char-width instead.
42952	(pr-menu-position): Merge the two definitions.
42953	(pr-get-symbol): Delete function; use easy-menu-intern instead.
42954	(pr-update-mode-line): Delete function; use force-mode-line-update instead.
42955	(pr-do-update-menus): Turn local save-var into dynbound pr--save-var.
42956	(pr-menu-alist): Use setf.  Simplify since we don't keep key-bindings
42957	in the menus any more.
42958	(pr-dosify-file-name): Remove interactive spec.
42959	(pr-filename-style): Rename from pr-path-style.
42960	(pr-unixify-file-name): Delete function.
42961	(pr-standard-file-name): Don't turn \ into / under POSIX.
42962	(pr-temp-dir): Don't dosify.  Use temporary-file-directory unconditionally.
42963	(pr-save-file-modes): Delete macro.
42964	(pr-ps-directory-using-ghostscript, pr-ps-directory-print)
42965	(pr-ps-directory-ps-print, pr-ps-mode-using-ghostscript, pr-ps-print)
42966	(pr-ps-mode-preview, pr-ps-mode-print, pr-printify-directory)
42967	(pr-txt-directory, pr-ps-file-up-preview, pr-ps-directory-preview)
42968	(pr-ps-file-up-ps-print, pr-ps-preview, pr-ps-using-ghostscript):
42969	Use properly prefixed, declared, and
42970	explicitly let-bound dynamically bound variables around calls to
42971	pr-ps-utility-args and pr-set-dir-args.
42972	(pr-ps-file-using-ghostscript): Only dosify when passing to suprocess.
42973	(pr-expand-file-name): Delete function; use expand-file-name instead.
42974	(pr-ps-file-print): Properly dosify.
42975	(pr-menu-create): Use backquotes.
42976	(pr-eval-alist, pr-eval-local-alist): Use dolist.
42977	(pr-ps-utility-args): Don't dosify here.
42978	(pr-ps-utility-process): Dosify here instead.
42979	(pr-ps-file, pr-command): Don't dosify here either.
42980	(pr-interface-map): Move initialization into declaration.
42981	(pr-insert-section-1): Use 'push'.
42982	(pr-insert-toggle): Use closure instead of backquoted lambda.
42983	(pr-insert-menu): Use apply i.s.o eval.
42984	(pr-insert-radio-button): Avoid 'eval'.
42985
429862019-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
42987
42988	quail.el: Use delete-and-extract-region
42989
42990	* lisp/international/quail.el (quail-overlay-region-events):
42991	Use delete-and-extract-region.
42992	(quail-activate): Use setq-local.
42993
429942019-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
42995
42996	python.el: don't syntax-propertize single/double quoted strings
42997
42998	* lisp/progmodes/python.el (python-syntax-propertize-function):
42999	Only mark triple-quoted strings, let the normal syntax-table handle
43000	the rest.
43001	(python-syntax-stringify): Adjust accordingly.
43002
430032019-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
43004
43005	* lisp/progmodes/js.el (js-mode): Don't set comment-start-skip globally!
43006
430072019-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
43008
43009	Fix up Eshell 'require's after previous dependency reshuffle.
43010
43011	* lisp/eshell/em-unix.el:
43012	* lisp/eshell/em-script.el:
43013	* lisp/eshell/em-pred.el:
43014	* lisp/eshell/em-dirs.el:
43015	* lisp/eshell/em-alias.el:
43016	Fix up 'require's to silence byte-compiler.
43017
43018	* lisp/eshell/esh-util.el (eshell-read-hosts-file): Don't limit number
43019	of entries per line.  Preserve the structure.
43020	(eshell-read-hosts): Adjust accordingly.
43021
430222019-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
43023
43024	* lisp/gnus/mm-view.el (mm-display-inline-fontify): Simplify.
43025
43026	Remove hacks that were needed before font-lock-ensure.
43027	Don't use switch-to-buffer.  Don't assume point-min == 1.
43028
430292019-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
43030
43031	* lisp/vc/diff-mode.el: Cosmetic changes in diff-syntax-fontify-hunk
43032
43033	(diff-default-directory): Use defvar-local.
43034	(diff-syntax-fontify-hunk): Use 'setq' less.  Fit within 80 columns.
43035	Simplify some looking-at tests.
43036	(diff-syntax-fontify-props): Don't check the buffer-local part of
43037	find-file-hook.
43038
430392019-04-09  Mattias Engdegård  <mattiase@acm.org>
43040
43041	Clarify the TESTFN argument to `alist-get'
43042
43043	* lisp/subr.el (alist-get):
43044	Rephrase the initial text to clarify the meaning of the TESTFN argument.
43045	It's an equality predicate, not a look-up function (Bug#35206).
43046
430472019-04-09  Eli Zaretskii  <eliz@gnu.org>
43048
43049	Fix "M-x eshell"
43050
43051	* lisp/eshell/em-dirs.el (eshell-variable-aliases-list)
43052	(eshell-directory-name, eshell-mode): Defvar them.
43053	(eshell-dirs-initialize): Require esh-var.  (Bug#35203)
43054	(eshell-apply-indices): Declare.
43055
430562019-04-09  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43057
43058	* etc/NEWS: Document new and improved JSX support in js-mode
43059
430602019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43061
43062	Explain reasonings for JSX syntax support design decisions
43063
43064	* lisp/progmodes/js.el: Throughout the code, provide explanations for
43065	why JSX support was implemented in the way that it was; in particular,
43066	address the overlap between syntax-propertize-function, font-lock, and
43067	indentation (as requested by Stefan).
43068
430692019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43070
43071	Move curly functions closer to where they’re used
43072
43073	* lisp/progmodes/js.el (js-jsx--enclosing-curly-pos)
43074	(js-jsx--goto-outermost-enclosing-curly): As the code evolved, these
43075	functions’ definitions ended up being far away from the only places
43076	where they were used.  Move them there.
43077
430782019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43079
43080	Add open/close parenthesis syntax to “<” and “>” in JSX
43081
43082	* lisp/progmodes/js.el (js-jsx--syntax-propertize-tag): Like in
43083	sgml-mode, treat “<” and “>” like open/close parenthesis, making the
43084	text more navigable via forward-sexp, etc.
43085
430862019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43087
43088	Permit non-ASCII identifiers in JS
43089
43090	* lisp/progmodes/js.el (js--name-start-re): Generally allow
43091	identifiers to begin with non-ASCII letters.  This is of particular
43092	importance to JSX parsing.
43093
43094	* test/manual/indent/jsx-unclosed-2.jsx: Add test to ensure non-ASCII
43095	characters are parsed properly.
43096
430972019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43098
43099	Identify JSX strings (for js2-mode)
43100
43101	* lisp/progmodes/js.el (js-jsx--syntax-propertize-tag): Derived modes
43102	like js2-mode may use font-lock-syntactic-face-function to apply faces
43103	to JSX strings (and only JSX strings).  Apply the js-jsx-string text
43104	property to such strings so they can be distinctly identified.
43105	(js-jsx--text-properties): Ensure the js-jsx-string text property gets
43106	cleaned up, too.
43107
431082019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43109
43110	Properly set a dynamic, syntactic mode name
43111
43112	Use mode-line-format constructs to properly set mode-name, rather than
43113	use the very hacky solution that was filling-in for my lack of
43114	knowledge of this feature.
43115
43116	* lisp/progmodes/js.el (js--update-mode-name)
43117	(js--idly-update-mode-name): Remove.
43118
43119	(js--syntactic-mode-name-part): New helper function for mode-name.
43120	(js-use-syntactic-mode-name): Helper to set up the dynamic mode-name.
43121
43122	(js-jsx-enable): Don’t need to call any extra functions now.
43123	(js-mode): Use the new setup function rather than the old ones.
43124
43125	(js-jsx-mode): Use the same initial mode name as js-mode so the final
43126	one is identical for both modes.
43127
431282019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43129
43130	Improve whitespace and unary keyword parsing
43131
43132	* lisp/progmodes/js.el (js--name-start-chars): Remove, adding these
43133	chars back to js--name-start-re.
43134	(js--name-start-re): Add chars back from js--name-start-chars.
43135
43136	(js-jsx--tag-start-re): Improve regexp to capture the tag name (so it
43137	can be disambiguated from a unary keyword), to match newlines (which
43138	are common in this spot), and to require at least one whitespace
43139	character before the attribute name.
43140
43141	(js-jsx--matched-tag-type): Ensure the “tag name” isn’t possibly a
43142	unary keyword.
43143
43144	(js-jsx--self-closing-re, js-jsx--matching-close-tag-pos): Allow
43145	whitespace around “<” and “>”.
43146
43147	* test/manual/indent/jsx-unclosed-2.jsx: Add tests for unary keyword
43148	and whitespace parsing.
43149
431502019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43151
43152	Optimize js-jsx--enclosing-tag-pos
43153
43154	* lisp/progmodes/js.el (js-jsx--enclosing-tag-pos): Update docstring
43155	to be more precise.  Also, remember close tag positions after they’ve
43156	been calculated once to avoid many redundant calls to
43157	js-jsx--matching-close-tag-pos.
43158	(js-jsx--text-properties): Ensure js-jsx-close-tag-pos text properties
43159	get cleaned up, too.
43160
431612019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43162
43163	Optimize js-jsx--matching-close-tag-pos
43164
43165	This function’s performance was having a noticeable impact when
43166	editing large JSX structures.  Improve its performance
43167	slightly (elapsed time will be cut in half according to ELP).
43168
43169	* lisp/progmodes/js.el (js-jsx--tag-re): Remove.
43170	(js-jsx--matched-tag-type): Simplify implementation with respect to
43171	the new implementation of js-jsx--matching-close-tag-pos.
43172	(js-jsx--self-closing-re): Simplify regexp slightly in sync with a
43173	generally simpler matching algorithm.
43174	(js-jsx--matching-close-tag-pos): Optimize matching algorithm by using
43175	multiple simple regexp searches, rather than one big complex search.
43176
43177	* test/manual/indent/jsx-unclosed-2.jsx: Use the term “inequality” and
43178	add a test for a possible parsing foible.
43179
431802019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43181
43182	Add tests for miscellaneous JSX parsing feats
43183
43184	* test/manual/indent/jsx.jsx: Add tests for JSXMemberExpression names
43185	and JSXOpeningFragment/JSXClosingFragment support (already supported).
43186
431872019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43188
43189	Split JSX indentation calculation into several functions
43190
43191	* lisp/progmodes/js.el (js-jsx--contextual-indentation)
43192	(js-jsx--expr-attribute-pos, js-jsx--expr-indentation): Extract logic
43193	from js-jsx--indentation, and improve the logic’s documentation.
43194	(js-jsx--indentation): Simplify by splitting into several
43195	functions (see above) and improve the logic’s documentation.
43196
431972019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43198
43199	Indent expressions in JSXAttributes relative to the attribute’s name
43200
43201	* lisp/progmodes/js.el (js-jsx--syntax-propertize-tag): Refer to the
43202	beginning of a JSXExpressionContainer’s associated JSXAttribute (so
43203	line numbers can be calculated later).
43204	(js-jsx--text-properties): Also clear the new text property
43205	js-jsx-expr-attribute.
43206
43207	(js-jsx--indenting): Remove.
43208	(js-jsx--indent-col, js-jsx--indent-attribute-line): New variables.
43209	(js-jsx--indentation): Instead of alternating between two separate
43210	column calculations, neither necessarily correct, bind the JSX column
43211	such that the second call to js--proper-indentation can use it as a
43212	base column.
43213	(js--proper-indentation): Use JSX as the base column for some indents
43214	while indenting JSX.
43215
43216	* test/manual/indent/jsx.jsx: Add more tests for expression indents.
43217
432182019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43219
43220	Fix counting of nested self-closing JSXOpeningElements
43221
43222	* lisp/progmodes/js.el (js-jsx--matching-close-tag-pos): Fix bug where
43223	self-closing JSXOpeningElements might be missed if one was nested
43224	within another.
43225
43226	* test/manual/indent/jsx-self-closing.jsx: Add test for bug concerning
43227	self-closing JSXOpeningElement counting.
43228
432292019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43230
43231	Indent broken arrow function bodies as an N+1th arg
43232
43233	* lisp/progmodes/js.el (js--line-terminating-arrow-re): Revise regexp
43234	for use with re-search-backward.
43235	(js--looking-at-broken-arrow-function-p): Remove.
43236	(js--broken-arrow-terminates-line-p): Replacement for
43237	js--looking-at-broken-arrow-function-p.  Don’t consider whether an
43238	arrow appears at point (in an arglist); instead, just look for an
43239	arrow that terminates the line.
43240	(js--proper-indentation): Use js--broken-arrow-terminates-line-p.
43241
43242	* test/manual/indent/js.js: Add test for a broken arrow as an N+1th
43243	arg.
43244
432452019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43246
43247	Rename tests to use the “.jsx” file extension
43248
43249	* test/manual/indent/js-jsx-quote.js: Renamed to “jsx-quote.jsx”.
43250	* test/manual/indent/js-jsx-unclosed-1.js: Renamed to
43251jsx-unclosed-1.jsx”.
43252	* test/manual/indent/js-jsx-unclosed-2.js: Renamed to
43253jsx-unclosed-2.jsx”.
43254	* test/manual/indent/js-jsx.js: Renamed to “jsx.jsx”.
43255
43256	* test/manual/indent/jsx-quote.jsx: Renamed from “js-jsx-quote.js”.
43257	* test/manual/indent/jsx-unclosed-1.jsx: Renamed from
43258js-jsx-unclosed-1.js”.
43259	* test/manual/indent/jsx-unclosed-2.jsx: Renamed from
43260js-jsx-unclosed-2.js”.
43261	* test/manual/indent/jsx.jsx: Renamed from “js-jsx.js”.
43262
432632019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43264
43265	Improve JSX syntax propertization
43266
43267	* lisp/progmodes/js.el (js-jsx--attribute-name-re): New variable.
43268	(js-jsx--syntax-propertize-tag): Allow “-” in JSXAttribute names.  Fix
43269	“out of range” error when typing at the end of a buffer.  Fix/improve
43270	future propertization of unfinished JSXBoundaryElements.
43271
43272	* test/manual/indent/js-jsx-unclosed-2.js: Add tests for allowed
43273	characters in JSX.
43274
432752019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43276
43277	Automatically detect JSX in JavaScript files
43278
43279	* lisp/files.el (auto-mode-alist): Simply enable
43280	javascript-mode (js-mode) when opening “.jsx” files, since the “.jsx”
43281	file extension will be used as an indicator of JSX syntax by js-mode,
43282	and more code is likely to work in js-mode than js-jsx-mode, and we
43283	probably want to guide users to use js-mode (with js-jsx-syntax)
43284	instead.  Code that used to work exclusively in js-jsx-mode (if anyone
43285	ever wrote any) ought to be updated to work in js-mode too when
43286	js-jsx-syntax is set to t.
43287
43288	* lisp/progmodes/js.el (js-jsx-detect-syntax, js-jsx-regexps)
43289	(js-jsx--detect-and-enable, js-jsx--detect-after-change): New
43290	variables and functions for detecting and enabling JSX.
43291
43292	(js-jsx-syntax): Update docstring with respect to the widened scope of
43293	the effects and use of this variable.
43294
43295	(js-syntactic-mode-name, js--update-mode-name)
43296	(js--idly-update-mode-name, js-jsx-enable): New variable and functions
43297	for indicating when JSX is enabled.
43298
43299	(js-mode): Detect and enable JSX.  Print all enabled syntaxes after
43300	the mode name whenever Emacs goes idle; this ensures lately-enabled
43301	syntaxes are evident.
43302
43303	(js-jsx-mode): Update mode name for consistency with the state in
43304	which JSX is enabled in js-mode.  Update docstring to suggest
43305	alternative means of using JSX without this mode.  Going forward, it
43306	may be best to gently guide users away from js-jsx-mode, since a “one
43307	mode per syntax extension” model would not scale well if more syntax
43308	extensions were to be simultaneously supported (e.g. Facebook’s
43309	“Flow”).
43310
433112019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43312
43313	Finish replacing SGML-based JSX detection with js-mode’s parsing
43314
43315	This removes the last dependency on sgml-mode for JSX-related logic.
43316
43317	* lisp/progmodes/js.el (js-jsx--start-tag-re)
43318	(js-jsx--end-tag-re): Remove.
43319	(js-jsx--looking-at-start-tag-p)
43320	(js-jsx--looking-back-at-end-tag-p): Reimplement using text
43321	properties, using syntax information which ought to be slightly more
43322	accurate than regexps since it was found by complete parsing.
43323
433242019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43325
43326	Indent JSX as parsed in a JS context
43327
43328	Fixes the following issues (and re-fixes indentation issues initially
43329	fixed but later re-broken by previous commits in the process of adding
43330	comprehensive JSX support):
43331
43332	- https://github.com/mooz/js2-mode/issues/389#issuecomment-390766873
43333	- https://github.com/mooz/js2-mode/issues/482
43334	- Bug#32158
43335	- https://github.com/mooz/js2-mode/issues/462
43336
43337	Previously, we delegated to sgml-mode functions for JSX indentation.
43338	However, there were some problems with this approach:
43339
43340	- sgml-mode does not anticipate tags inside attributes when indenting,
43341	  which compromises JSX indentation inside JSXExpressionContainers
43342	  inside JSXAttributes.
43343
43344	- In previous iterations to provide comprehensive JSX support, it
43345	  proved tedious to disambiguate “<” and “>” as JS inequality
43346	  operators and arrow functions from opening and closing angle
43347	  brackets as part of SGML tags.  That code evolved into a more
43348	  complete JSX parsing implementation for syntax-propertize rules for
43349	  font-locking, discarding the superfluous “<”/“>” disambiguation in
43350	  anticipation of using the improved JSX analysis for indentation.
43351
43352	- Using sgml-mode functions, we controlled JSX indentation using SGML
43353	  variables.  However, JSX is a different thing than SGML; referencing
43354	  SGML in JS was a leaky abstraction.
43355
43356	To resolve these issues, use the text properties added by the JSX
43357	syntax-propertize code to determine the boundaries of various aspects
43358	of JSX syntax, and reimplement the sgml-mode indentation code in
43359	js-mode with better respect to JSX indentation conventions.
43360
43361	* lisp/progmodes/js.el (js-jsx-attribute-offset): New variable to
43362	provide a way for users to still control JSX attribute offsets as they
43363	could with sgml-attribute-offset before.  The value of this feature is
43364	dubious IMO, but it’s trivial to keep it, so let’s do it just in case.
43365
43366	(js-jsx--goto-outermost-enclosing-curly): New function.
43367
43368	(js-jsx--enclosing-tag-pos): Refactor to be unbounded by curlies, so
43369	this function can be used to find JSXExpressionContainers within JSX.
43370	Fix bug where an enclosing JSXElement couldn’t be found when point was
43371	at the start of its JSXClosingElement.  Return the JSXClosingElement’s
43372	position as well, so the JSXClosingElement can be indentified when
43373	indenting and be indented like the matching JSXOpeningElement.
43374
43375	(js-jsx--at-enclosing-tag-child-p): js-jsx--enclosing-tag-pos now
43376	returns a list rather than a cons, so retrieve the JSXOpeningElement’s
43377	end position from a list.
43378
43379	(js-jsx--context, js-jsx--indenting): New function and variable.
43380	(js-jsx--indentation): New function replacing the prior
43381	js-jsx--indent* functions and js-jsx-indent-line’s implementation.
43382	Use the JSX parsing performed in a JS context to more accurately
43383	calculate JSX indentation than by delegating to sgml-mode functions.
43384	(js--proper-indentation): Use js-jsx--indentation as yet another type
43385	of indentation.
43386	(js-jsx--as-sgml, js-jsx--outermost-enclosing-tag-pos)
43387	(js-jsx--indentation-type, js-jsx--indent-line-in-expression)
43388	(js-jsx--indent-n+1th-line): Remove obsolete functions.
43389
43390	(js-jsx-indent-line): Refactor nearly-obsolete function to behave the
43391	same as it usually would before these changes, without respect to the
43392	binding of js-jsx-syntax.
43393
43394	(js-jsx-mode): Remove obsolete documentation about the use of SGML
43395	variables to control indentation, and don’t bind indent-line-function
43396	any more, because it is no longer necessary given the new
43397	implementation of js-jsx-indent-line.
43398
433992019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43400
43401	Update expectations for JSX indentation in JSXAttribute space
43402
43403	* test/manual/indent/js-jsx.js: Align expectations for dangling
43404	closing constructs with other places in the tests.
43405
434062019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43407
43408	Propertize and font-lock JSXText and JSXExpressionContainers
43409
43410	This completes highlighting support for JSX, as requested in:
43411
43412	- https://github.com/mooz/js2-mode/issues/140
43413	- https://github.com/mooz/js2-mode/issues/330
43414	- https://github.com/mooz/js2-mode/issues/409
43415
43416	* lisp/progmodes/js.el (js--name-start-chars): Extract part of
43417	js--name-start-re so it can be reused in another regexp.
43418	(js--name-start-re): Use js--name-start-chars.
43419
43420	(js-jsx--font-lock-keywords): Use new matchers.
43421	(js-jsx--match-text, js-jsx--match-expr): New matchers to remove
43422	typical JS font-locking and extend the font-locked region,
43423	respectively.
43424
43425	(js-jsx--tag-re, js-jsx--self-closing-re): New regexps matching JSX.
43426	(js-jsx--matched-tag-type, js-jsx--matching-close-tag-pos)
43427	(js-jsx--enclosing-curly-pos, js-jsx--enclosing-tag-pos)
43428	(js-jsx--at-enclosing-tag-child-p): New functions for parsing and
43429	analyzing JSX.
43430
43431	(js-jsx--text-range, js-jsx--syntax-propertize-tag-text): New
43432	functions for propertizing JSXText.
43433	(js-jsx--syntax-propertize-tag): Propertize JSXText children of tags.
43434	(js-jsx--text-properties): Remove JSXText-related text properties when
43435	repropertizing.
43436	(js-mode): Extend the syntax-propertize region with
43437	syntax-propertize-multiline; we are now adding the syntax-multiline
43438	text property to buffer ranges that are JSXText to ensure the whole
43439	multiline JSX construct is reidentified.
43440
434412019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43442
43443	Font-lock JSX while editing it by extending regions
43444
43445	* lisp/progmodes/js.el (js-jsx--font-lock-keywords):
43446	Call tag beginning and end matchers.
43447	(js-jsx--match-tag-beg, js-jsx--match-tag-end): New functions.
43448	(js-jsx--syntax-propertize-tag): Record buffer positions of JSXElement
43449	beginning and end for font-locking.
43450
43451	(js--syntax-propertize-extend-region)
43452	(js-jsx--syntax-propertize-extend-region): New functions for extending
43453	the syntax-propertize region backwards to the start of a JSXElement so
43454	its JSXAttribute children on its n+1th lines can be parsed as such
43455	while editing those lines.
43456	(js-mode): Add js--syntax-propertize-extend-region to
43457	syntax-propertize-extend-region-functions.
43458
434592019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43460
43461	Add basic JSX font-locking
43462
43463	Font-lock JSX from the beginning of the buffer to the end.  Tends to
43464	break temporarily when editing lines, because the parser doesn’t yet
43465	look backwards to determine if the end of a tag in the current range
43466	starts before the range.
43467
43468	This also re-breaks some tests fixed by previous commits, as we begin
43469	to take a different direction in our parsing code, looking for JSX,
43470	rather than for non-JSX.  The parsing code will eventually provide
43471	information for indentation again.
43472
43473	* lisp/progmodes/js.el (js--dotted-captured-name-re)
43474	(js-jsx--disambiguate-beginning-of-tag)
43475	(js-jsx--disambiguate-end-of-tag, js-jsx--disambiguate-syntax):
43476	Remove.
43477	(js-jsx--font-lock-keywords): New variable.
43478	(js--font-lock-keywords-3): Add JSX matchers.
43479	(js-jsx--match-tag-name, js-jsx--match-attribute-name): New functions.
43480	(js-jsx--syntax-propertize-tag): New function to aid in JSX
43481	font-locking and eventually indentation.
43482	(js-jsx--text-properties): New variable.
43483	(js-syntax-propertize): Propertize JSX properly using
43484	syntax-propertize-rules.
43485
434862019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43487
43488	Use js-jsx- prefix for functions and variables
43489
43490	* lisp/progmodes/js.el (js--disambiguate-beginning-of-jsx-tag): Rename
43491	to js-jsx--disambiguate-beginning-of-tag.
43492	(js--disambiguate-end-of-jsx-tag): Rename to
43493	js-jsx--disambiguate-end-of-tag.
43494	(js--disambiguate-js-from-jsx): Rename to js-jsx--disambiguate-syntax.
43495	(js--jsx-start-tag-re): Rename to js-jsx--start-tag-re.
43496	(js--looking-at-jsx-start-tag-p): Rename to
43497	js-jsx--looking-at-start-tag-p.
43498	(js--jsx-end-tag-re): Rename to js-jsx--end-tag-re.
43499	(js--looking-back-at-jsx-end-tag-p): Rename to
43500	js-jsx--looking-back-at-end-tag-p.
43501	(js--as-sgml): Rename to js-jsx--as-sgml.
43502	(js--outermost-enclosing-jsx-tag-pos): Rename to
43503	js-jsx--outermost-enclosing-tag-pos.
43504	(js--jsx-indentation): Rename to js-jsx--indentation-type.
43505	(js--indent-line-in-jsx-expression): Rename to
43506	js-jsx--indent-line-in-expression.
43507	(js--indent-n+1th-jsx-line): Rename to js-jsx--indent-n+1th-line.
43508
435092019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43510
43511	js-syntax-propertize: Disambiguate JS from JSX, fixing some indents
43512
43513	Fix some JSX indentation bugs:
43514
43515	- Bug#24896 / https://github.com/mooz/js2-mode/issues/389
43516	- Bug#30225
43517	- https://github.com/mooz/js2-mode/issues/459
43518
43519	* lisp/progmodes/js.el (js--dotted-captured-name-re)
43520	(js--unary-keyword-re, js--unary-keyword-p)
43521	(js--disambiguate-beginning-of-jsx-tag)
43522	(js--disambiguate-end-of-jsx-tag)
43523	(js--disambiguate-js-from-jsx): New variables and functions.
43524
43525	(js-syntax-propertize): Additionally clarify when syntax is JS so that
43526	‘(with-syntax-table sgml-mode-syntax-table …)’ does not mistake some
43527	JS punctuation syntax for SGML parenthesis syntax, namely ‘<’ and ‘>’.
43528
43529	* test/manual/indent/js-jsx-unclosed-2.js: Add additional test for
43530	unary operator parsing.
43531
435322019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43533
43534	Add new (failing) unclosed JSX test and separate such tests
43535
43536	* test/manual/indent/js-jsx.js: Move test with intentional scan error to
43537	its own file, js-jsx-unclosed-1.js.
43538	* test/manual/indent/js-jsx-unclosed-1.js: New file.
43539	* test/manual/indent/js-jsx-unclosed-2.js: New file with test for
43540	regression caused by new ambiguous parsing of JS/JSX.
43541
435422019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43543
43544	Refactor JSX indentation code to improve enclosing JSX discovery
43545
43546	Fix a number of bugs reported for JSX indentation (caused by poor JSX
43547	detection):
43548
43549	- https://github.com/mooz/js2-mode/issues/140#issuecomment-166250016
43550	- https://github.com/mooz/js2-mode/issues/490
43551	- Bug#24896 / https://github.com/mooz/js2-mode/issues/389 (with
43552	respect to comments)
43553	- Bug#26001 /
43554	https://github.com/mooz/js2-mode/issues/389#issuecomment-271869380
43555	- https://github.com/mooz/js2-mode/issues/411 / Bug#27000 /
43556	https://github.com/mooz/js2-mode/issues/451
43557
43558	Potentially manifest some new bugs (due to false positives with ‘<’
43559	and ‘>’ and SGML detection).  Slow down indentation a fair bit.
43560
43561	* lisp/progmodes/js.el (js-jsx-syntax, js--jsx-start-tag-re)
43562	(js--looking-at-jsx-start-tag-p, js--looking-back-at-jsx-end-tag-p):
43563	New variables and functions.
43564	(js--jsx-find-before-tag, js--jsx-after-tag-re): Deleted.
43565
43566	(js--looking-at-operator-p): Don’t mistake a JSXOpeningElement for the
43567	‘<’ operator.
43568	(js--continued-expression-p): Don’t mistake a JSXClosingElement as a
43569	fragment of a continued expression including the ‘>’ operator.
43570
43571	(js--as-sgml): Simplify.  Probably needn’t bind forward-sexp-function
43572	to nil (sgml-mode already does) and probably shouldn’t bind
43573	parse-sexp-lookup-properties to nil either (see Bug#24896).
43574
43575	(js--outermost-enclosing-jsx-tag-pos): Find enclosing JSX more
43576	accurately than js--jsx-find-before-tag.  Use sgml-mode’s parsing
43577	logic, rather than unreliable heuristics like paren-wrapping.  This
43578	implementation is much slower; the previous implementation was fast,
43579	but at the expense of accuracy.  To make up for all the grief we’ve
43580	caused users, we will prefer accuracy over speed from now on.  That
43581	said, this can still probably be optimized a lot.
43582
43583	(js--jsx-indented-element-p): Rename to js--jsx-indentation, since it
43584	doesn’t just return a boolean.
43585	(js--jsx-indentation): Refactor js--jsx-indented-element-p to simplify
43586	the implementation as the improved accuracy of other code allows (and
43587	to repent for some awful stylistic choices I made earlier).
43588
43589	(js--expression-in-sgml-indent-line): Rename to
43590	js--indent-line-in-jsx-expression, since it’s a private function and
43591	we can give it a name that reads more like English.
43592	(js--indent-line-in-jsx-expression): Restructure point adjustment
43593	logic more like js-indent-line.
43594
43595	(js--indent-n+1th-jsx-line): New function to complement
43596	js--indent-line-in-jsx-expression.
43597
43598	(js-jsx-indent-line): Refactor.  Don’t bind js--continued-expression-p
43599	to ignore any more; instead, rely on the improved accuracy of
43600	js--continued-expression-p.
43601
43602	(js-jsx-mode): Set js-jsx-syntax to t.  For now, this will be the flag
43603	we use to determine whether ‘JSX is enabled.’  (Maybe later, we will
43604	refactor the code to use this variable instead of requiring
43605	js-jsx-mode to be enabled, thus rendering the mode obsolete.)
43606
436072019-04-08  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
43608
43609	Add failing tests for JSX indentation bugs
43610
43611	* test/manual/indent/js-jsx.js: Add failing tests for all the js-mode
43612	and js2-mode JSX indentation bugs reported over the years that I could
43613	find.  Some may be duplicates, so I have grouped similar reports
43614	together, for now; we’ll see for certain which distinct cases we need
43615	once we start actually implementing fixes.
43616	* test/manual/indent/js-jsx-quote.js: New file with a nasty test.
43617
436182019-04-08  Katsumi Yamaoka  <yamaoka@jpl.org>
43619
43620	Restore .dir-locals.el accidentally deleted
43621
43622	But this way -- git add/commit/push -- is probably wrong, sorry.
43623
436242019-04-08  Katsumi Yamaoka  <yamaoka@jpl.org>
43625
43626	Fix last commit message
43627
436282019-04-08  Katsumi Yamaoka  <yamaoka@jpl.org>
43629
43630	Make `jump to group' work even if it is not activated (bug#33653)
43631
43632	* lisp/gnus/gnus-group.el (gnus-group-goto-group):
43633	Use gnus-newsrc-hashtb instead of gnus-active-hashtb to check if
43634	a group exists even if its server is not activated (bug#33653).
43635
436362019-04-08  Katsumi Yamaoka  <yamaoka@jpl.org>
43637
43638	Make `jump to group' work even if it is not activated (bug#33653)
43639
43640	* lisp/gnus/gnus-group.el (gnus-group-goto-group):
43641	Use gnus-newsrc-hashtb instead of gnus-newsrc-hashtb to check if
43642	a group exists even if its server is not activated (bug#33653).
43643
436442019-04-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
43645
43646	Fix encoding and access of Gnus group names
43647
43648	* lisp/gnus/gnus-start.el (gnus-active-to-gnus-format): Encode group
43649	  names as 'latin-1.
43650	* lisp/gnus/nnmail.el (nnmail-parse-active): Ditto.
43651	* lisp/gnus/nnml.el (nnml-request-group, nnml-request-create-group,
43652	  nnml-request-expire-articles, nnml-request-delete-group,
43653	  nnml-request-rename-group, nnml-deletable-article-p,
43654	  nnml-active-number, nnml-open-incremental-nov): Use assoc-string
43655	  with nnml-group-alist.
43656	* lisp/gnus/nnrss.el (nnrss-request-delete-group,
43657	  nnrss-retrieve-groups, nnrss-read-group-data, nnrss-check-group,
43658	  nnrss-generate-download-script): Use assoc-string with
43659	  nnrss-group-alist.
43660
436612019-04-08  Katsumi Yamaoka  <yamaoka@jpl.org>
43662
43663	Make `move article' work again (bug#33653)
43664
43665	* lisp/gnus/gnus-sum.el (gnus-summary-move-article): Back to while loop
43666	m dolist that blocks nov and active from saving (bug#33653).
43667
436682019-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
43669
43670	* lisp/gnus/gnus-sum.el: Prepare for lexical-binding
43671
43672	Add defvars for all the gnus-tmp-*.
43673	(gnus-summary-make-local-variables): Move let binding to avoid setq.
43674	(gnus-set-global-variables): Use dolist.
43675	(gnus-summary-from-or-to-or-newsgroups, gnus-summary-insert-line)
43676	(gnus-summary-insert-dummy-line): Avoid dynbind args.
43677	(gnus-build-old-threads): Remove unused var 'id'.
43678	(gnus-nov-parse-line): Remove unused var 'buffer'.
43679	(gnus-thread-header): Prepare it for a lexbind world.
43680	(gnus-adjust-marked-articles): Remove unused var 'marks'.
43681	(gnus-mark-xrefs-as-read): Remove unused var 'idlist'.
43682	(gnus-summary-display-article): Erase&widen before mm-enable-multibyte.
43683	(gnus-summary-better-unread-subject): Remove unused var 'score'.
43684	(gnus-summary-find-matching): Remove unused var 'd'.
43685	(ps-right-header, ps-left-header, shr-ignore-cache): Declare vars.
43686	(gnus-summary-idna-message, gnus-summary-morse-message)
43687	(gnus-summary-sort-by-original):
43688	Fix interactive spec since we don't actually use any prefix arg.
43689	(gnus-summary-move-article, gnus-read-move-group-name): Use user-error.
43690	(gnus-summary-move-article): Use dolist.
43691	(gnus-summary-edit-article): Fix unquoting.
43692	(gnus-summary-highlight-line-0, gnus-summary-highlight-line):
43693	Declare dynbind vars documented in gnus-summary-highlight.
43694
436952019-04-08  Juri Linkov  <juri@linkov.net>
43696
43697	* lisp/vc/diff-mode.el (diff-syntax-fontify-props): Check both buffer-local
43698
43699	and default value of find-file-hook.
43700
437012019-04-08  Paul Eggert  <eggert@cs.ucla.edu>
43702
43703	Allow gap before first non-Lisp pseudovec member
43704
43705	Problem reported by Keith David Bershatsky in:
43706	https://lists.gnu.org/r/emacs-devel/2019-04/msg00259.html
43707	Solution suggested by Stefan Monnier in:
43708	https://lists.gnu.org/r/emacs-devel/2019-04/msg00282.html
43709	* src/buffer.h (BUFFER_LISP_SIZE): Simplify by using PSEUDOVECSIZE.
43710	(BUFFER_REST_SIZE): Simplify by using VECSIZE and BUFFER_LISP_SIZE.
43711	* src/lisp.h (PSEUDOVECSIZE): Base it on the last Lisp field,
43712	not the first non-Lisp field.  All callers changed.  Callers
43713	without Lisp fields changed to use ALLOCATE_PLAIN_PSEUDOVECTOR.
43714	(ALLOCATE_PLAIN_PSEUDOVECTOR): New macro.
43715
437162019-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
43717
43718	* lisp/gnus/gnus-agent.el (gnus-agent-fetch-articles): Use match-string
43719
43720	(gnus-agent-expire-group-1): Dial down on the 'setq'.
43721
437222019-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
43723
43724	* lisp/emacs-lisp/nadvice.el: Add ourselves to package--builtin-versions
43725
437262019-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
43727
43728	Eshell: Try to untangle the dependencies; move 'provide's to the end
43729
43730	* lisp/eshell/esh-arg.el: Move defsubst and vars before first use.
43731	Don't require `esh-mode but esh-util instead.
43732
43733	* lisp/eshell/esh-cmd.el: Require esh-module and esh-io.
43734
43735	* lisp/eshell/esh-ext.el: Don't require esh-proc nor esh-cmd.
43736	(eshell-external-command): Require esh-proc for
43737	eshell-gather-process-output.
43738
43739	* lisp/eshell/esh-mode.el: Don't require esh-io nor esh-var, but
43740	require esh-arg.
43741	(eshell-directory-name): Move from eshell.el.
43742
43743	* lisp/eshell/esh-module.el: Don't require eshell.
43744
43745	* lisp/eshell/esh-opt.el: Don't require esh-ext at top-level.
43746	(eshell--do-opts, eshell-show-usage): Require it here instead.
43747
43748	* lisp/eshell/esh-proc.el: Don't require esh-cmd, but require esh-io.
43749	(eshell-reset-after-proc, eshell-record-process-object)
43750	(eshell-gather-process-output, eshell-send-eof-to-process):
43751	Require esh-mode and esh-var here.
43752
43753	* lisp/eshell/esh-var.el: Require esh-module, esh-arg, and esh-io.
43754
43755	* lisp/eshell/eshell.el: Require esh-module, esh-proc, esh-io, and esh-cmd.
43756	But don't require esh-mode.
43757	(eshell-directory-name): Move to esh-mode.
43758	(eshell-return-exits-minibuffer): Don't bind 'return' and 'M-return'
43759	since we already bind RET and M-RET.
43760
437612019-04-08  Michael Albinus  <michael.albinus@gmx.de>
43762
43763	Fix file-readable-p and file-executable-p in some Tramp backends
43764
43765	* lisp/net/tramp-archive.el (tramp-archive-handle-file-readable-p):
43766	Use tramp-gvfs.
43767
43768	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-executable-p):
43769	Check that FILENAME exists.
43770	(tramp-gvfs-handle-file-readable-p): Check that FILENAME exists.
43771	Use heuristic in case it cannot be determined correctly.
43772
437732019-04-07  Mattias Engdegård  <mattiase@acm.org>
43774
43775	Rename variable for clarity
43776
43777	* lisp/progmodes/verilog-mode.el (verilog-sk-define-signal):
43778	Rename sig-re to sig-chars, to make it clear that it isn't a regexp.
43779
437802019-04-07  Alexander Gramiak  <agrambot@gmail.com>
43781
43782	Plug memory leak in GTK x-display-monitor-attributes-list
43783
43784	* src/frame.c (free_monitors) [USE_GTK]: Define in the GTK case as
43785	  well.
43786
43787	* src/xfns.c (x-display-monitor-attributes-list) [USE_GTK]: Plug
43788	  memory leak.
43789
43790	* src/frame.h (MonitorInfo): Declare name as pointing to const char.
43791
437922019-04-07  Paul Eggert  <eggert@cs.ucla.edu>
43793
43794	Simplify fill_gstring_header
43795
43796	* src/composite.c (fill_gstring_header): Omit first argument HEADER,
43797	since in practice it is always nil.  Change caller to match.
43798	Help the compiler by telling it LEN is nonnegative.
43799	Problem found with --enable-gcc-warnings and gcc -O2 -Og.
43800
438012019-04-07  Paul Eggert  <eggert@cs.ucla.edu>
43802
43803	Help the compiler with byte order
43804
43805	* src/xsettings.c (parse_settings): Help the compiler by
43806	letting it deduce the native endianness at compile-time.
43807
438082019-04-07  Paul Eggert  <eggert@cs.ucla.edu>
43809
43810	Fix more regexp oddities
43811
43812	Problems reported by Mattias Engdegård in:
43813	https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg00178.html
43814	* lisp/progmodes/sh-script.el (sh-get-indent-info):
43815	Reorder skip-chars-forward arg so that it does not look like a regexp.
43816	* lisp/progmodes/verilog-mode.el (verilog-sk-define-signal):
43817	Fix typo: the string is not a regexp.
43818	* lisp/vc/log-edit.el (log-edit-goto-eoh): Fix typo: stray ‘:’.
43819	* lisp/xml.el (xml-parse-dtd): Avoid ‘-’ right after char class.
43820
438212019-04-07  Michael Albinus  <michael.albinus@gmx.de>
43822
43823	Fix typo in tramp.texi
43824
43825	* doc/misc/tramp.texi (Change file name syntax)
43826	(Frequently Asked Questions): '.' or ',' must follow xref.
43827
438282019-04-07  Michael Albinus  <michael.albinus@gmx.de>
43829
43830	* lisp/net/tramp.el (tramp-parse-group): Rename third arg to SKIP-CHARS.
43831
43832	(tramp-parse-sconfig-group): Fix thinko.
43833
438342019-04-06  Alexander Gramiak  <agrambot@gmail.com>
43835
43836	* lisp/frame.el (display-planes): Use logb over truncate + log
43837
43838	Suggested by Basil L. Contovounesios:
43839	https://lists.gnu.org/archive/html/bug-gnu-emacs/2019-03/msg01052.html
43840
438412019-04-06  Alexander Gramiak  <agrambot@gmail.com>
43842
43843	Introduce new defcustom for terminal CUA rectangle commands
43844
43845	This allows a user to set a non-meta modifier for their terminal
43846	should his/her terminal support it. See bug#35058 for background on
43847	this change.
43848
43849	* lisp/emulation/cua-base.el (cua-rectangle-terminal-modifier-key):
43850	New defcustom.
43851
43852	* lisp/emulation/cua-base.el (cua--shift-control-x-prefix): Use new
43853	defcustom.
43854
438552019-04-06  Alexander Gramiak  <agrambot@gmail.com>
43856
43857	Define and use new procedure display-symbol-keys-p
43858
43859	* lisp/frame.el (display-symbol-keys-p): Define.
43860
43861	* lisp/simple.el (normal-erase-is-backspace-setup-frame): Use eq
43862	instead of memq.
43863	(normal-erase-is-backspace-mode): Use display-symbol-keys-p.
43864
438652019-04-06  Alexander Gramiak  <agrambot@gmail.com>
43866
43867	Define and use new alias display-blink-cursor-p
43868
43869	display-graphic-p is not used in this case because it may be possible
43870	in the future for terminals to allow control over cursor blinking. For
43871	details, see bug#35058.
43872
43873	* lisp/frame.el (blink-cursor-mode): Use display-blink-cursor-p.
43874
438752019-04-06  Alexander Gramiak  <agrambot@gmail.com>
43876
43877	Use display-graphic-p and display-multi-frame-p in more cases
43878
43879	* lisp/disp-table.el:
43880	* lisp/faces.el:
43881	* lisp/frame.el:
43882	* lisp/info.el (Info-fontify-node):
43883	* lisp/window.el (handle-select-window): Use display-graphic-p and
43884	  display-multi-frame-p instead of explicit memq calls.
43885
438862019-04-06  Basil L. Contovounesios  <contovob@tcd.ie>
43887
43888	Distinguish buttons from widgets (bug#34506)
43889
43890	* lisp/button.el (button-at):
43891	* lisp/wid-edit.el (widget-at): Avoid returning a false positive
43892	when looking for a button and finding a widget, or vice versa.
43893	* test/lisp/button-tests.el:
43894	* test/lisp/wid-edit-tests.el: New files.
43895
438962019-04-06  Stefan Monnier  <monnier@iro.umontreal.ca>
43897
43898	* src/buffer.c (Fget_buffer_create): Apply booleans's eta-reduction
43899
439002019-04-06  Stefan Monnier  <monnier@iro.umontreal.ca>
43901
43902	* lisp/subr.el (setq-default): Fix thinko
43903
43904	Reported by Johan Bockgård <bojohan+news@gnu.org>
43905
439062019-04-06  Glenn Morris  <rgm@gnu.org>
43907
43908	* doc/misc/tramp.texi (Remote processes): '.' or ',' must follow xref.
43909
439102019-04-06  Eli Zaretskii  <eliz@gnu.org>
43911
43912	Encode the FILENAME argument of 'file-locked-p'
43913
43914	* src/filelock.c (Ffile_locked_p): Encode the file name,
43915	before passing it to system APIs.  (Bug#35171)
43916
439172019-04-06  Basil L. Contovounesios  <contovob@tcd.ie>
43918
43919	Don't leave inhibit_buffer_hooks uninitialized
43920
43921	* src/buffer.c (Fget_buffer_create): Explicitly initialize
43922	inhibit_buffer_hooks. (bug#34847)
43923
439242019-04-06  Michael Albinus  <michael.albinus@gmx.de>
43925
43926	Fix Bug#34847
43927
43928	* lisp/autorevert.el (auto-revert-remove-current-buffer):
43929	Add optional argument BUFFER.
43930	(auto-revert-notify-rm-watch): Remove local hook.
43931	(auto-revert-buffers): Check `buffer-live-p' in time.  (Bug#34847)
43932
439332019-04-05  Alex Branham  <alex.branham@gmail.com>
43934
43935	Update documentation for indent-relative functions
43936
43937	* lisp/indent.el (indent-relative): Document what happens when there
43938	  is no previous nonblank line.
43939	* doc/lispref/text.texi (Relative Indent): Document
43940	  indent-relative-first-indent-point instead of obsolete
43941	  indent-relative-maybe. Fix documentation of which argument from
43942	  'indent-relative' is used.
43943
43944	Bug#34858
43945
439462019-04-05  Michał Krzywkowski  <mkrzywkow@gmail.com>
43947
43948	Small elide-head.el update
43949
43950	* lisp/elide-head.el (elide-head-headers-to-hide):
43951	Also match https for GPL.  (Bug#34919)
43952
439532019-04-05  Glenn Morris  <rgm@gnu.org>
43954
43955	* doc/emacs/emacs.texi (Acknowledgments): Remove duplicate.
43956
439572019-04-05  Michael Albinus  <michael.albinus@gmx.de>
43958
43959	Adapt tramp-tests.el
43960
43961	* test/lisp/net/tramp-tests.el (tramp-test30-make-process):
43962	Instrument test.  Adapt check string.
43963	(tramp-test34-explicit-shell-file-name)
43964	(tramp-test43-asynchronous-requests): Skip tests for tramp-adb
43965	with older Emacsen.
43966
439672019-04-05  Konstantin Kharlamov  <Hi-Angel@yandex.ru>
43968
43969	Minor cleanup in widget.c
43970
43971	* src/widget.c (update_wm_hints): Remove variables that are
43972	always zero, and simplify all expressions which used them.
43973	(Bug#35062)
43974
439752019-04-05  Konstantin Kharlamov  <Hi-Angel@yandex.ru>
43976
43977	Minor cleanup in gtkutil.c
43978
43979	* src/gtkutil.c (x_wm_set_size_hint): Remove variables that
43980	are always zero, and simplify all expressions which used
43981	them.  (Bug#35062)
43982
439832019-04-04  Katsumi Yamaoka  <yamaoka@jpl.org>
43984
43985	Make `move article' work again (bug#33653)
43986
43987	* lisp/gnus/gnus-sum.el (gnus-summary-move-article): Back to while loop
43988	m dolist that blocks nov and active from saving (bug#33653).
43989
439902019-04-04  Troy Hinckley  <t.macman@gmail.com>
43991
43992	Don't check comp-buffer-name-function in derived mode (Bug#34956)
43993
43994	* lisp/progmodes/compile.el (define-compilation-mode): Remove
43995	'compilation-buffer-name-function' from the list of overridden
43996	variables to ensure that it is not mistaken for a variable that can be
43997	major mode specific.  'compilation-buffer-name-function' is used
43998	before the major mode is loaded, therefore overriding it here is
43999	ineffectual.  Also, the function 'compilation-start' takes an optional
44000	argument name-function, so there is already a mechanism to override
44001	it.
44002
440032019-04-04  Basil L. Contovounesios  <contovob@tcd.ie>
44004
44005	Fix comment-empty-lines docstring (bug#35152)
44006
44007	* lisp/newcomment.el (comment-empty-lines): Consistently use US
44008	commas in docstring.  Fix indentation of and typo in custom :type.
44009
440102019-04-04  Stefan Monnier  <monnier@iro.umontreal.ca>
44011
44012	* lisp/progmodes/compile.el (compilation-error-regexp-alist): Typo
44013
44014	Reported by Kévin Le Gouguec <kevin.legouguec@gmail.com>
44015
440162019-04-04  Stefan Monnier  <monnier@iro.umontreal.ca>
44017
44018	* lisp/desktop.el (desktop--v2s): Add case for defstructs (bug#35131)
44019
440202019-04-04  Michael Albinus  <michael.albinus@gmx.de>
44021
44022	* test/lisp/net/tramp-tests.el (tramp-test43-asynchronous-requests):
44023
44024	Make it fit for tramp-adb.  Apply better check in process filter.
44025
440262019-04-03  Mauro Aranda  <maurooaranda@gmail.com>
44027
44028	Avoid recursive load of eshell
44029
44030	* lisp/eshell/eshell.el: Provide eshell before requiring esh-mode to
44031	avoid a recursive load when esh-mode requires esh-module (which in
44032	turn requires eshell).  (Bug #34954)
44033	The double loading can be noticed by entries in 'eshell-load-hook' or
44034	forms passed to (with-eval-after-load 'eshell ...).
44035
440362019-04-03  Mauro Aranda  <maurooaranda@gmail.com>
44037
44038	Fix repeated 'custom-add-option' in esh-mode.el (Bug#34993)
44039
44040	* lisp/eshell/esh-mode.el: Call 'custom-add-option' with the right
44041	argument.
44042
440432019-04-03  Michael Albinus  <michael.albinus@gmx.de>
44044
44045	Work on asynchronous processes for tramp-adb.el
44046
44047	* lisp/net/tramp-adb.el (tramp-adb-handle-make-process):
44048	Simplify.  Remove echoed first line.
44049	(tramp-adb-send-command): Add NEVEROPEN and NOOUTPUT.
44050
44051	* lisp/net/tramp-sh.el (tramp-process-sentinel): Remove.
44052	(tramp-sh-handle-make-process): Simplify.
44053
44054	* lisp/net/tramp.el (tramp-process-sentinel): New defun, taken from
44055	tramp-sh.el.  Delete trailing shell prompt.
44056
44057	* test/lisp/net/tramp-tests.el (tramp-test29-start-file-process)
44058	(tramp-test30-make-process): Run also for tramp-adb.
44059	(tramp-test32-shell-command): Remove tramp-adb restrictions.
44060	(tramp-test34-explicit-shell-file-name): Rework.  Remove :unstable tag.
44061
440622019-04-03  Glenn Morris  <rgm@gnu.org>
44063
44064	* test/lisp/progmodes/flymake-tests.el (different-diagnostic-types):
44065	Expect failure on hydra.nixos.
44066
440672019-04-03  Eli Zaretskii  <eliz@gnu.org>
44068
44069	Improve commentary in 'field_relpos'
44070
44071	* src/pdumper.c (PDUMPER_MAX_OBJECT_SIZE): New macro.
44072	(field_relpos): Use PDUMPER_MAX_OBJECT_SIZE, and comment on
44073	why we require that relpos be not too large.
44074
440752019-04-03  Eli Zaretskii  <eliz@gnu.org>
44076
44077	Restore process-environment after portable dumping
44078
44079	* src/pdumper.c (struct dump_context): New member
44080	old_process_environment.
44081	(Fdump_emacs_portable): Record the original value of
44082	process-environment.
44083	(dump_unwind_cleanup): Restore the original values of
44084	process-environment and post-gc-hook.
44085
440862019-04-03  Stephen Leake  <stephen_leake@stephe-leake.org>
44087
44088	Fix bug in gud-gdb-marker-filter: first marker does not start with \n
44089
440902019-04-03  Basil L. Contovounesios  <contovob@tcd.ie>
44091
44092	Avoid using obsolete indent-relative-maybe
44093
44094	* lisp/electric.el (electric-indent-functions-without-reindent):
44095	* lisp/indent.el (indent-according-to-mode): Check for
44096	indent-relative-first-indent-point in addition to its obsolete alias
44097	indent-relative-maybe.
44098	* lisp/obsolete/vi.el (vi-com-map): Use
44099	indent-relative-first-indent-point in place of its obsolete alias
44100	indent-relative-maybe.
44101
441022019-04-03  Stefan Monnier  <monnier@iro.umontreal.ca>
44103
44104	* lisp/progmodes/compile.el: Use non-nil values for *-function
44105
44106	(compilation-parse-errors-filename-function,compilation-exit-message-function)
44107	(compilation-process-setup-function, compilation-buffer-name-function):
44108	Give them non-nil default values.
44109	(compilation-buffer-name): Restructure slightly.
44110	(compilation--default-buffer-name): New function, extracted from it.
44111	Use `name-of-mode` instead of `mode-command` to check if the current
44112	buffer is already in the appropriate mode.
44113
441142019-04-03  Stefan Monnier  <monnier@iro.umontreal.ca>
44115
44116	* lisp/progmodes/compile.el: Allow 'line' functions in error-regexp-alist
44117
44118	(compilation-error-properties): Allow 'line' and 'end-line' to be functions,
44119	like 'col' and 'end-col'.
44120	(compilation-error-regexp-alist): Document this.
44121	(compilation-parse-errors): Drop support for old undocumented feature
44122	where 'line' was a function of 2 arguments.
44123	(compilation--compat-error-properties): Delete function.
44124
441252019-04-02  Noam Postavsky  <npostavs@users.sourceforge.net>
44126
44127	Allow partial decompression (Bug#33133)
44128
44129	* src/decompress.c (Fzlib_decompress_region): Add optional
44130	ALLOW-PARTIAL parameter.
44131	* lisp/url/url-http.el (url-handle-content-transfer-encoding): Use it.
44132	* doc/lispref/text.texi (Decompression): Document it.
44133	* etc/NEWS: Announce it.
44134
441352019-04-02  Basil L. Contovounesios  <contovob@tcd.ie>
44136
44137	* lisp/gnus/gnus-dup.el: Use lexical-binding
44138
44139	(gnus-dup-list-dirty): Add docstring.
44140	(gnus-dup-open): Allocate gnus-dup-hashtb more conservatively now
44141	that it is no longer an obarray.
44142	(gnus-dup-enter-articles): Fix off-by-one error.
44143	(gnus-dup-suppress-articles): DRY.
44144
44145	For discussion, see thread starting at:
44146	https://lists.gnu.org/archive/html/emacs-devel/2019-03/msg00974.html
44147
441482019-04-02  Wilson Snyder  <wsnyder@wsnyder.org>
44149
44150	Fix verilog-mode vmm statements and AUTOINPUTREG ignores.
44151
44152	* lisp/progmodes/verilog-mode.el (verilog-vmm-statement-re):
44153	Fix vmm statement regexps. Reported by Mattias Engdegard.
44154	(verilog-auto-reg-input)
44155	(verilog-auto-reg-input-assigned-ignore-regexp): For AUTOINPUTREG,
44156	allow ignoring assignments with new
44157	`verilog-auto-reg-input-assigned-ignore-regexp' variable, bug1401.
44158	Reported by David Rogoff.
44159
441602019-04-02  Paul Eggert  <eggert@cs.ucla.edu>
44161
44162	Improve regexp advice again, and unchain ranges
44163
44164	* doc/lispref/searching.texi (Regexp Special):
44165	Mention char classes earlier, in a more-logical place.
44166	Advise sticking to ASCII letters and digits in ranges.
44167	Reword negative advice to make it clearer that it’s negative.
44168	* lisp/files.el (make-auto-save-file-name):
44169	* lisp/gnus/message.el (message-mailer-swallows-blank-line):
44170	* lisp/gnus/nndoc.el (nndoc-lanl-gov-announce-type-p)
44171	(nndoc-generate-lanl-gov-head):
44172	* lisp/org/org-eshell.el (org-eshell-open):
44173	* lisp/org/org.el (org-deadline-time-hour-regexp)
44174	(org-scheduled-time-hour-regexp):
44175	* lisp/progmodes/bat-mode.el (bat-font-lock-keywords):
44176	* lisp/progmodes/bug-reference.el (bug-reference-bug-regexp):
44177	* lisp/textmodes/less-css-mode.el (less-css-font-lock-keywords):
44178	* lisp/vc/vc-cvs.el (vc-cvs-valid-symbolic-tag-name-p):
44179	* lisp/vc/vc-svn.el (vc-svn-valid-symbolic-tag-name-p):
44180	Avoid attempts to chain ranges, as this can be confusing.
44181	For example, instead of [0-9-_.], use [0-9_.-].
44182
441832019-04-02  Eli Zaretskii  <eliz@gnu.org>
44184
44185	Fix documentation of last change
44186
44187	* doc/misc/cl.texi (Structures): Document :noinline.
44188
44189	* etc/NEWS: Mark the entry for :noinline as documented.
44190
441912019-04-02  Stefan Monnier  <monnier@iro.umontreal.ca>
44192
44193	* lisp/emacs-lisp/cl-macs.el: Don't always inline struct functions
44194
44195	(cl--struct-inline): New var.
44196	(cl-defstruct): Obey it along with a new :noinline keyword argument.
44197
441982019-04-02  Stefan Monnier  <monnier@iro.umontreal.ca>
44199
44200	* lisp/subr.el (prog2): Define as a macro
44201
44202	* src/eval.c (Fprog2): Delete function.
44203	(syms_of_eval): Don't register it.
44204
44205	* lisp/emacs-lisp/byte-opt.el (byte-optimize-form-code-walker):
44206	* lisp/emacs-lisp/generator.el (cps--transform-1): Remove `prog2` case.
44207
44208	* lisp/emacs-lisp/bytecomp.el (prog2): Remove handlers.
44209	(byte-compile-prog2): Delete.
44210
44211	* lisp/emacs-lisp/lisp-mode.el (prog2): Remove property.
44212
442132019-04-02  Michael Albinus  <michael.albinus@gmx.de>
44214
44215	Suppress timers in tramp-send-string
44216
44217	* lisp/net/tramp.el (tramp-send-string): Suppress timers.  Use
44218	`with-local-quit'.
44219
442202019-04-02  Michael Albinus  <michael.albinus@gmx.de>
44221
44222	Give example for configuration in tramp.texi
44223
44224	* doc/misc/tramp.texi (Configuration): Explain how to call Tramp
44225	configuration functions in the init file.
44226
442272019-04-02  Paul Eggert  <eggert@cs.ucla.edu>
44228
44229	More regexp advice and clarifications
44230
44231	* doc/lispref/searching.texi (Regexp Special): Simplify style
44232	advice for order of ], ^, and - in character alternatives.
44233	Stick with saying that it’s not a good idea to put ‘-’ after a
44234	range.  Remove the special case about raw 8-bit bytes and
44235	unibyte characters, as this documentation is confusing and
44236	seems to be incorrect in some cases.  Say that z-a is the
44237	preferred style for reversed ranges, since it’s clearer and is
44238	typically what’s used in practice.  Mention some bad styles:
44239	duplicates in character alternatives, ranges that denote <=3
44240	characters, and ‘-’ as the first character.
44241
442422019-04-01  Paul Eggert  <eggert@cs.ucla.edu>
44243
44244	Merge from origin/emacs-26
44245
44246	0924b27bca Say which regexp ranges should be avoided
44247
44248	# Conflicts:
44249	#	doc/lispref/searching.texi
44250
442512019-04-01  Eric Abrahamsen  <eric@ericabrahamsen.net>
44252
44253	Refactor Gnus group name extraction in group completing read
44254
44255	* lisp/gnus/gnus-group.el (gnus-group-completing-read): Only do the
44256	  unibyte check once; make sure it applies to hash table keys as
44257	  well.
44258
442592019-04-01  Paul Eggert  <eggert@cs.ucla.edu>
44260
44261	Make struct Lisp_Objfwd etc. objects read-only
44262
44263	Initialize these objects statically, and make them constants.
44264	This is a bit safer and more efficient.
44265	* src/data.c (XBOOLFWD, XKBOARD_OBJFWD, XFIXNUMFWD, XOBJFWD):
44266	* src/lisp.h (XBUFFER_OBJFWD):
44267	Return a pointer-to-const instead of an unrestricted pointer.
44268	(lispfwd): fwdptr is now a pointer-to-const instead of an
44269	unrestricted pointer.  All uses changed.
44270	(SET_SYMBOL_FWD): Accept pointer-to-const instead of an
44271	unrestricted pointer.
44272	(DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
44273	(DEFVAR_KBOARD): Initialize static structures statically
44274	instead of dynamically, and make them const.
44275	* src/lread.c (defvar_int, defvar_bool, defvar_lisp_nopro)
44276	(defvar_lisp, defvar_kboard): Accept pointer-to-const instead
44277	of an unrestricted pointer; it’s now the caller’s
44278	responsibility to initialize the pointed-to storage.  No need
44279	for a separate address argument any more.  All callers
44280	changed.
44281
442822019-04-01  Paul Eggert  <eggert@cs.ucla.edu>
44283
44284	Fix union Lisp_Fwd * alignment bug
44285
44286	It's not portable to cast (e.g.) struct Lisp_Objfwd * to union
44287	Lisp_Fwd * and then back again, because the compiler can then assume
44288	that the pointer is aligned for union Lisp_Fwd * when accessing
44289	the struct Lisp_Objfwd * components, and this assumption might
44290	be incorrect becase we don't force that alignment.
44291	* src/lisp.h (lispfwd): New type, replacing ...
44292	(union Lisp_Fwd): ... this type, which was removed.
44293	All uses changed.
44294	(SET_SYMBOL_FWD): 2nd arg is now void *, not lispfwd.
44295	All uses changed (casts no longer needed; they were
44296	not portable anyway).
44297
442982019-04-01  Stefan Monnier  <monnier@iro.umontreal.ca>
44299
44300	* lisp/subr.el (setq-default): Define as a macro
44301
44302	* lisp/emacs-lisp/bytecomp.el (byte-compile-setq-default): Delete.
44303	(byte-compile-set-default): Inline the part that it used.
44304
44305	* lisp/emacs-lisp/edebug.el (setq-default): Remove the debug spec.
44306
44307	* src/data.c (Fsetq_default): Delete.
44308	(syms_of_data): Don't register.
44309
443102019-04-01  Eli Zaretskii  <eliz@gnu.org>
44311
44312	Fix a typo in xterm.c and w32term.c
44313
44314	* src/xterm.c (x_window_to_scroll_bar):
44315	* src/w32term.c (x_window_to_scroll_bar): Fix a typo.
44316
443172019-03-31  Paul Eggert  <eggert@cs.ucla.edu>
44318
44319	Use update-game-score more often with Tetris
44320
44321	* lisp/play/gamegrid.el (gamegrid-add-score-with-update-game-score):
44322	Go back to previous way of deciding whether to invoke
44323	update-game-score, except do not try to invoke it if file-modes
44324	fails on it (Bug#35056).
44325
443262019-03-31  Basil L. Contovounesios  <contovob@tcd.ie>
44327
44328	Do not set indent-line-function in text-mode
44329
44330	* lisp/textmodes/text-mode.el (text-mode): Do not reset
44331	indent-line-function to its global default value of indent-relative.
44332	* doc/lispref/modes.texi (Example Major Modes):
44333	* etc/NEWS: Document change accordingly.
44334
443352019-03-31  Basil L. Contovounesios  <contovob@tcd.ie>
44336
44337	Do not set indent-line-function in text-mode
44338
44339	For discussion, see thread starting at:
44340	https://lists.gnu.org/archive/html/emacs-devel/2019-03/msg01012.html
44341	* lisp/textmodes/text-mode.el (text-mode): Do not reset
44342	indent-line-function to its global default value of indent-relative.
44343	* doc/lispref/modes.texi (Example Major Modes):
44344	* etc/NEWS: Document change accordingly.
44345
443462019-03-31  Basil L. Contovounesios  <contovob@tcd.ie>
44347
44348	Use lexical-binding in text-mode.el
44349
44350	* lisp/textmodes/text-mode.el: Use lexical-binding.
44351	(text-mode, paragraph-indent-minor-mode, text-mode-hook-identify):
44352	Use setq-local.
44353	(toggle-text-mode-auto-fill): Quote function symbols as such.
44354	(center-line): Minor simplification.
44355	* doc/lispref/modes.texi (Example Major Modes): Update code example
44356	for these changes to text-mode.
44357
443582019-03-31  Alan Third  <alan@idiocy.org>
44359
44360	Use the correct filename for dump file in NS
44361
44362	* nextstep/Makefile.in (all):
44363	(${ns_appbindir}/Emacs.pdmp):
44364	(links): Use mixed case 'Emacs.pdmp' to match the executable name.
44365
443662019-03-31  Basil L. Contovounesios  <contovob@tcd.ie>
44367
44368	Fix recently extended delete-indentation behavior
44369
44370	* doc/lispref/text.texi (User-Level Deletion): Document new optional
44371	arguments of delete-indentation.
44372
44373	* lisp/simple.el (delete-indentation): Do not barf if called
44374	interactively when region is inactive. (bug#35021)
44375	Do not skip blank lines. (bug#35036)
44376	Consistently deactivate mark even when no text was changed.
44377	Handle active region spanning a single line.
44378
44379	* test/lisp/simple-tests.el (simple-test--buffer-substrings):
44380	New convenience function.
44381	(simple-test--dummy-buffer, simple-test--transpositions): Use it.
44382	(simple-delete-indentation-no-region)
44383	(simple-delete-indentation-inactive-region): Update commentary.
44384	Call delete-indentation interactively when testing for behavior with
44385	inactive region and region is not explicitly defined.
44386	(simple-delete-indentation-blank-line)
44387	(simple-delete-indentation-boundaries)
44388	(simple-delete-indentation-region)
44389	(simple-delete-indentation-prefix): New tests.
44390
443912019-03-31  Eric Abrahamsen  <eric@ericabrahamsen.net>
44392
44393	Check gnus-newsgroup-dependencies is hash table in gnus-id-to-thread
44394
44395	* lisp/gnus/gnus-sum.el (gnus-id-to-thread): If dependencies haven't
44396	  been initialized yet, don't blow up. Mimicks previous (non hasht
44397	  table) behavior.
44398
443992019-03-31  Mattias Engdegård  <mattiase@acm.org>
44400
44401	Fix typo in regexp-opt example code
44402
44403	* doc/lispref/searching.texi (Regexp Functions):
44404	Fix typo in example code (Bug#34596).
44405
444062019-03-30  Alan Mackenzie  <acm@muc.de>
44407
44408	Allow a CC Mode derived mode to have strings delimited by single quotes.
44409
44410	Also fix the bug where the delimiters of '\033', etc. got the error face.
44411
44412	* lisp/progmodes/cc-langs.el (c-single-quotes-quote-strings): Enhance the docr
44413	string.
44414	(c-string-delims): Change doc string to doc comment.
44415
44416	* lisp/progmodes/cc-mode.el (c-before-change-check-unbalanced-strings): In
44417	searches and comparisons, take account of the string delimiters possibly
44418	being '.  Fix argument in call of c-before-change-check-unbalanced-strings.
44419	(c-parse-quotes-before-change, c-parse-quotes-after-change): Bind
44420	case-fold-search to nil.  Analyze escape constructs inside character constants
44421	more accurately, in particular accepting as valid more than one character
44422	after /[0-7], /x, /u, and /U.  Amend calculations to account for this extra
44423	length.
44424
444252019-03-30  Eli Zaretskii  <eliz@gnu.org>
44426
44427	Fix a thinko in a recent commit
44428
44429	* src/buffer.c (Fkill_buffer): Fix last change.  (Bug#31138)
44430	Reported by Mattias Engdegård <mattiase@acm.org>.
44431
444322019-03-30  Mattias Engdegård  <mattiase@acm.org>
44433
44434	Release regexp before signaling overflow error
44435
44436	* src/search.c (looking_at_1, search_buffer_re): Unfreeze the regexp
44437	buffer before signaling a matcher overflow, since the error
44438	processing may require quite some regexp use as well (Bug#34910).
44439
444402019-03-30  Mattias Engdegård  <mattiase@acm.org>
44441
44442	Fix spurious regexp reentrancy error
44443
44444	* src/search.c (compile_pattern): Don't give up if the last regexp
44445	cache entry is busy.  Instead, use the last (least recently used)
44446	non-busy entry, and only signal a reentrancy error if there is no free
44447	entry at all (Bug#34910).
44448
444492019-03-30  Eli Zaretskii  <eliz@gnu.org>
44450
44451	Don't run buffer-related hooks in " *code conversion work*" buffers
44452
44453	Note: portions of this change were mistakenly pushed as part
44454	of an unrelated commit a35a1f6a9.
44455
44456	* src/buffer.c (Fget_buffer_create): Set inhibit_buffer_hooks
44457	non-zero for temporary buffers created by coding.c.  Don't run
44458	buffer-list-update-hook for such buffers.
44459	(Frename_buffer, Fkill_buffer, record_buffer)
44460	(Fbury_buffer_internal): Don't run hooks for buffers whose
44461	inhibit_buffer_hooks flag is set.
44462	* src/buffer.h (struct buffer): New member
44463	inhibit_buffer_hooks.
44464	* src/pdumper.c (dump_buffer): Dump the new field.  Update the
44465	hash value in HASH_buffer_XXX.
44466	* src/coding.c (make_conversion_work_buffer): Function deleted;
44467	code moved to code_conversion_save.
44468	(code_conversion_save): Insert code from
44469	make_conversion_work_buffer, but arrange for unwind-protecting
44470	the current buffer before switching to the work buffer.  This
44471	avoids leaving reused_workbuf_in_use set if user presses C-g
44472	during encoding/decoding.
44473	(Vcode_conversion_workbuf_name): Now external variable.
44474	* src/coding.h (Vcode_conversion_reused_workbuf): Declare.
44475
444762019-03-29  Michael Albinus  <michael.albinus@gmx.de>
44477
44478	Extend comment about scope of tramp-test05-expand-file-name-relative
44479
444802019-03-29  Stefan Monnier  <monnier@iro.umontreal.ca>
44481
44482	Gnus: Automatically render text/calendar in a human-friendly way
44483
44484	* lisp/gnus/mm-decode.el (mm-inline-media-tests): Add text/calendar entry.
44485	Use (fboundp 'device-sound-enabled-p) rather than fishing for features.
44486	(mm-automatic-display): Add text/calendar entry.
44487
44488	* lisp/gnus/gnus-icalendar.el: Use lexical-binding.
44489	Remove redundant :group args.
44490	(gnus-icalendar-mm-inline): Add autoload cookie.
44491
444922019-03-29  Alan Mackenzie  <acm@muc.de>
44493
44494	Fix (again) regexp bug in CC Mode.
44495
44496	* lisp/progmodes/cc-mode.el (c-after-change-mark-abnormal-strings): "|\\\r" ->
44497	"\\|\r".
44498
444992019-03-28  Mattias Engdegård  <mattiase@acm.org>
44500
44501	Use memql instead of memq in pcase
44502
44503	* lisp/emacs-lisp/pcase.el (pcase--u1):
44504	Use memql instead of memq to work with bignums (Bug#34781).
44505	* test/lisp/emacs-lisp/pcase-tests.el (pcase-tests-member): Test the above.
44506
445072019-03-28  Eric Abrahamsen  <eric@ericabrahamsen.net>
44508
44509	Initiate gnus-active-hashtb before making ephemeral group
44510
44511	* lisp/gnus/gnus-group.el (gnus-group-read-ephemeral-group): Needs to
44512	  be a hash table, not nil.
44513
445142019-03-28  Eli Zaretskii  <eliz@gnu.org>
44515
44516	Fix display of sliced images on MS-Windows
44517
44518	* src/w32term.c (x_draw_image_foreground): Fix detection of
44519	scaled images for sliced images.  Scale the original width of
44520	a slice and its coordinates of origin as well.
44521
445222019-03-28  Michael Albinus  <michael.albinus@gmx.de>
44523
44524	* lisp/net/tramp.el (tramp-accept-process-output): Use `push'.
44525
445262019-03-27  Paul Eggert  <eggert@cs.ucla.edu>
44527
44528	Simpler way to export HAVE_X_WINDOWS to GDB
44529
44530	* src/.gdbinit: Simplify by removing dependency on globals
44531	implementation.  This is useful for a future performance
44532	improvement that I have in mind.
44533	* src/alloc.c (enum defined_HAVE_X_WINDOWS, defined_HAVE_X_WINDOWS):
44534	New enum and constant.
44535	(gdb_make_enums_visible) [__GNUC__]: Use it, to make
44536	defined_HAVE_X_WINDOWS visible to GDB.
44537
445382019-03-27  Paul Eggert  <eggert@cs.ucla.edu>
44539
44540	Tweak re_registers allocation
44541
44542	* src/regex-emacs.c (re_match_2_internal):
44543	No need to allocate one extra trailing search register;
44544	Emacs does not use it.  Avoid quadratic behavior on
44545	reallocation.
44546
445472019-03-27  Paul Eggert  <eggert@cs.ucla.edu>
44548
44549	No need for m_search_regs_saved in thread.h
44550
44551	* src/search.c (save_search_regs, restore_search_regs):
44552	Don’t use m_search_regs_saved; it’s equivalent to
44553	saved_search_regs.num_regs != 0.
44554	* src/thread.h (struct thread_state): Remove m_search_regs_saved.
44555
445562019-03-27  Paul Eggert  <eggert@cs.ucla.edu>
44557
44558	Fix search_regs memory leak when thread destroyed
44559
44560	* src/thread.c (free_search_regs): New function.
44561	(finalize_one_thread): Use it.
44562
445632019-03-27  Juri Linkov  <juri@linkov.net>
44564
44565	* lisp/frame.el (make-frame-on-monitor): Add default value.  (Bug#34516)
44566
445672019-03-27  Michael Albinus  <michael.albinus@gmx.de>
44568
44569	* lisp/net/tramp.el (tramp-accept-process-output): Let progress reporter run.
44570
445712019-03-27  Charles A. Roelli  <charles@aurox.ch>
44572
44573	* test/lisp/mail/rmail-tests.el (rmail-autoload): Fix its doc.
44574
445752019-03-27  Paul Eggert  <eggert@cs.ucla.edu>
44576
44577	Tune css-mode regexp
44578
44579	* lisp/textmodes/css-mode.el (css--font-lock-keywords):
44580	Omit unnecessary \(?: \) in regexp.  Suggested by Mattias Engdegård in:
44581	https://lists.gnu.org/r/emacs-devel/2019-03/msg01042.html
44582
445832019-03-27  Michael Heerdegen  <michael_heerdegen@web.de>
44584
44585	Improve documentation of 'alist-get' (Bug#34708)
44586
44587	* lisp/subr.el (alist-get): Enhance part of docstring explaining usage
44588	in place expressions.
44589
445902019-03-27  Paul Eggert  <eggert@cs.ucla.edu>
44591
44592	Use regexp-opt-charset to improve regexp tweaks
44593
44594	* lisp/emacs-lisp/regexp-opt.el (regexp-opt):
44595	Reword confusing sentence in doc string.
44596	* lisp/erc/erc.el (erc-lurker-maybe-trim):
44597	* lisp/mail/footnote.el (footnote-hebrew-numeric-regex):
44598	Improve by using regexp-opt-charset.
44599
446002019-03-27  Eli Zaretskii  <eliz@gnu.org>
44601
44602	Attempt to fix crashes under GDB on Windows 10
44603
44604	* src/pdumper.c (dump_discard_mem)
44605	[VM_SUPPORTED == VM_MS_WINDOWS]: Don't pass NULL pointer as
44606	last argument to VirtualProtect.  Reported by Martin Rudalics
44607	<rudalics@gmx.at>.
44608
446092019-03-27  Paul Eggert  <eggert@cs.ucla.edu>
44610
44611	Minor xml.el tweaks
44612
44613	* lisp/xml.el (xml-name-start-char-re, xml-name-char-re):
44614	No need to call concat.
44615	(xml-name-char-re): Use \u escapes rather than chars inline,
44616	so that the code matches the comments better and is easier
44617	to audit.
44618
446192019-03-27  Michael Albinus  <michael.albinus@gmx.de>
44620
44621	Use connection-local setting for tramp-remote-path
44622
44623	* doc/misc/tramp.texi (Remote programs): Mention connection-local
44624	settings for `tramp-remote-path'.
44625
44626	* lisp/net/tramp-sh.el (tramp-get-remote-path): Expand connection-local
44627	variables.
44628
446292019-03-27  Basil L. Contovounesios  <contovob@tcd.ie>
44630
44631	Avoid recently obsolete seq-contains in css-mode
44632
44633	* lisp/textmodes/css-mode.el (css--join-nested-selectors): Replace
44634	recently obsolete seq-contains with new predicate seq-contains-p.
44635
446362019-03-27  Mattias Engdegård  <mattiase@acm.org>
44637
44638	* lisp/xml.el (xml-name-char-re): Remove superfluous `-' in regexp.
44639
446402019-03-27  Alan Mackenzie  <acm@muc.de>
44641
44642	Improve C++ raw string fontification.
44643
44644	Integrate the handling of raw string and ordinary string fontification.
44645
44646	* lisp/progmodes/cc-defs.el (c-font-lock-flush)
44647	(c-search-forward-char-property-without-value-on-char): new macros.
44648	(c-point): In the 'eoll arm, check for eobp.
44649	(c-search-forward-char-property-with-value-on-char): Handle the &optional
44650	limit argument being nil.
44651	(c-clear-char-property-with-value-on-char-function)
44652	(c-clear-char-property-with-value-on-char): Return the position of the first
44653	cleared property.
44654
44655	* lisp/progmodes/cc-engine.el (c-find-decl-prefix-search): Don't spuriously
44656	recognize the change of face at a ) as the start of a string (a
44657	"pseudo match").
44658	(c-old-beg-rs c-old-end-rs): New variables.
44659	(c-raw-string-pos): Analyze raw string delimiters more carefully.
44660	(c-raw-string-in-end-delim): New function.
44661	(c-depropertize-raw-string): Largely rewritten.
44662	(c-before-change-check-raw-strings): New functionality: only remove the
44663	syntax-table text properties from raw strings whose delimiters are about to
44664	change.
44665	(c-propertize-raw-string-id): New function.
44666	(c-after-change-re-mark-raw-strings): Remove, incorporating functionality into
44667	other functions.
44668	(c-propertize-raw-string-opener): Largely rewritten.
44669	(c-after-change-re-mark-raw-strings): Removed.
44670	(c-after-change-unmark-raw-strings, c-after-change-unmark-raw-strings): New
44671	functions.
44672
44673	* lisp/progmodes/cc-fonts.el (c-font-lock-raw-strings): Largely rewritten.
44674
44675	* lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Replace
44676	c-after-change-re-mark-unbalanced-strings by
44677	c-after-change-mark-abnormal-strings in the t, c+objc, c++ and java sections.
44678	Add c-after-change-unmark-raw-strings and remove
44679	c-after-change-re-mark-raw-strings from the c++ section.
44680
44681	* lisp/progmodes/cc-mode.el (c-old-BEG c-old-END): Remove.
44682	(c-old-END-literality): New variable.
44683	(c-depropertize-CPP): Remove syntax-table properties from raw strings within
44684	macros.
44685	(c-before-change-check-unbalanced-strings): Call
44686	c-truncate-semi-nonlit-pos-cache to preserve the integrity of the cache.
44687	(c-before-change-check-unbalanced-strings): Call
44688	c-truncate-semi-nonlit-pos-cache, largely rewritten.
44689	(c-after-change-re-mark-unbalanced-strings): Renamed to
44690	c-after-change-mark-abnormal-strings.  Call c-maybe-re-mark-raw-string.
44691
446922019-03-27  Andreas Schwab  <schwab@suse.de>
44693
44694	* lisp/calc/calc-forms.el (calc-hms-notation): Fix interactive
44695	prompt.
44696
446972019-03-27  Nicolas Petton  <nicolas@petton.fr>
44698
44699	* lisp/emacs-lisp/map.el (map-inplace): Fix the message of the error.
44700
447012019-03-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
44702
44703	Support native image resizing on cairo
44704
44705	* src/xterm.c (x_cr_draw_image): Add arguments image_width and
44706	image_height and support scaling.  All callers changed.
44707	* src/image.c (Fimage_scaling_p): Return t when USE_CAIRO.
44708	(x_set_image_size) [USE_CAIRO]: Record the scaled dimensions
44709	in the image struct.
44710	* src/dispextern.h (HAVE_NATIVE_SCALING): Define when
44711	USE_CAIRO as well.
44712
44713	* etc/NEWS: Update the announcement of native image scaling.
44714
447152019-03-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
44716
44717	Fix cairo image drawing with box
44718
44719	* src/xterm.c (x_cr_draw_image): Don't call cr_clip for non-mask case.
44720	(x_draw_image_foreground) [USE_CAIRO]: Draw image here ...
44721	(x_draw_image_glyph_string) [USE_CAIRO]: ... instead of here.
44722	(x_draw_image_foreground, x_draw_image_foreground_1)
44723	(x_draw_image_glyph_string) [USE_CAIRO]: Ifdef away unused code path.
44724
447252019-03-26  Paul Eggert  <eggert@cs.ucla.edu>
44726
44727	2019-03-26 regex cleanup
44728
44729	Problems reported by Mattias Engdegård in:
44730	https://lists.gnu.org/r/emacs-devel/2019-03/msg01028.html
44731	* lisp/align.el (align-rules-list):
44732	* lisp/speedbar.el (speedbar-check-read-only, speedbar-check-vc):
44733	* lisp/vc/diff-mode.el (diff-add-change-log-entries-other-window):
44734	* lisp/woman.el (woman-parse-numeric-arg):
44735	Put "-" at end of character alternatives, since a range was not intended.
44736	* lisp/erc/erc.el (font-lock):
44737	* lisp/mail/footnote.el (cl-seq):
44738	Avoid duplicate character alternatives by using cl-seq API.
44739	* lisp/mail/footnote.el (footnote--current-regexp):
44740	* lisp/textmodes/css-mode.el (css--font-lock-keywords):
44741	Avoid repetition of repetition.
44742	* lisp/net/webjump.el (webjump-url-encode):
44743	Add ~ to character alternatives, and rewrite confusing range.
44744	* lisp/progmodes/verilog-mode.el (verilog-compiler-directives)
44745	(verilog-assignment-operator-re):
44746	Remove duplicate.
44747	* lisp/progmodes/verilog-mode.el (verilog-preprocessor-re):
44748	* lisp/textmodes/css-mode.el (css--font-lock-keywords):
44749	Don’t escape a char that doesn’t need it.
44750	* lisp/textmodes/picture.el (picture-tab-chars): In docstring,
44751	do not say regexp characters will be quoted; merely say in
44752	another way that the syntax is that of character alternatives.
44753	(picture-set-tab-stops, picture-tab-search): Don’t attempt
44754	to regexp-quote picture-tab-chars.
44755	(picture-tab-search): Quote \ in picture-tab-chars for
44756	skip-chars-backwards, which treats \ differently than
44757	regexp character alternatives do.
44758
447592019-03-26  Stefan Monnier  <monnier@iro.umontreal.ca>
44760
44761	* lisp/emacs-lisp/easy-mmode.el: simplify via custom-current-group
44762
44763	* lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
44764	Don't try and guess a default :group, defcustom does it better anyway.
44765
447662019-03-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
44767
44768	Use cairo image surface instead of pattern for fringe bitmap
44769
44770	* src/xterm.c (fringe_bmp, x_cr_define_fringe_bitmap)
44771	(x_cr_destroy_fringe_bitmap, x_cr_draw_image) [USE_CAIRO]:
44772	Change type of fringe bitmap.
44773
447742019-03-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
44775
44776	Fix cairo scrolling for left scroll bars case
44777
44778	* src/xterm.c (x_scroll_run) [USE_CAIRO]: Fix scrolling by unusing
44779	WINDOW_LEFT_EDGE_X.  (Bug#31288)
44780
447812019-03-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
44782
44783	Support tool bar icon image on GTK+ >= 3.10 with cairo
44784
44785	* src/gtkutil.c (xg_get_image_for_pixmap) [USE_CAIRO]: Use cairo image
44786	surface for GtkImage source.
44787	(xg_tool_item_stale_p, update_frame_tool_bar) [USE_CAIRO]: Use cairo
44788	image surface instead of pixmap for data associated with tool bar item.
44789
447902019-03-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
44791
44792	Simplify cairo image surface creation and destruction
44793
44794	* src/dispextern.h (struct image) [USE_CAIRO]: Remove member cr_data2.
44795	* src/image.c (set_cairo_image_surface): New function split from
44796	original create_cairo_image_surface.  Call cairo_surface_mark_dirty.
44797	(create_cairo_image_surface): Just create image surface and return it.
44798	(x_clear_image): Don't free cr_data2.
44799	(xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
44800	(gif_load, imagemagick_load_image, svg_load_image) [USE_CAIRO]: Use
44801	new create_cairo_image_surface and cairo_image_surface_get_data
44802	instead of xmalloc.  Use set_cairo_image_surface instead of old
44803	create_cairo_image_surface.
44804	(pbm_load) [USE_CAIRO]: Call cairo_surface_destroy for surface instead
44805	of xfree for data.
44806	(gif_load) [USE_CAIRO]: Multiply y-coordinate value by width instead
44807	of subimg_width.
44808
448092019-03-25  Paul Eggert  <eggert@cs.ucla.edu>
44810
44811	Port recent ngettext stub to non-glibc
44812
44813	* src/editfns.c: Don’t try to call glibc ngettext;
44814	we’re not ready for that yet.
44815	(Fngettext): Do not restrict integer arguments to fixnums.
44816	Improve doc string a bit.
44817
448182019-03-25  Paul Eggert  <eggert@cs.ucla.edu>
44819
44820	Update from Gnulib.
44821
44822	This incorporates:
44823	2019-03-23 Support cross-compilation to musl libc
44824	2019-03-23 noreturn: In C++ mode with clang, use _Noreturn as fallback
44825	2019-03-22 _Noreturn: beware of C's _Noreturn in C++ pre C++11
44826	2019-03-19 Help making signal handlers more reliable
44827	2019-03-18 _Noreturn: clang and MSVC do support [[noreturn]] in C++11
44828	2019-03-17 _Noreturn: GCC 4.7 does not support [[noreturn]] in C++11
44829	2019-03-14 all: Update URLs to msdn.microsoft.com
44830	* doc/misc/texinfo.tex, lib/_Noreturn.h, lib/gettimeofday.c:
44831	* lib/mktime.c, lib/regcomp.c, lib/regexec.c, lib/stat-time.h:
44832	* lib/utimens.c, m4/fdopendir.m4, m4/getgroups.m4:
44833	* m4/gettimeofday.m4, m4/gnulib-common.m4, m4/putenv.m4, m4/utimes.m4:
44834	Update from gnulib.
44835
448362019-03-25  Juri Linkov  <juri@linkov.net>
44837
44838	* lisp/vc/vc.el (vc-diff-mergebase, vc-log-mergebase): New commands.
44839
44840	* lisp/vc/vc-git.el (vc-git-mergebase): New function.
44841	(vc-git-print-log): Interpret string value of arg LIMIT as an end-revision.
44842
44843	* lisp/vc/vc-hooks.el (vc-prefix-map): Bind 'vc-log-mergebase' to
44844	'C-x v M L', and 'vc-diff-mergebase' to 'C-x v M D'.  (Bug#33950)
44845
448462019-03-25  Paul Eggert  <eggert@cs.ucla.edu>
44847
44848	Fix alignment bug with pure bignums
44849
44850	Problem found on 32-bit sparc, which has stricter alignment
44851	checking than x86-64.
44852	* src/alloc.c (pure_alloc): When TYPE is negative it now specifies
44853	the negation of the required alignment of the result.
44854	(make_pure_bignum): Specify bignum limb alignment.
44855
448562019-03-25  Juri Linkov  <juri@linkov.net>
44857
44858	* lisp/international/mule-cmds.el (ngettext): Move to editfns.c.
44859
44860	* src/editfns.c (Fngettext): Move from mule-cmds.el and use
44861	gettext's ngettext when available.
44862
448632019-03-25  Eric Abrahamsen  <eric@ericabrahamsen.net>
44864
44865	Fix text property bug in gnus-group-list-active
44866
44867	* lisp/gnus/gnus-group.el (gnus-group-list-active): The property value
44868	  should be the group name, not the value of gethash. Ie, it should be
44869	  the key, not the value.
44870
448712019-03-25  Eric Abrahamsen  <eric@ericabrahamsen.net>
44872
44873	Don't save Gnus' dummy.group to the .newsrc.eld file
44874
44875	* lisp/gnus/gnus-start.el (gnus-gnus-to-quick-newsrc-format): Remove
44876	  the "dummy.group" element.
44877
448782019-03-25  Eric Abrahamsen  <eric@ericabrahamsen.net>
44879
44880	Handle multiple possible types for Gnus group names
44881
44882	* lisp/gnus/gnus-start.el (gnus-active-to-gnus-format): Numbers,
44883	  symbols, and strings.
44884
448852019-03-25  Paul Eggert  <eggert@cs.ucla.edu>
44886
44887	Fix a dns-mode reentrancy bug
44888
44889	* lisp/textmodes/dns-mode.el (dns-mode-ipv6-to-nibbles):
44890	Don’t assume kill-new does no matching.
44891
448922019-03-25  Basil L. Contovounesios  <contovob@tcd.ie>
44893
44894	Fix non_local_exit_get signature in Elisp manual
44895
44896	* doc/lispref/internals.texi (Module Nonlocal): Fix typo in return
44897	type of non_local_exit_get.
44898
448992019-03-25  Michael Albinus  <michael.albinus@gmx.de>
44900
44901	Explain messages with patches in CONTRIBUTE
44902
44903	* CONTRIBUTE: A message shall contain the string "[PATCH]" in the
44904	subject if there's a patch in the message.
44905
449062019-03-25  Paul Eggert  <eggert@cs.ucla.edu>
44907
44908	Support ./configure --with-gif=ifavailable etc.
44909
44910	Suggested by Stefan Monnier in:
44911	https://lists.gnu.org/r/emacs-devel/2019-03/msg00789.html
44912	* INSTALL, etc/NEWS: Document this.
44913	* configure.ac: Implement this.
44914
449152019-03-25  Stefan Monnier  <monnier@iro.umontreal.ca>
44916
44917	* lisp/vc/diff-mode.el: Better handle empty lines in context diffs
44918
44919	(diff-end-of-hunk): Obey diff-valid-unified-empty-line for context style.
44920	(diff--refine-hunk): Don't look further than the end.
44921
449222019-03-25  Paul Eggert  <eggert@cs.ucla.edu>
44923
44924	Fix some integer issues in regex-emacs
44925
44926	Also, remove some duplicate comments related to thread.h.
44927	* src/regex-emacs.h (struct re_registers):
44928	* src/regex-emacs.c (SIGN_EXTEND_CHAR): Remove.
44929	(TALLOC, RETALLOC): Remove.  All uses replaced by usual
44930	allocators, which check for integer overflow.
44931	(extract_number): Redo without using ‘unsigned’.
44932	(CHARSET_RANGE_TABLE_EXISTS_P): Clearly return a boolean.
44933	(print_fastmap, print_partial_compiled_pattern, CHECK_INFINITE_LOOP)
44934	(regex_compile, analyze_first, bcmp_translate, mutually_exclusive_p)
44935	(re_match_2_internal):
44936	Use bool for booleans.
44937	(print_fastmap, regex_compile, execute_charset):
44938	Prefer int to unsigned where either will do.
44939	(print_double_string): Prefer ptrdiff_t to ssize_t, since the
44940	latter can in theory be narrower than the former.  Use fwrite
44941	instead of repeated putchar.
44942	(emacs_re_max_failures, fail_stack_type, compile_stack_type)
44943	(re_wctype_parse, regex_compile, re_search, re_search_2)
44944	(re_match_2, re_match_2_internal, re_compile_pattern):
44945	Prefer ptrdiff_t to size_t where either will do.
44946	(union fail_stack_elt, PUSH_FAILURE_REG, POP_FAILURE_REG_OR_COUNT):
44947	Make the integer an intptr_t, not long.
44948	(GET_BUFFER_SPACE, EXTEND_BUFFER, regex_compile):
44949	Use xpalloc to simplify allocation.
44950	(regex_compile): Check for integer overflow when calculating
44951	register numbers.
44952	* src/regex-emacs.c (re_set_registers, re_match_2_internal):
44953	* src/regex-emacs.h (struct re_registers, struct re_pattern_buffer):
44954	* src/search.c (Freplace_match):
44955	Prefer ptrdiff_t to unsigned where either will do.
44956	* src/regex-emacs.h (struct re_pattern_buffer):
44957	Prefer bool_bf to unsigned where either will do.
44958
449592019-03-25  Paul Eggert  <eggert@cs.ucla.edu>
44960
44961	* src/regex-emacs.c (regex_compile): Fix comments.
44962
449632019-03-25  João Távora  <joaotavora@gmail.com>
44964
44965	Avoid occasional confusion of Flymake C/C++ backend
44966
44967	The regexp would sometimes match non-errors and create a diagnostic
44968	with nil severity, which would have consequences for the Flymake
44969	engine (these should eventually be addressed, too).
44970
44971	* lisp/progmodes/flymake-cc.el (flymake-cc--make-diagnostics):
44972	Tighten regexp.
44973
449742019-03-25  João Távora  <joaotavora@gmail.com>
44975
44976	Make bundled Flymake C backend work for C++, too
44977
44978	* lisp/progmodes/flymake-cc.el (flymake-cc-use-special-make-target):
44979	Pass -x flag according to major-mode.
44980
449812019-03-24  Juri Linkov  <juri@linkov.net>
44982
44983	i18n: Add function ngettext for pluralization.
44984
44985	* lisp/international/mule-cmds.el (ngettext): New function.
44986	https://lists.gnu.org/archive/html/emacs-devel/2019-03/msg00586.html
44987
44988	* lisp/replace.el (flush-lines, how-many, occur-1, occur-engine)
44989	(perform-replace): Use ngettext.
44990
44991	* lisp/progmodes/grep.el (grep-exit-message): Use ngettext.
44992	(grep-mode-font-lock-keywords): Match both singular and plural form
44993	of "matches".
44994
449952019-03-24  Juri Linkov  <juri@linkov.net>
44996
44997	* lisp/progmodes/xref.el (xref--show-xrefs): Push mark.  (Bug#34908)
44998
449992019-03-24  Basil L. Contovounesios  <contovob@tcd.ie>
45000
45001	Fix Gnus duplicate article unsuppression
45002
45003	* lisp/gnus/gnus-sum.el (gnus-summary-mode-group): Declare before
45004	first use to silence byte-compiler.
45005	(gnus-summary-select-article): Simplify boolean expression.
45006	(gnus-summary-move-article): Do not try to unsuppress article when
45007	duplicate suppression is disabled. (bug#34973, bug#34974)
45008
450092019-03-24  Paul Eggert  <eggert@cs.ucla.edu>
45010
45011	* src/lisp.h (primary_thread): Remove unused decl.
45012
450132019-03-24  Michael Albinus  <michael.albinus@gmx.de>
45014
45015	Bind `enable-local-variables' in `hack-connection-local-variables'
45016
45017	* lisp/files-x.el (hack-connection-local-variables):
45018	Bind `enable-local-variables', instead of re-declaring
45019	`safe-local-variable-p'.
45020
450212019-03-23  Eli Zaretskii  <eliz@gnu.org>
45022
45023	* src/Makefile.in ($(AM_V_GEN)POSIXLY_CORRECT): Use AM_V_GEN.
45024
450252019-03-23  Michael Albinus  <michael.albinus@gmx.de>
45026
45027	Fix Bug#34943
45028
45029	* lisp/files-x.el (cl-lib): Require when compiling.
45030	(hack-connection-local-variables): Regard connection-local
45031	variables as safe.  (Bug#34943)
45032
45033	* lisp/shell.el (shell): Use `with-connection-local-variables' for
45034	the whole code block.  (Bug#34943)
45035
45036	* lisp/net/tramp-adb.el (tramp-connection-local-safe-shell-file-names):
45037	Do not set values.
45038
45039	* lisp/net/tramp-integration.el
45040	(tramp-connection-local-safe-shell-file-names): Remove.
45041	(shell-file-name, shell-command-switch): Do not add safe-local-variable
45042	property.
45043
45044	* lisp/net/tramp.el (tramp-handle-shell-command): Use proper
45045	buffer name.
45046
45047	* test/lisp/net/tramp-tests.el (tramp-test34-explicit-shell-file-name):
45048	Tag it :unstable.
45049
450502019-03-23  Eli Zaretskii  <eliz@gnu.org>
45051
45052	Avoid compiler warning in w32proc.c
45053
45054	* src/w32proc.c (w32_executable_type): Avoid compiler warnings
45055	about potential NULL pointer dereferencing.
45056
450572019-03-22  Michael R. Mauger  <michael@mauger.com>
45058	Fix Bug#25424.
45059	* lisp/progmodes/sql.el (sql-end-of-statement): default terminator
45060	as semicolon.
45061
450622019-03-22  Stephen Leake  <stephen_leake@stephe-leake.org>
45063
45064	Fix bug in delete-indentation when region is inactive
45065
45066	* test/lisp/simple-tests.el: Add tests for delete-indentation.
45067	(simple-delete-indentation-no-region): Works with no region.
45068	(simple-delete-indentation-inactive-region): Was broken with inactive
45069	region; now fixed.
45070
45071	* lisp/simple.el (delete-indentation): Check (use-region-p) before using BEG.
45072
450732019-03-22  Eric Abrahamsen  <eric@ericabrahamsen.net>
45074
45075	Change Gnus hash tables into real hash tables
45076
45077	Gnus has used obarrays as makeshift hash tables for groups: group
45078	names are coerced to unibyte and interned in custom obarrays, and
45079	their symbol-value set to whatever value needs to be stored. This
45080	patch replaces those obarrays with actual hash tables.
45081
45082	* lisp/gnus/gnus-util.el (gnus-intern-safe, gnus-create-hash-size):
45083	  Remove functions.
45084	  (gnus-make-hashtable): Change to return a real hash table.
45085	  (gnus-text-property-search): Utility similar to `text-property-any',
45086	  but compares on `equal'. Needed because the 'gnus-group text
45087	  property is now a string.
45088	* lisp/gnus/gnus.el (gnus-gethash, gnus-gethash-safe, gnus-sethash):
45089	  Remove macros.
45090	  (gnus-group-list): New variable holding all group names as an
45091	  ordered list. Used because `gnus-newsrc-hashtb' used to preserve
45092	  `gnus-newsrc-alist' ordering, but now doesn't.
45093	* lisp/gnus/nnmaildir.el (nnmaildir--servers): Change from obarray to
45094	  alist.
45095	  (nnmaildir--up2-1): Remove function.
45096	* lisp/thingatpt.el (thing-at-point-newsgroup-p): This was making use
45097	  of Gnus obarrays, replace with a cond that can handle many different
45098	  possibilities.
45099	* lisp/gnus/gnus-bcklg.el (gnus-backlog-articles): Remove
45100	  gnus-backlog-hashtb, which wasn't doing anything. Just keep a list
45101	  of ident strings in gnus-backlog-articles.
45102	  (gnus-backlog-setup): Delete unnecessary function.
45103	  (gnus-backlog-enter-article, gnus-backlog-remove-oldest-article,
45104	  gnus-backlog-remove-article, gnus-backlog-request-article): Alter
45105	  calls accordingly.
45106	* lisp/gnus/gnus-dup.el (gnus-duplicate-list-max-length): Rename from
45107	  `gnus-duplicate-list-length', for accuracy.
45108	* lisp/gnus/gnus-start.el (gnus-active-to-gnus-format,
45109	  gnus-groups-to-gnus-format, gnus-newsrc-to-gnus-format): Read group
45110	  names as strings.
45111	  (gnus-gnus-to-quick-newsrc-format): Write `gnus-newsrc-alist' using
45112	  the ordering in `gnus-group-list'.
45113	* lisp/gnus/gnus-agent.el:
45114	* lisp/gnus/gnus-async.el:
45115	* lisp/gnus/gnus-cache.el:
45116	* lisp/gnus/gnus-group.el:
45117	* lisp/gnus/gnus-score.el:
45118	* lisp/gnus/gnus-sum.el:
45119	* lisp/gnus/gnus-topic.el:
45120	* lisp/gnus/message.el:
45121	* lisp/gnus/mml.el:
45122	* lisp/gnus/nnagent.el:
45123	* lisp/gnus/nnbabyl.el:
45124	* lisp/gnus/nnvirtual.el:
45125	* lisp/gnus/nnweb.el: In all files, change obarrays to hash-tables,
45126	  and swap `gnus-sethash' for `puthash', `gnus-gethash' for `gethash',
45127	  `mapatoms' for `maphash', etc.
45128	* test/lisp/gnus/gnus-test-headers.el (gnus-headers-make-dependency-table,
45129	  gnus-headers-loop-dependencies): New tests to make sure we're
45130	  building `gnus-newsgroup-dependencies' correctly.
45131
451322019-03-22  Michael Albinus  <michael.albinus@gmx.de>
45133
45134	Fix Bug#24394, Bug#34172
45135
45136	* lisp/subr.el (process-file-shell-command):
45137	Use `with-connection-local-variables'.  Do not set "/bin/sh" for
45138	remote buffers, trust settings of `shell-file-name'.
45139
45140	* lisp/net/tramp-adb.el (tramp-methods) <adb>:
45141	* lisp/net/tramp-smb.el (tramp-methods) <smb>:
45142	Remove `tramp-remote-shell' and `tramp-remote-shell-args'.
45143
45144	* lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch)
45145	(tramp-maybe-open-connection): Use proper read syntax for function
45146	names.
45147
45148	* lisp/net/tramp.el (tramp-handle-shell-command): Do not use shell
45149	file names from `tramp-methods'.
45150	Respect `async-shell-command-buffer'.  (Bug#24394, Bug#34172)
45151	Use `start-file-process-shell-command' and `process-file-shell-command'.
45152
45153	* test/lisp/net/tramp-tests.el (tramp-test32-shell-command):
45154	Let it run partly for tramp-adb.
45155
451562019-03-22  Nicolas Petton  <nicolas@petton.fr>
45157
45158	Fix the error message when modifying maps in-place (Bug#34941)
45159
45160	* lisp/emacs-lisp/map.el (map-not-inplace): Fix the message of the
45161	error.
45162	(map-put!): When signaling map-no-inplace error, output the map that
45163	cannot be updated inplace.
45164
451652019-03-22  Eli Zaretskii  <eliz@gnu.org>
45166
45167	Minor fixes for the last change
45168
45169	* lisp/simple.el (delete-indentation):
45170	* doc/emacs/indent.texi (Indentation Commands):
45171	* etc/NEWS: Fix last change.  (Bug#34796)
45172
451732019-03-22  Łukasz Stelmach  <stlman@poczta.fm>
45174
45175	If the region is active, join all the lines it spans
45176
45177	* lisp/simple.el (delete-indentation): Join lines in the active region.
45178	(Bug#34796)
45179
45180	* doc/misc/org.texi: Describe the arguments of delete-indentation.
45181
45182	* etc/NEWS: Mention region support in delete-indentation.
45183
451842019-03-22  Eli Zaretskii  <eliz@gnu.org>
45185
45186	Revert "Revert "Revert "Rely on conservative stack scanning to find "emacs_value"s"""
45187
45188	This reverts commit 093d3e78d21d3d6c718997368ef4b31f9884401c,
45189	which reverted ee7ad83f20903208404a84b58b7a478b62924570,
45190	which reverted 3eb93c07f7a60ac9ce8a16f10c3afd5a3a31243a.
45191
451922019-03-21  Federico Tedin  <federicotedin@gmail.com>
45193
45194	Correctly handle packages without description in describe-package
45195
45196	* lisp/emacs-lisp/package.el (describe-package-1): Do not call insert
45197	  if package description is nil (Bug#34147).
45198
451992019-03-21  Federico Tedin  <federicotedin@gmail.com>
45200
45201	Make edebug-eval-expression support code completion
45202
45203	* lisp/emacs-lisp/edebug.el (edebug-eval-expression): Use
45204	  read--expression instead of read-from-minibuffer. (Bug#34065)
45205
452062019-03-21  Stefan Monnier  <monnier@iro.umontreal.ca>
45207
45208	Fix misuses of NULL when talking about the NUL character
45209
45210	* lisp/subr.el (inhibit-null-byte-detection): Make it an obsolete alias.
45211
45212	* src/coding.c (setup_coding_system): Use new name.
45213	(detect_coding): Rename null_byte_found => nul_byte_found.
45214	(detect_coding_system): Use new name.
45215	Rename null_byte_found => nul_byte_found.
45216	(Fdefine_coding_system_internal): Use new name.
45217	(syms_of_coding): Rename inhibit-null-byte-detection to
45218	inhibit-nul-byte-detection.
45219	* src/w16select.c (get_clipboard_data): null_char => nul_char.
45220	* src/json.c (check_string_without_embedded_nuls): Rename from
45221	check_string_without_embedded_nulls.
45222	(Fjson_parse_string): Adjust accordingly.
45223	* src/coding.h (enum define_coding_undecided_arg_index)
45224	(enum coding_attr_index): ...null_byte... => ...nul_byte....
45225	* lisp/info.el (info-insert-file-contents, Info-insert-dir):
45226	* lisp/international/mule.el (define-coding-system):
45227	* lisp/vc/vc-git.el (vc-git--call):
45228	* doc/lispref/nonascii.texi (Lisp and Coding Systems): Use the new name.
45229
452302019-03-21  Nicolas Petton  <nicolas@petton.fr>
45231
45232	* etc/NEWS: Document seq-contains-p.
45233
45234	* lisp/emacs-lisp/seq.el (seq-difference): Inverse a conditional for clarity.
45235
452362019-03-21  Nicolas Petton  <nicolas@petton.fr>
45237
45238	New seq-contains-p predicate (Bug#34852)
45239
45240	* lisp/emacs-lisp/seq.el (seq-contains-p): New predicate function.  It
45241	is a replacement for seq-contains which cannot be used as a predicate
45242	when a sequence contains nil values as it returns the element found.
45243	(seq-contains): Make obsolete.
45244
45245	* test/lisp/emacs-lisp/seq-tests.el (test-seq-contains-p):
45246	(test-seq-intersection-with-nil, test-seq-set-equal-p-with-nil,
45247	test-difference-with-nil): Add regression tests.
45248
45249	* doc/lispref/sequences.texi (Sequence Functions): Document
45250	seq-contains-p.
45251
452522019-03-21  Eli Zaretskii  <eliz@gnu.org>
45253
45254	Revert "Revert "Rely on conservative stack scanning to find "emacs_value"s""
45255
45256	This reverts commit ee7ad83f20903208404a84b58b7a478b62924570.
45257
45258	There was no consensus on reverting
45259	3eb93c07f7a60ac9ce8a16f10c3afd5a3a31243a, so doing that will have to
45260	wait until the discussion ends.
45261
452622019-03-21  Philipp Stephani  <phst@google.com>
45263
45264	Revert "Rely on conservative stack scanning to find "emacs_value"s"
45265
45266	This reverts commit 3eb93c07f7a60ac9ce8a16f10c3afd5a3a31243a.
45267
45268	There was no consensus for that commit, see
45269	https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00150.html.
45270	Also, reverting this commit should fix Bug#31238.
45271
452722019-03-21  Eli Zaretskii  <eliz@gnu.org>
45273
45274	Avoid duplicate entries in process-environment after re-dumping
45275
45276	* src/pdumper.c (Fdump_emacs_portable): Reset
45277	process-environment to nil.  (Bug#34936)
45278
452792019-03-21  Stefan Monnier  <monnier@iro.umontreal.ca>
45280
45281	* doc: Recommend putting '-' as last char in Emacs charset regexps
45282
45283	* doc/lispref/searching.texi (Regexp Special):
45284	* doc/emacs/search.texi (Regexps): Recommend - as last char in [...].
45285
452862019-03-20  Glenn Morris  <rgm@gnu.org>
45287
45288	Merge from origin/emacs-26
45289
45290	24b6e6e (origin/emacs-26) * etc/AUTHORS: Update.
45291	2f22a17 * ; ChangeLog.3 update
45292	0f523de Improve indexing of the user manual
45293	bd5795e Fix url-copy-file arglist
45294	eaa188a ; * admin/notes/bugtracker: Minor additions and updates.
45295	5ed05fb Fix downloading updates for packages with non-ASCII descriptions
45296	e9f2d1f * etc/NEWS: Remove temporary markers.
45297	24fc133 * doc/misc/cc-mode.texi (Config Basics): in @itemize, @asis -...
45298	0f325d1 Don't clobber 'comint-input-autoexpand' in 'read-shell-command'
45299	bc75589 Document restrictions when setting window margins, fringes or...
45300	cc4cebf More improvements for 'read-buffer's doc string
45301	d026d9a * lisp/progmodes/cc-defs.el: Update c-version to 5.33.2 for E...
45302	5dbf08b * src/minibuf.c (Fread_buffer): Minor doc fixes.  (Bug#34749)
45303
45304	# Conflicts:
45305	#	etc/NEWS
45306	#	lisp/url/url-handlers.el
45307
453082019-03-20  Stefan Monnier  <monnier@iro.umontreal.ca>
45309
45310	Eshell: Mostly cosmetic changes to be more explicit about dynbind
45311
45312	* lisp/eshell/em-dirs.el (eshell-dirs-initialize): Reveal the lambdas.
45313	(eshell-expand-multiple-dots): Fix ^+$ => \`+\' in the regexp.
45314
45315	* lisp/eshell/esh-cmd.el (eshell-this-command-hook): Declare as
45316	dynamically scoped.
45317	(eshell-trap-errors): Use `mapc funcall` since this can't have
45318	global/local settings like a true hook.
45319	(eshell-do-eval): Split the `let` case from the rest so we can use
45320	`cl-progv` rather than `eval` for it.
45321	(eshell/which): Use `fboundp` test instead of ugly
45322	gymnastics to try and hide the function call from the compiler.
45323
45324	* lisp/eshell/esh-var.el (eshell-variable-aliases-list): Reveal the lambdas.
45325	(eshell-parse-variable-ref): Use backquotes.
45326
453272019-03-20  Stefan Monnier  <monnier@iro.umontreal.ca>
45328
45329	* lisp/pcomplete.el: Improve heuristic to rely less on c-t-subvert.
45330
45331	(pcomplete-completions-at-point): Try and take \ escapes into account
45332	when guessing the beginning of the text we're completing.
45333
453342019-03-20  Paul Eggert  <eggert@cs.ucla.edu>
45335
45336	Fix pcomplete typo in recent regex typo fix
45337
45338	Problem reported by Stefan Monnier in:
45339	https://lists.gnu.org/r/emacs-devel/2019-03/msg00682.html
45340	* lisp/pcomplete.el (pcomplete-parse-comint-arguments):
45341	Restore the trailing backslash (but two of them this time).
45342
453432019-03-20  Stefan Monnier  <monnier@iro.umontreal.ca>
45344
45345	* test/lisp/minibuffer-tests.el (completion-table-subvert-test): New test
45346
45347	* lisp/minibuffer.el (completion-table-subvert): Fix typo from rev 5697ca55cb
45348
453492019-03-20  Mattias Engdegård  <mattiase@acm.org>
45350
45351	Repair eshell-query-kill-processes
45352
45353	* lisp/eshell/esh-proc.el (eshell-query-kill-processes):
45354	Remove invalid `format-message' call; `eshell-round-robin-kill' wants
45355	just the format string.
45356
453572019-03-20  Eli Zaretskii  <eliz@gnu.org>
45358
45359	Fix defining keyboard macros in CUA mode
45360
45361	* lisp/emulation/cua-base.el (cua--prefix-override-replay):
45362	Push the key to replace wrapped in '(no-record . KEY)', so
45363	that it doesn't get recorded more than once.  (Bug#34901)
45364
45365	* src/keyboard.c (read_char): Handle the '(no-record . KEY)'
45366	event by substituting KEY for it.
45367	(syms_of_keyboard) <no-record>: New DEFSYM.
45368	<unread-command-events>: Update the doc string.
45369
45370	* doc/lispref/commands.texi (Event Input Misc): Document the
45371	'(no-record . EVENT)' form.
45372
453732019-03-19  Stefan Monnier  <monnier@iro.umontreal.ca>
45374
45375	* lisp/eshell/em-cmpl.el: Use completion-at-point i.s.o pcomplete
45376
45377	(eshell-cmpl-initialize): Refrain from binding to the `tab` key,
45378	which prevents the tab -> TAB remapping.
45379	Use completion-at-point and completion-help-at-point.
45380	(eshell-complete-commands-list): Use `fboundp` test instead of ugly
45381	gymnastics to try and hide the function call from the compiler.
45382	(eshell-pcomplete): Make it an alias of completion-at-point.
45383
45384	* doc/misc/eshell.texi (Completion): Change wording to reflect
45385	different default behavior.
45386
453872019-03-19  Paul Eggert  <eggert@cs.ucla.edu>
45388
45389	More minor regex cleanup
45390
45391	Problems reported by Mattias Engdegård in:
45392	https://lists.gnu.org/r/emacs-devel/2019-03/msg00643.html
45393	plus a few others that I noticed.
45394	* lisp/auth-source-pass.el (auth-source-pass--parse-data):
45395	* lisp/org/org-datetree.el (org-datetree--find-create):
45396	* lisp/org/org-pcomplete.el (org-thing-at-point):
45397	* lisp/progmodes/js.el (js--end-of-do-while-loop-p):
45398	* lisp/textmodes/sgml-mode.el:
45399	(sgml-electric-tag-pair-before-change-function):
45400	* lisp/textmodes/texnfo-upd.el (texinfo-menu-copy-old-description):
45401	* lisp/url/url-http.el (url-http-parse-response):
45402	Fix regular expression and similar syntax.
45403
454042019-03-19  Juri Linkov  <juri@linkov.net>
45405
45406	* lisp/vc/vc.el (vc-diff-build-argument-list-internal): Add arg fileset.
45407
45408	(vc-root-version-diff): Set vc-diff-build-argument-list-internal's
45409	optional arg 'fileset' to the root directory.  (Bug#34532)
45410
454112019-03-19  Juri Linkov  <juri@linkov.net>
45412
45413	* lisp/frame.el (frame-monitor-attributes): Fall back to the last monitor
45414
45415	when frames monitor attributes is still uninitialized.  (Bug#34680)
45416
454172019-03-19  Juri Linkov  <juri@linkov.net>
45418
45419	* lisp/frame.el (make-frame-on-monitor): Don't set height and width.
45420
45421	Don't use x-parse-geometry.  Delete nil from completions (Bug#34516)
45422
454232019-03-19  Paul Eggert  <eggert@cs.ucla.edu>
45424
45425	Use ‘const’ to clarify GC marking
45426
45427	Add ‘const’ to make the GC marking code a bit clearer.
45428	This can also help the compiler in some cases, I think because
45429	GCC can now determine more often that the value of a static C
45430	variable can be cached when its address is now converted to
45431	‘Lisp Object const *’ before escaping.
45432	* src/alloc.c (staticvec, mark_maybe_objects, mark_memory)
45433	(mark_stack, staticpro, mark_object_root_visitor)
45434	(garbage_collect_1):
45435	* src/pdumper.c (dump_ptr_referrer, dump_emacs_reloc_to_lv)
45436	(dump_emacs_reloc_to_emacs_ptr_raw, dump_root_visitor):
45437	* src/lisp.h (vcopy, struct gc_root_visitor):
45438	* src/sysdep.c (stack_overflow):
45439	* src/thread.c (mark_one_thread):
45440	* src/thread.h (struct thread_state):
45441	Use pointer-to-const instead of plain pointer in some
45442	GC-related places where either will do.
45443
454442019-03-19  Mattias Engdegård  <mattiase@acm.org>
45445
45446	Disallow reversed char ranges in `rx'
45447
45448	(any "a-Z0-9") generated "[0-9]", and (any (?9 . ?0)) generated "[9-0]".
45449	Reversed ranges are either mistakes or abuse.  Neither should be allowed.
45450
45451	etc/NEWS: Explain the change.
45452	lisp/emacs-lisp/rx.el (rx): Document.
45453	(rx-check-any-string, rx-check-any): Add error checks for reversed ranges.
45454	test/lisp/emacs-lisp/rx-tests.el (rx-char-any-range-bad): New test.
45455
454562019-03-18  Paul Eggert  <eggert@cs.ucla.edu>
45457
45458	Remove buggy regexp use in comint-output-filter
45459
45460	This reverts commit 2012-07-02T16:18:02!monnier@iro.umontreal.ca
45461	which perhaps could be rethought and recommitted, and perhaps
45462	it’s no longer needed now that comint-use-prompt-regexp
45463	is almost always nil.
45464	* lisp/comint.el (comint-output-filter): Don’t try to skip
45465	repeated prompts, since comint-prompt-regexp typically begins
45466	with "^" and the resulting "^^" in the regular expression does
45467	not have the desired effect.  Noted by Mattias Engdegård in:
45468	https://lists.gnu.org/r/emacs-devel/2019-03/msg00380.html
45469
454702019-03-18  Paul Eggert  <eggert@cs.ucla.edu>
45471
45472	Fix more regular expression typos
45473
45474	Problem reported by Mattias Engdegård in:
45475	https://lists.gnu.org/r/emacs-devel/2019-03/msg00548.html
45476	except that I didn’t address the issues involving Hebrew,
45477	or involving comint-prompt-regexp.
45478	* lisp/align.el (align-rules-list, align-exclude-rules-list):
45479	* lisp/auth-source-pass.el (auth-source-pass--parse-secret)
45480	(auth-source-pass--parse-data):
45481	* lisp/cedet/data-debug.el (data-debug-next)
45482	(data-debug-prev, data-debug-expand-or-contract):
45483	* lisp/comint.el (comint-within-quotes):
45484	* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
45485	* lisp/emulation/viper-ex.el (ex-cmd-complete):
45486	* lisp/gnus/gnus-cite.el (gnus-message-search-citation-line):
45487	* lisp/gnus/nnir.el (nnir-imap-end-of-input):
45488	* lisp/mail/mail-extr.el (mail-extr-all-letters):
45489	* lisp/minibuffer.el (minibuffer-maybe-quote-filename):
45490	* lisp/nxml/rng-nxml.el (rng-complete-tag)
45491	(rng-complete-end-tag, rng-complete-attribute-name):
45492	* lisp/obsolete/vip.el (vip-get-ex-token, vip-get-ex-pat):
45493	* lisp/org/org-pcomplete.el (org-thing-at-point):
45494	* lisp/org/org.el (org-set-tags)
45495	(org-increase-number-at-point)
45496	(org-fill-line-break-nobreak-p):
45497	* lisp/pcomplete.el (pcomplete-parse-comint-arguments):
45498	* lisp/progmodes/ada-mode.el (ada-compile-goto-error):
45499	* lisp/progmodes/cperl-mode.el (cperl-highlight-charclass)
45500	(cperl-find-pods-heres, cperl-not-bad-style-regexp)
45501	(cperl-regext-to-level-start):
45502	* lisp/progmodes/ebnf-yac.el (ebnf-yac-skip-spaces):
45503	* lisp/progmodes/flymake-proc.el (flymake-proc-master-tex-init):
45504	* lisp/progmodes/flymake.el (flymake-diag-region):
45505	* lisp/progmodes/fortran.el (fortran-current-line-indentation):
45506	* lisp/progmodes/idlw-complete-structtag.el:
45507	(idlwave-complete-structure-tag):
45508	* lisp/progmodes/idlwave.el (idlwave-complete-sysvar-or-tag):
45509	* lisp/progmodes/prolog.el (prolog-pred-end)
45510	(prolog-clause-info):
45511	* lisp/progmodes/ruby-mode.el (ruby-forward-sexp)
45512	(ruby-backward-sexp):
45513	* lisp/progmodes/verilog-mode.el (verilog-repair-open-comma):
45514	* lisp/term.el (term-within-quotes):
45515	* lisp/textmodes/bib-mode.el (bib-capitalize-title-stop-words):
45516	* lisp/textmodes/refbib.el (r2b-capitalize-title-stop-words):
45517	* lisp/textmodes/reftex-parse.el (reftex-nth-arg):
45518	* lisp/textmodes/rst.el (rst-svn-rev):
45519	* lisp/url/url-http.el (url-http-parse-response):
45520	* test/lisp/progmodes/f90-tests.el (f90-test-bug3730):
45521	Fix regular expression typos.
45522
455232019-03-18  Stefan Monnier  <monnier@iro.umontreal.ca>
45524
45525	* src/fileio.c: Don't convert \r to \n just because of C-x $
45526
45527	(choose_write_coding_system): Setup the \r to \n conversion only if
45528	selective-display is t.
45529
455302019-03-18  Stefan Monnier  <monnier@iro.umontreal.ca>
45531
45532	* lisp/locate.el (locate-mode): Setup invisibility for Dired commands
45533
45534	Also, use lexical-binding.
45535
455362019-03-18  Stefan Monnier  <monnier@iro.umontreal.ca>
45537
45538	Ebrowse: Use invisibility-spec instead of selective-display
45539
45540	* lisp/progmodes/ebrowse.el: Use lexical-binding.
45541	(ebrowse-tree-mode): Set invisibility-spec instead of selective-display.
45542	(ebrowse--hidden-p, ebrowse--hide, ebrowse--unhide): New functions.
45543	(ebrowse-expand-all, ebrowse-unhide-base-classes, ebrowse-hide-line)
45544	(ebrowse-mouse-1-in-tree-buffer): Use them.
45545	(ebrowse-output): Remove macro, use with-silent-modifications instead.
45546	(ebrowse-save-selective): Remove macro, not needed any more.
45547	(ebrowse-trim-string, ebrowse-read, ebrowse-collapse-fn):
45548	No need to pay attention to \r.
45549	(ebrowse-files-list): Use push.
45550	(ebrowse-view/find-file-and-search-pattern): Use add-hook here...
45551	(ebrowse-find-pattern): ...and remove-hook here.
45552	(ebrowse-view/find-position): Use add/remove-hook.
45553
455542019-03-17  Stefan Monnier  <monnier@iro.umontreal.ca>
45555
45556	Dired: Use invisibility-spec instead of selective-display
45557
45558	* lisp/dired.el (dired-subdir-regexp): No need to pay attention to \r.
45559	(dired-remember-hidden): Use pcase-dolist and dired--hidden-p.
45560	(dired-mode): Set invisibility-spec instead of selective-display.
45561	(dired--hidden-p, dired--hide, dired--unhide, dired--find-hidden-pos):
45562	New functions.
45563	(dired-move-to-end-of-filename): Use dired--hidden-p.
45564	(dired-next-subdir): No need to pay attention to \r.
45565	(dired-fun-in-all-buffers): Use push.
45566
45567	* lisp/dired-aux.el (dired-unhide-subdir, dired-hide-subdir, dired-hide-all):
45568	Use the new functions and with-silent-modifications.
45569	(dired-add-entry): Use dired--hidden-p.
45570	(dired-goto-subdir): No need to pay attention to \r.
45571	(dired-hide-check): Remove.
45572	(dired-subdir-hidden-p): Use dired--hidden-p.
45573	(dired-do-find-regexp): Use file-name-as-directory.
45574
455752019-03-17  Stefan Monnier  <monnier@iro.umontreal.ca>
45576
45577	* doc/lispref/display.texi (Selective Display): Declare it deprecated
45578
455792019-03-17  Eli Zaretskii  <eliz@gnu.org>
45580
45581	Fix 'define-charset' after dumping with pdumper
45582
45583	* src/charset.h:
45584	* src/charset.c (charset_table_used): Now static.
45585	(charset_table_size): Now extern.
45586	* src/pdumper.c (dump_charset_table): Dump the entire
45587	charset_table, not just its used slots.  (Bug#34826)
45588
455892019-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
45590
45591	* lisp/subr.el (combine-change-calls-1): Don't combine syntax-ppss flushes
45592
455932019-03-16  Alexander Gramiak  <agrambot@gmail.com>
45594
45595	Define macros to abstract support for external menu/tool-bars
45596
45597	* src/lisp.h (HAVE_EXT_MENU_BAR)
45598	(HAVE_EXT_TOOL_BAR): Define.
45599
45600	*src/dispnew.c:
45601	*src/frame.c:
45602	*src/frame.h:
45603	*src/keyboard.c:
45604	*src/menu.c:
45605	*src/menu.h:
45606	*src/window.c:
45607	*src/window.h:
45608	*src/xdisp.c:
45609	*src/xfns: Use the new macros.
45610
456112019-03-16  Paul Eggert  <eggert@cs.ucla.edu>
45612
45613	Fix regexp typo in vc-git--program-version
45614
45615	* lisp/vc/vc-git.el (vc-git--program-version):
45616	Require a period after ".windows", instead of allowing any char.
45617
456182019-03-16  Mattias Engdegård  <mattiase@acm.org>
45619
45620	Fix some ineffective backslashes in string literals
45621
45622	Deal with lone backslashes that have no effect in string literals,
45623	but indicate that something is amiss.
45624
45625	* lisp/auth-source-pass.el (auth-source-pass-entries):
45626	* lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
45627	* lisp/org/ob-abc.el (org-babel-expand-body:abc, org-babel-execute:abc):
45628	* lisp/org/ob-forth.el (org-babel-forth-session-execute):
45629	* lisp/vc/vc-git.el (vc-git--program-version):
45630	Add backslash in regexp for correctness.
45631
45632	* lisp/gnus/nnmail.el (nnmail-split-abbrev-alist):
45633	Replace `\||' with `\\|' to follow the obvious regexp intent.
45634
45635	* lisp/org/org-list.el (org-plain-list-ordered-item-terminator):
45636	Add backslash in doc comment so that it appears as intended.
45637
45638	* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1, c-end-of-decl-1):
45639	* lisp/progmodes/f90.el (f90-font-lock-keywords-2):
45640	* lisp/progmodes/etags.el (etags-tags-completion-table):
45641	* lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
45642	* test/lisp/emacs-lisp/cl-print-tests.el (cl-print-tests-1):
45643	Remove superfluous backslashes from regexp.
45644
45645	* test/lisp/emacs-lisp/rx-tests.el (rx-char-any):
45646	Remove superfluous backslash from doc comment.
45647
456482019-03-16  Eli Zaretskii  <eliz@gnu.org>
45649
45650	Improve locale and language environment setting at startup
45651
45652	* lisp/international/mule-cmds.el (locale-language-names): Add
45653	more locales and their language environments.
45654	(set-locale-environment): Use w32-multibyte-code-page, if
45655	non-zero, as locale-coding-system.  (Bug#34684)
45656
45657	* src/w32fns.c (globals_of_w32fns) <w32-multibyte-code-page>:
45658	New variable.
45659
45660	* etc/NEWS: Mention w32-multibyte-code-page.
45661
456622019-03-15  Paul Eggert  <eggert@cs.ucla.edu>
45663
45664	Bring back Emacs 26 compatibility to flymake.el
45665
45666	* lisp/progmodes/flymake.el (flymake--schedule-timer-maybe):
45667	Revert to using seconds-to-time, since this file is part
45668	of ELPA and needs to work on Emacs 26 too.
45669
456702019-03-15  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
45671
45672	Use bool for menu_items_inuse
45673
45674	* src/menu.c (menu_items_inuse): Now bool, instead of a
45675	Lisp_Object that is always Qt or Qnil.  All uses changed.
45676
456772019-03-15  Philippe Vaucher  <philippe.vaucher@gmail.com>
45678
45679	Customize tabulated-list sort indicators
45680
45681	This allows the user to customize the sorting indicators displayed
45682	near the current column.
45683
45684	* lisp/emacs-lisp/tabulated-list.el (tabulated-list): New group.
45685	(tabulated-list-gui-sort-indicator-asc)
45686	(tabulated-list-gui-sort-indicator-desc)
45687	(tabulated-list-tty-sort-indicator-asc)
45688	(tabulated-list-tty-sort-indicator-desc): New defcustomd.
45689	(tabulated-list-glyphless-char-display): Remove.
45690	(tabulated-list-make-glyphless-char-display-table): New function.
45691
45692	* doc/lispref/modes.texi (Tabulated List Mode): Add documentation
45693	for new options.
45694
45695	* etc/NEWS: Mention the new options.
45696
456972019-03-15  Eli Zaretskii  <eliz@gnu.org>
45698
45699	* etc/NEWS: Document Sami input methods.  (Bug#34866)
45700
457012019-03-15  Wojciech Gac  <wojciech.s.gac@gmail.com>
45702
45703	Add notice and fix missing character
45704
45705	Add remaining Sami input methods
45706
45707	Add Skolt Sami and Inari Sami input methods
45708
457092019-03-13  Stefan Monnier  <monnier@iro.umontreal.ca>
45710
45711	* lisp/doc-view.el (doc-view--text-view-mode): Derive from text-mode.
45712
457132019-03-13  Basil L. Contovounesios  <contovob@tcd.ie>
45714
45715	Fix file attribute accessor typo in Elisp manual
45716
45717	This was introduced in 662bee7d70ccd3903e123b08c7ec9108a1a2ce0b
45718	2018-09-24T01:30:46Z!eggert@cs.ucla.edu.
45719	* doc/lispref/files.texi (File Attributes): Fix typo referring to
45720	wrong file attribute accessor.
45721
457222019-03-13  Glenn Morris  <rgm@gnu.org>
45723
45724	* test/lisp/progmodes/python-tests.el
45725	(python-syntax-after-python-backspace): Expect failure again.
45726
457272019-03-13  Stefan Monnier  <monnier@iro.umontreal.ca>
45728
45729	* lisp/emacs-lisp/easy-mmode.el: Fix most obvious bug#34723
45730
45731	(easy-mmode-define-navigation): Don't scroll in the opposite direction of
45732	the movement.
45733
457342019-03-13  Stefan Monnier  <monnier@iro.umontreal.ca>
45735
45736	* lisp/mail/hashcash.el (hashcash-insert-payment-async): Fix last change
45737
457382019-03-13  Stefan Monnier  <monnier@iro.umontreal.ca>
45739
45740	* lisp/progmodes/python.el (python-rx-constituents): Fix ordering in `or`
45741
45742	The previous code worked earlier because of a bug in `rx` (which used
45743	`regexp-opt` without passing it to `keep-order` argument), but now that `rx`
45744	has been fixed the underlying bug here reared its ugly head.
45745
457462019-03-13  Eli Zaretskii  <eliz@gnu.org>
45747
45748	Avoid gratuitous errors in 'url-retrieve-synchronously'
45749
45750	* lisp/url/url-http.el (url-http-debug):
45751	* lisp/url/url-util.el (url-debug): Don't signal an error if
45752	quit-flag is non-nil, but not t.  This could happen because
45753	some unrelated code is running inside while-no-input.
45754	(Bug#34763)
45755
457562019-03-13  Stefan Monnier  <monnier@iro.umontreal.ca>
45757
45758	* lisp/battery.el (battery-bsd-apm): Group indices together; use pcase
45759
457602019-03-13  Ahmed Khanzada  <me@enzu.ru>  (tiny change)
45761
45762	* lisp/battery.el (battery-bsd-apm): Make it work on FreeBSD
45763
45764
45765	Use flag "t" to get remaining time, and adjust to different output order.
45766
457672019-03-12  Christopher Wellons  <wellons@nullprogram.com>  (tiny change)
45768
45769	* lisp/mail/hashcash.el: Get rid of backquoted lambdas
45770
45771
45772	(hashcash-generate-payment-async): η-reduce.
45773	(hashcash-insert-payment-async): Use proper closure.
45774
457752019-03-12  Michael Albinus  <michael.albinus@gmx.de>
45776
45777	* lisp/net/tramp-adb.el (tramp-adb-handle-make-process):
45778
45779	Use proper range when deleting the region.
45780
457812019-03-12  Alan Mackenzie  <acm@muc.de>
45782
45783	Correct the indentation of CC Mode brace lists
45784
45785	while preserving the indentation of nested C++ uniform initialization.
45786
45787	* lisp/progmodes/cc-align.el (c-lineup-2nd-brace-entry-in-arglist)
45788	(c-lineup-class-decl-init-+, c-lineup-class-decl-init-after-brace): New
45789	indentation functions.
45790
45791	* lisp/progmodes/cc-engine.el (c-forward-class-decl): New function.
45792	(c-do-declarators): New function, partially extracted from
45793	c-font-lock-declarators, which now calls the new function.
45794	(c-inside-bracelist-p): Amend the introductory comment.
45795	(c-add-stmt-syntax): Add code to prevent the spurious recognition of a
45796	'defun-block-intro when a brace pair is used as an initializer.
45797	(c-evaluate-offset): No longer ignore vectors of length >= 2.
45798	(c-calc-offset): Refactor clumsily nested `if'/`or' into a cond form.
45799
45800	* lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Replace the bulk of
45801	this function by a call to the new c-forward-class-decl.
45802
45803	* lisp/progmodes/cc-langs.el (c-type-decl-prefix-key): Recognize "~" as a
45804	type decl operator.
45805
45806	* lisp/progmodes/cc-mode.el (c-fl-decl-start): While searching backward for a
45807	"}" at an EOD, deal with actually finding the end of a brace list.
45808
45809	* doc/misc/cc-mode.texi (List Line-Up): document
45810	c-lineup-2nd-brace-entry-in-arglist, c-lineup-class-decl-init-+, and
45811	c-lineup-class-decl-init-after-brace.
45812
45813	* lisp/progmodes/cc-styles.el (c-style-alist): In styles "gnu", "bsd",
45814	"stroustrup", "python", and "java", change the offset for brace-list-intro
45815	from the default value or c-lineup-arglist-intro-after-paren to a list
45816	beginning with the symbol first, followed by two of the new alignment
45817	functions, followed by +.
45818
45819	* lisp/progmodes/cc-vars.el (c-offset-alist): Change the default value of
45820	brace-list-entry from c-lineup-under-anchor back to 0.
45821
458222019-03-12  Martin Rudalics  <rudalics@gmx.at>
45823
45824	Revert last tweak in 'comint-output-filter'
45825
45826	* lisp/comint.el (comint-output-filter): Revert last tweak because
45827	it can hang gdb indefinitely.
45828
458292019-03-11  Paul Eggert  <eggert@cs.ucla.edu>
45830
45831	Reindent pdumper per usual Emacs style
45832
45833	* src/pdumper.c, src/pdumper.h: Reindent.
45834
458352019-03-11  Eli Zaretskii  <eliz@gnu.org>
45836
45837	Fix show-trailing-whitespace in R2L text
45838
45839	* src/xdisp.c (highlight_trailing_whitespace): Allow for
45840	stretch glyphs at the left edge of R2L lines, when skipping
45841	glyphs inserted by the display engine.  This unbreaks
45842	show-trailing-whitespace in R2L lines.
45843
458442019-03-11  Paul Eggert  <eggert@cs.ucla.edu>
45845
45846	Fix a small pdumper memory leak
45847
45848	* src/pdumper.c (dump_mmap_reset): Free the private area here ...
45849	(dump_mm_heap_cb_release): ... instead of here.
45850	(dump_mmap_release_heap): Simplify by avoiding a local.
45851	(dump_mmap_contiguous): Reindent GNU style.
45852
458532019-03-11  Martin Rudalics  <rudalics@gmx.at>
45854
45855	Rewrite minibuffer window resizing code
45856
45857	* src/frame.c (resize_mini_frames): New variable.
45858	* src/window.c (resize_mini_window_apply): New function.
45859	(grow_mini_window, shrink_mini_window): Remove PIXELWISE
45860	argument.  Call resize_mini_window_apply to apply changes.
45861	(Fresize_mini_window_internal): Call resize_mini_window_apply
45862	to apply changes.
45863	(Qwindow__resize_mini_frame): New symbol.
45864	* src/window.h (grow_mini_window, shrink_mini_window): Adjust
45865	external declarations.
45866	* src/xdisp.c (resize_mini_window): For minibuffer-only frames
45867	call 'window--resize-mini-frame' if resize_mini_frames is
45868	non-nil.  Offload parts of logic to grow_mini_window and
45869	shrink_mini_window which are now called without the PIXELWISE
45870	argument.
45871	(Vresize_mini_windows): Mention 'resize-mini-frames' in
45872	doc-string.
45873	* lisp/cus-start.el (resize-mini-frames): Add customization
45874	support.
45875	* lisp/window.el (window--resize-mini-window): Simplify code.
45876	(window--resize-mini-frame): New function.
45877	* doc/lispref/minibuf.texi (Minibuffer Windows): Describe new
45878	option 'resize-mini-frames'.
45879	* etc/NEWS: Mention new option 'resize-mini-frames'.
45880
458812019-03-10  Paul Eggert  <eggert@cs.ucla.edu>
45882
45883	* src/editfns.c: Fix docstring typo.
45884
458852019-03-10  Paul Eggert  <eggert@cs.ucla.edu>
45886
45887	Improve binary-as-unsigned treatment (Bug#34792)
45888
45889	* etc/NEWS:
45890	* src/editfns.c (Fformat, binary_as_unsigned):
45891	Update now that we always have bignums.
45892	(syms_of_editfns) [!defined lisp_h_FIXNUMP]: Remove now-obsolete
45893	code, since lisp_h_FIXNUMP is always defined now.
45894	* test/src/editfns-tests.el (read-large-integer): Simplify,
45895	now that we can assume binary-as-unsigned defaults to nil.
45896
458972019-03-10  Paul Eggert  <eggert@cs.ucla.edu>
45898
45899	More regexp corrections and tweaks
45900
45901	Problems reported by Mattias Engdegård in:
45902	https://lists.gnu.org/r/emacs-devel/2019-03/msg00247.html
45903	* lisp/align.el (align-rules-list):
45904	* lisp/comint.el (comint-output-filter):
45905	* lisp/language/china-util.el (encode-hz-region):
45906	* lisp/progmodes/cperl-mode.el (cperl-indent-exp):
45907	* lisp/progmodes/idlwave.el (idlwave-is-pointer-dereference):
45908	* lisp/progmodes/scheme.el (dsssl-font-lock-keywords):
45909	* lisp/textmodes/texinfmt.el (texinfo-accent-commands):
45910	* test/src/regex-emacs-tests.el (regex-tests-re-even-escapes):
45911	Fix some regular-expression typos.
45912
459132019-03-10  Paul Eggert  <eggert@cs.ucla.edu>
45914
45915	Update from Gnulib
45916
45917	This incorporates:
45918	2019-03-10 alloca-opt: Fix conflict mingw's new <alloca.h> file
45919	2019-03-03 getloadavg: Write NULL for the null pointer
45920	Reported by Michal Privoznik <mprivozn@redhat.com>.
45921	* lib/getloadavg.c (getloadavg): Write NULL instead of 0.
45922	* build-aux/config.guess, build-aux/move-if-change:
45923	* doc/misc/texinfo.tex, lib/alloca.in.h, lib/getloadavg.c:
45924	* m4/alloca.m4:
45925	Copy from Gnulib.
45926	* lib/gnulib.mk.in: Regenerate.
45927
459282019-03-10  Dmitry Gutov  <dgutov@yandex.ru>
45929
45930	(ruby-add-log-current-method): Recognize methods ending with ? or !
45931
45932	* lisp/progmodes/ruby-mode.el (ruby-add-log-current-method):
45933	Recognize method names ending with ? or !.
45934
459352019-03-10  Dmitry Gutov  <dgutov@yandex.ru>
45936
45937	project--find-regexp-in-files: Use 'grep -E'
45938
45939	* lisp/progmodes/project.el (project--find-regexp-in-files): Use
45940	'grep -E' because we convert the regexp to extended already.
45941
459422019-03-10  Michael Albinus  <michael.albinus@gmx.de>
45943
45944	Changes in Tramp adb process handling
45945
45946	* lisp/net/tramp-adb.el (tramp-methods) <adb>: Add `tramp-remote-shell'
45947	and `tramp-remote-shell-args'.
45948	(tramp-adb-file-name-handler-alist): Use `tramp-handle-shell-command'
45949	rather than `tramp-adb-handle-shell-command'.
45950	(tramp-adb-handle-shell-command): Remove.
45951	(tramp-adb-handle-make-process): Use a proper prompt.
45952	(tramp-adb-wait-for-output): Simplify.
45953
459542019-03-10  Ken Brown  <kbrown@cornell.edu>
45955
45956	Use a runtime test for timerfd on Cygwin (Bug#34618)
45957
45958	* src/atimer.c [HAVE_TIMERFD] (have_buggy_timerfd): New
45959	function.
45960	(init_atimer) Use it.
45961
459622019-03-09  Stefan Monnier  <monnier@iro.umontreal.ca>
45963
45964	* lisp/speedbar.el: Minor tweaks
45965
45966	(speedbar-directory-buttons-follow): Use file-name-as-directory.
45967	(speedbar-ignored-directory-expressions)
45968	(speedbar-supported-extension-expressions): Use `sym` in the setter.
45969	(speedbar-frame-mode): Use with-current-buffer.
45970	(speedbar-item-info-tag-helper): Use 'cond'.
45971	(speedbar-highlight-one-tag-line): Don't use position beyond EOB.
45972
459732019-03-09  Tassilo Horn  <tsdh@gnu.org>
45974
45975	Make doc-view work with text-mode as default major-mode (bug#34451)
45976
45977	* lisp/doc-view.el (doc-view--text-view-mode): New alias for view-mode.
45978	(doc-view-open-text): Use it.
45979	(doc-view-toggle-display): Use it.
45980
459812019-03-09  Christopher Wellons  <wellons@nullprogram.com>  (tiny change)
45982
45983	* lisp/emulation/viper.el: Use user-error for "Viper bell"
45984
45985
45986	* lisp/emulation/viper-init.el (viper-ViperBell): New constant.
45987	* lisp/emulation/viper-cmd.el (viper-prefix-arg-com)
45988	(viper-forward-char, viper-backward-char, viper-goto-col)
45989	(viper-find-char, viper-paren-match, viper-put-back, viper-Put-back)
45990	(viper-delete-char, viper-mark-point, viper-goto-mark-subr):
45991	* lisp/emulation/viper-ex.el (ex-delete): Use it and `user-error`.
45992
459932019-03-09  Tassilo Horn  <tsdh@gnu.org>
45994
45995	Name buffer according to attachment filename (bug#34478).
45996
45997	* lisp/gnus/mm-decode.el (mm-display-external): Name buffer showing
45998	  the attachment according to the attachment's filename, i.e. "*mm*
45999	  <filename>" instead of " *mm*12345".
46000
460012019-03-09  Ken Brown  <kbrown@cornell.edu>
46002
46003	Re-enable the timerfd interface on Cygwin
46004
46005	* configure.ac (emacs_cv_have_timerfd): No longer set this to "no"
46006	on Cygwin.  (Bug#34618)
46007
460082019-03-09  Ivan Andrus  <darthandrus@gmail.com>
46009
46010	Mention `binary-as-unsigned' in `format' docstring (Bug#34792)
46011
46012	* src/editfns.c (format): Update docstring to mention binary-as-unsigned
46013	(Bug#34792)
46014
460152019-03-09  Glenn Morris  <rgm@gnu.org>
46016
46017	Merge from origin/emacs-26
46018
46019	0589de5 (origin/emacs-26) Fix markup of fake keys in the ELisp manual
46020	82d4b98 Avoid errors in Auto Revert mode
46021	a3b1935 Mention empty strings in file name expansion, emacs lisp refe...
46022	a38da0d cc-mode.texi: Work around makeinfo alignment bug.  Fix proble...
46023	464ee80 Warn against recursive invocations of 'buffer-list-update-hoo...
46024	60b5c10 Provide more details in doc-string of 'delete-windows-on' (Bu...
46025	f0be0f1 Improve documentation of 'delete-windows-on'
46026	f1bddc7 * lisp/frame.el (make-frame-command): Doc fix.  (Bug#34715)
46027	2848623 Avoid undefined behavior in gdb-mi.el
46028	dbf1837 * lisp/window.el (fit-frame-to-buffer): Make doc-string more ...
46029	099ef44 Minor spelling and grammar fixes (bug#34756)
46030	52fd400 Minor improvement of documentation of '(when CONDITION . SPEC)'
46031	f872b65 Improve documentation of 'auto-coding-functions'
46032	04cad5e Fix visiting XML files with non-Unix EOL format
46033	a89fabe Update example major mode code in Elisp manual
46034
46035	# Conflicts:
46036	#	lisp/autorevert.el
46037	#	lisp/window.el
46038
460392019-03-09  Eli Zaretskii  <eliz@gnu.org>
46040
46041	Consult 'face-remapping-alist' for 'internal-border' face
46042
46043	* src/xterm.c (x_clear_under_internal_border)
46044	(x_after_update_window_line):
46045	* src/w32fns.c (x_clear_under_internal_border):
46046	* src/w32term.c (x_after_update_window_line): Consult
46047	'face-remapping-alist' when using the 'internal-border' face.
46048
460492019-03-09  Alan Mackenzie  <acm@muc.de>
46050
46051	CC Mode: Correct some incorrect regular expressions:
46052
46053	* lisp/progmodes/cc-awk.el (c-awk-regexp-char-list-re): "^" -> "\\^".  R*x?R*
46054	-> \(R*x\)?R*.
46055
46056	* lisp/progmodes/cc-mode.el (c-after-change-re-mark-unbalanced-strings): "|"
46057	-> "\\|".
46058
460592019-03-09  Michael Albinus  <michael.albinus@gmx.de>
46060
46061	Do not hardcode "/bin/sh" in compile.  Bug#24338, Bug#29723
46062
46063	* doc/emacs/custom.texi (Connection Variables): New node.
46064
46065	* doc/emacs/emacs.texi (Top): Add entry for Connection Variables.
46066
46067	* doc/emacs/misc.texi (Single Shell): Mention default value for
46068	remote buffers.
46069
46070	* doc/lispref/variables.texi (Connection Local Variables):
46071	Describe `with-connection-local-variables' instead of
46072	`with-connection-local-profiles'.
46073
46074	* doc/misc/tramp.texi (Remote processes): Refer to Emacs manual.
46075	Mention default connection-local settings for `shell-file-name'
46076	and `shell-command-switch'.
46077
46078	* etc/NEWS: Mention connection-local variables changes.
46079
46080	* lisp/files-x.el (hack-connection-local-variables):
46081	Push connection-local variables to `file-local-variables-alist'.
46082	(connection-local-criteria-for-default-directory): New defsubst.
46083	(with-connection-local-variables): Rename from
46084	`with-connection-local-profiles'.  Adapt implementation.
46085
46086	* lisp/files.el (hack-local-variables):
46087	Call `hack-connection-local-variables'.
46088
46089	* lisp/shell.el (shell): Use `with-connection-local-variables'.
46090
46091	* lisp/subr.el (start-file-process-shell-command):
46092	* lisp/progmodes/compile.el (compilation-start):
46093	Use `with-connection-local-variables'.  Do not set "/bin/sh" for
46094	remote buffers, trust settings of `shell-file-name'.  (Bug#24338),
46095	(Bug#29723)
46096
46097	* lisp/net/ange-ftp.el (ange-ftp-compress, ange-ftp-uncompress):
46098	Use `shell-command-switch'.
46099
46100	* lisp/net/tramp-adb.el (tramp-adb-connection-local-default-profile):
46101	New defvar.  Add it to connection-local profiles after loading "shell".
46102
46103	* lisp/net/tramp-integration.el (tramp-compat): Require tramp-compat.
46104	(tramp-compat-exec-path): Do not declare anymore.
46105	(tramp-connection-local-safe-shell-file-names): New defvar.
46106	(tramp-connection-local-default-profile): New defconst.  Activate
46107	it after loading "shell".
46108	(shell-file-name, shell-command-switch): Add safe-local-variable
46109	property.
46110
46111	* lisp/net/tramp-sh.el (tramp-display-escape-sequence-regexp):
46112	Add tramp-autoload cookie.
46113
46114	* test/lisp/files-x-tests.el (remote-shell-file-name):
46115	Add safe-local-variable property to remote-* variables.
46116	(tramp-connection-local-default-profile): Declare.
46117	(files-x-test-with-connection-local-variables):
46118	Rename from `files-x-test-with-connection-local-profiles'.  Adapt
46119	implementation.
46120
46121	* test/lisp/net/tramp-tests.el
46122	(tramp-test34-connection-local-variables): New test.
46123	(tramp-test34-explicit-shell-file-name): Run it also for tramp-adb.
46124	Bind connection-local-{profile,criteria}-alist.  Use tramp-adb
46125	specific `shell-file-name'.  Add safe-local-variable property to
46126	`explicit-shell-file-name' and `explicit-sh-args'.
46127
461282019-03-09  Charles A. Roelli  <charles@aurox.ch>
46129
46130	Make help for file supersession more readable
46131
46132	* lisp/userlock.el (ask-user-about-supersession-help): Use
46133	'substitute-command-keys' to show the command key for
46134	"\\[revert-buffer]" properly.
46135
461362019-03-09  Eli Zaretskii  <eliz@gnu.org>
46137
46138	Import Unicode 12.0 data files
46139
46140	* admin/unidata/copyright.html:
46141	* admin/unidata/UnicodeData.txt:
46142	* admin/unidata/SpecialCasing.txt:
46143	* admin/unidata/NormalizationTest.txt:
46144	* admin/unidata/Blocks.txt:
46145	* admin/unidata/BidiMirroring.txt:
46146	* admin/unidata/BidiBrackets.txt: New versions from Unicode 12.0.
46147	* admin/unidata/unidata-gen.el (unidata-gen-file):
46148	* admin/unidata/blocks.awk (name2alias): Adapt to changes in
46149	new data files.
46150	* admin/notes/unicode: Update and improve instructions for
46151	importing a new Unicode Standard.
46152
46153	* lisp/international/characters.el (char-width-table): Update
46154	lists of characters according to Unicode 12.0.
46155	* lisp/international/fontset.el (script-representative-chars):
46156	Add characters from new scripts to 'script-representative-chars'.
46157	(otf-script-alist): Update according to data on the MS site.
46158	* lisp/international/mule-cmds.el (ucs-names): Update unused
46159	ranges of codepoints according to Unicode 12.0.
46160
46161	* test/lisp/international/ucs-normalize-tests.el
46162	(ucs-normalize-tests--failing-lines-part1)
46163	(ucs-normalize-tests--failing-lines-part2): Update for the new
46164	NormalizationTest.txt file.
46165	* test/manual/BidiCharacterTest.txt: Update with the new
46166	version from Unicode 12.0.
46167
461682019-03-09  Martin Rudalics  <rudalics@gmx.at>
46169
46170	Further redesign of window change functions
46171
46172	* doc/lispref/windows.texi (Window Hooks): Revise description
46173	of window change functions.  Add documentation for
46174	'window-state-change-hook' and window state change flag.
46175	* etc/NEWS: Update entry for window change functions.
46176	* src/frame.c (Fframe_window_state_change)
46177	(Fset_frame_window_state_change): New functions.
46178	* src/frame.h (struct frame): New boolean window_state_change.
46179	(FRAME_WINDOW_STATE_CHANGE): New macro.
46180	* src/window.c (window_change_record_frames): New static
46181	boolean.
46182	(window_change_record_frame): Remove function - code moved to
46183	window_change_record.
46184	(window_change_record): Record frame changes here taking
46185	window_change_record_frames into account.
46186	(run_window_change_functions_1): Set window_change_record_frames
46187	whenever we run one of our hooks.
46188	(run_window_change_functions): Run hooks also when
46189	FRAME_WINDOW_STATE_CHANGE has been set.  Run
46190	Vwindow_state_change_hook.  Leave decision whether to record
46191	changes for all frames to window_change_record.
46192	(Vwindow_state_change_functions): Update doc-string.
46193	(Vwindow_state_change_hook): New normal hook.
46194
461952019-03-09  Alan Third  <alan@idiocy.org>
46196
46197	Don't redraw the glyph on top of bar cursors
46198
46199	* src/nsterm.m (ns_draw_window_cursor): Limit when we redraw the
46200	glyph.
46201
462022019-03-08  Stefan Monnier  <monnier@iro.umontreal.ca>
46203
46204	* lisp/emacs-lisp/autoload.el (make-autoload): Don't add useless doc
46205
46206	More specifically, don't add a useless '(fn)' to the docstring for
46207	functions which take no arguments.
46208	This should fix the 'No docstring slot for pcase--make-docstring'
46209	warning during bootstrap.
46210
462112019-03-08  Stefan Monnier  <monnier@iro.umontreal.ca>
46212
46213	* lisp/emacs-lisp/cursor-sensor.el: Fix sensor behavior with overlays
46214
46215	(cursor-sensor--detect): Also consult overlay properties when checking
46216	to see if we just moved inside the same "element" as opposed to
46217	changing from one to another of the same type.
46218
462192019-03-08  Tassilo Horn  <tsdh@gnu.org>
46220
46221	New command ido-switch-to-completions.
46222
46223	* lisp/ido.el (ido-switch-to-completions): New command.
46224
462252019-03-08  Paul Eggert  <eggert@cs.ucla.edu>
46226
46227	More regexp corrections and tweaks
46228
46229	From suggestions by Mattias Engdegård in:
46230	https://lists.gnu.org/r/emacs-devel/2019-03/msg00131.html
46231	* lisp/arc-mode.el (archive-rar-summarize):
46232	* lisp/gnus/gnus-art.el (gnus-button-valid-localpart-regexp):
46233	* lisp/language/ethio-util.el (ethio-fidel-to-tex-buffer):
46234	* lisp/nxml/rng-uri.el (rng-file-name-uri):
46235	* lisp/org/org-mobile.el (org-mobile-apply):
46236	* lisp/progmodes/cperl-mode.el (cperl-init-faces):
46237	* lisp/progmodes/fortran.el (fortran-fill):
46238	* lisp/progmodes/mantemp.el (mantemp-remove-comments)
46239	(mantemp-remove-memfuncs, mantemp-insert-cxx-syntax):
46240	* lisp/speedbar.el (speedbar-directory-buttons-follow):
46241	* lisp/vc/add-log.el (change-log-font-lock-keywords):
46242	Fix more regular expressions that seem to be typos or infelicities.
46243
462442019-03-08  Mark Diekhans  <markd@ucsc.edu>  (tiny change)
46245
46246	Improve ispell.el diagnostics if Hunspell dictionaries aren't found
46247
46248	* lisp/textmodes/ispell.el (ispell-set-spellchecker-params):
46249	Set ispell-last-program-name only at the end, so as to produce
46250	useful diagnostics when Hunspell dictionaries are not found.
46251	(Bug#34640)
46252
462532019-03-07  Paul Eggert  <eggert@cs.ucla.edu>
46254
46255	* lisp/net/rcirc.el: Undo previous change; it was a typo.
46256
462572019-03-07  Paul Eggert  <eggert@cs.ucla.edu>
46258
46259	Be safer about "%" in message formats
46260
46261	* lisp/calc/calc-store.el (calc-copy-special-constant):
46262	* lisp/net/rcirc.el (rcirc-handler-PART, rcirc-handler-KICK):
46263	* lisp/org/org-agenda.el (org-agenda):
46264	* lisp/org/org-clock.el (org-clock-out, org-clock-display):
46265	* lisp/org/org.el (org-refile):
46266	* lisp/progmodes/ada-xref.el (ada-goto-declaration):
46267	* lisp/progmodes/idlwave.el (idlwave-scan-library-catalogs):
46268	Don’t trust arbitrary strings to not contain "%" or "`" in
46269	(message (concat STRING1 STRING2 ...)).
46270
462712019-03-06  Mattias Engdegård  <mattiase@acm.org>
46272
46273	Rename regexp-opt argument noreorder to keep-order
46274
46275	* doc/lispref/searching.texi (Regular Expression Functions):
46276	* lisp/emacs-lisp/regexp-opt.el (regexp-opt):
46277	Rename newly added `noreorder' argument to `keep-order', to avoid a
46278	negative in the name.  Suggested by Phil Sainty (Bug#34641).
46279
462802019-03-06  Eli Zaretskii  <eliz@gnu.org>
46281
46282	Fix OBJECT binding in conditional display specs
46283
46284	* src/xdisp.c (compute_display_string_pos): Pass OBJECT1, not
46285	OBJECT to handle_display_spec, as the latter doesn't expect a
46286	window object.  (Bug#34771)
46287
462882019-03-06  Paul Eggert  <eggert@cs.ucla.edu>
46289
46290	Fix typo in fix for Bug#33498
46291
46292	* src/frame.c (delete_frame): Fix typo in previous patch,
46293	which caused GCC to complain about the use of an uninitialized
46294	variable.
46295
462962019-03-06  Michael Albinus  <michael.albinus@gmx.de>
46297
46298	Handle empty strings in Tramp's expand-file-name implementations
46299
46300	* lisp/net/tramp.el (tramp-handle-expand-file-name):
46301	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name):
46302	* lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name):
46303	* lisp/net/tramp-smb.el (tramp-smb-handle-expand-file-name):
46304	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-expand-file-name):
46305	Handle empty NAME.
46306
46307	* test/lisp/net/tramp-tests.el (tramp-test01-file-name-syntax)
46308	(tramp-test01-file-name-syntax-simplified)
46309	(tramp-test01-file-name-syntax-separate): Use neutral IPv4 address.
46310	(tramp-test05-expand-file-name): Check also "." and "".
46311
463122019-03-06  Martin Rudalics  <rudalics@gmx.at>
46313
46314	* lisp/window.el (fit-frame-to-buffer): Make doc-string more accurate.
46315
463162019-03-06  Martin Rudalics  <rudalics@gmx.at>
46317
46318	In unwind_with_echo_area_buffer use set_marker_restricted_both
46319
46320	* src/xdisp.c (unwind_with_echo_area_buffer): Use
46321	set_marker_restricted_both instead of set_marker_both to avoid
46322	spurious assertion failures.
46323
463242019-03-06  Martin Rudalics  <rudalics@gmx.at>
46325
46326	Fix handling of 'window-combination-resize' with fixed-size windows
46327
46328	* lisp/window.el (window-combinations): New optional argument
46329	IGNORE-FIXED.
46330	(window--combination-resizable): New function.
46331	(split-window): Fix handling of 'window-combination-resize'
46332	in the presence of fixed-size windows.
46333
463342019-03-06  Martin Rudalics  <rudalics@gmx.at>
46335
46336	Fix initialization of Vwindow_state_change_functions
46337
46338	* src/window.c (Vwindow_state_change_functions): Initialize the
46339	right variable.
46340
463412019-03-05  Glenn Morris  <rgm@gnu.org>
46342
46343	* doc/misc/gnus-coding.texi: Remove no longer relevant sections.
46344
46345	* doc/misc/gnus.texi (New Features): Refer to NEWS for newer items.
46346
463472019-03-05  Glenn Morris  <rgm@gnu.org>
46348
46349	Remove doc/misc/gnus-news.texi
46350
46351	* doc/misc/gnus.texi (No Gnus): Merge in gnus-news.texi.
46352	* doc/misc/gnus-news.texi: Remove.
46353
463542019-03-05  Glenn Morris  <rgm@gnu.org>
46355
46356	Remove etc/GNUS-NEWS (bug#34662)
46357
46358	It is not relevant since Gnus stopped being distributed separately.
46359	* etc/GNUS-NEWS: Remove this generated file.
46360	* etc/NEWS.26: Relocate an entry mistakenly added to GNUS-NEWS.
46361	* doc/misc/gnus-coding.texi (Gnus Maintenance Guide):
46362	No longer mention GNUS-NEWS.
46363	* doc/misc/gnus-news.el: Remove.
46364	* doc/misc/gnus-news.texi: Update a comment.
46365	* lisp/Makefile.in (update-gnus-news): Remove this phony target.
46366
463672019-03-05  Glenn Morris  <rgm@gnu.org>
46368
46369	Remove gnus-overrides.texi
46370
46371	* doc/misc/gnus-overrides.texi: Remove.
46372	* doc/misc/auth.texi, doc/misc/emacs-mime.texi:
46373	* doc/misc/gnus.texi, doc/misc/message.texi, doc/misc/pgg.texi:
46374	* doc/misc/sasl.texi, doc/misc/sieve.texi:
46375	Do not include gnus-overrides.texi.
46376
463772019-03-05  Wilson Snyder  <wsnyder@wsnyder.org>
46378
46379	Fix regexp issues introduced in last trunk commit.
46380
46381	* lisp/progmodes/verilog-mode.el (verilog-coverpoint-re): Fix regexp issues introduced
46382	in last trunk commit.
46383
463842019-03-05  Eli Zaretskii  <eliz@gnu.org>
46385
46386	Remove unreliable assertion in buf_bytepos_to_charpos
46387
46388	* src/marker.c (buf_bytepos_to_charpos): Remove the assertion
46389	regarding bytepos always at the head byte of a multibyte
46390	sequence.  For the reasons, see
46391	http://lists.gnu.org/archive/html/emacs-devel/2019-03/msg00100.html
46392	http://lists.gnu.org/archive/html/emacs-devel/2019-03/msg00102.html
46393
463942019-03-05  Wilson Snyder  <wsnyder@wsnyder.org>
46395
46396	Fix regular-expression glitches and typos. Update verilog-mode from upstream.
46397
46398	* lisp/progmodes/verilog-mode.el (verilog-read-decls): Fix AUTO vectors with
46399	double brackets, msg2839.
46400	(verilog-read-auto-template-middle): Fix AUTO_TEMPLATE with regexp
46401	capture group reference, but1379.  Reported by David Rogoff.
46402
464032019-03-05  Martin Rudalics  <rudalics@gmx.at>
46404
46405	Fix interactive spec of some functions in window.el (Bug#34749)
46406
46407	* lisp/window.el (delete-windows-on, quit-windows-on)
46408	(display-buffer-other-frame): Interactively, permit existing
46409	buffers only (Bug#34749).
46410
464112019-03-05  Martin Rudalics  <rudalics@gmx.at>
46412
46413	Fix handling of minibuffer-only child frames (Bug#33498)
46414
46415	* doc/lispref/frames.texi (Buffer Parameters): Describe how to
46416	make a minibuffer-only child frame.
46417	(Child Frames): Describe how minbuffer child frames are
46418	deleted.
46419	* src/frame.c (delete_frame): Handle deletion of minibuffer
46420	child frames (Bug#33498).  In the course, fix reassigning of
46421	'default-minibuffer-frame' with minibuffer-only frames.
46422	* lisp/frame.el (frame-notice-user-settings): Handle creation of
46423	initial minibuffer-only child frame.
46424	(make-frame): Handle creation of frame with a minibuffer-only
46425	child frame.
46426
464272019-03-05  Michael Albinus  <michael.albinus@gmx.de>
46428
46429	Test an IPv4 mapped IPv6 address in Tramp
46430
46431	* test/lisp/net/tramp-tests.el (tramp-test01-file-name-syntax)
46432	(tramp-test01-file-name-syntax-simplified)
46433	(tramp-test01-file-name-syntax-separate): Check also an IPv4
46434	mapped IPv6 address.
46435
464362019-03-04  Paul Eggert  <eggert@cs.ucla.edu>
46437
46438	Fix regular-expression glitches and typos
46439
46440	Problems reported by Mattias Engdegård in:
46441	https://lists.gnu.org/r/emacs-devel/2019-03/msg00085.html
46442	* admin/admin.el (set-version):
46443	* lisp/allout.el (allout-latexify-one-item):
46444	* lisp/arc-mode.el (archive-arc-rename-entry)
46445	(archive-rar-summarize):
46446	* lisp/calc/calc-graph.el (calc-graph-set-styles)
46447	(calc-graph-hide):
46448	* lisp/calc/calc-help.el (calc-describe-key):
46449	* lisp/calc/calc-lang.el (math-compose-tex-func, eqn):
46450	* lisp/calc/calc.el (calcDigit-key):
46451	* lisp/cedet/ede/makefile-edit.el (makefile-macro-file-list):
46452	* lisp/cedet/ede/speedbar.el (ede-tag-expand):
46453	* lisp/cedet/semantic/sb.el (semantic-sb-show-extra)
46454	(semantic-sb-expand-group):
46455	* lisp/comint.el (comint-substitute-in-file-name):
46456	* lisp/dired.el (dired-actual-switches):
46457	* lisp/emacs-lisp/chart.el (chart-rmail-from):
46458	* lisp/emacs-lisp/eieio-opt.el (eieio-sb-expand):
46459	* lisp/emacs-lisp/eieio-speedbar.el (eieio-speedbar-object-expand):
46460	* lisp/emacs-lisp/rx.el (rx-not, rx-atomic-p):
46461	* lisp/emulation/viper-ex.el (viper-get-ex-token)
46462	(viper-get-ex-pat, ex-set-read-variable):
46463	* lisp/epg.el (epg--status-SIG_CREATED):
46464	* lisp/erc/erc-speedbar.el (erc-speedbar-expand-user):
46465	(erc-speedbar-expand-channel, erc-speedbar-expand-server)
46466	* lisp/erc/erc.el (erc-is-message-ctcp-and-not-action-p)
46467	(erc-banlist-update):
46468	* lisp/eshell/em-dirs.el (eshell-parse-drive-letter, eshell/pwd):
46469	* lisp/find-dired.el (find-dired):
46470	* lisp/frame.el (frame-set-background-mode):
46471	* lisp/generic-x.el (apache-log-generic-mode):
46472	* lisp/gnus/gnus-art.el (gnus-button-valid-localpart-regexp):
46473	* lisp/gnus/gnus.el (gnus-short-group-name):
46474	* lisp/gnus/message.el (message-mailer-swallows-blank-line):
46475	* lisp/ibuffer.el (ibuffer-fontification-alist):
46476	* lisp/ido.el (ido-set-matches-1):
46477	* lisp/info-xref.el (info-xref-lock-file-p):
46478	* lisp/info.el (Info-dir-remove-duplicates)
46479	(Info-unescape-quotes, Info-split-parameter-string)
46480	(Info-speedbar-expand-node):
46481	* lisp/international/mule.el (sgml-html-meta-auto-coding-function):
46482	* lisp/isearch.el (isearch-pre-command-hook):
46483	* lisp/language/ethio-util.el (ethio-fidel-to-tex-buffer):
46484	* lisp/mail/rmail.el (rmail-collect-deleted):
46485	* lisp/mh-e/mh-alias.el (mh-alias-suggest-alias):
46486	* lisp/mh-e/mh-comp.el (mh-forward):
46487	* lisp/mh-e/mh-search.el (mh-index-next-folder)
46488	(mh-index-create-imenu-index):
46489	* lisp/mh-e/mh-xface.el (mh-picon-get-image):
46490	* lisp/minibuffer.el (completion--embedded-envvar-re):
46491	* lisp/net/ange-ftp.el (ange-ftp-ls-parser):
46492	* lisp/net/goto-addr.el (goto-address-mail-regexp)
46493	(goto-address-find-address-at-point):
46494	* lisp/net/pop3.el (pop3-read-response, pop3-user)
46495	(pop3-pass, pop3-apop):
46496	* lisp/net/tramp.el (tramp-ipv6-regexp)
46497	(tramp-replace-environment-variables):
46498	* lisp/nxml/nxml-maint.el (nxml-insert-target-repertoire-glyph-set):
46499	* lisp/nxml/rng-uri.el (rng-uri-escape-multibyte):
46500	* lisp/nxml/rng-xsd.el (rng-xsd-convert-any-uri):
46501	* lisp/obsolete/pgg.el (pgg-fetch-key):
46502	* lisp/obsolete/vip.el (vip-get-ex-token):
46503	* lisp/org/ob-core.el (org-babel-string-read):
46504	* lisp/org/org-agenda.el:
46505	(org-agenda-add-entry-to-org-agenda-diary-file):
46506	* lisp/org/org-element.el (org-element-keyword-parser):
46507	* lisp/org/org-list.el (org-list-indent-item-generic):
46508	* lisp/org/org-mhe.el (org-mhe-get-message-folder-from-index):
46509	* lisp/org/org-mobile.el (org-mobile-apply):
46510	* lisp/org/org-mouse.el (org-mouse-context-menu):
46511	* lisp/org/org-plot.el (org-plot/gnuplot):
46512	* lisp/org/org-protocol.el (org-protocol-flatten-greedy):
46513	* lisp/org/org-table.el (org-table-copy-down)
46514	(org-table-formula-make-cmp-string)
46515	(org-table-get-stored-formulas, org-table-recalculate)
46516	(org-table-edit-formulas):
46517	* lisp/org/org.el (org-translate-link-from-planner)
46518	(org-fill-line-break-nobreak-p):
46519	* lisp/org/ox-ascii.el (org-ascii-item):
46520	* lisp/org/ox-latex.el (org-latex-clean-invalid-line-breaks):
46521	* lisp/org/ox.el (org-export-expand-include-keyword):
46522	* lisp/progmodes/ada-xref.el (ada-treat-cmd-string):
46523	* lisp/progmodes/cfengine.el (cfengine2-font-lock-keywords):
46524	* lisp/progmodes/cperl-mode.el (cperl-to-comment-or-eol)
46525	(cperl-find-pods-heres, cperl-fix-line-spacing)
46526	(cperl-have-help-regexp, cperl-word-at-point-hard)
46527	(cperl-make-regexp-x):
46528	* lisp/progmodes/dcl-mode.el (dcl-option-value-offset):
46529	* lisp/progmodes/etags.el (tag-implicit-name-match-p):
46530	* lisp/progmodes/fortran.el (fortran-fill):
46531	* lisp/progmodes/gdb-mi.el (gdb-speedbar-expand-node)
46532	(gdb-locals-handler-custom):
46533	* lisp/progmodes/grep.el (grep-mode-font-lock-keywords):
46534	* lisp/progmodes/gud.el (gud-jdb-find-source-using-classpath):
46535	* lisp/progmodes/js.el (js--continued-expression-p):
46536	* lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
46537	* lisp/progmodes/meta-mode.el (meta-indent-level-count):
46538	* lisp/progmodes/mixal-mode.el (mixal-font-lock-keywords):
46539	* lisp/progmodes/opascal.el (opascal-find-unit-in-directory):
46540	* lisp/progmodes/pascal.el (pascal-progbeg-re):
46541	* lisp/progmodes/ruby-mode.el (ruby-expression-expansion-re)
46542	(ruby-expr-beg, ruby-parse-partial)
46543	(ruby-toggle-string-quotes, ruby-font-lock-keywords):
46544	* lisp/progmodes/sql.el (sql--make-help-docstring):
46545	* lisp/progmodes/verilog-mode.el (verilog-coverpoint-re)
46546	(verilog-skip-forward-comment-p)
46547	(verilog-read-sub-decls-gate)
46548	(verilog-read-auto-template-middle):
46549	* lisp/progmodes/vhdl-mode.el (vhdl-resolve-env-variable)
46550	(vhdl-speedbar-expand-project, vhdl-speedbar-expand-entity)
46551	(vhdl-speedbar-expand-architecture)
46552	(vhdl-speedbar-expand-config, vhdl-speedbar-expand-package)
46553	(vhdl-speedbar-dired):
46554	* lisp/speedbar.el (speedbar-dired, speedbar-tag-file)
46555	(speedbar-tag-expand):
46556	* lisp/textmodes/dns-mode.el (dns-mode-font-lock-keywords):
46557	* lisp/textmodes/flyspell.el (flyspell-debug-signal-word-checked):
46558	* lisp/textmodes/ispell.el (ispell-process-line):
46559	* lisp/textmodes/reftex-cite.el (reftex-end-of-bib-entry):
46560	* lisp/textmodes/reftex-ref.el (reftex-replace-prefix-escapes):
46561	* lisp/url/url-parse.el (url-generic-parse-url):
46562	* lisp/url/url-util.el (url-truncate-url-for-viewing):
46563	* lisp/vc/diff-mode.el (diff-unified->context):
46564	* lisp/vc/vc-bzr.el (vc-bzr-error-regexp-alist):
46565	* lisp/vc/vc-cvs.el (vc-cvs-parse-status):
46566	* lisp/woman.el (woman0-el, woman-if-ignore)
46567	(woman-change-fonts):
46568	* lisp/xdg.el (xdg--substitute-home-env):
46569	Fix regular-expression infelicities and typos.
46570
46571	Fix regular expression typos
46572	Fix typos reported by Mattias Engdegård in:
46573	that occurred in preloaded modules.
46574	* lisp/frame.el (frame-set-background-mode):
46575	* lisp/international/mule.el (sgml-html-meta-auto-coding-function):
46576	* lisp/isearch.el (isearch-pre-command-hook):
46577	* lisp/minibuffer.el (completion--embedded-envvar-re):
46578
465792019-03-04  Charles A. Roelli  <charles@aurox.ch>
46580
46581	Fix diff-mode tests after renaming diff-font-lock-refine
46582
46583	This fixes tests broken in my last change, "Merge
46584	diff-font-lock-refine and diff-auto-refine-mode into diff-refine" from
46585	2019-02-24.
46586
46587	* test/lisp/vc/diff-mode-tests.el (diff-mode-test-font-lock):
46588	Bind diff-refine to symbol 'font-lock' instead of binding
46589	diff-font-lock-refine to t.
46590	(diff-mode-test-font-lock-syntax-one-line): Bind diff-refine
46591	to nil instead of binding diff-font-lock-refine to nil.
46592
465932019-03-04  Eli Zaretskii  <eliz@gnu.org>
46594
46595	Avoid assertion violations in buf_bytepos_to_charpos
46596
46597	* src/marker.c (buf_bytepos_to_charpos): Disable the assertion
46598	regarding bytepos always at the head byte of a multibyte
46599	sequence.
46600
466012019-03-04  Eli Zaretskii  <eliz@gnu.org>
46602
46603	Fix invocation with -rv on the command line
46604
46605	* lisp/frame.el (frame-set-background-mode): Avoid errors from
46606	'face-spec-match-p' when the face was not yet realized for
46607	FRAME.  (Bug#34725)
46608
466092019-03-04  Nicolas Petton  <nicolas@petton.fr>
46610
46611	* lisp/emacs-lisp/map.el: Bump version to 2.0.
46612
466132019-03-04  Martin Rudalics  <rudalics@gmx.at>
46614
46615	Prevent introducing invalid scroll bar width/height values (Bug#34569)
46616
46617	* src/frame.c (store_frame_param): Don't store invalid values
46618	for scroll_bar_width/height.
46619	(x_report_frame_params): Don't report invalid values for
46620	scroll_bar_width/height.
46621	(x_set_scroll_bar_width, x_set_scroll_bar_height): Don't set
46622	invalid values for scroll_bar_width/height.
46623
466242019-03-04  Martin Rudalics  <rudalics@gmx.at>
46625
46626	Fix minibuffer resizing with temporarily selected frames (Bug#34317)
46627
46628	* src/keyboard.c (command_loop_1): Resize echo area exactly
46629	only if the echo area window is the minibuffer window of the
46630	selected frame (Bug#34317).
46631	* src/xdisp.c (x_consider_frame_title): Inhibit redisplay also
46632	when restoring the selected window/frame to avoid that
46633	resize_mini_window sizes back the minibuffer window of a
46634	temporarily selected frame (Bug#34317).
46635
466362019-03-04  Paul Eggert  <eggert@cs.ucla.edu>
46637
46638	* src/alloc.c (gcstat): Now static.
46639
46640	* src/gfilenotify.c: Fix indenting.
46641
46642	* src/font.h: Fix commentary.
46643
466442019-03-04  Paul Eggert  <eggert@cs.ucla.edu>
46645
46646	Simplify list creation in C code
46647
46648	The main new thing here is that C code can now say
46649	‘list (a, b, c, d, e, f)’ instead of
46650	‘listn (CONSTYPE_HEAP, 6, a, b, c, d, e, f)’,
46651	thus relieving callers of the responsibility of counting
46652	arguments (plus, the code feels more like Lisp).  The old
46653	list1 ... list5 functions remain, as they’re probably a bit
46654	faster for small lists.
46655	* src/alloc.c (cons_listn, pure_listn): New functions.
46656	(listn): Omit enum argument.
46657	All callers changed to use either new ‘list’ or ‘pure_list’ macros.
46658	* src/charset.c (Fdefine_charset_internal):
46659	* src/coding.c (detect_coding_system)
46660	(Fset_terminal_coding_system_internal):
46661	* src/frame.c (frame_size_history_add, adjust_frame_size):
46662	* src/gtkutil.c (xg_frame_set_char_size):
46663	* src/keyboard.c (command_loop_1):
46664	* src/nsfns.m (frame_geometry):
46665	* src/widget.c (set_frame_size):
46666	* src/xfaces.c (Fcolor_distance):
46667	* src/xfns.c (frame_geometry):
46668	* src/xterm.c (x_set_window_size_1):
46669	* src/xwidget.c (Fxwidget_size_request):
46670	Prefer list1i, list2i, etc. to open-coding them.
46671	* src/charset.c (Fset_charset_priority):
46672	* src/nsterm.m (append2):
46673	* src/window.c (window_list):
46674	* src/xfaces.c (Fx_list_fonts):
46675	Use nconc2 instead of open-coding it.
46676	* src/eval.c (eval_sub, backtrace_frame_apply):
46677	* src/kqueue.c (kqueue_generate_event):
46678	* src/nsterm.m (performDragOperation:):
46679	* src/pdumper.c (Fpdumper_stats):
46680	* src/w32.c (init_environment):
46681	Prefer list1, list2, etc. to open-coding them.
46682	* src/font.c (font_list_entities):
46683	Parenthesize to avoid expanding new ‘list’ macro.
46684	* src/gtkutil.c (GETSETUP): Rename from MAKE_FLOAT_PAGE_SETUP
46685	to get lines to fit.  Move outside the ‘list’ call, since it’s
46686	now a macro.
46687	* src/keymap.c (Fmake_keymap): Simplify.
46688	* src/lisp.h (list, pure_list): New macros.
46689	(list1i): New function.
46690
466912019-03-03  Charles A. Roelli  <charles@aurox.ch>
46692
46693	Merge diff-font-lock-refine and diff-auto-refine-mode into diff-refine
46694
46695	This change was discussed in Bug#32991.
46696
46697	* admin/gitmerge.el (gitmerge-resolve): Bind 'diff-refine'
46698	instead of 'diff-auto-refine-mode' to nil.
46699	* doc/emacs/files.texi (Diff Mode): Explain 'diff-refine'
46700	instead of 'diff-auto-refine-mode' in the documentation of
46701	'diff-hunk-next' and 'diff-hunk-prev'.  Mention in the
46702	documentation of 'diff-refine-hunk' that refining is already
46703	done by default.
46704	* etc/NEWS (Diff mode): Explain renamed 'diff-refine' variable
46705	and mention deprecation and disabling of
46706	'diff-auto-refine-mode'.
46707	* lisp/vc/diff-mode.el (diff-font-lock-refine): Rename to
46708	'diff-refine' and allow choices nil, 'font-lock' and 'navigation'.
46709	(diff-auto-refine-mode): Disable it by default, make it
46710	obsolete and make it set 'diff-refine' appropriately to keep
46711	backward compatibility.
46712	(diff-hunk-next, diff-hunk-prev): Adapt to rename of
46713	diff-auto-refine-mode and ensure that refining only happens
46714	when calling these commands interactively.
46715	(diff--font-lock-refined): Adapt to rename of
46716	diff-font-lock-refine.
46717	* lisp/vc/smerge-mode.el (smerge-next, smerge-prev): Check
46718	that 'diff-refine' is set instead of checking
46719	'diff-auto-refine-mode' when deciding whether to refine a
46720	conflict.
46721
467222019-03-03  Alan Mackenzie  <acm@muc.de>
46723
46724	Correct some slightly incorrect regular expressions:
46725
46726	* lisp/progmodes/cc-awk.el (c-awk-harmless-char-re)
46727	(c-awk-harmless-line-char-re, c-awk-_-harmless-nonws-char-re): [...\\\\...]
46728	-> [...\\...].
46729
46730	* lisp/progmodes/cc-engine.el (c-literal-limits): "*/" -> "\\*/".
46731
46732	* lisp/progmodes/cc-mode.el (c-after-change-re-mark-unbalanced-strings):
46733	"\\\r" -> "\r".
46734
467352019-03-03  Eli Zaretskii  <eliz@gnu.org>
46736
46737	Fix starting temacs interactively
46738
46739	* src/dispnew.c (init_display_interactive): Don't call
46740	init_faces_initial if we aren't initialized, since
46741	tty-set-up-initial-frame-faces is not available then.  This
46742	restores the ability to start "temacs -nw" and also avoids
46743	bad crashes in "emacs -nw" if the pdumper file is not found.
46744	(Bug#34707)
46745
467462019-03-02  Paul Eggert  <eggert@cs.ucla.edu>
46747
46748	Fix typo in previous change
46749
46750	* src/alloc.c (memory_full_cons_threshold):
46751	Move to after definition of struct cons_block.
46752	Problem reported by Basil L. Contovounesios in:
46753	https://lists.gnu.org/r/emacs-devel/2019-03/msg00067.html
46754
467552019-03-02  Glenn Morris  <rgm@gnu.org>
46756
46757	* test/lisp/progmodes/python-tests.el
46758	(python-syntax-after-python-backspace): Expect success.
46759
467602019-03-02  Paul Eggert  <eggert@cs.ucla.edu>
46761
46762	memory_full_cons_threshold is a constant
46763
46764	* src/alloc.c (memory_full_cons_threshold): Now const.
46765	(memory_full): Omit no-longer-needed initialization.
46766
467672019-03-02  Paul Eggert  <eggert@cs.ucla.edu>
46768
46769	Avoid staticvec duplicates
46770
46771	* src/alloc.c (staticpro) [ENABLE_CHECKING]: Check for duplicates.
46772	* src/keyboard.c (syms_of_keyboard): Define
46773	while-no-input-ignore-events and inhibit--record-char here ...
46774	(syms_of_keyboard_for_pdumper): ... instead of here.
46775	This avoids duplicates in staticvec.
46776
467772019-03-02  Alan Mackenzie  <acm@muc.de>
46778
46779	Check by eassert that a bytepos argument isn't in the middle of a character
46780
46781	* src/marker.c (buf_bytepos_to_charpos): Add an eassert to check that the
46782	parameter bytepos is at the beginning of a character or EOB.
46783
467842019-03-02  Eli Zaretskii  <eliz@gnu.org>
46785
46786	Fix DND on MS-Windows with files from UNC directories
46787
46788	* lisp/dnd.el (dnd-get-local-file-uri): Always return nil on
46789	MS-Windows, as this method cannot possibly work there: URIs
46790	that begin with the local system's name are UNCs, where the
46791	//SERVER part cannot be removed.  (Bug#34675)
46792
467932019-03-02  Phillip Lord  <phillip.lord@russet.org.uk>
46794
46795	Revert "Add hook for all events"
46796
46797	This reverts commit 7b31de4d107302ed91ce7519cd778b340a9880ee.
46798
467992019-03-02  Phillip Lord  <phillip.lord@russet.org.uk>
46800
46801	Revert "; Fix typos in NEWS"
46802
46803	This reverts commit d52bc534d799c255f24ff2a56e8bed830d8f68ca.
46804
468052019-03-02  Phillip Lord  <phillip.lord@russet.org.uk>
46806
46807	Revert "; Document input-event-functions"
46808
46809	This reverts commit 27fffb2701c38090916e077d28a4a6b9e2bc09d2.
46810
468112019-03-02  Mattias Engdegård  <mattiase@acm.org>
46812
46813	Correct regexp-opt return value for empty string list
46814
46815	When regexp-opt is called with an empty list of strings, return a regexp
46816	that doesn't match anything instead of the empty string (Bug#20307).
46817
46818	* doc/lispref/searching.texi (Regular Expression Functions):
46819	* etc/NEWS:
46820	Document the new behaviour.
46821	* lisp/emacs-lisp/regexp-opt.el (regexp-opt):
46822	Return a never-match regexp for empty inputs.
46823
468242019-03-02  Mattias Engdegård  <mattiase@acm.org>
46825
46826	rx: fix `or' ordering by adding argument to regexp-opt
46827
46828	The rx `or' form may reorder its arguments in an unpredictable way,
46829	contrary to user expectation, since it sometimes uses `regexp-opt'.
46830	Add a NOREORDER option to `regexp-opt' for preventing it from
46831	producing a reordered regexp (Bug#34641).
46832
46833	* doc/lispref/searching.texi (Regular Expression Functions):
46834	* etc/NEWS (Lisp Changes in Emacs 27.1):
46835	Describe the new regexp-opt NOREORDER argument.
46836	* lisp/emacs-lisp/regexp-opt.el (regexp-opt): Add NOREORDER.
46837	Make no attempt at regexp improvement if the set of strings contains
46838	a prefix of another string.
46839	(regexp-opt--contains-prefix): New.
46840	* lisp/emacs-lisp/rx.el (rx-or): Call regexp-opt with NOREORDER.
46841	* test/lisp/emacs-lisp/rx-tests.el: Test rx `or' form match order.
46842
468432019-03-02  Eli Zaretskii  <eliz@gnu.org>
46844
46845	Fix 'end-of-visual-line' with overlay strings with newlines
46846
46847	* src/indent.c (Fvertical_motion): Get out of overlay strings
46848	with embedded newlines even if moving within the same screen
46849	line.  See https://github.com/emacs-lsp/lsp-mode/issues/677
46850	for more details.
46851	Fix test for IT_CHARPOS being at the beginning of the
46852	accessible portion of the buffer.
46853
468542019-03-01  Stefan Monnier  <monnier@iro.umontreal.ca>
46855
46856	* src/syntax.c (update_syntax_table): Prefer 'else' to 'goto'
46857
46858	* lisp/Makefile.in (leim): Fix void-function pinyin-convert
46859
468602019-03-01  Alan Mackenzie  <acm@muc.de>
46861
46862	Maintain interval ->position fields correctly in update_interval
46863
46864	Also fix some anomalies in the handling of byte positions in regexp-emacs.c
46865	This fixes bug #34525.
46866
46867	* src/intervals.c (SET_PARENT_POSITION): New macro.
46868	(update_interval): When moving to an interval's parent, set that parent's
46869	->position field, to maintain the consistency of the tree.
46870
46871	* src/intervals.h (struct interval): Amend the comment describing when
46872	->position is valid.
46873
46874	* src/pdumper.c: Update the hash associated with struct interval.
46875
46876	* src/regex-emacs.c: (re_match_2_internal): Only invoke POINTER_TO_OFFSET on a
46877	known character boundary.  Only perform arithmetic on character positions, not
46878	on byte positions.  Correct the argument to an invocation of
46879	UPDATE_SYNTAX_TABLE_FORWARD by adding 1 to it (in case wordend:).
46880
46881	* src/syntax.c: (update_syntax_table): Remove the now redundant code that set
46882	the ->position field of all parents of the interval found by update_interval.
46883
468842019-03-01  Glenn Morris  <rgm@gnu.org>
46885
46886	Merge from origin/emacs-26
46887
46888	9df1365 Fix a typo in the Calc manual
46889	f3dab02 Minor improvement in cross-references of the ELisp manual
46890	560c84b Fix last change on 'compilation-parse-errors'
46891
468922019-03-01  Glenn Morris  <rgm@gnu.org>
46893
46894	Merge from origin/emacs-26
46895
46896	dee3cdc Minor improvement for docs of completion
46897	c86d419 ; * src/image.c (imagemagick_load, svg_load): Fix typos in co...
46898	6d46fa9 Disable the timerfd interface on Cygwin
46899	3707ea4 Fix a typo in the doc string of 'regex-opt'
46900	d9905d5 Document bash 5.0.0 misbehavior in tramp.texi (Bug#34192)
46901
46902	# Conflicts:
46903	#	doc/misc/tramp.texi
46904
469052019-03-01  Paul Eggert  <eggert@cs.ucla.edu>
46906
46907	Suppress GC stats when obviously not needed
46908
46909	This should help future improvements where these stats can be
46910	bignums that do not fit into intmax_t.
46911	* src/alloc.c (struct gcstat, gcstat): New type and static var,
46912	to package up GC statistics into one C object.  It replaces ...
46913	(total_free_intervals, total_intervals, total_strings)
46914	(total_free_strings, total_string_bytes, total_vectors)
46915	(total_vector_slots, total_free_vector_slots): ... these
46916	removed static vars.  All uses changed.
46917	(garbage_collect_1): Accept a struct gcstat *, not a void *
46918	which was not used anymore anyway.  Return a bool indicating
46919	success, instead of a Lisp object.  All callers changed.
46920	(garbage_collect): New function.  All C callers of
46921	Fgarbage_collect changed to use it, since none of them use the
46922	return value.  Now, only Lisp code uses Fgarbage_collect.
46923	(Fgarbage_collect): No longer noinline.  Cons up the return
46924	value here, not in garbage_collect_1.
46925
469262019-03-01  Eli Zaretskii  <eliz@gnu.org>
46927
46928	Don't signal Quit from 'while-no-input' on TTY frames
46929
46930	* src/keyboard.c (read_char): Don't inject quit-char after
46931	longjmp if while-no-input is in effect.  (Bug#34535)
46932
469332019-03-01  Evan Moses  <evan@emoses.org>  (tiny change)
46934
46935	Add 'breakpoint' to builtins for Python
46936
46937	* lisp/progmodes/python.el (python-font-lock-keywords-level-2)
46938	(python-font-lock-keywords-maxiumum-decoration): Add 'breakpoint'
46939	to the list of builtins, it's new as of Python 3.7.
46940
469412019-03-01  Eli Zaretskii  <eliz@gnu.org>
46942
46943	Be more defensive regarding elements of 'load-history'
46944
46945	* lisp/loadhist.el (file-dependents):
46946	* lisp/apropos.el (apropos-library):
46947	* lisp/help-fns.el (help-fns--autoloaded-p, help--loaded-p):
46948	* lisp/emacs-lisp/package.el (package--list-loaded-files):
46949	Don't assume 'load-history' elements must have a string as their
46950	'car'.  (Bug#34462)
46951
469522019-03-01  Alan Mackenzie  <acm@muc.de>
46953
46954	* src/pdumper.c: Clarify the message about updating hash values
46955
469562019-03-01  Federico Tedin  <federicotedin@gmail.com>
46957
46958	Allow control on the threshold for using 'distant-foreground'
46959
46960	* src/xfaces.c (NEAR_SAME_COLOR_THRESHOLD): Macro deleted.
46961	(load_face_colors): Compare against
46962	face_near_same_color_threshold instead of
46963	NEAR_SAME_COLOR_THRESHOLD.
46964	(syms_of_xfaces) <face-near-same-color-threshold>: New
46965	variable.  (Bug#34001)
46966
46967	* etc/NEWS: Announce the change.
46968
469692019-02-28  Juri Linkov  <juri@linkov.net>
46970
46971	* lisp/replace.el (flush-lines): Return the number of deleted lines.
46972
46973	When called interactively, also print the number. (Bug#34520)
46974
46975	* doc/emacs/search.texi (Other Repeating Search): Update
46976	flush-lines that prints the number of deleted lines.
46977
469782019-02-28  Eli Zaretskii  <eliz@gnu.org>
46979
46980	Avoid rare crashes in xbacktrace
46981
46982	* src/eval.c (backtrace_thread_p, backtrace_top): Don't
46983	segfault in "xbacktrace" if called before the specpdl
46984	machinery is initialized in pdumped Emacs.
46985
469862019-02-28  Michael Albinus  <michael.albinus@gmx.de>
46987
46988	Adapt test names in tramp-archive-tests.el
46989
46990	* test/lisp/net/tramp-archive-tests.el
46991	(tramp-archive-test39-make-nearby-temp-file)
46992	(tramp-archive-test42-file-system-info)
46993	(tramp-archive-test45-auto-load)
46994	(tramp-archive-test45-delay-load): Rename.
46995
469962019-02-28  Michael Albinus  <michael.albinus@gmx.de>
46997
46998	Use proper read syntax for all function names in Tramp
46999
47000	* lisp/net/tramp.el:
47001	* lisp/net/tramp-adb.el:
47002	* lisp/net/tramp-archive.el:
47003	* lisp/net/tramp-cache.el:
47004	* lisp/net/tramp-cmds.el:
47005	* lisp/net/tramp-compat.el:
47006	* lisp/net/tramp-ftp.el:
47007	* lisp/net/tramp-gvfs.el:
47008	* lisp/net/tramp-integration.el:
47009	* lisp/net/tramp-rclone.el:
47010	* lisp/net/tramp-sh.el:
47011	* lisp/net/tramp-smb.el:
47012	* lisp/net/tramp-sudoedit.el:
47013	* test/lisp/net/tramp-archive-tests.el:
47014	* test/lisp/net/tramp-tests.el: Use proper read syntax for all
47015	function names.
47016
470172019-02-27  Paul Eggert  <eggert@cs.ucla.edu>
47018
47019	Escape HTML NUL as &#0; in eww
47020
47021	* lisp/net/eww.el (eww-display-html): Escape NUL as &#0; as this
47022	is more appropriate for HTML.
47023
470242019-02-27  Juri Linkov  <juri@linkov.net>
47025
47026	* lisp/vc/vc-annotate.el: Better error handling (bug#34532)
47027
47028	* lisp/vc/vc-annotate.el (vc-annotate-revision-previous-to-line):
47029	Print message when prev-rev is nil.
47030
470312019-02-27  Juri Linkov  <juri@linkov.net>
47032
47033	Directional window swap states (bug#34656)
47034
47035	* lisp/windmove.el (windmove-swap-states-in-direction)
47036	(windmove-swap-states-left, windmove-swap-states-up)
47037	(windmove-swap-states-down, windmove-swap-states-right)
47038	(windmove-swap-states-default-keybindings): New functions.
47039
470402019-02-27  Juri Linkov  <juri@linkov.net>
47041
47042	* doc/emacs/frames.texi (Multiple Displays): Add make-frame-on-monitor.
47043
47044	* doc/lispref/frames.texi (Multiple Terminals): Add make-frame-on-monitor.
47045	(Bug#34516)
47046
470472019-02-27  Arash Esbati  <arash@gnu.org>
47048
47049	Improve matching of key-val labels (bug#34629)
47050
47051	* lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve
47052	regexp for key-val labels in order to skip over content in braces.
47053
470542019-02-27  Robert Pluim  <rpluim@gmail.com>
47055
47056	Replace NUL characters when calling into libxml
47057
47058	2019-02-27  Robert Pluim  <rpluim@gmail.com>
47059
47060	* lisp/net/eww.el (eww-display-html): Replace NUL characters with
47061	"\0", as libxml can't handle embedded NULLs.  (Bug#34469)
47062
470632019-02-27  Stefan Monnier  <monnier@iro.umontreal.ca>
47064
47065	* lisp/emacs-lisp/pcase.el (pcase--make-docstring): Autoload
47066
470672019-02-27  John Shahid  <jvshahid@gmail.com>
47068
47069	Add text properties to newlines used to unwrap long lines.
47070
47071	* lisp/term.el (term-emulate-terminal): do it.
47072
470732019-02-27  Paul Eggert  <eggert@cs.ucla.edu>
47074
47075	DEFVAR_INT variables are now intmax_t
47076
47077	Formerly they were fixnums, which led to problems when dealing
47078	with values that might not fit on 32-bit platforms, such as
47079	string-chars-consed or floats_consed.  64-bit counters should
47080	be good enough for these (for a while, anyway...).
47081	While we’re at it, fix some unlikely integer overflow bugs
47082	that have been in the code for a while.
47083	* lib-src/make-docfile.c (write_globals):
47084	* src/data.c (do_symval_forwarding, store_symval_forwarding):
47085	* src/eval.c (restore_stack_limits, call_debugger):
47086	* src/frame.h (struct frame.cost_calculation_baud_rate):
47087	* src/keyboard.c (last_auto_save, bind_polling_period, read_char):
47088	* src/lisp.h (struct Lisp_Intfwd.intvar):
47089	* src/lread.c (defvar_int):
47090	* src/pdumper.c (dump_fwd_int):
47091	* src/thread.h (struct thread_state.m_lisp_eval_depth):
47092	* src/undo.c (truncate_undo_list):
47093	* src/xselect.c (wait_for_property_change)
47094	(x_get_foreign_selection):
47095	* src/xterm.c (x_emacs_to_x_modifiers):
47096	DEFVAR_INT variables now have the C type intmax_t, not EMACS_INT.
47097	* src/data.c (store_symval_forwarding):
47098	* src/gnutls.c (Fgnutls_boot):
47099	* src/keyboard.c (bind_polling_period):
47100	* src/macros.c (pop_kbd_macro, Fexecute_kbd_macro):
47101	* src/undo.c (truncate_undo_list):
47102	Allow any integer that fits into intmax_t, instead of
47103	requiring it to be a Lisp fixnum.
47104	* src/dispnew.c (update_window):
47105	* src/frame.c (x_figure_window_size):
47106	* src/gnutls.c (init_gnutls_functions)
47107	(emacs_gnutls_handle_error):
47108	* src/keyboard.c (make_lisp_event):
47109	* src/nsterm.m (ns_dumpglyphs_image):
47110	* src/profiler.c (make_log):
47111	* src/scroll.c (calculate_scrolling)
47112	(calculate_direct_scrolling):
47113	* src/termcap.c (tputs):
47114	* src/xterm.c (x_draw_image_relief):
47115	Avoid implementation-defined behavior on conversion of
47116	out-of-range integers.
47117	* src/eval.c (when_entered_debugger): Now intmax_t.
47118	(max_ensure_room): New function, that avoids signed integer overflow.
47119	(call_debugger, signal_or_quit): Use it.
47120	* src/fileio.c (Fdo_auto_save):
47121	* src/keyboard.c (make_lisp_event):
47122	* src/term.c (calculate_costs):
47123	* src/xdisp.c (build_desired_tool_bar_string)
47124	(hscroll_window_tree, try_scrolling, decode_mode_spec)
47125	(x_produce_glyphs):
47126	Avoid signed integer overflow.
47127	* src/lisp.h (clip_to_bounds): Generalize to intmax_t.
47128	* src/pdumper.c (dump_emacs_reloc_immediate_emacs_int): Remove, ...
47129	(dump_emacs_reloc_immediate_intmax_t): ... replacing with this
47130	function.  All uses changed.
47131	* src/profiler.c (make_log): Omit args.  All callers changed.
47132	* src/termcap.c: Include stdlib.h, for atoi.
47133	Include intprops.h.
47134	* src/window.c (sanitize_next_screen_context_lines): New function.
47135	(window_scroll_pixel_based, window_scroll_line_based):
47136	Use it to avoid signed integer overflow.
47137
471382019-02-25  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
47139
47140	Fix mod-test build failure
47141
47142	Problem reported by Glenn Morris in:
47143	https://lists.gnu.org/r/emacs-devel/2019-02/msg00739.html
47144	* test/Makefile.in (HYBRID_MALLOC, LIBEGNU_ARCHIVE):
47145	New macros, taken from ../src/Makefile.in.
47146	(MODULE_CFLAGS): Add -I$(srcdir)/../lib.
47147	($(test_module)): Link $(LIBEGNU_ARCHIVE) too.
47148
471492019-02-25  Juri Linkov  <juri@linkov.net>
47150
47151	* lisp/vc/diff-mode.el (diff-font-lock-keywords): Add more Git headers.
47152
47153	* lisp/gnus/mm-view.el (mm-display-inline-fontify): Set mode to
47154	the selected major-mode, so diff-mode could be detected afterwards.
47155
471562019-02-25  Juri Linkov  <juri@linkov.net>
47157
47158	* lisp/frame.el (make-frame-on-monitor): New command.  (Bug#34516)
47159
47160	(make-frame-on-display): Add completion on available display names.
47161
471622019-02-25  Paul Eggert  <eggert@cs.ucla.edu>
47163
47164	format-time-string: document new '+' flag
47165
47166	* doc/lispref/os.texi (Time Parsing), etc/NEWS:
47167	* src/timefns.c (Fformat_time_string): Document the new
47168	behavior, added for compatibility with POSIX.1-2017.
47169
471702019-02-25  Paul Eggert  <eggert@cs.ucla.edu>
47171
47172	Update from Gnulib
47173
47174	This incorporates:
47175	2019-02-24 nstrftime: support the ‘+’ flag
47176	2019-02-24 stat, lstat: fix conflict with relocatable-prog-wrapper
47177	2019-02-23 nstrftime: tweak arg order
47178	2019-02-21 nstrftime: merge glibc strftime changes
47179	2019-02-02 vla: add commentary about VLA_ELEMS
47180	* build-aux/config.guess, doc/misc/texinfo.tex, lib/fstatat.c:
47181	* lib/lstat.c, lib/nstrftime.c, lib/vla.h:
47182	Copy from Gnulib.
47183
471842019-02-25  Michael Albinus  <michael.albinus@gmx.de>
47185
47186	Adapt hooks in Tramp
47187
47188	* lisp/net/tramp-archive.el (tramp-archive-cleanup-hash):
47189	Remove autoload cookie.
47190	(tramp-cleanup-all-connections-hook): Add `tramp-archive-cleanup-hash'.
47191
47192	* lisp/net/tramp-cmds.el (tramp-cleanup-connection-hook)
47193	(tramp-cleanup-all-connections-hook): New hook variables.
47194	(tramp-cleanup-connection): Set `tramp-current-connection' always
47195	to nil.
47196	(tramp-cleanup-connection): Do not call `tramp-recentf-cleanup'.
47197	Run ´tramp-cleanup-connection-hook`.
47198	(tramp-cleanup-all-connections): Do not call
47199	`tramp-archive-cleanup-hash' and ´tramp-recentf-cleanup'.  Run
47200	`tramp-cleanup-all-connections-hook'.
47201
47202	* lisp/net/tramp-ftp.el (top): Simply call `tramp-disable-ange-ftp'.
47203
47204	* lisp/net/tramp-integration.el (tramp-recentf-cleanup-all): New defun.
47205	(top): Adapt `tramp-integration-unload-hook',
47206	`tramp-cleanup-connection-hook' and
47207	`tramp-cleanup-all-connections-hook'.
47208
472092019-02-24  Alex Branham  <alex.branham@gmail.com>
47210
47211	* lisp/comint.el (comint-skip-input): Set inhibit-read-only to t
47212
47213	Bug#33975
47214
472152019-02-24  Philipp Stephani  <phst@google.com>
47216
47217	Ignore pending_signals when checking for quits.
47218
47219	pending_signals is often set if no quit is pending.  This results in
47220	bugs in module code if the module returns but no quit is actually
47221	pending.
47222
47223	As a better alternative, add a new process_input environment function
47224	for Emacs 27.  That function processes signals (like maybe_quit).
47225
47226	* configure.ac: Add module snippet for Emacs 27.
47227
47228	* src/module-env-27.h: New file.
47229
47230	* src/emacs-module.h.in: Add process_input function to environment
47231	interface.
47232
47233	* src/emacs-module.c (module_should_quit): Use QUITP macro to check
47234	whether the caller should quit.
47235	(module_process_input): New function.
47236	(initialize_environment): Use it.
47237
47238	* src/eval.c: Remove obsolete comment.
47239
47240	* test/data/emacs-module/mod-test.c (signal_wrong_type_argument)
47241	(signal_errno): New helper functions.
47242	(Fmod_test_sleep_until): New test module function.
47243
47244	* test/src/emacs-module-tests.el (mod-test-sleep-until): New unit
47245	test.
47246
47247	* doc/lispref/internals.texi (Module Misc): Document process_input.
47248
472492019-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
47250
47251	* lisp/term.el: Fix minor compilation issues with cl-lib and lexbind
47252
47253	Remove left-over comment from the bulk comint->term query/replace.
47254	(term-command-function): Rename from term-command-hook.
47255	Give it a global default value.
47256	(term-suppress-hard-newline): Mark it as generally obsolete.
47257	(term-mode): Don't manually make hooks buffer-local.
47258	(term--remove-fake-newlines): Fix assert -> cl-assert.
47259	(term-char-mode): Use add-function.
47260	(term-send-input): Use run-hook-with-args.
47261	(term-dynamic-complete): Use run-hook-with-args-until-success.
47262	(term-dynamic-simple-complete): Completion tables can be plain lists.
47263	(serial-read-name): Simplify and fix misuse of `set`.
47264
472652019-02-24  John Shahid  <jvshahid@gmail.com>
47266
47267	Adjust line wrapping on window resize and killing text
47268
47269	* lisp/term.el (term-mode): Advice filter-buffer-substring-function to
47270	remove line unwrapping from killed text.
47271	(term-reset-size): Add or remove line unwrapping depending on the new
47272	terminal width.
47273	(term-suppress-hard-newline): Mark obsolete.
47274	(term-unwrap-line): Use text properties to be able to find the
47275	newlines later.
47276
472772019-02-24  Eric Abrahamsen  <eric@ericabrahamsen.net>
47278
47279	Make pinyin to Chinese character mapping available to elisp
47280
47281	* leim/Makefile.in: Build the file pinyin.el from pinyin.map.
47282	* lisp/international/titdic-cnv.el (pinyin-convert): New function that
47283	  writes the library pinyin.el, containing a new constant
47284	  `pinyin-character-map'.
47285	* .gitignore: Ignore the generated pinyin.el file.
47286
472872019-02-24  Richard Stallman  <rms@gnu.org>
47288
47289	fix rmail armor decryption problems
47290
47291	* lisp/mail/rmail.el (rmail-epa-decrypt): Don't decrypt an armor
47292	that was copied into the message from a message it is a reply to.
47293	(rmail-epa-decrypt-1): Catch and ignore errors in
47294	epa-decrypt-region.  Make armor-start and armor-end markers.
47295
472962019-02-24  Richard Stallman  <rms@gnu.org>
47297
47298	Don't clobber epa-mail-aliases
47299
47300	* lisp/epa-mail.el (epa-mail-default-recipients):
47301	Copy elements of epa-mail-aliases; don't clobber them.
47302
473032019-02-24  Eli Zaretskii  <eliz@gnu.org>
47304
47305	* doc/lispref/text.texi (Replacing): Fix a typo in recent change.
47306
473072019-02-24  Michael Albinus  <michael.albinus@gmx.de>
47308
47309	Cleanup also recentf files in Tramp
47310
47311	* doc/misc/tramp.texi (Cleanup remote connections): Mention also
47312	recentf cache.
47313
47314	* lisp/net/tramp-cmds.el (tramp-cleanup-connection)
47315	(tramp-cleanup-all-connections): Call `tramp-recentf-cleanup'.
47316
47317	* lisp/net/tramp-integration.el: New package.
47318
47319	* lisp/net/tramp.el (tramp-rfn-eshadow-overlay)
47320	(tramp-rfn-eshadow-setup-minibuffer)
47321	(tramp-rfn-eshadow-update-overlay-regexp)
47322	(tramp-rfn-eshadow-update-overlay):
47323	(tramp-eshell-directory-change): Move to tramp-integration.el
47324
473252019-02-23  Paul Eggert  <eggert@cs.ucla.edu>
47326
47327	Don’t assume timersub and gettimeofday
47328
47329	POSIX does not specify timersub, and marks gettimeofday as
47330	obsolescent.  Avoid porting problems by using timespec.h
47331	functions instead.
47332	* src/editfns.c: Include systime.h instead of sys/time.h.
47333	(EXTRA_CONTEXT_FIELDS): Replace start and max_secs with
47334	time_limit.  All uses changed.  This removes the need to call
47335	gettimeofday or timersub.
47336	* src/term.c (timeval_to_Time): Remove.  Replace all uses with ...
47337	(current_Time): ... this new function, removing the need to
47338	call gettimeofday.
47339
473402019-02-23  Tassilo Horn  <tsdh@gnu.org>
47341
47342	Improve replace-buffer-contents/replace-region-contents
47343
47344	* src/editfns.c (Freplace_buffer_contents): Add two optional arguments
47345	  for mitigating performance issues.
47346	* lisp/emacs-lisp/subr-x.el (replace-region-contents): Move from
47347	  subr.el.  Add the same two arguments as for replace-buffer-contents.
47348	* lisp/json.el (json-pretty-print-max-secs): New variable holding the
47349	  default MAX-SECS value json-pretty-print passes to
47350	  replace-buffer-contents.
47351	  (json-pretty-print): Use it.
47352	* doc/lispref/text.texi (Replacing): Add documentation for
47353	  replace-buffer-contents two new optional arguments.  Document
47354	  replace-region-contents.
47355
473562019-02-23  Michael Albinus  <michael.albinus@gmx.de>
47357
47358	Make last Tramp change backward compatible to Emacs 24
47359
47360	* lisp/net/tramp-cache.el (tramp-get-file-property):
47361	* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
47362	* lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
47363	Make them backward compatible to Emacs 24.
47364
473652019-02-23  Felicián Németh  <felician.nemeth@gmail.com>
47366
47367	Jump to the current error in xref with zero prefix arg
47368
47369	* lisp/progmodes/xref.el (xref--next-error-function): Handle the corner case of
47370	n == 0.  (Bug#34462)
47371
473722019-02-22  Paul Eggert  <eggert@cs.ucla.edu>
47373
47374	Avoid some double-rounding of Lisp timestamps
47375
47376	Also, simplify some time-related Lisp timestamp code
47377	while we’re in the neighborhood.
47378	* lisp/battery.el (battery-linux-proc-acpi)
47379	(battery-linux-sysfs, battery-upower, battery-bsd-apm):
47380	* lisp/calendar/timeclock.el (timeclock-seconds-to-string)
47381	(timeclock-log, timeclock-last-period)
47382	(timeclock-entry-length, timeclock-entry-list-span)
47383	(timeclock-find-discrep, timeclock-generate-report):
47384	* lisp/cedet/ede/detect.el (ede-detect-qtest):
47385	* lisp/completion.el (cmpl-hours-since-origin):
47386	* lisp/ecomplete.el (ecomplete-decay-1):
47387	* lisp/emacs-lisp/ert.el (ert--results-update-stats-display)
47388	(ert--results-update-stats-display-maybe):
47389	* lisp/emacs-lisp/timer-list.el (list-timers):
47390	* lisp/emacs-lisp/timer.el (timer-until)
47391	(timer-event-handler):
47392	* lisp/erc/erc-backend.el (erc-server-send-ping)
47393	(erc-server-send-queue, erc-handle-parsed-server-response)
47394	(erc-handle-unknown-server-response):
47395	* lisp/erc/erc-track.el (erc-buffer-visible):
47396	* lisp/erc/erc.el (erc-lurker-cleanup, erc-lurker-p)
47397	(erc-cmd-PING, erc-send-current-line):
47398	* lisp/eshell/em-pred.el (eshell-pred-file-time):
47399	* lisp/eshell/em-unix.el (eshell-show-elapsed-time):
47400	* lisp/gnus/gnus-icalendar.el (gnus-icalendar-event:org-timestamp):
47401	* lisp/gnus/gnus-int.el (gnus-backend-trace):
47402	* lisp/gnus/gnus-sum.el (gnus-user-date):
47403	* lisp/gnus/mail-source.el (mail-source-delete-crash-box):
47404	* lisp/gnus/nnmaildir.el (nnmaildir--scan):
47405	* lisp/ibuf-ext.el (ibuffer-mark-old-buffers):
47406	* lisp/gnus/nnmaildir.el (nnmaildir--scan):
47407	* lisp/mouse.el (mouse--down-1-maybe-follows-link)
47408	(mouse--click-1-maybe-follows-link):
47409	* lisp/mpc.el (mpc--faster-toggle):
47410	* lisp/net/rcirc.el (rcirc-handler-ctcp-KEEPALIVE)
47411	(rcirc-sentinel):
47412	* lisp/net/tramp-cache.el (tramp-get-file-property):
47413	* lisp/net/tramp-sh.el (tramp-sh-handle-file-newer-than-file-p)
47414	(tramp-maybe-open-connection):
47415	* lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
47416	* lisp/org/org-clock.el (org-clock-resolve):
47417	(org-resolve-clocks, org-clock-in, org-clock-out, org-clock-sum):
47418	* lisp/org/org-timer.el (org-timer-start)
47419	(org-timer-pause-or-continue, org-timer-seconds):
47420	* lisp/org/org.el (org-evaluate-time-range):
47421	* lisp/org/ox-publish.el (org-publish-cache-ctime-of-src):
47422	* lisp/pixel-scroll.el (pixel-scroll-in-rush-p):
47423	* lisp/play/hanoi.el (hanoi-move-ring):
47424	* lisp/proced.el (proced-format-time):
47425	* lisp/progmodes/cpp.el (cpp-progress-message):
47426	* lisp/progmodes/flymake.el (flymake--handle-report):
47427	* lisp/progmodes/js.el (js--wait-for-matching-output):
47428	* lisp/subr.el (progress-reporter-do-update):
47429	* lisp/term/xterm.el (xterm--read-event-for-query):
47430	* lisp/time.el (display-time-update, emacs-uptime):
47431	* lisp/tooltip.el (tooltip-delay):
47432	* lisp/url/url-cookie.el (url-cookie-parse-file-netscape):
47433	* lisp/url/url-queue.el (url-queue-prune-old-entries):
47434	* lisp/url/url.el (url-retrieve-synchronously):
47435	* lisp/xt-mouse.el (xterm-mouse-event):
47436	Avoid double-rounding of time-related values.  Simplify.
47437	* lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
47438	When hoping for the best (unlikely), use a better decoded time.
47439	(icalendar--convert-sexp-to-ical): Avoid unnecessary encode-time.
47440	* lisp/calendar/timeclock.el (timeclock-when-to-leave):
47441	* lisp/cedet/ede/detect.el (ede-detect-qtest):
47442	* lisp/desktop.el (desktop-create-buffer):
47443	* lisp/emacs-lisp/benchmark.el (benchmark-elapse):
47444	* lisp/gnus/gnus-art.el (article-lapsed-string):
47445	* lisp/gnus/gnus-group.el (gnus-group-timestamp-delta):
47446	* lisp/gnus/nnmail.el (nnmail-expired-article-p):
47447	* lisp/gnus/nnmaildir.el (nnmaildir-request-expire-articles):
47448	* lisp/nxml/rng-maint.el (rng-time-function):
47449	* lisp/org/org-clock.el (org-clock-get-clocked-time)
47450	(org-clock-resolve, org-resolve-clocks, org-resolve-clocks-if-idle):
47451	* lisp/org/org-habit.el (org-habit-insert-consistency-graphs):
47452	* lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
47453	(vhdl-fix-case-region-1):
47454	Use time-since instead of open-coding most of it.
47455	* lisp/erc/erc-dcc.el (erc-dcc-get-sentinel):
47456	* lisp/erc/erc.el (erc-string-to-emacs-time, erc-time-gt):
47457	Now obsolete.  All uses changed.
47458	(erc-time-diff): Accept all Lisp time values.
47459	All uses changed.
47460	* lisp/gnus/gnus-demon.el (gnus-demon-idle-since):
47461	* lisp/gnus/gnus-score.el (gnus-score-headers):
47462	* lisp/gnus/nneething.el (nneething-make-head):
47463	* lisp/gnus/nnheader.el (nnheader-message-maybe):
47464	* lisp/gnus/nnimap.el (nnimap-keepalive):
47465	* lisp/image.el (image-animate-timeout):
47466	* lisp/mail/feedmail.el (feedmail-rfc822-date):
47467	* lisp/net/imap.el (imap-wait-for-tag):
47468	* lisp/net/newst-backend.el (newsticker--image-get):
47469	* lisp/net/rcirc.el (rcirc-handler-317, rcirc-handler-333):
47470	* lisp/obsolete/xesam.el (xesam-refresh-entry):
47471	* lisp/org/org-agenda.el (org-agenda-show-clocking-issues)
47472	(org-agenda-check-clock-gap, org-agenda-to-appt):
47473	* lisp/org/org-capture.el (org-capture-set-target-location):
47474	* lisp/org/org-clock.el (org-clock-resolve-clock)
47475	(org-clocktable-steps):
47476	* lisp/org/org-colview.el (org-columns-edit-value)
47477	(org-columns, org-agenda-columns):
47478	* lisp/org/org-duration.el (org-duration-from-minutes):
47479	* lisp/org/org-element.el (org-element-cache-sync-duration)
47480	(org-element-cache-sync-break)
47481	(org-element--cache-interrupt-p, org-element--cache-sync):
47482	* lisp/org/org-habit.el (org-habit-get-faces)
47483	* lisp/org/org-indent.el (org-indent-add-properties):
47484	* lisp/org/org-table.el (org-table-sum):
47485	* lisp/org/org-timer.el (org-timer-show-remaining-time)
47486	(org-timer-set-timer):
47487	* lisp/org/org.el (org-babel-load-file, org-today)
47488	(org-auto-repeat-maybe, org-2ft, org-time-stamp)
47489	(org-read-date-analyze, org-time-stamp-to-now)
47490	(org-small-year-to-year, org-goto-calendar):
47491	* lisp/org/ox.el (org-export-insert-default-template):
47492	* lisp/ses.el (ses--time-check):
47493	* lisp/type-break.el (type-break-time-warning)
47494	(type-break-statistics, type-break-demo-boring):
47495	* lisp/url/url-cache.el (url-cache-expired)
47496	(url-cache-prune-cache):
47497	* lisp/vc/vc-git.el (vc-git-stash-snapshot):
47498	* lisp/erc/erc-match.el (erc-log-matches-come-back):
47499	Simplify.
47500
475012019-02-22  Paul Eggert  <eggert@cs.ucla.edu>
47502
47503	Remove some timestamp format assumptions
47504
47505	Don’t assume that current-time and plain encode-time return
47506	timestamps in (HI LO US PS) format.
47507	* lisp/gnus/gnus-art.el (article-make-date-line)
47508	(article-lapsed-string):
47509	* lisp/gnus/gnus-demon.el (gnus-demon-time-to-step):
47510	* lisp/gnus/gnus-diary.el (gnus-user-format-function-d):
47511	* lisp/gnus/nnmaildir.el (nnmaildir-request-expire-articles):
47512	* lisp/net/pop3.el (pop3-uidl-dele):
47513	* lisp/org/ox-publish.el (org-publish-sitemap):
47514	* lisp/vc/vc-hg.el (vc-hg-state-fast):
47515	Simplify and remove assumptions about timestamp format.
47516	* lisp/gnus/gnus-art.el (article-lapsed-string):
47517	* lisp/gnus/gnus-diary.el (gnus-user-format-function-d):
47518	Do not worry about time-subtract returning nil; that's not possible.
47519	* lisp/gnus/gnus-diary.el (gnus-user-format-function-d):
47520	Avoid race due to duplicate current-time calls.
47521	* lisp/vc/vc-hg.el (vc-hg--time-to-integer): Remove; no longer used.
47522
475232019-02-22  Alex Branham  <alex.branham@gmail.com>
47524
47525	which-function: Do not display outdated imenu information
47526
47527	* lisp/progmodes/which-func.el (which-function): Check
47528	  `add-log-current-defun' before imenu. Update `imenu--index-alist' if
47529	  needed. Bug#33695
47530
475312019-02-21  Nicholas Drozd  <nicholasdrozd@gmail.com>
47532
47533	Handle HTML 'ol' start attribute in shr.el
47534
47535	* lisp/net/shr.el (shr-tag-ol): Don't automatically assume
47536	1-indexing for all ordered lists, use <ol> if given.
47537
47538	* etc/NEWS: Announce change in shr behavior.
47539
47540	* test/data/shr/ol.html:
47541	* test/data/shr/ol.txt: New test data files.
47542
475432019-02-21  Stefan Monnier  <monnier@iro.umontreal.ca>
47544
47545	* lisp/vc/diff-mode.el: Reduce redundancy in diff-syntax-fontify code
47546
47547	(diff--iterate-hunks): New function extracted from diff--font-lock-refined.
47548	(diff--font-lock-refined, diff--font-lock-syntax): Use it.
47549	(diff--overlay-auto-delete): Rename from diff--font-lock-refine--refresh.
47550	(diff--font-lock-syntax--refresh): Delete.
47551	(diff-syntax-fontify-hunk): Don't completely silence errors.
47552	(diff-syntax-fontify-props): Remove `no-init` arg, testing if `file` is
47553	nil instead.  Adjust all callers.
47554	(diff-syntax-fontify-props): Remove redundant code since we don't
47555	modify the buffer.
47556
475572019-02-21  Mattias Engdegård  <mattiase@acm.org>
47558
47559	Replace 8-bit-specific case-manipulation
47560
47561	* lisp/completion.el (cmpl-coerce-string-case):
47562	Rewrite case-changing code written for ASCII or latin-1 but not valid
47563	in generally today.
47564
475652019-02-20  Michael R. Mauger  <michael@mauger.com>
47566
47567	Correct implementation of `sql-set-product-feature' (Bug#30494).
47568
47569	* lisp/progmodes/sql.el (sql-add-product): Correct argument spec.
47570	(sql-set-product-feature): Handle all cases as intended.
47571	(sql-get-product-feature): Fetch varaiable value by `eval'.
47572	* test/lisp/progmodes/sql-tests.el (sql-test-feature-value-[a-d]):
47573	New test variables.
47574	(sql-test-product-feature-harness): New test macro.
47575	(sql-test-add-product, sql-test-add-existing-product)
47576	(sql-test-set-feature, sql-test-set-indirect-feature)
47577	(sql-test-set-existing-feature)
47578	(sql-test-set-existing-indirect-feature)
47579	(sql-test-set-missing-product, sql-test-get-feature)
47580	(sql-test-get-indirect-feature, sql-test-get-missing-product)
47581	(sql-test-get-missing-feature)
47582	(sql-test-get-missing-indirect-feature): New ERT tests
47583
475842019-02-20  Glenn Morris  <rgm@gnu.org>
47585
47586	Merge from origin/emacs-26
47587
47588	ff9c962 ; * lisp/ldefs-boot.el: Update.
47589	b4a251c * ; ChangeLog.3 update
47590	d3104e3 * etc/AUTHORS: Update.
47591	a19bfb7 Remove .art from the default list of ImageMagick extensions
47592	6985caa Fix input after setting x-wait-for-event-timeout nil
47593	715388a Fix two warnings in eshell.texi
47594	d49cdd9 * lisp/minibuffer.el (completion-table-dynamic): Improve docs...
47595	5dc4e51 * lisp/emacs-lisp/debug.el (debug-on-variable-change): Doc fi...
47596	76ef805 Fix a typo in ELisp manual
47597	b5e66f4 Update citations of Internet RFCs
47598	57ece2a Fix handling of manpage references divided by hyphenation
47599	7ad0cd6 * doc/misc/eshell.texi: Fix some @ref's.
47600	12b7940 Fix a typo in lispref/syntax.texi
47601
47602	# Conflicts:
47603	#	lisp/gnus/nnrss.el
47604	#	lisp/mail/ietf-drums.el
47605
476062019-02-20  Tassilo Horn  <tsdh@gnu.org>
47607
47608	Fix missing interactive spec
47609
47610	* lisp/json.el (json-pretty-print-buffer-ordered): Add interactive
47611	  spec "P" which has been missing.
47612
476132019-02-20  Michael Albinus  <michael.albinus@gmx.de>
47614
47615	Improve connection hand-shaking in tramp-adb.el
47616
47617	* lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
47618	Send an additional RET.
47619
476202019-02-20  Stefan Monnier  <monnier@iro.umontreal.ca>
47621
47622	* lisp/progmodes/sql.el (sql-is-indent-available): Remove
47623
47624	(sql-indent-enable): Check (fboundp 'sqlind-minor-mode) without
47625	wondering which file might provide it.
47626	(sql-read-connection): η-reduce 'car'.
47627
476282019-02-20  Martin Rudalics  <rudalics@gmx.at>
47629
47630	Fix handling of MINIBUF argument in 'walk-window-tree'
47631
47632	* lisp/window.el (walk-window-tree): Handle MINIBUF argument
47633	as advertised when FRAME is minibuffer-only.
47634	(window--resize-apply-p, window--sanitize-window-sizes)
47635	(delete-other-windows, split-window-sensibly): Call
47636	'walk-window-tree' with suitable MINIBUF argument.
47637
476382019-02-19  Glenn Morris  <rgm@gnu.org>
47639
47640	* lisp/progmodes/sql.el: Fix use of string-empty-p in recent change.
47641
476422019-02-19  Charles A. Roelli  <charles@aurox.ch>
47643
47644	Simplify easy-mmode-define-navigation
47645
47646	* lisp/emacs-lisp/easy-mmode.el (easy-mmode-define-navigation):
47647	Simplify a one-argument call to "or" and use buffer-narrowed-p instead
47648	of checking that condition by hand.
47649
476502019-02-19  Michael Albinus  <michael.albinus@gmx.de>
47651
47652	Implement access-file in Tramp
47653
47654	* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
47655	* lisp/net/tramp-archive.el (tramp-archive-file-name-handler-alist):
47656	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
47657	* lisp/net/tramp-rclone.el (tramp-rclone-file-name-handler-alist):
47658	* lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
47659	* lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
47660	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-file-name-handler-alist):
47661	Add `access-file'.
47662
47663	* lisp/net/tramp-archive.el (tramp-archive-handle-access-file):
47664	* lisp/net/tramp.el (tramp-handle-access-file): New defun.
47665	(tramp-condition-case-unless-debug): Add declaration.
47666	(tramp-handle-insert-directory):
47667	* lisp/net/tramp-sh.el (tramp-sh-handle-insert-directory):
47668	* lisp/net/tramp-smb.el (tramp-smb-handle-insert-directory):
47669	Check, whether directory is accessible.
47670
47671	* test/lisp/net/tramp-archive-tests.el
47672	(tramp-archive-test17-insert-directory)
47673	(tramp-archive-test18-file-attributes):
47674	* test/lisp/net/tramp-tests.el (tramp-test17-insert-directory)
47675	(tramp-test18-file-attributes): Test error cases.
47676
476772019-02-19  João Távora  <joaotavora@gmail.com>
47678
47679	cycle-sort-function prevails in completion-all-sorted-completions
47680
47681	* lisp/minibuffer.el (completion-all-sorted-completions): If
47682	completion table has cycle-sort-function, that prevails over other
47683	sorting strategies.
47684
476852019-02-19  João Távora  <joaotavora@gmail.com>
47686
47687	switch-to-buffer's completion table uses its own sorting
47688
47689	* src/minibuf.c (Finternal_complete_buffer): Add
47690	Qcycle_sort_function to completion table's metadata.
47691	(syms_of_minibuf): New symbol Qcycle_sort_function.
47692
476932019-02-18  Michael R. Mauger  <michael@mauger.com>
47694
47695	Merge branch 'wallet'
47696
47697	* lisp/progmodes/sql.el: Added password wallet using
47698	`auth-source' package.
47699	(sql-auth-source-search-wallet): New function.
47700	(sql-password-wallet): New variable.
47701	(sql-password-search-wallet-function): New variable.
47702	(sql-get-login): Handle password wallet search.
47703	(sql-product-interactive): Handle password function.
47704	* test/lisp/progmodes/sql-tests.el: Test wallet changes.
47705	(sql-test-login-params): New test variable.
47706	(with-sql-test-connect-harness): New macro to wrap test
47707	configuration around calls to `sql-connect'.
47708	(sql-test-connect, sql-test-connect-password-func)
47709	(sql-test-connect-wallet-server-database)
47710	(sql-test-connect-wallet-database)
47711	(sql-test-connect-wallet-server): New ERT tests.
47712	* etc/NEWS: Updated SQL Mode descriptions.
47713
477142019-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
47715
47716	* lisp/mh-e/mh-acros.el (mh-defstruct): Minor simplification
47717
47718	* lisp/erc/erc.el (erc-version-string): Remove, unused
47719
477202019-02-18  Michael R. Mauger  <michael@mauger.com>
47721
47722	* lisp/progmodes/sql.el defensive programming
47723
47724	(sql-statement-regexp): if 'ansi' dialect is not defined, use "select"
47725	(sql-interactive-mode): establish process sentinel iff there is a
47726	process. Default values for :prompt-regexp and :prompt-length.
47727	(sql-product-interactive): only check process status iff there is a
47728	process.
47729
477302019-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
47731
47732	* lisp/elec-pair.el: Do modify+undo more carefully
47733
47734	(electric-pair-inhibit-if-helps-balance): Use the undo system
47735	instead of undoing by hand.
47736
477372019-02-18  Paul Eggert  <eggert@cs.ucla.edu>
47738
47739	Speed up cl-list-length
47740
47741	* lisp/emacs-lisp/cl-extra.el (cl-list-length): Use ‘length’
47742	to do the real work; this is simpler and uses a better algorithm.
47743
477442019-02-18  Paul Eggert  <eggert@cs.ucla.edu>
47745
47746	Minor profiler improvements
47747
47748	* src/profiler.c (evict_lower_half, record_backtrace)
47749	(setup_cpu_timer, cmpfn_profiler, hashfn_profiler):
47750	Assume C99.  Use bool for boolean.
47751	(timer_getoverrun): Remove; simplify use to not need it.
47752	(Fprofiler_cpu_start): Any negative return from setup_cpu_timer fails.
47753	(Fprofiler_cpu_stop): Simplify initialization.
47754
477552019-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
47756
47757	* lisp/emacs-lisp/cl-lib.el (cl-endp): Move to cl-seq.el
47758
47759	Use 'cl-check-type'.
47760
477612019-02-18  Ken Brown  <kbrown@cornell.edu>
47762
47763	Use 'timer_getoverrun' on Cygwin when possible
47764
47765	* configure.ac: Add a check for the 'timer_getoverrun' function.
47766
47767	* src/profiler.c [CYGWIN] : Define 'timer_getoverrun' as a
47768	macro only on versions of Cygwin where it is not already
47769	defined as a function.
47770
477712019-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
47772
47773	* lisp/vc/smerge-mode.el (smerge-change-buffer-confirm): New var
47774
47775	(smerge-vc-next-conflict): Obey it.  Save buffer before going to
47776	the next.  Don't emit message when vc-find-conflicted-file can't find
47777	other conflicted file.
47778
47779	* lisp/vc/vc-hooks.el: Use lexical-binding.
47780
47781	* lisp/vc/vc.el: Remove redundant :groups.
47782	(vc-find-conflicted-file): Autoload.
47783
477842019-02-18  Konstantin Kharlamov  <Hi-Angel@yandex.ru>  (tiny change)
47785
47786	* lisp/vc/smerge-mode.el (smerge-vc-next-conflict): New command
47787
477882019-02-18  Michael Albinus  <michael.albinus@gmx.de>
47789
47790	Increase timeout on emba for Tramp
47791
47792	* test/lisp/net/tramp-tests.el
47793	(tramp--test-shell-command-to-string-asynchronously):
47794	Increase timeout on emba.
47795
477962019-02-18  Paul Eggert  <eggert@cs.ucla.edu>
47797
47798	* src/fns.c: Fix comment.
47799
478002019-02-17  Paul Eggert  <eggert@cs.ucla.edu>
47801
47802	emacs-init-time outputs more digits now
47803
47804	* lisp/time.el (emacs-init-time): Output more digits;
47805	formerly this was always outputting "0.0 seconds" for me
47806	because the number of seconds was less than 0.1.
47807
478082019-02-17  Paul Eggert  <eggert@cs.ucla.edu>
47809
47810	* lisp/emacs-lisp/cl-lib.el (cl-endp): Remove stray 'x.
47811
478122019-02-17  Juri Linkov  <juri@linkov.net>
47813
47814	* lisp/tar-mode.el (tar--try-jka-compr): Remove.  (Bug#34251)
47815
47816	(tar-extract): Call archive-try-jka-compr instead of tar--try-jka-compr.
47817
47818	* lisp/arc-mode.el (archive-try-jka-compr): Call set-buffer-multibyte
47819	after erase-buffer.
47820
478212019-02-17  Alan Mackenzie  <acm@muc.de>
47822
47823	Fontify C function identifiers in parentheses correctly (e.g. in lisp.h)
47824
47825	Fix handling of CC Mode's syntactic WS cache.  Make noise-macro option
47826	variables buffer local.
47827
47828	* lisp/progmodes/cc-engine.el (c-put-is-sws, c-put-in-sws, c-remove-is-sws)
47829	(c-remove-in-sws c-remove-is-and-in-sws): Add edebug specs.
47830	(c-invalidate-sws-region-before): Add a `beg' parameter.  Handle noise
47831	macros like other literals.
47832	(c-invalidate-sws-region-after-del): Move the adjustment of (cdr
47833	c-sws-lit-limits) due to buffer change to c-invalidate-sws-region-after.
47834	(c-invalidate-sws-region-after-ins): Move (goto-char end) to the correct
47835	place.
47836	(c-invalidate-sws-region-after): Adjust (cdr c-sws-lit-limits) due to buffer
47837	change.  Handle noise macros.
47838	(c-backward-sws): Set simple-ws-beg appropriately when the start point is in
47839	the middle of a noise macro.
47840	(c-forward-decl-or-cast-1): Recognize a function identifier being declared in
47841	parentheses.
47842
47843	* lisp/progmodes/cc-mode.el (c-before-change): Supply a `beg' argument to
47844	c-invalidate-sws-region-before.
47845
47846	* lisp/progmodes/cc-vars.el (c-noise-macro-with-parens-name-re)
47847	(c-noise-macro-name-re, c-noise-macro-names, c-noise-macro-with-parens-names):
47848	Make these buffer local variables.
47849
478502019-02-17  Alan Mackenzie  <acm@muc.de>
47851
47852	* Put INLINE and ATTRIBUTE_NO_SANITIZE_UNDEFINED into c-noise-macro-names
47853
47854	* .dir-locals.el (entry for c-mode): Put the two strings into
47855	c-noise-macro-names.
47856
478572019-02-16  Paul Eggert  <eggert@cs.ucla.edu>
47858
47859	* src/lread.c (readevalloop): Simplify via suffix_p.
47860
478612019-02-16  Eli Zaretskii  <eliz@gnu.org>
47862
47863	* lisp/startup.el (load--user-init-file): Support early-init.elc as well.
47864
478652019-02-16  Stefan Monnier  <monnier@iro.umontreal.ca>
47866
47867	* lisp/startup.el: Rename load-user-init-file
47868
47869	Remove redundant :groups.
47870	(startup--load-user-init-file): Rename from load-user-init-file.
47871
478722019-02-16  Mattias Engdegård  <mattiase@acm.org>
47873
47874	Prevent over-eager rx character range condensation
47875
47876	`rx' incorrectly considers character ranges between ASCII and raw bytes to
47877	cover all codes in-between, which includes all non-ASCII Unicode chars.
47878	This causes (any "\000-\377" ?Å) to be simplified to (any "\000-\377"),
47879	which is not at all the same thing: [\000-\377] really means
47880	[\000-\177\200-\377] (Bug#34492).
47881
47882	* lisp/emacs-lisp/rx.el (rx-any-condense-range): Split ranges going
47883	from ASCII to raw bytes.
47884	* test/lisp/emacs-lisp/rx-tests.el (rx-char-any-raw-byte): Add test case.
47885	* etc/NEWS: Mention the overall change (Bug#33205).
47886
478872019-02-16  Paul Eggert  <eggert@cs.ucla.edu>
47888
47889	Port tramp-adb to various 'touch' platforms
47890
47891	* lisp/net/tramp-adb.el (tramp-adb-handle-set-file-times):
47892	Try nanoseconds first, then plain seconds, then touch -t.
47893
478942019-02-15  Eli Zaretskii  <eliz@gnu.org>
47895
47896	Fix 'early-init-file' value when file is missing
47897
47898	* lisp/startup.el (command-line): Pass 'early-init.el', with
47899	an explicit .el extension, to load-user-init-file.
47900	Reported by Radon Rosborough <radon.neon@gmail.com> in
47901	http://lists.gnu.org/archive/html/emacs-devel/2019-01/msg00314.html.
47902
479032019-02-15  Stefan Monnier  <monnier@iro.umontreal.ca>
47904
47905	* lisp/progmodes/cc-engine.el: Remove unneeded require of 'cl'
47906
47907	Merge branch 'master' of git+ssh://git.sv.gnu.org/srv/git/emacs into trunk
47908
47909	* src/lread.c (readevalloop): Use filename to decide macroexpansion
47910
479112019-02-15  Glenn Morris  <rgm@gnu.org>
47912
47913	* test/lisp/textmodes/conf-mode-tests.el (conf-test-align-assignments):
47914	Fix whitespace.
47915
479162019-02-15  Glenn Morris  <rgm@gnu.org>
47917
47918	Merge from origin/emacs-26
47919
47920	f721084 (origin/emacs-26) Avoid errors in erc-dcc.el when erc-dcc-ver...
47921	3cba92d Fix faces in compilation messages
47922
479232019-02-15  Glenn Morris  <rgm@gnu.org>
47924
47925	Merge from origin/emacs-26
47926
47927	25d9fe2 Work for empty MIME attachments (related to bug#34387)
47928
479292019-02-15  Glenn Morris  <rgm@gnu.org>
47930
47931	Merge from origin/emacs-26
47932
47933	3f4b8e9 * src/data.c (Fmake_local_variable): Fix bug#34318
47934	b384996 Minor fixes in ELisp manual wrt syntax-table properties
47935	71fc6d2 * admin/notes/emba: New file.
47936	3aaa2d2 Fix Hunspell invocation for discovering its dictionaries
47937
47938	# Conflicts:
47939	#	test/src/data-tests.el
47940
479412019-02-15  Stefan Monnier  <monnier@iro.umontreal.ca>
47942
47943	* lisp/progmodes/compile.el: Remove redundant :groups
47944
47945	(compilation-shell-minor-mode, compilation-minor-mode): Use :lighter
47946	rather than the old positional args.
47947	(compilation-next-error): Make "No error here" into a user-error.
47948
479492019-02-15  Eli Zaretskii  <eliz@gnu.org>
47950
47951	Make ls-lisp.el behave like Posix hosts when directory doesn't exist
47952
47953	* lisp/ls-lisp.el (ls-lisp-insert-directory): For a directory
47954	that cannot be accessed, signal an error, like insert-directory
47955	does on Posix systems.  This causes files-tests.el to pass on
47956	MS-Windows.
47957
479582019-02-15  Eli Zaretskii  <eliz@gnu.org>
47959
47960	Support ~USER for some names on MS-Windows
47961
47962	* src/w32.c (getpwnam): Support usernames provided through
47963	LOGNAME or USERNAME environment variables, to mimic what
47964	editfns.c:init_editfns does.
47965
479662019-02-15  Alex Branham  <alex.branham@gmail.com>
47967
47968	Add basic conf-mode tests
47969
47970	* test/lisp/textmodes/conf-mode-tests.el: New file with tests for
47971	conf-mode.  Mostly taken from conf-mode docstrings.  (Bug#34419)
47972
479732019-02-15  Alex Branham  <alex.branham@gmail.com>
47974
47975	Use lexical binding for conf-mode
47976
47977	* lisp/textmodes/conf-mode.el: Use lexical binding.
47978	(conf-align-assignments, conf-quote-normal, conf-mode-initialize):
47979	Doc fix.  (Bug#34419)
47980
479812019-02-15  Eli Zaretskii  <eliz@gnu.org>
47982
47983	Add documentation for last change in eww.el
47984
47985	* doc/misc/eww.texi (Basics): Document the prefix arg effect
47986	on "M-x eww".  (Bug#34374)
47987
47988	* etc/NEWS: Mention the change in behavior of 'eww'.
47989
479902019-02-15  İ. Göktuğ Kayaalp  <self@gkayaalp.com>
47991
47992	* lisp/net/eww.el (eww): With prefix arg, open url in new buffer.
47993
47994	Bug#34374
47995
479962019-02-14  João Távora  <joaotavora@gmail.com>
47997
47998	Change scoring strategy for 'flex' completion style
47999
48000	The previous strategy had problems comparing scores of matches to
48001	strings of different lengths.  This one seems slightly more sensible,
48002	and uses a new constant `flex-score-match-tightness' instead of the
48003	more abstract `flex-score-falloff'.
48004
48005	It's not completely without problems, and I think it shouldn't count
48006	"holes" at the front and at the back, but that needs a different
48007	"pattern-to-regexp" conversion in completion-pcm--hilit-commonality.
48008
48009	(defun test ()
48010	  (mapcar (lambda (a)
48011	            (cons (substring-no-properties a)
48012	                  (get-text-property 0 'completion-score a)))
48013	          (sort (completion-pcm--hilit-commonality
48014	                  '(prefix "f" star "o" star "o" point)
48015	                  '("foo"
48016	                    "barfoobaz"
48017	                    "foobarbaz"
48018	                    "barbazfoo"
48019	                    "fabrobazo"
48020	                    "foot"
48021	                    "foto"
48022	                    "fotttttttttttttttttttttttto"))
48023	      (lambda (a b)
48024	        (> (get-text-property 0 'completion-score a)
48025	           (get-text-property 0 'completion-score b))))))
48026
48027	(let ((flex-score-match-tightness 100)) (test))
48028	=> (("foo" . 1.0)
48029	    ("foot" . 0.375)
48030	    ("foto" . 0.375)
48031	    ("foobarbaz" . 0.16260162601626016) ;; one hole
48032	    ("barbazfoo" . 0.16260162601626016) ;; one hole
48033	    ("barfoobaz" . 0.10964912280701755) ;; two holes
48034	    ("fabrobazo" . 0.10964912280701755) ;; two holes
48035	    ("fotttttttttttttttttttttttto" . 0.04982561036372696))
48036
48037	(let ((flex-score-match-tightness 0.1)) (test))
48038	=> (("foo" . 1.0)
48039	    ("foot" . 0.375)
48040	    ("foto" . 0.375)
48041	    ("barfoobaz" . 0.007751937984496124) ;; two holes
48042	    ("fabrobazo" . 0.007751937984496124) ;; two holes
48043	    ("foobarbaz" . 0.00641025641025641)  ;; one hole
48044	    ("barbazfoo" . 0.00641025641025641)  ;; one hole
48045	    ("fotttttttttttttttttttttttto" . 0.0004789272030651341))
48046
48047	* lisp/minibuffer.el (flex-score-falloff): Rename to
48048	flex-score-match-tightness.
48049	(completion-pcm--hilit-commonality): Update function.
48050
480512019-02-14  Mattias Engdegård  <mattiase@acm.org>
48052
48053	Add categories L, R, SPC and . to `rx' doc string
48054
48055	* lisp/emacs-lisp/rx.el (rx): Add new categories to doc string.
48056
480572019-02-14  Mattias Engdegård  <mattiase@acm.org>
48058
48059	Use lexical-binding in rx.el
48060
48061	* lisp/emacs-lisp/rx.el: Use lexical-binding.
48062	(rx-form): Use `let' to bind the dynamic variable `rx-parent' instead
48063	of binding it as an argument.
48064
480652019-02-14  João Távora  <joaotavora@gmail.com>
48066
48067	* lisp/minibuffer.el (completion-styles-alist): Tweak flex's docstring
48068
480692019-02-14  Michael Albinus  <michael.albinus@gmx.de>
48070
48071	Adapt tramp-adb-handle-set-file-times
48072
48073	* lisp/net/tramp-adb.el (tramp-adb-handle-set-file-times):
48074	Use 'touch -d', 'touch -t' does not seem to work.  Use Universal Time.
48075
480762019-02-13  Dmitry Gutov  <dgutov@yandex.ru>
48077
48078	Rename project-query-replace to project-query-replace-regexp
48079
48080	* lisp/progmodes/project.el (project-query-replace): Rename to
48081	project-query-replace-regexp.
48082
480832019-02-13  Gregor Zattler  <telegraph@gmx.net>
48084
48085	* doc/misc/eshell.texi (Built-ins): Fix alias description
48086
48087	Dear eamcs developers, eshells current documentation first states
48088	that alias definitions are not saved to an alias file, later that
48089	they are saved to an alias file.  I tested it and the latter is
48090	correct.
48091
48092	Please find attached a patch which fixes this.
48093
48094	Thanks for working on emacs which is really great, Gregor
48095
48096	>From 1fe51cc769ab7a30d0896fb3d6105c0561243fa7 Mon Sep 17 00:00:00 2001
48097	From: Gregor Zattler <telegraph@gmx.net>
48098	Date: Wed, 13 Feb 2019 20:19:38 +0100
48099	Subject: * doc/misc/eshell.texi (Built-ins): Fix alias description.
48100
48101	Bring description of built-in 'alias' in line with (info "(eshell) Aliases"),
48102	which describes the actual behaviur.
48103
481042019-02-13  Paul Eggert  <eggert@cs.ucla.edu>
48105
48106	Add missing dependency to ucs-normalize.el
48107
48108	* lisp/international/ucs-normalize.el:
48109	Require regexp-opt when compiling.  Problem reported by hx in:
48110	https://lists.gnu.org/r/emacs-devel/2019-02/msg00334.html
48111
481122019-02-13  João Távora  <joaotavora@gmail.com>
48113
48114	Score flex-style completions according to match tightness
48115
48116	The new completion style needs to score completion matches so that we
48117	can use it later on when sorting the completions.  This is because
48118	"foo" can flex-match "foobar", "frodo" and "barfromsober" but we
48119	probably want "foobar" to appear at the top of the completion list.
48120
48121	This change introduces a scoring formula and adds scoring hints in the
48122	candidate string's `completion-score' property.
48123
48124	* lisp/minibuffer.el (completion-pcm--hilit-commonality): Propertize
48125	completion with 'completion-score
48126	(flex-score-falloff): New variable.
48127
481282019-02-13  João Távora  <joaotavora@gmail.com>
48129
48130	Add a new 'flex' completion style
48131
48132	* lisp/minibuffer.el (completion-styles-alist): Add flex.
48133	(completion-substring--all-completions): Accept
48134	transform-pattern-fn arg.
48135	(completion-flex-all-completions, completion-flex-try-completion)
48136	(completion-flex--make-flex-pattern): New functions.
48137
481382019-02-13  Eli Zaretskii  <eliz@gnu.org>
48139
48140	Avoid crashes upon C-g in nested invocations of 'read_char'
48141
48142	* src/keyboard.c (read_char, read_event_from_main_queue):
48143	Ensure the global value of getcjmp is restored when the stack
48144	is unwound by the likes of 'throw', by calling
48145	record_unwind_protect_ptr instead of restoring the value
48146	manually.  (Bug#34394)
48147	(restore_getcjmp): Argument is now 'void *', to match the
48148	signature of record_unwind_protect_ptr.
48149
481502019-02-13  Paul Eggert  <eggert@cs.ucla.edu>
48151
48152	Don’t assume CURRENT_TIME_LIST
48153
48154	* lisp/progmodes/cc-cmds.el (c-progress-init)
48155	(c-progress-update):
48156	* lisp/progmodes/cperl-mode.el (cperl-time-fontification):
48157	* lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
48158	(vhdl-fix-case-region-1):
48159	Don’t assume (current-time) returns a list.
48160	Fix unlikely bug if we’re called 65536 seconds apart.
48161
481622019-02-13  Paul Eggert  <eggert@cs.ucla.edu>
48163
48164	Don’t assume CURRENT_TIME_LIST
48165
48166	* lisp/url/url-util.el (url-lazy-message):
48167	Don’t assume (current-time) returns a list.
48168	Fix unlikely bug if we’re called 65536 seconds apart.
48169
481702019-02-12  Paul Eggert  <eggert@cs.ucla.edu>
48171
48172	Simplify nnspool-request-newgroups arithmetic
48173
48174	* lisp/gnus/nnspool.el (nnspool-request-newgroups):
48175	Simplify by compute time stamps as integers, not floats,
48176	since integers don’t overflow any more.
48177
481782019-02-12  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
48179	    Felipe Ochoa  <felipe@fov.space>
48180
48181	Indent arrows’ expression bodies like function bodies (Bug#25904)
48182
48183	* lisp/progmodes/js.el (js--continued-expression-p): Don’t confuse
48184	‘=>’ for a ‘>’ operator.
48185	(js--line-terminating-arrow-re): New variable.
48186	(js--looking-at-broken-arrow-function-p): New function.
48187	(js--proper-indentation): Don’t align arrow functions’ expression
48188	bodies starting on new lines like list continuations, instead align
48189	them like function bodies (js-indent-align-list-continuation need not
48190	be nil).
48191
48192	* test/manual/indent/js.js: Add test for Bug#25904.
48193
481942019-02-12  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
48195
48196	js-indent-align-list-continuation: Make variable safe
48197
48198	* lisp/progmodes/js.el (js-indent-align-list-continuation): Indicate
48199	variable is safe as a file-local variable.  This fixes the
48200	js-indent-align-list-continuation-nil test when run with make.
48201
482022019-02-12  Paul Eggert  <eggert@cs.ucla.edu>
48203
48204	Make xterm-mouse-truncate-wrap obsolete
48205
48206	* lisp/xt-mouse.el (xterm-mouse-truncate-wrap): Now obsolete,
48207	since we no longer need to worry about integer overflow.
48208	(xterm-mouse-event): Use plain ‘truncate’ instead.
48209
482102019-02-12  Glenn Morris  <rgm@gnu.org>
48211
48212	* admin/notes/hydra: Small updates.
48213
482142019-02-11  Mattias Engdegård  <mattiase@acm.org>
48215
48216	Add missing categories L, R, . and SPC to rx
48217
48218	* lisp/emacs-lisp/rx.el (rx-categories):
48219	Add missing categories L, R, . and SPC.  (Bug#34436)
48220
482212019-02-11  Paul Eggert  <eggert@cs.ucla.edu>
48222
48223	Simplify url-digest-auth-make-cnonce
48224
48225	* lisp/url/url-auth.el (url-digest-auth-make-cnonce):
48226	Simplify by using encode-time instead of round-tripping
48227	through a format-time-string and ‘read’.
48228
482292019-02-10  Paul Eggert  <eggert@cs.ucla.edu>
48230
48231	Don’t assume CURRENT_TIME_LIST
48232
48233	Use timestamp accessors instead of delving into a timestamp
48234	format that is planned to change in a future version.
48235	* lisp/find-lisp.el (find-lisp-format-time):
48236	* lisp/gnus/gnus-group.el (gnus-group-set-timestamp):
48237	* lisp/gnus/gnus-icalendar.el (gnus-icalendar-show-org-agenda):
48238	Use encode-time instead of delving into timestamp format.
48239	* lisp/gnus/gnus-group.el (gnus-group-timestamp-delta):
48240	Use float-time instead of delving into timestamp format.
48241	* lisp/gnus/nnmaildir.el (nnmaildir-request-accept-article):
48242	Use format-time-string instead of delving into timestamp format.
48243	* lisp/gnus/nnmaildir.el (nnmaildir-request-expire-articles):
48244	Use time-less-p instead of delving into timestamp format.
48245	* lisp/ido.el (ido-wash-history, ido-file-name-all-completions):
48246	Use time-equal-p instead of delving into timestamp format.
48247	* lisp/net/tramp-adb.el (tramp-adb-handle-set-file-times):
48248	Use format-time-string to generate POSIX ‘test -t’ format instead
48249	of timestamp-format-dependent code along with shell arithmetic
48250	that can’t possibly do the right thing on a POSIX platform.
48251
482522019-02-10  Paul Eggert  <eggert@cs.ucla.edu>
48253
48254	Simplify use of encode-time
48255
48256	Most uses of (apply #'encode-time foo) can now be replaced
48257	with (encode-time foo).  Make similar simplifications.
48258	* lisp/calendar/time-date.el (date-to-time):
48259	* lisp/calendar/timeclock.el (timeclock-when-to-leave)
48260	(timeclock-day-base, timeclock-generate-report):
48261	* lisp/emacs-lisp/timer.el (timer-set-idle-time):
48262	* lisp/eshell/esh-util.el (eshell-parse-ange-ls):
48263	* lisp/gnus/gnus-art.el (article-make-date-line):
48264	* lisp/gnus/gnus-delay.el (gnus-delay-article)
48265	(gnus-delay-send-queue):
48266	* lisp/gnus/gnus-icalendar.el (gnus-icalendar-event--decode-datefield):
48267	* lisp/gnus/gnus-logic.el (gnus-advanced-date):
48268	* lisp/gnus/message.el (message-make-expires-date):
48269	* lisp/gnus/nndiary.el (nndiary-compute-reminders):
48270	* lisp/mail/ietf-drums.el (ietf-drums-parse-date):
48271	* lisp/net/tramp-adb.el (tramp-adb-ls-output-time-less-p):
48272	* lisp/org/org-agenda.el (org-agenda-get-timestamps)
48273	(org-agenda-get-progress, org-agenda-show-clocking-issues):
48274	* lisp/org/org-capture.el (org-capture-set-target-location):
48275	* lisp/org/org-clock.el (org-clock-get-sum-start, org-clock-sum)
48276	(org-clocktable-steps):
48277	* lisp/org/org-colview.el (org-colview-construct-allowed-dates)
48278	* lisp/org/org-macro.el (org-macro--vc-modified-time):
48279	* lisp/org/org-table.el (org-table-eval-formula):
48280	* lisp/org/org.el (org-current-time, org-store-link)
48281	(org-time-today, org-read-date, org-read-date-display)
48282	(org-display-custom-time, org-time-string-to-time)
48283	(org-timestamp-change, org-timestamp--to-internal-time):
48284	* lisp/url/url-dav.el (url-dav-process-date-property):
48285	* lisp/vc/vc-cvs.el (vc-cvs-annotate-current-time)
48286	(vc-cvs-parse-entry):
48287	Simplify use of encode-time.
48288	* lisp/org/org-clock.el (org-clock-get-clocked-time):
48289	(org-clock-resolve, org-resolve-clocks, org_clock_out)
48290	(org-clock-update-time-maybe):
48291	Avoid some rounding problems with encode-time and float-time.
48292	* lisp/org/org-clock.el (org-clock-in, org-clock-update-time-maybe):
48293	* lisp/org/org-colview.el (org-columns--age-to-minutes):
48294	* lisp/org/org.el (org-get-scheduled-time, org-get-deadline-time)
48295	(org-add-planning-info, org-2ft, org-time-string-to-absolute)
48296	(org-closest-date):
48297	Use org-time-string-to-time instead of doing it by hand with
48298	encode-time.
48299	* lisp/org/org.el (org-current-time): Simplify rounding.
48300	(org-read-date): Avoid extra trip through encode-time.
48301
483022019-02-10  Paul Eggert  <eggert@cs.ucla.edu>
48303
48304	Fix doc string treatment of integer overflow
48305
48306	* lisp/calendar/cal-dst.el (calendar-dst-find-startend):
48307	Fix doc string.
48308
483092019-02-10  Paul Eggert  <eggert@cs.ucla.edu>
48310
48311	Prefer encode-time to its alias
48312
48313	* lisp/calendar/icalendar.el, lisp/calendar/timeclock.el:
48314	* lisp/emacs-lisp/timer.el, lisp/gnus/gnus-delay.el:
48315	* lisp/gnus/gnus-sum.el, lisp/gnus/nndiary.el:
48316	* lisp/gnus/nnrss.el, lisp/net/newst-backend.el:
48317	* lisp/net/rcirc.el, lisp/obsolete/xesam.el:
48318	* lisp/org/org-agenda.el, lisp/org/org-clock.el:
48319	* lisp/org/org-element.el, lisp/org/org-timer.el:
48320	* lisp/org/org.el, lisp/progmodes/flymake.el:
48321	* lisp/url/url-cache.el, lisp/url/url-cookie.el:
48322	Use encode-time instead of its alias seconds-to-time.
48323
483242019-02-10  Stefan Monnier  <monnier@iro.umontreal.ca>
48325
48326	* test/lisp/emacs-lisp/package-tests.el: Allow extra extras
48327
48328	(package-test--compatible-p): New function.
48329	(package-test-desc-from-buffer, package-test-install-single): Use it.
48330	(package-x-test-upload-buffer, package-x-test-upload-new-version):
48331	Don't burp in presence of extra extras.
48332
483332019-02-10  Mattias Engdegård  <mattiase@acm.org>
48334
48335	Document that [:cntrl:] does not match DEL (Bug#34391)
48336
48337	* doc/lispref/searching.texi (Character Classes):
48338	* lisp/emacs-lisp/rx.el (rx):
48339	Document that [:cntrl:] excludes DEL.
48340	* test/src/regex-emacs-tests.el (regex-tests-PTESTS-whitelist):
48341	Swap misplaced comments and fix wrong code for DEL.
48342
483432019-02-10  João Távora  <joaotavora@gmail.com>
48344
48345	Properly remove stale Flymake diagnostics on :region reports
48346
48347	Among other bugs fixed, modifying a list structure while iterating it
48348	is a no-no.  This would again cause duplicate diagnostics.  See
48349	https://github.com/joaotavora/eglot/issues/223 for an example.
48350
48351	* lisp/progmodes/flymake.el (Version): Bump to 1.0.5
48352	(flymake--handle-report): Use cl-loop.
48353
483542019-02-10  Eli Zaretskii  <eliz@gnu.org>
48355
48356	Unbreak the Cygw32 build
48357
48358	* src/emacs.c (main) [HAVE_NTGUI]: Remove code that is only
48359	for WINDOWSNT or condition it on WINDOWSNT.  (Bug#34409)
48360
483612019-02-10  João Távora  <joaotavora@gmail.com>
48362
48363	Cleanup stale diagnostics on Flymake restart
48364
48365	Not doing so would cause duplicate diagnostics.  See
48366	https://github.com/joaotavora/eglot/issues/223 for an example.
48367
48368	* lisp/progmodes/flymake.el (Version): 1.0.4
48369	(flymake-mode): Cleanup overlays before starting Flymake.
48370
483712019-02-09  Paul Eggert  <eggert@cs.ucla.edu>
48372
48373	* lisp/ecomplete.el (ecomplete-add-item): Simplify.
48374
483752019-02-09  Paul Eggert  <eggert@cs.ucla.edu>
48376
48377	Don’t assume CURRENT_TIME_LIST
48378
48379	* lisp/gnus/gnus-delay.el (gnus-delay-send-queue):
48380	* lisp/gnus/nnmail.el (nnmail-activate):
48381	* lisp/mh-e/mh-alias.el (mh-alias-tstamp):
48382	* lisp/net/newst-backend.el (newsticker--cache-item-compare-by-time):
48383	Use time-less-p instead of assuming timestamp format.
48384
483852019-02-08  Alex Branham  <alex.branham@gmail.com>
48386
48387	Fix byte compile warnings in checkdoc.el
48388
48389	* lisp/emacs-lisp/checkdoc.el (checkdoc-file-comments-engine): Fix
48390	  byte compile warnings by requiring lisp-mnt top-level, remove XEmacs
48391	  compatibility code.
48392
48393	Bug#34290
48394
483952019-02-08  Tassilo Horn  <tsdh@gnu.org>
48396
48397	Impl. json-pretty-print with replace-region-contents + minimization
48398
48399	* lisp/json.el (json-pretty-print): Use the new
48400	  replace-region-contents.  Add prefix arg for minimzation.
48401	(json-pretty-print-buffer): Add prefix arg for minimzation.
48402	(json-pretty-print-buffer-ordered): Add prefix arg for minimzation.
48403	(json-pretty-print-ordered): Add prefix arg for minimzation.
48404
484052019-02-08  Tassilo Horn  <tsdh@gnu.org>
48406
48407	Add new function replace-buffer-contents
48408
48409	* src/editfns.c (Freplace_buffer_contents): Use lower value of
48410	  too_expensive and enable heuristic.
48411	* lisp/subr.el (replace-region-contents): New convenient wrapper
48412	  function around replace-buffer-contents.
48413
484142019-02-08  Stefan Monnier  <monnier@iro.umontreal.ca>
48415
48416	* lisp/emacs-lisp/package.el: Improve generated foo-pkg.el
48417
48418	(package-generate-description-file): Make first line more informative.
48419	(package-buffer-info): Include keywords, to more closely match
48420	elpa.git's archive--metadata.
48421
484222019-02-08  Glenn Morris  <rgm@gnu.org>
48423
48424	Merge from origin/emacs-26
48425
48426	0cd7b52 (origin/emacs-26) Minor improvements to do strings in callproc.c
48427	b8c7017 Improve documentation of 'date-to-time' and 'parse-time-string'
48428	46095a7 Fix downloading of URLs that end in a slash
48429	3b60a0a * doc/misc/eww.texi (Basics): Fix eww keybindings.  (Bug#34291)
48430	8e22025 Fix process-thread docstring
48431	459b669 Fix failures of vc-find-revision with non-ASCII file names
48432	e9ff190 * doc/lispref/tips.texi (Documentation Tips): Fix quotes.  (B...
48433	3e49a08 ; * src/coding.h (struct coding_system): Fix a typo in a comm...
48434	b657286 Add documentation for tabulated-list functions in the elisp m...
48435	6e0f67b Fix URL in ucs-normalize.el
48436	ce3ae1f * etc/PROBLEMS: Amend entry for profiler bug #34235 to mentio...
48437
48438	# Conflicts:
48439	#	doc/lispref/os.texi
48440
484412019-02-08  Glenn Morris  <rgm@gnu.org>
48442
48443	Merge from origin/emacs-26
48444
48445	9d87ba1 * etc/PROBLEMS: Mention profiler-report bug (Bug#34235).
48446
484472019-02-08  Robert Pluim  <rpluim@gmail.com>
48448
48449	Unify three font info structures
48450
48451	* src/ftfont.h (struct font_info): New type, unifies similar types
48452	from ftcrfont.c, ftfont.c and xftfont.c
48453	* src/xftfont.c (struct xftfont_info): Remove, replace with struct
48454	font_info.  Adjust all uses.
48455	* src/ftcrfont.c (struct ftcrfont_info): Likewise.
48456	* src/ftfont.c (struct ftfont_info): Likewise.
48457
48458	(cherry picked from commit 9e0d69b5a17a0fa3b0dd099a51584a85f3ddb5bf)
48459
484602019-02-08  Robert Pluim  <rpluim@gmail.com>
48461
48462	Unify three font info structures
48463
48464	* src/ftfont.h (struct font_info): New type, unifies similar types
48465	from ftcrfont.c, ftfont.c and xftfont.c
48466	* src/xftfont.c (struct xftfont_info): Remove, replace with struct
48467	font_info.  Adjust all uses.
48468	* src/ftcrfont.c (struct ftcrfont_info): Likewise.
48469	* src/ftfont.c (struct ftfont_info): Likewise.
48470
484712019-02-07  Eli Zaretskii  <eliz@gnu.org>
48472
48473	Minor fixes for last change
48474
48475	* etc/NEWS: Announce the change in EWW download behavior.
48476
48477	* lisp/net/eww.el (eww-download): Doc fix.  (Bug#34291)
48478
484792019-02-07  Nick Drozd  <nicholasdrozd@gmail.com>
48480
48481	Download of URL in EWW falls back on current URL
48482
48483	* lisp/net/eww.el (eww-download): If there's no URL at point,
48484	download the current URL instead.  Previous behavior was to
48485	signal an error if there was no URL at point.  (Bug#34291)
48486	* doc/misc/eww.texi (Basics): Update documentation.
48487
484882019-02-07  Eli Zaretskii  <eliz@gnu.org>
48489
48490	Minor fix for unexec builds.
48491
48492	* src/emacs.c (main): Fix assertions and logic for pdump
48493	loading in builds that can both unexec and pdump.
48494
484952019-02-07  Eli Zaretskii  <eliz@gnu.org>
48496
48497	Avoid segfaults on MS-Windows in enexec'ed Emacs
48498
48499	* src/emacs.c (main) [WINDOWSNT]: Fix logic of using dynamic
48500	heap in unexec case.  (Bug#34277)
48501
485022019-02-07  Dmitry Gutov  <dgutov@yandex.ru>
48503
48504	Avoid unnecessary consing in project--files-in-directory
48505
48506	* lisp/progmodes/project.el (project--remote-file-names): New function.
48507	(project--files-in-directory): Use it.
48508
485092019-02-07  Ian Dunn  <dunni@gnu.org>
48510
48511	Add vc-hg-revert-switches
48512
48513	* lisp/vc/vc-hg.el (vc-hg-revert-switches): New option.
48514	(vc-hg-revert): Use it.
48515
485162019-02-07  Dmitry Gutov  <dgutov@yandex.ru>
48517
48518	Rename multifile.el to fileloop.el
48519
48520	* lisp/multifile.el: Rename to fileloop.el as discussed in
48521	https://lists.gnu.org/archive/html/emacs-devel/2018-12/msg00475.html.
48522	Update symbol prefixes and all callers
48523
485242019-02-07  Aurelien Aptel  <aaptel@suse.com>
48525
48526	Revert "Fix typo in add-hook doc string"
48527
48528	This reverts commit 7fd2ad755e7fa599697648ac4c971e834de75bf3.
48529
485302019-02-06  Juri Linkov  <juri@linkov.net>
48531	    João Távora  <joaotavora@gmail.com>
48532
48533	Make window choice in xref commands configurable
48534
48535	Previously, it wasn't easy to tell xref.el commands like
48536	xref-find-definitions or xref-find-definitions-other-window how to
48537	choose a window for the *xref* buffer or how to find windows for
48538	displaying the results after choosing a candidate.  This patch makes
48539	that task easier, but keeps the current behaviour intact.
48540
48541
48542	* lisp/progmodes/xref.el (xref--show-pos-in-buf): Simplify.
48543
485442019-02-06  Robert Pluim  <rpluim@gmail.com>
48545
48546	Add dwim function for inserting @ref variants
48547
48548	* lisp/textmodes/texinfo.el (texinfo-insert-dwim-@ref): New function.
48549	Insert @ref variant based on surrounding context.
48550	(texinfo-mode-map): Add binding for texinfo-insert-dwim-@ref.
48551
48552	* etc/NEWS: Describe new texinfo dwim reference functionality.
48553
485542019-02-06  Aurelien Aptel  <aaptel@suse.com>
48555
48556	Fix typo in add-hook doc string
48557
48558	* lisp/subr.el (add-hook): fix typo in doc string.
48559
485602019-02-06  Eli Zaretskii  <eliz@gnu.org>
48561
48562	Unbreak interactive invocation of temacs on MS-Windows
48563
48564	* src/emacs.c (main) [WINDOWSNT]: Allow to invoke temacs
48565	interactively without the --temacs= option.
48566
485672019-02-06  Eli Zaretskii  <eliz@gnu.org>
48568
48569	Prevent segfaults when running inside docker
48570
48571	* src/coding.c (syms_of_coding): New symbol Qus_ascii.
48572	(reset_coding_after_pdumper_load): Call
48573	set-safe-terminal-system-internal to set up
48574	safe_terminal_coding after restoring from pdump file.
48575	Reported by Philippe Vaucher <philippe.vaucher@gmail.com>.
48576
485772019-02-06  Michael Albinus  <michael.albinus@gmx.de>
48578
48579	Fix Bug#34196
48580
48581	* lisp/autorevert.el (auto-revert-buffers): Handle buffers with a
48582	remote default-directory only, when they are connected.  (Bug#34196)
48583
48584	* lisp/net/tramp-rclone.el (tramp-rclone-maybe-open-connection):
48585	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-maybe-open-connection):
48586	Set "connected" property.
48587
48588	* lisp/net/tramp.el (tramp-process-actions): Revert change from
48589	2019-02-04.  Bug#34196 will be solved in autorevert.el.
48590
485912019-02-05  Robert Pluim  <rpluim@gmail.com>
48592
48593	Fix network stream tests
48594
48595	* test/lisp/net/network-stream-tests.el
48596	(make-ipv6-tcp-server-with-unspecified-port): Skip if IPv6 is not available.
48597	(make-ipv6-tcp-server-with-specified-port): Likewise.
48598	(echo-server-with-local-ipv6): Likewise.
48599
486002019-02-04  Glenn Morris  <rgm@gnu.org>
48601
48602	* make-dist: Prefer a temporary manifest file.
48603
48604	This prevents the manifest cluttering up the build tree,
48605	and possibly getting stale if --no-update is used.
48606
486072019-02-04  Eli Zaretskii  <eliz@gnu.org>
48608
48609	Avoid segfaults due to image cache being cleared during redisplay
48610
48611	* src/xdisp.c (redisplay_internal): Set the
48612	inhibit_clear_image_cache flag of a frame while its windows
48613	are being redisplayed, and reset the flag after the call top
48614	update_frame returns.
48615	* src/image.c (clear_image_cache): Do nothing if the frame's
48616	inhibit_clear_image_cache flag is set.  (Bug#34256)
48617	* src/frame.h (struct frame): New flag inhibit_clear_image_cache.
48618
486192019-02-04  Robert Pluim  <rpluim@gmail.com>
48620
48621	Don't map imaps to 993 anymore except on old Windows versions
48622
48623	'open-network-stream' will do the imaps service lookup itself, and
48624	using 993 forced the user to use the numeric value in .authinfo for
48625	certificate lookups.
48626
48627	* lisp/gnus/nnimap.el (nnimap-map-port): Only do mapping for Windows
48628	XP or earlier.
48629	* etc/NEWS: Describe imaps mapping change.
48630
486312019-02-04  Eli Zaretskii  <eliz@gnu.org>
48632
48633	Support (locale-info 'paper) on MS-Windows
48634
48635	* src/w32proc.c (LOCALE_IPAPERSIZE): Define if undefined.
48636	(nl_langinfo): Support _NL_PAPER_WIDTH and _NL_PAPER_HEIGHT
48637	like glibc does.
48638	* src/fns.c (Flocale_info): Update the doc string.
48639
48640	* nt/inc/langinfo.h: Add _NL_PAPER_WIDTH and _NL_PAPER_HEIGHT
48641	to the enumeration.
48642	(_NL_PAPER_WIDTH, _NL_PAPER_HEIGHT): Define namesake macros.
48643	* nt/mingw-cfg.site (emacs_cv_langinfo__nl_paper_width): Set
48644	to 'yes'.
48645
48646	* doc/lispref/nonascii.texi (Locales): Update the
48647	documentation of 'locale-info' for the argument of 'paper'.
48648
48649	* etc/NEWS: Update the locale-info entry.
48650
486512019-02-04  Federico Tedin  <federicotedin@gmail.com>
48652
48653	Allow doc-view to open password-protected PDF files (bug#33684)
48654
48655	* lisp/doc-view.el (doc-view-ghostscript-options): Removed "-sDEVICE"
48656	option.
48657	(doc-view-ghostscript-device): New customizable variable, passed as
48658	"-sDEVICE" option to GhostScript.
48659	(doc-view-pdf-password-protected-ghostscript-p): New function.
48660	(doc-view-pdf->png-converter-ghostscript): Can now open
48661	password-protected PDF files.
48662	(doc-view-pdfdraw-program-subcommand): New function.
48663	(doc-view-pdf-password-protected-pdfdraw-p): New function.
48664	(doc-view-pdf->png-converter-mupdf): Can now open password-protected
48665	PDF files.
48666	* etc/NEWS: Mention new doc-view-mode feature.
48667
486682019-02-04  Michael Albinus  <michael.albinus@gmx.de>
48669
48670	Fix Bug#34196
48671
48672	* lisp/net/tramp.el (tramp-process-actions): Disable `global-auto-revert-mode'
48673	temporarily.  (Bug#34196)
48674
486752019-02-04  Michael Albinus  <michael.albinus@gmx.de>
48676
48677	Improve Tramp host name completion
48678
48679	* lisp/net/tramp-rclone.el (tramp-default-host-alist): Add empty host.
48680
48681	* lisp/net/tramp.el (tramp-parse-auth-sources): Require :port.
48682
486832019-02-04  Robert Pluim  <rpluim@gmail.com>
48684
48685	Use IPv6 localhost when family is 'ipv6
48686
48687	This fixes Bug#34193
48688
48689	* src/process.c (Fmake_network_process): Explicitly use ::1 when
48690	using IPv6 with 'local.  Update docstring.
48691
48692	* test/lisp/net/network-stream-tests.el
48693	(make-ipv6-tcp-server-with-unspecified-port):
48694	(make-ipv6-tcp-server-with-specified-port): Test creating ipv6
48695	local server.
48696	(make-server): Add optional family argument, default ipv4
48697	(echo-server-with-local-ipv4): Test connecting to 'local ipv4
48698	(echo-server-with-local-ipv6): Test connecting to 'local ipv6
48699
48700	* doc/lispref/processes.texi (Network Processes): Describe
48701	behavior when using 'local.
48702
48703	* etc/NEWS: Document new 'make-network-process' behavior when
48704	connecting to 'local with ipv6.
48705
487062019-02-03  Juri Linkov  <juri@linkov.net>
48707
48708	* lisp/tar-mode.el (tar-extract): Call tar--try-jka-compr (bug#34251)
48709
48710	* lisp/tar-mode.el (tar--try-jka-compr): New function copied from
48711	archive-try-jka-compr.
48712
48713	* lisp/arc-mode.el (archive-try-jka-compr): Set buffer-multibyte to t
48714	instead of let-binding coding-system-for-read to 'no-conversion.
48715
48716	* test/data/decompress/tg.tar.gz:
48717	* test/data/decompress/zg.zip: New fixtures.
48718
48719	* test/lisp/arc-mode-tests.el (arc-mode-test-zip-extract-gz):
48720	* test/lisp/tar-mode-tests.el (tar-mode-test-tar-extract-gz): New tests.
48721
48722	* test/lisp/vc/diff-mode-tests.el (diff-mode-test-font-lock)
48723	(diff-mode-test-font-lock-syntax-one-line): Skip unless shell and
48724	diff executables are found.
48725
487262019-02-03  Michael Albinus  <michael.albinus@gmx.de>
48727
48728	Work on accept-process-output in Tramp
48729
48730	* lisp/net/tramp.el (tramp-accept-process-output): Rework timer
48731	handling.
48732	(tramp-call-process): Adapt VEC if nil.
48733	(tramp-interrupt-process): Use `tramp-accept-process-output'.
48734	(tramp-process-lines): New defun.
48735	* lisp/net/tramp-adb.el (tramp-adb-parse-device-names):
48736	* lisp/net/tramp-rclone.el (tramp-rclone-parse-device-names): Use it.
48737
48738	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
48739	Use timeout 0 in `tramp-accept-process-output'.
48740
48741	* test/lisp/net/tramp-tests.el (tramp--test-timeout-handler): Move up.
48742	(tramp-test29-start-file-process, tramp-test30-make-process)
48743	(tramp-test32-shell-command)
48744	(tramp--test-shell-command-to-string-asynchronously): Use it.
48745	(tramp-test35-remote-path): Suppress warning.
48746	(tramp--test-asynchronous-requests-timeout): New defconst.
48747	(tramp-test43-asynchronous-requests): Skip if not the only test.
48748	Use `tramp--test-asynchronous-requests-timeout'.
48749	Remove instrumentation.  Use `start-process-shell-command' for
48750	watchdog.  Add timeout in timer function.  Print status messages.
48751	Remove file operations from sentinel.  Suppress timers in
48752	`accept-process-output'.
48753
487542019-02-02  Paul Eggert  <eggert@cs.ucla.edu>
48755
48756	Support (locale-info 'paper) on GNU platforms
48757
48758	* configure.ac (HAVE_LANGINFO__NL_PAPER_WIDTH): New macro.
48759	* src/fns.c (Flocale_info) [HAVE_LANGINFO__NL_PAPER_WIDTH]:
48760	Get paper width and height from locale.
48761
487622019-02-02  Juri Linkov  <juri@linkov.net>
48763
48764	* test/lisp/vc/diff-mode-tests.el (diff-mode-test-font-lock): New test.
48765
48766	(diff-mode-test-font-lock-syntax-one-line): New test for one line.
48767
48768	* test/data/vc/diff-mode/hello_world.c:
48769	* test/data/vc/diff-mode/hello_world_1.c:
48770	* test/data/vc/diff-mode/hello_emacs.c:
48771	* test/data/vc/diff-mode/hello_emacs_1.c: New fixtures.
48772
48773	* lisp/vc/diff-mode.el (diff-syntax-fontify): Move remove-overlays
48774	from diff-syntax-fontify-hunk.  (Bug#33567)
48775	(diff-syntax-fontify-hunk): Remove VISIT arg from insert-file-contents.
48776
487772019-02-02  Paul Eggert  <eggert@cs.ucla.edu>
48778
48779	Update from Gnulib
48780
48781	This incorporates:
48782	2019-02-02 dtoastr, ftoastr, ldtoastr: port to c-strtod changes
48783	2019-02-01 c-strtod, c-strtold: use the bug fixes
48784	2019-01-30 strtold: New module
48785	* doc/misc/texinfo.tex, lib/ftoastr.c, lib/regexec.c, lib/stdlib.in.h:
48786	* m4/stdlib_h.m4:
48787	Copy from Gnulib.
48788	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
48789	* m4/c-strtod.m4: Remove.
48790
487912019-02-02  Paul Eggert  <eggert@cs.ucla.edu>
48792
48793	Fix unlikely user-full-name integer overflow
48794
48795	* src/editfns.c (Fuser_full_name):
48796	Don’t assume uid fits into fixnum.
48797
487982019-02-02  Eli Zaretskii  <eliz@gnu.org>
48799
48800	Prevent segfault in bootstrap-emacs on MinGW
48801
48802	* src/emacs.c (main) [WINDOWSNT]: Fix logic of determining by
48803	argv[0] whether to use the static heap.  (Bug#34277)
48804
488052019-02-02  Felicián Németh  <felician.nemeth@gmail.com>
48806
48807	Fix Bug#34221
48808
48809	* lisp/progmodes/project.el (project--files-in-directory):
48810	Support remote files.  (Bug#34221)
48811
488122019-02-02  Martin Rudalics  <rudalics@gmx.at>
48813
48814	Fix window splitting behavior of 'display-buffer-at-bottom'
48815
48816	* lisp/window.el (display-buffer-at-bottom): Never split an
48817	arbitrary bottom window.  Try to split the frame's main
48818	window instead (Bug#33870).
48819
488202019-02-02  Martin Rudalics  <rudalics@gmx.at>
48821
48822	Fix bugs caused by running window change functions during redisplay
48823
48824	* src/xdisp.c (redisplay_internal): Run window change
48825	functions before updating the display so changes induced by
48826	these functions can get caught by redisplay (Bug#34138).
48827	* src/window.c (run_window_change_functions): Bind
48828	Qinhibit_redisplay to avoid that the minibuffer window gets
48829	resized while running window change functions (Bug#34179,
48830	Bug#34260).
48831
488322019-02-01  Glenn Morris  <rgm@gnu.org>
48833
48834	* .gitignore: Add MANIFEST.
48835
48836	* make-dist: Avoid "Bad fd number" error with dash.
48837
488382019-02-01  Glenn Morris  <rgm@gnu.org>
48839
48840	* make-dist: Remove references to src/stamp-h.in.
48841
48842	This file was removed two years ago in 2f89350.
48843
488442019-02-01  Glenn Morris  <rgm@gnu.org>
48845
48846	* make-dist: Fix --no-update with no pre-existing MANIFEST.
48847
488482019-02-01  Paul Eggert  <eggert@cs.ucla.edu>
48849
48850	Restore SETFATTR substitution
48851
48852	* configure.ac (SETFATTR): Restore the AC_SUBST of this
48853	that was inadvertently removed when pdumper support was added.
48854	Need for ./configure --with-dumping=unexec on Fedora 29.
48855
488562019-02-01  Paul Eggert  <eggert@cs.ucla.edu>
48857
48858	Make make-dist more automatic
48859
48860	Simplify make-dist maintenance by having it generate its
48861	list of files more automatically.  Put the list of distributed
48862	files into a file MANIFEST that can be used in the unusual
48863	situations when you’re making a distribution without having
48864	access to a Git repository.
48865	* make-dist (top_level_ChangeLog): Now nonempty if the
48866	distribution tarball will contain a ChangeLog, instead of
48867	being nonempty when a ChangeLog is requested, Git is present
48868	and a readable ChangeLog exists.  The new interpretation makes
48869	the script a bit easier to follow.
48870	(possibly_non_vc_files, info_files, mkdir_verbose)
48871	(file_to_skip, MANIFEST_subdir_sed, tempsubdirs):
48872	New variables.
48873	(MANIFEST): Update and use this file, which now records what
48874	files are distributed.
48875	(top_level, subdir, files, file): Remove.
48876
488772019-02-01  Glenn Morris  <rgm@gnu.org>
48878
48879	* configure.ac (emacs_config_features): Add pdumper and unexec.
48880
488812019-02-01  Paul Eggert  <eggert@cs.ucla.edu>
48882
48883	Rename CANNOT_DUMP to HAVE_UNEXEC
48884
48885	* configure.ac (CANNOT_DUMP): Remove.  All uses removed,
48886	or changed to the negative of with_unexec.
48887	(HAVE_UNEXEC): New macro.  All uses of CANNOT_DUMP changed
48888	to the negative of this macro.
48889
488902019-02-01  Paul Eggert  <eggert@cs.ucla.edu>
48891
48892	Omit some linker hacks if not doing unexec
48893
48894	* configure.ac (LDFLAGS, LD_SWITCH_SYSTEM_TEMACS):
48895	Omit some funky linker flags if not supporting unexec.
48896
48897	Use macOS linker hacks only if needed
48898	* configure.ac: On darwin, link with -fno-pie and -headerpad
48899	only if configuring with unexec.
48900
489012019-02-01  Paul Eggert  <eggert@cs.ucla.edu>
48902
48903	Stop using macOS -prebind option
48904
48905	* configure.ac (LD_SWITCH_SYSTEM_TEMACS): Remove -prebind,
48906	which has been obsolete and ineffective since Mac OS X 10.4 (2005),
48907	which was never necessary for correct operation, and which now
48908	generates annoying warnings.  Problem reported by Robert Pluim in:
48909	https://lists.gnu.org/r/emacs-devel/2019-01/msg00761.html
48910
489112019-02-01  Paul Eggert  <eggert@cs.ucla.edu>
48912
48913	Merge from origin/emacs-26
48914
48915	6c6b540711 Correct the docs of inserting kmacro counter
48916	32555daf4c * doc/misc/calc.texi (Algebraic Tutorial): Fix a typo.  (B...
48917
489182019-02-01  Paul Eggert  <eggert@cs.ucla.edu>
48919
48920	Merge from origin/emacs-26
48921
48922	7ba8f80398 Avoid errors in 'rmail-get-new-mail'
48923	9c8412a0b8 Fix process-contact bug with TCP connections
48924
48925	# Conflicts:
48926	#	src/process.c
48927
489282019-02-01  Mattias Engdegård  <mattiase@acm.org>
48929
48930	Make the rx operators \? and \?? behave correctly
48931
48932	* lisp/emacs-lisp/rx.el (rx-kleene):
48933	Treat \? and \?? like ? and ?? (Bug#34100).
48934	* test/lisp/emacs-lisp/rx-tests.el: Add tests for all repetition operators.
48935
489362019-01-31  Dmitry Gutov  <dgutov@yandex.ru>
48937
48938	js--re-search-backward-inner: Fix infloop
48939
48940	Fix JS indentation infloop reported in
48941	https://github.com/mooz/js2-mode/issues/513.
48942
48943	* lisp/progmodes/js.el (js--re-search-backward-inner): Account for
48944	multiline string literals.
48945	* test/manual/indent/js.js: New test example.
48946
489472019-01-31  Paul Eggert  <eggert@cs.ucla.edu>
48948
48949	Prefer static to extern where either will do
48950
48951	* src/charset.c (charset_table_size):
48952	* src/pdumper.c (dump_private):
48953	* src/sysdep.c (init_sigsegv):
48954	* src/window.c (old_selected_window):
48955	Now static.
48956	* src/charset.c (charset_table_size):
48957	Now int, since the value always fits in int.
48958	* src/gtkutil.c (xg_gtk_initialized): Now present only if
48959	HAVE_XWIDGETS, to make it clearer that this is an xwidgets
48960	hack.  All uses changed.
48961	* src/lread.c (ndefsubr): Remove; unused.
48962	* src/pdumper.h: Use usual GNU indenting style for functions,
48963	since my static-vs-extern checking hack relies on it.
48964	(dump_public): Always declare; simpler and doesn’t hurt.
48965	(pdumper_handle_page_fault): Remove unused decl.
48966
489672019-01-31  Paul Eggert  <eggert@cs.ucla.edu>
48968
48969	Widen modiff counts to avoid wraparound
48970
48971	Widen modification counts to at least 64 bits, to make
48972	wraparound practically impossible.
48973	* doc/lispref/buffers.texi (Buffer Modification):
48974	Don’t say the modification-count can wrap around.
48975	* src/buffer.c (Frestore_buffer_modified_p, Fbuffer_swap_text)
48976	(modify_overlay):
48977	* src/insdel.c (insert_1_both, insert_from_string_1)
48978	(insert_from_gap, insert_from_buffer_1)
48979	(adjust_after_replace, replace_range, replace_range_2)
48980	(del_range_2, modify_text):
48981	* src/textprop.c (modify_text_properties):
48982	Use modiff_incr instead of incrementing	directly.
48983	(Fbuffer_modified_tick, Fbuffer_chars_modified_tick):
48984	Don’t assume modification counts fit into fixnums.
48985	* src/buffer.h (struct buffer_text, struct buffer):
48986	* src/cmds.c (internal_self_insert):
48987	* src/fileio.c (Finsert_file_contents):
48988	* src/indent.c (last_known_column_modified):
48989	* src/keyboard.c (command_loop_1):
48990	* src/marker.c (cached_modiff):
48991	* src/syntax.c (find_start_modiff, parse_sexp_propertize)
48992	(find_defun_start):
48993	* src/window.h (struct window):
48994	Use modiff_count for modification counts.
48995	* src/editfns.c (Fsubst_char_in_region):
48996	Copy instead of incrementing modification counts,
48997	since integer overflow checking is not needed here.
48998	* src/lisp.h (modiff_count): New type.
48999	(modiff_incr, modiff_to_integer): New inline functions.
49000	* src/pdumper.c (dump_buffer): Update hash.
49001
490022019-01-31  Paul Eggert  <eggert@cs.ucla.edu>
49003
49004	Minor pdumper simplification
49005
49006	* src/pdumper.c (dump_roots, pdumper_load): Simplify initialization.
49007	(dump_bitset_init, pdumper_load): Omit unnecessary assignments.
49008	(dump_bitset_destroy): Remove; never called.  All callers removed.
49009	(dump_do_dump_relocation, pdumper_load): Add FIXME comment.
49010	(pdumper_load): Simplify by assuming C99.  Remove unused local.
49011
490122019-01-30  Glenn Morris  <rgm@gnu.org>
49013
49014	Merge from origin/emacs-26
49015
49016	b94d767 (origin/emacs-26) Minor copyedits in last manual change
49017	73508e6 Improve documentation of face numbers
49018	bf235ce * doc/emacs/custom.texi (Authentication): Refer to the "Help ...
49019	ceccb3c New node Authentication in the Emacs manual
49020	9078f34 Fix a loop in c-fl-decl-start.  This fixes bug #34186.
49021	a177fe7 Fix LaTeX output of month and day from cal-tex.el
49022	90177d7 Avoid elisp crash for OpenPGP User IDs with no e-mail address
49023	68e55a0 image-mode: Do not use default scaling (bug#33990)
49024	b6c762a create-image: Expand documentation (bug#33990)
49025	928d342 Improve documentation of 'isearch-filter-predicate'
49026	9034dd6 Fix cursor column positioning on Grep hits
49027
49028	# Conflicts:
49029	#	doc/emacs/custom.texi
49030
490312019-01-30  Michael Albinus  <michael.albinus@gmx.de>
49032
49033	Fix problem in filenotify-tests
49034
49035	* lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
49036	Adapt `accept-process-output' argument.
49037
49038	* test/lisp/filenotify-tests.el (file-notify--deftest-remote):
49039	Remove :unstable tag.
49040
490412019-01-30  Michael Albinus  <michael.albinus@gmx.de>
49042
49043	* lisp/net/tramp-rclone.el (tramp-rclone-mounted-p): Fix thinko.
49044
490452019-01-30  Michael Albinus  <michael.albinus@gmx.de>
49046
49047	* test/lisp/net/tramp-tests.el
49048
49049	(tramp-test43-asynchronous-requests): Tag it :unstable also for
49050	emba.  Adapt `accept-process-output' arguments.
49051
490522019-01-29  Michael Albinus  <michael.albinus@gmx.de>
49053
49054	* test/lisp/filenotify-tests.el (file-notify--deftest-remote):
49055
49056	Tag as :unstable.
49057
490582019-01-29  Robert Pluim  <rpluim@gmail.com>
49059
49060	Move some descriptions to the right section
49061
49062	* etc/NEWS: Move ibuffer and gnus change descriptions to
49063	mode-specific section.
49064
490652019-01-29  Eli Zaretskii  <eliz@gnu.org>
49066
49067	Fix documentation of pdump file installation
49068
49069	* doc/lispref/internals.texi (Building Emacs): Correct the
49070	directory where the pdump file is installed.  (Bug#34244)
49071
490722019-01-29  Michael Albinus  <michael.albinus@gmx.de>
49073
49074	Adapt `accept-process-output' arguments in tramp-tests
49075
49076	* test/lisp/net/tramp-tests.el (tramp-test29-start-file-process)
49077	(tramp-test30-make-process, tramp-test31-interrupt-process)
49078	(tramp-test32-shell-command)
49079	(tramp--test-shell-command-to-string-asynchronously)
49080	(tramp-test43-asynchronous-requests):
49081	Adapt `accept-process-output' arguments.
49082
490832019-01-28  Juri Linkov  <juri@linkov.net>
49084
49085	Small fixes
49086
49087	* lisp/generic-x.el (etc-passwd-generic-mode): Add comment.  (Bug#34225)
49088
49089	* lisp/vc/diff-mode.el (diff-syntax-fontify-hunk): Set overlay
49090	property 'diff-mode to 'syntax.  (Bug#33567)
49091	(diff-syntax-fontify-props): Reset buffer-file-name to nil.
49092
490932019-01-28  Glenn Morris  <rgm@gnu.org>
49094
49095	* src/Makefile.in (clean): Delete versioned pdmp files.
49096
49097	Else build number increments without limit even in clean builds.
49098
490992019-01-28  Juri Linkov  <juri@linkov.net>
49100
49101	More checks for live buffers.
49102
49103	* lisp/dired-x.el (dired-jump): Check if archive/tar superior buffer
49104	was killed by the user.
49105
49106	* lisp/progmodes/ruby-mode.el (ruby-flymake--helper): Check if source buffer
49107	was killed by the user immediately after visiting and before process finishes.
49108
491092019-01-28  Juri Linkov  <juri@linkov.net>
49110
49111	* lisp/generic-x.el (etc-passwd-generic-mode): Support backups of passwd,
49112
49113	group and shadow /etc files.  (Bug#34225)
49114
491152019-01-28  Eli Zaretskii  <eliz@gnu.org>
49116
49117	Fix last change in xfaces.c
49118
49119	* src/xfaces.c (init_xfaces): Don't rely of 'face'
49120	property of a face to be a natural number.
49121
491222019-01-28  Michael Albinus  <michael.albinus@gmx.de>
49123
49124	* test/lisp/net/tramp-tests.el (tramp-test03-file-name-defaults): Adapt test.
49125
491262019-01-28  Michael Albinus  <michael.albinus@gmx.de>
49127
49128	Adapt accept-process-output timeouts in Tramp
49129
49130	* lisp/net/tramp.el (tramp-accept-process-output):
49131	Make timeout optional.  Do not set explicit timer.
49132	(tramp-action-out-of-band, tramp-process-one-action)
49133	(tramp-wait-for-regexp, tramp-interrupt-process):
49134	* lisp/net/tramp-adb.el (tramp-adb-parse-device-names):
49135	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
49136	* lisp/net/tramp-rclone.el (tramp-rclone-parse-device-names):
49137	* lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
49138	* lisp/net/tramp-smb.el (tramp-smb-action-get-acl)
49139	(tramp-smb-action-set-acl, tramp-smb-wait-for-output):
49140	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-action-sudo):
49141	Adapt `accept-process-output' calls wrt timeouts.
49142
491432019-01-28  Eli Zaretskii  <eliz@gnu.org>
49144
49145	Fix bug with face-id after restoring from pdump
49146
49147	* src/xfaces.c (init_xfaces): New function.
49148	* src/emacs.c (main) [HAVE_PDUMPER]: If dumped with pdumper,
49149	call init_xfaces.  (Bug#34226)
49150	* src/lisp.h (init_xfaces) [HAVE_PDUMPER]: Add prototype.
49151
49152	* test/lisp/faces-tests.el (faces--test-face-id): New test for
49153	bug#34226.
49154
491552019-01-28  Sam Steingold  <sds@gnu.org>
49156
49157	links: also link pdmp
49158
491592019-01-28  Alan Mackenzie  <acm@muc.de>
49160
49161	Detect when we hit limit in backward search in c-just-after-func-arglist-p
49162
49163	This fixes a bug reported by Yasushi SHOJI <yasushi.shoji@gmail.com> to
49164	emacs-devel on 2018-11-26, where wrong analysis and fontification occurred.
49165
49166	* lisp/progmodes/cc-engine.el (c-beginning-of-statement-1): Add new parameter
49167	HIT-LIM which, if non-nil causes the function to return nil rather than 'same
49168	when we reach the backward search limit without finding the beginning of
49169	statement.
49170	(c-just-after-func-arglist-p): Supply argument t to this new parameter in call
49171	to c-beginning-of-statement-1.
49172
491732019-01-27  Paul Eggert  <eggert@cs.ucla.edu>
49174
49175	Update from Gnulib
49176
49177	This incorporates:
49178	2019-01-26 getloadavg: Add support for Android
49179	2019-01-24 fchownat: Fix compilation error on Android 4.3
49180	2019-01-24 mbtowc: Fix compilation error on Android 4.3
49181	2019-01-24 random: Fix compilation error on Android 4.3
49182	2019-01-24 renameat: Fix compilation error on Android 4.3
49183	2019-01-24 unlinkat: Fix compilation error on Android 4.3
49184	2019-01-19 gettext: support disabling use of VLAs
49185	2019-01-17 sys_stat: Fix warning on OS/2 kLIBC
49186	2019-01-17 fcntl: Fix syntax error (regression from 2018-10-05)
49187	2019-01-10 verify: Enable _GL_HAVE_STATIC_ASSERT for recent G++
49188	2018-12-22 stdioext: port to newer 32-bit Android
49189	2018-12-16 libc-config: Support HP-UX cc in C99 mode.
49190	* build-aux/config.guess, build-aux/config.sub, doc/misc/texinfo.tex:
49191	* lib/cdefs.h, lib/fcntl.c, lib/getloadavg.c, lib/gettext.h:
49192	* lib/regexec.c, lib/stdio-impl.h, lib/stdio.in.h, lib/stdlib.in.h:
49193	* lib/sys_stat.in.h, lib/unistd.in.h, lib/verify.h, m4/stdlib_h.m4:
49194	Copy from Gnulib.
49195	* lib/gnulib.mk.in: Regenerate.
49196
491972019-01-27  Paul Eggert  <eggert@cs.ucla.edu>
49198
49199	forward-line now works with bignums
49200
49201	* src/cmds.c (Fforward_line): Support bignum arg.
49202	(scan_newline): Return void since no caller was using the
49203	return value.
49204	* src/search.c (find_newline, scan_newline_from_point)
49205	(find_newline1): Return the number of newlines counted, not
49206	the count shortage, so that the return value always fits in
49207	ptrdiff_t even if the original count was a bignum.  All
49208	callers changed.
49209	* test/src/cmds-tests.el (forward-line-with-bignum): New test.
49210
492112019-01-27  Eli Zaretskii  <eliz@gnu.org>
49212
49213	Improve pdump load diagnostics
49214
49215	* src/emacs.c (load_pdump): Improve diagnostics when pdump
49216	file fails to load correctly.
49217
492182019-01-26  Eli Zaretskii  <eliz@gnu.org>
49219
49220	* src/emacs.c (load_pdump): Fix a thinko in last change.
49221
492222019-01-26  Eli Zaretskii  <eliz@gnu.org>
49223
49224	Improve pdump file search and 'pdumper-stats'
49225
49226	* src/pdumper.c (pdumper_record_wd): New function.
49227	(pdumper_load): Use xstrdup instead of strdup, as on
49228	MS-Windows the latter uses the wrong heap.  Don't free a
49229	NULL pointer.
49230	* src/emacs.c (load_pdump): Support the use case where the
49231	Emacs binary was renamed: look in exec-directory for the
49232	pdump file whose base name is derived from the Emacs binary,
49233	in addition to just emacs.pdmp.
49234	(main): Call pdumper_record_wd to prepend CWD to the pdump
49235	file name.
49236	* src/fileio.c (file_name_absolute_p): Now extern.
49237	* src/lisp.h (file_name_absolute_p): Add prototype.
49238	* src/pdumper.h (pdumper_record_wd): Add prototype.
49239
49240	* doc/emacs/cmdargs.texi (Initial Options): Update the
49241	documentation of where Emacs looks for the dump file.
49242
492432019-01-26  Eli Zaretskii  <eliz@gnu.org>
49244
49245	Fix face initializations in pdump'ed Emacs
49246
49247	* src/dispnew.c (init_display_interactive): Call init_faces_initial
49248	in the daemon if dumped with pdumper. (Bug#34114)
49249
492502019-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
49251
49252	* lisp/loadup.el (load-file-name): Set back to nil
49253
492542019-01-25  João Távora  <joaotavora@gmail.com>
49255
49256	Adjust previous electric.el and elec-pair.el change
49257
49258	This fixes a serious bug introduced previously
49259	electric-pair-inhibit-if-helps-balance and
49260	electric-pair-skip-if-helps-balance, whereby "innocent" markers were
49261	being pushed by those function's new save-change-and-restore
49262	semantics.  The fix can probably still be improved.
49263
49264	It also adds comments to parts of the code, where deemed necessary.
49265
49266	* lisp/elec-pair.el (electric-pair--insert): Add comment.
49267	(electric-pair--save-literal-point-excursion): New helper macro.
49268	(electric-pair-inhibit-if-helps-balance)
49269	(electric-pair-skip-if-helps-balance): Don't use
49270	insert-before-markers since it may hurt other markers that have
49271	nothing to do with the 'save-excursion'.
49272	(electric-pair-post-self-insert-function): Use
49273	electric-pair--save-literal-point-excursion.
49274
49275	* lisp/electric.el (electric-indent-post-self-insert-function):
49276	Remove lexical variable.
49277
492782019-01-25  João Távora  <joaotavora@gmail.com>
49279
49280	Use minibuffer-default in completion-all-sorted-completions (bug#34083)
49281
49282	* lisp/minibuffer.el (completion-all-sorted-completions): Sort with the
49283	default on top.
49284
492852019-01-25  Alex Branham  <alex.branham@gmail.com>
49286
49287	Make tabulated-list-mode-map inherit from special-mode-map
49288
49289	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode-map): Use
49290	  'make-composed-keymap'.
49291
49292	Bug #30452
49293
492942019-01-25  Benjamin Riefenstahl  <b.riefenstahl@turtle-trading.net>
49295
49296	image-mode: Make parameters buffer-local
49297
49298	Image parameters were treated as image specific, but because they
49299	actually were global variables, their behaviour transfered to new
49300	images.
49301	* lisp/image-mode.el (image-transform-resize, image-transform-scale)
49302	(image-transform-rotation): Declare with defvar-local.  (Bug#33990)
49303
493042019-01-24  Michael Albinus  <michael.albinus@gmx.de>
49305
49306	Some fixes in tramp-smb.el
49307
49308	* lisp/net/tramp-smb.el (tramp-smb-errors):
49309	Add "NT_STATUS_NOT_A_DIRECTORY".
49310	(tramp-smb-maybe-open-connection): Respect ´non-essential'.  Do
49311	not record smbserver-version.
49312	(tramp-smb-wait-for-output): Improve reading pending output.
49313
493142019-01-24  Eli Zaretskii  <eliz@gnu.org>
49315
49316	Avoid byte-compiler warning in starttls.el
49317
49318	* lisp/net/network-stream.el (starttls-open-stream): Declare
49319	to avoid compilation warning.
49320
493212019-01-24  Robert Pluim  <rpluim@gmail.com>
49322
49323	Check for client certificates when using GnuTLS
49324
49325	This fixes Bug#33780, and extends the documentation to describe how to
49326	enable use of client certificates.
49327
49328	* lisp/net/network-stream.el (network-stream-certificate): Correct
49329	order of parameters to plist-get.
49330	(network-stream-open-tls): Pass all received parameters to
49331	open-gnutls-stream as plist, not just :nowait.
49332
49333	* lisp/net/gnutls.el (open-gnutls-stream): Change optional nowait arg
49334	to be plist.  Derive nowait and client certificate(s) and keys(s) from
49335	plist (maybe via auth-source) and pass to gnutls-boot-parameters and
49336	gnutls-negotiate.
49337	(network-stream-certificate): Add declare-function form for it.
49338
49339	* doc/misc/auth.texi (Help for users): Describe format to use for
49340	client key/cert specification.
49341
49342	* doc/misc/emacs-gnutls.texi (Help For Developers): Describe usage of
49343	optional plist argument.  Add crossreference to description of
49344	.authinfo format for client key/cert specification.
49345
49346	* etc/NEWS: Describe new client certificate functionality for
49347	  'open-network-stream'.
49348
49349	* test/lisp/net/network-stream-tests.el: Add require of network-stream.
49350	(connect-to-tls-ipv4-nowait): Bind network-security-level to 'low
49351	in order to bypass nsm prompting.
49352	(connect-to-tls-ipv6-nowait): Likewise.
49353	(open-network-stream-tls-wait): New test.
49354	(open-network-stream-tls-nowait): New test.
49355	(open-network-stream-tls): New test.
49356	(open-network-stream-tls-nocert): New test.
49357	(open-gnutls-stream-new-api-default): New test.
49358	(open-gnutls-stream-new-api-wait): New test.
49359	(open-gnutls-stream-old-api-wait): New test.
49360	(open-gnutls-stream-new-api-nowait): New test.
49361	(open-gnutls-stream-old-api-nowait): New test.
49362	(open-gnutls-stream-new-api-errors): New test.
49363	The new tests exercise 'open-network-stream' and the old and new
49364	api of 'open-gnutls-stream'.
49365
493662019-01-24  Michael Albinus  <michael.albinus@gmx.de>
49367
49368	Fix error in Tramp's encoding check
49369
49370	* lisp/net/tramp-sh.el (tramp-find-inline-encoding):
49371	Use `tramp-get-connection-buffer'.
49372
493732019-01-23  Stefan Monnier  <monnier@iro.umontreal.ca>
49374
49375	doc-view-presentation, doc-view-fit-window-to-page, and use mutool
49376
49377	* lisp/doc-view.el (doc-view-pdfdraw-program): Use "mutool" if available.
49378	(doc-view-mode-map): Keep default 'g' binding of 'revert-buffer'.
49379	Change 'r' binding to 'revert-buffer'.
49380	(doc-view-revert-buffer): Make it an obsolete alias.
49381	(doc-view--revert-buffer): Rename from doc-view-revert-buffer, change
49382	calling convention for use in add-function.
49383	(doc-view-fit-window-to-page): New command.
49384	(doc-view-pdf->png-converter-mupdf): Make it work with "mutool".
49385	(doc-view-mode): Use add-function for revert-buffer-function.
49386	(doc-view-presentation-mode-map, doc-view-presentation--src-data):
49387	New vars.
49388	(doc-view-presentation-exit, doc-view-presentation-mode)
49389	(doc-view-presentation--propagate-pn, doc-view-presentation):
49390	New functions.
49391
493922019-01-23  Stefan Monnier  <monnier@iro.umontreal.ca>
49393
49394	Avoid having to build src/emacs when we just want to `make tags`
49395
49396	* Makefile.in (TAGS tags): Remove `src` from the dependencies.
49397	* src/Makefile.in (ctagsfiles1): Strip macuvs.h and fingerprint.c.
49398
493992019-01-23  Eli Zaretskii  <eliz@gnu.org>
49400
49401	Fix build errors with pdump fingerprint on macOS
49402
49403	* src/Makefile.in ($(lispsource)/international/charprop.el):
49404	Remove macuvs.h from the target list, to avoid circular
49405	dependency on macOS.  Reported by Alan Third <alan@idiocy.org>.
49406
494072019-01-23  Stefan Monnier  <monnier@iro.umontreal.ca>
49408
49409	Rework last commit to icomplete and minibuffer.el.
49410
49411	Rather than let minibuffer-force-complete set up cycling and then undoing it,
49412	better tell it directly not to setup cycling.  Also be a bit more careful
49413	to remove the transient map.
49414	Additionally to bug#34077 and bug#34116, this also relates to bug#25644.
49415
49416	* lisp/minibuffer.el (completion--flush-all-sorted-completions):
49417	Also take down the transient cycling map if applicable.
49418	(minibuffer-force-complete): New arg dont-cycle.
49419	Set completion-cycling to the actual function that takes down the
49420	transient map rather than just t.
49421	(minibuffer-force-complete-and-exit):
49422	* lisp/icomplete.el (icomplete-force-complete): Use new dont-cycle arg.
49423
494242019-01-23  João Távora  <joaotavora@gmail.com>
49425
49426	Force completion in icomplete with C-M-i, but don't cycle (bug#34077)
49427
49428	Cycling after forcing a completion with C-M-i in icomplete can be
49429	confusing, as it leaves rotated prospects in the minibuffer.  In C-x
49430	C-f, for example it is very difficult to understand if the prospects
49431	refer to subdirectories of the directory being completed to, which
49432	happens naturally when the completion is unique; or if they are a
49433	cycled version of prospects that match the new completion pattern, in
49434	case the completion happens to still match other items.
49435
49436	To resolve this confusion, never cycle with C-M-i in icomplete:
49437	non-ambiguous cycling can be achieved with C-. and C-,
49438
49439	The former behaviour can still be restored with:
49440
49441	(define-key icomplete-minibuffer-map (kbd "C-M-i") 'minibuffer-force-complete)
49442
49443	* lisp/icomplete.el (icomplete-force-complete): New command.
49444	(icomplete-minibuffer-map): Bind C-M-i to icomplete-force-complete.
49445
494462019-01-23  João Távora  <joaotavora@gmail.com>
49447
49448	Avoid cycling in minibuffer-force-complete-and-exit (bug#34116)
49449
49450	* lisp/minibuffer.el (minibuffer-force-complete-and-exit): Check
49451	completion-cycling before minibuffer-force-complete.
49452
494532019-01-23  Paul Eggert  <eggert@cs.ucla.edu>
49454
49455	* src/keyboard.c (read_char): Use CALLN.
49456
494572019-01-23  Stefan Monnier  <monnier@iro.umontreal.ca>
49458
49459	* src/emacs.c (load_pdump): Minor simplification.
49460
494612019-01-23  Eli Zaretskii  <eliz@gnu.org>
49462
49463	Fix compilation of pdumper.c with old buggy GCC
49464
49465	* src/pdumper.c (emacs_ptr_at): Renamed from emacs_ptr, to
49466	avoid compilation errors with GCC 4.7.  Reported by Martin
49467	Rudalics <rudalics@gmx.at>.  All callers changed.
49468
494692019-01-23  Michael Albinus  <michael.albinus@gmx.de>
49470
49471	* lisp/net/tramp.el (tramp-set-file-uid-gid): Fix thinko.
49472
49473	* test/lisp/net/tramp-tests.el (tramp--test-instrument-test-case):
49474	Adapt docstring.
49475
494762019-01-22  Stefan Monnier  <monnier@iro.umontreal.ca>
49477
49478	* lisp/emacs-lisp/package.el (package--alist): New
49479
49480	(package-activate-all): Use it so we only initialize the local part of
49481	package.el (this reduces the impact of bug#24467 and speeds up startup).
49482	(package-installed-p): Use it so it works even if package is not
49483	fully initialized.
49484	(package-delete): Use it so we only initialize the local part of
49485	package.el.
49486
494872019-01-22  Phillip Lord  <phillip.lord@russet.org.uk>
49488
49489	Add hook for all events
49490
49491	* lisp/subr.el (input-event-functions): Add input-event-functions
49492	* src/keyboard.c (read_char): Call input-event-functions on all hooks
49493
494942019-01-22  João Távora  <joaotavora@gmail.com>
49495
49496	electric-layout-mode kicks in before electric-pair-mode
49497
49498	This aims to solve problems with indentation.  Previously in, say, a
49499	js-mode buffer with electric-layout-rules set to
49500
49501	   (?\{ before after)
49502	   (?\} before)
49503
49504	would produce an intended:
49505
49506	   function ()
49507	   {
49508	     <indented point>
49509	   }
49510
49511	The initial state
49512
49513	  function () {
49514
49515	Would go immediately to the following by e-p-m
49516
49517	  function () {}
49518
49519	Only then would e-l-m be applied to } first, and then again to {.
49520	This makes lines indent in the wrong order, which can be a problem in
49521	some modes.
49522
49523	The way we fix this is by reversing the order of e-p-m and e-l-m in
49524	the post-self-insert-hook (and also fixing a number of details that
49525	this uncovered).  In the end this changes the sequence from
49526
49527	  function () {
49528
49529	By way of e-l-m becomes:
49530
49531	  function () <newline>
49532	  {
49533	  <newline>
49534
49535	The e-p-m inserts the pair
49536
49537	  function () <newline>
49538	  {
49539	  <newline>}
49540
49541	And then e-l-m kicks in for the pair again, yielding the desired result
49542
49543	  function () <newline>
49544	  {
49545	  <indented point>
49546	  }
49547
49548	* lisp/elec-pair.el (electric-pair--insert): Bind
49549	electric-layout-no-duplicate-newlines.
49550	(electric-pair-inhibit-if-helps-balance)
49551	(electric-pair-skip-if-helps-balance): Use insert-before-markers,
49552	playing nice with save-excurion.
49553	(electric-pair-post-self-insert-function): Go to correct position
49554	before checking electric-pair-inhibit-predicate and
49555	electric-pair-skip-self predicate.
49556	(electric-pair-post-self-insert-function): Increase priority to
49557	50.
49558
49559	* lisp/electric.el (electric-indent-post-self-insert-function):
49560	Delete trailing space in reindented line only if line was
49561	really reindented.  Rewrite comment.
49562	(electric-layout-allow-duplicate-newlines): New variable.
49563	(electric-layout-post-self-insert-function-1): Rewrite comments.
49564	Honours electric-layout-allow-duplicate-newlines.  Don't reindent
49565	previous line because racecar.
49566
49567	* test/lisp/electric-tests.el: New test.
49568	(plainer-c-mode): Move up.
49569	(electric-modes-int-main-allman-style)
49570	(electric-layout-int-main-kernel-style): Simplify
49571	electric-layout-rules.
49572	(electric-layout-for-c-style-du-jour): New helper.
49573	(electric-layout-plainer-c-mode-use-c-style): New test.
49574
495752019-01-22  João Távora  <joaotavora@gmail.com>
49576
49577	Remove tests of electric-pair-mode and CC-based modes
49578
49579	The behaviour previously observed in cc-mode-based-modes (and every
49580	other major-mode) when electric-pair-mode or electric-layout-mode is
49581	turned on may no longer be observed: this because CC-mode goes around
49582	the generic implementation of electric-pair-mode.
49583
49584	An alternative is to bind every delimiter key like '{', '}', etc to
49585	'self-insert-command, like most major modes already do, at the cost of
49586	losing c-auto-newline functionality (which was incompatible anyway
49587	before the recent changes of bug#33794).
49588
49589	* test/lisp/electric-tests.el
49590	(electric-pair-test-for): No longer set it.
49591	(define-electric-pair-test): Use js-mode instead of c++ mode,
49592	which broke recently.
49593	(whitespace-chomping-2): Add failing C++ test explicitly.
49594	(electric-layout-int-main-kernel-style): Use plainer-c-mode.
49595	(electric-layout-int-main-allman-style): Deleted.
49596	(electric-modes-int-main-allman-style): Renamed from
49597	electric-layout-int-main-allman-style.
49598
495992019-01-22  Alan Mackenzie  <acm@muc.de>
49600
49601	Extend electric-pair-mode actions to < and >, and also to ( and ) in literals
49602
49603	* lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Actuate electric-pair-mode if
49604	a < or > is typed in a context where this is meaningful (#include, or
49605	template).
49606	(c-electric-paren): Allow electric-pair-mode activity in a comment or string.
49607
49608	* lisp/progmodes/cc-defs.el (c-make-keywords-re): Fix a bug where lists of
49609	source symbols could get overwritten when parameter adorn is set to
49610	'appendable.
49611
49612	* lisp/progmodes/cc-langs.el (c-cpp-include-key): New lang const and var.
49613
496142019-01-22  Alan Mackenzie  <acm@muc.de>
49615
49616	Revert "Fix electric-pair-tests by disabling bug#33794's fix with a variable"
49617
49618	This reverts commit be505726b68d407a44fdcd9c7ac1ef722398532d.
49619
496202019-01-22  Michael Albinus  <michael.albinus@gmx.de>
49621
49622	Make Tramp tests more robust
49623
49624	* test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
49625	Bind `tramp-default-method'.
49626	(tramp--test-file-attributes-equal-p): New defsubst.
49627	(tramp-test19-directory-files-and-attributes): Use it.
49628
496292019-01-22  Michael Albinus  <michael.albinus@gmx.de>
49630
49631	Respect setgid bit of the upper directory in Tramp
49632
49633	* doc/misc/trampver.texi:
49634	* lisp/net/trampver.el: Change version to "2.4.2-pre".
49635
49636	* lisp/net/tramp.el: Bump version to 2.4.2-pre.
49637	(tramp-set-file-uid-gid): Respect setgid bit of the upper directory.
49638	(tramp-default-file-modes, tramp-handle-insert-file-contents)
49639	(tramp-mode-string-to-int, tramp-make-tramp-temp-file):
49640	* lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy)
49641	(tramp-adb-handle-write-region):
49642	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-directly)
49643	(tramp-sh-handle-write-region): Use octal constants.
49644
496452019-01-21  Stefan Monnier  <monnier@iro.umontreal.ca>
49646
49647	* lisp/international/titdic-cnv.el: Use lexical-binding
49648
49649	(tit-process-body): Remove unused vars 'template' and 'second'.
49650	(tsang-quick-converter): Remove unused args 'name' and 'title'.
49651	Remove unused var 'slot'.
49652	(tsang-b5-converter, quick-b5-converter, tsang-cns-converter)
49653	(quick-cns-converter, py-converter, ziranma-converter)
49654	(ctlau-converter, ctlau-gb-converter, ctlau-b5-converter):
49655	Remove unused args 'name' and 'title'.
49656	(miscdic-convert): Remove unused var 'dicbuf'.
49657	Don't pass 'name' and 'title' to the conversion function.
49658
496592019-01-21  Paul Eggert  <eggert@cs.ucla.edu>
49660
49661	Simplify pdumper-load via timespectod
49662
49663	Suggested by Eli Zaretskii in:
49664	https://lists.gnu.org/r/emacs-devel/2019-01/msg00458.html
49665	* src/pdumper.c (pdumper_load): Simplify.
49666
496672019-01-21  Stefan Monnier  <monnier@iro.umontreal.ca>
49668
49669	* src/pdumper.c (dump_string) [CHECK_STRUCTS]: Fix copy&paste error
49670
49671	* lisp/electric.el: Fix typo in last change.
49672
496732019-01-21  Stefan Monnier  <monnier@iro.umontreal.ca>
49674
49675	(electric--sort-post-self-insertion-hook): Accept non-symbol functions
49676
49677	* lisp/electric.el (electric--sort-post-self-insertion-hook):
49678	Don't burp on non-symbol functions.
49679
496802019-01-21  Alan Third  <alan@idiocy.org>
49681
49682	Fix occasional pdumper/bootstrap error
49683
49684	* src/Makefile.in (emacs$(EXEEXT)): Copy the new executable over
49685	bootstrap-emacs.
49686
496872019-01-21  Michael Albinus  <michael.albinus@gmx.de>
49688
49689	* lisp/net/tramp-sh.el (tramp-set-remote-path): Fix usage of tmpfile.
49690
496912019-01-21  Michael Albinus  <michael.albinus@gmx.de>
49692
49693	Use `inhibit-read-only' in Tramp
49694
49695	* lisp/net/tramp.el (tramp-process-actions, tramp-accept-process-output)
49696	(tramp-send-string):
49697	* lisp/net/tramp-adb.el (tramp-adb-handle-make-process)
49698	(tramp-adb-send-command-and-check, tramp-adb-wait-for-output):
49699	* lisp/net/tramp-sh.el (tramp-sh-handle-make-process)
49700	(tramp-wait-for-output, tramp-send-command-and-check):
49701	* lisp/net/tramp-smb.el (tramp-smb-wait-for-output):
49702	Use `inhibit-read-only'.
49703
497042019-01-20  Michael Albinus  <michael.albinus@gmx.de>
49705
49706	Use POSIX "df" in Tramp, if available
49707
49708	* lisp/net/tramp-sh.el (tramp-get-remote-df):
49709	Support also POSIX.1 "df".
49710	(tramp-sh-handle-file-system-info): Adapt accordingly.
49711
497122019-01-20  Eli Zaretskii  <eliz@gnu.org>
49713
49714	Support native image resizing on MS-Windows
49715
49716	* src/w32term.c (x_draw_image_foreground): Scale the image if
49717	the requested dimensions are different from the bitmap
49718	dimensions.
49719	* src/image.c (Fimage_scaling_p): Return t when HAVE_NTGUI.
49720	(x_set_image_size) [HAVE_NTGUI]: Record the scaled dimensions
49721	in the image struct.
49722	* src/dispextern.h (HAVE_NATIVE_SCALING): Define when
49723	HAVE_NTGUI as well.
49724
49725	* etc/NEWS: Update the announcement of native image scaling.
49726
497272019-01-19  Philipp Stephani  <phst@google.com>
49728
49729	Improve error data when passing a wrong type to 'sort' (Bug#34104)
49730
49731	* src/fns.c (Fsort): Use 'list-or-vector-p' for error message.
49732	(syms_of_fns): Define 'list-or-vector-p'.
49733
49734	* test/src/fns-tests.el (fns-tests-sort): Extend unit test.
49735
497362019-01-19  Paul Eggert  <eggert@cs.ucla.edu>
49737
49738	pdumper-stats now returns s, not ms
49739
49740	* doc/lispref/internals.texi (pdumper-stats):
49741	* src/pdumper.c (pdumper_load): Return seconds, not milliseconds.
49742	Minimize rounding errors in the usual case.
49743
497442019-01-19  Eli Zaretskii  <eliz@gnu.org>
49745
49746	Minor cleanup in pdumper.c
49747
49748	* src/pdumper.c (subtract_timespec): Function removed.
49749	(pdumper_load): Use timespec_sub instead of subtract_timespec.
49750
497512019-01-19  Eli Zaretskii  <eliz@gnu.org>
49752
49753	Improve 'pdumper-stats' and its documentation
49754
49755	* src/pdumper.c (Fpdumper_stats): Improve formatting and
49756	wording of the doc string.  Decode the pdump file name and
49757	expand-file-name it.
49758
49759	* doc/lispref/internals.texi (Building Emacs): Document
49760	'pdumper-stats'.
49761
497622019-01-19  Eli Zaretskii  <eliz@gnu.org>
49763
49764	Unbreak the macOS NS build
49765
49766	* src/xdisp.c (expose_window_tree): Declare and define 'f' on
49767	NS as well.  Reported by Herbert J. Skuhra <herbert@gojira.at>.
49768
497692019-01-18  Dmitry Gutov  <dgutov@yandex.ru>
49770
49771	Misc ignore-related project.el changes
49772
49773	* lisp/progmodes/project.el (project-ignores): Don't append the
49774	default ignores list, just use vc-directory-exclusion-list.
49775	(project--dir-ignores): Use the default ignores if the dir is
49776	outside of the current project.
49777	(project-files): Use project--dir-ignores to support external
49778	roots better.
49779
497802019-01-18  João Távora  <joaotavora@gmail.com>
49781
49782	Revert "Remove leftover from previous electric-layout-rules API"
49783
49784	This is a backward-incompatible change, and removing it isn't really
49785	necessary.
49786
49787	This reverts commit 942dad2b519cabddf6caea7641517507dc06944b.
49788
497892019-01-18  Stefan Monnier  <monnier@iro.umontreal.ca>
49790
49791	(electric-layout-post-self-insert-function-1): Simplify.
49792
49793	Call electric--after-char-pos right from the start, and take advantage of the
49794	fact that it guarantees to return the right position or nil.
49795
497962019-01-18  João Távora  <joaotavora@gmail.com>
49797
49798	Ensure fns in electric-layout-rules are called in right position
49799
49800	* lisp/electric.el (electric-layout-rules): Ensure rules are
49801	called from right spot.
49802
498032019-01-18  João Távora  <joaotavora@gmail.com>
49804
49805	Remove leftover from previous electric-layout-rules API
49806
49807	An element of electric-layout-rules is either a function or a pair
49808	(CHAR . WHERE), and WHERE can't be a function anymore.
49809
49810	* lisp/electric.el (electric-layout-post-self-insert-function-1):
49811	Remove leftover line.
49812
498132019-01-18  Paul Eggert  <eggert@cs.ucla.edu>
49814
49815	Port to platforms where NULL is a pointer
49816
49817	* src/image.c (x_create_x_image_and_pixmap):
49818	The Picture type is an integer, not a pointer.
49819	Come to think of it, Picture is really XID, and as
49820	far as I can tell, all-bits-one is the invalid XID,
49821	not all-bits-zero.  However that is a bigger issue;
49822	for now, this patch just unbreaks the build.
49823
498242019-01-18  Eli Zaretskii  <eliz@gnu.org>
49825
49826	Improve documentation of portable dumping
49827
49828	* src/pdumper.c (Fdump_emacs_portable): Improve the doc string
49829	and the error messages.
49830
49831	* doc/lispref/internals.texi (Building Emacs): Document
49832	portable dumping and the 'dump-emacs-portable' function.
49833
498342019-01-18  Glenn Morris  <rgm@gnu.org>
49835
49836	Merge from origin/emacs-26
49837
49838	b6d78a0 (origin/emacs-26) Fix a typo in ELisp manual
49839	c9f6f86 Prevent redrawing if frame is garbaged
49840	00ba226 Attempt to fix hangs on MS-Windows due to C-g
49841	b26d637 Fix Calc graph output on MS-Windows
49842	03818b0 Fix a minor mistake in ELisp manual
49843	6ac5985 ; Fix some trivial doc typos
49844	21b9026 * etc/tutorials/TUTORIAL: Fix typo (bug#34049)
49845	d223727 Fix UI of Buffer-menu
49846	0f71655 Reinitialize ispell-really-enchant when changing the speller
49847	9845044 Speed up loading css-mode
49848
498492019-01-18  Eli Zaretskii  <eliz@gnu.org>
49850
49851	Clean up memory allocation and unexec support on MS-Windows
49852
49853	* src/w32heap.c (report_temacs_memory_usage): Condition on
49854	!CANNOT_DUMP, in addition to ENABLE_CHECKING.
49855	(init_heap): Accept an argument, which tells us what heap
49856	allocation method to use.
49857	(DUMPED_HEAP_SIZE) [CANNOT_DUMP]: Define to a small value, as
49858	we don't use dumped_data[] in this case.
49859	* src/w32heap.h (init_heap): Adjust prototype.
49860	<using_dynamic_heap>: Remove declaration.
49861	* src/emacs.c (main) [WINDOWSNT]: Determine heap allocation
49862	method based on whether we are in temacs and whether unexec
49863	will be used to dump Emacs.  Pass the heap allocation method
49864	to init_heap, which is now called after parsing the
49865	--temacs=METHOD option.
49866	* src/unexw32.c (unexec): Don't fiddle with using_dynamic_heap.
49867	<using_dynamic_heap>: Remove definition.
49868	* src/w32proc.c (malloc_before_init, realloc_before_init)
49869	(free_before_init): New functions, to catch memory allocation
49870	before heap allocation method is set up.
49871
498722019-01-17  Dmitry Gutov  <dgutov@yandex.ru>
49873
49874	Rebase project-find-regexp on top of project-files
49875
49876	* lisp/progmodes/project.el (project--files-in-directory):
49877	New function.
49878	(project-files, project-find-regexp): Use it.
49879	(project--dir-ignores): New function.
49880	(project--find-regexp-in): Remove.
49881	(project--process-file-region): New function.
49882	(project--find-regexp-in-files): New function.
49883	(project-find-regexp, project-or-external-find-regexp): Use it, and
49884	project-files as well.
49885
498862019-01-17  Dmitry Gutov  <dgutov@yandex.ru>
49887
49888	Make 'project-files' the "canonical" generic of the two
49889
49890	* lisp/progmodes/project.el (project-files): Move the actual
49891	command building and invocation here.
49892	(project-file-completion-table): Delegate to 'project-files'.
49893
498942019-01-17  Stefan Monnier  <monnier@iro.umontreal.ca>
49895
49896	* lisp/textmodes/sgml-mode.el: Try and fix bug#33887.
49897
49898	Remove redundant :group args.
49899	(sgml-syntax-propertize-rules): Speed up processing of most double quotes.
49900
499012019-01-17  João Távora  <joaotavora@gmail.com>
49902
49903	Fix electric-pair-tests by disabling bug#33794's fix with a variable
49904
49905	The variable c--disable-fix-of-bug-33794, which should be removed in
49906	the short term in favor of a permanent solution, is introduced.
49907
49908	It is bound to nil by default.  This means that breakage is still
49909	happening in actual c-mode and c++-mode usage, though the tests no
49910	longer show it.
49911
49912	To get around this breakage, put
49913
49914	   (setq c--disable-fix-of-bug-33794 t)
49915
49916	In your init file.  Evidently, you will lose the fix for bug#33794,
49917	but that only affects a small corner case of c-toggle-auto-newline,
49918	which is not turned on by default.
49919
49920	See https://lists.gnu.org/archive/html/emacs-devel/2019-01/msg00360.html
49921	for more information.
49922
49923	* lisp/progmodes/cc-cmds.el (c--disable-fix-of-bug-33794): New
49924	variable.
49925	(c--with-post-self-insert-hook-maybe): New macro.
49926	(c-electric-pound, c-electric-brace, c-electric-slash)
49927	(c-electric-star, c-electric-semi&comma, c-electric-colon)
49928	(c-electric-lt-gt, c-electric-paren): Use it.
49929	(c-electric-paren, c-electric-brace): Check
49930	c--disable-fix-of-bug-33794.
49931
49932	* test/lisp/electric-tests.el (c--disable-fix-of-bug-33794):
49933	Forward declare.
49934	(electric-pair-test-for)
49935	(electric-layout-int-main-kernel-style)
49936	(electric-modes-in-c-mode-with-self-insert-command): Use it.
49937
499382019-01-17  João Távora  <joaotavora@gmail.com>
49939
49940	Revert "Temporarily comment out CC Mode from tests..."
49941
49942	This reverts commit 54f297904e0c641fcfd81f16e9a87177124a27be.
49943
499442019-01-17  Martin Rudalics  <rudalics@gmx.at>
49945
49946	Fix wording in Window Hooks section of Elisp manual
49947
49948	* doc/lispref/windows.texi (Window Hooks): Fix wording in
49949	description of window change functions.  Suggested by Robert
49950	Pluim <rpluim@gmail.com>.
49951
499522019-01-17  Alan Third  <alan@idiocy.org>
49953
49954	Be more specific with XRender bit-depths (bug#34051)
49955
49956	* src/image.c (x_create_x_image_and_pixmap): Fail gracefully if a bit
49957	depth is requested that XRender doesn't support.
49958
499592019-01-17  João Távora  <joaotavora@gmail.com>
49960
49961	Simplify ignored extensions filtering in Icomplete (bug#34070)
49962
49963	* lisp/icomplete.el: Use lexical binding.
49964	(icomplete-completions): Use minibuffer-completion-predicate
49965	to filter out completion-ignored-extensions.
49966
499672019-01-17  João Távora  <joaotavora@gmail.com>
49968
49969	Revert "Fix icomplete's cycling when filename filtering kicks in"
49970
49971	This reverts commit cdb082322d4209c5104bc1a98b21bf3dd75e8f17, which
49972	was a fix for bug#34070.  A much better fix to be added soon.
49973
499742019-01-17  João Távora  <joaotavora@gmail.com>
49975
49976	Fix flymake-proc--delete-temp-directory if temp dir ends in slash
49977
49978	(Bug#34074)
49979
49980	Reported by 林宝龙 <lbl52001@gmail.com>.
49981
49982	* lisp/progmodes/flymake-proc.el
49983	 (flymake-proc--delete-temp-directory):  Use directory-file-name.
49984
499852019-01-17  Alan Mackenzie  <acm@muc.de>
49986
49987	Temporarily comment out CC Mode from tests which are incompatible with it.
49988
49989	* test/lisp/electric-tests.el (electric-pair-test-for): comment out c++-mode from the
49990	list of modes to be used in tests.
49991	(electric-pair-whitespace-chomping-2-at-point-4-in-c++-mode-in-strings)
49992	(ert-deftest electric-layout-int-main-kernel-style)
49993	(ert-deftest electric-layout-int-main-allman-style): Comment out.
49994
499952019-01-17  Glenn Morris  <rgm@gnu.org>
49996
49997	Fix --enable-profiling builds (bug#34099)
49998
49999	* src/profiler.c (syms_of_profiler_for_pdumper):
50000	Only set cpu_log if CPU profiling is enabled.
50001
500022019-01-17  Martin Rudalics  <rudalics@gmx.at>
50003
50004	Expand spectrum of window change functions
50005
50006	* src/window.c (run_window_change_functions): Run window
50007	change functions for Qwindow_state_change_functions.
50008	(resize_frame_windows): Set frame's window_change slot when
50009	single-window frames change size.
50010	(Qwindow_state_change_functions): New symbol.
50011	(Vwindow_state_change_functions): New Lisp variable.
50012	* doc/lispref/windows.texi (Selecting Windows): Mention
50013	'window-selection/state-change-functions' and add reference to
50014	Window Hooks.
50015	(Window Hooks): Document 'window-state-change-functions'.
50016	* etc/NEWS: Mention new hook 'window-state-change-functions'.
50017
500182019-01-16  Paul Eggert  <eggert@cs.ucla.edu>
50019
50020	Port pdumper to older GNU/Linux
50021
50022	Problem reported by Colin Baxter in:
50023	https://lists.gnu.org/r/emacs-devel/2019-01/msg00321.html
50024	* src/alloc.c (my_heap_start): Also define if
50025	GNU_LINUX && CANNOT_DUMP && DOUG_LEA_MALLOC.
50026
500272019-01-16  Daniel Colascione  <dancol@dancol.org>
50028
50029	Fix segfault in profiler after pdump load
50030
50031	Move initialization of the profiler's hash test to static
50032	initialization from the syms function so that pdumper doesn't need to
50033	bother capturing it in any special way.
50034
50035	* src/profiler.c (cmpfn_profiler, hashfn_profiler):
50036	forward declare.
50037	(hashtest_profiler): statically initialize.
50038	(syms_of_profiler): remove dynamic initialization of
50039	hashtest_profiler.
50040
500412019-01-16  Paul Eggert  <eggert@cs.ucla.edu>
50042
50043	* doc/lispref/processes.texi (Accepting Output): Simplify.
50044
500452019-01-16  Daniel Colascione  <dancol@dancol.org>
50046
50047	Fix previous change: use correct pdumper function
50048
500492019-01-16  Daniel Colascione  <dancol@dancol.org>
50050
50051	Fix crash in charset detection after pdumper load
50052
50053	* src/coding.c:
50054	(reset_coding_after_pdumper_load): new function re-init character
50055	classes after pdumper load.
50056	(syms_of_coding): Call it.
50057
500582019-01-16  Andy Moreton  <andrewjmoreton@gmail.com>
50059
50060	Avoid compilation warnings in MS-Windows build
50061
50062	* src/pdumper.c (dump_cold_bignum):
50063	* src/emacs.c(load_pdump) [WINDOWSNT]: Avoid compiler warnings
50064	due to 64-bit vs 32-bit data type mismatches.
50065
500662019-01-16  Eli Zaretskii  <eliz@gnu.org>
50067
50068	Improve documentation of pdumper; minor code cleanup
50069
50070	* src/emacs.c (usage_message): Add the --dump-file option.
50071	(string_starts_with_p, find_argument): Functions removed; use
50072	'argmatch' instead.
50073	(PDUMP_FILE_ARG): Macro removed; use literal strings instead,
50074	as with other command-line options.  Use HAVE_PDUMPER for cpp
50075	conditionals which used PDUMP_FILE_ARG.
50076	(load_pdump, main): Use 'argmatch' for "--dump-file" and
50077	"--temacs" arguments, thus supporting the "-dump-file" and
50078	"-temacs" variants, for consistency with other options.
50079	(main): Remove the extra fatal error for using --dump-file in
50080	unexec'ed Emacs: load_pdump does that anyway.
50081	(standard_args): Add --dump-file and --temacs, with
50082	appropriate priorities.
50083
50084	* etc/NEWS: Expand on the pdumper support.
50085
50086	* doc/emacs/cmdargs.texi (Initial Options): Document the
50087	'--dump-file' command-line option.
50088
500892019-01-16  Eli Zaretskii  <eliz@gnu.org>
50090
50091	Fix minor glitch with producing 'emacs' executable
50092
50093	* src/Makefile.in (LC_ALL) [!DUMPING]: Don't overwrite
50094	previous emacs-X.Y.Z executables with new ones.
50095
500962019-01-16  Michael Albinus  <michael.albinus@gmx.de>
50097
50098	Some accept-process-output cleanups in Tramp
50099
50100	* lisp/net/tramp.el (tramp-action-out-of-band): Read process
50101	output in a loop.
50102	(tramp-accept-process-output): Return result.
50103	(tramp-interrupt-process):
50104	* lisp/net/tramp-adb.el (tramp-adb-parse-device-names):
50105	* lisp/net/tramp-rclone.el (tramp-rclone-parse-device-names):
50106	Remove FIXME.
50107
50108	* lisp/net/tramp-sh.el (tramp-local-coding-commands): Fix docstring.
50109
50110	* lisp/net/tramp-smb.el (tramp-smb-wait-for-output): Adapt docstring.
50111	Simplify code.
50112
50113	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-action-sudo):
50114	Adapt docstring.  Read process output in a loop.
50115
50116	* test/lisp/net/tramp-tests.el (tramp-test43-asynchronous-requests):
50117	Remove :unstable tag on emba.
50118
501192019-01-16  Glenn Morris  <rgm@gnu.org>
50120
50121	* make-dist: Include src/dmpstruct.awk.
50122
501232019-01-15  Paul Eggert  <eggert@cs.ucla.edu>
50124
50125	Fix unlikely races with GnuTLS, datagrams
50126
50127	Retry some calls if interrupted at inopportune times.
50128	These were found by code inspection.
50129	* src/gnutls.c (gnutls_try_handshake): Simplify by using
50130	new emacs_gnutls_handle_error API.
50131	(emacs_gnutls_write): Remove GNUTLS_E_AGAIN hack since
50132	emacs_gnutls_handle_error now does that.
50133	Use emacs_gnutls_handle_error only on errors.
50134	(emacs_gnutls_read): Retry if gnutls_record_recv returns
50135	GNUTLS_E_INTERRUPTED, to be consistent with emacs_read.
50136	(emacs_gnutls_handle_error): Return 0 on fatal errors,
50137	-1 (setting errno) on ordinary errors, to simplify callers.
50138	Assume that ERR is negative, since it always is now.
50139	Map non-fatal GnuTLS errors to errno values as best we can.
50140	* src/process.c (read_process_output) [DATAGRAM_SOCKETS]:
50141	Retry recvfrom if it is interrupted, to be consistent with
50142	how things are handled when not a datagram channel.
50143	(send_process) [DATAGRAM_SOCEKTS]: If sendto is interrupted,
50144	process pending signals and retry it, to be consistent with
50145	how things are handled when not a datagram channel.
50146
501472019-01-15  Daniel Colascione  <dancol@dancol.org>
50148
50149	Make sure dump-mode is nil after dump
50150
50151	* lisp/loadup.el (dump-mode): Bind dump-mode to nil before dumping
50152
501532019-01-15  Daniel Colascione  <dancol@dancol.org>
50154
50155	Add NEWS for pdumper
50156
501572019-01-15  Daniel Colascione  <dancol@dancol.org>
50158
50159	Add portable dumper
50160
50161	Add a new portable dumper as an alternative to unexec.  Use it by default.
50162
50163	* src/dmpstruct.awk: New file.
50164	* src/doc.c (get_doc_string): use will_dump_p().
50165	* src/editfns.c (styled_format): silence compiler warning
50166	with UNINIT.
50167	* src/emacs-module.c (syms_of_module): staticpro ltv_mark.
50168	* src/emacs.c (gflags): new variable.
50169	(init_cmdargs): unwrap
50170	(string_starts_with_p, find_argument, dump_error_to_string)
50171	(load_pdump): new functions.
50172	(main): detect pdumper and --temacs invocation; actually load
50173	portable dump when detected; set gflags as appropriate; changes to
50174	init functions throughout to avoid passing explicit
50175	'initialized' argument.
50176	* src/eval.c (inhibit_lisp_code): remove unused variable.
50177	(init_eval_once_for_pdumper): new function.
50178	(init_eval_once): call it.
50179	* src/filelock.c: CANNOT_DUMP -> will_dump_p()
50180	* src/fingerprint-dummy.c: new file
50181	* src/fingerprint.h: new file
50182	* src/fns.c: CANNOT_DUMP -> will_dump_p(), etc.
50183	(weak_hash_tables): remove
50184	(hashfn_equal, hashfn_eql): un-staticify
50185	(make_hash_table): set new 'next_weak' hash table field; drop
50186	global weak_hash_tables logic.
50187	(copy_hash_table): drop global weak_hash_tables logic.
50188	(hash_table_rehash): new function.
50189	(hash_lookup, hash_put, hash_remove_from_table, hash_clear):
50190	rehash if needed.
50191	(sweep_weak_table): un-staticify; explain logic; bool-ify.
50192	(sweep_weak_hash_tables): remove function.
50193	* src/font.c (syms_of_font): remember pdumper stuff.
50194	* src/fontset.c (syms_of_fontset): remember pdumper stuff.
50195	* src/frame.c (make_initial_frame): don't reset Vframe_list.
50196	(init_frame_once_for_pdumper, init_frame_once): new functions.
50197	(syms_of_frame): remove redundant staticpro.
50198	* src/fringe.c (init_fringe_once_for_pdumper): new functin.
50199	(init_fringe_once): call it.
50200	* src/ftcrfont.c (syms_of_ftcrfont_for_pdumper): new function.
50201	(syms_of_ftcrfont): call it.
50202	* src/ftfont.c (syms_of_ftfont_for_pdumper): new function.
50203	(syms_of_ftfont): call it.
50204	* src/ftxfont.c (syms_of_ftxfont_for_pdumper): new function.
50205	(syms_of_ftxfont): call it.
50206	* src/gmalloc.c: adjust for pdumper througout
50207	(DUMPED): remove weird custom dumped indicator.
50208	* src/gnutls.c (syms_of_gnutls): pdumper note for
50209	gnutls_global_initialized.
50210	* src/image.c (syms_of_image): add pdumper comment,
50211	initializer note.
50212	* src/insdel.c (prepare_to_modify_buffer_1): account
50213	for buffer contents possibly being in dump image.
50214	* src/keyboard.c (syms_of_keyboard_for_pdumper): new function.
50215	(syms_of_keyboard): staticpro more; call pdumper syms function.
50216	* src/lisp.h: add comments throughout
50217	(gflags): declare.
50218	(will_dump_p, will_bootstrap_p, will_dump_with_pdumper_p)
50219	(dumped_with_pdumper_p, will_dump_with_unexec_p)
50220	(dumped_with_unexec_p, definitely_will_not_unexec_p): new
50221	functions.
50222	(POWER_OF_2, ROUNDUP): move macros.
50223	(PSEUDOVECTOR_TYPE, PSEUDOVECTOR_TYPEP): take vectorlike header
50224	pointer instead of vector; constify.
50225	(Lisp_Hash_Table): add comment about need to rehash on access; add
50226	comment for next_weak.
50227	(HASH_KEY, HASH_VALUE, HASH_HASH, HASH_TABLE_SIZE): const-ify.
50228	(hash_table_rehash): declare.
50229	(hash_rehash_needed_p, hash_rehash_if_needed): new functions.
50230	(finalizers, doomed_finalizers): declare extern.
50231	(SUBR_SECTION_ATTRIBUTE): new macro.
50232	(staticvec, staticidx): un-static-ify.
50233	(sweep_weak_hash_tables): remove declaration.
50234	(sweep_weak_table): declare.
50235	(hashfn_eql, hashfn_equal): declare.
50236	(number_finalizers_run): new variable.
50237	(Vdead): externify when ENABLE_CHECKING.
50238	(gc_root_type): new enumeration.
50239	(gc_root_visitor): new struct.
50240	(visit_static_gc_roots): declare.
50241	(vectorlike_nbytes): declare.
50242	(vector_nbytes): define as trivial inline function wrapper for
50243	vectorlike_nbytes.
50244	(init_obarray_once): change signature.
50245	(primary_thread): extern-ify.
50246	(init_buffer): change signature.
50247	(init_frame_once): declare.
50248	* src/lread.c (readevalloop): adjust for new dumped predicates.
50249	(init_obarray_once): new function.
50250	(ndefsubr): new variable.
50251	(defsubr): increment it.
50252	(load_path_check): adjust for pdumper.
50253	(load_path_default): use pdumper functions; adjust for
50254	dump search.
50255	* src/macfont.m (macfont_init_font_change_handler): avoid
50256	shadowing global.
50257	(syms_of_macfont_for_pdumper): new function.
50258	(syms_of_macfont): call it.
50259	* src/menu.c (syms_of_menu): staticpro more stuff.
50260	* src/minibuf.c (Ftry_completion): rehash if needed.
50261	(init_minibuf_once_for_pdumper): new function.
50262	(init_minibuf_once): call it.
50263	* src/nsfont.m (syms_of_nsfns): staticpro more.
50264	* src/nsfont.m (syms_of_nsfont_for_pdumper): new function.
50265	(syms_of_nsfont): call it.
50266	* src/nsterm.m (syms_of_nsfont): remember pdumper stuff.
50267	* src/pdumper.c: new file.
50268	* src/pdumper.h: new file.
50269	* src/process.c (init_process_emacs): use new pdumper functions
50270	instead of CANNOT_DUMP.
50271	* src/profiler.c (syms_of_profiler_for_pdumper): new function.
50272	(syms_of_profiler_for_pdumper): call it.
50273	* src/search.c (syms_of_search_for_pdumper): new function.
50274	(syms_of_search_for_pdumper): call it.
50275	* src/sheap.c (bss_sbrk_did_unexec): remove.
50276	* src/sheap.h (bss_sbrk_did_unexec): remove.
50277	* src/syntax.c (syms_of_syntax): don't redundantly staticpro
50278	re_match_object.
50279	* src/sysdep.c: use will_dump_with_unexec_p() instead of bss
50280	hack thing.
50281	* src/syssignal.h (init_sigsegv): declare.
50282	* src/systime.h (init_timefns): remove bool from signature.
50283	* src/textprop.c (syms_of_textprop): move staticpro.
50284	* src/thread.c (main_thread_p): constify.
50285	* src/thread.h (main_thread_p): constify.
50286	* src/timefns.c (init_timefns): remove bool from signature.
50287	(syms_of_timefns_for_pdumper): new function.
50288	(syms_of_timefns): call it.
50289	* src/w32.c: rearrange code.
50290	* src/w32.h (w32_relocate): declare.
50291	* src/w32fns.c (syms_of_w32fns): add pdumper note.
50292	* src/w32font.c (syms_of_w32font_for_pdumper): new function.
50293	(syms_of_w32font): call it.
50294	* src/w32heap.c (using_dynamic_heap): new variable.
50295	(init_heap): use it.
50296	* src/w32menu.c (syms_of_w32menu): add pdumper note.
50297	* src/w32proc.c
50298	(ctrl_c_handler, mainCRTStartup, _start, open_input_file)
50299	(rva_to_section, close_file_data): move here.
50300	* src/w32uniscribe.c (syms_of_w32uniscribe_for_pdumper):
50301	new function.
50302	(syms_of_w32uniscribe): call it.
50303	* src/window.c (init_window_once_for_pdumper): new function.
50304	(init_window_once): call it; staticpro more stuff.
50305	* src/xfont.c (syms_of_xfont_for_pdumper): new function.
50306	(syms_of_xfont): call it.
50307	* src/xftfont.c (syms_of_xftfont_for_pdumper): new function.
50308	(syms_of_xftfont): call it.
50309	* src/xmenu.c (syms_of_xmenu_for_pdumper): new function.
50310	(syms_of_xmenu): call it.
50311	* src/xselect.c (syms_of_xselect_for_pdumper): new function.
50312	(syms_of_xselect): call it.
50313	* src/xsettings.c (syms_of_xsettings): add more pdumper notes.
50314	* src/term.c (syms_of_xterm): add pdumper note.
50315
50316	* src/dispnew.c (init_faces_initial): new function.
50317	(init_display_interactive): rename from init_display; use
50318	will_dump_p instead of !initialized.  Initialize faces early for
50319	pdumper if needed.
50320	(init_display): new function.
50321	(syms_of_display_for_pdumper): new function.
50322	(syms_of_display): call it.
50323
50324	* src/dbusbind.c (syms_of_dbusbind): Add TODO for bus reset
50325	on pdumper load.
50326
50327	* src/data.c (Fdefalias): Use will_dump_p
50328	instead of Vpurify_flag.
50329	(Fmake_variable_buffer_local): silence compiler warning with -Og
50330	by making valcontents UNINIT.
50331	(arith_driver): silence compiler warning with UNINIT.
50332
50333	* src/conf_post.h (ATTRIBUTE_SECTION): new macro.
50334
50335	* src/composite.c (composition_gstring_put_cache): rehash hash
50336	table if needed.
50337
50338	* src/coding.c (init_coding_once, syms_of_coding): remember
50339	pdumper stuff.
50340
50341	* src/charset.h (charset_table_size, charset_table_user): declare.
50342
50343	* src/charset.c (charset_table_used, charset_table_size): un-static.
50344	(init_charset_oncem, syms_of_charset): remember pdumper stuff.
50345
50346	* src/category.c (category_table_version): remove obsolete
50347	variable.
50348
50349	* src/callint.c (syms_of_callint): staticpro 'preserved_fns'
50350	(init_callproc): use will_dump_p instead of !CANNOT_DUMP.
50351
50352	* src/bytecode.c (exec_byte_code): rehash table tables if needed
50353
50354	* src/buffer.c (alloc_buffer_text, free_buffer_text): account for
50355	pdumper
50356	(init_buffer_once): add TODO; remember stuff for pdumper.
50357	(init_buffer): don't take initialized argument; adjust
50358	for pdumper.
50359
50360	* src/atimer.c (init_atimer): initialize subr only if
50361	!initialized.
50362
50363	* src/alloc.c: (vector_marked_p, set_vector_marked)
50364	(vectorlike_marked_p, set_vectorlike_marked, cons_marked_p)
50365	(set_cons_marked, string_marked_p, set_string_marked)
50366	(symbol_marked_p, set_symbol_marked, interval_marked_p)
50367	(set_interval_marked): new accessor routines.  Use them
50368	instead of raw GC access throughout.
50369	(Vdead): make non-static when ENABLE_CHECKING.
50370	(vectorlike_nbytes): rename of 'vector_nbytes'; take a vectorlike
50371	header as input instead of a vector.
50372	(number_finalizers_run): new internal C variable.
50373	(mark_maybe_object): check for pdumper objects.
50374	(valid_pointer_p): don't be gratuitously inefficient under rr(1).
50375	(make_pure_c_string): add support for size_byte = -2 mode
50376	indicating that string data points into Emacs image rodata.
50377	(visit_vectorlike_root): visits GC roots embedded in
50378	vectorlike objects.
50379	(visit_buffer_root): visits GC roots embedded in
50380	our totally-not-a-buffer buffer global objects.
50381	(visit_static_gc_roots): visit GC roots in the Emacs data section.
50382	(mark_object_root_visitor): root callback used for conventional GC
50383	marking
50384	(weak_hash_tables): new internal variable for tracking found weak
50385	hash tables during GC.
50386	(mark_and_sweep_weak_table_contents): new weak hash table marking.
50387	(garbage_collect_1): use new GC root visitor machinery.
50388	(mark_vectorlike): accept a vectorlike_header instead of a
50389	Lisp_Vector.
50390	(mark_frame, mark_window, mark_hash_table): new functions.
50391	(mark_object): initialize 'm'; check for pdumper objects and use
50392	new mark-bit accessors throughout.  Remove some object-specific
50393	marking code and move to helper functions above.
50394	(survives_gc_p): check for pdumper objects.
50395	(gc-sweep): clear pdumper mark bits.
50396	(init_alloc_once_for_pdumper): new helper function for early init
50397	called both during normal init and pdumper load.
50398	(init_alloc_once): pdumper integration.
50399
50400	* src/Makefile.in: Rewrite dumping for pdumper; add pdumper.o;
50401	invoke temacs with --temacs command line option; build dmpstruct.h
50402	from dmpstruct.awk; stop relying on CANNOT_DUMP; clean up pdumper
50403	intermediate files during build.
50404
50405	* nextstep/Makefile.in: build emacs.pdmp into NS packages
50406
50407	* lisp/startup.el: account for new '--temacs' and '--dump-file'
50408	command line option.
50409
50410	* lisp/loadup.el: rewrite early init to account for pdumper; use
50411	injected 'dump-mode' variable (set via the new '--temacs' option)
50412	instead of parsing command line.
50413
50414	* lisp/cus-start.el: Check 'dump-mode' instead of 'purify-flag',
50415	since the new 'dump-mode'
50416
50417	* lib-src/make-fingerprint.c: new program
50418
50419	* lib-src/Makefile.in: built make-fingerprint utility program
50420
50421	* configure.ac: Add --with-pdumper toggle to control pdumper
50422	support; add --with-unexec toggle to control unexec support.
50423	Add --with-dumping option to control which dumping strategy we use
50424	by default.  Adjust for pdumper throughout.  Check for
50425	posix_madvise.
50426
50427	* Makefile.in: Add @DUMPING@ substitution; add pdumper mode.
50428
50429	* .gitignore: Add make-fingerprint, temacs.in, fingerprint.c,
50430	dmpstruct.h, and pdumper dump files.
50431
504322019-01-15  Paul Eggert  <eggert@cs.ucla.edu>
50433
50434	Avoid using obsolete accept-process-output arg
50435
50436	* lisp/gnus/nnheader.el (nnheader-accept-process-output):
50437	* lisp/net/dns.el (dns-query):
50438	* lisp/net/imap.el (imap-wait-for-tag):
50439	* lisp/net/network-stream.el (network-stream-get-response):
50440	* lisp/net/pop3.el (pop3-accept-process-output):
50441	* lisp/obsolete/starttls.el (starttls-negotiate-gnutls)
50442	(starttls-open-stream-gnutls):
50443	* lisp/server.el (server-eval-at):
50444	* lisp/textmodes/ispell.el (ispell-accept-output):
50445	Do not depend on the obsolete milliseconds argument of
50446	accept-process-output.
50447
504482019-01-15  Paul Eggert  <eggert@cs.ucla.edu>
50449
50450	Fix accept-process-output/process-live-p confusion
50451
50452	* doc/lispref/processes.texi (Accepting Output):
50453	Document the issue.
50454	* lisp/net/tramp-adb.el (tramp-adb-parse-device-names):
50455	* lisp/net/tramp-rclone.el (tramp-rclone-parse-device-names):
50456	* lisp/net/tramp-smb.el (tramp-smb-wait-for-output):
50457	* lisp/net/tramp.el (tramp-interrupt-process):
50458	* test/src/process-tests.el (make-process/mix-stderr):
50459	Fix code that uses accept-process-output and process-live-p.
50460	Add FIXME comments as necessary.
50461	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-action-sudo):
50462	* lisp/net/tramp.el (tramp-action-out-of-band):
50463	Add FIXME comments as necessary.
50464
504652019-01-15  Alan Mackenzie  <acm@muc.de>
50466
50467	Make CC Mode and electric-pair-mode work together.  This fixes bug #33794
50468
50469	* lisp/progmodes/cc-cmds.el (c-electric-pound, c-electric-slash)
50470	(c-electric-star, c-electric-semi&comma, c-electric-colon, c-electric-lt-gt):
50471	Bind post-self-insert-hook to nil around calls to self-insert-command to
50472	protect against arbitrary functionality confusing CC Mode.
50473	(c-do-brace-electrics): New function, extracted from c-electric-brace and
50474	enhanced.
50475	(c-electric-brace): Bind post-self-insert-hook to nil around the call to
50476	self-insert-command.  When electric-pair-mode is configured, call
50477	electric-pair-post-self-insert-function.  Handle any deletion done by this
50478	function.  Call c-do-brace-electrics for the inserted brace, and perhaps for a
50479	brace inserted by electric-pair-self-insert-function.
50480	(c-electric-paren): Bind post-self-insert-hook to nil around the call to
50481	self-insert-command.  When electric-pair-mode is configured, call
50482	electric-pair-post-self-insert-function.
50483
504842019-01-14  Philipp Stephani  <phst@google.com>
50485
50486	Disable electric quotes for most files in the Emacs codebase.
50487
50488	* .dir-locals.el: Disable electric quotes in comments and strings for
50489	C, Emacs Lisp, and Texinfo, as the Emacs codebase doesn't use them.
50490
504912019-01-14  Stefan Monnier  <monnier@iro.umontreal.ca>
50492
50493	* lisp/emacs-lisp/package.el (package-activate-all): Fix last change
50494
50495	* lisp/emacs-lisp/package.el (package-activate-all): Silence load msg
50496
504972019-01-14  João Távora  <joaotavora@gmail.com>
50498
50499	Fix icomplete's cycling when filename filtering kicks in
50500
50501	(Bug#34070)
50502
50503	* lisp/icomplete.el (icomplete--filtered-completions): New variable.
50504	(icomplete-forward-completions, icomplete-backward-completions):
50505	Use it.
50506	(icomplete-completions): Set it.
50507
505082019-01-14  Robert Pluim  <rpluim@gmail.com>
50509
50510	Improve some of the breve/caron/cedilla mappings
50511
50512	* lisp/leim/quail/latin-pre.el ("latin-prefix"): Describe new 'c with
50513	cedilla mapping'.  Extend caron description.  Correct dot above
50514	description.  Add new mappings for 'a with breve' and 'c with caron'.
50515	Add additional mapping for 'c with cedilla'.  Delete ~o mapping for 'g
50516	with dot above'.
50517
505182019-01-14  Robert Pluim  <rpluim@gmail.com>
50519
50520	Fix some breve and dot above related doc strings
50521
50522	* lisp/leim/quail/latin-pre.el ("romanian-prefix"): Correct
50523	description of 'a with breve'.
50524	("romanian-alt-prefix"): Correct description of 'a
50525	with breve'.  Reformat other entries for consistency.
50526	("latin-3-prefix"): Correct 'dot above' description.
50527
505282019-01-13  Paul Eggert  <eggert@cs.ucla.edu>
50529
50530	Fix translation-region bug with MAX_CHAR
50531
50532	Also, clean up the code a bit.
50533	Actually I discovered the bug while cleaning up the code.
50534	* src/editfns.c (Fsubst_char_in_region)
50535	(Ftranslate_region_internal): Use bool for booleans.
50536	(Ftranslate_region_internal): Fix off-by-1 bug when a
50537	translation table translates the maximum char.  Assume C99
50538	decl-after-statement, similar minor cleanups.
50539	* test/src/editfns-tests.el (test-translate-region-internal):
50540	New test.
50541
505422019-01-13  Paul Eggert  <eggert@cs.ucla.edu>
50543
50544	Minor overflow fix in translate-region-internal
50545
50546	* src/editfns.c (Ftranslate_region_internal):
50547	Use ptrdiff_t, not int, for a count that might exceed INT_MAX.
50548
505492019-01-12  Pierre Téchoueyres  <pierre.techoueyres@free.fr>
50550
50551	Check that feature exist in `sql-set-product-feature' (Bug#30494).
50552
50553	* lisp/progmodes/sql.el (sql-set-product-feature): Add test for
50554	feature existence.
50555
505562019-01-11  Glenn Morris  <rgm@gnu.org>
50557
50558	Remove some obsolete stub files from etc/
50559
50560	* etc/CENSORSHIP, etc/FTP, etc/GNU, etc/LINUX-GNU, etc/MORE.STUFF:
50561	* etc/ORDERS, etc/THE-GNU-PROJECT, etc/WHY-FREE:
50562	Remove stub files that were marked obsolete 5 years ago.
50563
505642019-01-11  Martin Rudalics  <rudalics@gmx.at>
50565
50566	Run window change functions during redisplay
50567
50568	* doc/lispref/windows.texi (Window Sizes): Move (and rename)
50569	descriptions of 'window-pixel-height-before-size-change' and
50570	'window-pixel-width-before-size-change' to Window Hooks
50571	section.
50572	(Window Configurations): Remove warning against use of
50573	'save-window-excursion' in 'window-size-change-functions'.
50574	(Window Hooks): Rewrite section according to redesign of
50575	window change functions.
50576	* lisp/erc/erc-track.el (erc-window-configuration-change)
50577	(erc-modified-channels-update): Call latter directly from
50578	'window-configuration-change-hook' instead via
50579	'post-command-hook'.
50580	* lisp/frame.el (frame-size-changed-p): Change nomenclature
50581	in let bindings.
50582	* lisp/net/rcirc.el (rcirc-window-configuration-change)
50583	(rcirc-window-configuration-change-1): Call latter directly
50584	from 'window-configuration-change-hook' instead via
50585	'post-command-hook'.
50586	* lisp/window.el (window-pixel-width-before-size-change)
50587	(window-pixel-height-before-size-change): Defalias.
50588	(window--resize-mini-window, window-resize)
50589	(adjust-window-trailing-edge, delete-window)
50590	(delete-other-windows, balance-windows): Don't run
50591	'window-configuration-change-hook' any more from here.
50592	(split-window): Don't run 'window-configuration-change-hook'
50593	from here.  'run-window-scroll-functions' from here.
50594	(window--adjust-process-windows): Run from
50595	'window-configuration-change-hook' only.
50596	* src/frame.c (old_selected_frame): New Lisp variable.
50597	(make_frame): Initialize frame's change_stamp slot.
50598	(Fold_selected_frame): New function.
50599	* src/frame.h (struct frame): New slots old_selected_window,
50600	window_change, change_stamp and number_of_windows.
50601	(fset_old_selected_window): New inlined function.
50602	(FRAME_WINDOW_CHANGE, FRAME_OLD_SELECTED_WINDOW): New macros.
50603	* src/window.c (old_selected_window): New Lisp variable.
50604	(wset_old_buffer): New inlined function.
50605	(Fframe_old_selected_window, Fold_selected_window)
50606	(Fwindow_old_buffer): New functions.
50607	(Fwindow_old_pixel_width, Fwindow_old_pixel_height): Rename
50608	from Fwindow_pixel_width_before_size_change and
50609	Fwindow_pixel_height_before_size_change.  Update doc-strings.
50610	(Fwindow_old_body_pixel_width, Fwindow_old_body_pixel_height):
50611	New functions.
50612	(Fdelete_other_windows_internal): Set frame's window_change
50613	slot instead of running 'window-configuration-change-hook'.
50614	(Frun_window_configuration_change_hook): In doc-string tell
50615	that this function is no more needed.
50616	(Frun_window_scroll_functions): Amend doc-string.  Run with
50617	window's buffer current.
50618	(window_sub_list, window_change_record_windows)
50619	(window_change_record_frame, window_change_record)
50620	(run_window_change_functions_1, run_window_change_functions):
50621	New functions.
50622	(set_window_buffer): Set frame's window_change slot instead of
50623	running 'window-configuration-change-hook'.
50624	(make_window): Don't initialize pixel_width_before_size_change
50625	and pixel_height_before_size_change slots.
50626	(window_resize_apply, Fdelete_window_internal): Set frame's
50627	window_change slot.
50628	(Fsplit_window_internal): Set frame's window_change slot.
50629	Don't run 'window-scroll-functions' from here.
50630	* src/window.h (struct window): New slots old_buffer,
50631	change_stamp, old_pixel_width (renamed from
50632	pixel_width_before_size_change), old_pixel_height (renamed
50633	from pixel_height_before_size_change), old_body_pixel_width
50634	and old_body_pixel_height.
50635	* src/xdisp.c (init_iterator): Set frame's window_change slot
50636	when the body height or width changes.
50637	(prepare_menu_bars): Don't run_window_size_change_functions.
50638	(redisplay_internal): Don't run_window_size_change_functions,
50639	run_window_change_functions instead.
50640
506412019-01-10  Paul Eggert  <eggert@cs.ucla.edu>
50642
50643	List lengths are always fixnums now
50644
50645	Without this patch, it was theoretically possible for a list
50646	length to be a bignum, which means that safe-length could
50647	signal an error (due to generating a too-large bignum) contrary
50648	to its documentation.  Fix things to remove the theoretical
50649	possibility, so that list lengths are always fixnums (and so
50650	that list lenghts are always ptrdiff_t values too, since that
50651	is assumed internally anyway).
50652	* src/alloc.c (Fcons): Do not allocate so many conses that
50653	a list length won’t fit into ptrdiff_t or into fixnum.
50654	This matters only on weird platforms; on typical platforms,
50655	list lengths always fit anyway.
50656	* src/fns.c (list_length, Fsafe_length, proper-list-p):
50657	Remove integer overflow checks that are no longer needed.
50658
506592019-01-10  Paul Eggert  <eggert@cs.ucla.edu>
50660
50661	Minor tweaks to HAVE_NATIVE_SCALING code
50662
50663	This mostly just reindents.
50664	* src/image.c (x_set_image_size): Always define, but to a no-op
50665	if !HAVE_NATIVE_SCALING, to avoid an #ifdef elsewhere.
50666	(x_create_x_image_and_pixmap): Move decl to avoid an #ifdef.
50667	(image_create_x_image_and_pixmap): Move #ifdef outside of call.
50668	* src/xterm.c (x_composite_image): Avoid ‘else #endif’.
50669
506702019-01-10  Alan Third  <alan@idiocy.org>
50671
50672	Add native image scaling (bug#33587)
50673
50674	* configure.ac: Test for XRender outside of xft checks.
50675	* src/Makefile.in (XRENDER_LIBS): List XRender libs separately from
50676	xft libs.
50677	* lisp/image.el (image--get-imagemagick-and-warn): Allow resizing if
50678	native scaling is available.
50679	* src/dispextern.h: Add XRender and image scaling stuff.
50680	(struct image): Add XRender Pictures.
50681	* src/image.c (x_create_bitmap_mask):
50682	(image_create_x_image_and_pixmap): Handle XRender Picture.
50683	(scale_image_size):
50684	(compute_image_size): Make available when any form of scaling is
50685	enabled.
50686	(x_set_image_size): New function.
50687	(lookup_image): Set image size.
50688	(x_create_x_image_and_pixmap): Create XRender Picture when necessary.
50689	(x_put_x_image): Handle the case where desired size != actual size.
50690	(free_image): Free XRender Pictures.
50691	(Fimage_scaling_p): New function.
50692	(syms_of_image): Add image-scaling-p.
50693	* src/nsimage.m (ns_load_image): Remove NS specific resizing.
50694	([EmacsImage setSizeFromSpec:]): Remove method.
50695	(ns_image_set_size): New function.
50696	* src/nsterm.m (ns_draw_fringe_bitmap): Cocoa and GNUstep both have
50697	the same compositing functions, so remove unnecessary difference.
50698	* src/xterm.c (x_composite_image): New function.
50699	(x_draw_image_foreground): Use new x_composite_image function.
50700	* doc/lispref/display.texi (Image Descriptors): Document
50701	image-scaling-p and add resizing descriptors.
50702	(ImageMagick Images): Remove resizing descriptors.
50703
507042019-01-10  Alan Third  <alan@idiocy.org>
50705
50706	Fix drag and drop behaviour on NS (bug#30929)
50707
50708	* doc/emacs/macos.texi (Mac / GNUstep Events): Describe the new drag
50709	and drop behaviour.
50710	* lisp/term/ns-win.el (ns-drag-n-drop): Handle the new event format.
50711	(ns-drag-n-drop-other-frame):
50712	(ns-drag-n-drop-as-text):
50713	(ns-drag-n-drop-as-text-other-frame): Remove functions and key
50714	bindings.
50715	* src/nsterm.m ([EmacsView performDragOperation:]): Send Emacs event
50716	in new format without setting any modifiers.
50717
507182019-01-10  Michael Albinus  <michael.albinus@gmx.de>
50719
50720	New test custom--test-theme-variables
50721
50722	* test/lisp/custom-tests.el (custom--test-user-option)
50723	(custom--test-variable): New variables.
50724	(custom--test-theme-variables): New test.
50725
50726	* test/lisp/custom-resources/custom--test-theme.el (custom--test):
50727	New file.
50728
507292019-01-10  Martin Rudalics  <rudalics@gmx.at>
50730
50731	Handle dedicated status in 'window--display-buffer' (Bug#33870)
50732
50733	* lisp/window.el (display-buffer-record-window): Rewrite
50734	doc-string.
50735	(window--display-buffer): Remove fifth argument DEDICATED and
50736	either directly use a 'dedicated' entry in ALIST or the value
50737	of 'display-buffer-mark-dedicated' instead.
50738	(display-buffer-in-atom-window, display-buffer-use-some-frame)
50739	(display-buffer-pop-up-frame, display-buffer-pop-up-window)
50740	(display-buffer-below-selected, display-buffer-at-bottom):
50741	Adjust callers of 'window--display-buffer'.
50742	(window--make-major-side-window)
50743	(display-buffer-in-side-window): Handle dedicated status of
50744	the chosen side window via a 'dedicated' alist entry and
50745	adjust 'window--display-buffer' call.
50746	(display-buffer-in-child-frame): Set up TYPE correctly for and
50747	adjust 'window--display-buffer' call.
50748	(display-buffer-in-previous-window): Handle dedicated status
50749	of a previous window already showing BUFFER.
50750	* doc/lispref/windows.texi (Buffer Display Action Alists): New
50751	action alist entry 'dedicated'.
50752	(Dedicated Windows): Mention new buffer display action alist
50753	entry 'dedicated'.
50754	* etc/NEWS: Mention new buffer display action alist entry
50755	'dedicated'.
50756
507572019-01-09  Paul Eggert  <eggert@cs.ucla.edu>
50758
50759	Mention Japanese change in documentation
50760
507612019-01-09  Yasuhiro KIMURA  <yasu@utahime.org>
50762
50763	Change preferred Japanese coding system to UTF-8
50764
50765	* lisp/language/japan-util.el (setup-japanese-environment-internal):
50766	Use utf-8 as preferred coding system instead of japanese-iso-8bit when
50767	system is not MS-Windows. And while I'm at it, fix comment to fit current
50768	implementation.  (Bug#28705)
50769
507702019-01-09  Paul Eggert  <eggert@cs.ucla.edu>
50771
50772	Use shortcuts for Flength
50773
50774	When calculating the length of a Lisp object whose type is
50775	known, use a specialized length operation on it to save a bit
50776	of runtime overhead.
50777	* src/callint.c (Fcall_interactively):
50778	* src/minibuf.c (read_minibuf_unwind):
50779	Use ASIZE rather than Flength on values that must be vectors.
50780	* src/charset.c (Fsort_charsets):
50781	* src/coding.c (detect_coding_sjis):
50782	(Fdefine_coding_system_internal):
50783	* src/data.c (wrong_choice):
50784	* src/eval.c (Flet, eval_sub, Fapply, apply_lambda):
50785	* src/fns.c (sort_list):
50786	* src/font.c (font_vconcat_entity_vectors)
50787	(font_find_for_lface):
50788	* src/frame.c (Fmodify_frame_parameters):
50789	* src/fringe.c (get_logical_fringe_bitmap):
50790	* src/ftfont.c (ftfont_get_open_type_spec):
50791	* src/gtkutil.c (xg_print_frames_dialog):
50792	* src/lread.c (read1, read_vector):
50793	* src/keymap.c (Fkey_description):
50794	* src/kqueue.c (Fkqueue_add_watch):
50795	* src/macfont.m (macfont_get_open_type_spec):
50796	* src/menu.c (parse_single_submenu, x_popup_menu_1):
50797	* src/minibuf.c (Finternal_complete_buffer):
50798	* src/nsfont.m (ns_findfonts, nsfont_list_family):
50799	* src/process.c (Fmake_process):
50800	* src/search.c (Fset_match_data):
50801	* src/xfaces.c (Fx_family_fonts):
50802	Use list_length rather than Flength on values that must be lists.
50803	* src/fns.c (list_length): New function.
50804	(Flength): Use it.
50805	* src/nsfont.m (ns_findfonts):
50806	Use !NILP (x) rather than XFIXNUM (Flength (x)) != 0.
50807	* src/xdisp.c (store_mode_line_string):
50808	Use SCHARS rather than Flength on values that must be strings.
50809
508102019-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
50811
50812	* src/window.c (save_window_save): Revert part of d82e73f
50813
50814	...made unnecessary by a058edae.
50815
508162019-01-08  Paul Eggert  <eggert@cs.ucla.edu>
50817
50818	* admin/notes/unicode: Update to match recent changes.
50819
508202019-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
50821
50822	* lisp/emacs-lisp/map.el: Prepare for addition to GNU ELPA
50823
50824	* lisp/help-fns.el (help--load-prefixes): Demote errors from files.
50825
508262019-01-08  Michael Albinus  <michael.albinus@gmx.de>
50827
50828	Fix nasty cut'n'waste error in Tramp
50829
50830	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-do-copy-or-rename-file):
50831	Remove weird code, resulting from cut'n'waste.
50832
508332019-01-08  Michael Albinus  <michael.albinus@gmx.de>
50834
50835	Adapt .gitlab-ci.yml
50836
50837	* .gitlab-ci.yml (variables): Move outside jobs.  Use
50838	"GIT_STRATEGY: fetch".
50839	(before_script): Install git.
50840	(test-all): Rename from test.  Install inotify-tools.  Run "make
50841	check-expensive".
50842	(test-filenotify-gio): New job.
50843
508442019-01-07  Leo Liu  <sdl.web@gmail.com>
50845
50846	* lisp/progmodes/js.el: Remove unused (require 'thingatpt).
50847
508482019-01-07  Stefan Monnier  <monnier@iro.umontreal.ca>
50849
50850	Use utf-8 coding system for all our Elisp files
50851
50852	* lisp/international/ja-dic-cnv.el:
50853	* lisp/international/ja-dic-utl.el:
50854	* lisp/international/kinsoku.el:
50855	* lisp/international/kkc.el:
50856	* lisp/language/japan-util.el:
50857	* lisp/language/japanese.el:
50858	* lisp/leim/quail/cyril-jis.el:
50859	* lisp/leim/quail/hanja-jis.el:
50860	* lisp/leim/quail/japanese.el:
50861	* lisp/leim/quail/py-punct.el:
50862	* lisp/leim/quail/pypunct-b5.el: Use utf-8 coding system.
50863	* lisp/international/titdic-cnv.el: Use utf-8-emacs coding system.
50864
508652019-01-07  Stefan Monnier  <monnier@iro.umontreal.ca>
50866
50867	* lisp/international/titdic-cnv.el: Save generated files with utf-8
50868
50869	(titdic-convert, miscdic-convert): Use utf-8 when writing and don't
50870	bother putting a `coding:` tag since utf-8 is the default anyway.
50871
508722019-01-07  Glenn Morris  <rgm@gnu.org>
50873
50874	Merge from origin/emacs-26
50875
50876	f1ce72b ; ChangeLog.3 update
50877	5b59cf0 * etc/AUTHORS: Update.
50878	2cf20b6 * lisp/textmodes/mhtml-mode.el: Avoid loading flyspell.  (Bug...
50879
50880	# Conflicts:
50881	#	ChangeLog.3
50882	#	lisp/textmodes/mhtml-mode.el
50883
508842019-01-07  Glenn Morris  <rgm@gnu.org>
50885
50886	Merge from origin/emacs-26
50887
50888	0ecff00 Improve commentary in font.h
50889	a058eda Fix definition of Qwindow_point_insertion_type (Bug#33871)
50890
508912019-01-07  Glenn Morris  <rgm@gnu.org>
50892
50893	Merge from origin/emacs-26
50894
50895	5f2aa32 Update Unicode copyright notice
50896
508972019-01-07  Michael Albinus  <michael.albinus@gmx.de>
50898
50899	Adapt tests for emba
50900
50901	* test/lisp/filenotify-tests.el (file-notify-test03-events)
50902	(file-notify-test05-file-validity)
50903	(file-notify-test06-dir-validity)
50904	(file-notify-test07-many-events)
50905	(file-notify-test09-watched-file-in-watched-dir): Adapt tests for emba.
50906
509072019-01-06  Paul Eggert  <eggert@cs.ucla.edu>
50908
50909	Minor INFINITY/NAN cleanup
50910
50911	* src/lread.c (INFINITY): Use a more-portable way to specify
50912	this macro on non-C99 platforms that lack it.
50913	(NAN): Remove; unused.
50914
509152019-01-06  Paul Eggert  <eggert@cs.ucla.edu>
50916
50917	Fix logb on zero, infinite, NaN args
50918
50919	Change logb to return -infinity, +infinity, and NaN respectively.
50920	Formerly logb returned an extreme fixnum to represent
50921	infinity, but this is no longer the right thing to do now that
50922	we have bignums and there is no extreme integer.
50923	* doc/lispref/numbers.texi (Float Basics), etc/NEWS: Document.
50924	* src/floatfns.c (Flogb): Implement this.
50925
509262019-01-06  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
50927
50928	Use integers for syntax-pps-stats
50929
50930	* lisp/emacs-lisp/syntax.el (syntax-ppss-stats):
50931	Use integers, not floating-point, for stats, now that integers are
50932	unbounded.  Almost always these should be fixnums.  Add 1 to last
50933	slot’s car so that this addition need not be done at runtime.
50934	(syntax-pps-stats, syntax-ppss): Use integers for calculations.
50935	(syntax-ppss--update-stats): New convenience function.
50936	(syntax-ppss): Use it.
50937
509382019-01-06  Michael Albinus  <michael.albinus@gmx.de>
50939
50940	Adapt filenotify-tests for emba
50941
50942	* test/lisp/filenotify-tests.el (file-notify-test03-events)
50943	(file-notify-test05-file-validity)
50944	(file-notify-test06-dir-validity)
50945	(file-notify-test07-many-events)
50946	(file-notify-test09-watched-file-in-watched-dir): Adapt tests for emba.
50947
509482019-01-05  Khaled Hosny  <khaledhosny@eglug.org>
50949
50950	Always set explicit HarfBuzz buffer direction
50951
50952	If no direction was given by the caller, I assume the text will be drawn
50953	left to right, if this is not the case then callers must provide
50954	sensible direction. Letting HarfBuzz guess the direction is not
50955	appropriate since shaping and drawing must use the same direction.
50956
50957	Also move hb_buffer_guess_segment_properties() call to the end, so it
50958	only guessing unset properties, until we completely get rid of it.
50959
509602019-01-05  Khaled Hosny  <khaledhosny@eglug.org>
50961
50962	We need the bidi level not the paragraph direction
50963
509642019-01-05  Paul Eggert  <eggert@cs.ucla.edu>
50965
50966	Port to platforms where tputs is in libtinfow
50967
50968	* configure.ac (tputs_library): Also try tinfow, ncursesw (Bug#33977).
50969
509702019-01-05  João Távora  <joaotavora@gmail.com>
50971
50972	New flymake-supress-zero-counters defcustom
50973
50974	A feature suggested by Yuri Khan <yurivkhan@gmail.com>.
50975
50976	* lisp/progmodes/flymake.el (flymake-suppress-zero-counters): New
50977	variable.  (flymake--mode-line-format): Use it.
50978
509792019-01-05  João Távora  <joaotavora@gmail.com>
50980
50981	Fix Flymake tests for GCC 8.2.0
50982
50983	(Bug#33872)
50984
50985	"Now you have two problems..."
50986
50987	* lisp/progmodes/flymake-cc.el (flymake-cc--make-diagnostics):
50988	Adjust regexp.
50989
509902019-01-05  John Shahid  <jvshahid@gmail.com>  (tiny change)
50991
50992	Unbreak Flymake's diagnostics buffer when revisiting source
50993
50994	(Bug#33881)
50995
50996	* lisp/progmodes/flymake.el (flymake-show-diagnostics-buffer):
50997	Set flymake--diagnostics-buffer-source before reverting.
50998
509992019-01-05  Drew Adams  <drew.adams@oracle.com>
51000
51001	Don't signal error from "C-x C-k l" about mouse events
51002
51003	* lisp/edmacro.el (edmacro-fix-menu-commands): Ignore mouse
51004	events instead of signaling an error.  Display unsupported
51005	events in the error message.  (Bug#33930)
51006
510072019-01-05  Joel Rosdahl  <joel@rosdahl.net>  (tiny change)
51008
51009	Fix electric indent bug in python-mode after dedenting colon
51010
51011	* lisp/progmodes/python.el (python-indent-post-self-insert-function):
51012	Use markers instead of positions when reindenting statement(s) after
51013	inserting electric colon to avoid reindenting too many
51014	statements (bug#22663).
51015
51016	* test/lisp/progmodes/python-tests.el (python-indent-electric-colon-2):
51017	Improve test case to also verify the fix of bug#22663.
51018
510192019-01-04  Eli Zaretskii  <eliz@gnu.org>
51020
51021	Improve documentation of 'server-name'
51022
51023	* doc/emacs/misc.texi (Emacs Server, TCP Emacs server)
51024	(emacsclient Options):
51025	* lisp/server.el (server-name): Document the usage of
51026	'server-name' to specify the server file as an absolute file
51027	name.  (Bug#33934)
51028
510292019-01-03  Michael Albinus  <michael.albinus@gmx.de>
51030
51031	Mark some filenotify tests unstable on emba
51032
51033	* .gitlab-ci.yml (test): Add EMACS_EMBA_CI variable.
51034
51035	* test/lisp/filenotify-tests.el (file-notify-test03-events)
51036	(file-notify-test05-file-validity)
51037	(file-notify-test06-dir-validity)
51038	(file-notify-test07-many-events)
51039	(file-notify-test09-watched-file-in-watched-dir): Mark them as
51040	:unstable on emba.
51041
510422019-01-03  Michael Albinus  <michael.albinus@gmx.de>
51043
51044	Adapt test/README
51045
51046	* test/README: Speak about continous integration tests on hydra
51047	and emba.
51048
510492019-01-03  Andrey Kotlarski  <m00naticus@gmail.com>
51050
51051	Fix EBROWSE parsing of classes declared final.
51052
510532019-01-02  Philipp Stephani  <phst@google.com>
51054
51055	Avoid a compiler warning on macOS.
51056
51057	* src/xdisp.c (expose_window_tree): Define variable f only if used.
51058
510592019-01-02  Nicolas Petton  <nicolas@petton.fr>
51060
51061	Document the new functions of seq.el
51062
51063	* etc/NEWS: New section documenting the addition of `seq-first' and
51064	`seq-rest'.
51065
510662019-01-02  Eli Zaretskii  <eliz@gnu.org>
51067
51068	Fix text direction of the HarfBuzz shaping buffer
51069
51070	* src/indent.c (scan_for_column, compute_motion):
51071	* src/xdisp.c (CHAR_COMPOSED_P): Pass PDIR argument to
51072	composition_reseat_it.
51073	* src/composite.c (composition_reseat_it): Accept an
51074	additional argument PDIR that provides the current paragraph's
51075	base direction; all callers changed.  Use PDIR to fix
51076	calculation of the DIRECTION argument to autocmp_chars.
51077	(Bug#33944)
51078	* src/composite.h: Include dispextern.h.
51079	(composition_reseat_it): Update prototype.
51080
510812019-01-02  João Távora  <joaotavora@gmail.com>
51082
51083	Extend electric-layout-mode to handle more complex layouts (bug#33794)
51084
51085	Entries in electric-layout-rules can specify multiple
51086	newline-related actions which are executed in order of appearance.
51087
51088	Also, have it play nice with electric-pair-mode when inserting a
51089	newlines, particularly with electric-pair-open-newline-between-pairs.
51090
51091	Entries in electric-layout-rules can also be functions.  Among other
51092	things, the logic behind electric-pair-open-newline-between-pairs
51093	could now be moved to electric-layout-mode, but this commit doesn't do
51094	that yet.
51095
51096	This change was motivated by bug#33794 and is an alternative solution
51097	to the problem reported in that bug.
51098
51099	* lisp/electric.el (electric-layout-rules): Adjust docstring.
51100	(electric-layout-post-self-insert-function): Call
51101	electric-layout-post-self-insert-function-1.
51102	(electric-layout-post-self-insert-function-1): Rename from
51103	electric-layout-post-self-insert-function.  Redesign.
51104	(electric-layout-local-mode): New minor mode.
51105
51106	* test/lisp/electric-tests.el (electric-layout-int-main-kernel-style)
51107	(electric-layout-int-main-allman-style)
51108	(electric-modes-in-c-mode-with-self-insert-command)
51109	(electric-pair-mode-newline-between-parens)
51110	(electric-layout-mode-newline-between-parens-without-e-p-m)
51111	(electric-layout-mode-newline-between-parens-without-e-p-m-2): New
51112	tests.
51113	(plainer-c-mode): New helper.
51114
511152019-01-01  Paul Eggert  <eggert@cs.ucla.edu>
51116
51117	Don’t limit range error reports to fixnums
51118
51119	* src/lisp.h (CHECK_RANGED_INTEGER): When signaling an error,
51120	don’t arbitrarily limit the reported valid range to fixnums.
51121
511222019-01-01  Paul Eggert  <eggert@cs.ucla.edu>
51123
51124	Bignums from garbage-collect, memory-use-counts
51125
51126	Do not limit the results of garbage-collect and memory-use-counts
51127	to fixnums, as they might be bignums now on 32-bit hosts.
51128	* src/lisp.h (byte_ct): New type.
51129	* src/alloc.c (object_ct): New type.
51130	(consing_since_gc, gc_relative_threshold)
51131	(memory_full_cons_threshold, total_string_bytes):
51132	Now byte_ct, not EMACS_INT.
51133	(total_conses, total_symbols, total_buffers, total_free_conses)
51134	(total_free_symbols, total_free_floats, total_floats)
51135	(total_free_intervals, total_intervals, total_strings)
51136	(total_free_strings, total_vectors, total_vector_slots)
51137	(total_free_vector_slots): Now object_ct, not EMACS_INT.
51138	(bounded_number): Remove.  All uses removed.
51139	(object_bytes): New function.
51140	(total_bytes_of_live_objects, garbage_collect_1): Use byte_ct,
51141	not size_t, to count total GC bytes where multiple objects are
51142	involved.
51143	(garbage_collect_1, Fmemory_use_counts):
51144	Do not limit returned counts to fixnums.
51145	(sweep_conses, sweep_floats, sweep_intervals, sweep_symbols):
51146	Use object_ct, not EMACS_INT, to count GC objects.
51147
511482019-01-01  Paul Eggert  <eggert@cs.ucla.edu>
51149
51150	Be consistent about list length fixnum overflow
51151
51152	* src/fns.c (Flength, Fproper_list_p): Use overflow_error to
51153	report the (typically impossible) fixnum overflow.
51154
511552019-01-01  Paul Eggert  <eggert@cs.ucla.edu>
51156
51157	Fix woman.el to not confuse scan-sexps
51158
51159	* lisp/woman.el (woman-unpadded-space-char):
51160	Escape the close-bracket (Bug#33940).
51161
511622019-01-01  Paul Eggert  <eggert@cs.ucla.edu>
51163
51164	decode-time: allow bignum years
51165
51166	* src/timefns.c (TM_YEAR_BASE):
51167	Now a constant as it need not be a macro.
51168	(Fdecode_time): Do not signal an overflow merely because the
51169	Gregorian year number does not fix in a fixnum (which can
51170	happen on hosts with 64-bit time_t and with 32-bit int and
51171	EMACS_INT).
51172
511732018-12-31  Paul Eggert  <eggert@cs.ucla.edu>
51174
51175	Fix integer overflow check in json code
51176
51177	* src/json.c (json_to_lisp): Check for ptrdiff_t overflow,
51178	not fixnum overflow.
51179
511802018-12-31  Paul Eggert  <eggert@cs.ucla.edu>
51181
51182	Update more copyright years
51183
51184	Update some other copyright years automatically, by running:
51185	Run 'UPDATE_COPYRIGHT_YEAR=2019 \
51186	UPDATE_COPYRIGHT_USE_INTERVALS=1 \
51187	UPDATE_COPYRIGHT_MAX_LINE_LENGTH=79 admin/update-copyright'
51188	followed by 'admin/merge-gnulib'.
51189
511902018-12-31  Paul Eggert  <eggert@cs.ucla.edu>
51191
51192	Update from Gnulib
51193
51194	This incorporates mostly just copyright-year changes, plus
51195	recent minor updates from glibc for the non-Emacs regular
51196	expression code.
51197
511982018-12-31  Paul Eggert  <eggert@cs.ucla.edu>
51199
51200	Merge from origin/emacs-26
51201
51202	2fcf2df Fix copyright years by hand
51203	26bed8b Update copyright year to 2019
51204	2814292 Fix value of default frame height.  (Bug#33921)
51205
512062018-12-31  Paul Eggert  <eggert@cs.ucla.edu>
51207
51208	Remove UCHAR typedef
51209
51210	* src/lisp.h (_UCHAR_T, UCHAR): Remove.  This workaround for
51211	circa-1993 old-AIX has evidently not been needed for decades.
51212	Tested on AIX 7.1, the oldest AIX version IBM still supports.
51213
512142018-12-31  Michael Albinus  <michael.albinus@gmx.de>
51215
51216	Reset `tramp-default-proxies-alist' in case of errors
51217
51218	* lisp/net/tramp-sh.el (tramp-compute-multi-hops):
51219	Reset `tramp-default-proxies-alist' in case of errors.
51220
512212018-12-31  Michael Albinus  <michael.albinus@gmx.de>
51222
51223	Precise documentation of Tramp ad-hoc proxies
51224
51225	* doc/misc/tramp.texi (Ad-hoc multi-hops): Remove superfluous
51226	first entry about %h and %u.  Describe, how to remove ad-hoc proxy
51227	definitions.
51228	(Cleanup remote connections): Mention, that also ad-hoc proxy
51229	definitions are removed.
51230
51231	* etc/NEWS: Mention default host names in Tramp ad-hoc proxies.
51232
512332018-12-31  Michael Albinus  <michael.albinus@gmx.de>
51234
51235	* lisp/files.el (locate-file, files--splice-dirname-file): Fix docstring.
51236
512372018-12-30  Paul Eggert  <eggert@cs.ucla.edu>
51238
51239	Fix assertion-violations on non-integers
51240
51241	These bugs were introduced after bignums were added.
51242	* src/data.c (cons_to_unsigned, cons_to_signed):
51243	* src/xdisp.c (calc_line_height_property):
51244	Invoke integer_to_intmax and integer_to_uintmax only on integers.
51245
512462018-12-30  Glenn Morris  <rgm@gnu.org>
51247
51248	Merge from origin/emacs-26
51249
51250	82c82b1 (origin/emacs-26) In user manual fix value of default frame h...
51251	2e8825d Improve documentation of 'file-local-name' and related APIs
51252	11f0635 ; Remove comment in esh-proc.el
51253
51254	# Conflicts:
51255	#	lisp/simple.el
51256
512572018-12-30  Glenn Morris  <rgm@gnu.org>
51258
51259	Merge from origin/emacs-26
51260
51261	3abebeb * lisp/files.el (cd): Fix last change.  (Bug#33791)
51262	7a60a4f Fix remote directories in Eshell on MS-Windows
51263	822a2d0 Fix :type 'group' in defcustom
51264	a731c56 Fix NS fringe bitmap drawing bug (bug#33864)
51265	0c52459 Fix commentary in dispnew.c
51266	c9fdd1b Improve accept-process-process doc
51267	9578c2a Fix a simple bug in display-buffer-use-some-frame
51268	0f9be72 Clarify thread switching while waiting for process output
51269	24ddea0 Improve process doc. with respect to handling of large input ...
51270	2931016 ; Cosmetic changes in etc/NEWS
51271	85516b8 Minor copyedits in landmark.el
51272
51273	# Conflicts:
51274	#	etc/NEWS
51275
512762018-12-30  Alan Mackenzie  <acm@muc.de>
51277
51278	CC Mode - use font-lock-comment-delimiter-face on block comment end delimiters
51279
51280	In particular when the default comment type is currently line comments.  Do
51281	this by setting font-lock-comment-end-skip.
51282
51283	* lisp/progmodes/cc-cmds.el (c-font-lock-comment-end-skip): New lang const.
51284	(font-lock-comment-end-skip): New c-lang-setvar.
51285
512862018-12-30  Martin Rudalics  <rudalics@gmx.at>
51287
51288	Handle 'unbound' like nil for 'window-point-insertion-type' (Bug#33871)
51289
51290	* src/window.c (save_window_save): When setting the marker
51291	insertion type of saved window points treat a buffer local
51292	value of 'unbound' for 'window-point-insertion-type' like
51293	nil (Bug#33871).
51294
512952018-12-29  Dmitry Gutov  <dgutov@yandex.ru>
51296
51297	Skip 'basic' completion style for project-find-file
51298
51299	* lisp/minibuffer.el (completion-category-defaults): Skip 'basic'
51300	for 'project-file', in order not to prefer files at the top of the
51301	directory tree.
51302
513032018-12-29  Mattias Engdegård  <mattiase@acm.org>
51304
51305	Handle raw bytes, and LF in ranges, in rx `any' argument strings
51306
51307	* lisp/emacs-lisp/rx.el (rx-check-any-string): Rewrite to handle raw bytes
51308	in unibyte strings and accept LF as range endpoints (Bug#33205).
51309	* test/lisp/emacs-lisp/rx-tests.el: Add tests for the above.
51310
513112018-12-29  Eli Zaretskii  <eliz@gnu.org>
51312
51313	Provide text directionality and language to HarfBuzz shaper
51314
51315	* lisp/language/tv-util.el (tai-viet-composition-function):
51316	* lisp/language/ethio-util.el (ethio-composition-function):
51317	* lisp/language/japanese.el (compose-gstring-for-variation-glyph):
51318	* lisp/language/thai-util.el (thai-composition-function):
51319	* lisp/language/misc-lang.el (arabic-shape-gstring):
51320	* lisp/language/lao-util.el (lao-composition-function):
51321	* lisp/language/hebrew.el (hebrew-shape-gstring):
51322	* lisp/composite.el (compose-gstring-for-graphic)
51323	(compose-gstring-for-dotted-circle, auto-compose-chars)
51324	(compose-gstring-for-terminal): Accept 2nd argument DIRECTION; all
51325	callers changed.
51326
51327	* src/composite.c (composition_reseat_it): Call
51328	auto-composition-function with one more argument DIRECTION.
51329	(syms_of_composite) <auto-composition-function>: Update the doc
51330	string.
51331	* src/ftfont.c (ftfont_shape_by_hb): Compute language and
51332	direction, and set buffer properties accordingly.
51333	* src/composite.c (autocmp_chars):
51334	* src/w32uniscribe.c (uniscribe_shape):
51335	* src/xftfont.c (xftfont_shape):
51336	* src/ftfont.c (ftfont_shape, ftfont_shape_by_hb):
51337	* src/font.c (Ffont_shape_gstring): Accept an additional argument
51338	DIRECTION.
51339	* src/macfont.m (lgstring_direction): New enum.
51340	(mac_font_shape_1, mac_screen_font_shape, mac_font_shape):
51341	Accept an additional argument specifying text direction.  All
51342	callers changed.
51343	* src/font.c (syms_of_font): New symbols QL2R and QR2L.
51344	* src/font.h (shape): Accept new argument DIRECTION.  All
51345	implementations changed.  (Bug#33729)
51346	(ftfont_shape): Update prototype.
51347
513482018-12-29  Martin Rudalics  <rudalics@gmx.at>
51349
51350	Avoid that unwind_format_mode_line messes up buffer points (Bug#32777)
51351
51352	* src/xdisp.c (format_mode_line_unwind_data): Before
51353	temporarily selecting a window on another frame, separately save
51354	the point of that window's buffer too.
51355	(unwind_format_mode_line): After undoing the temporary
51356	selection of a window on another frame, separately restore the
51357	buffer point of that window.  This is needed since the
51358	operation that deselects that window will have stored back the
51359	point of that window into its buffer's point which is wrong
51360	since that window was never "officially" selected (Bug#32777).
51361
513622018-12-28  Dmitry Gutov  <dgutov@yandex.ru>
51363
51364	project-find-file: Move the common parent directory to the prompt
51365
51366	* lisp/progmodes/project.el (project--completing-read-strict):
51367	Extract the common parent directory of all files first
51368	(https://lists.gnu.org/archive/html/emacs-devel/2018-12/msg00444.html).
51369
513702018-12-28  Michael Albinus  <michael.albinus@gmx.de>
51371
51372	* lisp/net/tramp-sh.el (tramp-set-remote-path): Handle platforms w/o getconf.
51373
513742018-12-27  Paul Eggert  <eggert@cs.ucla.edu>
51375
51376	Improve motivations in gomoku messages
51377
51378	* lisp/play/gomoku.el (gomoku-terminate-game):
51379	Don't make six-year-old children cry (Bug#33803).
51380
513812018-12-27  Paul Pogonyshev  <pogonyshev@gmail.com>
51382
51383	Accept 1-arg 'substring' calls in byte compiler
51384
51385	Those have been supported by the function implementation since
51386	commit 2014-03-31T12:06:34Z!dmantipov@yandex.ru (Bug#33807).
51387	* lisp/emacs-lisp/bytecomp.el: substring has 1-3 args, not 2-3.
51388
513892018-12-27  Paul Eggert  <eggert@cs.ucla.edu>
51390
51391	Update from Gnulib
51392
51393	* build-aux/config.guess, lib/regcomp.c, lib/regex.c:
51394	* lib/regex_internal.h, lib/regexec.c: Copy from Gnulib.
51395
513962018-12-27  Eli Zaretskii  <eliz@gnu.org>
51397
51398	Avoid assertion violation in directory-files
51399
51400	* src/dired.c (directory_files_internal): Make sure MATCH is
51401	either nil or a string.  (Bug#33889)
51402
514032018-12-27  Michael Albinus  <michael.albinus@gmx.de>
51404
51405	Bump Tramp version to 2.4.1
51406
51407	* doc/misc/trampver.texi:
51408	* lisp/net/tramp.el:
51409	* lisp/net/trampver.el: Change version to "2.4.1".
51410
514112018-12-27  Martin Rudalics  <rudalics@gmx.at>
51412
51413	Fix last change of debug.el
51414
51415	* lisp/emacs-lisp/debug.el (debug): In noninteractive calls do
51416	the buffer text truncation in the debugger buffer.
51417
514182018-12-26  Dmitry Gutov  <dgutov@yandex.ru>
51419
51420	Tone down diff-refine-removed and diff-refine-added as well
51421
51422	* lisp/vc/diff-mode.el (diff-refine-removed, diff-refine-added):
51423	Change backgrounds in light backgrounds themes (bug#33567).
51424
514252018-12-26  Paul Eggert  <eggert@cs.ucla.edu>
51426
51427	Port message-checksum to bignums
51428
51429	* lisp/gnus/message.el (message--rotate-fixnum-left): New function.
51430	(message-checksum): Use it instead of assuming fixnum-only arithmetic.
51431	This should fix Bug#33083.
51432
514332018-12-26  Martin Rudalics  <rudalics@gmx.at>
51434
51435	Set up debugger buffer earlier and fit window to it (Bug#32825)
51436
51437	* lisp/emacs-lisp/debug.el (debug): Set up debugger buffer
51438	before displaying it and advise 'display-buffer' to fit the
51439	window to it (Bug#32825).
51440
514412018-12-25  Dmitry Gutov  <dgutov@yandex.ru>
51442
51443	Tone down diff-added and diff-removed in light themes
51444
51445	* lisp/vc/diff-mode.el (diff-removed, diff-added): Tone down
51446	light background colors (bug#33567).
51447
514482018-12-25  Juri Linkov  <juri@linkov.net>
51449
51450	* lisp/isearch.el (isearch-done): Reset isearch-lazy-highlight-last-string
51451
51452	to nil (bug#33838).
51453	(isearch-lazy-highlight-new-loop)
51454	(isearch-lazy-highlight-buffer-update): Don't set arg ELLIPSIS of
51455	isearch-message to t to not reset the value of isearch-error.
51456
514572018-12-25  Juri Linkov  <juri@linkov.net>
51458
51459	* lisp/vc/diff-mode.el (diff-syntax-fontify-hunk): Add `*' to names
51460
51461	of ephemeral buffers like in " *org-src-fontification:%s*" from
51462	`org-src-font-lock-fontify-block'.  (Bug#33567)
51463	(diff-header, diff-file-header): Tone down light background colors.
51464
514652018-12-25  Dmitry Gutov  <dgutov@yandex.ru>
51466
51467	Prepend 'rubocop' with 'bundle exec' when appropriate
51468
514692018-12-25  Dmitry Gutov  <dgutov@yandex.ru>
51470
51471	Use rubocop --lint when no .rubocop.yml
51472
51473	* lisp/progmodes/ruby-mode.el (ruby-flymake-rubocop): When no
51474	config file found, only run lint cops (bug#31760).
51475
514762018-12-25  Michael Albinus  <michael.albinus@gmx.de>
51477
51478	Provide tramp-adb-handle-make-process
51479
51480	* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
51481	Add `tramp-adb-handle-make-process' and
51482	`tramp-handle-start-file-process'.
51483	(tramp-adb-handle-make-process): New defun, derived from
51484	`tramp-adb-handle-start-file-process'.  (Bug#28691)
51485
514862018-12-24  Michael Albinus  <michael.albinus@gmx.de>
51487
51488	Provide tramp-sh-handle-make-process
51489
51490	* lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
51491	Add `tramp-sh-handle-make-process' and
51492	`tramp-handle-start-file-process'.
51493	(tramp-sh-handle-make-process): New defun, derived from
51494	`tramp-sh-handle-start-file-process'.  (Bug#28691)
51495
51496	* lisp/net/tramp.el (tramp-handle-start-file-process): New defun.
51497
51498	* test/lisp/net/tramp-tests.el (tramp-test30-make-process):
51499	New test.
51500	(tramp-test31-interrupt-process, tramp-test32-shell-command)
51501	(tramp-test33-environment-variables)
51502	(tramp-test33-environment-variables-and-port-numbers)
51503	(tramp-test34-explicit-shell-file-name, tramp-test35-exec-path)
51504	(tramp-test35-remote-path, tramp-test36-vc-registered)
51505	(tramp-test37-make-auto-save-file-name)
51506	(tramp-test38-find-backup-file-name)
51507	(tramp-test39-make-nearby-temp-file)
51508	(tramp-test40-special-characters)
51509	(tramp-test40-special-characters-with-stat)
51510	(tramp-test40-special-characters-with-perl)
51511	(tramp-test40-special-characters-with-ls, tramp-test41-utf8)
51512	(tramp-test41-utf8-with-stat, tramp-test41-utf8-with-perl)
51513	(tramp-test41-utf8-with-ls, tramp-test42-file-system-info)
51514	(tramp-test43-asynchronous-requests, tramp-test44-auto-load)
51515	(tramp-test44-delay-load, tramp-test44-recursive-load)
51516	(tramp-test44-remote-load-path, tramp-test45-unload): Rename.
51517
515182018-12-23  Dmitry Gutov  <dgutov@yandex.ru>
51519
51520	xref-goto-xref: Highlight the exact symbol after the jump
51521
51522	* lisp/progmodes/xref.el (xref-goto-xref): Bind
51523	'xref--current-item' to highlight the exact symbol after the jump
51524	and not the whole line.
51525
515262018-12-23  Dmitry Gutov  <dgutov@yandex.ru>
51527
51528	execute-extended-command: Skip waiting in more cases
51529
51530	* lisp/simple.el (execute-extended-command): Don't wait when
51531	there's no binding the current command, and the user doesn't want
51532	to see "shorter" suggestions, or TYPED is nil anyway.
51533
515342018-12-23  Khaled Hosny  <khaledhosny@eglug.org>
51535
51536	Clarify one FIXME a bit
51537
515382018-12-23  Khaled Hosny  <khaledhosny@eglug.org>
51539
51540	Cache HarfBuzz buffer
51541
51542	Potentially faster and less memory allocations. I did not do any
51543	measurements though, so possibly a micro optimization.
51544
515452018-12-23  Khaled Hosny  <khaledhosny@eglug.org>
51546
51547	Remove one more FIXME
51548
515492018-12-23  Michael Albinus  <michael.albinus@gmx.de>
51550
51551	Handle `make-process' in Tramp and ange-ftp
51552
51553	* doc/lispref/processes.texi (Asynchronous Processes):
51554	Explain, that not all file name handlers support `make-process'.
51555
51556	* lisp/net/ange-ftp.el:
51557	* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
51558	* lisp/net/tramp-archive.el (tramp-archive-file-name-handler-alist):
51559	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
51560	* lisp/net/tramp-rclone.el (tramp-rclone-file-name-handler-alist):
51561	* lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
51562	* lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
51563	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-file-name-handler-alist):
51564	* lisp/net/tramp.el (tramp-file-name-for-operation): Add `make-process'.
51565
51566	* lisp/vc/ediff-util.el:
51567	* src/process.c:
51568	* test/src/process-tests.el: Use "file name handler" consequently.
51569
515702018-12-22  Juri Linkov  <juri@linkov.net>
51571
51572	* lisp/simple.el (next-error-no-select): Use save-selected-window.
51573
51574	Let-bind display alist of display-buffer-overriding-action to
51575	`(inhibit-same-window . t)'.  (Bug#32607)
51576
515772018-12-22  Philipp Stephani  <p.stephani2@gmail.com>
51578
51579	Add file name handler support for 'make-process' (Bug#28691)
51580
51581	* src/process.c (Fmake_process): Add new keyword argument
51582	':file-handler'.
51583	(syms_of_process) <make-process, :file-handler>: Define new symbols.
51584
51585	* lisp/files.el (file-name-non-special): Add support for
51586	'make-process'.
51587
51588	* test/src/process-tests.el (make-process/file-handler/found)
51589	(make-process/file-handler/not-found)
51590	(make-process/file-handler/disable): New unit tests.
51591	(process-tests--file-handler): New helper function.
51592
51593	* test/lisp/files-tests.el
51594	(files-tests-file-name-non-special-make-process): New unit test.
51595
51596	* doc/lispref/files.texi (Magic File Names): Document that
51597	'make-process' can invoke file name handlers.
51598
51599	* doc/lispref/processes.texi (Asynchronous Processes): Document
51600	':file-handlers' argument to 'make-process'.
51601
51602	* etc/NEWS (Lisp Changes in Emacs 27.1): Mention new
51603	:file-handler argument for 'make-process'.
51604
516052018-12-22  Eli Zaretskii  <eliz@gnu.org>
51606
51607	* etc/HELLO: Add missing charset properties for Japanese and Korean.
51608
516092018-12-22  Charles A. Roelli  <charles@aurox.ch>
51610
51611	Macroexpand before evaluating in eval-expression (bis)
51612
51613	* lisp/simple.el (eval-expression): Macroexpand before
51614	evaluating.  This repeats the fix made for Bug#20730 in
51615	another branch of the code a few lines down.
51616
516172018-12-22  Khaled Hosny  <khaledhosny@eglug.org>
51618
51619	Replace another FIXME with a TODO and expanded comment
51620
51621	Replace a FIXME with an expanded comment
51622
516232018-12-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
51624
51625	ldap.el: Do not set process-connection-type
51626
51627	* lisp/net/ldap.el (ldap-search-internal): Leave
51628	process-connection-type at its default value.  (Bug#33050)
51629
516302018-12-22  Michael Albinus  <michael.albinus@gmx.de>
51631
51632	Use "file name handler" consequently
51633
51634	* doc/lispref/files.texi:
51635	* doc/lispref/processes.texi:
51636	* doc/misc/ediff.texi:
51637	* lisp/simple.el:
51638	* lisp/vc/ediff-ptch.el:
51639	* src/buffer.c:
51640	* src/dired.c:
51641	* src/fileio.c:
51642	* src/image.c:
51643	* src/insdel.c:
51644	* src/w32fns.c: Use "file name handler" consequently.
51645
516462018-12-22  Khaled Hosny  <khaledhosny@eglug.org>
51647
51648	Subclass default HarfBuzz Unicode functions
51649
51650	Instead of creating new functions from scratch, subclass the default
51651	implementation and override the selected functions we want/can
51652	override.  (Bug#33729)
51653
516542018-12-22  Khaled Hosny  <khaledhosny@eglug.org>
51655
51656	Fix previous commit
51657
516582018-12-22  Khaled Hosny  <khaledhosny@eglug.org>
51659
51660	Properly fix building with HarfBuzz and without libotf
51661
51662	HarfBuzz support does not depend on libotf, the build breakage when
51663	libotf is missing was because code guarded with:
51664
51665	 #if defined HAVE_M17N_FLT && defined HAVE_LIBOTF
51666
51667	was incorrectly changed to:
51668
51669	 #if defined HAVE_M17N_FLT || defined HAVE_HARFBUZZ
51670
51671	this is now properly fixed by making it:
51672
51673	 #if (defined HAVE_M17N_FLT && defined HAVE_LIBOTF) || defined HAVE_HARFBUZZ
51674
51675	Other changes in previous commits were reverted.
51676
516772018-12-21  Michael Albinus  <michael.albinus@gmx.de>
51678
51679	Fix Bug#33735
51680
51681	* lisp/net/tramp-sh.el (tramp-sh-gio-monitor-process-filter):
51682	Delete empty lines.  (Bug#33735)
51683	(tramp-sh-inotifywait-process-filter): Use `string-match'.
51684	(tramp-set-remote-path): Check for PIPE_BUF but PATH_MAX.
51685
51686	* test/lisp/filenotify-tests.el: Handle $REMOTE_FILE_NOTIFY_LIBRARY.
51687	(file-notify--deftest-remote): Suppress vc-handled-backends.
51688	(file-notify-test08-backup): Do not expect failure on hydra.
51689	(Bug#33735).
51690
516912018-12-21  Michael Albinus  <michael.albinus@gmx.de>
51692
51693	* test/lisp/filenotify-tests.el, test/lisp/shadowfile-tests.el:
51694
51695	Don't require tramp-sh, bug#33781 is fixed.
51696
516972018-12-20  Juri Linkov  <juri@linkov.net>
51698
51699	* lisp/emacs-lisp/debug.el (debug): Add display-buffer-below-selected
51700
51701	to display actions of pop-to-buffer, and `(window-min-height . 10)'
51702	to display alist.  (Bug#32825)
51703
517042018-12-20  Juri Linkov  <juri@linkov.net>
51705
51706	* lisp/windmove.el (windmove-delete-in-direction): Change prefix arg C-u
51707
51708	to kill the buffer.  Add prefix arg M-0 to delete the selected window.
51709	(Bug#32790)
51710
517112018-12-20  Juri Linkov  <juri@linkov.net>
51712
51713	* lisp/window.el (switch-to-buffer-obey-display-actions): New defcustom.
51714
51715	(switch-to-buffer): Use it.  (Bug#32790)
51716	(switch-to-buffer-preserve-window-point):  Mention it in docstring.
51717
51718	* lisp/windmove.el (windmove-display-in-direction): Mention it in docstring.
51719
51720	* doc/lispref/windows.texi (Switching Buffers):
51721	Document switch-to-buffer-obey-display-actions.
51722
517232018-12-20  Juri Linkov  <juri@linkov.net>
51724
51725	* lisp/hi-lock.el (hi-salmon, hi-aquamarine): New faces.  (Bug#33398)
51726
51727	(hi-lock-face-defaults): Add them.
51728	(hi-green-b, hi-red-b): Tone down foreground colors.
51729
517302018-12-20  Glenn Morris  <rgm@gnu.org>
51731
51732	Merge from origin/emacs-26
51733
51734	081fb69 (origin/emacs-26) Check result from c-backward-token-2 to avo...
51735	f4ea746 cl-make-random-state was not copying its arg
51736
517372018-12-20  Glenn Morris  <rgm@gnu.org>
51738
51739	Merge from origin/emacs-26
51740
51741	4c6c327 Restrict downcasing in elisp xref tests (bug#25534)
51742	ab8ed41 Avoid test failures if directory name looks like a regexp
51743
517442018-12-20  Glenn Morris  <rgm@gnu.org>
51745
51746	Merge from origin/emacs-26
51747
51748	5825279 * doc/lispintro/emacs-lisp-intro.texi (Finding More): Fix xref.
51749
517502018-12-20  Stefan Monnier  <monnier@iro.umontreal.ca>
51751
51752	* lisp/emacs-lisp/map.el: Add support for plists
51753
51754	(map--plist-p, map--plist-delete): New functions.
51755	(map-elt, map-delete, map-length, map-into, map-put!, map-insert)
51756	(map-apply, map-do): Handle the plist case.
51757
51758	* test/lisp/emacs-lisp/map-tests.el (with-maps-do): Add sample plist.
51759	(test-map-put!): The behavior of map-put! is not the same for plists as
51760	for alists.
51761
517622018-12-20  Michael Albinus  <michael.albinus@gmx.de>
51763
51764	* test/lisp/net/tramp-tests.el (tramp-test32-environment-variables):
51765
51766	Remove expected failure.
51767
517682018-12-20  Michael Albinus  <michael.albinus@gmx.de>
51769
51770	Fix Bug#33781
51771
51772	* lisp/net/tramp-sh.el (tramp-set-remote-path): Use a temporary
51773	file for setting $PATH, if it exceeds PATH_MAX on the remote system.
51774	(tramp-send-command-and-read): Ignore errors if NOERROR.  (Bug#33781)
51775
51776	* test/lisp/net/tramp-tests.el (tramp-test34-remote-path): New test.
51777
517782018-12-19  Glenn Morris  <rgm@gnu.org>
51779
51780	Skip rather than fail in flymake tests
51781
51782	* test/lisp/progmodes/flymake-tests.el
51783	(flymake-tests--wait-for-backends): Skip rather than fail if
51784	backends are slow to respond.  This always seems like a temporary
51785	system glitch and not something that should be reported as a failure.
51786
517872018-12-19  Eric Abrahamsen  <eric@ericabrahamsen.net>
51788
51789	Make gnus-newsgroup-name local var available to gnus-summary-mode
51790
51791	* lisp/gnus/gnus-sum.el (gnus-summary-mode-group): New defvar for
51792	  passing gnus-newsgroup-name (a local variable) into the body of
51793	  gnus-summary-mode, so that it's available to gnus-summary-mode-hook.
51794
517952018-12-19  Juri Linkov  <juri@linkov.net>
51796
51797	* lisp/vc/diff-mode.el (diff-syntax-fontify-props): Use font-lock-ensure
51798
51799	unconditionally.  (Bug#33798)
51800
518012018-12-19  Paul Eggert  <eggert@cs.ucla.edu>
51802
51803	Minor fixes/simplifications to time functions
51804
51805	* doc/lispintro/emacs-lisp-intro.texi (Files List): Simplify.
51806	* doc/lispref/os.texi (Time of Day): Mention format-time-string
51807	as an alternative to current-time-string.
51808	* lisp/arc-mode.el (archive-unixdate, archive-unixtime):
51809	Port better to future versions of Emacs where (COUNT . HZ)
51810	will take precedence to (HI . LO).
51811	* lisp/arc-mode.el (archive-unixtime):
51812	* lisp/calendar/todo-mode.el (todo-insert-item--basic)
51813	(todo-item-done, todo-read-time):
51814	Prefer format-time-string to substringing current-time-string.
51815	* lisp/calc/calc-forms.el (calc-time, calcFunc-now):
51816	Prefer decode-time to parsing the output of current-time-string.
51817	* lisp/emacs-lisp/cl-extra.el (cl--random-time):
51818	Prefer encode-time to hashing the output of current-time-string.
51819	* lisp/gnus/gnus-score.el (gnus-score-headers)
51820	(gnus-score-adaptive):
51821	Avoid stringifying and then reparsing timestamp.
51822	* src/timefns.c (Fencode_time): Omit redundant assignment.
51823
518242018-12-19  Michael Albinus  <michael.albinus@gmx.de>
51825
51826	* lisp/net/tramp-sh.el (tramp-set-remote-path): Send a warning, if
51827
51828	$PATH exceeds PATH_MAX on the remote system.
51829
518302018-12-19  Nicholas Drozd  <nicholasdrozd@gmail.com>
51831
51832	* src/editfns.c (Finsert_char): Skip unnecessary fixnum check.
51833
518342018-12-18  Glenn Morris  <rgm@gnu.org>
51835
51836	Skip a remote filenotify test on hydra
51837
51838	* test/lisp/filenotify-tests.el (file-notify--deftest-remote):
51839	Add optional argument to skip test.
51840	(file-notify-test07-many-events-remote): Skip on hydra.nixos.org.
51841
518422018-12-18  Stefan Monnier  <monnier@iro.umontreal.ca>
51843
51844	* lisp/font-lock.el: Use lexical-binding
51845
51846	(font-lock-initial-fontify, font-lock-compile-keywords):
51847	Silence compiler warning.
51848	(font-lock-ensure-function): Fix some problems in last commit.
51849
518502018-12-18  Stefan Monnier  <monnier@iro.umontreal.ca>
51851
51852	* lisp/font-lock.el (font-lock-ensure-function): Fix bug#33798
51853
518542018-12-18  Juri Linkov  <juri@linkov.net>
51855
51856	More font-lock improvements for diff-mode
51857
51858	* lisp/vc/diff-mode.el (diff-font-lock-keywords): Use diff-header face
51859	for git index lines (like already used for bzr index lines).
51860	Use diff-file-header face for binary file headers.
51861	(diff-find-source-location): Use expand-file-name for vc-find-revision.
51862	(diff--font-lock-prettify): Use diff-indicator-* faces for
51863	left-fringe indicators.
51864	(diff-syntax-fontify-props): Optimize to not use text-property-not-all
51865	for font-lock-ensure.
51866
51867	* lisp/replace.el (occur-engine-line): Simplify to use font-lock-ensure
51868	without text-property-not-all.
51869
518702018-12-18  Juri Linkov  <juri@linkov.net>
51871
51872	Fontify one-line diffs without the final newline (bug#33567)
51873
51874	* lisp/vc/diff-mode.el (diff-hunk-text, diff-syntax-fontify-hunk):
51875	Skip lines beginning with backslash like "\ No newline at end of file".
51876	(diff-syntax-fontify-hunk): Use string-trim-right.
51877	For one-line diffs use 1 explicitly in the list of line numbers.
51878
518792018-12-18  Paul Eggert  <eggert@cs.ucla.edu>
51880
51881	Support (ash INTEGER BIGNUM)
51882
51883	* src/data.c (emacs_mpz_mul_2exp): 2nd arg is now a
51884	nonnegative EMACS_INT not mp_bitcnt_t, to simplify checking.
51885	(Fash): Support COUNT values that are bignums or that
51886	exceed mp_bitcnt_t range.
51887	* test/src/data-tests.el (data-tests-ash-lsh): Test this.
51888
518892018-12-18  Eli Zaretskii  <eliz@gnu.org>
51890
51891	Fix one last compilation warning in ftfont.c
51892
51893	* src/ftfont.c (ftfont_get_hb_font): Only define if
51894	HAVE_LIBOTF is defined.  (Bug#33771)
51895
518962018-12-18  Glenn Morris  <rgm@gnu.org>
51897
51898	Expect tramp environment test to fail on hydra
51899
51900	* test/lisp/net/tramp-tests.el (tramp-test32-environment-variables):
51901	Expect failure on hydra.nixos.org.
51902
519032018-12-18  Glenn Morris  <rgm@gnu.org>
51904
51905	A filenotify test now passes on hydra
51906
51907	* test/lisp/filenotify-tests.el (file-notify-test04-autorevert):
51908	Remote test now passes on hydra.nixos.org, since PATH
51909	workaround for bug#33781.
51910
519112018-12-18  Eli Zaretskii  <eliz@gnu.org>
51912
51913	Condition some more hb_* functions on HAVE_LIBOTF.
51914
519152018-12-18  Michael Albinus  <michael.albinus@gmx.de>
51916
51917	Fix Bug#33781
51918
51919	* lisp/net/tramp-cache.el (tramp-connection-properties):
51920	* lisp/net/tramp-sh.el (tramp-remote-path)
51921	(tramp-remote-process-environment, tramp-sh-extra-args):
51922	Reinsert autoload cookie.  (Bug#33781)
51923
51924	* test/lisp/net/tramp-tests.el: Do not require tramp-sh before
51925	changing tramp-remote-path.
51926
519272018-12-18  Nicolas Petton  <nicolas@petton.fr>
51928
51929	New convenience functions in seq.el
51930
51931	Functions to access the first or all but the first elements of
51932	sequences have been repeatedly asked for (the last occurrence being
51933	https://github.com/NicolasPetton/seq.el/issues/9).
51934
51935	* lisp/emacs-lisp/seq.el (seq-first, seq-rest): New functions.
51936	* test/lisp/emacs-lisp/seq-tests.el (test-seq-first, test-seq-rest):
51937	New tests for seq-first and seq-rest.
51938
519392018-12-17  Glenn Morris  <rgm@gnu.org>
51940
51941	Tiny ert-summarize-tests-batch-and-exit improvement
51942
51943	* lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
51944	Report the details of unexpected passes as well as failures.
51945
519462018-12-17  Juri Linkov  <juri@linkov.net>
51947
51948	Syntactic fontification of diff hunks (bug#33567)
51949
51950	* lisp/vc/diff-mode.el (diff-font-lock-syntax): New defcustom.
51951	(diff-default-directory): New buffer-local variable.
51952	(diff-indicator-removed, diff-indicator-added)
51953	(diff-indicator-changed): Set foreground to distinctive colors.
51954	(diff-context): Remove colors to make room for syntax highlighting.
51955	(diff-font-lock-keywords): Add diff--font-lock-syntax.
51956	(diff--font-lock-cleanup): Remove diff-mode syntax overlays.
51957	(diff--font-lock-syntax, diff--font-lock-syntax--refresh)
51958	(diff-syntax-fontify-revisions, diff-syntax-fontify-hunk)
51959	(diff-syntax-fontify-props): New functions.
51960
51961	* lisp/vc/diff.el (diff-no-select): Set diff-default-directory to
51962	default-directory.
51963
51964	* doc/emacs/files.texi (Diff Mode): Document diff-font-lock-syntax.
51965
519662018-12-17  Paul Eggert  <eggert@cs.ucla.edu>
51967
51968	Make org-protocol-flatten always an alias
51969
51970	* lisp/org/org-protocol.el (org-protocol-flatten):
51971	Rewrite as top-level alias, as per Stefan’s suggestion,
51972	to avoid compiler warnings.
51973
519742018-12-17  Stefan Monnier  <monnier@iro.umontreal.ca>
51975
51976	* lisp/emacs-lisp/map.el: Avoid special casing lists.
51977
51978	(map-not-inplace, map-inplace): New errors.
51979	(map-insert): New generic function.
51980	(map-put!): Signal map-not-inplace rather than a generic 'error'.
51981	(map-elt): Use map-not-inplace and map-insert to avoid hardcoding
51982	a special case for lists.
51983
51984	* test/lisp/emacs-lisp/map-tests.el (test-map-put!): Rename from
51985	test-map-put.  Also test the errors signaled.
51986
519872018-12-17  Glenn Morris  <rgm@gnu.org>
51988
51989	Avoid tests failures on hydra due to Tramp autoload changes
51990
51991	* test/lisp/filenotify-tests.el, test/lisp/shadowfile-tests.el:
51992	* test/lisp/net/tramp-tests.el: Require tramp-sh before changing
51993	tramp-remote-path.
51994
519952018-12-17  Paul Eggert  <eggert@cs.ucla.edu>
51996
51997	One more flatten-tree test
51998
51999	* test/lisp/subr-tests.el (subr-tests-flatten-tree):
52000	Add a test for lots of nothing.
52001
520022018-12-17  Paul Eggert  <eggert@cs.ucla.edu>
52003
52004	Some more flatten-tree aliases
52005
52006	* lisp/allout.el (allout-flatten):
52007	* lisp/progmodes/hideif.el (hif-flatten):
52008	Now an obsolete alias for flatten-tree.  All callers changed.
52009	* lisp/org/org-protocol.el (org-protocol-flatten):
52010	Make it an alias for flatten-tree if available.
52011	* lisp/progmodes/js.el (js--flatten-list):
52012	Remove alias.  We shouldn’t need obsolete function aliases for
52013	private functions.
52014
520152018-12-17  Paul Eggert  <eggert@cs.ucla.edu>
52016
52017	Improve flatten-tree documentation
52018
52019	* doc/lispref/lists.texi (Building Lists):
52020	* lisp/subr.el (flatten-tree):
52021	Don’t imply that flatten-tree modifies its argument.
52022	Clarify wording.
52023
520242018-12-17  Paul Eggert  <eggert@cs.ucla.edu>
52025
52026	Improve flatten-tree performance
52027
52028	* lisp/subr.el (flatten-tree): Improve performance by calling
52029	‘cons’ once rather than twice when a cons cell is popped.
52030
520312018-12-17  Eli Zaretskii  <eliz@gnu.org>
52032
52033	Avoid compilation warning in ftfont.c
52034
52035	* src/ftfont.c (ftfont_shape_by_hb): Compile only if
52036	HAVE_LIBOTF is defined.  (Bug#33771)
52037
520382018-12-17  Paul Eggert  <eggert@cs.ucla.edu>
52039
52040	Assume ‘emacs’ is defined in Emacs-only code
52041
52042	* src/charset.c, src/coding.c, src/coding.h, src/gmalloc.c:
52043	* src/ralloc.c, src/regex-emacs.c: Simplify slightly by
52044	assuming that ‘emacs’ is defined.  These modules have long
52045	been specific to Emacs, and are not used elsewhere.
52046
520472018-12-17  Eli Zaretskii  <eliz@gnu.org>
52048
52049	Fix last change.
52050
520512018-12-17  Mike Kupfer  <mkupfer@alum.berkeley.edu>
52052
52053	* src/ftcrfont.c (ftcrfont_driver): Really commit last change.
52054
520552018-12-17  Mike Kupfer  <mkupfer@alum.berkeley.edu>
52056
52057	More fixes for build without libotf
52058
52059	* src/xftfont.c (xftfont_driver):
52060	* src/ftxfont.c (ftxfont_driver):
52061	* src/ftcrfont.c (ftcrfont_driver): Set the .shape member only
52062	if HAVE_LIBOTF is defined.  (Bug#33771)
52063
520642018-12-17  Eli Zaretskii  <eliz@gnu.org>
52065
52066	Fix compilation errors when building without libotf
52067
52068	* src/ftfont.c (ftfont_shape): Only compile if HAVE_LIBOTF is
52069	defined.
52070	(ftfont_driver): Set the .shape member only if HAVE_LIBOTF is
52071	defined.  (Bug#33771)
52072
520732018-12-17  Michael Albinus  <michael.albinus@gmx.de>
52074
52075	Use `flatten-tree' in Tramp
52076
52077	* lisp/net/tramp-compat.el (tramp-compat-flatten-tree): New defun.
52078	(tramp-compat-flatten-list): Remove.
52079
52080	* lisp/net/tramp-sudoedit.el (tramp-sudoedit-send-command): Use it.
52081
520822018-12-17  Alex Branham  <alex.branham@gmail.com>
52083	    Basil L. Contovounesios  <contovob@tcd.ie>
52084
52085	New function flatten-tree
52086
52087
52088	* doc/lispref/lists.texi: Document `flatten-tree'.
52089
52090	* lisp/progmodes/js.el (js--maybe-join):
52091	* lisp/printing.el (pr-switches):
52092	* lisp/lpr.el (lpr-print-region):
52093	* lisp/gnus/nnimap.el (nnimap-find-wanted-parts):
52094	* lisp/gnus/message.el (message-talkative-question):
52095	* lisp/gnus/gnus-sum.el (gnus-remove-thread)
52096	(gnus-thread-highest-number, gnus-thread-latest-date):
52097	* lisp/eshell/esh-util.el (eshell-flatten-and-stringify):
52098	* lisp/eshell/esh-opt.el (eshell-eval-using-options):
52099	* lisp/eshell/esh-ext.el (eshell-external-command):
52100	* lisp/eshell/em-xtra.el (eshell/expr):
52101	* lisp/eshell/em-unix.el (eshell/rm, eshell-mvcpln-template)
52102	(eshell/cat, eshell/make, eshell-poor-mans-grep, eshell-grep)
52103	(eshell/du, eshell/time, eshell/diff, eshell/locate):
52104	* lisp/eshell/em-tramp.el (eshell/su, eshell/sudo):
52105	* lisp/eshell/em-term.el (eshell-exec-visual):
52106	* lisp/eshell/em-dirs.el (eshell-dirs-substitute-cd, eshell/cd):
52107	* lisp/eshell/em-basic.el (eshell/printnl):
52108	Use new flatten-tree.
52109
52110	* lisp/progmodes/js.el (js--flatten-list):
52111	* lisp/lpr.el (lpr-flatten-list):
52112	* lisp/gnus/message.el (message-flatten-list):
52113	* lisp/eshell/esh-util.el (eshell-flatten-list):
52114	Obsolete in favor of Emacs-wide `flatten-tree'.
52115
52116	* lisp/subr.el (flatten-list): Alias to `flatten-tree' for
52117	discoverability.
52118
52119	* lisp/subr.el (flatten-tree): New defun.
52120
52121	* test/lisp/subr-tests.el (subr-tests-flatten-tree): New test.
52122
521232018-12-17  Michael Albinus  <michael.albinus@gmx.de>
52124
52125	Fix Bug#33524
52126
52127	* lisp/progmodes/flymake-proc.el
52128	(flymake-proc-create-temp-with-folder-structure):
52129	Unquote file-name.  (Bug#33524)
52130
521312018-12-17  Michael Albinus  <michael.albinus@gmx.de>
52132
52133	Reduce autoloaded objects in Tramp
52134
52135	* lisp/net/tramp-adb.el (tramp-adb-program)
52136	(tramp-adb-connect-if-not-connected, tramp-adb-prompt):
52137	Remove autoload cookie.
52138
52139	* lisp/net/tramp-cache.el (tramp-connection-properties)
52140	(tramp-persistency-file-name): Remove autoload cookie.
52141
52142	* lisp/net/tramp-ftp.el (tramp-ftp-enable-ange-ftp):
52143	Use `tramp-autoload' cookie.
52144
52145	* lisp/net/tramp-gvfs.el (tramp-gvfs-zeroconf-domain):
52146	Remove autoload cookie.
52147
52148	* lisp/net/tramp-rclone.el (tramp-rclone-program): Remove autoload
52149	cookie.
52150	(tramp-set-completion-function): Use `tramp--with-startup'.
52151
52152	* lisp/net/tramp-sh.el (tramp-inline-compress-start-size)
52153	(tramp-copy-size-limit, tramp-histfile-override)
52154	(tramp-use-ssh-controlmaster-options, tramp-remote-path)
52155	(tramp-remote-process-environment, tramp-sh-extra-args):
52156	Remove autoload cookie.
52157	(tramp-stat-marker, tramp-stat-quoted-marker): Move to tramp.el.
52158
52159	* lisp/net/tramp-smb.el (tramp-smb-program)
52160	(tramp-smb-acl-program, tramp-smb-conf)
52161	(tramp-smb-winexe-program, tramp-smb-winexe-shell-command)
52162	(tramp-smb-winexe-shell-command-switch): Remove autoload cookie.
52163
52164	* lisp/net/tramp-sudoedit.el (server, tramp-sh): Do not require.
52165
52166	* lisp/net/tramp.el (tramp--startup-hook): Define.
52167	(tramp-stat-marker, tramp-stat-quoted-marker): New defconsts,
52168	taken from tramp-sh.el.
52169
52170	* test/lisp/net/tramp-archive-tests.el (tramp-copy-size-limit)
52171	(tramp-persistency-file-name): Declare.
52172
52173	* test/lisp/net/tramp-tests.el (tramp-connection-properties)
52174	(tramp-display-escape-sequence-regexp)
52175	(tramp-inline-compress-start-size, tramp-remote-path): Declare.
52176
521772018-12-16  Stefan Monnier  <monnier@iro.umontreal.ca>
52178
52179	* lisp/emacs-lisp/macroexp.el: Don't hide backtrace
52180
52181	(macroexp--compiler-macro): Use condition-case-unless-debug.
52182
521832018-12-16  João Távora  <joaotavora@gmail.com>
52184
52185	Jsonrpc error handlers can now safely call jsonrpc-shutdown
52186
52187	Previously, if an error handler called jsonrpc-shutdown, and if that
52188	error handler was being called from the process sentinel,
52189	jsonrpc-shutdown would infloop waiting for jsonrpc-sentinel-done to be
52190	set.
52191
52192	Rename the process property jsonrpc-sentinel-done to
52193	jsonrpc-sentinel-cleanup-started, arrange for it to be set earlier
52194	in the sentinel, and also check for it earlier in jsonrpc-shutdown.
52195
52196	* lisp/jsonrpc.el (Version): Bump to 1.0.7.
52197	(jsonrpc--process-sentinel): Set jsonrpc-sentinel-cleanup-started
52198	a bit earlier than previous jsonrpc-sentinel-done.
52199	(jsonrpc-shutdown): Query jsonrpc-sentinel-cleanup-started
52200
522012018-12-16  Paul Eggert  <eggert@cs.ucla.edu>
52202
52203	Update from Gnulib
52204
52205	This incorporates:
52206	2018-12-16 regex: propagate fix for glibc bug 18040
52207	2018-12-16 obstack, libc-config: Support HP-UX cc in C99 mode
52208	2018-12-15 regex: work around a bug in glibc-2.27 and prior
52209	2018-12-13 localtime-buffer: Avoid endless recursion
52210	* build-aux/config.guess, build-aux/config.sub, lib/cdefs.h:
52211	* lib/gettext.h, lib/localtime-buffer.c, lib/regexec.c, m4/regex.m4:
52212	Copy from Gnulib.
52213
522142018-12-16  Stefan Monnier  <monnier@iro.umontreal.ca>
52215
52216	* lisp/net/tramp.el: Rework mutual dependencies
52217
52218	Functionally split tramp-loaddefs.el into two parts: one part run
52219	while loading it at the very beginning of loading tramp.el (holding plain
52220	autoloads and declarations), and another run at the very end of loading
52221	tramp.el (holding setup code).
52222	This should reduce infinite-recursion problems while loading.
52223
52224	* lisp/net/tramp.el: Require tramp-loaddefs at beginning.
52225	Run (new and internal) tramp--startup-hook at the end.
52226	Remove all tramp-autoloads.  Prefer tramp--with-startup over
52227	eval-after-load.
52228	(tramp--with-startup): New macro.
52229	(tramp-set-syntax): Show the new value rather than the old value in the
52230	error message.
52231	(tramp-syntax-values): Explicitly return 'values'.
52232	(tramp-prefix-format, tramp-prefix-regexp, tramp-method-regexp)
52233	(tramp-postfix-method-format, tramp-postfix-method-regexp)
52234	(tramp-prefix-ipv6-format, tramp-prefix-ipv6-regexp)
52235	(tramp-postfix-ipv6-format, tramp-postfix-ipv6-regexp)
52236	(tramp-postfix-host-format, tramp-postfix-host-regexp)
52237	(tramp-remote-file-name-spec-regexp, tramp-file-name-structure)
52238	(tramp-completion-file-name-regexp): Don't initialize in the declaration,
52239	since it's recomputed at the end anyway.
52240	(tramp-time-dont-know, tramp-time-doesnt-exist): Move before first use.
52241
52242	* lisp/net/tramp-compat.el: Don't require tramp-loaddefs any more.
52243	(tramp-compat-tramp-syntax): Declare tramp-syntax.
52244
52245	* lisp/net/tramp-smb.el:
52246	* lisp/net/tramp-rclone.el:
52247	* lisp/net/tramp-gvfs.el:
52248	* lisp/net/tramp-ftp.el:
52249	* lisp/net/tramp-adb.el: Wrap all autoloaded setup operations within
52250	tramp--with-startup.
52251
52252	* lisp/net/tramp-sh.el: Wrap all autoloaded setup operations within
52253	tramp--with-startup.
52254	(tramp-display-escape-sequence-regexp)
52255	(tramp-device-escape-sequence-regexp): Don't tramp-autoload any more.
52256	(tramp-stat-marker): Use eval-and-compile rather than tramp-autoload.
52257
52258	* lisp/net/tramp-sudoedit.el: Wrap all autoloaded setup operations within
52259	tramp--with-startup.
52260	Require tramp-sh at compile-time to precompute some regexps based on
52261	tramp-stat-marker.
52262
522632018-12-16  Michael Albinus  <michael.albinus@gmx.de>
52264
52265	Add Tramp sudoedit method
52266
52267	* doc/misc/tramp.texi (Quick Start Guide): New section "Using sudoedit".
52268	(External methods) <sudoedit>: Describe.
52269
52270	* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
52271	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
52272	* lisp/net/tramp-rclone.el (tramp-rclone-file-name-handler-alist):
52273	* lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
52274	* lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
52275	Add handler.
52276
52277	* lisp/net/tramp-sh.el (tramp-sh-handle-set-file-uid-gid): Rename from
52278	`tramp-sh-handle-set-file-uid-gid'.  Handle only remote file names.
52279
52280	* lisp/net/tramp-sudoedit.el: New file.
52281
52282	* lisp/net/tramp.el (tramp-file-name-for-operation): Handle also
52283	`tramp-set-file-uid-gid'.
52284	(tramp-set-file-uid-gid): New defun.
52285	(tramp-get-local-uid, tramp-get-local-gid): Cache result.
52286
52287	* test/lisp/net/tramp-tests.el (tramp--test-sudoedit-p): New defun.
52288	(tramp-test20-file-modes, tramp-test22-file-times)
52289	(tramp--test-sudoedit-p): Use it.
52290
522912018-12-16  João Távora  <joaotavora@gmail.com>
52292
52293	Rephrase a confusing sentence in the jsonrpc.el manual
52294
52295	* doc/lispref/text.texi (JSONRPC Overview): Rephrase first
52296	sentence on building JSONRPC applications.
52297
522982018-12-15  Glenn Morris  <rgm@gnu.org>
52299
52300	Expect two epg tests to fail on hydra
52301
52302	* test/lisp/epg-tests.el (epg-decrypt-1, epg-roundtrip-1):
52303	These currently fail for unknown reasons on hydra.nixos.org.
52304
523052018-12-15  Glenn Morris  <rgm@gnu.org>
52306
52307	Merge from origin/emacs-26
52308
52309	fa953b5 (origin/emacs-26) Fix an epg test for recent GnuPG versions (...
52310	3015636 Document font structure layout constraints
52311	f14d574 Document font structure layout constraints
52312	f519aa1 Fix display of line numbers in empty lines beyond EOB
52313	24b5026 Fix redisplay when a window's scroll bar or fringes are changed
52314	5d1b158 Tiny markup fix in Elisp manual
52315
523162018-12-15  Glenn Morris  <rgm@gnu.org>
52317
52318	Ensure flymake tests use gcc rather than $CC
52319
52320	* test/lisp/progmodes/flymake-resources/Makefile: Force use of gcc.
52321	This seems to be what the tests expect.  (Bug#33735)
52322
523232018-12-15  Glenn Morris  <rgm@gnu.org>
52324
52325	Suppress filenotify remote test failures on hydra.nixos.org
52326
52327	* test/lisp/filenotify-tests.el (file-notify--deftest-remote):
52328	Add optional argument to pass expected-result.
52329	(file-notify-test04-autorevert-remote)
52330	(file-notify-test08-backup-remote): Expect failure on hydra (bug#33735).
52331
523322018-12-15  Glenn Morris  <rgm@gnu.org>
52333
52334	Fix an eshell ls dired test for non-recent files
52335
52336	* test/lisp/eshell/em-ls-tests.el (em-ls-test-bug27844):
52337	Work around an eshell issue with non-recent files.  (Bug#33734)
52338
523392018-12-14  Paul Eggert  <eggert@cs.ucla.edu>
52340
52341	Assume hb_ft_font_create_referenced if HarfBuzz
52342
52343	* configure.ac (HAVE_HB_FT_FONT_CREATE_REFERENCED):
52344	Remove test, since we now require 0.9.42 and
52345	hb_ft_font_create_referenced has been present since 0.9.38.
52346	* src/ftfont.c (ft_face_destroy, hb_ft_font_create_referenced):
52347	Remove; no longer needed.
52348
523492018-12-14  Glenn Morris  <rgm@gnu.org>
52350
52351	* configure.ac: Guess at minimum harfbuzz version.  (Bug#33748)
52352
52353	* make-dist: Improve no-byte-compile check.
52354
523552018-12-14  Glenn Morris  <rgm@gnu.org>
52356
52357	* make-dist: Improve tempfile handling.
52358
52359	Prompted by /tmp/out existing and being owned by another user.
52360
523612018-12-14  Glenn Morris  <rgm@gnu.org>
52362
52363	* make-dist: Silence test of tar functionality.
52364
523652018-12-14  Basil L. Contovounesios  <contovob@tcd.ie>
52366
52367	* lisp/emacs-lisp/map.el: Fix recent changes
52368
52369	(map-empty-p): Add method for lists which avoids computing their
52370	entire length.
52371	(map-contains-key): Check for alist membership by comparing against
52372	DEFAULT argument returned by alist-get.
52373	(map-put!): Reconcile argument name with that used in docstring.
52374
523752018-12-14  Ari Roponen  <ari.roponen@gmail.com>
52376
52377	Fix crash in the Cairo build
52378
52379	* src/ftcrfont.c (struct ftcrfont_info) [HAVE_HARFBUZZ]: New
52380	member 'hb_font'.  (Bug#33739)
52381
523822018-12-13  Glenn Morris  <rgm@gnu.org>
52383
52384	* test/lisp/eshell/em-ls-tests.el (em-ls-test-bug27844): Remove debug.
52385
523862018-12-13  Stephen Leake  <stephen_leake@stephe-leake.org>
52387
52388	Get long package description for installed packages from installed files
52389
52390	* doc/lispref/package.texi (Archive Web Server): New; document web
52391	server interface.
52392
52393	* lisp/emacs-lisp/package.el (package--get-description): New; get long
52394	description from installed files.
52395	(describe-package-1): Use it, improve comments. No longer writing
52396	NAME-readme.txt.
52397
52398	* test/lisp/emacs-lisp/package-tests.el:
52399	(package-test-describe-package): There is now a description for an
52400	installed package.
52401	(package-test-describe-installed-multi-file-package): New test.
52402
524032018-12-13  Stephen Leake  <stephen_leake@stephe-leake.org>
52404
52405	Merge commit 'd08b75abe0f0cf9ade812b189c374809a2c7836e'
52406
524072018-12-13  Paul Eggert  <eggert@cs.ucla.edu>
52408
52409	Fix stray CHECK_FIXNUM_COERCE_MARKER
52410
52411	* src/xdisp.c (Fbidi_resolved_levels): Don’t allow a marker arg;
52412	markers are character positions not vertical positions.
52413
524142018-12-13  Paul Eggert  <eggert@cs.ucla.edu>
52415
52416	Default to --with-harfbuzz
52417
52418	* configure.ac: By default, configure with HarfBuzz if available.
52419
524202018-12-13  Paul Eggert  <eggert@cs.ucla.edu>
52421
52422	Simplify mainline Harfbuzz-using code
52423
52424	* src/ftfont.c (ft_face_destroy): Omit unnecessary cast.
52425	(hb_ft_font_create_referenced) [!HAVE_HB_FT_FONT_CREATE_REFERENCED]:
52426	New function.
52427	(ftfont_get_hb_font): Use it.
52428
524292018-12-13  Glenn Morris  <rgm@gnu.org>
52430
52431	* test/lisp/eshell/em-ls-tests.el (em-ls-test-bug27844): Add debug.
52432
524332018-12-13  Michael Albinus  <michael.albinus@gmx.de>
52434
52435	* doc/misc/tramp.texi (Ad-hoc multi-hops): Reinsert lost line.
52436
524372018-12-12  João Távora  <joaotavora@gmail.com>
52438
52439	Allow per-diagnostic overlay properties in Flymake
52440
52441	* lisp/progmodes/flymake.el (Version): Bump to 1.0.3.
52442	(flymake--diag): Add new field overlay-properties.
52443	(flymake-make-diagnostic): New optional arg overlay-properties.
52444	(flymake--highlight-line): Use it.
52445
524462018-12-12  Juri Linkov  <juri@linkov.net>
52447
52448	* lisp/vc/vc.el (vc-find-revision-no-save): Use decode-coding-inserted-region
52449
52450	and after-insert-file-set-coding.  Don't let-bind coding-system-for-read
52451	and coding-system-for-write.  For non-interactive use, let-bind
52452	enable-local-variables to :safe and ignore errors from set-auto-mode call.
52453	(Bug#33567)
52454
524552018-12-12  Glenn Morris  <rgm@gnu.org>
52456
52457	Improve em-ls-test-bug27844
52458
52459	* test/lisp/eshell/em-ls-tests.el (em-ls-test-bug27844):
52460	Skip if source-directory absent.
52461
524622018-12-12  Paul Eggert  <eggert@cs.ucla.edu>
52463
52464	Simplify validate_interval_range and callers
52465
52466	* src/textprop.c (validate_interval_range):
52467	Remove useless code.  Fix comment to match current behavior.
52468	(set_text_properties, copy_text_properties): Simplify, as
52469	validate_interval_range has not incremented START or END for
52470	quite some time.
52471	(copy_text_properties): Assume C99.  Fix an unlikely
52472	integer overflow bug if WIDE_EMACS_INT.
52473
524742018-12-12  Paul Eggert  <eggert@cs.ucla.edu>
52475
52476	set_text_properties_1 can assume START <= END
52477
52478	* src/textprop.c (set_text_properties_1):
52479	Do not swap START and END.  All callers do that already,
52480	and the test for swapping here is redundant.
52481
524822018-12-12  Eli Zaretskii  <eliz@gnu.org>
52483
52484	Fix regression in expand-file-name with drive-relative HOME
52485
52486	* src/fileio.c (get_homedir) [DOS_NT]: Expand drive-relative
52487	$HOME to begin with "X:/".
52488
52489	* test/src/fileio-tests.el (fileio-tests--relative-HOME): Add
52490	testing of drive-relative value of $HOME on MS-Windows and
52491	MS-DOS.
52492
524932018-12-12  Michael Albinus  <michael.albinus@gmx.de>
52494
52495	Fix Bug#33568
52496
52497	* test/lisp/net/secrets-tests.el (secrets-test02-collections)
52498	(secrets-test03-items): Do not expect "login" collection to
52499	exist.  (Bug#33568)
52500
525012018-12-11  Stefan Monnier  <monnier@iro.umontreal.ca>
52502
52503	* lisp/emacs-lisp/map.el: Make the functions generic
52504
52505	Make them document their delegation relationship, to clarify when
52506	a method is needed.
52507	(map--dispatch): Give more info in the error message.
52508	(map-elt): Make it generic and deprecate the 'testfn' arg.
52509	(map-put): Make it obsolete.
52510	(map-length): Make it work on hash-tables.
52511	(map-apply): Define it in terms of map-do.
52512	(map-do, map-into): Use cl-generic dispatch instead of map--dispatch.
52513	(map-empty-p): Define it in terms of map-length.
52514	(map-contains-key): Deprecate 'testfn'.  Make it return a boolean, so
52515	it can return non-nil even if 'key' is nil.  Improve implementation to
52516	avoid constructing an intermediate list of all keys.
52517	(map-merge-with): Use 'eql' rather than `eq'.
52518	(map-put!): Rename from map--put and make it generic, to replace map-put.
52519	(map--apply-alist, map--apply-hash-table, map--apply-array):
52520	Turn them into methods of map-apply.
52521	(map--do-alist, map--do-array): Turn them into methods of map-do.
52522	(map--into-hash-table): Turn it into a method of map-into.
52523
525242018-12-11  Stephen Leake  <stephen_leake@stephe-leake.org>
52525
52526	Fix bug in display-buffer-use-some-frame
52527
52528	* lisp/window.el (display-buffer-use-some-frame): Pass 'reuse, not
52529	'frame, to window--display-buffer.
52530
525312018-12-10  Martin Rudalics  <rudalics@gmx.at>
52532
52533	Fix typo in 'dired-restore-positions'
52534
52535	* lisp/dired.el (dired-restore-positions): Fix typo in last
52536	change fixing Bug#33458.
52537
525382018-12-10  Glenn Morris  <rgm@gnu.org>
52539
52540	Add test/Makefile machinery to exclude test .el files
52541
52542	* test/Makefile.in (EXCLUDE_TESTS): New variable.
52543	(ELFILES): Filter out any specified exclude files.
52544
525452018-12-10  Nobuyoshi Nakada  <nobu@ruby-lang.org>
52546
52547	Support Ruby block arguments ending with , or *
52548
52549	* lisp/progmodes/ruby-mode.el (ruby-smie--forward-token):
52550	Recognize punctuation before "closing-|" as a separate token.
52551	(ruby-smie--backward-token): Same (bug#33487).
52552
52553	* test/lisp/progmodes/ruby-mode-tests.el
52554	(ruby-forward-sexp-jumps-do-end-block-with-no-args)
52555	(ruby-backward-sexp-jumps-do-end-block-with-no-args)
52556	(ruby-forward-sexp-jumps-do-end-block-with-empty-args)
52557	(ruby-backward-sexp-jumps-do-end-block-with-empty-args)
52558	(ruby-forward-sexp-jumps-do-end-block-with-args)
52559	(ruby-backward-sexp-jumps-do-end-block-with-args)
52560	(ruby-forward-sexp-jumps-do-end-block-with-any-args)
52561	(ruby-forward-sexp-jumps-do-end-block-with-expanded-one-arg)
52562	(ruby-forward-sexp-jumps-do-end-block-with-one-and-any-args)
52563	(ruby-backward-sexp-jumps-do-end-block-with-one-and-any-args):
52564	New tests.
52565
525662018-12-10  Juri Linkov  <juri@linkov.net>
52567
52568	* lisp/isearch.el (isearch-pre-command-hook): Support `isearch-move'
52569
52570	command properties with values `enabled' and `disabled'
52571	also for the value `shift' of isearch-yank-on-move.  (Bug#15839)
52572
525732018-12-10  Juri Linkov  <juri@linkov.net>
52574
52575	* lisp/vc/vc.el (vc-root-version-diff): New command (bug#33650).
52576
52577	(vc-root-diff): Call it interactively on a prefix argument.
52578
525792018-12-10  Matthias Meulien  <orontee@gmail.com>
52580
52581	Support git commit --no-verify
52582
52583	* lisp/vc/vc-git.el (vc-git-log-edit-toggle-no-verify): New function.
52584	(vc-git-log-edit-mode-map): Add binding.
52585	(vc-git-checkin): Add an entry for that header.
52586
525872018-12-10  Paul Eggert  <eggert@cs.ucla.edu>
52588
52589	Fix bug when hashing reversed buffer regions
52590
52591	* src/fns.c (extract_data_from_object): When checking
52592	file-coding-system-alist, calculate the coding system
52593	correctly even if START and END are out of order.
52594	Use bool for booleans.
52595
525962018-12-10  Glenn Morris  <rgm@gnu.org>
52597
52598	Merge from origin/emacs-26
52599
52600	2075864 (origin/emacs-26) CC Mode: stop extra parens on expression ca...
52601
526022018-12-10  Glenn Morris  <rgm@gnu.org>
52603
52604	Merge from origin/emacs-26
52605
52606	5a7451c CC Mode: stop wrongly recognizing "func(a * 9)" as "pointer t...
52607	b0ed9d1 * lisp/emacs-lisp/cursor-sensor.el: Add motivation
52608
526092018-12-10  Glenn Morris  <rgm@gnu.org>
52610
52611	Merge from origin/emacs-26
52612
52613	908af9d Indexing followup to recent changes
52614	505ac9a Improve documentation of cursor-sensor.el (bug#33664)
52615	d817d2c * doc/lispref/commands.texi (Adjusting Point): Bug#33662
52616	18442da Tramp multi-hop methods must be inline
52617	1e3e24d ; * src/xterm.c (x_update_begin): Fix whitespace.
52618	1d743d2 Fix scaling problem in Cairo builds
52619	2b9e993 ; * doc/lispref/text.texi (Special Properties): Fix wording. ...
52620	e568202 * lisp/simple.el (next-line-or-history-element): Use current-...
52621	c7897c2 A few further fixes of window internals description
52622
52623	# Conflicts:
52624	#	doc/misc/tramp.texi
52625
526262018-12-10  Glenn Morris  <rgm@gnu.org>
52627
52628	* admin/gitmerge.el (gitmerge-skip-regexp): Add yet another variant.
52629
526302018-12-10  Michael Albinus  <michael.albinus@gmx.de>
52631
52632	* lisp/net/tramp-compat.el (tramp-compat-flatten-list): New defun.
52633
526342018-12-10  Stefan Monnier  <monnier@iro.umontreal.ca>
52635
52636	* lisp/Makefile.in (compile-main): Use a more selective regexp.
52637
526382018-12-09  Paul Eggert  <eggert@cs.ucla.edu>
52639
52640	Remove CHECK_FIXNUM_CAR etc.
52641
52642	* src/coding.c (CHECK_FIXNAT_CAR, CHECK_FIXNAT_CDR):
52643	* src/lisp.h (CHECK_FIXNUM_CAR, CHECK_FIXNUM_CDR):
52644	Remove.  All uses removed.  These seem to have been based on
52645	the assumption that the argument cons needs to be modified,
52646	an assumption that is incorrect for fixnums.
52647	(Fdefine_coding_system_internal): Use CHECK_RANGED_INTEGER
52648	instead of a special diagnostic for graphic register numbers.
52649
526502018-12-09  Glenn Morris  <rgm@gnu.org>
52651
52652	* test/lisp/eshell/eshell-tests.el (with-temp-eshell):
52653	Avoid permanently changing HISTFILE.
52654
526552018-12-09  Juri Linkov  <juri@linkov.net>
52656
52657	Fix occur for non-nil list-matching-lines-jump-to-current-line (bug#33476)
52658
52659	* lisp/replace.el (occur-engine): Move orig-line let-binding higher.
52660	Don't use start-line in forward-line.
52661
526622018-12-09  Khaled Hosny  <khaledhosny@eglug.org>
52663
52664	Fix uni_combining()
52665
52666	WIP: implement some Unicode callback functions
52667
526682018-12-09  Khaled Hosny  <khaledhosny@eglug.org>
52669
52670	Set cluster level to one
52671
52672	Makes to possible to edit combining marks separately as now they get a
52673	different cluster value from the base glyph.
52674
526752018-12-09  Khaled Hosny  <khaledhosny@eglug.org>
52676
52677	Cache hb_font_t
52678
52679	Not sure if the xftfont.c changes are really needed, but followed the
52680	libotf code just in case.
52681
526822018-12-09  Khaled Hosny  <khaledhosny@eglug.org>
52683
52684	Allow turning HarfBuzz off at run time
52685
52686	Useful for comparing the shaping result with that of m17n.
52687
526882018-12-09  Khaled Hosny  <khaledhosny@eglug.org>
52689
52690	First attempt at HarfBuzz shaping
52691
52692	Barely works, and unoptimized!
52693
526942018-12-09  Khaled Hosny  <khaledhosny@eglug.org>
52695
52696	Add support for building with HarfBuzz
52697
52698	Not used yet.
52699
527002018-12-09  Michael Albinus  <michael.albinus@gmx.de>
52701
52702	* test/lisp/net/tramp-tests.el (tramp-test03-file-name-host-rules):
52703
52704	Use proper error symbol.
52705
527062018-12-09  Alan Mackenzie  <acm@muc.de>
52707
52708	Don't create *Compile-Log* due to byte-compile.  Amend message to it.
52709
52710	This fixes bug #33602 and is a partial reversion of a commit from
52711	2018-11-28T13:15:50.
52712
52713	* lisp/emacs-lisp/bytecomp.el (byte-compile-log-file): Don't create buffer
52714	*Compile-Log* because it doesn't already exist.  Amend message "Compiling no
52715	file" to be clearer (?and less irritating).
52716
527172018-12-09  Paul Eggert  <eggert@cs.ucla.edu>
52718
52719	Add make_vector and make_nil_vector
52720
52721	This makes the callers a bit easier to read, and doubtless
52722	improves efficiency very slightly.  It also simplifies
52723	possible future changes to allow bignum indexes to buffers.
52724	* src/alloc.c (allocate_vectorlike):
52725	Prefer ptrdiff_t to size_t when either will do.
52726	(make_vector): New function.
52727	(Fmake_vector): Use it.
52728	* src/buffer.c (syms_of_buffer):
52729	* src/bytecode.c (syms_of_bytecode):
52730	* src/category.c (Fmake_category_table, init_category_once):
52731	* src/ccl.c (syms_of_ccl):
52732	* src/character.c (syms_of_character):
52733	* src/charset.c (Fdefine_charset_internal)
52734	(Ffind_charset_region, Ffind_charset_string):
52735	* src/chartab.c (copy_char_table):
52736	* src/coding.c (Fdefine_coding_system_internal, syms_of_coding):
52737	* src/composite.c (get_composition_id, Fcomposition_get_gstring):
52738	* src/composite.h (LGLYPH_NEW):
52739	* src/fns.c (concat, Flocale_info, make_hash_table):
52740	* src/font.c (font_otf_ValueRecord, font_otf_anchor)
52741	(build_style_table, syms_of_font):
52742	* src/fontset.c (RFONT_DEF_NEW, fontset_find_font)
52743	(dump_fontset, syms_of_fontset):
52744	* src/image.c (xpm_make_color_table_v):
52745	* src/keyboard.c (modify_event_symbol, menu_bar_items)
52746	(parse_menu_item, parse_tool_bar_item, init_tool_bar_items)
52747	(syms_of_keyboard):
52748	* src/keymap.c (Fdefine_key, describe_map, describe_vector):
52749	* src/lread.c (read_vector):
52750	* src/macfont.m (macfont_shape):
52751	* src/menu.c (init_menu_items):
52752	* src/nsfns.m (ns_make_monitor_attribute_list):
52753	* src/process.c (conv_sockaddr_to_lisp, network_interface_info):
52754	* src/profiler.c (make_log):
52755	* src/window.c (Fcurrent_window_configuration):
52756	* src/xdisp.c (with_echo_area_buffer_unwind_data)
52757	(format_mode_line_unwind_data):
52758	* src/xfaces.c (Finternal_make_lisp_face)
52759	(Fface_attributes_as_vector):
52760	* src/xfns.c (x_make_monitor_attribute_list)
52761	(Fx_display_monitor_attributes_list):
52762	* src/xfont.c (syms_of_xfont):
52763	* src/xselect.c (x_handle_dnd_message):
52764	* src/xwidget.c (save_script_callback):
52765	Prefer make_nil_vector (N) to Fmake_vector (make_fixnum (N), Qnil).
52766	* src/callint.c (Fcall_interactively):
52767	* src/charset.c (load_charset_map):
52768	* src/chartab.c (Fmake_char_table, uniprop_encode_value_numeric):
52769	* src/composite.c (get_composition_id)
52770	* src/dispnew.c (Fframe_or_buffer_changed_p)
52771	(syms_of_display):
52772	* src/fns.c (make_hash_table, maybe_resize_hash_table):
52773	* src/font.c (font_style_to_value):
52774	* src/fontset.c (FONTSET_ADD, fontset_add):
52775	* src/json.c (json_to_lisp):
52776	* src/keymap.c (syms_of_keymap):
52777	* src/lread.c (init_obarray):
52778	* src/profiler.c (make_log, Fprofiler_cpu_log):
52779	* src/term.c (term_get_fkeys_1):
52780	Prefer make_vector (N, V) to Fmake_vector (make_fixnum (N), V).
52781	* src/font.c (build_style_table):
52782	* src/macfont.m (macfont_shape):
52783	* src/process.c (conv_sockaddr_to_lisp, network_interface_info):
52784	Prefer make_uninit_vector if the vector will be initialized soon.
52785	* src/lisp.h (make_nil_vector): New function.
52786
527872018-12-08  Eli Zaretskii  <eliz@gnu.org>
52788
52789	Fix resolving symlinks in Eshell history file names
52790
52791	* lisp/eshell/em-dirs.el (eshell-write-last-dir-ring):
52792	* lisp/eshell/em-hist.el (eshell-write-history): Don't call
52793	file-truename with argument of nil.  (Bug#33477)
52794
52795	* test/lisp/eshell/eshell-tests.el (with-temp-eshell): Remove
52796	HISTFILE from the environment, to make sure the Eshell history
52797	file is nil.
52798
527992018-12-08  Paul Eggert  <eggert@cs.ucla.edu>
52800
52801	* src/alloc.c (VECTOR_ELTS_MAX): Make sure it’s signed.
52802
528032018-12-08  Paul Eggert  <eggert@cs.ucla.edu>
52804
52805	Port VECTOR_ELTS_MAX to older GCC etc.
52806
52807	Problem reported by Eli Zaretskii in:
52808	https://lists.gnu.org/r/emacs-devel/2018-12/msg00182.html
52809	* src/alloc.c (VECTOR_ELTS_MAX): Now a macro.
52810	Needed for portability to older GCC and non-GCC.
52811
528122018-12-08  Paul Eggert  <eggert@cs.ucla.edu>
52813
52814	Streamline and fix vector-size checks
52815
52816	* src/alloc.c (VECTOR_ELTS_MAX): New constant.
52817	(allocate_vectorlike): LEN now must be positive.  Assume LEN
52818	is in range.  All callers changed.
52819	(allocate_vector): Arg is now ptrdiff_t, not EMACS_INT.
52820	All callers changed.  Return zero vector here, not in
52821	allocate_vectorlike.
52822	* src/lisp.h (make_uninit_vector): Simplify.
52823	* src/xwidget.c (webkit_js_to_lisp):
52824	Check for overflow in ptrdiff_t calculations.
52825
528262018-12-08  Paul Eggert  <eggert@cs.ucla.edu>
52827
52828	Suppress WebKitGTK+ 2.21.1 diagnostics
52829
52830	* src/xwidget.c: Suppress deprecation warnings (Bug#33679).
52831
528322018-12-08  Michael Heerdegen  <michael_heerdegen@web.de>
52833
52834	Fix quote in the copyright skeleton
52835
52836	Revert replacing a backquote in the "copyright" skeleton with a quote
52837	done in "Replace insignificant backquotes" which broke the skeleton.
52838
52839	* lisp/emacs-lisp/copyright.el (copyright): Restore the correct
52840	version of the skeleton that used a backquote.
52841
528422018-12-08  Paul Eggert  <eggert@cs.ucla.edu>
52843
52844	Fix integer overflow in oversize vectors
52845
52846	* src/alloc.c (allocate_vector): Fix integer overflow when
52847	allocating very large vectors, by taking large_vector_offset
52848	into account.  Assume C99.
52849
528502018-12-08  Paul Eggert  <eggert@cs.ucla.edu>
52851
52852	* src/alloc.c (allocate_vectorlike): Simplify.
52853
528542018-12-08  Eli Zaretskii  <eliz@gnu.org>
52855
52856	Honor 'vc-bzr-log-switches' in 'vc-bzr-revision-table'
52857
52858	* lisp/vc/vc-bzr.el (vc-bzr-revision-table): Honor
52859	'vc-bzr-log-switches'.
52860
528612018-12-08  Steven De Herdt  <steven.deherdt@gmail.com>  (tiny change)
52862
52863	Honor 'vc-bzr-log-switches' in 'vc-bzr-expanded-log-entry'
52864
52865	* lisp/vc/vc-bzr.el (vc-bzr-expanded-log-entry): Honor
52866	'vc-bzr-log-switches'.  (Bug#33494)
52867
528682018-12-08  Eli Zaretskii  <eliz@gnu.org>
52869
52870	Document that Eshell follows symlinks in history file names
52871
52872	* etc/NEWS: Mention that Eshell now follows symlinks in
52873	history file names.
52874
528752018-12-08  Philip Hudson  <phil.hudson@iname.com>
52876
52877	Follow links in Eshell last-dir-ring
52878
52879	* lisp/eshell/em-hist.el (eshell-write-last-dir-ring):
52880	Follow symlinks in 'eshell-last-dir-ring-file-name'.
52881	(Bug#33477)
52882
528832018-12-08  Philip Hudson  <phil.hudson@iname.com>
52884
52885	Follow symlink in Eshell history
52886
52887	* lisp/eshell/em-hist.el (eshell-write-history): Follow
52888	symlinks in 'eshell-history-file-name'.  (Bug#33460)
52889
528902018-12-08  Martin Rudalics  <rudalics@gmx.at>
52891
52892	New buffer display action alist entry 'window-min-height' (Bug#32825)
52893
52894	* lisp/window.el (display-buffer-below-selected): Handle
52895	'window-min-height' action alist entry (Bug#32825).
52896	* doc/lispref/windows.texi (Buffer Display Action Functions)
52897	(Buffer Display Action Alists): Add documentation for
52898	'window-min-height' action alist entries.
52899	* etc/NEWS: Mention 'window-min-height' action alist entry.
52900
529012018-12-08  Martin Rudalics  <rudalics@gmx.at>
52902
52903	Adjust windows' previous buffers when reverting dired buffers (Bug#33458)
52904
52905	* lisp/dired.el (dired-save-positions, dired-restore-positions):
52906	For each window that showed the reverted buffer before, fix the
52907	point positions in its list of previously shown buffers the way
52908	these routines handle window point for all windows currently
52909	showing the buffer (Bug#33458).
52910
529112018-12-08  Martin Rudalics  <rudalics@gmx.at>
52912
52913	Improve how 'balance-windows' handles fixed-size windows (Bug#33254)
52914
52915	* lisp/window.el (balance-windows-2): When a child window has
52916	fixed size, don't count it as resizable (Bug#33254).
52917	Handle case where a window has no resizable child windows.
52918
529192018-12-07  Alan Mackenzie  <acm@muc.de>
52920
52921	CC Mode: Compensate for backward-sexp ignoring trailing commas after {...}
52922
52923	This fixes bug #32808.
52924
52925	* lisp/progmodes/cc-engine.el (c-beginning-of-statement-1): New variable
52926	comma-delimited, set when we're about to scan backward over a comma.  Do not
52927	reckon a brace block as bounding a statement when it is followed or preceded
52928	by a comma (except when argument comma-delim is non-nil).
52929	(c-guess-basic-syntax, CASE 9C): Call c-beginning-of-statement-1 with argument
52930	comma-delim changed to non-nil.
52931
529322018-12-07  Michael Albinus  <michael.albinus@gmx.de>
52933
52934	Refactor some Tramp functions
52935
52936	* lisp/net/tramp-compat.el (tramp-compat-file-local-name): New defsubst.
52937	(tramp-compat-file-name-quoted-p, tramp-compat-file-name-quote)
52938	(tramp-compat-file-name-unquote):
52939	* lisp/net/tramp.el (tramp-handle-file-name-case-insensitive-p)
52940	(tramp-handle-file-truename, tramp-get-remote-tmpdir):
52941	* lisp/net/tramp-adb.el (tramp-adb-handle-copy-file)
52942	(tramp-adb-handle-rename-file, tramp-adb-handle-exec-path):
52943	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-directly)
52944	(tramp-sh-handle-exec-path, tramp-find-inline-encoding)
52945	(tramp-get-remote-touch): Use it.
52946
52947	* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
52948	Use `tramp-handle-expand-file-name'.
52949	(tramp-adb-handle-expand-file-name): Move to tramp.el.
52950	(tramp-adb-handle-file-writable-p): Adapt docstring.
52951
52952	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
52953	Use `tramp-handle-file-local-copy', `tramp-handle-file-writable-p'
52954	and `tramp-handle-write-region'.
52955	(tramp-gvfs-handle-file-local-copy)
52956	(tramp-gvfs-handle-file-writable-p)
52957	(tramp-gvfs-handle-write-region): Move to tramp.el.
52958
52959	* lisp/net/tramp-rclone.el: Dont't require `tramp-adb' and
52960	`tramp-gvfs' anymore.
52961	(tramp-rclone-file-name-handler-alist):
52962	Use `tramp-handle-expand-file-name', `tramp-handle-file-local-copy',
52963	`tramp-handle-file-writable-p' and `tramp-handle-write-region'.
52964	(tramp-rclone-handle-directory-files): Simplify.
52965
52966	* lisp/net/tramp.el (tramp-methods): Extend docstring.
52967	(tramp-parse-netrc): Require `netrc'.
52968	(tramp-handle-expand-file-name, tramp-handle-file-local-copy)
52969	(tramp-handle-file-writable-p, tramp-handle-write-region): New defuns.
52970
529712018-12-07  Eli Zaretskii  <eliz@gnu.org>
52972
52973	Fix the value of default-directory upon startup on MS-Windows
52974
52975	* src/w32.c (w32_get_current_directory): New function.
52976	(GetCachedVolumeInformation, init_environment): Use it.
52977	(w32_init_current_directory): New function.
52978	* src/w32.h (w32_init_current_directory): Add prototype.
52979	* src/emacs.c (main) [WINDOWSNT]: Use w32_init_current_directory
52980	to get the accurate value of cwd.  This is needed to record
52981	the correct directory in emacs_wd, which is now initialized
52982	way earlier in the startup process, when init_environment was
52983	not yet called.  For details, see the problems reported in
52984	http://lists.gnu.org/archive/html/emacs-devel/2018-12/msg00068.html.
52985	Reported by Angelo Graziosi <angelo.g0@libero.it>.
52986
529872018-12-06  Juri Linkov  <juri@linkov.net>
52988
52989	* lisp/vc/vc.el (vc-find-revision-no-save): Add optional arg BUFFER.
52990
52991	(Bug#33567)
52992
529932018-12-06  Paul Eggert  <eggert@cs.ucla.edu>
52994
52995	Mention EMACS_SOCKET_NAME, not XDG_RUNTIME_DIR.
52996
52997	Mention unsetting XDG_RUNTIME_DIR in doc.
52998
529992018-12-06  Paul Eggert  <eggert@cs.ucla.edu>
53000
53001	emacsclient: avoid background chatter
53002
53003	* lib-src/emacsclient.c (process_grouping): New function.
53004	(act_on_signals, main): Use it.
53005	(main): Omit "Waiting for Emacs..." and later "\n" messages
53006	if in background, since that messes up the screen.
53007
530082018-12-06  Paul Eggert  <eggert@cs.ucla.edu>
53009
53010	Fix emacsclient hang when backgrounded
53011
53012	Problem reported by Kaushal Modi in:
53013	https://lists.gnu.org/r/emacs-devel/2018-12/msg00083.html
53014	The tcdrain call replaced an fdatasync call which had no
53015	effect on the tty, so removing it entirely shouldn’t cause
53016	problems.  The fdatasync call replaced an fsync call which
53017	also had no effect on the tty, and the fsync call seems to be
53018	badly-merged revenant of emacsclient’s old (circa 2004) way of
53019	communicating to and from Emacs via FILE * streams, where
53020	fsync was apparently needed when talking to sockets.
53021	* lib-src/emacsclient.c [!DOS_NT]: Don’t include termios.h.
53022	(flush_stdout): Remove.  All callers removed.
53023	(main): Do not drain the tty after "Waiting for Emacs..."
53024	message.  There should be no need to drain, and draining it
53025	might send us a SIGTTOU.  Do not fflush stdout just before
53026	exiting, as exiting does that for us.
53027
530282018-12-06  Paul Eggert  <eggert@cs.ucla.edu>
53029
53030	struct image_type layout is private to image.c
53031
53032	* src/dispextern.h (struct image_type): Move from here ...
53033	* src/image.c (struct image_type): ... to here.
53034
530352018-12-06  Eli Zaretskii  <eliz@gnu.org>
53036
53037	Avoid an error on exit in a build without threads
53038
53039	* lisp/simple.el (list-processes--refresh): Avoid signaling an
53040	error in a build --without-threads.  (Bug#33629)
53041
530422018-12-06  Michael Albinus  <michael.albinus@gmx.de>
53043
53044	Add missing handler to tramp-rclone.el, improve robustness
53045
53046	* lisp/net/tramp-rclone.el (tramp-adb): Require.
53047	(tramp-rclone-file-name-handler-alist):
53048	Use `tramp-adb-handle-expand-file-name'.
53049	(tramp-rclone-flush-directory-cache): New defun, derived from
53050	`tramp-rclone-flush-mount'.
53051	(tramp-rclone-do-copy-or-rename-file)
53052	(tramp-rclone-handle-delete-directory)
53053	(tramp-rclone-handle-delete-file)
53054	(tramp-rclone-handle-make-directory): Use it.
53055	(tramp-rclone-handle-directory-files)
53056	(tramp-rclone-local-file-name):
53057	Use `tramp-compat-file-name-quoted-p', 	`tramp-compat-file-name-quote'
53058	and ´tramp-compat-file-name-unquote'.
53059	(tramp-rclone-handle-file-executable-p)
53060	(tramp-rclone-handle-file-readable-p): Cache result.
53061	(tramp-rclone-handle-file-name-all-completions)
53062	(tramp-rclone-mounted-p, tramp-rclone-remote-file-name)
53063	(tramp-rclone-maybe-open-connection): Rewrite.
53064
53065	* test/lisp/net/tramp-tests.el (tramp--test-rclone-p): New defun.
53066	(tramp-test05-expand-file-name-relative)
53067	(tramp--test-special-characters): Use it.
53068
530692018-12-06  Michael Albinus  <michael.albinus@gmx.de>
53070
53071	Rework Tramp wrt string-match-p, looking-at-p, save-match-data
53072
53073	* lisp/net/tramp.el (tramp-find-method, tramp-find-user)
53074	(tramp-find-host, tramp-dissect-file-name, tramp-make-tramp-file-name)
53075	(tramp-completion-make-tramp-file-name, tramp-debug-message)
53076	(tramp-message, tramp-progress-reporter-update)
53077	(tramp-set-completion-function)
53078	(tramp-rfn-eshadow-update-overlay)
53079	(tramp-find-file-name-coding-system-alist)
53080	(tramp-file-name-for-operation)
53081	(tramp-use-absolute-autoload-file-names)
53082	(tramp-get-completion-methods, tramp-get-completion-user-host)
53083	(tramp-handle-directory-files)
53084	(tramp-handle-file-name-case-insensitive-p)
53085	(tramp-handle-file-name-completion, tramp-handle-file-truename)
53086	(tramp-handle-insert-directory, tramp-handle-load)
53087	(tramp-handle-shell-command, tramp-action-yesno)
53088	(tramp-action-yn, tramp-process-actions)
53089	(tramp-mode-string-to-int, tramp-get-local-locale)
53090	(tramp-local-host-p):
53091	* lisp/net/tramp-adb.el (tramp-adb-handle-file-system-info)
53092	(tramp-adb-handle-directory-files-and-attributes)
53093	(tramp-adb--gnu-switches-to-ash, tramp-adb-sh-fix-ls-output)
53094	(tramp-adb-handle-file-name-all-completions)
53095	(tramp-adb-handle-shell-command)
53096	(tramp-adb-handle-start-file-process):
53097	* lisp/net/tramp-archive.el (tramp-archive-dissect-file-name):
53098	* lisp/net/tramp-cache.el (tramp-get-hash-table)
53099	(tramp-flush-directory-properties, tramp-flush-file-function):
53100	* lisp/net/tramp-cmds.el (tramp-reporter-dump-variable)
53101	(tramp-append-tramp-buffers):
53102	* lisp/net/tramp-compat.el (tramp-compat-process-running-p):
53103	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
53104	(tramp-gvfs-get-file-attributes)
53105	(tramp-gvfs-handle-file-attributes)
53106	(tramp-gvfs-monitor-process-filter)
53107	(tramp-gvfs-handler-mounted-unmounted)
53108	(tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec-entry)
53109	(tramp-gvfs-mount-spec, tramp-gvfs-maybe-open-connection):
53110	* lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls)
53111	(tramp-do-file-attributes-with-stat)
53112	(tramp-sh-handle-file-selinux-context)
53113	(tramp-sh-handle-directory-files-and-attributes)
53114	(tramp-do-directory-files-and-attributes-with-stat)
53115	(tramp-sh-handle-file-name-all-completions)
53116	(tramp-sh-handle-dired-compress-file)
53117	(tramp-sh-handle-insert-directory)
53118	(tramp-sh-handle-expand-file-name)
53119	(tramp-sh-handle-start-file-process)
53120	(tramp-sh-handle-process-file, tramp-sh-handle-write-region)
53121	(tramp-sh-handle-file-notify-add-watch)
53122	(tramp-sh-gio-monitor-process-filter)
53123	(tramp-sh-gvfs-monitor-dir-process-filter)
53124	(tramp-sh-inotifywait-process-filter)
53125	(tramp-sh-handle-file-system-info, tramp-maybe-send-script)
53126	(tramp-find-executable, tramp-open-shell, tramp-find-shell)
53127	(tramp-open-connection-setup-interactive-shell)
53128	(tramp-find-inline-encoding, tramp-call-local-coding-command)
53129	(tramp-compute-multi-hops, tramp-maybe-open-connection)
53130	(tramp-convert-file-attributes)
53131	(tramp-make-copy-program-file-name, tramp-get-remote-locale)
53132	(tramp-get-test-nt-command, tramp-get-remote-stat)
53133	(tramp-get-inline-coding):
53134	* lisp/net/tramp-smb.el (tramp-smb-handle-directory-files)
53135	(tramp-smb-action-get-acl, tramp-smb-handle-file-attributes)
53136	(tramp-smb-handle-file-name-all-completions)
53137	(tramp-smb-handle-file-system-info)
53138	(tramp-smb-handle-file-writable-p)
53139	(tramp-smb-handle-insert-directory)
53140	(tramp-smb-handle-make-directory)
53141	(tramp-smb-handle-make-directory-internal)
53142	(tramp-smb-handle-start-file-process, tramp-smb-get-localname)
53143	(tramp-smb-read-file-entry): Use `string-match-p' and
53144	`looking-at-p'.  Remove superfluous `save-match-data'.  Apply
53145	`eval-when-compile' on constant concat data.
53146
53147	* lisp/net/tramp-compat.el (tramp-compat-file-name-quoted-p-p):
53148	Use `string-prefix-p'.
53149	(tramp-compat-file-name-unquote): Do not use match data.
53150
531512018-12-06  Michael Albinus  <michael.albinus@gmx.de>
53152
53153	Make stronger tests for Tramp multi hops
53154
53155	* lisp/net/tramp.el (tramp-dissect-file-name, tramp-dissect-hop-name):
53156	Check, that method is capable of multi hops.
53157
53158	* test/lisp/net/tramp-tests.el (tramp-test02-file-name-dissect)
53159	(tramp-test02-file-name-dissect-simplified)
53160	(tramp-test02-file-name-dissect-separate): Suppress check for multihops.
53161	(tramp-test03-file-name-method-rules): Check for error if multi
53162	hops cannot be applied.
53163
531642018-12-06  João Távora  <joaotavora@gmail.com>
53165
53166	Keep Flymake compatible with Emacs 26.1 builds --without-x
53167
53168	* lisp/progmodes/flymake.el (flymake-double-exclamation-mark):
53169	Don't define if 'define-fringe-bitmap isn't fbound.
53170	(Version): Bump to 1.0.2
53171
531722018-12-05  Glenn Morris  <rgm@gnu.org>
53173
53174	* admin/unidata/uvs.el (uvs-print-table-ivd): Add more header detail.
53175
531762018-12-04  João Távora  <joaotavora@gmail.com>
53177
53178	Prepare lisp/progmodes/flymake.el for distribution in GNU ELPA
53179
53180	* lisp/progmodes/flymake.el (Package-Requires): Require Emacs
53181	26.1.  (Version): Bump to 1.0.1
53182
531832018-12-04  João Távora  <joaotavora@gmail.com>
53184
53185	Allow custom load paths in elisp's byte-compilation Flymake
53186
53187	* lisp/progmodes/elisp-mode.el
53188	(elisp-flymake-byte-compile-load-path): New variable.
53189	(elisp-flymake-byte-compile): Use new variable
53190
531912018-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
53192
53193	* lisp/emacs-lisp/eldoc.el: Let the user interrupt the search
53194
53195	(eldoc-print-current-symbol-info): Use while-no-input and non-essential.
53196
531972018-12-04  Eli Zaretskii  <eliz@gnu.org>
53198
53199	Support IBM038 (a.k.a. "EBCDIC-INT") encoding
53200
53201	* lisp/international/mule-conf.el (ibm038): New charset.
53202	(ebcdic-int, cp038): Alias charsets of ibm038.
53203	* lisp/language/english.el (ibm038): New coding-system.
53204	(ebcdic-int, cp038): Alias coding-systems of ibm038.
53205	(Bug#33612)
53206
53207	* etc/NEWS: Announce the new coding system ibm038.
53208
532092018-12-04  Glenn Morris  <rgm@gnu.org>
53210
53211	Skip an autorevert test on hydra.nixos.org (bug#32645)
53212
53213	* test/lisp/autorevert-tests.el
53214	(auto-revert-test02-auto-revert-deleted-file): Skip on hydra.
53215
532162018-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
53217
53218	* lisp/shell.el (shell--parse-pcomplete-arguments): Stop at semi-colon
53219
53220	* test/lisp/shell-tests.el (shell-tests-completion-before-semi):
53221	New corresponding test.
53222
532232018-12-03  Juri Linkov  <juri@linkov.net>
53224
53225	* lisp/isearch.el (isearch-yank-on-move): New defcustom
53226
53227	with shift-move related options extracted from `search-exit-option'.
53228	(isearch-pre-command-hook): Rename search-exit-option to
53229	isearch-yank-on-move in shift-move related places.
53230	(isearch-post-command-hook): Check for isearch-pre-move-point
53231	instead of search-exit-option.  (Bug#15839)
53232
53233	* doc/emacs/search.texi (Not Exiting Isearch): Rename
53234	search-exit-option to isearch-yank-on-move.
53235
53236	* lisp/menu-bar.el (menu-bar-i-search-menu): Add more isearch commands.
53237
532382018-12-03  Juri Linkov  <juri@linkov.net>
53239
53240	* lisp/isearch.el (isearch-allow-scroll): New option `unlimited'.
53241
53242	(isearch-pre-command-hook): Call isearch-pre-scroll-point unless
53243	isearch-allow-scroll is 'unlimited'.
53244	(isearch-post-command-hook): Use `when' instead of `cond'.
53245	Call isearch-lazy-highlight-new-loop when isearch-allow-scroll is
53246	'unlimited'.  (Bug#15839)
53247
532482018-12-03  Juri Linkov  <juri@linkov.net>
53249
53250	* lisp/vc/vc-git.el (vc-git-stash): Call vc-dir-marked-files only
53251
53252	in vc-dir-mode.
53253
532542018-12-03  Paul Eggert  <eggert@cs.ucla.edu>
53255
53256	emacsclient: fix typo on recent socket-leak change
53257
53258	This ports to POSIXish platforms like macOS that lack SOCK_CLOEXEC.
53259	Fix suggested by Eli Zaretskii in:
53260	https://lists.gnu.org/r/emacs-devel/2018-12/msg00055.html
53261	* lib-src/emacsclient.c (set_local_socket):
53262	Don’t use SOCK_CLOEXEC; that’s cloexec_socket’s job.
53263
532642018-12-03  Eli Zaretskii  <eliz@gnu.org>
53265
53266	Fix WINDOWSNT/DOS_NT build
53267
53268	Recent changes in sysdep.c and emacsclient unnecessarily
53269	removed useful code from DOS_NT builds.  This changeset
53270	reinstates that code.
53271	* nt/inc/ms-w32.h (tcdrain): Redirect to _commit.
53272	(fdatasync): No need to redirect anymore.
53273
53274	* lib-src/emacsclient.c (flush_stdout): Don't avoid calling
53275	tcdrain on DOS_NT platforms.
53276
53277	* src/sysdep.c (reset_sys_modes): Don't ifdef away the call to
53278	tcdrain on DOS_NT platforms.
53279
532802018-12-02  Paul Eggert  <eggert@cs.ucla.edu>
53281
53282	emacsclient: don’t leak socket to child processes
53283
53284	* lib-src/emacsclient.c [!WINDOWSNT]: Include fcntl.h.
53285	(cloexec_socket): New function.
53286	(set_tcp_socket, set_local_socket): Use it.
53287
532882018-12-02  Paul Eggert  <eggert@cs.ucla.edu>
53289
53290	Use tcdrain, not fdatasync, to drain ttys
53291
53292	fdatasync is for storage devices, not ttys.
53293	* admin/merge-gnulib (GNULIB_MODULES): Remove fdatasync.
53294	* lib/fdatasync.c, m4/fdatasync.m4: Remove.
53295	* lib-src/Makefile.in (LIB_FDATASYNC):
53296	* src/Makefile.in (LIB_FDATASYNC):
53297	Remove.  All uses removed.
53298	* lib-src/emacsclient.c [!DOS_NT]:
53299	Include <termios.h>, for tcdrain.
53300	* lib-src/emacsclient.c (flush_stdout):
53301	* src/sysdep.c (reset_sys_modes): On ttys, use tcdrain instead
53302	of fdatasync (except don’t use either function if DOS_NT).
53303	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
53304
533052018-12-02  Paul Eggert  <eggert@cs.ucla.edu>
53306
53307	Update from Gnulib
53308
53309	This incorporates:
53310	2018-11-30 memrchr: port better to clang
53311	2018-11-21 mktime: add libc-config dependency
53312	* build-aux/config.guess, build-aux/config.sub, lib/memrchr.c:
53313	Copy from Gnulib.
53314	* m4/gnulib-comp.m4: Regenerate.
53315
533162018-12-02  Paul Eggert  <eggert@cs.ucla.edu>
53317
53318	emacsclient: fix symlink/socket race
53319
53320	* lib-src/emacsclient.c (socket_status): New arg UID.
53321	All uses changed.
53322	(set_local_socket): Don’t create the unbound socket unless the
53323	initial sanity checks on the socket file succeed; this
53324	simplifies cleaning it up.  Check socket ownership again
53325	after connecting, to fix a race (Bug#33366).
53326
533272018-12-02  Glenn Morris  <rgm@gnu.org>
53328
53329	Merge from origin/emacs-26
53330
53331	745c9c0 (origin/emacs-26) Revert "Revert "Fix infloop in GC mark_kboa...
53332	c418c85 Revert "Fix infloop in GC mark_kboards"
53333	8fa0d96 * lisp/emacs-lisp/subr-x.el (if-let, when-let): Doc fix: acti...
53334
533352018-12-02  Glenn Morris  <rgm@gnu.org>
53336
53337	Merge from origin/emacs-26
53338
53339	317b354 ; Add notes about cross-compiling macOS versions
53340	4b176eb Fix macOS run-time feature check
53341	c03574b * etc/NEWS-*: Fix capitalization of "Emacs"
53342
53343	# Conflicts:
53344	#	etc/NEWS
53345
533462018-12-02  Glenn Morris  <rgm@gnu.org>
53347
53348	Merge from origin/emacs-26
53349
53350	e06562c Fix "M-x man" when there's no 'man' program on PATH
53351
533522018-12-02  Glenn Morris  <rgm@gnu.org>
53353
53354	Merge from origin/emacs-26
53355
53356	cc3ad9a ; * CONTRIBUTE: Clarify rules for committing to release branc...
53357	a89dbe2 * doc/misc/dbus.texi (Type Conversion): Fix typo.  (Bug#33551)
53358	03ee726 ; Add comment to `customize-package-emacs-version-alist'
53359	bce1d1a Improve documentation of gdb-mi.el
53360
533612018-12-01  Paul Eggert  <eggert@cs.ucla.edu>
53362
53363	emacsclient: prefer XDG_RUNTIME_DIR (Bug#33367)
53364
53365	* lib-src/emacsclient.c: Disable -Wformat-truncation=2,
53366	to avoid false alarms about the new snprintf calls.
53367	(local_sockname): New function.
53368	(set_local_socket): Use it.  Prefer XDG_RUNTIME_DIR (if set)
53369	for location of socket directory.  Avoid unnecessary memory
53370	allocation by using snprintf to destination.
53371	* lisp/server.el (server-socket-dir): Prefer XDG_RUNTIME_DIR if set.
53372
533732018-12-01  Stefan Monnier  <monnier@iro.umontreal.ca>
53374
53375	* lisp/calendar/holidays.el: Use lexical-binding
53376
53377	Remove redundant :group arguments.
53378	(holiday-sexp): Bind 'year' and 'date' dynamically for 'sexp' and 'string'.
53379
533802018-11-30  Paul Eggert  <eggert@cs.ucla.edu>
53381
53382	Fix infloop in GC mark_kboards
53383
53384	* src/keyboard.c (KBD_BUFFER_SIZE): Now a constant, not a macro.
53385	(kbd_fetch_ptr, kbd_store_ptr): These now always point somewhere
53386	into kbd_buffer, instead of sometimes pointing just past the
53387	end which led to serious bugs (Bug#33547).  All uses changed.
53388	(kbd_store_ptr): No longer volatile.  This variable has not been
53389	accessed by a signal handler for some time, it seems.
53390	(next_kbd_event, prev_kbd_event): New functions.
53391	(kbd_buffer_nr_stored, process_special_events): Simplify.
53392
533932018-11-30  Michael Albinus  <michael.albinus@gmx.de>
53394
53395	Fix Bug#33556
53396
53397	* lisp/autorevert.el (auto-revert-notify-add-watch):
53398	Assert that a key in `auto-revert-notify-watch-descriptor-hash-list'
53399	is a valid file notification descriptor.  (Bug#33556)
53400
534012018-11-29  Robert Pluim  <rpluim@gmail.com>
53402
53403	Convert NS face colors to RGBA when comparing with frame values
53404
53405	The NS port uses indexes into a color table to specify the colors of
53406	faces, whereas frames use RGBA pixel values.  In
53407	extend_face_to_end_of_line the two needed to be compared to ensure
53408	that the backgrounds of certain faces are not extended to the edge of
53409	the window, which was failing because of this difference, thus causing
53410	a visual difference with other platforms.  Convert from index to RGBA
53411	when doing such comparisons.
53412
53413	* src/dispextern.h (FACE_COLOR_TO_PIXEL) [HAVE_NS]: New macro.  Call
53414	ns_color_index_to_rgba under NS only.
53415
53416	* src/nsgui.h: Add prototype for ns_color_index_to_rgba.
53417
53418	* src/nsterm.m (ns_color_index_to_rgba): New function.  Converts a
53419	color_table entry to corresponding RGBA pixel value.
53420
53421	* src/xdisp.c (extend_face_to_end_of_line): Call FACE_COLOR_TO_PIXEL
53422	on face background color when comparing with frame color.
53423
534242018-11-29  Filipp Gunbin  <fgunbin@fastmail.fm>
53425
53426	LDAP: Set process-connection-type to t
53427
53428	  * lisp/net/ldap.el (ldap-search-internal): Set
53429	  process-connection-type to t.  (Bug#33050)
53430
534312018-11-28  Glenn Morris  <rgm@gnu.org>
53432
53433	* lisp/emacs-lisp/bytecomp.el: Don't load compile at runtime.
53434
53435	It isn't needed and slows down compiling other files.
53436
534372018-11-28  Eric Abrahamsen  <eric@ericabrahamsen.net>
53438
53439	Further small tweaks to Gnus modes cleanup
53440
53441	* lisp/gnus/gnus-sum.el: Remove explicit definition of
53442	  `gnus-summary-mode-hook', this is now created automatically.
53443	* lisp/gnus/nnir.el (nnir-open-server): Attach `nnir-mode' to the
53444	  `gnus-summary-prepared-hook', instead of
53445	  `gnus-summary-mode-hook'. The latter no longer has access to the
53446	  buffer-local value of `gnus-newsgroup-name', which `nnir-mode'
53447	  needs.
53448
534492018-11-28  Glenn Morris  <rgm@gnu.org>
53450
53451	Merge from origin/emacs-26
53452
53453	74a3a79 (origin/emacs-26) Fix a typo in a doc string
53454	911766d Minor markup fix in frames.texi
53455	19ed1e9 * lisp/net/trampver.el (customize-package-emacs-version-alist...
53456	d7132ad * lisp/mh-e/mh-e.el (customize-package-emacs-version-alist): ...
53457	5f39260 * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p): Pass format to m...
53458	a291f62 Don't call xwidget functions until GTK has been initialized
53459	f0531b8 Improve documentation of Ediff wordwise commands
53460	2925ce5 Support Hunspell 1.7.0 in ispell.el
53461	03bb7a8 Avoid clearing echo-area message by auto-save-visited-file-name
53462
534632018-11-28  Glenn Morris  <rgm@gnu.org>
53464
53465	Merge from origin/emacs-26
53466
53467	094fcf6 Fix more drawing bugs in NS port (bug#32932)
53468
534692018-11-28  Michael Albinus  <michael.albinus@gmx.de>
53470
53471	Tramp cleanup
53472
53473	* lisp/net/tramp-sh.el (tramp-sh-handle-file-name-all-completions)
53474	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-name-all-completions):
53475	* lisp/net/tramp-smb.el (tramp-smb-read-file-entry):
53476	Use `string-match-p'.
53477
53478	* lisp/net/tramp-rclone.el (tramp-rclone-maybe-open-connection):
53479	Set file properties more robust.
53480
53481	* lisp/net/tramp-sh.el (tramp-stat-marker)
53482	(tramp-convert-file-attributes): Add tramp-autoload cookie.
53483
534842018-11-28  Alan Mackenzie  <acm@muc.de>
53485
53486	Make compilation mode work with warnings from compiled buffer functions
53487
53488	In particular, warning messages from compile_defun now contain the source
53489	buffer name and line and column numbers.  Typing CR on such a warning now
53490	moves to the pertinent place in the source buffer.
53491
53492	This fixes bug #33475
53493
53494	* lisp/emacs-lisp/bytecomp.el (top-level): Require compile.elc?.
53495	(emacs-lisp-compilation-file-name-or-buffer)
53496	(emacs-lisp-compilation-parse-errors-filename-function): New
53497	variables/constants.
53498	(emacs-lisp-compilation-mode): New mode derived from compilation-mode.
53499	(byte-compile-log-file): Check byte-compile-current-file for being a string,
53500	not merely non-nil.  Change wording in message from "buffer" to "in buffer".
53501	Go into emacs-lisp-compilation-mode rather than the plain compilation-mode.
53502	(compile-defun): Bind byte-compile-current-file to current-buffer, not nil.
53503
53504	* lisp/progmodes/compile.el
53505	(compilation-parse-errors-filename-function): Amend comments to specify that
53506	this function may return a buffer, and that it need not save the match data.
53507	(Several places): Amend comments to allow for the use of a buffer rather than
53508	a file name.
53509	(compilation-next-error-function): If the "file name" in file struct is
53510	actually a buffer, use it rather than compilation-find-file's result.
53511	(compilation-get-file-structure): save-match-data around the call to
53512	compilation-parse-errors-filename-function.  Only call
53513	command-line-normalize-file-name when `filename' is a string.
53514
535152018-11-27  Paul Eggert  <eggert@cs.ucla.edu>
53516
53517	Fix core dump in dbus-message-internal
53518
53519	* src/dbusbind.c (Fdbus_message_internal):
53520	Don’t go past array end (Bug#33530).
53521
535222018-11-27  Michael Albinus  <michael.albinus@gmx.de>
53523
53524	Fixes in tramp-clone.el
53525
53526	* lisp/net/tramp-rclone.el (tramp-rclone-parse-device-names):
53527	Wrap by connection property "rclone-device-names".
53528	(tramp-rclone-maybe-open-connection): Do not check for `non-essential'.
53529
535302018-11-26  Michael Heerdegen  <michael_heerdegen@web.de>
53531
53532	Revert "Replace insignificant backquotes" for Org files
53533
53534	Revert everything of commit 1808d254a5 "Replace insignificant
53535	backquotes" that touches Org source files since these should not have
53536	been changed.
53537
53538	* lisp/org/ob-C.el:
53539	* lisp/org/ob-core.el:
53540	* lisp/org/ob-exp.el:
53541	* lisp/org/ob-groovy.el:
53542	* lisp/org/ob-haskell.el:
53543	* lisp/org/ob-io.el:
53544	* lisp/org/ob-lisp.el:
53545	* lisp/org/ob-lob.el:
53546	* lisp/org/ob-lua.el:
53547	* lisp/org/ob-octave.el:
53548	* lisp/org/ob-perl.el:
53549	* lisp/org/ob-python.el:
53550	* lisp/org/ob-ref.el:
53551	* lisp/org/ob-ruby.el:
53552	* lisp/org/ob-sql.el:
53553	* lisp/org/org-agenda.el:
53554	* lisp/org/org-capture.el:
53555	* lisp/org/org-clock.el:
53556	* lisp/org/org-colview.el:
53557	* lisp/org/org-duration.el:
53558	* lisp/org/org-element.el:
53559	* lisp/org/org-entities.el:
53560	* lisp/org/org-gnus.el:
53561	* lisp/org/org-indent.el:
53562	* lisp/org/org-info.el:
53563	* lisp/org/org-inlinetask.el:
53564	* lisp/org/org-lint.el:
53565	* lisp/org/org-list.el:
53566	* lisp/org/org-mouse.el:
53567	* lisp/org/org-plot.el:
53568	* lisp/org/org-src.el:
53569	* lisp/org/org-table.el:
53570	* lisp/org/org.el:
53571	* lisp/org/ox-ascii.el:
53572	* lisp/org/ox-html.el:
53573	* lisp/org/ox-latex.el:
53574	* lisp/org/ox-man.el:
53575	* lisp/org/ox-md.el:
53576	* lisp/org/ox-org.el:
53577	* lisp/org/ox-publish.el:
53578	* lisp/org/ox-texinfo.el:
53579	* lisp/org/ox.el: Undo changes made by commit "Replace insignificant
53580	backquotes".
53581
535822018-11-26  Eli Zaretskii  <eliz@gnu.org>
53583
53584	Unbreak compilation of emacsclient on MS-Windows
53585
53586	* lib-src/emacsclient.c (main): Make "-suspend" handling
53587	conditional on !WINDOWSNT, as there's no SIGSTOP nor 'kill'
53588	there.
53589
535902018-11-26  Paul Eggert  <eggert@cs.ucla.edu>
53591
53592	emacsclient: assume HAVE_INET_SOCKETS
53593
53594	* configure.ac (HAVE_INET_SOCKETS): Remove.
53595	* lib-src/emacsclient.c: Simplify by assuming HAVE_SOCKETS and
53596	HAVE_INET_SOCKETS, which are always true nowadays, except perhaps
53597	for MS-DOS and if so this program shouldn’t be built there anyway.
53598	Don’t bother including sys/types.h, as it’s not needed on modern
53599	systems (and syswait.h does it for us anyway).
53600	(main): Simplify by assuming SIGSTOP (which is always defined
53601	if SIGCONT is), and by assuming HAVE_SOCKETS && HAVE_INET_SOCKETS.
53602
536032018-11-26  Paul Eggert  <eggert@cs.ucla.edu>
53604
53605	emacsclient: negate NO_SOCKETS_IN_FILE_SYSTEM
53606
53607	* lib-src/emacsclient.c (SOCKETS_IN_FILE_SYSTEM): Rename from
53608	NO_SOCKETS_IN_FILE_SYSTEM, with inverted sense.  All uses changed.
53609	All uses were of the form ‘#ifndef NO_SOCKETS_IN_FILE_SYSTEM’, and
53610	it’s easier to read ‘#ifdef SOCKETS_IN_FILE_SYSTEM’.
53611
536122018-11-26  Paul Eggert  <eggert@cs.ucla.edu>
53613
53614	emacsclient: fix some races on POSIX systems
53615
53616	Fix some longstanding race conditions due to emacsclient’s use of
53617	‘signal’ instead of ‘sigaction’ and its use of nested signal
53618	handlers.  These races could cause premature exit or incorrect
53619	commands sent to Emacs.
53620	* lib-src/emacsclient.c (signal) [!WINDOWSNT]: Do not undef.
53621	(emacs_socket): Remove this static variable.  It is now a parameter.
53622	(send_to_emacs): Do not exit merely because ‘send’ was interrupted.
53623	Instead, act on the signal if possible, and then retry the ‘send’.
53624	(pass_signal_to_emacs): Remove; now done by act_on_signals.
53625	(reinstall_handler_if_needed, handle_sigttou, handle_sigwinch)
53626	(install_handler): New functions.
53627	(got_sigcont, got_sigtstp, got_sigttou, got_sigwinch):
53628	New globals, used for more-portable signal handling.
53629	(handle_sigcont, handle_sigtstp): Just set the static var; other
53630	actions are now done later by act_on_signals.
53631	(install_handler): New function that arranges for signals to
53632	never be reset to default, on modern POSIX platforms.
53633	This fixes some races.
53634	(act_on_signals): New function.  When acting on SIGCONT,
53635	don’t bother calling getpgrp if tcgetpgrp fails.
53636	(start_daemon_and_retry_set_socket): Return the socket
53637	rather than setting a global variable.  All uses changed.
53638	(flush_stdout): New function that acts on signals received while
53639	flushing.
53640	(main): Use it.  emacs_socket is now a local var.
53641	Act on signals received during recv.
53642
536432018-11-26  Michael Albinus  <michael.albinus@gmx.de>
53644
53645	Rework tramp-rclone-mounted-p
53646
53647	* lisp/net/tramp-rclone.el (tramp-rclone-mounted-p): Rewrite.
53648	(tramp-rclone-maybe-open-connection): Set "mounted" file property.
53649
536502018-11-26  Wilson Snyder  <wsnyder@wsnyder.org>
53651
53652	Update verilog-mode with upstream patches.
53653
53654	* lisp/progmodes/verilog-mode.el (verilog-auto-templated-rel)
53655	(verilog-load-file-at-point, verilog-read-arg-pins)
53656	(verilog-read-auto-constants, verilog-read-auto-params)
53657	(verilog-read-auto-template-middle, verilog-read-decls)
53658	(verilog-read-includes, verilog-read-inst-pins)
53659	(verilog-read-instants, verilog-read-sub-decls-gate): Don't copy
53660	properties when parsing AUTOs.
53661	(verilog-font-lock-keywords): Fix SystemVerilog font lock keywords to be
53662	more consistent with IEEE 1364 keywords. Reported by Jeff Riley.
53663	(verilog-highlight-p1800-keywords): Now ignored.
53664	(verilog-simplify-range-expression): Simplify shifts in auto wire
53665	declarations, bug1346.  Reported by Maghawan Punde.
53666	(verilog-read-always-signals-recurse): Fix AUTORESET with pattern
53667	assignments. Reported by Bhargava Narumanchi.
53668	(verilog-at-constraint-p): Fix indentation of replicate with parameter.
53669	Reported by Yun He.
53670	(verilog-read-defines, verilog-read-includes)
53671	(verilog-substitute-include-name): Fix handling define names in includes,
53672	bug1324. Reported by John DeRoo.
53673	(verilog-imenu-generic-expression): Fix speedbar for signed functions,
53674	bug1312. Reported by Ian Perryman.
53675	(verilog-indent-buffer): Fix verilog-batch-indent not honoring top mode
53676	line. Reported by James Claffey.
53677	(verilog-set-auto-endcomments): Fix end comments when have variables
53678	starting with class_, bug1259. Reported by Andrea Fedeli.
53679	(verilog-read-decls): Fix AUTOINST for parameterized interfaces,
53680	bug1253. Reported by David Rogoff.
53681	(verilog-read-sub-decls-line, verilog-signals-combine-bus): Fix AUTOOUTPUT
53682	not including nested array references, msg2417.
53683	(verilog-at-constraint-p): begin/end are illegal inside constraint blocks,
53684	so use that knowledge to make smarter indentation decisions.
53685	(verilog-auto-simplify-expressions, verilog-simplify-range-expression):
53686	Add `verilog-auto-simplify-expressions' to disable range simplifications.
53687	(verilog-auto-save-check, verilog-batch-execute-func): Fix .* causing
53688	Emacs batch to always re-save files with no changes, bug1239.  Reported by
53689	Brian Etscheid.
53690
536912018-11-25  Juri Linkov  <juri@linkov.net>
53692
53693	* lisp/windmove.el: Directional window deletion (bug#32790)
53694
53695	* lisp/windmove.el (windmove-delete-in-direction)
53696	(windmove-delete-left, windmove-delete-up)
53697	(windmove-delete-right, windmove-delete-down)
53698	(windmove-delete-default-keybindings): New functions.
53699
537002018-11-25  Michael Heerdegen  <michael_heerdegen@web.de>
53701
53702	Replace insignificant backquotes
53703
53704	Replace most insignificant occurrences of '`' with a straight quote,
53705	sharp quote or nothing.  This includes backquotes in 'pcase' patterns.
53706
53707	* admin/admin.el:
53708	* lisp/apropos.el:
53709	* lisp/arc-mode.el:
53710	* lisp/auth-source.el:
53711	* lisp/avoid.el:
53712	* lisp/bindings.el:
53713	* lisp/bs.el:
53714	* lisp/calculator.el:
53715	* lisp/calendar/todo-mode.el:
53716	* lisp/cedet/semantic.el:
53717	* lisp/cedet/semantic/analyze/debug.el:
53718	* lisp/cedet/semantic/bovine.el:
53719	* lisp/cedet/semantic/dep.el:
53720	* lisp/cedet/semantic/grammar.el:
53721	* lisp/cedet/semantic/wisent/comp.el:
53722	* lisp/cedet/semantic/wisent/grammar.el:
53723	* lisp/cedet/srecode/mode.el:
53724	* lisp/cus-edit.el:
53725	* lisp/doc-view.el:
53726	* lisp/elec-pair.el:
53727	* lisp/electric.el:
53728	* lisp/emacs-lisp/autoload.el:
53729	* lisp/emacs-lisp/benchmark.el:
53730	* lisp/emacs-lisp/byte-opt.el:
53731	* lisp/emacs-lisp/bytecomp.el:
53732	* lisp/emacs-lisp/cconv.el:
53733	* lisp/emacs-lisp/cl-extra.el:
53734	* lisp/emacs-lisp/cl-generic.el:
53735	* lisp/emacs-lisp/cl-macs.el:
53736	* lisp/emacs-lisp/copyright.el:
53737	* lisp/emacs-lisp/debug.el:
53738	* lisp/emacs-lisp/eieio-compat.el:
53739	* lisp/emacs-lisp/ert.el:
53740	* lisp/emacs-lisp/generator.el:
53741	* lisp/emacs-lisp/inline.el:
53742	* lisp/emacs-lisp/macroexp.el:
53743	* lisp/emacs-lisp/map.el:
53744	* lisp/emacs-lisp/package-x.el:
53745	* lisp/emacs-lisp/package.el:
53746	* lisp/emacs-lisp/radix-tree.el:
53747	* lisp/emacs-lisp/smie.el:
53748	* lisp/epa.el:
53749	* lisp/erc/erc-dcc.el:
53750	* lisp/erc/erc-track.el:
53751	* lisp/erc/erc.el:
53752	* lisp/eshell/em-ls.el:
53753	* lisp/eshell/esh-cmd.el:
53754	* lisp/files.el:
53755	* lisp/filesets.el:
53756	* lisp/font-lock.el:
53757	* lisp/frameset.el:
53758	* lisp/gnus/gnus-agent.el:
53759	* lisp/gnus/gnus-art.el:
53760	* lisp/gnus/gnus-cite.el:
53761	* lisp/gnus/gnus-group.el:
53762	* lisp/gnus/gnus-msg.el:
53763	* lisp/gnus/gnus-salt.el:
53764	* lisp/gnus/gnus-srvr.el:
53765	* lisp/gnus/gnus-sum.el:
53766	* lisp/gnus/gnus-topic.el:
53767	* lisp/gnus/gnus-util.el:
53768	* lisp/gnus/gnus.el:
53769	* lisp/gnus/message.el:
53770	* lisp/gnus/mm-util.el:
53771	* lisp/gnus/mml.el:
53772	* lisp/gnus/nnheader.el:
53773	* lisp/gnus/nnimap.el:
53774	* lisp/gnus/nnmairix.el:
53775	* lisp/gnus/spam.el:
53776	* lisp/hexl.el:
53777	* lisp/hi-lock.el:
53778	* lisp/ibuf-ext.el:
53779	* lisp/ibuffer.el:
53780	* lisp/ido.el:
53781	* lisp/info.el:
53782	* lisp/international/mule-cmds.el:
53783	* lisp/international/mule-util.el:
53784	* lisp/json.el:
53785	* lisp/jsonrpc.el:
53786	* lisp/language/cyrillic.el:
53787	* lisp/language/european.el:
53788	* lisp/language/georgian.el:
53789	* lisp/language/tibetan.el:
53790	* lisp/language/utf-8-lang.el:
53791	* lisp/language/vietnamese.el:
53792	* lisp/ldefs-boot.el:
53793	* lisp/mail/mail-extr.el:
53794	* lisp/man.el:
53795	* lisp/menu-bar.el:
53796	* lisp/mh-e/mh-acros.el:
53797	* lisp/mh-e/mh-folder.el:
53798	* lisp/mh-e/mh-mime.el:
53799	* lisp/mh-e/mh-show.el:
53800	* lisp/mh-e/mh-speed.el:
53801	* lisp/minibuffer.el:
53802	* lisp/mpc.el:
53803	* lisp/net/ange-ftp.el:
53804	* lisp/net/hmac-def.el:
53805	* lisp/net/newst-backend.el:
53806	* lisp/net/quickurl.el:
53807	* lisp/net/tramp-archive.el:
53808	* lisp/net/tramp-compat.el:
53809	* lisp/notifications.el:
53810	* lisp/obsolete/pgg-parse.el:
53811	* lisp/obsolete/vc-arch.el:
53812	* lisp/obsolete/xesam.el:
53813	* lisp/org/ob-C.el:
53814	* lisp/org/ob-core.el:
53815	* lisp/org/ob-exp.el:
53816	* lisp/org/ob-groovy.el:
53817	* lisp/org/ob-haskell.el:
53818	* lisp/org/ob-io.el:
53819	* lisp/org/ob-lisp.el:
53820	* lisp/org/ob-lob.el:
53821	* lisp/org/ob-lua.el:
53822	* lisp/org/ob-octave.el:
53823	* lisp/org/ob-perl.el:
53824	* lisp/org/ob-python.el:
53825	* lisp/org/ob-ref.el:
53826	* lisp/org/ob-ruby.el:
53827	* lisp/org/ob-sql.el:
53828	* lisp/org/org-agenda.el:
53829	* lisp/org/org-capture.el:
53830	* lisp/org/org-clock.el:
53831	* lisp/org/org-colview.el:
53832	* lisp/org/org-duration.el:
53833	* lisp/org/org-element.el:
53834	* lisp/org/org-entities.el:
53835	* lisp/org/org-gnus.el:
53836	* lisp/org/org-indent.el:
53837	* lisp/org/org-info.el:
53838	* lisp/org/org-inlinetask.el:
53839	* lisp/org/org-lint.el:
53840	* lisp/org/org-list.el:
53841	* lisp/org/org-mouse.el:
53842	* lisp/org/org-plot.el:
53843	* lisp/org/org-src.el:
53844	* lisp/org/org-table.el:
53845	* lisp/org/org.el:
53846	* lisp/org/ox-ascii.el:
53847	* lisp/org/ox-html.el:
53848	* lisp/org/ox-latex.el:
53849	* lisp/org/ox-man.el:
53850	* lisp/org/ox-md.el:
53851	* lisp/org/ox-org.el:
53852	* lisp/org/ox-publish.el:
53853	* lisp/org/ox-texinfo.el:
53854	* lisp/org/ox.el:
53855	* lisp/play/bubbles.el:
53856	* lisp/play/gamegrid.el:
53857	* lisp/progmodes/autoconf.el:
53858	* lisp/progmodes/cc-defs.el:
53859	* lisp/progmodes/cc-engine.el:
53860	* lisp/progmodes/cc-fonts.el:
53861	* lisp/progmodes/cc-langs.el:
53862	* lisp/progmodes/cperl-mode.el:
53863	* lisp/progmodes/ebrowse.el:
53864	* lisp/progmodes/elisp-mode.el:
53865	* lisp/progmodes/flymake-cc.el:
53866	* lisp/progmodes/flymake.el:
53867	* lisp/progmodes/fortran.el:
53868	* lisp/progmodes/grep.el:
53869	* lisp/progmodes/gud.el:
53870	* lisp/progmodes/idlwave.el:
53871	* lisp/progmodes/js.el:
53872	* lisp/progmodes/m4-mode.el:
53873	* lisp/progmodes/make-mode.el:
53874	* lisp/progmodes/mixal-mode.el:
53875	* lisp/progmodes/modula2.el:
53876	* lisp/progmodes/octave.el:
53877	* lisp/progmodes/opascal.el:
53878	* lisp/progmodes/prolog.el:
53879	* lisp/progmodes/ps-mode.el:
53880	* lisp/progmodes/python.el:
53881	* lisp/progmodes/ruby-mode.el:
53882	* lisp/progmodes/sh-script.el:
53883	* lisp/progmodes/sql.el:
53884	* lisp/progmodes/verilog-mode.el:
53885	* lisp/ps-mule.el:
53886	* lisp/rtree.el:
53887	* lisp/ruler-mode.el:
53888	* lisp/ses.el:
53889	* lisp/simple.el:
53890	* lisp/startup.el:
53891	* lisp/subr.el:
53892	* lisp/term/ns-win.el:
53893	* lisp/textmodes/bibtex.el:
53894	* lisp/textmodes/conf-mode.el:
53895	* lisp/textmodes/css-mode.el:
53896	* lisp/textmodes/refill.el:
53897	* lisp/textmodes/sgml-mode.el:
53898	* lisp/textmodes/tex-mode.el:
53899	* lisp/tutorial.el:
53900	* lisp/url/url-dav.el:
53901	* lisp/url/url-gw.el:
53902	* lisp/url/url-http.el:
53903	* lisp/url/url-methods.el:
53904	* lisp/url/url-privacy.el:
53905	* lisp/vc/cvs-status.el:
53906	* lisp/vc/diff-mode.el:
53907	* lisp/vc/ediff-init.el:
53908	* lisp/vc/ediff-ptch.el:
53909	* lisp/vc/log-edit.el:
53910	* lisp/vc/log-view.el:
53911	* lisp/vc/pcvs-info.el:
53912	* lisp/vc/pcvs.el:
53913	* lisp/vc/smerge-mode.el:
53914	* lisp/vc/vc-git.el:
53915	* lisp/vc/vc-hg.el:
53916	* lisp/vc/vc-mtn.el:
53917	* lisp/vc/vc-rcs.el:
53918	* lisp/whitespace.el:
53919	* lisp/window.el:
53920	* test/lisp/electric-tests.el:
53921	* test/lisp/emacs-lisp/cl-lib-tests.el:
53922	* test/lisp/emacs-lisp/ert-tests.el:
53923	* test/lisp/epg-tests.el:
53924	* test/lisp/jsonrpc-tests.el:
53925	* test/src/data-tests.el:
53926	* test/src/json-tests.el: Replace most insignificant backquotes.
53927
539282018-11-25  Stephen Berman  <stephen.berman@gmx.net>
53929
53930	Handle narrowing when marking entries of included diary files
53931
53932	* lisp/calendar/diary-lib.el (diary-mark-entries): Widen before
53933	marking entries (bug#33423).
53934
539352018-11-24  Juri Linkov  <juri@linkov.net>
53936
53937	Add new Isearch commands to new Isearch menu (bug#29321, bug#32990)
53938
53939	* lisp/isearch.el (isearch-menu-bar-map): Add menu items for
53940	isearch-beginning-of-buffer and isearch-end-of-buffer.
53941	(isearch-forward): Add them to docstring.
53942
539432018-11-24  Glenn Morris  <rgm@gnu.org>
53944
53945	Merge from origin/emacs-26
53946
53947	9877c03 (origin/emacs-26) Fix bug #33416, where typing a ) in a comme...
53948
539492018-11-24  Glenn Morris  <rgm@gnu.org>
53950
53951	Merge from origin/emacs-26
53952
53953	56e3e4f Improve indexing in the ELisp manual
53954	7a4992a More Symbola-related extensions for default fontset
53955	4ae0a75 Better support for display of U+1F900..U+1F9FF block
53956	8f0c788 Improve documentation of 'edit-abbrevs-mode'
53957	3c643e7 ; NEWS tweak
53958	477414a Improve documentation of 'dired-do-compress'
53959	9c09b1d ; * etc/NES: Minor change in the description of Dired's 'Z'.
53960	52715e3 Improve doc string and display of 'describe-character'
53961	93242b1 * etc/NEWS: Clarify what 'Z' does in Dired.  (Bug#33450)
53962	0d59ae3 Update the docs of object internals
53963
53964	Conflicts:
53965		etc/NEWS
53966
539672018-11-24  Michael Albinus  <michael.albinus@gmx.de>
53968
53969	Add Tramp rclone method
53970
53971	* doc/misc/tramp.texi (Top): Remove "History".
53972	(History): Remove node.
53973	(Quick Start Guide): New section "Using rclone".
53974	(External methods) <rclone>: Describe.
53975
53976	* etc/NEWS: Mention Tramp rclone method.
53977
53978	* lisp/net/tramp-rclone.el: New file.
53979
539802018-11-24  Michael Albinus  <michael.albinus@gmx.de>
53981
53982	Revert patch in tramp-equal-remote
53983
53984	* lisp/net/tramp-sh.el (tramp-timeout-session):
53985	Use `tramp-file-name-equal-p'.
53986
53987	* lisp/net/tramp.el (tramp-equal-remote): Revert patch.
53988
539892018-11-24  Charles A. Roelli  <charles@aurox.ch>
53990
53991	Add tool-bar and menu-bar menu for Isearch (Bug#32990)
53992
53993	* etc/NEWS (Search and Replace): Mention this change.
53994
53995	* lisp/isearch.el: Declare the new, non-autoloaded function
53996	'tmm-menubar-keymap'.
53997	(isearch-tmm-menubar): New function.
53998	(isearch-menu-bar-commands): New variable.
53999	(isearch-menu-bar-yank-map, isearch-menu-bar-map): New variables.
54000	(isearch-mode-map): Define a menu-bar search menu and remap
54001	'tmm-menubar' bindings to point to 'isearch-tmm-menubar'.
54002	(isearch-tool-bar-old-map): New variable.
54003	(isearch-tool-bar-image): New function.
54004	(isearch-tool-bar-map): New variable.
54005	(minor-mode-map-alist): Add an entry for Isearch so that
54006	'isearch-menu-bar-map' shows during search.
54007	(isearch-mode, isearch-done): Save and restore possible
54008	buffer-local 'tool-bar-map' using 'isearch-tool-bar-old-map'.
54009	(iseacrh-mouse-commands): New variable.
54010	(isearch-mouse-leave-buffer): Allow commands in
54011	isearch-mouse-commands.
54012	(with-isearch-suspended): Only push changed states of Isearch
54013	after running the body argument of this macro.
54014	(isearch-pre-command-hook): Additionally allow bindings in
54015	'isearch-tool-bar-map' to pass through, as well as commands
54016	in isearch-menu-bar-commands.
54017	(isearch-post-command-hook): Call 'force-mode-line-update' at its
54018	end to make sure the menu- and tool-bars are up-to-date.
54019
54020	* lisp/tmm.el (tmm-menubar-keymap): New function factored out from
54021	'tmm-menubar'.
54022	(tmm-menubar): Use 'tmm-menubar-keymap'.
54023	(tmm-prompt): New optional argument 'no-execute'.
54024
540252018-11-24  Michael Albinus  <michael.albinus@gmx.de>
54026
54027	Remove find-file-noselect in Tramp, it was handled in XEmacs
54028
54029	* lisp/net/tramp.el (tramp-file-name-for-operation):
54030	Remove `find-file-noselect'.
54031
540322018-11-23  Eric Abrahamsen  <eric@ericabrahamsen.net>
54033
54034	Provide new gnus-mode, derive all gnus major modes from this
54035
54036	* lisp/gnus/gnus.el (gnus-mode): New do-nothing major mode, derived
54037	  from special mode.
54038	* lisp/gnus/gnus-sum.el (gnus-summary-mode): Change from a function to
54039	  a major mode, derive from gnus-mode.
54040	  (gnus-summary-setup-buffer): Change call a bit -- can no longer pass
54041	  an argument to the mode function.
54042	* lisp/gnus/gnus-srvr.el (gnus-browse-mode): Derive from gnus-mode.
54043	  (gnus-server-setup-buffer): Remove unnecessary function.
54044	  (gnus-enter-server-buffer): Call gnus-server-mode here, and call it
54045	  whether the server buffer already existed or not.
54046	  (gnus-server-mode): Change from a function to a major mode.
54047	  (gnus-server-mode-hook): Delete custom option, this is automatically
54048	  created.
54049	* lisp/gnus/gnus-salt.el (gnus-tree-mode): Derive from gnus-mode.
54050	  (gnus-tree-mode-hook): Delete custom option, this is automatically
54051	  created.
54052	* lisp/gnus/gnus-kill.el (gnus-kill-file-mode-hook): Delete custom
54053	  option.
54054	* lisp/gnus/gnus-group.el (gnus-group-mode):
54055	* lisp/gnus/gnus-art.el (gnus-article-mode):
54056	* lisp/gnus/gnus-agent.el (gnus-category-mode): Derive from gnus-mode.
54057	  (gnus-category-mode-hook): Delete custom option.
54058
54059	(Bug#33263)
54060
540612018-11-23  Filipp Gunbin  <fgunbin@fastmail.fm>
54062
54063	search.texi fix for leftover from C-M-w to C-M-d change
54064
54065	* doc/emacs/search.texi: Replace C-M-w with C-M-d.
54066
540672018-11-23  Eli Zaretskii  <eliz@gnu.org>
54068
54069	Avoid compilation warning in emacsclient.c
54070
54071	* lib-src/emacsclient.c (set_tcp_socket): Avoid compilation
54072	warning in MS-Windows build.
54073
540742018-11-23  Paul Eggert  <eggert@cs.ucla.edu>
54075
54076	emacsclient: fix child exit when exec fails
54077
54078	* lib-src/emacsclient.c (start_daemon_and_retry_set_socket):
54079	If the execvp of Emacs fails exit instead of having the child
54080	run on and do the work of the parent.  Coalesce duplicate code.
54081
540822018-11-23  Paul Eggert  <eggert@cs.ucla.edu>
54083
54084	emacsclient: one ‘main’ function
54085
54086	* lib-src/emacsclient.c (main): Simplify by having just one
54087	‘main’ function instead of two.  Don’t assume argc is positive (!).
54088
540892018-11-22  Paul Eggert  <eggert@cs.ucla.edu>
54090
54091	emacsclient: tidy socket failure cleanup
54092
54093	* lib-src/emacsclient.c (set_tcp_socket, set_local_socket):
54094	Close socket (instead of leaking it) when ‘connect’ fails.
54095	(socket_status): Return errno if stat fails and -1 if we don’t own.
54096	(set_local_socket): Simplify based on socket_status change.
54097
540982018-11-22  Juri Linkov  <juri@linkov.net>
54099
54100	Add Isearch commands for going to absolute occurrence of matches (bug#29321)
54101
54102	* lisp/isearch.el (isearch-mode-map): Bind 'M-s M-<' to
54103	'isearch-beginning-of-buffer' and 'isearch-end-of-buffer' to 'M-s M->'.
54104	(isearch-beginning-of-buffer, isearch-end-of-buffer): New commands.
54105
541062018-11-22  Paul Eggert  <eggert@cs.ucla.edu>
54107
54108	emacsclient: coalesce WINDOWSNT-specific code
54109
54110	* lib-src/emacsclient.c (sock_err_message) [WINDOWSNT]:
54111	Do nothing if w32_window_app () && alternate_editor.
54112	Both callers changed.
54113
541142018-11-22  Paul Eggert  <eggert@cs.ucla.edu>
54115
54116	emacsclient: sockaddr portability fixes
54117
54118	* lib-src/emacsclient.c (get_server_config, set_tcp_socket)
54119	(set_local_socket): Initialize any platform-specific extensions
54120	of struct to zero, just in case.
54121	(set_tcp_socket, set_local_socket): Don’t assume struct
54122	layout details that POSIX does not specify.
54123	Use union to sidestep some problems with strict aliasing.
54124	Remove unnecessary casts.
54125
541262018-11-22  Michael Albinus  <michael.albinus@gmx.de>
54127
54128	Some minor Tramp cleanups
54129
54130	* lisp/net/tramp-adb.el (tramp-adb-file-name-p):
54131	* lisp/net/tramp-ftp.el (tramp-ftp-file-name-p):
54132	* lisp/net/tramp-smb.el (tramp-smb-file-name-p): Make it more robust.
54133
54134	* lisp/net/tramp.el (tramp-handle-file-truename): Cache only the
54135	localname.
54136
541372018-11-21  Paul Eggert  <eggert@cs.ucla.edu>
54138
54139	emacsclient: getopt minor cleanup
54140
54141	* lib-src/emacsclient.c (shortopts): New constant.
54142	(decode_options): Use it.  Do not assume EOF == -1.
54143
541442018-11-21  Paul Eggert  <eggert@cs.ucla.edu>
54145
54146	emacsclient: omit EXTRA_SPACE guesswork
54147
54148	* lib-src/emacsclient.c: Include <intprops.h>.
54149	(EXTRA_SPACE): Remove; code no longer guesses this is enough.
54150	(open_config): New function.
54151	(get_server_config): Use it.
54152	(set_local_socket): Compute upper bound of buffer size
54153	instead of guessing via EXTRA_SPACE.
54154
541552018-11-21  Juri Linkov  <juri@linkov.net>
54156
54157	Add prefix arg to isearch-forward-symbol-at-point (bug#29321)
54158
54159	* lisp/isearch.el (isearch-forward-symbol-at-point): Add optional arg.
54160
541612018-11-21  Paul Eggert  <eggert@cs.ucla.edu>
54162
54163	emacsclient: take more care with int width
54164
54165	* lib-src/emacsclient.c: Include inttypes.h, stddef.h.
54166	(emacs_pid, main): Don’t assume pid fits in int.
54167	(fail): Don’t assume pointer difference fits in int.
54168	(set_local_socket): Don’t assume uid fits in long.
54169
541702018-11-21  Paul Eggert  <eggert@cs.ucla.edu>
54171
54172	emacsclient.c: use C99 to avoid {}
54173
54174	* lib-src/emacsclient.c (set_local_socket):
54175	Assume C99 decl-after-statement and reindent.
54176
541772018-11-21  Paul Eggert  <eggert@cs.ucla.edu>
54178
54179	emacsclient: improve use of locals
54180
54181	* lib-src/emacsclient.c (main):
54182	Use smaller scopes for some locals.
54183
541842018-11-21  Paul Eggert  <eggert@cs.ucla.edu>
54185
54186	emacsclient: fix unlikely crash with "&"
54187
54188	* lib-src/emacsclient.c (quote_argument):
54189	Mention *DATA in comment so it’s clear DATA must be non-null.
54190	(quote_argument, unquote_argument): Simplify.
54191	(unquote_argument): Don’t crash if the string ends in "&".
54192
541932018-11-21  Eric Abrahamsen  <eric@ericabrahamsen.net>
54194
54195	Fix "Allow use of Gnus search groups as notmuch path: search term"
54196
54197	* lisp/gnus/nnir.el (nnir-notmuch-filter-group-names-function):
54198	  Default to nil -- getting correct behavior requires user
54199	  intervention too often to have this enabled by default.
54200	* lisp/gnus/nnir.el (nnir-run-notmuch): If the user has turned this
54201	  on, then also hardcode `gnus-group-short-name' as a filter -- things
54202	  will never work without it. Also move leading space to before the
54203	  opening parenthesis.
54204	* doc/misc/gnus.texi: Document option.
54205
54206	(Bug#33122)
54207
542082018-11-21  Eric Abrahamsen  <eric@ericabrahamsen.net>
54209
54210	Check Gnus group names when reading from browse server
54211
54212	* lisp/gnus/gnus-srvr.el (gnus-browse-read-group): If the group in
54213	  question belongs to the native server, the name has to be shortened
54214	  before we check it with `gnus-get-info'. It might work otherwise
54215	  with nntp, but for backends like nnmaildir that have their own
54216	  accounting system, creating an ephemeral group won't work.
54217
542182018-11-21  Michael Albinus  <michael.albinus@gmx.de>
54219
54220	* doc/misc/tramp.texi: Fix last commit.
54221
542222018-11-21  Michael Albinus  <michael.albinus@gmx.de>
54223
54224	Let Tramp sudo sessions expire after a timeout
54225
54226	* doc/misc/tramp.texi (Inline methods) <sudo, doas>: Both methods expire
54227	the underlying session per default.
54228	(Predefined connection information): Explain "session-timeout".
54229
54230	* etc/NEWS: Mention Tramp session expiration.
54231
54232	* lisp/net/tramp-sh.el (tramp-methods) <sudo, doas>:
54233	Add `tramp-session-timeout'.
54234	(tramp-timeout-session): New defun.
54235	(tramp-maybe-open-connection): Handle session timeout.
54236
54237	* lisp/net/tramp.el (tramp-methods): Adapt docstring.
54238	(tramp-equal-remote): Extend.
54239
542402018-11-20  Juri Linkov  <juri@linkov.net>
54241
54242	Add prefix arg to isearch-repeat-forward/backward (bug#14563, bug#29321)
54243
54244	* lisp/isearch.el (isearch-repeat): Add optional arg COUNT.
54245	Add a while-loop that calls `isearch-search' COUNT times.
54246	(isearch-repeat-forward, isearch-repeat-backward):
54247	Add optional prefix ARG passed down to `isearch-repeat'.
54248	Handle reversed directions.
54249
542502018-11-20  Stefan Monnier  <monnier@iro.umontreal.ca>
54251
54252	calc.el, calc-(ext|poly), calccomp: Use lexical-binding
54253
54254	* lisp/calc/calc-ext.el: Use lexical-binding, silence warnings.
54255	(calc-init-extensions): Remove a few functions which can't be called
54256	directly since they depend on dynamically scoped vars.
54257	(calc-embedded-quiet): Declare.
54258	(math-defcache): Use 'declare'.
54259	(math-normalize-a): Remove declaration.
54260	(math-normalize-nonstandard): Receive 'a' as arg instead.
54261	(math-defintegral): Use 'declare'.
54262	(math-exp-pos, math-exp-old-pos, math-exp-keep-spaces, math-rb-h2)
54263	(math-read-big-baseline, math-read-big-h2, math-read-big-err-msg)
54264	(math-exp-token, math-expr-data, math-exp-str): Declare.
54265	(math-map-tree, math-read-expr): Avoid dynvars as formal arguments.
54266
54267	* lisp/calc/calc-poly.el: Use lexical-binding, silence warnings.
54268	Turn some comments into docstrings.
54269	(math-poly-div): Avoid dynvars as formal arguments.
54270	(math-poly-base-top-expr): Move declaration before first use.
54271	(calcFunc-factors, math-factor-expr, math-factor-expr-try)
54272	(calcFunc-factor): Avoid dynvars as formal arguments.
54273
54274	* lisp/calc/calc.el: Use lexical-binding, silence warnings.
54275	(math-normalize-a): Remove.
54276	(math-normalize): Use lexical var 'a' instead.
54277	(math-svo-c): Remove.
54278	(math-stack-value-offset): Pass 'c' explicitly as arg to
54279	math-stack-value-offset-fancy instead.
54280
54281	* lisp/calc/calccomp.el: Use lexical-binding, silence warnings.
54282	(math-svo-c): Remove.
54283	(math-stack-value-offset-fancy): Use new arg 'c' instead.
54284	(math-comp-to-string-flat): Avoid dynvars as formal arguments.
54285
542862018-11-20  Glenn Morris  <rgm@gnu.org>
54287
54288	Merge from origin/emacs-26
54289
54290	d667318 (origin/emacs-26) Fix two Edebug defcustoms (bug#33428)
54291
542922018-11-20  Glenn Morris  <rgm@gnu.org>
54293
54294	Merge from origin/emacs-26
54295
54296	070e82b ; * src/window.c (window_scroll): Improve commentary.
54297	60457d7 Improve documentation of the window tree
54298	ea1a014 Fix window scrolling on TTY frames when there's no mode line
54299	df7ed10 Fix decoding XML files encoded in ISO-8859
54300	7851ae8 (tag: emacs-26.1.90) ; ChangeLog.3 update
54301	1958808 * etc/AUTHORS: Update.
54302	7252507 Fix description of some window hooks
54303	88762b4 Run 'window--adjust-process-windows' when frame size changes ...
54304	d6542ea Avoid errors in zone.el when there's overlay at EOB
54305
543062018-11-20  Stefan Monnier  <monnier@iro.umontreal.ca>
54307
54308	* lisp/calc/calc-alg.el: Use lexical-binding and silence warnings
54309
54310	* lisp/calc/calc-alg.el: Use lexical-binding and silence warnings.
54311	(math-defsimplify): Let-bind 'expr' instead of math-simplify-expr.
54312	Adjust all users.
54313	(math-simplify-expr): Don't declare any more.
54314	(math--simplify-divide-expr): New dynbound var.
54315	(math-simplify-divide): Bind it when needed.
54316	(math-simplify-divisor): Use it instead of math-simplify-expr.
54317	(math-simplify-divisor): Only bind math-simplify-divisor-[nd]over
54318	around the calls to math-simplify-one-divisor.
54319	(math-expr-subst, math-is-polynomial): Don't use dynbound vars as
54320	formal arguments.
54321	(math-polynomial-base): Move binding of math-poly-base-pred.
54322	Don't bind math-poly-base-top-expr any more...
54323	* lisp/calc/calc-poly.el (math-total-polynomial-base): Bind it here instead!
54324
54325	* lisp/calc/calc-units.el: Use lexical-binding and silence warnings.
54326	Adjust to the new 'expr' name in math-defsimplify.
54327	(math-find-base-units, math-to-standard-units, math-convert-units):
54328	Don't use dynbound vars as formal arguments.
54329	(math-simplify-expr): Don't declare any more.
54330
543312018-11-20  Robert Pluim  <rpluim@gmail.com>
54332
54333	Remove space from end of coding cookie
54334
54335	* lisp/bookmark.el (bookmark-insert-file-format-version-stamp):
54336	Remove unnecessary space from end of coding cookie.
54337
543382018-11-19  Eli Zaretskii  <eliz@gnu.org>
54339
54340	Fix last change
54341
54342	* lib-src/emacsclient.c (start_daemon_and_retry_set_socket)
54343	[!WINDOWSNT]: Condition usage of socket_name on
54344	NO_SOCKETS_IN_FILE_SYSTEM being undefined.
54345
543462018-11-19  Eli Zaretskii  <eliz@gnu.org>
54347
54348	Avoid compiler warning in emacsclient.c
54349
54350	* lib-src/emacsclient.c (socket_name): Define only if
54351	NO_SOCKETS_IN_FILE_SYSTEM is not defined, to avoid a compiler
54352	warning.
54353
543542018-11-19  Paul Eggert  <eggert@cs.ucla.edu>
54355
54356	emacsclient.c: file name component fixes
54357
54358	* lib-src/emacsclient.c: Include <dosname.h>.
54359	(file_name_absolute_p): Remove, as a code duplicate.
54360	All uses replaced by IS_ABSOLUTE_FILE_NAME.
54361	(set_local_socket): Don’t treat \ as a file name separator
54362	on GNU and POSIX hosts.
54363
543642018-11-19  Paul Eggert  <eggert@cs.ucla.edu>
54365
54366	emacsclient.c: reindent to fit in 80
54367
54368	* lib-src/emacsclient.c: Reindent slightly.
54369
543702018-11-19  Paul Eggert  <eggert@cs.ucla.edu>
54371
54372	emacsclient.c: use C99 better
54373
54374	* lib-src/emacsclient.c (get_current_dir_name)
54375	(send_to_emacs, set_tcp_socket, set_local_socket, main):
54376	Take advantage of C99 stmt before decl.
54377
543782018-11-19  Paul Eggert  <eggert@cs.ucla.edu>
54379
54380	emacsclient.c: use STDOUT_FILENO
54381
54382	* lib-src/emacsclient.c (find_tty, handle_sigcont, main):
54383	Use STDOUT_FILENO instead of fileno (stdout) or magic 1.
54384
543852018-11-19  Paul Eggert  <eggert@cs.ucla.edu>
54386
54387	emacsclient.c: use bool for boolean
54388
54389	* lib-src/emacsclient.c (nowait, quiet, suppress_output, eval, tty)
54390	(decode_options, file_name_absolute_p, get_server_config)
54391	(strprefix, find_tty, set_socket, main):
54392	Use bool for boolean.
54393	(create_frame): New static var, replacing the old current_frame
54394	and with inverted sense, as this is clearer.
54395
543962018-11-19  Paul Eggert  <eggert@cs.ucla.edu>
54397
54398	emacsclient.c: make identifiers more local
54399
54400	* lib-src/emacsclient.c (progname, main_argc, main_argv):
54401	(nowait, quiet, suppress_output, eval, current_frame, display):
54402	(alt_display, parent_id, tty, alternate_editor, socket_name):
54403	(server_file, tramp_prefix, emacs_pid, frame_parameters):
54404	(longopts, xstrdup, send_bufffer, sblen, emacs_socket):
54405	Now static.
54406	(SEND_BUFFER_SIZE, send_buffer, sblen):
54407	Now local to send_to_emacs.
54408
544092018-11-19  Paul Eggert  <eggert@cs.ucla.edu>
54410
54411	emacsclient.c: clean up preprocessing directives
54412
54413	* lib-src/emacsclient.c [WINDOWSNT]: Omit duplicate stdlib.h include.
54414	Include min-max.h.
54415	(EXIT_SUCCESS, EXIT_FAILURE, min): Remove; no longer needed.
54416	(AUTH_KEY_LENGTH, SEND_BUFFER_SIZE): Now constants instead of macros.
54417
544182018-11-19  Ulrich Müller  <ulm@gentoo.org>
54419
54420	Update the calc units table
54421
54422	On 2018-11-16, the 26th meeting of the General Conference on Weights
54423	and Measures (CGPM) has redefined the International System of Units by
54424	adopting fixed values for the Planck constant, the elementary charge,
54425	the Boltzmann constant, and the Avogadro constant:
54426	https://www.bipm.org/utils/en/pdf/CGPM/Draft-Resolution-A-EN.pdf
54427	* lisp/calc/calc-units.el (math-standard-units): Update according
54428	to redefinition of the SI in 2018.
54429
544302018-11-19  Stefan Monnier  <monnier@iro.umontreal.ca>
54431
54432	* lisp/mouse.el (mouse-posn-property): Add comment
54433
544342018-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
54435
54436	Remove uses of obsolete 'CUA' symbol property
54437
54438	* lisp/emulation/cua-base.el (cua-scroll-up, cua-scroll-down):
54439	* lisp/progmodes/subword.el (subword-forward, subword-backward):
54440	* lisp/obsolete/crisp.el (crisp-home, crisp-end):
54441	Remove 'CUA' prop; not used any more.
54442
544432018-11-17  Juri Linkov  <juri@linkov.net>
54444
54445	* lisp/vc/diff-mode.el (diff-find-source-location): Use vc-working-revision
54446
54447	when diff shows changes in working revision.  (Bug#33319)
54448	(diff-goto-source): Rename variables to avoid ambiguity.
54449
544502018-11-17  Juri Linkov  <juri@linkov.net>
54451
54452	Don't exit Isearch while resizing windows with mouse (bug#32990)
54453
54454	* lisp/isearch.el (isearch-mouse-leave-buffer): New function.
54455	(isearch-mode): Use isearch-mouse-leave-buffer instead of
54456	isearch-done for mouse-leave-buffer-hook.
54457	(isearch-done): Remove isearch-mouse-leave-buffer from
54458	mouse-leave-buffer-hook.
54459	(enlarge-window-horizontally, shrink-window-horizontally)
54460	(shrink-window, mouse-drag-mode-line, mouse-drag-vertical-line):
54461	Put property isearch-scroll with t.
54462	(isearch-mode): Reset isearch-pre-scroll-point and
54463	isearch-pre-move-point to nil for the case when Isearch exits
54464	between isearch-pre-command-hook (that sets these values) and
54465	isearch-post-command-hook (that used to reset them).
54466
544672018-11-17  Stefan Monnier  <monnier@iro.umontreal.ca>
54468
54469	* src/cmds.c (Fself_insert_command): Get last-command-event via (new) arg.
54470
544712018-11-16  Glenn Morris  <rgm@gnu.org>
54472
54473	Merge from origin/emacs-26
54474
54475	936a8f3 (origin/emacs-26) Document Emacs 26 behavior of Dired's 'Z' o...
54476	99f99a1 ; Minor editing change in windows.texi
54477	13bb665 Fix a typo in the Emacs manual
54478
54479	# Conflicts:
54480	#	etc/NEWS
54481
544822018-11-16  Glenn Morris  <rgm@gnu.org>
54483
54484	Merge from origin/emacs-26
54485
54486	edcd6b7 Small documentation correction.
54487	168a8c2 * src/coding.c (Fcheck_coding_systems_region): Doc fix.  (Bug...
54488	3287a7c Fix Bug#33364
54489	acee0a8 ; Cosmetic changes in etc/NEWS
54490	a6ef167 * test/README: Explain $REMOTE_TEMPORARY_FILE_DIRECTORY.
54491
54492	# Conflicts:
54493	#	etc/NEWS
54494
544952018-11-16  Paul Eggert  <eggert@cs.ucla.edu>
54496
54497	Update from glibc and Gnulib
54498
54499	This incorporates:
54500	2018-11-15 mktime: DEBUG_MKTIME cleanup
54501	2018-11-15 mktime: fix non-EOVERFLOW errno handling
54502	2018-11-15 mktime: fix bug with Y2038 DST transition
54503	2018-11-15 mktime: make more room for overflow
54504	2018-11-15 mktime: simplify offset guess
54505	2018-11-15 mktime: new test for mktime failure
54506	2018-11-15 mktime: fix EOVERFLOW bug
54507	2018-11-13 longlong: fix comment typo
54508	* lib/gnulib.mk.in: Regenerate.
54509	* lib/mktime.c, m4/longlong.m4: Copy from Gnulib.
54510
545112018-11-16  Michael Albinus  <michael.albinus@gmx.de>
54512
54513	Mention ELPA packages which add new methods to Tramp
54514
54515	* doc/misc/tramp.texi (Customizing Methods): Mention ELPA packages
54516	which add new methods to Tramp.
54517
545182018-11-15  Juri Linkov  <juri@linkov.net>
54519
54520	* lisp/windmove.el: Directional window display (bug#32790)
54521
54522	* lisp/windmove.el (windmove-display-no-select): New defcustom.
54523	(windmove-display-in-direction, windmove-display-left)
54524	(windmove-display-up, windmove-display-right)
54525	(windmove-display-down, windmove-display-same-window)
54526	(windmove-display-default-keybindings): New functions.
54527
545282018-11-15  Juri Linkov  <juri@linkov.net>
54529
54530	* lisp/windmove.el: Support more prefix args (bug#32790)
54531
54532	* lisp/windmove.el (windmove-left, windmove-up, windmove-right)
54533	(windmove-down): Use prefix-numeric-value to support more prefix args
54534	like 'C-u' and 'M--'.  Doc fix.
54535
545362018-11-15  Michael Albinus  <michael.albinus@gmx.de>
54537
54538	Fix Bug#33394
54539
54540	* lisp/net/trampver.el (tramp-repository-branch)
54541	(tramp-repository-version): Handle out-of-tree builds.  (Bug#33394)
54542
545432018-11-14  Juri Linkov  <juri@linkov.net>
54544
54545	Isearch hit count.  (Bug#29321)
54546
54547	* lisp/isearch.el (isearch-lazy-count): New defcustom.
54548	(lazy-count): New defgroup.
54549	(lazy-count-prefix-format, lazy-count-suffix-format): New defcustom.
54550	(isearch-lazy-count-format): New function.
54551	(isearch-message-prefix, isearch-message-suffix): Use it.
54552	(isearch-lazy-highlight-window-start-changed)
54553	(isearch-lazy-highlight-window-end-changed)
54554	(isearch-lazy-count-current, isearch-lazy-count-total)
54555	(isearch-lazy-count-hash): New variables.
54556	(isearch-lazy-highlight-new-loop): Reset isearch-lazy-count-total
54557	and update isearch-lazy-count-current for isearch-message.
54558	(isearch-lazy-highlight-update): Run full-buffer loop for
54559	isearch-lazy-count.
54560	(isearch-lazy-highlight-buffer-update): Count isearch-lazy-count-total.
54561	Set isearch-lazy-count-current at the end.
54562
545632018-11-14  Eli Zaretskii  <eliz@gnu.org>
54564
54565	Minor copyedits in documentation of HOME handling
54566
54567	* etc/NEWS: Reword the recent entry regarding the change in
54568	how relative file names are interpreted in $HOME.
54569
54570	* doc/emacs/cmdargs.texi (General Variables): Advise against
54571	using relative directory names in $HOME.
54572
545732018-11-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
54574
54575	Fix probing for pre-1970 DST
54576
54577	* lisp/calendar/cal-dst.el (calendar-next-time-zone-transition):
54578	Fix recently-introduced rounding bug when probing for DST
54579	transitions before 1970 (Bug#33380).
54580
545812018-11-14  Paul Eggert  <eggert@cs.ucla.edu>
54582
54583	Document recent change to HOME handling
54584
54585	* doc/emacs/cmdargs.texi (General Variables):
54586	* doc/emacs/custom.texi (Find Init):
54587	* doc/lispref/files.texi (File Name Expansion):
54588	* etc/NEWS: Document behavior when HOME is a relative file name.
54589
545902018-11-14  Eli Zaretskii  <eliz@gnu.org>
54591
54592	Fix a thinko in fileio.c
54593
54594	* src/fileio.c (get_homedir): Fix last change.  Suggested by
54595	Paul Eggert <eggert@cs.ucla.edu>.
54596
545972018-11-13  Juri Linkov  <juri@linkov.net>
54598
54599	New option vc-find-revision-no-save to not write revision to file
54600
54601	* lisp/vc/vc.el (vc-find-revision-no-save): New defcustom (bug#33319).
54602	(vc-find-revision): Depending on vc-find-revision-no-save,
54603	call either vc-find-revision-no-save or vc-find-revision-save.
54604	(vc-find-revision-save): Rename from vc-find-revision.
54605	(vc-find-revision-no-save): New function.
54606
54607	* lisp/vc/diff-mode.el (diff-find-source-location):
54608	Let-bind vc-find-revision-no-save to t.
54609
546102018-11-13  Juri Linkov  <juri@linkov.net>
54611
54612	Support VC revisions in diff-goto-source (bug#33319)
54613
54614	* lisp/vc/diff-mode.el (diff-vc-revisions): New defvar.
54615	(diff-find-source-location): Call vc-find-revision for
54616	non-nil values of 'other', diff-vc-backend, diff-vc-revisions.
54617
54618	* lisp/vc/vc.el (vc-diff-internal): Set buffer-local
54619	diff-vc-revisions to the list of used revisions.
54620
54621	* doc/emacs/files.texi (Diff Mode): Update diff-goto-source
54622	for VC-related prefix argument.
54623
546242018-11-13  Eli Zaretskii  <eliz@gnu.org>
54625
54626	Fix recent change in fileio.c
54627
54628	* src/fileio.c (get_homedir) [WINDOWSNT]: Convert $HOME to UTF-8.
54629	(Fexpand_file_name): Don't convert it here.
54630
546312018-11-13  Glenn Morris  <rgm@gnu.org>
54632
54633	No need to pass absolute program name to call-process
54634
54635	* lisp/doc-view.el (doc-view-revert-buffer):
54636	* lisp/net/eudcb-mab.el (eudc-mab-query-internal):
54637	Remove superfluous executable-find.
54638
546392018-11-13  Paul Eggert  <eggert@cs.ucla.edu>
54640
54641	Update from Gnulib
54642
54643	This incorporates:
54644	2018-11-03 nstrftime: simplify test for mktime failure
54645	2018-11-02 gnulib-common.m4: port _Noreturn to C++
54646	2018-10-22 std-gnu11: Support Autoconf versions < 2.64
54647	2018-10-22 Assume Autoconf >= 2.63
54648	2018-10-16 Remove support for Ultrix
54649	2018-10-16 getloadavg: Remove support for ConvexOS
54650	2018-10-16 getloadavg: Remove support for Sony NEWS
54651	2018-10-16 Remove support for Dynix/ptx
54652	2018-10-16 fsusage: Remove support for AIX 3
54653	2018-10-16 fsusage, stat-size, getloadavg: Remove support for AIX PS/2
54654	2018-10-16 getloadavg: Remove support for HP-UX on m68k
54655	2018-10-16 fsusage, mountlist: Remove support for DolphinOS
54656	2018-10-16 getloadavg: Remove support for Alliant FX/2800
54657	2018-10-16 getloadavg: Remove support for tek4300
54658	2018-10-16 getloadavg: Remove support for Ardent
54659	* build-aux/config.guess, build-aux/config.sub, lib/_Noreturn.h:
54660	* lib/fsusage.c, lib/getgroups.c, lib/getloadavg.c:
54661	* lib/nstrftime.c, lib/time.in.h, m4/errno_h.m4:
54662	* m4/fsusage.m4, m4/getgroups.m4, m4/gnulib-common.m4, m4/longlong.m4:
54663	* m4/std-gnu11.m4, m4/stdint.m4:
54664	Copy from Gnulib.
54665	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate:
54666
546672018-11-13  Glenn Morris  <rgm@gnu.org>
54668
54669	Root emacsclient no longer connects to non-root sockets
54670
54671	* lib-src/emacsclient.c (set_local_socket): Don't ignore socket
54672	ownership when run by root.
54673	Ref: http://lists.gnu.org/r/emacs-devel/2018-11/msg00019.html
54674
546752018-11-13  Eli Zaretskii  <eliz@gnu.org>
54676
54677	Avoid byte-compilation warning in emacsbug.el
54678
54679	* lisp/mail/emacsbug.el (w32--os-description): Declare it, to
54680	avoid byte-compilation warning.  Reported by Live System User
54681	<nyc4bos@aol.com>.
54682
546832018-11-13  Paul Eggert  <eggert@cs.ucla.edu>
54684
54685	Act like POSIX sh if $HOME is relative
54686
54687	POSIX says sh ~/foo should act like $HOME/foo even if $HOME is
54688	relative, so be consistent with that (Bug#33255).
54689	* admin/merge-gnulib (GNULIB_MODULES): Add dosname.
54690	* src/buffer.c (init_buffer): Use emacs_wd to get
54691	initial working directory with slash appended if needed.
54692	(default-directory): Say it must be absolute.
54693	* src/emacs.c (emacs_wd): New global variable.
54694	(init_cmdargs): Dir arg is now char const *.
54695	(main): Set emacs_wd.
54696	* src/emacs.c (main) [NS_IMPL_COCOA]:
54697	* src/fileio.c (Fexpand_file_name):
54698	Use get_homedir instead of egetenv ("HOME").
54699	* src/fileio.c: Include dosname.h, for IS_ABSOLUTE_FILE_NAME.
54700	(splice_dir_file, get_homedir): New functions.
54701	* src/xrdb.c (gethomedir): Remove.  All callers changed
54702	to use get_homedir and splice_dir_file.
54703	* test/src/fileio-tests.el (fileio-tests--relative-HOME): New test.
54704
547052018-11-13  Stefan Monnier  <monnier@iro.umontreal.ca>
54706
54707	* lisp/files.el: Justify binding of read-circle with comments
54708
547092018-11-13  Noam Postavsky  <npostavs@gmail.com>
54710
54711	Fix build fail on files.el change (Bug#32352)
54712
54713	* lisp/files.el (dir-locals-read-from-dir): Reduce scope of
54714	`read-circle' let-binding to go around the `read' call only.
54715	Otherwise it can interfere with loading of files which use the
54716	circular read syntax (e.g., executing the setf expression in
54717	`dir-locals-set-class-variables' may require loading gv.elc).
54718
547192018-11-12  Glenn Morris  <rgm@gnu.org>
54720
54721	Merge from origin/emacs-26
54722
54723	189c49e * etc/AUTHORS: Update.
54724	9723c21 ; ChangeLog.3 update
54725
547262018-11-12  Glenn Morris  <rgm@gnu.org>
54727
54728	Merge from origin/emacs-26
54729
54730	913c001 * lisp/files.el (write-file): Clarify the doc string.  (Bug#3...
54731	d614b84 Fix typos in midnight.el
54732	8c2778a Improve documentation of 'move-file-to-trash'
54733	c7b8a51 ; * doc/lispref/functions.texi (Anonymous Functions): Fix typo.
54734	92296de * src/data.c (Ftype_of): xwidget objects are possible! (bug#3...
54735	a3242cc Improve documentation of Diff mode
54736	39e85a0 Note that lex bound lambda forms are not self-quoting (Bug#33...
54737	fa605f2 Rewrite buffer display related doc-strings and doc
54738	aa55659 Fix call to GlobalMemoryStatusEx in w32.c
54739
54740	# Conflicts:
54741	#	doc/emacs/files.texi
54742	#	src/data.c
54743
547442018-11-12  Sam Steingold  <sds@gnu.org>
54745
54746	maybe_disable_address_randomization always returns "int argc"
54747
54748	maybe_disable_address_randomization needs a consistent signature
54749	regardless of HAVE_PERSONALITY_ADDR_NO_RANDOMIZE.
54750
547512018-11-11  Paul Eggert  <eggert@cs.ucla.edu>
54752
54753	Fix dumping on GNU/Linux ppc64le
54754
54755	Problem reported by Thomas Fitzsimmons (Bug#33174).
54756	* src/emacs.c (main): Adjust to sysdep.c changes.
54757	* src/sysdep.c (exec_personality): New static var.
54758	(disable_address_randomization): Remove, replacing with ...
54759	(maybe_disable_address_randomization): ... this new function.
54760	Do not set or use an environment variable; use a command-line
54761	argument instead, and set the new static var.  Migrate the emacs.c
54762	personality-change code to here, where it belongs.
54763	(emacs_exec_file): Simplify by using new static var.
54764
547652018-11-11  Paul Eggert  <eggert@cs.ucla.edu>
54766
54767	Pacify gcc -Wmaybe-uninitialized without X11-XCB
54768
54769	I ran into this problem on Ubuntu 18.04.1 LTS.
54770	* src/xterm.c (get_current_wm_state) [!USE_XCB]:
54771	Mark reply_data as UNINIT here too.
54772
547732018-11-11  Paul Eggert  <eggert@cs.ucla.edu>
54774
54775	Pacify gcc -Wunused-macros in older GnuTLS
54776
54777	I ran into this problem on Ubuntu 18.04.1 LTS.
54778	* src/gnutls.c (HAVE_GNUTLS_CIPHER_GET_IV_SIZE)
54779	(HAVE_GNUTLS_CIPHER_GET_TAG_SIZE, HAVE_GNUTLS_DIGEST_LIST):
54780	New macros.  This uses the same style as the other
54781	macros that depend on GnuTLS version, as opposed to trying
54782	to do things a bit more cleverly.
54783	(gnutls_cipher_get_iv_size, gnutls_cipher_get_tag_size)
54784	(gnutls_digest_list, gnutls_digest_get_name):
54785	Define these macros only if they will be used.
54786
547872018-11-11  Simen Heggestøyl  <simenheg@gmail.com>
54788
54789	Add masking module to CSS property list
54790
54791	* lisp/textmodes/css-mode.el (css-property-alist)
54792	(css-value-class-alist): Add properties and value classes from CSS
54793	Masking Module.
54794
547952018-11-10  Glenn Morris  <rgm@gnu.org>
54796
54797	* test/src/editfns-tests.el (test-group-name): Improve test.
54798
54799	Make more portable and hopefully more robust using getent.  (Bug#33195)
54800
548012018-11-10  Eli Zaretskii  <eliz@gnu.org>
54802
54803	Make 'move-file-to-trash' behave according to the documentation
54804
54805	* lisp/files.el (move-file-to-trash): Behave like the doc
54806	string says: check whether 'system-move-file-to-trash' is
54807	defined before testing that 'trash-directory' is non-nil.
54808	(Bug#33335)
54809
548102018-11-10  Glenn Morris  <rgm@gnu.org>
54811
54812	* test/src/editfns-tests.el (test-group-name): Small fix.
54813
54814	Do not assume user 1000 has group name = user name.
54815
548162018-11-10  Paul Eggert  <eggert@cs.ucla.edu>
54817
54818	Dissociate controlling tty better on Darwin
54819
54820	* src/process.c (dissociate_controlling_tty): New function.
54821	(create_process): Use it to dissociate controlling tty if setsid
54822	fails, which happens on Darwin after a vfork (Bug#33154).
54823	Do this on all platforms, not just on Darwin, as a similar
54824	problem is plausible elsewhere.
54825	* src/callproc.c (call_process): Use the new function here, too,
54826	for consistency and to avoid duplicate code.
54827
548282018-11-10  Michael Albinus  <michael.albinus@gmx.de>
54829
54830	Provide branch information for both Emacs and Tramp (Bug#33328)
54831
54832	* doc/lispref/intro.texi (Version Info):
54833	Document `emacs-repository-version' and `emacs-repository-branch'.
54834
54835	* etc/NEWS: Mention `emacs-repository-branch'.
54836
54837	* lisp/loadup.el: Initialize `emacs-repository-branch'.
54838
54839	* lisp/version.el (emacs-repository-branch): New variable.
54840	(emacs-repository-branch-git, emacs-repository-get-branch):
54841	New defuns.
54842
54843	* lisp/mail/emacsbug.el (report-emacs-bug):
54844	Insert `emacs-repository-branch'.
54845
54846	* lisp/net/tramp.el (tramp-get-local-gid):
54847	Use `group-name' if available.
54848	(tramp-debug-message):
54849	* lisp/net/tramp-cmds.el (tramp-bug): Report also
54850	`tramp-repository-branch' and `tramp-repository-version'.
54851
54852	* lisp/net/trampver.el (tramp-repository-branch)
54853	(tramp-repository-version): New defconst.
54854	(tramp-repository-get-version): Remove.
54855
548562018-11-10  Michael Albinus  <michael.albinus@gmx.de>
54857
54858	* lisp/net/tramp.el (tramp-get-local-gid): Use `group-name' if available.
54859
548602018-11-10  Allen Li  <darkfeline@felesatra.moe>
54861
54862	Add setter for 'xref-marker-ring-length'
54863
54864	* lisp/progmodes/xref.el (xref-marker-ring-length): Add setter.
54865	* etc/NEWS: Document last change.  (Bug#32849)
54866
548672018-11-10  Allen Li  <darkfeline@felesatra.moe>
54868
54869	Add 'ring-resize' function
54870
54871	* lisp/emacs-lisp/ring.el (ring-resize): New function.  (Bug#32849)
54872	* doc/lispref/sequences.texi (Rings): Document new function 'ring-resize'.
54873	* etc/NEWS: Document new function 'ring-resize'.
54874	* test/lisp/emacs-lisp/ring-tests.el (ring-test-ring-resize): New tests.
54875
548762018-11-10  Eli Zaretskii  <eliz@gnu.org>
54877
54878	Fix last commit
54879
54880	* doc/lispref/os.texi (User Identification): Fix function name
54881	of 'group-name'.
54882
548832018-11-10  Eli Zaretskii  <eliz@gnu.org>
54884
54885	Fix last change
54886
54887	* src/editfns.c (Fgroup_name): Fix the doc string.  Move
54888	closer to the "group" functions.
54889	* src/w32.c (getgrgid): Return NULL if GID is not the group ID
54890	of the user of this Emacs session
54891
54892	* test/src/editfns-tests.el (test-group-name): Rename from
54893	'group-name'.  Add tests for non-Posix hosts.  Test error when
54894	the argument to group-name is invalid.
54895
54896	* etc/NEWS: Fix wording of last added entry.
54897
548982018-11-10  Jules Tamagnan  <jtamagnan@gmail.com>
54899
54900	src/editfns.c (group-name): New function.
54901
549022018-11-09  Eli Zaretskii  <eliz@gnu.org>
54903
54904	Improve doc strings generated by 'easy-mmode-define-navigation'
54905
54906	* lisp/emacs-lisp/easy-mmode.el
54907	(easy-mmode-define-navigation): Include the documentation of
54908	prefix argument in the generated doc string.
54909
549102018-11-08  Pierre-Yves Luyten  <py@luyten.fr>
54911
54912	Add functions to open a bookmark in another frame
54913
54914	* lisp/bookmark.el (bookmark-jump-other-frame): New function.
54915	Bind in bookmark-map.
54916	(bookmark-bmenu-other-frame): New function.
54917	Bind in bookmark-bmenu-mode-map.
54918
54919	Patch applied by Karl Fogel.
54920
549212018-11-08  Juri Linkov  <juri@linkov.net>
54922
54923	* lisp/windmove.el (windmove-create-window): New defcustom (bug#32790).
54924
54925	(windmove-do-window-select): Use it.
54926
549272018-11-08  Michael Albinus  <michael.albinus@gmx.de>
54928
54929	* doc/misc/tramp.texi (Password handling): Explain Ange FTP case.
54930
549312018-11-08  Michael Albinus  <michael.albinus@gmx.de>
54932
54933	Get rid of own netrc parsing implementation in Tramp
54934
54935	* lisp/net/tramp.el (tramp-parse-netrc): Reimplement, using
54936	`netrc-parse'.
54937	(tramp-parse-netrc-group): Remove.
54938
549392018-11-07  Juri Linkov  <juri@linkov.net>
54940
54941	Support VC single file operations from Dired (bug#32596).
54942
54943	* lisp/vc/vc.el (vc-ensure-vc-buffer): Use dired-get-filename for dired-mode.
54944	Move error-checking outside of the last branch of cond.
54945	(vc-dired-deduce-fileset): Remove unused error signaling.
54946
549472018-11-07  Juri Linkov  <juri@linkov.net>
54948
54949	* lisp/vc/log-view.el: Better error handling (bug#33295).
54950
54951	* lisp/vc/log-view.el (log-view-find-revision)
54952	(log-view-annotate-version): Add condition to signal an error
54953	when log-view-vc-fileset contains a directory.
54954	Use user-error instead of error.
54955
54956	* lisp/dired.el (dired-get-file-for-visit):
54957	* lisp/locate.el (locate-do-setup):
54958	Use user-error instead of error.
54959
549602018-11-07  Juri Linkov  <juri@linkov.net>
54961
54962	Advertise new hi-lock 'M-s h' key prefix in lisp/bindings.el
54963
54964	https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00104.html
54965
549662018-11-07  Juri Linkov  <juri@linkov.net>
54967
54968	* lisp/files-x.el (modify-dir-local-variable): Use assoc-delete-all
54969
54970	instead of assq-delete-all for cases when mode is a subdirectory name.
54971	(dir-locals-to-string): Call pp-to-string and string-trim-right
54972	on values.  (Bug#32817)
54973
549742018-11-07  Juri Linkov  <juri@linkov.net>
54975
54976	* lisp/window.el (window-state-put): Create a new window
54977
54978	to replace the existing one on the same frame in case
54979	when WINDOW is not live.  (Bug#32850)
54980
54981	* doc/lispref/windows.texi (Window Configurations):
54982	Describe changes related to WINDOW arg of window-state-put.
54983
549842018-11-07  Michael Albinus  <michael.albinus@gmx.de>
54985
54986	* lisp/net/tramp.el (tramp-get-debug-buffer): Fix error in setting local map.
54987
549882018-11-06  Michael Albinus  <michael.albinus@gmx.de>
54989
54990	Handle also port and domain in Tramp proxy definitions
54991
54992	* doc/misc/tramp.texi (Multi-hops): Exclude ports and domains from
54993	pattern expansion.
54994
54995	* lisp/net/tramp-cmds.el (tramp-cleanup-all-connections):
54996	Remove ad-hoc proxies.
54997
54998	* lisp/net/tramp-sh.el (tramp-compute-multi-hops): Handle also
54999	port and domain in the proxy.  Propertize ad-hoc proxies.
55000
55001	* lisp/net/tramp.el (tramp-default-proxies-alist): Adapt docstring.
55002
55003	* test/lisp/net/tramp-tests.el (tramp-test02-file-name-dissect)
55004	(tramp-test02-file-name-dissect-simplified)
55005	(tramp-test02-file-name-dissect-separate): Extend tests.
55006
550072018-11-05  Juri Linkov  <juri@linkov.net>
55008
55009	Support lazy-highlight-buffer in Info (bug#29321, bug#29360).
55010
55011	* lisp/isearch.el (isearch-lazy-highlight-point-min)
55012	(isearch-lazy-highlight-point-max): New variables.
55013	(isearch-lazy-highlight-new-loop): When lazy-highlight-buffer is
55014	non-nil, compare (point-min) with isearch-lazy-highlight-point-min,
55015	and (point-max) with isearch-lazy-highlight-point-max, for buffers
55016	like Info where narrowing changes the values point-min and point-max.
55017
550182018-11-05  Juri Linkov  <juri@linkov.net>
55019
55020	* lisp/image-mode.el (image--imagemagick-wanted-p): Check for nil filename.
55021
55022	(Bug#33241)
55023
550242018-11-04  Glenn Morris  <rgm@gnu.org>
55025
55026	* src/xfaces.c (face_at_buffer_position): Adapt lookup_basic_face call.
55027
550282018-11-04  Glenn Morris  <rgm@gnu.org>
55029
55030	Merge from origin/emacs-26
55031
55032	6937c35 (origin/emacs-26) Improve recent changes in documentation of ...
55033	c04b48c Rewrite documentation of buffer display
55034	7cadb32 ; * doc/lispref/control.texi (pcase Macro): Fix another typo.
55035	963f1d9 ; * doc/lispref/control.texi (pcase Macro): Fix a typo.
55036	e824c91 Improve documentation of destructuring-binding macros
55037
550382018-11-04  Glenn Morris  <rgm@gnu.org>
55039
55040	Merge from origin/emacs-26
55041
55042	bd1d617 Avoid race in rcirc process filter (bug#33145)
55043	88ef31a Avoid file-name errors when viewing PDF from Gnus
55044	c939042 Avoid crashes with remapped default face in Org mode
55045	97660fa Doc fix for checkdoc-continue
55046	96f055b Fix a typo in autoload.el
55047
550482018-11-04  Glenn Morris  <rgm@gnu.org>
55049
55050	Merge from origin/emacs-26
55051
55052	9962cf9 * doc/lispref/control.texi (Destructuring patterns): New subs...
55053
550542018-11-04  Eli Zaretskii  <eliz@gnu.org>
55055
55056	A further fix for locally remapped fringe face
55057
55058	* src/xdisp.c (expose_window): Temporarily switch to the
55059	window's buffer, in case the fringe face was remapped locally
55060	in that buffer.  (Bug#33244)
55061
550622018-11-04  Michael Albinus  <michael.albinus@gmx.de>
55063
55064	Fix Bug#33194
55065
55066	* lisp/autorevert.el (auto-revert-notify-add-watch):
55067	Handle buffers with same descriptor properly.
55068	(auto-revert-notify-handler): Handle all buffers with same
55069	descriptor.  (Bug#33194)
55070
55071	* lisp/filenotify.el (file-notify-callback): Simplify.
55072
550732018-11-03  Paul Eggert  <eggert@cs.ucla.edu>
55074
55075	Improve time error reporting
55076
55077	* src/timefns.c (emacs_mktime_z): Remove; no longer needed.
55078	(time_error): New function, replacing invalid_time.
55079	All callers changed.
55080	(decode_float_time, decode_ticks_hz, decode_time_components):
55081	Return an error number instead of merely a boolean.
55082	All callers changed.
55083	(decode_lisp_time): Signal an error based on the error number,
55084	instead of merely returning a boolean to the caller.
55085	All callers changed.
55086	(format_time_string, Fdecode_time, Fencode_time)
55087	(Fcurrent_time_string):
55088	Do not assume that a failure of a system time function
55089	must be due to time overflow.
55090	(Fencode_time): Don't report an error merely because mktime
55091	returned ((time_t) -1), as that may be a valid time_t value.
55092	Use a simpler error check.  See:
55093	https://www.sourceware.org/ml/libc-alpha/2018-11/msg00062.html
55094
550952018-11-03  Eli Zaretskii  <eliz@gnu.org>
55096
55097	Allow the fringe face to be remapped locally in a buffer
55098
55099	* src/fringe.c (draw_window_fringes): Switch to window's
55100	buffer to get the local value of face-remapping-alist, if
55101	necessary.  (Bug#33244)
55102	* src/xfaces.c (syms_of_xfaces) <Qface_remapping_alist>: New
55103	DEFSYM.
55104
551052018-11-03  David Edmondson  <dme@dme.org>
55106
55107	Add URL truncation support to rcirc (bug#33043)
55108
55109	Suggested by David Edmondson <dme@dme.org>.
55110	* lisp/net/rcirc.el (rcirc-url-max-length): New user option
55111	controlling extent of URL truncation, defaulting to none.
55112	(rcirc-markup-urls): Use it.
55113	* etc/NEWS: Announce it.
55114
551152018-11-03  Pierre Téchoueyres  <pierre.techoueyres@free.fr>
55116
55117	'minor-mode-menu-from-indicator' now display full minor mode.
55118
55119	When there is no menu for a mode, display the mode name after the
55120	indicator instead of just the indicator (which is sometime cryptic).
55121	Ex:
55122	before : SP
55123	now    : SP - Smartparens Mode
55124
55125	* etc/NEWS: Add en entry for this new feature.
55126	* lisp/mouse.el (minor-mode-menu-from-indicator): Append the mode name
55127	  after the indicator when there is no menu defined by the mode.
55128
551292018-11-03  Eric Abrahamsen  <eric@ericabrahamsen.net>
55130
55131	Allow use of Gnus search groups as notmuch path: search term
55132
55133	* lisp/gnus/nnir.el (nnir-notmuch-filter-group-names-function): New
55134	option governing whether and how to use Gnus' search groups as path:
55135	search terms to notmuch.
55136	(nnir-run-notmuch): Check and possibly use above variable.
55137	(Bug#33122)
55138
551392018-11-03  Daniel Pittman  <slippycheeze@google.com>
55140
55141	Fix interaction between vc-hg find-file-hook and vc state caching
55142
55143	Bad assumptions in the `vc-hg-find-file-hook' prevented it from
55144	working. This correctly them.  (Bug#33129).
55145
55146	2018-10-23  Daniel Pittman  <slippycheeze@google.com>
55147
55148		* lisp/vc/vc-hg.el (vc-hg-find-file-hook): This function made two
55149		assumptions about conflicted files that were not accurate,
55150		preventing conflicts in files ever being detected.
55151
55152		The first was that the `vc-state' was cache by the time this was
55153		invoked, which it is not - at least when visiting the file, or
55154		using `vc-refresh-state'.
55155
55156		The second was that a file with the ".orig" extension would be
55157		present, next to the file being visited.  This is the default
55158		behavior of Mercurial, but can be overridden by the user.
55159
55160		Since the VC mode-line code will shortly calculate the state for
55161		display, the optimization of testing for the ".orig" file only
55162		delayed this work by a few moments.
55163
551642018-11-02  Stefan Monnier  <monnier@iro.umontreal.ca>
55165
55166	* lisp/emacs-lisp/syntax.el (syntax-propertize-rules): Allow empty rules
55167
55168	* lisp/help-fns.el (describe-symbol): Use help--symbol-completion-table
55169
55170	* src/data.c (Ffset): Don't signal gratuitous errors
55171
551722018-11-02  Eric Abrahamsen  <eric@ericabrahamsen.net>
55173
55174	Obsolete gnus-correct-length in favor of string-width
55175
55176	* lisp/gnus/gnus-spec.el: Define an obsolete alias.
55177
551782018-11-02  Stefan Monnier  <monnier@iro.umontreal.ca>
55179
55180	* lisp/progmodes/ruby-mode.el: Cosmetic changes
55181
55182	Remove redundant :groups.
55183	(ruby-font-lock-syntax-table): Delete var.
55184	(ruby-mode): Use font-lock-default's syntax-alist instead.
55185
551862018-11-01  Stefan Monnier  <monnier@iro.umontreal.ca>
55187
55188	* lisp/progmodes/cc-mode.el: Silence compiler warnings
55189
55190	(c-parse-quotes-before-change, c-parse-quotes-after-change):
55191	Flag unused args according to convention.
55192
551932018-10-31  Michael Albinus  <michael.albinus@gmx.de>
55194
55195	Remote file name completion is also performed by auth-sources search
55196
55197	* doc/misc/tramp.texi (File name completion): User and host name
55198	completion is also performed by auth-sources search.
55199
55200	* etc/NEWS: Document remote file name completion using auth-sources.
55201
55202	* lisp/net/tramp.el (tramp-completion-use-auth-sources):
55203	New user option.
55204	(tramp-parse-auth-sources): New defun.
55205	(tramp-get-completion-function): Call it.
55206
552072018-10-31  Glenn Morris  <rgm@gnu.org>
55208
55209	Merge from origin/emacs-26
55210
55211	eb903d8 * lisp/emacs-lisp/pcase.el: Improve docstrings.
55212	86abbb3 * lisp/emacs-lisp/rx.el (rx): Fix typo in doc string.  (Bug#3...
55213	ced58d3 Improve doc string of 'call-process'
55214	38f88a7 Document that generic functions cannot be commands
55215	5aeddfa * lisp/mail/rmailsum.el (rmail-summary-output): Add lost word...
55216	10e0fd8 Add index entries for more isearch commands/bindings (Bug#32990)
55217	de28184 * lisp/simple.el (filter-buffer-substring): Clarify doc (Bug#...
55218	d192c16 Fix recent change in lispref/processes.texi.
55219
552202018-10-31  Stefan Monnier  <monnier@iro.umontreal.ca>
55221
55222	* lisp/emacs-lisp/cl-generic.el: Clarify we can't define commands
55223
55224	(cl--generic-lambda): Warn about the presence of interactive specs.
55225
552262018-10-30  Paul Eggert  <eggert@cs.ucla.edu>
55227
55228	Improve fix for Bug#33014
55229
55230	Although the previously-applied fix worked for its platform,
55231	it doesn’t suffice in general.
55232	* src/bytecode.c (exec_byte_code): Save VECTOR into stack slot
55233	so that it survives GC.  The stack slot was otherwise unused,
55234	so this doesn’t cost us memory, only a store insn.
55235	* src/eval.c (Ffuncall): Do not make FUN volatile, reverting
55236	2018-10-14T19:12:04Z!gazally@runbox.com.  Adding ‘volatile’
55237	does not suffice, since storage for a volatile local can be
55238	reclaimed after its last access (e.g., by tail recursion
55239	elimination), which would make VECTOR invisible to GC.
55240
552412018-10-30  Glenn Morris  <rgm@gnu.org>
55242
55243	* admin/bzrmerge.el: Remove file, long since replaced by gitmerge.el.
55244
552452018-10-30  Michael Heerdegen  <michael_heerdegen@web.de>
55246
55247	Don't quote self-quoting pcase patterns
55248
55249	* admin/bzrmerge.el:
55250	* lisp/char-fold.el:
55251	* lisp/dired.el:
55252	* lisp/emacs-lisp/derived.el:
55253	* lisp/emacs-lisp/easy-mmode.el:
55254	* lisp/emacs-lisp/easymenu.el:
55255	* lisp/emacs-lisp/eieio-core.el:
55256	* lisp/emacs-lisp/package.el:
55257	* lisp/emacs-lisp/smie.el:
55258	* lisp/faces.el:
55259	* lisp/filesets.el:
55260	* lisp/progmodes/modula2.el:
55261	* lisp/progmodes/octave.el:
55262	* lisp/progmodes/opascal.el:
55263	* lisp/progmodes/perl-mode.el:
55264	* lisp/progmodes/prolog.el:
55265	* lisp/progmodes/ruby-mode.el:
55266	* lisp/progmodes/sh-script.el:
55267	* lisp/server.el:
55268	* lisp/subr.el:
55269	* lisp/textmodes/css-mode.el:
55270	* test/lisp/emacs-lisp/pcase-tests.el: Don't quote self-quoting
55271	'pcase' patterns.
55272
552732018-10-30  Alan Mackenzie  <acm@muc.de>
55274
55275	Fix C++ Mode dynamic error with string delimiters.
55276
55277	Fixes bug #33163
55278
55279	* lisp/progmodes/cc-mode.el (c-before-change-check-unbalanced-strings):
55280	Use the correct variable `end' in place of the wrong `c-new-END'.
55281	(c-after-change-re-mark-unbalanced-strings): Correct a logic error whilst
55282	skipping over comments.
55283
552842018-10-29  Glenn Morris  <rgm@gnu.org>
55285
55286	* configure.ac (emacs_config_features): Add notify backends.
55287
552882018-10-29  Juri Linkov  <juri@linkov.net>
55289
55290	* lisp/window.el (window--state-get-1): Check buffer-live-p in next-buffers
55291
55292	and prev-buffers.  (Bug#32850)
55293
552942018-10-29  Gemini Lasswell  <gazally@runbox.com>
55295
55296	Keep a stack reference to bytecode objects being executed (Bug#33014)
55297
55298	* src/eval.c (Ffuncall): Make local variable 'fun' volatile.
55299	* test/src/eval-tests.el
55300	(eval-tests-byte-code-being-evaluated-is-protected-from-gc):
55301	Add regression test for Bug#33014.
55302	(eval-tests-33014-var): New variable.
55303	(eval-tests-33014-func, eval-tests-33014-redefine): New functions.
55304
553052018-10-29  Michael Albinus  <michael.albinus@gmx.de>
55306
55307	Fix Bug#33006
55308
55309	* lisp/cedet/semantic/symref/grep.el (semantic-symref-perform-search):
55310	* lisp/progmodes/xref.el (xref-collect-matches)
55311	(xref--collect-matches): Handle remote files.  (Bug#33006)
55312
553132018-10-29  João Távora  <joaotavora@gmail.com>
55314
55315	Fix Flymake's diagnostic count with custom error types
55316
55317	(Bug#33187)
55318
55319	* lisp/progmodes/flymake.el (flymake--mode-line-format): Replace
55320	cl-union with iterative cl-pushnew.
55321
553222018-10-27  Juri Linkov  <juri@linkov.net>
55323
55324	* lisp/isearch.el (lazy-highlight-buffer): New defcustom.  (Bug#29360)
55325
55326	(lazy-highlight-buffer-max-at-a-time): New defcustom.
55327	(isearch-lazy-highlight-buffer): New defvar.
55328	(isearch-lazy-highlight-new-loop): Don't check changes in window
55329	boundaries when lazy-highlight-buffer is non-nil.
55330	Move code that extends start/end to match whole string at point
55331	here from isearch-lazy-highlight-search.
55332	(isearch-lazy-highlight-search): Add args string and bound
55333	like in other search functions.  Move calculation of bound
55334	to isearch-lazy-highlight-update.
55335	(isearch-lazy-highlight-match): New function with code extracted from
55336	isearch-lazy-highlight-update to be called also from
55337	isearch-lazy-highlight-buffer-update.
55338	(isearch-lazy-highlight-update): Reuse the values returned from
55339	window-group-start and window-group-end.  At the end schedule the
55340	timer to call isearch-lazy-highlight-buffer-update when
55341	isearch-lazy-highlight-buffer is non-nil.
55342	(isearch-lazy-highlight-buffer-update): New function.
55343
553442018-10-27  Glenn Morris  <rgm@gnu.org>
55345
55346	Merge from origin/emacs-26
55347
55348	df64da8 (origin/emacs-26) * lisp/simple.el (region-extract-function):...
55349	520c486 * lisp/simple.el (region-bounds): Doc fix.  (Bug#33168)
55350	9193db0 Improve documentation of 'process-connection-type'
55351	106b9e1 Unify prompt for gnupg passphrase between GNU/Linux and MS-Wi...
55352	2a41616 Doc fix of 'gnus-fetch-old-headers'
55353	29a7644 Deactivate incorrect hyperlinking in gnus-build-sparse-thread...
55354	53ae90f Minor copyedits in cmdargs.texi
55355	fc2e65a Improve documentation of X resource loading
55356	13132b3 * lisp/net/tramp-sh.el (tramp-inline-compress-commands):
55357	8361292 ; Fix sorting in admin/MAINTAINERS
55358	92de44f Don't error when indenting malformed Lisp (Bug#30891)
55359	c3adbc8 Improve 'isearch-delete-char' documentation (Bug#32990)
55360	6ca71ce ; * lisp/help.el (with-help-window): Remove extra space in doc.
55361	f5f9583 Improve XPM load failure message (bug#33126)
55362	f3d01d4 Avoid infloop in CPerl mode fontification
55363	71a2d50 Fix minibuffer-help-form for lexical binding
55364	7e8eee6 Fix some NS drawing issues (bug#32932)
55365	d72975a * lisp/gnus/mm-util.el (mm-decompress-buffer): Fix split-stri...
55366	c97a5f1 * doc/misc/calc.texi (Summary): The +/- key is 'p', not 'P'.
55367
55368	# Conflicts:
55369	#	lisp/gnus/mm-util.el
55370
553712018-10-27  Daniel Pittman  <slippycheeze@google.com>  (tiny change)
55372
55373	Add support in emacsclient for EMACS_SOCKET_NAME
55374
55375	If the '--socket-name' argument is unspecified, the environment
55376	variable 'EMACS_SOCKET_NAME' is now consulted with the same
55377	semantics.  This mirrors the behavior of the '--server-file' argument,
55378	and allows for easier configuration of emacsclient when the socket is
55379	in a location other than 'TMPDIR' or '/tmp'.
55380
55381	* emacsclient.c (set_socket): Add support for the
55382	EMACS_SOCKET_NAME environment variable.  (Bug#33095)
55383
55384	* doc/emacs/misc.texi (emacsclient Options):
55385	* emacsclient.1: Document the EMACS_SOCKET_NAME environment
55386	variable.
55387
55388	* etc/NEWS: Announce the new feature.
55389
553902018-10-26  Federico Tedin  <federicotedin@gmail.com>
55391
55392	Subject: (mouse-drag-and-drop-region): Simplify and remove assumptions
55393
55394	* lisp/mouse.el (mouse-drag-and-drop-region): Use insert-for-yank for
55395	insertion, remove rectangular-region-specific variables.
55396	Use text-property-not-all.
55397	* lisp/rect.el (rectangle-dimensions): New function.
55398	(rectangle-position-as-coordinates): Use the usual 1-origin for lines.
55399
554002018-10-26  Stefan Monnier  <monnier@iro.umontreal.ca>
55401
55402	* lisp/files.el (abbreviate-file-name): Avoid save-match-data
55403
55404	Also, don't assume homedir doesn't contain special regexp chars.
55405	And prefer \` ... \' over ^ ... $.
55406	(recover-file): Use user-error.
55407
554082018-10-25  Glenn Morris  <rgm@gnu.org>
55409
55410	* admin/automerge: Abort if NEWS gets modified.
55411
554122018-10-25  Stefan Monnier  <monnier@iro.umontreal.ca>
55413
55414	* lisp/emacs-lisp/pcase.el (pcase--u1): Fix bignums
55415
55416	Use 'eql' to compare integers
55417
554182018-10-24  Michael Albinus  <michael.albinus@gmx.de>
55419
55420	Fix Bug#33141
55421
55422	* lisp/net/tramp.el (tramp-make-tramp-file-name): Avoid check for
55423	empty method with simplified `tramp-syntax'.  (Bug#33141)
55424
554252018-10-24  Glenn Morris  <rgm@gnu.org>
55426
55427	* admin/gitmerge.el (gitmerge-resolve): Check NEWS patch exit status.
55428
554292018-10-23  Glenn Morris  <rgm@gnu.org>
55430
55431	Merge from origin/emacs-26
55432
55433	2efd400 (origin/emacs-26) Correct typo in GNU ELPA url
55434	6239016 * doc/misc/dired-x.texi (Omitting Variables): Fix wording. (B...
55435	1531bca Fix help-form binding in dired-create-files
55436	cf79327 Fix a pasto in a Gnus doc string
55437	a4e40f6 ; * doc/emacs/files.texi (Reverting): Improve wording in last...
55438	f632ecb Update revert-buffer documentation
55439	eb67689 * lisp/mail/smtpmail.el (smtpmail-send-queued-mail): Load fil...
55440	433e364 ; * etc/NEWS: Announce that emacs-module.h is now installed.
55441
55442	# Conflicts:
55443	#	lisp/mail/smtpmail.el
55444
554452018-10-23  Alan Mackenzie  <acm@muc.de>
55446
55447	edebug.el: Move window focus switch into edebug-pop-to-buffer
55448
55449	* lisp/follow.el (edebug-focus-frame): Remove.
55450	(edebug-pop-to-buffer): Call x-focus-frame for GUI frames.
55451	(edebug-default-enter, edebug--display-1): Replace call to
55452	edebug-focus-frame with x-focus-frame.
55453	(edebug-where, edebug-bounce-point, edebug-visit-eval-list): Remove no longer
55454	needed calls to edebug-focus-frame.
55455
554562018-10-22  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
55457
55458	Improve rounding in recent timer fix
55459
55460	* lisp/emacs-lisp/timer.el (timer-next-integral-multiple-of-time):
55461	Use more-precise arithmetic to handle some boundary cases better
55462	when rounding errors occur (Bug#33071).
55463	* test/lisp/emacs-lisp/timer-tests.el:
55464	(timer-next-integral-multiple-of-time-3):
55465	New test, to test one of the boundary cases.
55466	(timer-next-integral-multiple-of-time-2):
55467	Redo so as to not assume a particular way of rounding 0.01.
55468
554692018-10-22  Paul Eggert  <eggert@cs.ucla.edu>
55470
55471	Fix epg bug with (TICKS . HZ) timestamp
55472
55473	Problem reported by Joseph Mingrone in:
55474	https://lists.gnu.org/r/emacs-devel/2018-10/msg00380.html
55475	* lisp/epg.el (epg--time-from-seconds): Just use a seconds count;
55476	don’t generate an obsolete-format timestamp.
55477
554782018-10-22  Stefan Monnier  <monnier@iro.umontreal.ca>
55479
55480	* src/minibuf.c (read_minibuf_noninteractive): Remove unused args.
55481
554822018-10-22  Michael Albinus  <michael.albinus@gmx.de>
55483
55484	Improve Tramp backward compatibility
55485
55486	* lisp/net/tramp-compat.el: (tramp-unload-file-name-handlers):
55487	Declare it, for backward compatibility.
55488
554892018-10-21  Stefan Monnier  <monnier@iro.umontreal.ca>
55490
55491	Always define 'define-fringe-bitmap'
55492
55493	* lisp/cus-start.el: Test 'fringe-bitmaps' to see if fringe.c was compiled.
55494
55495	* lisp/fringe.el: Use lexical-binding.
55496	(define-fringe-bitmap): Provide a fallback implementation.
55497
55498	* lisp/progmodes/flymake.el (flymake-double-exclamation-mark):
55499	Define unconditionally.
55500
55501	* lisp/progmodes/gdb-mi.el (define-fringe-bitmap): Don't declare any more.
55502	(breakpoint, hollow-right-triangle): Define unconditionally.
55503
555042018-10-21  Stefan Monnier  <monnier@iro.umontreal.ca>
55505
55506	* lisp/vc/diff-mode.el: Improve diff-font-lock-prettify
55507
55508	A few tweaks to the previous code for corner case problems, and a new
55509	feature, which is to move the +/- signs to the left fringe.
55510
55511	(diff--font-lock-cleanup, diff--filter-substring): New functions.
55512	(diff-mode): Use them.
55513	(diff--font-lock-refined): Mark the overall overlays as `diff-mode
55514	fine` as well, so they get properly cleaned up when changing mode.
55515	(diff-fringe-add, diff-fringe-del, diff-fringe-rep, diff-fringe-nul):
55516	New bitmaps.
55517	(diff--font-lock-prettify): Move the +/- signs to the fringe.
55518	(diff-wiggle): Use 'user-error'.
55519
555202018-10-20  Michael Albinus  <michael.albinus@gmx.de>
55521
55522	Expand host names in Tramp's ad-hoc multi-hop file names
55523
55524	* doc/misc/tramp.texi (Quick Start Guide): Improve wording.
55525	(Change file name syntax): Say, that `tramp-file-name-regexp' is
55526	not constant.
55527	(Ad-hoc multi-hops): Explain host name expansion.
55528
55529	* etc/NEWS: Mention that host names in Tramp ad-hoc multi-hop file
55530	names must match the previous hop for methods like "su" or "sudo".
55531	Fix typos.
55532
55533	* lisp/net/tramp.el (tramp-find-method, tramp-find-user):
55534	Adapt docstring.
55535	(tramp-find-host): Mark default value.
55536	(tramp-dissect-file-name): Expand host name for hops.
55537	(tramp-dissect-hop-name, tramp-make-tramp-hop-name): New defuns.
55538	(tramp-clear-passwd): Simplify.
55539
55540	* test/lisp/net/tramp-tests.el (tramp-test02-file-name-dissect)
55541	(tramp-test02-file-name-dissect-simplified)
55542	(tramp-test02-file-name-dissect-separate)
55543	(tramp-test26-file-name-completion): Extend tests.
55544
555452018-10-20  Eli Zaretskii  <eliz@gnu.org>
55546
55547	Fix 'timer-next-integral-multiple-of-time'
55548
55549	* lisp/emacs-lisp/timer.el
55550	(timer-next-integral-multiple-of-time): Fix recent change for
55551	fractional values of SECS.  (Bug#33071)
55552	* test/lisp/emacs-lisp/timer-tests.el
55553	(timer-next-integral-multiple-of-time-2): New test.
55554
555552018-10-19  Stefan Monnier  <monnier@iro.umontreal.ca>
55556
55557	* lisp/mail/smtpmail.el: (smtpmail-send-queued-mail): Avoid 'load'
55558
55559	(smtpmail-send-it): Send metadata directly to the
55560	files without bothering to write it into a temp buffer.
55561
555622018-10-19  Stefan Monnier  <monnier@iro.umontreal.ca>
55563
55564	* lisp/emacs-lisp/package.el (package-get-version): Change into a function
55565
55566	(package-quickstart-refresh): Mangle string so it doesn't turn into
55567	a false positive for "no-byte-compile: t".
55568
555692018-10-19  Alan Mackenzie  <acm@muc.de>
55570
55571	In edebug in GUIs, move focus to the selected frame.
55572
55573	Thus when entering edebug, the focus will be moved to the frame with the
55574	source being debugged, and when its finished, the focus will move back.
55575	Commands edebug-visit-eval-list (`E') and edebug-bounce-point (`p') have been
55576	likewise amended.
55577
55578	* src/keyboard.c (readable_events): Handle FOCUS_OUT_EVENT as an invisible
55579	event.  This prevents input-pending-p returning t when one of these events
55580	arrives, and thus obviates an instant termination of sit-for when there's no
55581	"real" event waiting.
55582
55583	* lisp/emacs-lisp/edebug.el (edebug-focus-frame): New function.
55584	(edebug-default-enter, edebug--display-1, edbug-where, edebug-bounce-point)
55585	(edebug-visit-eval-list): Call edebug-focus-frame to move focus into the
55586	window newly selected by edebug-pop-to-buffer.
55587
555882018-10-19  Paul Eggert  <eggert@cs.ucla.edu>
55589
55590	Fix struct thread alignment on FreeBSD x86
55591
55592	Problem reported by Joseph Mingrone in:
55593	https://lists.gnu.org/r/emacs-devel/2018-10/msg00238.html
55594	While we’re at it, apply a similar fix to struct Lisp_Subr; this
55595	removes the need for GCALIGNED_STRUCT_MEMBER and thus can shrink
55596	struct Lisp_Subr a bit.
55597	* configure.ac (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Bring back this macro.
55598	Although used only for performance (not to actually align
55599	structures), we might as well take advantage of it.
55600	* src/lisp.h (GCALIGNED_STRUCT_MEMBER): Remove; all uses removed.
55601	(union Aligned_Lisp_Subr): New type, like struct Lisp_Subr but aligned.
55602	* src/lisp.h (XSUBR, DEFUN):
55603	* src/lread.c (defsubr): Use it.  All callers changed.
55604	* src/thread.c (union aligned_thread_state): New type.
55605	(main_thread): Now of this type, so it’s aligned.
55606	All uses changed.
55607	* src/xmenu.c (syms_of_xmenu) [USE_GTK || USE_X_TOOLKIT]:
55608	Adjust to union Aligned_Lisp_Subr change.
55609
556102018-10-19  Alan Mackenzie  <acm@muc.de>
55611
55612	In follow mode windows in a GUI, don't display inactive cursors
55613
55614	This is done by setting cursor-in-non-selected-windows buffer locally.
55615
55616	* lisp/follow.el (follow-hide-ghost-cursors): New customizable option.
55617	(follow-mode): Create and set, or kill buffer-local copy of
55618	cursor-in-non-selected-windows when the mode gets enabled or disabled.
55619	(follow-prev-buffer): New variable.
55620	(follow-adjust-window): Manipulate cursor-in-non-selected-windows when the
55621	current buffer changes, to ensure that cursors stay visible in non-selected
55622	follow window groups.
55623
55624	* etc/NEWS: Add an entry for this change.
55625
556262018-10-18  Martin Rudalics  <rudalics@gmx.at>
55627
55628	Have 'split-window' handle 'up' and 'down' values (Bug#32790)
55629
55630	* lisp/window.el (split-window): Handle values of 'up' and 'down'
55631	for SIDE argument (Bug#32790).
55632	(window-in-direction): Amend doc-string as of yesterday's change.
55633
556342018-10-18  Juri Linkov  <juri@linkov.net>
55635
55636	* lisp/emacs-lisp/lisp.el (delete-pair): Add optional prefix arg.
55637
55638	(Bug#32896)
55639
556402018-10-18  Juri Linkov  <juri@linkov.net>
55641
55642	Use buffer objects for non-writable states in window-state-get.
55643
55644	* lisp/window.el (window--state-get-1): Use buffer objects for
55645	buffer, next-buffers, prev-buffers if 'writable' is nil.  (Bug#32850)
55646
556472018-10-18  Stefan Monnier  <monnier@iro.umontreal.ca>
55648
55649	* lisp/emacs-lisp/package.el (package-get-version): New macro
55650
556512018-10-18  Martin Rudalics  <rudalics@gmx.at>
55652
55653	Have 'window-in-direction' handle 'up' and 'down' values (Bug#32790)
55654
55655	* lisp/window.el (window-in-direction): Handle values of 'up'
55656	and 'down' for DIRECTION argument (Bug#32790).  Suggested by
55657	Juri Linkov <juri@linkov.net>.
55658	* lisp/windmove.el (windmove-find-other-window): Don't convert
55659	first argument of 'window-in-direction'.
55660
556612018-10-17  Paul Eggert  <eggert@cs.ucla.edu>
55662
55663	Bring back nocombreloc if dumping
55664
55665	Without this patch, Emacs dumps core on Fedora 28 x86-64
55666	when configured via "CC='gcc -m32' --enable-gcc-warnings
55667	--without-imagemagick --without-gif --with-modules
55668	PKG_CONFIG_LIBDIR=/usr/lib/pkgconfig:/usr/share/pkgconfig".
55669	and then when run normally in a windowing system.
55670	'make check' and 'emacs -nw' work OK even without the patch.
55671	* configure.ac (LD_SWITCH_SYSTEM_TEMACS): Prepend
55672	-znocombreloc if supported and if dumping.  This mostly
55673	reverts 2018-06-15T21:37:39!eggert@cs.ucla.edu "Remove old
55674	combreloc hack".
55675
556762018-10-17  Eli Zaretskii  <eliz@gnu.org>
55677
55678	Avoid assertion violation when comparing with main-thread
55679
55680	* src/thread.c (unmark_main_thread): New function.
55681	* src/lisp.h (unmark_main_thread): Prototype it.
55682	* src/alloc.c (garbage_collect_1): Call it after sweeping.
55683	(Bug#33073)
55684
55685	* test/src/thread-tests.el (threads-test-bug33073): New test.
55686
556872018-10-16  Federico Tedin  <federicotedin@gmail.com>
55688
55689	Allow two mouse functions to work with Rectangle Mark mode
55690
55691	* lisp/mouse.el (mouse-save-then-kill): Make
55692	mouse-save-then-kill work with rectangular regions, including
55693	when mouse-drag-copy-region is set to t. (Bug#31240)
55694	(mouse-drag-and-drop-region): Allow dragging and dropping
55695	rectangular regions. (Bug#31240)
55696	* lisp/rect.el (rectangle-intersect-p)
55697	(rectangle-position-as-coordinates): New functions.
55698
556992018-10-16  Juri Linkov  <juri@linkov.net>
55700
55701	Use next-buffers and prev-buffers in window-state-get and window-state-put
55702
55703	* lisp/window.el (window--state-get-1): Get next-buffers and prev-buffers.
55704	(window--state-put-2): Set next-buffers and prev-buffers.  (Bug#32850)
55705
557062018-10-16  Michael Albinus  <michael.albinus@gmx.de>
55707
55708	Fix Bug#32983
55709
55710	* lisp/net/soap-client.el: Bump version to 3.1.5.
55711	(soap-parse-server-response): Handle also "multipart/related"
55712	Content-Type.  (Bug#32983)
55713
557142018-10-16  Glenn Morris  <rgm@gnu.org>
55715
55716	Merge from origin/emacs-26
55717
55718	73babba (origin/emacs-26) Clarify documentation of fractional vertica...
55719	b20c51d * lisp/isearch.el (isearch-cmds): Recall absent isearch--stat...
55720	700acbd doc/lispref/edebug.texi (Specification List) Remove obstrusiv...
55721	1902450 Fix wording in module API documentation
55722	e724a8f Fix redisplay of glyphless characters
55723	8fc892d Update --without-toolkit-scroll-bars doc
55724	80e0bfa Call GTK functions only on GTK scrollbars
55725	91c4c46 Update the description of startup in ELisp manual
55726	18b42c6 Use the 'line-number' face for line-number fields past EOB
55727	a6ab8db Ensure NS frame is redrawn correctly  after scroll
55728
55729	Conflicts:
55730		lisp/isearch.el
55731
557322018-10-16  Michael Albinus  <michael.albinus@gmx.de>
55733
55734	Add process thread to list-processes
55735
55736	* lisp/simple.el (process-menu-mode, list-processes--refresh):
55737	Add process thread.
55738
557392018-10-15  Stefan Monnier  <monnier@iro.umontreal.ca>
55740
55741	* doc/lispref/display.texi (Fringe Bitmaps): Remove redundant items
55742
55743	* lisp/image-mode.el (image-toggle-display-image): Avoid string-make-unibyte
55744
557452018-10-15  Stefan Monnier  <monnier@iro.umontreal.ca>
55746
55747	* lisp/progmodes/octave.el: Register on auto-mode-alist
55748
55749	(octave-maybe-mode): New function.
55750
557512018-10-15  Stefan Monnier  <monnier@iro.umontreal.ca>
55752
55753	* etc/NEWS.18: Tweak header to be more like the others
55754
557552018-10-15  Juri Linkov  <juri@linkov.net>
55756
55757	* lisp/image-mode.el (image--imagemagick-wanted-p): Check for file extension.
55758
55759	(Bug#32994)
55760	(image-toggle-display-text): Let-bind create-lockfiles to nil
55761	like in image-toggle-display-image.
55762
557632018-10-15  Stefan Monnier  <monnier@iro.umontreal.ca>
55764
55765	* lisp/textmodes/tex-mode.el (tex-uptodate-p): Recognize [N.N] pages
55766
557672018-10-15  Alan Mackenzie  <acm@muc.de>
55768
55769	In follow mode, prevent the cursor resting on a partially displayed line
55770
55771	This fixes bug #32848
55772
55773	* lisp/follow.el (follow-adjust-window): If point ends up in a partially
55774	displayed line in a left hand or middle window, move it one line forward, to
55775	prevent unwanted scrolling should make-cursor-line-fully-visible be non-nil.
55776
557772018-10-14  Paul Eggert  <eggert@cs.ucla.edu>
55778
55779	Update lib/regex from glibc via Gnulib
55780
55781	This syncs recent refactorings from glibc, and incorporates:
55782	2018-10-15 libc-config: merge from glibc
55783	2018-10-15 regex: depend on libc-config
55784	* .gitignore: Do not ignore m4/_*.m4.
55785	* lib/cdefs.h: New file, copied from Gnulib.
55786	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
55787	* lib/libc-config.h, m4/__inline.m4: New files, copied from Gnulib.
55788	* lib/regcomp.c, lib/regex.c, lib/regex_internal.c:
55789	* lib/regex_internal.h, lib/regexec.c:
55790	Copy from glibc via Gnulib.
55791
557922018-10-14  Paul Eggert  <eggert@cs.ucla.edu>
55793
55794	Update from Gnulib
55795
55796	This is minor refactoring that should not affect Emacs builds.
55797	It incorporates:
55798	2018-10-12 Make better use of Autoconf
55799	* m4/environ.m4, m4/fsusage.m4, m4/manywarnings.m4, m4/socklen.m4:
55800	Copy from Gnulib.
55801
558022018-10-14  Alan Mackenzie  <acm@muc.de>
55803
55804	Add ~44 edebug specs to CC Mode.
55805
55806	* lisp/progmodes/cc-cmds.el, lisp/progmodes/cc-defs.el
55807	lisp/progmodes/cc-engine.el, lisp/progmodes/cc-fonts.el
55808	lisp/progmodes/cc-langs.el: Add lots of edebug specs.
55809
55810	* lisp/progmodes/cc-engine.el (c-state-maybe-marker): Tidy up so as to
55811	evaluate an argument only once at runtime.
55812
558132018-10-14  Stefan Monnier  <monnier@iro.umontreal.ca>
55814
55815	* src/buffer.c (Fmove_overlay): Don't call Fdelete_overlay
55816
55817	... because the data structure is not in a consistent state.
55818
55819	* test/src/buffer-tests.el (overlay-evaporation-after-killed-buffer):
55820	New test.
55821
558222018-10-14  Paul Eggert  <eggert@cs.ucla.edu>
55823
55824	Fix lisp_eval_depth in unwind-protect cleanup
55825
55826	Problem reported by Paul Pogonyshev (Bug#33034).
55827	* src/lisp.h (union specbinding): New member unwind.eval_depth.
55828	* src/eval.c (record_unwind_protect, set_unwind_protect): Set it.
55829	(do_one_unbind): Use it.
55830
558312018-10-13  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>
55832
55833	Fix sieve-mode font lock
55834
55835	* lisp/net/sieve-mode.el (sieve-font-lock-keywords): Fix the
55836	definition of font-lock faces.  (Bug#32881)
55837
558382018-10-13  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
55839
55840	Fix sieve-upload when sieve-buffer is nil
55841
55842	* lisp/net/sieve.el (sieve-upload): Don't rely on sieve-buffer being
55843	non-nil.  (Bug#32880)
55844
558452018-10-13  Eli Zaretskii  <eliz@gnu.org>
55846
55847	Improve 'json-insert' so it doesn't cons a string from JSON
55848
55849	* src/json.c (struct json_buffer_and_size): New member
55850	inserted_bytes.
55851	(json_insert): Instead of creating a string and inserting it
55852	into the current buffer, copy the unibyte text into the gap.
55853	(struct json_insert_data): New member inserted_bytes.
55854	(json_insert_callback): Update commentary.  Pass the
55855	inserted_bytes value to json_insert and on its return copy the
55856	updated value back into DATA.
55857	(Fjson_insert): Decode the unibyte text inserted into the gap.
55858	Call before-change-functions and after-change-functions only
55859	once, before and after processing the insertion of the entire
55860	JSON representation.
55861
55862	* test/src/json-tests.el (json-insert/throw): Adapt to the
55863	modified implementation of json-insert: it no longer calls the
55864	modification hooks once for each inserted chunk of JSON
55865	representation.
55866
558672018-10-12  Glenn Morris  <rgm@gnu.org>
55868
55869	Merge from origin/emacs-26
55870
55871	643df63 (origin/emacs-26) Avoid byte-compiler warning in em-rebind.el
55872	d0eca49 ; * doc/emacs/mark.texi (Disabled Transient Mark): Fix last c...
55873	af80b10 Improve indexing of 'C-SPC C-SPC'
55874	89a7301 ; * doc/lispref/internals.texi (Writing Dynamic Modules): Fix...
55875	a108eaa Fix bug with precious entries in Gnus registry
55876	ce8b458 Document in the ELisp manual how to write loadable modules
55877	a7ebc6b dired-do-shell-command: Notify users after abort the command
55878
55879	# Conflicts:
55880	#	lisp/registry.el
55881
558822018-10-12  Glenn Morris  <rgm@gnu.org>
55883
55884	Merge from origin/emacs-26
55885
55886	6e54762 Fix Apple Script permissions error
55887	19f705c Fix typo in 'timerp' documentation
55888
558892018-10-12  Michael Albinus  <michael.albinus@gmx.de>
55890
55891	* test/lisp/net/tramp-tests.el (tramp--test-timeout-handler):
55892
55893	Add docstring.  Remove `interactive' call.
55894
558952018-10-12  Michael Albinus  <michael.albinus@gmx.de>
55896
55897	* lisp/net/trampver.el (customize-package-emacs-version-alist):
55898
55899	Adapt Tramp version integrated in Emacs 26.2.
55900
559012018-10-12  Michael Albinus  <michael.albinus@gmx.de>
55902
55903	Fix error in Tramp loading, uncovered by tramp-test43-*
55904
55905	* lisp/net/tramp-archive.el (tramp-archive-autoload-file-name-handler):
55906	New defalias.
55907	(tramp-register-archive-file-name-handler): Use it.
55908
55909	* lisp/net/tramp.el (tramp-file-name-for-operation): Change it for
55910	`expand-file-name'.
55911	(tramp-file-name-handler): Unset `file-name-handler-alist' when
55912	autoloading a Tramp file name handler.
55913	(tramp-autoload-file-name-handler): Always unload Tramp file name
55914	handlers.
55915	(tramp-register-file-name-handlers)
55916	(tramp-unload-file-name-handlers): Simplify.
55917
559182018-10-12  Allen Li  <darkfeline@felesatra.moe>
55919
55920	Rework empty abbrev table omitting
55921
55922	There were two problems with the original implementation:
55923
55924	1. It changed the behavior of insert-abbrev-table-description when
55925	READABLE is nil to sometimes insert one Emacs Lisp expression and
55926	sometimes insert nothing.
55927	2. It broke the tests.
55928
55929	This commit reworks this so that insert-abbrev-table-description
55930	always inserts an expressions even if no abbrevs need to be saved and
55931	making only write-abbrev-file check that a table has any abbrevs to
55932	save before calling insert-abbrev-table-description.  This duplicates
55933	the work of filtering the table for savable abbrevs, but the benefit
55934	of keeping the API is worth it.
55935
55936	* doc/lispref/abbrevs.texi (Abbrev Tables): Update documentation.
55937	* lisp/abbrev.el (write-abbrev-file): Skip tables without user abbrevs
55938	(insert-abbrev-table-description): Always insert the define
55939	expression.
55940	(abbrev--table-symbols): New function.
55941	* test/lisp/abbrev-tests.el (abbrev--table-symbols-test):
55942	Add test for abbrev--table-symbols.
55943
559442018-10-10  Paul Eggert  <eggert@cs.ucla.edu>
55945
55946	Fix mishandling of symbols that look like numbers
55947
55948	* src/bignum.c (make_neg_biguint): New function.
55949	* src/lread.c (read1): Do not mishandle an unquoted symbol
55950	with name equal to something like "1\0x", i.e., a string
55951	of numeric form followed by a NUL byte.
55952	Formerly these symbols were misread as numbers.
55953	(string_to_number): Change last argument from an integer flag
55954	to a pointer to the length.  This lets the caller figure out
55955	how much of the prefix was used.  All callers changed.
55956	Add a fast path if the integer (sans sign) fits in uintmax_t.
55957	Update comments and simplify now that bignums are present.
55958	* src/print.c (print_object): Fix quoting of symbols that look
55959	like numbers, by relying on string_to_number for the tricky
55960	cases rather than trying to redo its logic, incorrectly.  For
55961	example, (read (prin1-to-string '\1e+NaN)) formerly returned
55962	"1e+NaN", which was wrong: a backslash is needed in the output
55963	to prevent it from being read as a NaN.  Escape NO_BREAK_SPACE
55964	too, since lread.c treats it like SPACE.
55965	* test/src/print-tests.el (print-read-roundtrip):
55966	Add tests illustrating the abovementioned bugs.
55967
559682018-10-10  Stefan Monnier  <monnier@iro.umontreal.ca>
55969
55970	* lisp/auth-source.el: Minor simplification
55971
55972	Remove redundant :group args.
55973	(auth-source-backend-parse): Use run-hook-with-args-until-success.
55974
559752018-10-10  Stefan Monnier  <monnier@iro.umontreal.ca>
55976
55977	* lisp/emacs-lisp/lisp-mnt.el: Use lexical-binding
55978
55979	Remove redundant :group
55980
559812018-10-09  Glenn Morris  <rgm@gnu.org>
55982
55983	Merge from origin/emacs-26
55984
55985	4cf1eb8 (origin/emacs-26) ; * src/data.c (Fkeywordp): Remove inaccura...
55986	3f1470d * doc/emacs/mark.texi (Mark): Index "(de)activating the mark".
55987
559882018-10-09  Glenn Morris  <rgm@gnu.org>
55989
55990	Merge from origin/emacs-26
55991
55992	14c032d Avoid assertion violations in nonsensical calls to 'signal'
55993	b99192f * lisp/simple.el (transient-mark-mode): Correct documentation...
55994	7e42294 Update the locale and language database
55995	8c53d9f Fix a typo in a doc string.
55996	79bda3b Make nneething allow CRLF-encoded files (bug#32940)
55997
559982018-10-09  Glenn Morris  <rgm@gnu.org>
55999
56000	Merge from origin/emacs-26
56001
56002	86d2169 Avoid ridiculously high stack limit requests on macOS
56003	ac3622c Improve documentation of 'read-hide-char'
56004
56005	# Conflicts:
56006	#	src/emacs.c
56007
560082018-10-09  Charles A. Roelli  <charles@aurox.ch>
56009
56010	* lisp/vc/vc.el (vc-retrieve-tag-hook): Remove autoload cookie.
56011
56012	See https://lists.gnu.org/r/emacs-devel/2018-10/msg00108.html.
56013
560142018-10-09  Paul Eggert  <eggert@cs.ucla.edu>
56015
56016	Port --enable-gcc-warnings to recent clang
56017
56018	* configure.ac: Disable -Wnull-pointer-arithmetic if clang (Bug#32924).
56019
560202018-10-09  Paul Eggert  <eggert@cs.ucla.edu>
56021
56022	Fix malfunctioning cursor display on 32-bit Gtk
56023
56024	This bug on 32-bit platforms was caused by the timespec_hz
56025	definition going haywire because the C expression
56026	FIXNUM_OVERFLOW_P (MOST_POSITIVE_FIXNUM) did not work in #if.
56027	Eventually the numeric problem showed up as a malfunctioning
56028	cursor (Bug#32992).  Fix the problem with MOST_POSITIVE_FIXNUM.
56029	By the way, make_fixnum should check for integer overflow when
56030	debugging; this would have made it easier to track this bug down.
56031	But one fix at a time.
56032	* src/lisp.h (INTTYPEBITS): Now a macro, so usable in #if.
56033	(MOST_POSITIVE_FIXNUM): Mention it’s used in #if.
56034
560352018-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
56036
56037	* lisp/replace.el (occur--garbage-collect-revert-args): New function
56038
56039	(occur-mode, occur-1): Use it.
56040	(occur--region-start, occur--region-end, occur--region-start-line)
56041	(occur--orig-line): Remove vars.
56042	(occur-engine): Fix left over use of occur--region-start-line.
56043
560442018-10-09  Eli Zaretskii  <eliz@gnu.org>
56045
56046	Revert part of last commit
56047
56048	* lisp/replace.el (occur-revert-function): Revert last change,
56049	as it's no longer needed.  (Bug#32987)
56050
560512018-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
56052
56053	* lisp/replace.el: Rework implementation of the occur region
56054
56055	Put the region info in the "list of buffers" used for multi-occur.
56056
56057	(occur--parse-occur-buffer): Remove.
56058	(occur): Pass the region to occur-1 as an overlay.
56059	(occur-1): 'bufs' is now a list of buffers or overlays.
56060	(occur-engine): 'buffers' is now a list of buffers or overlays.
56061
560622018-10-09  Eli Zaretskii  <eliz@gnu.org>
56063
56064	Unbreak 'revert-buffer' in Occur buffers
56065
56066	* lisp/replace.el (occur-revert-function): Use the value of
56067	occur-revert-function from the correct buffer.  (Bug#32987)
56068
56069	* test/lisp/replace-tests.el (replace-occur-revert-bug32543)
56070	(replace-occur-revert-bug32987): New tests.
56071
560722018-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
56073
56074	* lisp/calendar/timeclock.el: Use lexical-binding
56075
56076	Require cl-lib.  Remove redundant :group args.
56077	(timeclock-status-string): Avoid 'setq'.
56078	(timeclock-ask-for-project, timeclock-ask-for-reason):
56079	Completionu tables can be simple lists of strings.
56080	(timeclock-read-moment): Doesn't deserve to be defsubst (most of the
56081	others don't either, admittedly).
56082	(timeclock-entry): New type.
56083	(timeclock-entry-begin, timeclock-entry-end, timeclock-entry-project)
56084	(timeclock-entry-comment): Define via 'cl-defstruct'.
56085	(timeclock-entry-list-projects, timeclock-day-list-projects):
56086	Avoid add-to-list on lexical vars.
56087	(timeclock-day-list): Use 'push'.
56088	(timeclock-log-data): Use 'pcase'.
56089	(timeclock-mean): Simplify.
56090	(timeclock-generate-report): Use dotimes.
56091
560922018-10-08  Paul Eggert  <eggert@cs.ucla.edu>
56093
56094	Update from Gnulib
56095
56096	This incorporates:
56097	2018-10-05 explicit_bzero: make it possible to namespace
56098	2018-10-04 fcntl: make it possible to namespace
56099	2018-10-01 mkostemp, mkostemps: fix C++ compilation on Mac OS X
56100	2018-09-19 maint: mktime.c now shared with glibc
56101	2018-09-18 file-has-acl: fix test failure on Cygwin 2.9
56102	2018-09-18 gettime: nanotime never existed
56103	* admin/merge-gnulib (AVOIDED_MODULES): Add mkdir.
56104	* doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
56105	* lib/acl_entries.c, lib/explicit_bzero.c, lib/fcntl.c:
56106	* lib/get-permissions.c, lib/gettime.c, lib/mktime.c:
56107	* lib/set-permissions.c, lib/stdlib.in.h, m4/acl.m4, m4/gettime.m4:
56108	Copy from Gnulib.
56109	* lib/gnulib.mk.in: Regenerate.
56110
561112018-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
56112
56113	* lisp/net/ntlm.el: Use lexical-binding
56114
56115	(ntlm-string-as-unibyte): Remove.
56116	(ntlm-build-auth-response): Use encode-coding-string instead.
56117	(ntlm-build-auth-request, ntlm-build-auth-response, ntlm-ascii2unicode)
56118	(ntlm-smb-owf-encrypt, ntlm-smb-hash, ntlm-smb-dohash, ntlm-md4hash):
56119	Use fewer setq more Lisp-style.
56120
561212018-10-08  Charles A. Roelli  <charles@aurox.ch>
56122
56123	New hook 'vc-retrieve-tag-hook' (Bug#32754)
56124
56125	* etc/NEWS: Mention the new variable.
56126
56127	* lisp/vc/vc.el (vc-retrieve-tag-hook): New hook.
56128	(vc-retrieve-tag): Run the new hook and update its
56129	documentation string.
56130
561312018-10-07  Eli Zaretskii  <eliz@gnu.org>
56132
56133	Fix MinGW compilation problem in timefns.c
56134
56135	* src/timefns.c (lisp_to_timespec): Fix a mismatch between
56136	time_t and timespec.tv_sec data types.
56137
561382018-10-07  Paul Eggert  <eggert@cs.ucla.edu>
56139
56140	* src/scroll.c (calculate_scrolling): Remove casts.
56141
561422018-10-07  Scott Corley  <scott@scorley.com>  (tiny change)
56143
56144	Fix overflow lockup with frames > 255 lines
56145
56146	* src/scroll.c (struct matrix_elt): Change unsigned char fields to
56147	int to handle frames with more than 255 lines (Bug#32951).
56148
561492018-10-06  Paul Eggert  <eggert@cs.ucla.edu>
56150
56151	Improvements on (TICKS . HZ)
56152
56153	This patch is in response to Eli's review (Bug#32902#10).
56154	* src/systime.h: Doc strings of affected functions now refer
56155	to format-time-string instead of to Lisp manual, and
56156	format-time-string's doc string covers time values.
56157	* test/src/timefns-tests.el (format-time-string-with-zone):
56158	Check decode-time too.
56159	(decode-then-encode-time, time-arith-tests): New tests.
56160
561612018-10-06  Paul Eggert  <eggert@cs.ucla.edu>
56162
56163	New (TICKS . HZ) timestamp format
56164
56165	This follows on a suggestion by Stefan Monnier in:
56166	https://lists.gnu.org/r/emacs-devel/2018-08/msg00991.html
56167	(Bug#32902).
56168	* doc/lispref/buffers.texi (Modification Time):
56169	* doc/lispref/os.texi (Processor Run Time, Time Calculations)
56170	* doc/lispref/processes.texi (System Processes):
56171	* doc/lispref/text.texi (Undo):
56172	Let the "Time of Day" section cover timestamp format details.
56173	* doc/lispref/os.texi (Time of Day):
56174	Say that timestamp internal format should not be assumed.
56175	Document new (ticks . hz) format.  Omit mention of seconds-to-time
56176	since it is now just an alias for encode-time.
56177	(Time Conversion): Document encode-time extension.
56178	* etc/NEWS: Mention changes.
56179	* lisp/calendar/cal-dst.el (calendar-system-time-basis): Now const.
56180	* lisp/calendar/cal-dst.el (calendar-absolute-from-time)
56181	(calendar-time-from-absolute)
56182	(calendar-next-time-zone-transition):
56183	* lisp/emacs-lisp/timer.el (timer-next-integral-multiple-of-time):
56184	Simplify by using bignums, (TICKS . HZ), and new encode-time.
56185	* lisp/emacs-lisp/timer.el (timer-next-integral-multiple-of-time):
56186	Simplify by using bignums and new encode-time.
56187	* lisp/calendar/parse-time.el (parse-iso8601-time-string):
56188	Handle DST more accurately, by using new encode-time.
56189	* lisp/calendar/time-date.el (seconds-to-time):
56190	* lisp/calendar/timeclock.el (timeclock-seconds-to-time):
56191	Now just an alias for encode-time.
56192	* lisp/calendar/time-date.el (days-to-time):
56193	* lisp/emacs-lisp/timer.el (timer--time-setter):
56194	* lisp/net/ntlm.el (ntlm-compute-timestamp):
56195	* lisp/obsolete/vc-arch.el (vc-arch-add-tagline):
56196	* lisp/org/org-id.el (org-id-uuid, org-id-time-to-b36):
56197	* lisp/tar-mode.el (tar-octal-time):
56198	Don't assume timestamps default to list form.
56199	* lisp/tar-mode.el (tar-parse-octal-long-integer):
56200	Now an obsolete alias for tar-parse-octal-integer.
56201	* src/keyboard.c (decode_timer): Adjust to changes to
56202	time decoding functions elsewhere.
56203	* src/timefns.c: Include bignum.h, limits.h.
56204	(FASTER_TIMEFNS): New macro.
56205	(WARN_OBSOLETE_TIMESTAMPS, CURRENT_TIME_LIST)
56206	(timespec_hz, trillion, ztrillion):
56207	New constants.
56208	(make_timeval): Use TIME_T_MAX instead of its definiens.
56209	(check_time_validity, time_add, time_subtract):
56210	Remove.  All uses removed.
56211	(disassemble_lisp_time): Remove; old code now folded into
56212	decode_lisp_time.  All callers changed.
56213	(invalid_hz, s_ns_to_double, ticks_hz_list4, mpz_set_time)
56214	(timespec_mpz, timespec_ticks, time_hz_ticks)
56215	(lisp_time_hz_ticks, lisp_time_seconds)
56216	(time_form_stamp, lisp_time_form_stamp, decode_ticks_hz)
56217	(decode_lisp_time, mpz_time, list4_to_timespec):
56218	New functions.
56219	(decode_float_time, decode_time_components, lisp_to_timespec):
56220	Adjust to new struct lisp_time, which does not lose
56221	information like the old one did.
56222	(enum timeform): New enum.
56223	(decode_time_components): New arg FORM.  All callers changed.
56224	RESULT and DRESULT are now mutually exclusive; no callers need
56225	to change because of this.
56226	(decode_time_components, lisp_time_struct)
56227	(lisp_seconds_argument, time_arith, make_lisp_time, Ffloat_time)
56228	(Fencode_time):
56229	Add support for (TICKS . HZ) form.
56230	(DECODE_SECS_ONLY): New constant.
56231	(lisp_time_struct): 2nd arg is now enum timeform, not int.
56232	All callers changed.
56233	(check_tm_member): Support bignums.m
56234	(Fencode_time): Add new two-arg functionality.
56235	* src/systime.h (struct lisp_time): Now ticks+hz rather than
56236	hi+lo+us+ps, since ticks+hz does not lose info.
56237	* test/lisp/time-stamp-tests.el (time-equal-p-nil-nil):
56238	New test.
56239
562402018-10-06  Paul Eggert  <eggert@cs.ucla.edu>
56241
56242	Export converting mpz to [u]intmax
56243
56244	This refactoring will help improve timestamp handling later
56245	(Bug#32902).
56246	* src/bignum.c (mpz_set_uintmax): Move to bignum.h,
56247	and make inline.
56248	(mpz_set_uintmax_slow): Now extern.
56249	(mpz_to_intmax, mpz_to_uintmax): New functions, with
56250	implementation taken from the old bignum_to_intmax
56251	and bignum_to_uintmax.
56252	(bignum_to_intmax, bignum_to_uintmax): Use them.
56253
562542018-10-06  Paul Eggert  <eggert@cs.ucla.edu>
56255
56256	Coalesce duplicate make_lisp_timeval etc.
56257
56258	* src/sysdep.c (timeval_to_timespec, make_lisp_timeval):
56259	Coalesce duplicate definitions (Bug#32902).
56260
562612018-10-06  Paul Eggert  <eggert@cs.ucla.edu>
56262
56263	Move timestamp-related stuff to timefns.c
56264
56265	This does not change behavior; it’s just long-overdue
56266	refactoring (Bug#32902).
56267	* src/emacs.c (main): Call init_timefns, syms_of_timefns.
56268	* src/timefns.c: New file, containing timestamp-related stuff
56269	from editfns.c and sysdep.c.
56270	* src/Makefile.in (base_obj): Add timefns.o.
56271	* src/editfns.c: Simplify by moving a big chunk to timefns.c.
56272	Do not include systime.h, sys/resource.h, sys/param.h,
56273	strftime.h, coding.h.
56274	(HAVE_TZALLOC_BUG, TM_YEAR_BASE, HAVE_TM_GMTOFF, tzeqlen)
56275	(local_tz, utc_tz, emacs_localtime_rz, emacs_mktime_z)
56276	(invalid_time_zone_specification, xtzfree, tzlookup)
56277	(TIME_T_MIN, TIME_T_MAX, time_overflow, invalid_time)
56278	(check_time_validity, hi_time, lo_time, Fcurrent_time)
56279	(time_add, time_subtract, time_arith, Ftime_add)
56280	(Ftime_subtract, Ftime_less_p, Fget_internal_run_time)
56281	(make_lisp_time, disassemble_lisp_time, decode_float_time)
56282	(lisp_to_timespec, lisp_time_struct, lisp_time_argument)
56283	(lisp_seconds_argument, Ffloat_time, emacs_nmemftime)
56284	(Fformat_time_string, format_time_string, Fdecode_time)
56285	(check_tm_member, Fencode_time, Fcurrent_time_string)
56286	(tm_gmtoff, Fcurrent_time_zone, Fset_time_zone_rule)
56287	(emacs_getenv_TZ, emacs_setenv_TZ): Move to timefns.c.
56288	* src/emacs.c (main): Adjust to initialization changes.
56289	* src/sysdep.c: Include <sys/resource.h> if it's present.
56290	Regularize includes a bit.
56291	(Fget_internal_run_time): Move here from editfns.c.
56292	(init_timefns, syms_of_timefns): New functions.
56293	* src/w32.h (w32_get_internal_run_time): Move decl here
56294	so that it need not be cloned.
56295	* test/src/editfns-tests.el:
56296	* test/src/editfns-tests.el (format-time-string-with-zone)
56297	(format-time-string-with-outlandish-zone)
56298	(editfns-tests--have-leap-seconds)
56299	(format-time-string-with-bignum-on-32-bit):
56300	Move to ...
56301	* test/src/timefns-tests.el: ... this new file.
56302
563032018-10-04  Michael Albinus  <michael.albinus@gmx.de>
56304
56305	Some reaarangements in tramp*.texi
56306
56307	* doc/misc/trampver.texi (trampfn): Change check for definition of macro.
56308	(tramp-bug-report-address): New variable.
56309
56310	* doc/misc/tramp.texi (Top, Bug Reports): Use it.
56311
563122018-10-03  Paul Eggert  <eggert@cs.ucla.edu>
56313
56314	Fix emacs_re_safe_alloca calculation
56315
56316	Problem and draft fix noted by Eli Zaretskii in:
56317	https://lists.gnu.org/r/emacs-devel/2018-10/msg00022.html
56318	* src/emacs.c (main): Fix arithmetic used in calculation
56319	of emacs_re_safe_alloca.
56320
563212018-10-03  Glenn Morris  <rgm@gnu.org>
56322
56323	* Makefile.in (uninstall): Remove some stray icon files.
56324
563252018-10-03  Glenn Morris  <rgm@gnu.org>
56326
56327	Tweak Makefile emacs-module.h handling
56328
56329	* Makefile.in (install-arch-indep, uninstall): Respect DESTDIR.
56330	Handle whitespace.  Remove non-portable mkdir argument.
56331
563322018-10-03  Philipp Stephani  <phst@google.com>
56333
56334	Install emacs-module.h (Bug#31929)
56335
56336	* Makefile.in (includedir): New variable.
56337	(install-arch-indep): Install emacs-module.h.
56338	(uninstall): Uninstall emacs-module.h.
56339
563402018-10-03  Michael Albinus  <michael.albinus@gmx.de>
56341
56342	* doc/misc/trampver.texi (trampfn): Call `unmacro' prior defining
56343
56344	* doc/misc/trampver.texi (trampfn): Call `unmacro' prior
56345	defining.  trampver.texi is included several times; it raises an
56346	error otherwise.
56347
563482018-10-03  Glenn Morris  <rgm@gnu.org>
56349
56350	Merge from origin/emacs-26
56351
56352	ea77c65 Revert "Temporary workaround for bug #32848 for branch emacs-26"
56353	2c8ea46 Revert "* etc/NEWS: Note setting make-cursor-line-fully-visib...
56354	f8df6f2 * etc/NEWS: Note setting make-cursor-line-fully-visible to ni...
56355	cdca208 Fix note about interactive advice (Bug#32905)
56356	508c40e Comple fix for Bug#32550
56357
563582018-10-03  Glenn Morris  <rgm@gnu.org>
56359
56360	Merge from origin/emacs-26
56361
56362	9c028d6 * lisp/savehist.el (savehist-mode): Doc fix.  (Bug#32889)
56363	3a2b5a7 ; * lisp/bindings.el (bindings--define-key): Doc fix.  (Bug#3...
56364	6a7a869 Org manual: Rewrite the Org Mobile section
56365
56366	# Conflicts:
56367	#	lisp/savehist.el
56368
563692018-10-03  Glenn Morris  <rgm@gnu.org>
56370
56371	Merge from origin/emacs-26
56372
56373	7296b6f Improve cl-do, cl-do* docstrings
56374	d416109 Avoid returning early in 'while-no-input' due to subprocesses
56375	e8a4d94 Cleanup when opening a new terminal fails. (Bug#32794)
56376
56377	# Conflicts:
56378	#	etc/NEWS
56379
563802018-10-03  Alan Mackenzie  <acm@muc.de>
56381
56382	Put follow-mode's engine on pre-redisplay-hook instead of post-command-hook
56383
56384	This fixes bug #32874.
56385
56386	* lisp/follow.el (follow-mode): Put follow-pre-redisplay-function onto
56387	pre-redisplay-function instead of putting follow-post-command-hook onto
56388	post-command-hook.  Amend the removal operation analogously.
56389	(follow-pre-redisplay-function): New function.
56390
563912018-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
56392
56393	* lisp/emacs-lisp/autoload.el (autoload-ignored-definitions): New var
56394
56395	(autoload-generate-file-autoloads): Use it.
56396
563972018-10-02  Michael Albinus  <michael.albinus@gmx.de>
56398
56399	Rearrangements in tramp*.texi
56400
56401	* doc/misc/trampver.texi (trampfn): New macro, taken from tramp.texi.
56402
56403	* doc/misc/tramp.texi (trampfn): Moved to trampver.texi.
56404	(Top): Add sections `System Requirement' and `Basic Installation'.
56405
564062018-10-01  Charles A. Roelli  <charles@aurox.ch>
56407
56408	* lisp/vc/vc.el (vc-checkin): Simplify 'run-hook' call.
56409
564102018-10-01  Michael Albinus  <michael.albinus@gmx.de>
56411
56412	Use `float-time' in tramp-sh.el where needed
56413
56414	* lisp/net/tramp-sh.el (tramp-sh-handle-verify-visited-file-modtime):
56415	Use `float-time'.
56416
564172018-10-01  Michael Albinus  <michael.albinus@gmx.de>
56418
56419	Minor edits in tramp.texi
56420
56421	* doc/misc/tramp.texi (Password handling): Say "user option".
56422	(Remote shell setup): Say "environment variable".
56423	(External packages): Add `non-essential' to variable index.
56424
564252018-09-30  Michael R. Mauger  <michael@mauger.com>
56426
56427	Automate support for `sql-indent' ELPA package
56428
56429	* lisp/progmodes/sql.el (sql-use-indent-support): New variable.
56430	(sql-is-indent-available): New function.
56431	(sql-indent-enable): Use above.
56432	(sql-mode-hook, sql-interactive-mode-hook): Add `sql-indent-enable'.
56433
564342018-09-30  Charles A. Roelli  <charles@aurox.ch>
56435
56436	* doc/emacs/help.texi (Misc Help): Document 'info-other-window'.
56437
564382018-09-30  Sam Steingold  <sds@gnu.org>
56439
56440	Document 2d54710c36: vc-git-stash & *vc-dir*
56441
564422018-09-30  Eli Zaretskii  <eliz@gnu.org>
56443
56444	Allow 'make-cursor-line-fully-visible' name a function
56445
56446	* src/xdisp.c (cursor_row_fully_visible_p): Handle the case of
56447	make-cursor-line-fully-visible being a function.  Accept a 3rd
56448	argument; if non-zero, assume the caller already tested the
56449	conditions for the cursor being fully-visible, and don't
56450	recheck them.  All callers changed.
56451	(try_cursor_movement, try_window_id): Call
56452	cursor_row_fully_visible_p instead of testing the value of
56453	make-cursor-line-fully-visible directly.
56454	(syms_of_xdisp) <make-cursor-line-fully-visible>: Update the
56455	doc string.  Define a symbol Qmake_cursor_line_fully_visible.
56456	(Bug#32848)
56457
56458	* lisp/cus-start.el (standard): Update the Custom form.
56459
56460	* etc/NEWS: Mention the change in possible values of
56461	'make-cursor-line-fully-visible'.
56462
564632018-09-29  Alan Third  <alan@idiocy.org>
56464
56465	Merge from origin/emacs-26
56466
56467	9ad0f1d15c Fix deprecation warning
56468	7946445962 Make all NS drawing be done from drawRect
56469	41fa88b99b ; Fix some doc typos
56470
564712018-09-29  Michael Albinus  <michael.albinus@gmx.de>
56472
56473	Rework time-* functions in Tramp
56474
56475	* doc/misc/emacs-mime.texi (time-date): Add time-equal-p.
56476
56477	* lisp/net/tramp-compat.el (tramp-compat-time-equal-p): New defsubst.
56478
56479	* lisp/net/tramp.el (tramp-file-name-handler): Remove `debug'
56480	error handler.
56481	(tramp-half-a-year): Remove.
56482	(tramp-time-dont-know, tramp-time-doesnt-exist): New defconst.
56483	(tramp-time-diff): Remove compat code.
56484	(tramp-handle-set-visited-file-modtime)
56485	(tramp-handle-verify-visited-file-modtime):
56486	* lisp/net/tramp-adb.el (tramp-do-parse-file-attributes-with-ls)
56487	(tramp-adb-handle-set-file-times):
56488	* lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls)
56489	(tramp-sh-handle-set-visited-file-modtime)
56490	(tramp-sh-handle-verify-visited-file-modtime)
56491	(tramp-sh-handle-set-file-times)
56492	(tramp-sh-handle-file-newer-than-file-p):
56493	Use `tramp-time-dont-know', `tramp-time-doesnt-exist' and
56494	`tramp-compat-time-equal-p'.
56495	(tramp-sh-handle-verify-visited-file-modtime): Simplify check.
56496
56497	* lisp/net/tramp-smb.el (tramp-smb-handle-file-attributes)
56498	(tramp-smb-read-file-entry): Use `tramp-time-dont-know'.
56499	(tramp-smb-handle-insert-directory): Adapt half-a-year check.
56500
56501	* src/editfns.c (Ftime_equal_p): Adapt docstring.
56502
56503	* test/lisp/net/tramp-tests.el
56504	(tramp-test19-directory-files-and-attributes)
56505	(tramp-test22-file-times): Use `tramp-compat-time-equal-p' and
56506	`tramp-time-dont-know'.
56507	(tramp-test23-visited-file-modtime): Extend test.
56508
565092018-09-29  Michael Albinus  <michael.albinus@gmx.de>
56510
56511	Fix minor problem in tramp-handle-substitute-in-file-name
56512
56513	* lisp/net/tramp.el (tramp-handle-substitute-in-file-name):
56514	Suppress cygwin-mount file name handlers.
56515
565162018-09-29  Michael Albinus  <michael.albinus@gmx.de>
56517
56518	Finish fix for Bug#21559
56519
56520	* lisp/vc/vc-git.el (vc-git--call):
56521	If `revert-buffer-in-progress-p' flag is set, prepend
56522	"GIT_OPTIONAL_LOCKS=0" to "process-environment".  (Bug#21559)
56523
565242018-09-29  Tino Calancha  <tino.calancha@gmail.com>
56525	    Noam Postavsky  <npostavs@gmail.com>
56526
56527	Ibuffer filter by modes: Accept several mode names
56528
56529	Extend all mode filters so that they handle >1 mode.
56530	For instance, if the users want to filter all buffers in
56531	C or C++ mode, then they can call the filter interactively
56532	with input: 'c-mode,c++-mode' (Bug#32731).
56533
56534	* lisp/ibuf-macs.el(define-ibuffer-filter): Add key :accept-list.
56535	If the value of this key is non-nil, then the filter accepts
56536	either a single qualifier or a list of them; in the latter case,
56537	the resultant filter is the `or' composition of the individual ones.
56538
56539	* lisp/ibuf-ext.el (ibuffer-filter-by-used-mode)
56540	(ibuffer-filter-by-mode, ibuffer-filter-by-derived-mode)
56541	Set :accept-list value non-nil.
56542	Interactively, accept a comma separated list of mode names.
56543
56544	* etc/NEWS(Ibuffer): Announce this change.
56545
565462018-09-29  Allen Li  <darkfeline@felesatra.moe>
56547
56548	Avoid writing empty abbrev tables
56549
56550	Fixes bug#29923
56551
56552	'insert-abbrev-table-description' with a non-nil READABLE inserts Lisp
56553	forms suitable for evaluation to restore the defined abbrevs.  We
56554	don't have to insert a form for tables that do not have any abbrevs.
56555
56556	To implement this, we need to filter out system abbrevs before
56557	checking if a table is empty, because system abbrevs were previously
56558	skipped in the 'abbrev--write' call, at which point we would already
56559	have started inserting the beginning of a table definition form.
56560
56561	* lisp/abbrev.el (insert-abbrev-table-description):
56562	Skip inserting empty tables when READABLE is non-nil.
56563	Clarify behavior in documentation string.
56564	(abbrev--write): Remove system abbrev check.
56565
56566	* doc/lispref/abbrevs.texi (Abbrev Tables): Document behavior
56567	with empty tables.
56568
56569	* etc/NEWS: Mention the change in behavior of
56570	'insert-abbrev-table-description'.
56571
565722018-09-28  Andrew Schwartzmeyer  <andrew@schwartzmeyer.com>  (tiny change)
56573
56574	Support mode aliases in 'provided-mode-derived-p'
56575
56576	* lisp/subr.el (provided-mode-derived-p): Check aliases of
56577	MODES as well as MODES themselves.  (Bug#32795)
56578
56579	* test/lisp/subr-tests.el (provided-mode-derived-p): New test.
56580
565812018-09-28  Trevor Murphy  <trevor.m.murphy@gmail.com>
56582
56583	Allow user customization to affect display of *Find* buffer.
56584
56585	* lisp/find-dired.el (find-dired): Use 'pop-to-buffer-same-window'
56586	instead of 'switch-to-buffer'.
56587
565882018-09-28  Stefan Monnier  <monnier@iro.umontreal.ca>
56589
56590	* etc/NEWS.18: Use outline-mode and a more standard format
56591
56592	* etc/NEWS.1-17: Use outline-mode and a more standard format
56593
565942018-09-28  Paul Eggert  <eggert@cs.ucla.edu>
56595
56596	Rename time-equal to time-equal-p
56597
56598	This is for consistency with time-less-p.
56599	* doc/lispref/os.texi (Time Calculations), etc/NEWS:
56600	* src/editfns.c (Ftime_equal_p, syms_of_editfns):
56601	* test/lisp/emacs-lisp/timer-tests.el (timer-test-multiple-of-time):
56602	Rename.
56603
566042018-09-28  Glenn Morris  <rgm@gnu.org>
56605
56606	Merge from origin/emacs-26
56607
56608	1908173 (origin/emacs-26) Fix Bug#32828
56609	7f5086d * lisp/net/shr.el (shr-copy-url): Fix docstring.
56610	d309994 Fix typos in documentation
56611	25cdd65 ; Spellcheck two more documentation strings
56612	c8bda05 ; * lisp/simple.el (save-interprogram-paste-before-kill): Fix...
56613	dc7fdee * doc/emacs/kmacro.texi (Basic Keyboard Macro): Mention old b...
56614	17766a1 Improve docs of functions/variables related to 'display-buffer'
56615	a363931 * lisp/mouse.el (tear-off-window): Fix non-mouse use (bug#32799)
56616	8b8a4c0 Improve documentation of directory-local variables
56617	c9c9756 Don't use obsolete variable 'save-place' in documentation
56618	ca208e8 Use save-place-mode instead of save-place
56619
566202018-09-28  Sam Steingold  <sds@gnu.org>
56621
56622	lisp/vc/vc-git.el (vc-git-stash): Respect vc-dir marked files
56623
566242018-09-27  Paul Eggert  <eggert@cs.ucla.edu>
56625
56626	time-equal, and time values of infinity and NaN
56627
56628	* doc/lispref/os.texi (Time Calculations):
56629	Document time-equal, and the behavior on NaNs and infinities of
56630	time-less-p, time-add, time-subtract.
56631	* etc/NEWS: Mention the change.
56632	* src/editfns.c (time_arith): Change last arg from function
56633	to bool.  All callers changed.  Do the right thing with
56634	infinities and NaNs.
56635	(time_cmp): New function, which handlesx infinities and NaNs.
56636	(Ftime_less_p): Use it.
56637	(Ftime_equal): New function.
56638	* test/lisp/emacs-lisp/timer-tests.el (timer-test-multiple-of-time):
56639	Use it.
56640
566412018-09-26  Juri Linkov  <juri@linkov.net>
56642
56643	* etc/NEWS: Mention syntax change in add-dir-local-variable (bug#32817)
56644
566452018-09-26  Charles A. Roelli  <charles@aurox.ch>
56646
56647	* lisp/vc-bzr.el (log-view-current-tag-function): Remove unused defvar.
56648
566492018-09-26  Alan Mackenzie  <acm@muc.de>
56650
56651	CC Mode: consider tails of compound identifiers when seeking found types.
56652
56653	* lisp/progmodes/cc-engine.el (c-forward-over-token): New function, extracted
56654	from ...
56655	(c-forward-over-token-and-ws): Refactor to use the above.
56656	(c-forward-type): Use c-check-qualified-type in place of c-check-type
56657	(twice).
56658	(c-forward-over-compound-identifier): New function.
56659	(c-check-qualified-type): New function.
56660
566612018-09-25  Juri Linkov  <juri@linkov.net>
56662
56663	Rename add-dir-local-variables-to-string to dir-locals-to-string (bug#32817)
56664
566652018-09-24  Paul Eggert  <eggert@cs.ucla.edu>
56666
56667	Remove some assumptions about timestamp format
56668
56669	These changes remove some assumptions of Lisp code on timestamp
56670	format.  Although we’re not going to change the default format any
56671	time soon, I went looking for code that was too intimate about
56672	details of timestamp format and removed assumptions where this was
56673	easy to do with current Emacs primitives.
56674	* lisp/ido.el (ido-wash-history):
56675	Fix test for zero timestamp.
56676	* lisp/time.el (display-time-event-handler):
56677	Use time-less-p rather than doing it by hand.
56678	(display-time-update): Simplify by using float-time
56679	instead of doing the equivalent by hand.
56680	* lisp/url/url-auth.el (url-digest-auth-make-cnonce):
56681	* test/lisp/calendar/parse-time-tests.el (parse-time-tests):
56682	* test/lisp/emacs-lisp/timer-tests.el (timer-test-multiple-of-time):
56683	* test/lisp/net/tramp-tests.el:
56684	(tramp-test19-directory-files-and-attributes)
56685	(tramp-test22-file-times, tramp-test23-visited-file-modtime):
56686	Don’t assume detailed format of returned Lisp timestamps.
56687
566882018-09-24  Juri Linkov  <juri@linkov.net>
56689
56690	Output alists with dotted pair notation in .dir-locals.el
56691
56692	* lisp/files-x.el (add-dir-local-variables-to-string): New function.
56693	(modify-dir-local-variable): Use it.  (Bug#32817)
56694
566952018-09-24  Paul Eggert  <eggert@cs.ucla.edu>
56696
56697	Fix ‘make clean’ with a file named ‘-.o56698
56699	Problem reported by T.V Raman in:
56700	https://lists.gnu.org/r/emacs-devel/2018-09/msg00866.html
56701	* Makefile.in (clean, extraclean):
56702	* doc/emacs/Makefile.in (mostlyclean):
56703	* doc/lispintro/Makefile.in (mostlyclean):
56704	* doc/lispref/Makefile.in (mostlyclean):
56705	* doc/misc/Makefile.in (mostlyclean, clean):
56706	* etc/refcards/Makefile (clean):
56707	* lib-src/Makefile.in (mostlyclean, extraclean):
56708	* lib/Makefile.in (clean):
56709	* lwlib/Makefile.in (clean mostlyclean):
56710	* oldXMenu/Makefile.in (clean mostlyclean):
56711	* src/Makefile.in (mostlyclean, extraclean):
56712	* test/Makefile.in (mostlyclean):
56713	Say ‘rm ./*.o’ instead of ‘rm *.o’ to avoid undesirable failure
56714	when a file name begins with ‘-’.
56715
567162018-09-23  Paul Eggert  <eggert@cs.ucla.edu>
56717
56718	file-attributes cleanup
56719
56720	Mostly, this replaces magic-number calls like (nth 4 A) with
56721	more-informative calls like (file-attribute-access-time A).
56722	It also fixes some documentation and minor timestamp coding
56723	issues that I noticed while looking into this.
56724	* doc/lispref/files.texi (File Attributes):
56725	* lisp/files.el (file-attribute-size)
56726	(file-attribute-inode-number, file-attribute-device-number):
56727	* src/dired.c (Fdirectory_files_and_attributes)
56728	(Ffile_attributes):
56729	Mention which attributes must be integers, or nonnegative integers,
56730	as opposed to merely being numbers.  Remove no-longer-correct
56731	talk about representing large integers as conses of integers.
56732	* doc/lispref/files.texi (Magic File Names):
56733	* doc/misc/gnus.texi (Low-level interface to the spam-stat dictionary):
56734	* lisp/autorevert.el (auto-revert-find-file-function)
56735	(auto-revert-tail-mode, auto-revert-handler):
56736	* lisp/auth-source.el (auth-source-netrc-parse):
56737	* lisp/cedet/ede/files.el (ede--inode-for-dir):
56738	* lisp/cedet/semantic/db-file.el (object-write):
56739	* lisp/cedet/semantic/db-mode.el (semanticdb-kill-hook):
56740	* lisp/cedet/semantic/db.el (semanticdb-needs-refresh-p)
56741	(semanticdb-synchronize):
56742	* lisp/cedet/srecode/table.el (srecode-mode-table-new):
56743	* lisp/desktop.el (desktop-save, desktop-read):
56744	* lisp/dired-aux.el (dired-file-set-difference)
56745	(dired-do-chxxx, dired-do-chmod, dired-copy-file-recursive)
56746	(dired-create-files):
56747	* lisp/dired.el (dired-directory-changed-p, dired-readin):
56748	* lisp/dos-w32.el (w32-direct-print-region-helper):
56749	* lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads)
56750	(autoload-find-destination, update-directory-autoloads):
56751	* lisp/emacs-lisp/shadow.el (load-path-shadows-same-file-or-nonexistent):
56752	* lisp/epg.el (epg--start, epg-wait-for-completion):
56753	* lisp/eshell/em-ls.el (eshell-ls-filetype-p)
56754	(eshell-ls-applicable, eshell-ls-size-string)
56755	(eshell-ls-file, eshell-ls-dir, eshell-ls-files)
56756	(eshell-ls-entries):
56757	* lisp/eshell/em-pred.el (eshell-predicate-alist)
56758	(eshell-pred-file-type, eshell-pred-file-links)
56759	(eshell-pred-file-size):
56760	* lisp/eshell/em-unix.el (eshell-shuffle-files, eshell/cat)
56761	(eshell-du-sum-directory, eshell/du):
56762	* lisp/eshell/esh-util.el (eshell-read-passwd)
56763	(eshell-read-hosts):
56764	* lisp/files.el (remote-file-name-inhibit-cache)
56765	(find-file-noselect, insert-file-1, dir-locals-find-file)
56766	(dir-locals-read-from-dir, backup-buffer)
56767	(file-ownership-preserved-p, copy-directory)
56768	(read-file-modes):
56769	* lisp/find-lisp.el (find-lisp-format):
56770	* lisp/gnus/gnus-agent.el (gnus-agent-unfetch-articles)
56771	(gnus-agent-read-agentview, gnus-agent-expire-group-1)
56772	(gnus-agent-request-article, gnus-agent-regenerate-group)
56773	(gnus-agent-update-files-total-fetched-for)
56774	(gnus-agent-update-view-total-fetched-for):
56775	* lisp/gnus/gnus-cache.el (gnus-cache-read-active)
56776	(gnus-cache-update-file-total-fetched-for)
56777	(gnus-cache-update-overview-total-fetched-for):
56778	* lisp/gnus/gnus-cloud.el (gnus-cloud-file-new-p):
56779	* lisp/gnus/gnus-score.el (gnus-score-score-files):
56780	* lisp/gnus/gnus-start.el (gnus-save-newsrc-file)
56781	(gnus-master-read-slave-newsrc):
56782	* lisp/gnus/gnus-sum.el (gnus-summary-import-article):
56783	* lisp/gnus/gnus-util.el (gnus-file-newer-than)
56784	(gnus-cache-file-contents):
56785	* lisp/gnus/mail-source.el (mail-source-delete-old-incoming)
56786	(mail-source-callback, mail-source-movemail):
56787	* lisp/gnus/nneething.el (nneething-create-mapping)
56788	(nneething-make-head):
56789	* lisp/gnus/nnfolder.el (nnfolder-read-folder):
56790	* lisp/gnus/nnheader.el (nnheader-file-size)
56791	(nnheader-insert-nov-file):
56792	* lisp/gnus/nnmail.el (nnmail-activate):
56793	* lisp/gnus/nnmaildir.el (nnmaildir--group-maxnum)
56794	(nnmaildir--new-number, nnmaildir--update-nov)
56795	(nnmaildir--scan, nnmaildir-request-scan)
56796	(nnmaildir-request-update-info)
56797	(nnmaildir-request-expire-articles):
56798	* lisp/gnus/nnmh.el (nnmh-request-list-1)
56799	(nnmh-request-expire-articles, nnmh-update-gnus-unreads):
56800	* lisp/gnus/nnml.el (nnml-request-expire-articles):
56801	* lisp/gnus/spam-stat.el (spam-stat-save, spam-stat-load)
56802	(spam-stat-process-directory, spam-stat-test-directory):
56803	* lisp/ido.el (ido-directory-too-big-p)
56804	(ido-file-name-all-completions):
56805	* lisp/image-dired.el (image-dired-get-thumbnail-image)
56806	(image-dired-create-thumb-1):
56807	* lisp/info.el (info-insert-file-contents):
56808	* lisp/ls-lisp.el (ls-lisp-insert-directory)
56809	(ls-lisp-handle-switches, ls-lisp-classify-file)
56810	(ls-lisp-format):
56811	* lisp/mail/blessmail.el:
56812	* lisp/mail/feedmail.el (feedmail-default-date-generator)
56813	(feedmail-default-message-id-generator):
56814	* lisp/mail/mailabbrev.el (mail-abbrevs-sync-aliases)
56815	(mail-abbrevs-setup):
56816	* lisp/mail/mspools.el (mspools-size-folder):
56817	* lisp/mail/rmail.el (rmail-insert-inbox-text):
56818	* lisp/mail/sendmail.el (sendmail-sync-aliases):
56819	* lisp/mh-e/mh-alias.el (mh-alias-tstamp):
56820	* lisp/net/ange-ftp.el (ange-ftp-parse-netrc)
56821	(ange-ftp-write-region, ange-ftp-file-newer-than-file-p)
56822	(ange-ftp-cf1):
56823	* lisp/net/eudcb-mab.el (eudc-mab-query-internal):
56824	* lisp/net/eww.el (eww-read-bookmarks):
56825	* lisp/net/netrc.el (netrc-parse):
56826	* lisp/net/newst-backend.el (newsticker--image-get):
56827	* lisp/nxml/rng-loc.el (rng-get-parsed-schema-locating-file):
56828	* lisp/obsolete/fast-lock.el (fast-lock-save-cache):
56829	* lisp/obsolete/vc-arch.el (vc-arch-state)
56830	(vc-arch-diff3-rej-p):
56831	* lisp/org/ob-eval.el (org-babel--shell-command-on-region):
56832	* lisp/org/org-attach.el (org-attach-commit):
56833	* lisp/org/org-macro.el (org-macro-initialize-templates):
56834	* lisp/org/org.el (org-babel-load-file)
56835	(org-file-newer-than-p):
56836	* lisp/org/ox-html.el (org-html-format-spec):
56837	* lisp/org/ox-publish.el (org-publish-find-date)
56838	(org-publish-cache-ctime-of-src):
56839	* lisp/pcmpl-gnu.el (pcomplete/tar):
56840	* lisp/pcmpl-rpm.el (pcmpl-rpm-packages):
56841	* lisp/play/cookie1.el (cookie-snarf):
56842	* lisp/progmodes/cmacexp.el (c-macro-expansion):
56843	* lisp/ps-bdf.el (bdf-file-mod-time):
56844	* lisp/server.el (server-ensure-safe-dir):
56845	* lisp/simple.el (shell-command-on-region):
56846	* lisp/speedbar.el (speedbar-item-info-file-helper)
56847	(speedbar-check-obj-this-line):
56848	* lisp/thumbs.el (thumbs-cleanup-thumbsdir):
56849	* lisp/time.el (display-time-mail-check-directory)
56850	(display-time-file-nonempty-p):
56851	* lisp/url/url-cache.el (url-is-cached):
56852	* lisp/url/url-file.el (url-file-asynch-callback):
56853	* lisp/vc/diff-mode.el (diff-delete-if-empty):
56854	* lisp/vc/pcvs-info.el (cvs-fileinfo-from-entries):
56855	* lisp/vc/vc-bzr.el (vc-bzr-state-heuristic):
56856	* lisp/vc/vc-cvs.el (vc-cvs-checkout-model)
56857	(vc-cvs-state-heuristic, vc-cvs-merge-news)
56858	(vc-cvs-retrieve-tag, vc-cvs-parse-status, vc-cvs-parse-entry):
56859	* lisp/vc/vc-hg.el (vc-hg--slurp-hgignore-1)
56860	(vc-hg--ignore-patterns-valid-p)
56861	(vc-hg--cached-dirstate-search, vc-hg-state-fast):
56862	* lisp/vc/vc-hooks.el (vc-after-save):
56863	* lisp/vc/vc-rcs.el (vc-rcs-workfile-is-newer):
56864	* lisp/vc/vc-svn.el (vc-svn-merge-news, vc-svn-parse-status):
56865	* lisp/vc/vc.el (vc-checkout, vc-checkin, vc-revert-file):
56866	* lisp/xdg.el (xdg-mime-apps):
56867	Prefer (file-attribute-size A) to (nth 7 A), and similarly
56868	for other file attributes accessors.
56869	* doc/lispref/files.texi (File Attributes):
56870	* doc/lispref/intro.texi (Version Info):
56871	* doc/lispref/os.texi (Idle Timers):
56872	* lisp/erc/erc.el (erc-string-to-emacs-time):
56873	* lisp/files.el (file-attribute-access-time)
56874	(file-attribute-modification-time)
56875	(file-attribute-status-change-time):
56876	* lisp/net/tramp-compat.el:
56877	(tramp-compat-file-attribute-modification-time)
56878	(tramp-compat-file-attribute-size):
56879	* src/buffer.c (syms_of_buffer):
56880	* src/editfns.c (Fget_internal_run_time):
56881	* src/fileio.c (Fvisited_file_modtime)
56882	(Fset_visited_file_modtime):
56883	* src/keyboard.c (Fcurrent_idle_time):
56884	* src/process.c (Fprocess_attributes):
56885	Defer implementation details about timestamp format to the
56886	section that talks about timestamp format, to make it easier
56887	to change the documentation later if timestamp formats are
56888	extended.
56889	* lisp/gnus/gnus-util.el (gnus-file-newer-than):
56890	* lisp/speedbar.el (speedbar-check-obj-this-line):
56891	* lisp/vc/vc-rcs.el (vc-rcs-workfile-is-newer):
56892	Prefer time-less-p to doing it by hand.
56893	* lisp/ls-lisp.el (ls-lisp-format): Inode numbers are no longer conses.
56894	* lisp/vc/vc-bzr.el (vc-bzr-state-heuristic):
56895	Use eql, not eq, to compare integers that might be bignums.
56896	* lisp/org/ox-publish.el (org-publish-cache-ctime-of-src):
56897	Prefer float-time to doing time arithmetic by hand.
56898
568992018-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
56900
56901	* doc/emacs/maintaining.texi: Fix one more occurrence of `next-file`
56902
569032018-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
56904
56905	* lisp/play/bubbles.el: Use lexical-binding
56906
569072018-09-22  Paul Eggert  <eggert@cs.ucla.edu>
56908
56909	Round bignums consistently with other integers
56910
56911	* src/bignum.c (mpz_bufsize): New function.
56912	(bignum_bufsize): Use it.
56913	(mpz_get_d_rounded): New function.
56914	(bignum_to_double): Use it.
56915	* src/bignum.c (bignum_to_double):
56916	* src/data.c (bignum_arith_driver):
56917	When converting bignums to double, round instead of
56918	truncating, to be consistent with what happens with fixnums.
56919	* test/src/floatfns-tests.el (bignum-to-float): Test rounding.
56920
569212018-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
56922
56923	Complement to last commit
56924
569252018-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
56926
56927	* lisp/multifile.el: New file, extracted from etags.el
56928
56929	The main motivation for this change was the introduction of
56930	project-query-replace.  dired's multi-file query&replace was implemented
56931	on top of etags.el even though it did not use TAGS in any way, so I moved
56932	this generic multifile code into its own package, with a nicer interface,
56933	and then used that in project.el.
56934
56935	* lisp/progmodes/project.el (project-files): New generic function.
56936	(project-search, project-query-replace): New commands.
56937
56938	* lisp/dired-aux.el (dired-do-search, dired-do-query-replace-regexp):
56939	Use multifile.el instead of etags.el.
56940
56941	* lisp/progmodes/etags.el: Remove redundant :groups.
56942	(next-file-list): Remove var.
56943	(tags-loop-revert-buffers): Make it an obsolete alias.
56944	(next-file): Don't autoload (it can't do anything useful before some
56945	other etags.el function setup the multifile operation).
56946	(tags--all-files): New function, extracted from next-file.
56947	(tags-next-file): Rename from next-file.
56948	Rewrite using tags--all-files and multifile-next-file.
56949	(next-file): Keep it as an obsolete alias.
56950	(tags-loop-operate, tags-loop-scan): Mark as obsolete.
56951	(tags--compat-files, tags--compat-initialize): New function.
56952	(tags-loop-continue): Rewrite using multifile-continue.  Mark as obsolete.
56953	(tags--last-search-operate-function): New var.
56954	(tags-search, tags-query-replace): Rewrite using multifile.el.
56955
56956	* lisp/emacs-lisp/generator.el (iter-end-of-sequence): Use 'define-error'.
56957	(iter-make): New macro.
56958	(iter-empty): New iterator.
56959
56960	* lisp/menu-bar.el (menu-bar-search-menu, menu-bar-replace-menu):
56961	tags-loop-continue -> multifile-continue.
56962
569632018-09-21  Paul Eggert  <eggert@cs.ucla.edu>
56964
56965	Fix (+ bignum float) bug
56966
56967	* src/data.c (bignum_arith_driver): Fix typo: missing ‘return’.
56968	* test/src/data-tests.el (data-tests-bignum): Test for the typo.
56969
569702018-09-21  Paul Eggert  <eggert@cs.ucla.edu>
56971
56972	Fix ambiguity in nil DST flag
56973
56974	Formerly nil meant both that DST was not in effect and that
56975	the DST flag was unknown, and different functions interpreted
56976	the flag differently.  Now the meaning is consistently nil for
56977	DST not in effect, and -1 for DST flag not known.
56978	* doc/lispref/os.texi (Time Conversion): The DST slot is
56979	now three-valued, not two-.
56980	* doc/misc/emacs-mime.texi (time-date): Adjust to new behavior.
56981	* etc/NEWS: Mention this.
56982	* lisp/calendar/parse-time.el (parse-time-string):
56983	* src/editfns.c (Fdecode_time):
56984	Return -1 for unknown DST flag.
56985	* test/lisp/calendar/parse-time-tests.el (parse-time-tests):
56986	Adjust tests to match new behavior, and add a new
56987	test for nil vs -1.
56988
569892018-09-21  Philipp Stephani  <phst@google.com>
56990
56991	Avoid an overflow error in emacs-module.c
56992
56993	* src/emacs-module.c (Fmodule_load): Allow creating a bignum
56994	to avoid overflow error
56995
569962018-09-21  Philipp Stephani  <phst@google.com>
56997
56998	Use new function overflow_error in a few places
56999
57000	* src/emacs-module.c (module_make_global_ref, module_funcall)
57001	(module_make_string, Fmodule_load):
57002	* src/json.c (json_to_lisp): Use overflow_error.
57003
570042018-09-21  Philipp Stephani  <phst@google.com>
57005
57006	Support bignums when serializing JSON
57007
57008	* src/json.c (lisp_to_json): Support bignums.
57009	* test/src/json-tests.el (json-serialize/bignum): New test.
57010
570112018-09-20  Paul Eggert  <eggert@cs.ucla.edu>
57012
57013	Bindat examples in source, not manual
57014
57015	* doc/lispref/processes.texi (Bindat Examples): Remove, fixing
57016	a FIXME in the manual.  The long example had bitrotted to some
57017	extent, compared to the more-up-to-date example in bindat.el
57018	commentary, which apparently what people were referring to
57019	anyway.  The short example was confusing and not that useful
57020	and will be obsolescent anyway if we change timestamp format.
57021
570222018-09-20  Tino Calancha  <tino.calancha@gmail.com>
57023
57024	Fix a previous commit
57025
57026	Suggested by Stefan Monnier here:
57027	https://lists.gnu.org/archive/html/emacs-devel/2018-09/msg00783.html
57028	* lisp/replace.el (occur--parse-occur-buffer): Since point is at the
57029	beginning of the buffer, use `point'.
57030
57031	(occur-revert-function): Prefer `pcase-let' and `point-min'.
57032	Check whether `region-start' or `region-end' are non-nil.
57033
570342018-09-20  Glenn Morris  <rgm@gnu.org>
57035
57036	Merge from origin/emacs-26
57037
57038	d28d54c (origin/emacs-26) More accurate docs for 'text-char-description'
57039	b3baf99 Document synchronous behavior of eshell/make (Bug#32513)
57040	98544ea Fix bs-show with wide characters (Bug#17822)
57041	85af51b Improve Custom menu labels for 2 options
57042	72a2a36 Improve wording of last change in dired-x.texi
57043	d4fa83b Fix GnuTLS test suite with GnuTLS versions 3.4.x
57044	b5bee6b Fix build with gnutls versions 3.0 to 3.2 (Bug#32446)
57045	67eb80e ; * etc/enriched.txt (hanging-indents): Remove extra indent.
57046	c71cfb7 Fix the Bubbles game on TTY frames
57047	3bbf21b Add choice to reshow certificate information (Bug#31877)
57048	6f2c471 * src/alloc.c (Fbool_vector, Flist, Fvector): Doc tweak.
57049	39eecb3 * src/alloc.c (vector): Fix grammatical error in doc string: ...
57050
570512018-09-20  Bob Newell  <bobnewell@bobnewell.net>
57052
57053	New input methods hawaiian-postfix and hawaiian-prefix
57054
57055	* lisp/leim/quail/latin-pre.el ("hawaiian-prefix"):
57056	* lisp/leim/quail/latin-post.el ("hawaiian-postfix"): New
57057	input methods.  (Bug#32714)
57058	* etc/NEWS: Mention the new input methods.
57059
570602018-09-18  Tino Calancha  <tino.calancha@gmail.com>
57061
57062	Fix bug 32543
57063
57064	Store the region and orig line into the *Occur* header line.
57065	Retrieve this information in `occur-revert-function'.
57066	* lisp/replace.el (occur--parse-occur-buffer): New defun.
57067	(occur-revert-function): Use it.
57068	(occur-engine): Store region and original position as text properties
57069	into the *Occur* header line.
57070	* lisp/replace.el (occur-engine): Add sensible default values for
57071	(occur--orig-line and nlines.
57072
570732018-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
57074
57075	* lisp/emacs-lisp/advice.el: Only use defmacro when needed
57076
57077	(ad-get-advice-info): Mark it inlinable.
57078	(ad-get-advice-info-macro): Make it an obsolete alias.
57079	(ad-copy-advice-info, ad-is-advised, ad-get-advice-info-field)
57080	(ad-find-advice, ad-macrofy, ad-lambdafy, ad-lambda-p, ad-advice-p)
57081	(ad-compiled-p, ad-compiled-code, ad-get-cache-definition)
57082	(ad-get-cache-id, ad-set-cache): Turn macros into defsubsts.
57083	(ad-defadvice-flags): Make it into a plain list.
57084	(ad-set-advice-info-field): Apply a bit of CSE.
57085
570862018-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
57087
57088	* lisp/emacs-lisp/advice.el (ad-advised-functions): Make it a plain list
57089
57090	(ad-read-advised-function, ad-do-advised-functions): Adjust accordingly.
57091	(ad-pushnew-advised-function, ad-pop-advised-function): Also make them
57092	into functions.
57093
570942018-09-16  Paul Eggert  <eggert@cs.ucla.edu>
57095
57096	Move current_timespec decl to timespec.h
57097
57098	This change was motivated by the desire to remove the weird
57099	dependency of lib-src/profile.o on src/systime.h.  profile.c
57100	included systime.h only for current_timespec, and this
57101	inclusion required systime.h to have #ifdef emacs in multiple
57102	places and complicated further changes I have in mind.
57103	The current_timespec decl belongs in timespec.h anyway,
57104	and the main effect of this change is to move it there.
57105	* lib-src/profile.c (INLINE): Remove.
57106	Include timespec.h, not systime.h.
57107	* lib/gettime.c (gettime): Prefer clock_gettime to nanotime,
57108	and don’t worry about it failing on a CLOCK_REALTIME arg.
57109	POSIX requires it to succeed and I don’t know of any
57110	counterexamples where the fallbacks would work.
57111	(current_timespec): Move here from src/systime.h.
57112	Nowadays it seems to be better to not have this function
57113	be inline.
57114	* lib/timespec.h: Include arg-nonnull.h.
57115	(current_timespec): New declaration.
57116	(gettime, settime): Declare args to be nonnull.
57117	* lib/gettime.c, lib/timespec.h: Copy from Gnulib.
57118	* src/systime.h: Simplify by assuming ‘emacs’ is defined,
57119	which it always is now.
57120	(current_timespec): Move to lib/timespec.h.
57121
571222018-09-16  Stefan Monnier  <monnier@iro.umontreal.ca>
57123
57124	* lisp/delsel.el (minibuffer-keyboard-quit): Remove old redundant code.
57125
57126	The various minibuffer maps all inherit from minibuffer-local-map nowadays,
57127	so a single binding in it is all it takes.
57128
571292018-09-16  Noam Postavsky  <npostavs@gmail.com>
57130
57131	Clarify condition-case docstring
57132
57133	* src/eval.c (Fcondition_case): Note that it handles non-error symbols
57134	too.
57135
571362018-09-16  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
57137
57138	Update pconf for compile.el mode-line-process changes
57139
57140	* lisp/cedet/ede/pconf.el (ede-proj-configure-synchronize): Check the
57141	first list element of mode-line-process (Bug#32564).
57142
571432018-09-16  Paul Eggert  <eggert@cs.ucla.edu>
57144
57145	* src/thread.h: Do not include systime.h; no longer needed.
57146
571472018-09-16  Paul Eggert  <eggert@cs.ucla.edu>
57148
57149	Don’t assume obsolescent setitimer function
57150
57151	* src/atimer.c (start_atimer, debug_timer_callback):
57152	Don’t assume support for setitimer merely because struct
57153	itimerspec works.  POSIX no longer requires support for the
57154	obsolescent setitimer function.
57155
571562018-09-15  Paul Eggert  <eggert@cs.ucla.edu>
57157
57158	Simplify get_up_time on GNU/Linux
57159
57160	* src/sysdep.c (get_up_time) [GNU_LINUX && HAVE_LONG_LONG_INT]:
57161	Omit unused locals.
57162
571632018-09-15  Paul Eggert  <eggert@cs.ucla.edu>
57164
57165	Go back to old method for nnmaildir names
57166
57167	* lisp/gnus/nnmaildir.el (nnmaildir-request-accept-article):
57168	Omit leading 0s after "M" in file name.
57169	Problem reported by Glenn Morris in:
57170	        https://lists.gnu.org/r/emacs-devel/2018-09/msg00660.html
57171
571722018-09-15  Paul Eggert  <eggert@cs.ucla.edu>
57173
57174	Fix icalendar tests to match new behavior
57175
57176	* test/lisp/calendar/icalendar-tests.el (icalendar--create-uid):
57177	Do not intrude into or rely upon undocumented internal
57178	implementation details of icalendar--create-uid.
57179	Problem reported by Glenn Morris in:
57180	https://lists.gnu.org/r/emacs-devel/2018-09/msg00660.html
57181
571822018-09-15  Glenn Morris  <rgm@gnu.org>
57183
57184	Merge from origin/emacs-26
57185
57186	e133b63 (origin/emacs-26) Avoid adverse side effects of fixing bug#21824
57187	cc8f334 Document changes called out in NEWS
57188	20ecc52 ; * etc/NEWS: Document recent change in 'thing-at-point'.
57189	1fc5283 ; INSTALL: Fix a typo in the last commit.
57190	24f240d Tiny doc updates re yum/dnf etc
57191	41c2d25 Remove unused variable
57192	1e3b3fa Fix (thing-at-point 'list) regression (Bug#31772)
57193	219893a Clarify meaning of '*'
57194	41cdda2 * etc/PROBLEMS: Document Ubuntu 16.04 issue.
57195	1c22f03 Increase default value for imenu-auto-rescan-maxout
57196	ee84389 Improve recent change to ELisp manual
57197	ff374e4 * doc/lispref/display.texi (SVG Images): Improve wording.
57198	3a0caf6 * doc/lispref/display.texi (SVG Images): Fix a typo.  (Bug#32...
57199
57200	Conflicts:
57201		doc/lispref/lists.texi
57202		etc/NEWS
57203
572042018-09-15  Noam Postavsky  <npostavs@gmail.com>
57205
57206	Don't call modification hooks unprepared
57207
57208	Inhibit modification hooks when performing message coalescing because
57209	in that case, we aren't doing the necessary preparation for running
57210	modification hooks (i.e., we pass PREPARE=false for the insert_1_both
57211	and del_range_both calls).  See also Bug#30823 and Bug#21824.
57212	* src/xdisp.c (message_dolog): Let-bind inhibit-modification-hooks
57213	to t around del_range_both calls.
57214
572152018-09-15  Wenjamin Petrenko  <wenjamin.petrenko@yandex.ru>  (tiny change)
57216
57217	Make 'filesets-save-config' save filesets added by 'filesets-add-buffer'
57218
57219	* lisp/filesets.el (filesets-set-config): Use 'customize-set-variable'
57220	so that filesets are saved by 'customize-save-customized' in
57221	'filesets-save-config'.  (Bug#20630)
57222
572232018-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
57224
57225	* lisp/progmodes/idlw-shell.el: Use lexical-binding
57226
57227	(idlwave-shell-source-frame): Remove unused var 'frame'.
57228	(idlwave-shell): Remove unused arg 'quick'.
57229	(idlwave-shell-complete-filename, idlwave-shell-edit-default-command-line)
57230	(idlwave-shell-retall, idlwave-shell-closeall): Remove unused arg 'arg'.
57231	(idlwave-shell-move-to-bp): Remove unused var 'got-bp'.
57232	(zmacs-regions): Declare.
57233	(idlwave-shell-update-bp-overlays): Remove unused var 'win'.
57234	(idlwave-shell-delete-expression-overlay)
57235	(idlwave-shell-mouse-nop): Delete function.  Use 'ignore' instead.
57236	(idlwave-shell-delete-output-overlay): Ignore 'ignore' commands rather
57237	than idlwave-shell-mouse-nop commands.
57238	(idlwave-shell-mode-map, idlwave-shell-electric-debug-mode-map):
57239	Move (part of) the initialization into the declaration.
57240	(idlwave-shell-electric-debug-mode-on-hook)
57241	(idlwave-shell-electric-debug-mode-off-hook): Keep them empty, move
57242	code into the minor mode's definition instead.
57243	(idlwave-shell-electric-debug-mode): Don't use advice needlessly.
57244
572452018-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
57246
57247	* lisp/progmodes/ada-mode.el (comment-region): Avoid defadvice
57248
57249	Don't load 'advice' if it won't be used!
57250
572512018-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
57252
57253	* lisp/eshell/em-dirs.el (eshell-expand-multiple-dots): Avoid defadvice.
57254
572552018-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
57256
57257	* lisp/mail/feedmail.el: Use lexical-binding
57258
57259	(feedmail-queue-buffer-file-name): Improve advising example.
57260	(feedmail-vm-mail-mode): Improve auto-mode-alist example.
57261	(feedmail-queue-runner-prompt): Remove unused function.
57262
572632018-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
57264
57265	* lisp/progmodes/js.el (js--fill-c-advice): New function
57266
57267	(c-forward-sws, c-backward-sws, c-beginning-of-macro): Use it.
57268	(js-fill-paragraph): Rename from js-c-fill-paragraph.
57269
572702018-09-13  Paul Eggert  <eggert@cs.ucla.edu>
57271
57272	Simplify use of timestamps
57273
57274	* lisp/calendar/icalendar.el (icalendar--create-uid):
57275	* lisp/gnus/nnmaildir.el (nnmaildir-request-accept-article):
57276	Simplify by using format-time-string.
57277	* lisp/gnus/nnmaildir.el (nnmaildir--scan):
57278	Simplify by using float-time and time-less-p.
57279
572802018-09-13  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
57281
57282	Fix (floor 54043195528445955 3.0) bug
57283
57284	* src/floatfns.c (rounding_driver): Fix rounding error
57285	that can occur when both args have values exactly
57286	representable as integers but at least one arg is a float.
57287	* test/src/floatfns-tests.el (big-round): New test.
57288
572892018-09-13  Stephen Berman  <stephen.berman@gmx.net>
57290
57291	Fix wdired handling of symlinks when restoring filename property
57292
57293	* lisp/wdired.el (wdired--restore-dired-filename-prop): Use
57294	dired-permission-flags-regexp instead of dired-filename to test
57295	whether the file is a symlink, since calling file-symlink-p on the
57296	latter may fail in wdired-mode (bug#32673).
57297
572982018-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
57299
57300	(viper-read-key, viper-read-key-sequence): Remove
57301
57302	Ever since the time-dependent ESC handling was moved to input-decode-map,
57303	viper-read-key-sequence has been obsolete.  Clean up accordingly.
57304
57305	* lisp/emulation/viper-keym.el: Use lexical-binding.
57306	(viper-overriding-map): Remove.
57307
57308	* lisp/emulation/viper-macs.el: Use lexical-binding and 'read-key'.
57309
57310	* lisp/emulation/viper-util.el: Use lexical-binding.
57311	(viper-read-key, viper-read-key-sequence): Remove.
57312
57313	* lisp/emulation/viper.el (viper-non-hook-settings): Remove obsolete advice.
57314
573152018-09-12  Katsumi Yamaoka  <yamaoka@jpl.org>
57316
57317	No need to run gnus-article-highlight (bug#32706)
57318
57319	* lisp/gnus/deuglify.el (gnus-outlook-display-article-buffer):
57320	No need to run gnus-article-highlight (bug#32706).
57321
573222018-09-12  Juri Linkov  <juri@linkov.net>
57323
57324	* lisp/vc/vc-git.el (vc-git-grep): Set dir to default-directory
57325
57326	when it's not available (like it's implemented in lgrep/rgrep)
57327	to prevent error in case of `C-u C-u vc-git-grep'.
57328
573292018-09-12  Juri Linkov  <juri@linkov.net>
57330
57331	* lisp/dired-x.el (dired-jump): Support archive-subfile-mode
57332
57333	exactly like tar-subfile-mode is already supported.
57334
573352018-09-12  Juri Linkov  <juri@linkov.net>
57336
57337	* lisp/simple.el (next-error-no-select): Set display-buffer-overriding-action
57338
57339	to display-buffer-reuse-window (bug#32607).
57340
573412018-09-12  Katsumi Yamaoka  <yamaoka@jpl.org>
57342
57343	Don't highlight article if gnus-visual-p is nil (bug#32706)
57344
57345	* lisp/gnus/deuglify.el (gnus-outlook-display-article-buffer):
57346	Don't highlight article if gnus-visual-p is nil (bug#32706).
57347
573482018-09-11  Filipp Gunbin  <fgunbin@fastmail.fm>
57349
57350	Fix incorrect spelling of dabbrev-ignored-buffer-regexps in docstrings.
57351
57352	* lisp/dabbrev.el (dabbrev-check-all-buffers, dabbrev-expand): Fix docstrings.
57353
573542018-09-11  Paul Eggert  <eggert@cs.ucla.edu>
57355
57356	Minor rounding_driver simplification
57357
57358	* src/floatfns.c (rounding_driver): Omit last arg, which is
57359	now unused.  All callers changed.
57360
57361	Signal overflow-error for bignum overflow
57362
573632018-09-11  Paul Eggert  <eggert@cs.ucla.edu>
57364
57365	Fix (round 1e+INF) core dump
57366
57367	* src/bignum.c (double_to_integer): Signal an error
57368	if D cannot be converted, instead of dumping core.
57369	* test/src/floatfns-tests.el (special-round): New test.
57370
573712018-09-11  Paul Eggert  <eggert@cs.ucla.edu>
57372
57373	Use overflow-error for bignum overflow
57374
57375	This better corresponds to what emacs-26 did in the
57376	rare cases where it checked for integer overflow.
57377	* src/alloc.c (range_error): Remove.
57378	All uses changed to overflow_error.
57379	* src/eval.c (overflow_error): New function.
57380
573812018-09-11  Michael Albinus  <michael.albinus@gmx.de>
57382
57383	Precise Secret Service API in auth.texi (Bug#29575)
57384
57385	* doc/misc/auth.texi (Secret Service API): Item labels are not
57386	unique.  Document this.  (Bug#29575)
57387
573882018-09-10  Paul Eggert  <eggert@cs.ucla.edu>
57389
57390	Adjust to TIMESPEC_HZ renaming
57391
57392	Adjust to lib/timespec.h’s renaming of TIMESPEC_RESOLUTION and
57393	LOG10_TIMESPEC_RESOLUTION to TIMESPEC_HZ and
57394	LOG10_TIMESPEC_HZ.  The old names were misnomers.
57395	All uses changed.
57396
573972018-09-10  Paul Eggert  <eggert@cs.ucla.edu>
57398
57399	Update from Gnulib
57400
57401	This incorporates:
57402	2018-09-10 timespec: fix resolution confusion
57403	2018-09-09 mktime: simplify in prep for glibc merge
57404	2018-09-07 intprops: minor clarification of code
57405	2018-09-06 stddef: Override max_align_t on NetBSD 8.0/x86
57406	2018-09-06 fcntl: Fix F_DUPFD_CLOEXEC behaviour on Haiku
57407	2018-09-06 strtoll, strtoull: Rely on limits-h module
57408	2018-09-06 limits-h: Provide numerical limits macros
57409	2018-09-06 fcntl: Don't access nonexistent optional argument
57410	2018-09-02 mktime: fix unlikely race+overflow bug
57411	2018-08-31 mktime, timegm: simplify glibc time64_t
57412	2018-08-31 mktime, timegm: simplify merge to glibc
57413	* build-aux/config.guess, build-aux/config.sub:
57414	* lib/dtotimespec.c, lib/fcntl.c, lib/intprops.h:
57415	* lib/limits.in.h, lib/mktime-internal.h, lib/mktime.c:
57416	* lib/stat-time.h, lib/strtol.c, lib/timegm.c:
57417	* lib/timespec-add.c, lib/timespec-sub.c, lib/timespec.h:
57418	* lib/utimens.c, m4/limits-h.m4, m4/stddef_h.m4:
57419	Copy from Gnulib.
57420
574212018-09-10  Glenn Morris  <rgm@gnu.org>
57422
57423	Merge from origin/emacs-26
57424
57425	7efcdf7 (origin/emacs-26) Clarify completion text in the ELisp manual
57426	30b0b0e Fix handling of abbreviated control command in gdb-mi.el
57427	5cf282d Clarify documentation of functions reading character events
57428	96281c5 Record :version for built-in variables while dumping
57429	82160cf * src/process.c (connect_network_socket): Fix memory leak.  (...
57430	6c616e4 * Makefile.in (appdatadir): Use the non-obsolete location "me...
57431	9618e16 Better fix for bug#32550
57432	30d94e4 Fix Bug#32550
57433	57bcdc7 Don't call XGetGeometry for frames without outer X window (Bu...
57434	82fc6b6 * lisp/calculator.el: Fix doc typo.
57435	ddc7c64 Standardize calc bug reporting instructions
57436
57437	Conflicts:
57438		lisp/cus-start.el
57439
574402018-09-10  Glenn Morris  <rgm@gnu.org>
57441
57442	* lisp/thread.el: Remove more useless runtime requires.
57443
574442018-09-10  Glenn Morris  <rgm@gnu.org>
57445
57446	Remove useless requires of subr-x at runtime
57447
57448	* lisp/thread.el, lisp/net/nsm.el, lisp/erc/erc.el:
57449	Don't require subr-x at runtime.
57450
574512018-09-10  Karl Fogel  <kfogel@red-bean.com>
57452
57453	Fix build error: use string :version in defcustom
57454
57455	* lisp/textmodes/flyspell.el (flyspell-case-fold-duplications): Use a
57456	  string value for the :version keyword to `defcustom'.  Otherwise,
57457	  building Emacs will fail with an error like this:
57458
57459	    Scanning ./textmodes for custom
57460	    Scanning ./url for custom
57461	    Scanning ./vc for custom
57462	    Generating ./cus-load.el...
57463	    Version must be a string
57464	    make[2]: *** [Makefile:152: cus-load.el] Error 255
57465
57466	This follows up to Reuben Thomas's commit 61f3a4b4fc of 10 Sep 2018.
57467
574682018-09-10  Paul Eggert  <eggert@cs.ucla.edu>
57469
57470	Fix misleading name ‘double_to_bignum’
57471
57472	* src/bignum.c (double_to_integer): Rename from double_to_bignum,
57473	since the result is not necessarily a bignum.  All uses changed.
57474
574752018-09-10  Paul Eggert  <eggert@cs.ucla.edu>
57476
57477	* src/charset.c (Fencode_char): Tweak comment.
57478
574792018-09-10  Reuben Thomas  <rrt@sc3d.org>
57480
57481	Add flyspell option to ignore duplicates of different case
57482
57483	* lisp/textmodes/flyspell.el (flyspell-case-fold-duplications): Add
57484	  option.
57485
574862018-09-10  Eli Zaretskii  <eliz@gnu.org>
57487
57488	Avoid compiler warnings due to get_proc_addr
57489
57490	* src/w32common.h (get_proc_addr): Add prototype, to shut up
57491	GCC compilation warning.  Reported by Martin Rudalics
57492	<rudalics@gmx.at>.
57493
574942018-09-10  Stefan Monnier  <monnier@iro.umontreal.ca>
57495
57496	* src/charset.c (Fencode_char): Explain when/why bignums are used
57497
574982018-09-10  Martin Rudalics  <rudalics@gmx.at>
57499
57500	Fix last change of 'run_window_size_change_functions'
57501
57502	* src/window.c (run_window_size_change_functions): Fix two
57503	type mixups in last change.  Reported by Michael Albinus
57504	<michael.albinus@gmx.de> on emacs-devel.
57505
575062018-09-10  Martin Rudalics  <rudalics@gmx.at>
57507
57508	Handle buffer-local 'window-size-change-functions' specially (Bug#32637)
57509
57510	* src/window.c (run_window_size_change_functions): Run a
57511	buffer-local value once per each frame and only if at least
57512	one window showing the buffer on that frame has changed its
57513	size.  (Bug#32637)
57514	* doc/lispref/windows.texi (Window Hooks): Describe new
57515	behavior of buffer-local 'window-size-change-functions'.
57516
575172018-09-09  Gemini Lasswell  <gazally@runbox.com>
57518
57519	Merge branch 'scratch/list-threads'
57520
575212018-09-09  Gemini Lasswell  <gazally@runbox.com>
57522
57523	Use thread-live-p instead of obsolete thread-alive-p
57524
57525	* lisp/thread.el (thread-list--get-status)
57526	(thread-list--send-signal, thread-list-pop-to-backtrace)
57527	(thread-list-backtrace--revert-hook-function)
57528	(thread-list-backtrace--insert-header): Use thread-live-p instead of
57529	thread-alive-p.
57530
575312018-09-09  Gemini Lasswell  <gazally@runbox.com>
57532
57533	Improve documentation of thread list buffer
57534
57535	* doc/lispref/threads.texi (The Thread List): Cross-reference
57536	'Basic Thread Functions'.  Use defvar for thread-list-refresh-seconds.
57537	Improve descriptions of the backtrace and signal commands.
57538
575392018-09-09  Gemini Lasswell  <gazally@runbox.com>
57540
57541	Add tests for list-threads and the *Threads* buffer
57542
57543	* test/lisp/thread-tests.el: New file.
57544
575452018-09-09  Gemini Lasswell  <gazally@runbox.com>
57546
57547	Add check in list-threads for --without-threads configuration
57548
57549	* lisp/thread.el (list-threads): Signal an error if the Emacs configuration
57550	doesn't have threads.
57551
575522018-09-09  Gemini Lasswell  <gazally@runbox.com>
57553
57554	Document list-threads and its buffer
57555
57556	* doc/lispref/threads.texi (Threads): Add menu item.
57557	(The Thread List): New node.
57558	* doc/lispref/elisp.texi (Top): Add menu item.
57559
575602018-09-09  Gemini Lasswell  <gazally@runbox.com>
57561
57562	Show backtraces of threads from thread list buffer
57563
57564	* src/eval.c (backtrace_thread_p, backtrace_thread_top)
57565	(backtrace_thread_next, Fbacktrace_frames_from_thread): New functions.
57566	* lisp/thread.el (thread-list-mode-map): Add keybinding and
57567	menu item for 'thread-list-pop-to-backtrace'.
57568	(thread-list-mode): Make "Thread Name" column wide enough
57569	for the result of printing a thread with no name with 'prin1'.
57570	(thread-list--get-entries): Use 'thread-list--name'.
57571	(thread-list--send-signal): Remove unnecessary calls to 'threadp'.
57572	(thread-list-backtrace--thread): New variable.
57573	(thread-list-pop-to-backtrace): New command.
57574	(thread-list-backtrace--revert-hook-function)
57575	(thread-list--make-backtrace-frame)
57576	(thread-list-backtrace--insert-header, thread-list--name): New
57577	functions.
57578
575792018-09-09  Gemini Lasswell  <gazally@runbox.com>
57580
57581	Make small fixes to Edebug and debugger documentation
57582
57583	* doc/lispref/elisp.texi (Top): Update menu.
57584	* doc/lispref/edebug.texi (Edebug Misc): Index
57585	edebug-backtrace-show-instrumentation and
57586	edebug-backtrace-hide-instrumentation.
57587
575882018-09-09  Gemini Lasswell  <gazally@runbox.com>
57589
57590	Make list-threads refresh the *Threads* buffer if it already exists
57591
57592	* lisp/thread.el (list-threads): Call revert-buffer instead of waiting
57593	for the timer function to do it.
57594
575952018-09-09  Gemini Lasswell  <gazally@runbox.com>
57596
57597	Improve docstrings of thread-list functions
57598
57599	* lisp/thread.el (thread-list--timer-func): Change
57600	argument from 'buf' to 'buffer'.
57601	(thread-list--get-entries, thread-list--get-status): Improve
57602	docstring.
57603	(thread-list--send-signal): Change argument from 'sgnl' to
57604	'signal'.  Tell the user when the thread is no longer alive.
57605
576062018-09-09  Gemini Lasswell  <gazally@runbox.com>
57607
57608	Make lisp/thread.el the new home for thread-related Lisp functions
57609
57610	* lisp/emacs-lisp/thread-list.el: Remove.
57611	* lisp/emacs-lisp/thread.el: Remove.
57612	* lisp/thread.el: New file.
57613
576142018-09-09  Gemini Lasswell  <gazally@runbox.com>
57615
57616	Add list-threads command and thread-list-mode
57617
57618	* lisp/emacs-lisp/thread-list.el: New file.
57619
576202018-09-08  Eli Zaretskii  <eliz@gnu.org>
57621
57622	Fix documentation for conversion to bignums
57623
57624	* src/xselect.c (selection_data_to_lisp_data):
57625	* src/w32fns.c (Fw32_read_registry):
57626	* src/process.c (Fprocess_id):
57627	* src/font.c (Ffont_variation_glyphs, Finternal_char_font):
57628	* src/fns.c (Fsafe_length):
57629	* src/editfns.c (Fuser_uid, Fuser_real_uid, Fgroup_gid)
57630	(Fgroup_real_gid, Femacs_pid):
57631	* src/dired.c (Ffile_attributes):
57632	* src/charset.c (Fencode_char): Update commentary and doc
57633	strings for recent changes that produce bignums where
57634	previously cons cells of integers were produced.
57635
576362018-09-07  Paul Eggert  <eggert@cs.ucla.edu>
57637
57638	* src/puresize.h (BASE_PURESIZE): Bump to 2000000.
57639
57640	Needed on Fedora 28 x86.
57641
576422018-09-07  Paul Eggert  <eggert@cs.ucla.edu>
57643
57644	One more GC-aligned struct
57645
57646	* src/lisp.h (struct Lisp_Sub_Char_Table):
57647	Mark this with GCALIGNED_STRUCT, too.
57648
576492018-09-07  Paul Eggert  <eggert@cs.ucla.edu>
57650
57651	Fix overenthusiastic header size check
57652
57653	Problem reported by Eli Zaretskii in:
57654	https://lists.gnu.org/r/emacs-devel/2018-09/msg00222.html
57655	* doc/lispref/internals.texi (Garbage Collection):
57656	Document vector sizes and slot counts more accurately.
57657	* src/lisp.h: Omit header_size sanity check that was too picky.
57658	Add some less-picky checks.
57659
576602018-09-07  Eli Zaretskii  <eliz@gnu.org>
57661
57662	Read Windows OS info for report-emacs-bug from Registry
57663
57664	* lisp/w32-fns.el (w32--os-description): New function.
57665	* lisp/mail/emacsbug.el (report-emacs-bug--os-description):
57666	Use 'w32--os-description' instead of launching the
57667	'systeminfo' program, which can be very slow, and is also
57668	missing on versions of Windows before XP Professional.
57669
576702018-09-06  Paul Eggert  <eggert@cs.ucla.edu>
57671
57672	Shrink pseudovectors a bit
57673
57674	sizeof (struct Lisp_Marker) was 32 on x86, where 24 would do.
57675	Problem noted by Stefan Monnier in:
57676	https://lists.gnu.org/r/emacs-devel/2018-09/msg00165.html
57677	* src/bignum.h (struct Lisp_Bignum):
57678	* src/frame.h (struct frame):
57679	* src/lisp.h (struct Lisp_Vector, struct Lisp_Bool_Vector)
57680	(struct Lisp_Char_Table, struct Lisp_Hash_Table)
57681	(struct Lisp_Marker, struct Lisp_Overlay)
57682	(struct Lisp_Misc_Ptr, struct Lisp_User_Ptr)
57683	(struct Lisp_Finalizer, struct Lisp_Float)
57684	(struct Lisp_Module_Function):
57685	* src/process.h (struct Lisp_Process):
57686	* src/termhooks.h (struct terminal):
57687	* src/thread.h (struct thread_state, struct Lisp_Mutex)
57688	(struct Lisp_CondVar):
57689	* src/window.c (struct save_window_data):
57690	* src/window.h (struct window):
57691	* src/xterm.h (struct scroll_bar):
57692	* src/xwidget.h (struct xwidget, struct xwidget_view):
57693	Add GCALIGNED_STRUCT attribute.
57694	* src/lisp.h (GCALIGNED_UNION_MEMBER): Renamed from GCALIGNED_UNION.
57695	All uses changed.
57696	(GCALIGNED_STRUCT_MEMBER, GCALIGNED_STRUCT, GCALIGNED): New macros.
57697	All uses of open-coded GCALIGNED changed to use GCALIGNED.
57698	(union vectorlike_header): No longer GC-aligned.
57699	(PSEUDOVECSIZE): Yield 0 for pseudovectors without Lisp
57700	objects that place a member before where the first Lisp object
57701	member would be.
57702
577032018-09-06  Michael Albinus  <michael.albinus@gmx.de>
57704
57705	Fix Bug#31704
57706
57707	* lisp/eshell/esh-proc.el (eshell-gather-process-output): Do not
57708	let `expand-file-name' prefix remote file names with MS Windows
57709	volume letter.
57710
57711	* lisp/net/tramp.el (tramp-eshell-directory-change):
57712	Use `path-separator' as it does eshell.  (Bug#31704)
57713
577142018-09-06  Michael Albinus  <michael.albinus@gmx.de>
57715
57716	* test/lisp/autorevert-tests.el
57717
57718	(auto-revert-test02-auto-revert-deleted-file): Extend test.
57719
577202018-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
57721
57722	Fix timer.el minor rounding error
57723
57724	* lisp/emacs-lisp/timer.el (timer-next-integral-multiple-of-time):
57725	Fix rounding error by using integers rather than floats.
57726	* test/lisp/emacs-lisp/timer-tests.el (timer-test-multiple-of-time):
57727	New test.
57728
577292018-09-05  Stephen Gildea  <stepheng+emacs@gildea.com>
57730
57731	Do not call mh-next-msg from mh-junk-process-* fns
57732
57733	* lisp/mh-e/mh-junk.el (mh-junk-process-blacklist, mh-junk-process-whitelist): Do
57734	not call mh-next-msg.  Now that these functions are called from
57735	mh-execute-commands, they should not change the current message pointer.
57736	The calls to mh-next-msg are probably left over from when blacklist and
57737	whitelist message processing was done immediately.
57738
577392018-09-05  Paul Eggert  <eggert@cs.ucla.edu>
57740
57741	Improve (round FIXNUM FIXNUM) performance
57742
57743	* src/floatfns.c (rounding_driver):
57744	New arg fixnum_divide.  All callers changed.
57745	(ceiling2, floor2, truncate2, round2): New functions.
57746	Not that new, actually; these are essentially taken from Emacs 26.
57747	(Fceiling, Ffloor, Fround, Ftruncate): Use them.
57748
577492018-09-04  Paul Eggert  <eggert@cs.ucla.edu>
57750
57751	Fix format-time-string bignum bug
57752
57753	The problem can occur on 32-bit platforms with current timestamps.
57754	* src/editfns.c (disassemble_lisp_time, decode_time_components):
57755	Support seconds counts that are bignums.
57756	* test/src/editfns-tests.el (editfns-tests--have-leap-seconds):
57757	New function.
57758	(format-time-string-with-bignum-on-32-bit): New test.
57759
577602018-09-04  Paul Eggert  <eggert@cs.ucla.edu>
57761
57762	Simplify bignum->intmax conversion
57763
57764	* src/lisp.h (integer_to_intmax, integer_to_uintmax): New functions.
57765	* src/data.c (cons_to_unsigned, cons_to_signed)
57766	(arith_driver):
57767	* src/dbusbind.c (xd_extract_signed, xd_extract_unsigned):
57768	* src/dispnew.c (sit_for):
57769	* src/editfns.c (styled_format):
57770	* src/emacs-module.c (module_extract_integer):
57771	* src/fileio.c (file_offset):
57772	* src/font.c (font_unparse_xlfd, Fopen_font):
57773	* src/xdisp.c (calc_line_height_property):
57774	* src/process.c (handle_child_signal):
57775
577762018-09-04  Federico Tedin  <federicotedin@gmail.com>
57777
57778	Add variable vc-git-grep-template
57779
57780	* lisp/vc/vc-git.el (vc-git-grep-template): New variable, allows
57781	changing the default arguments passed to git-grep when using
57782	'vc-git-grep'.
57783	* etc/NEWS: Mention 'vc-git-grep-template'.  (Bug#32549)
57784
577852018-09-04  Noam Postavsky  <npostavs@gmail.com>
57786
57787	Handle non-error signals in emacsclient --eval (Bug#10989)
57788
57789	* lisp/server.el (server-process-filter): Handle any signal, not just
57790	errors.
57791
577922018-09-04  Noam Postavsky  <npostavs@gmail.com>
57793
57794	Allow t as a catch-all condition-case handler (Bug#24618)
57795
57796	* src/eval.c (find_handler_clause): Accept a handler of t as always
57797	matching.
57798	(Fcondition_case):
57799	* doc/lispref/control.texi (Handling Errors): Document this.
57800	* etc/NEWS: Announce it.
57801
578022018-09-04  Paul Eggert  <eggert@cs.ucla.edu>
57803
57804	Fix (round FLOAT BIGNUM) bug
57805
57806	* src/floatfns.c (rounding_driver): Fix bug when one
57807	argument is a float and the other is a bignum.
57808	* test/src/floatfns-tests.el (bignum-round): Test for the bug.
57809
578102018-09-04  Paul Eggert  <eggert@cs.ucla.edu>
57811
57812	Tweak nthcdr for bignum efficiency
57813
57814	* src/fns.c (Fnthcdr): Use mpz_tdiv_ui and mpz_tdiv_r
57815	instead of mpz_mod_ui and mpz_mod, as they are more efficient.
57816	Suggested by Pip Cet in:
57817	https://lists.gnu.org/r/emacs-devel/2018-09/msg00073.html
57818
578192018-09-04  Paul Eggert  <eggert@cs.ucla.edu>
57820
57821	Fix bignum initialization
57822
57823	Problem reported by Andy Moreton in:
57824	https://lists.gnu.org/r/emacs-devel/2018-09/msg00072.html
57825	and crystal-ball diagnosis by Eli Zaretskii in:
57826	https://lists.gnu.org/r/emacs-devel/2018-09/msg00075.html
57827	* src/alloc.c (xrealloc_for_gmp, xfree_for_gmp): Move to bignum.c.
57828	(init_alloc): Move bignum initialization to init_bignum.
57829	* src/bignum.c (init_bignum): Rename from init_bignum_once.
57830	All users changed.
57831	* src/emacs.c (main): Call init_bignum after init_alloc,
57832	instead of calling init_bignum_once after init_bignum.
57833
578342018-09-03  Paul Eggert  <eggert@cs.ucla.edu>
57835
57836	Speed up (+ 2 2) by a factor of 10
57837
57838	Improve arithmetic performance by avoiding bignums until needed.
57839	Also, simplify bignum memory management, fixing some unlikely leaks.
57840	This patch improved the performance of (+ 2 2) by a factor of ten
57841	on a simple microbenchmark computing (+ x 2), byte-compiled,
57842	with x a local variable initialized to 2 via means the byte
57843	compiler could not predict: performance improved from 135 to 13 ns.
57844	The platform was Fedora 28 x86-64, AMD Phenom II X4 910e.
57845	Performance also improved 0.6% on ‘make compile-always’.
57846	* src/bignum.c (init_bignum_once): New function.
57847	* src/emacs.c (main): Use it.
57848	* src/bignum.c (mpz): New global var.
57849	(make_integer_mpz): Rename from make_integer.  All uses changed.
57850	* src/bignum.c (double_to_bignum, make_bignum_bits)
57851	(make_bignum, make_bigint, make_biguint, make_integer_mpz):
57852	* src/data.c (bignum_arith_driver, Frem, Flogcount, Fash)
57853	(expt_integer, Fadd1, Fsub1, Flognot):
57854	* src/floatfns.c (Fabs, rounding_driver, rounddiv_q):
57855	* src/fns.c (Fnthcdr):
57856	Use mpz rather than mpz_initting and mpz_clearing private
57857	temporaries.
57858	* src/bignum.h (bignum_integer): New function.
57859	* src/data.c (Frem, Fmod, Fash, expt_integer):
57860	* src/floatfns.c (rounding_driver):
57861	Use it to simplify code.
57862	* src/data.c (FIXNUMS_FIT_IN_LONG, free_mpz_value):
57863	Remove.  All uses removed.
57864	(floating_point_op): New function.
57865	(floatop_arith_driver): New function, with much of the guts
57866	of the old float_arith_driver.
57867	(float_arith_driver): Use it.
57868	(floatop_arith_driver, arith_driver):
57869	Simplify by assuming NARGS is at least 2.
57870	All callers changed.
57871	(float_arith_driver):
57872	New arg, containing the partly converted value of the next arg.
57873	Reorder args for consistency.  All uses changed.
57874	(bignum_arith_driver): New function.
57875	(arith_driver): Use it.  Do fixnum-only integer calculations
57876	in intmax_t instead of mpz_t, when they fit.
57877	Break out mpz_t calculations into bignum_arith_driver.
57878	(Fquo): Use floatop_arith_driver instead of float_arith_driver,
57879	since the op is known to be valid.
57880	(Flogcount, Fash): Simplify by coalescing bignum and fixnum code.
57881	(Fadd1, Fsub1): Simplify by using make_int.
57882
578832018-09-03  Stephen Berman  <stephen.berman@gmx.net>
57884
57885	Make todo-show work when adding and deleting a new todo file
57886
57887	* lisp/calendar/todo-mode.el (todo-add-file): Since
57888	todo-current-todo-file must be set before calling todo-show, but
57889	the buffer is not yet in todo-mode, which makes it buffer local,
57890	explicitly set it buffer locally (bug#32627).
57891
57892	* test/lisp/calendar/todo-mode-tests.el (todo-test--add-file)
57893	(todo-test--delete-file): New functions.
57894	(todo-test-add-and-delete-file): New test.
57895
578962018-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
57897
57898	* src/lisp.h: Add explanation in a comment
57899
579002018-09-01  Charles A. Roelli  <charles@aurox.ch>
57901
57902	* src/process.c (send_process): Fix typo in commentary.
57903
579042018-08-31  Paul Eggert  <eggert@cs.ucla.edu>
57905
57906	Rename Emacs-specific INFINITY constants
57907
57908	Although these constants were not erroneous, as they were
57909	used only in modules that did not include <math.h>, it's
57910	less confusing to names that cannot be confused with
57911	the now-standard INFINITY macro.
57912	* src/dispextern.h (SCROLL_INFINITY): New constant.
57913	* src/dispnew.c, src/scroll.c (INFINITY):
57914	Remove.  All uses replaced with SCROLL_INFINITY.
57915	* src/process.c (wait_reading_process_output):
57916	Rename private constant.
57917
579182018-08-31  Paul Eggert  <eggert@cs.ucla.edu>
57919
57920	Port better to non-IEEE platforms
57921
57922	* src/lread.c (string_to_number) [!IEEE_FLOATING_POINT]:
57923	Do not use the INFINITY macro, since the C standard requires
57924	it to provoke a compile-time error on platforms that do not
57925	support infinities.
57926
579272018-08-31  Michael Albinus  <michael.albinus@gmx.de>
57928
57929	Mark thread-alive-p as obsolete
57930
57931	* etc/NEWS (thread-alive-p):
57932	* lisp/emacs-lisp/thread.el (thread-alive-p): Mark it as obsolete.
57933
57934	* test/src/thread-tests.el (threads-join-error)
57935	(threads-signal-main-thread): Use `thread-live-p'.
57936
579372018-08-31  Michael Albinus  <michael.albinus@gmx.de>
57938
57939	Merge from origin/emacs-26
57940
57941	ac7936cb8f Rename thread-alive-p to thread-live-p
57942	3d09d533d1 rcirc: Document /reconnect as a built-in command (Bug#29656)
57943	a1e615618d * test/lisp/calc/calc-tests.el (calc-imaginary-i): New test.
57944
579452018-08-31  Paul Eggert  <eggert@cs.ucla.edu>
57946
57947	Several fixes for formatting bignums
57948
57949	* src/bignum.c: Include stdlib.h, for abs.
57950	(bignum_bufsize, bignum_to_c_string): New functions.
57951	* src/bignum.c (bignum_to_string):
57952	* src/print.c (print_vectorlike): Use them.
57953	* src/editfns.c (styled_format): Instead of having a separate
57954	buffer for sprintf (which does not work for bignums), just append
57955	to the main buffer.  When formatting bignums, add support for the
57956	standard integer flags -, #, 0, + and space.  Fix some comments.
57957	Capitalize properly when formatting bignums with %X.  Use
57958	functions like c_isdigit rather than reinventing the wheel.
57959	Simplify computation of excess precision.
57960	* src/print.c: Do not include bignum.h; no longer needed.
57961	(print_vectorlike): Avoid recalculating string length.
57962	* test/src/editfns-tests.el (format-bignum):
57963	Test some of the above fixes.
57964
579652018-08-31  Paul Eggert  <eggert@cs.ucla.edu>
57966
57967	* src/alloc.c (sweep_vectors): Simplify.
57968
579692018-08-31  Michael Albinus  <michael.albinus@gmx.de>
57970
57971	Construct a thread_event only if THREADS_ENABLED
57972
57973	* src/thread.c (Fthread_signal): Construct a thread_event only if
57974	THREADS_ENABLED.
57975
579762018-08-30  Paul Eggert  <eggert@cs.ucla.edu>
57977
57978	Fix bignum FIXME in emacs-module.c
57979
57980	* src/emacs-module.c: Do not include bignum.h; no longer needed.
57981	(module_extract_integer): Use bignum_to_intmax to avoid
57982	incorrectly signaling overflow on platforms where intmax_t
57983	is wider than long int.
57984
579852018-08-30  Juri Linkov  <juri@linkov.net>
57986
57987	* lisp/vc/vc.el (vc-log-internal-common): Reuse the buffer object.
57988
57989	(Bug#32475)
57990
579912018-08-30  Juri Linkov  <juri@linkov.net>
57992
57993	* lisp/gnus/mm-view.el (mm-display-inline-fontify): Carry diff-mode overlays
57994
57995	to inline MIME attachments from the temp buffer along with text properties.
57996	(Bug#32474)
57997
579982018-08-30  Paul Eggert  <eggert@cs.ucla.edu>
57999
58000	Fix off-by-1 typo in recent bignum changes
58001
58002	Problem reported by Yuri D’Elia in:
58003	https://lists.gnu.org/r/emacs-devel/2018-08/msg00977.html
58004	and crucial clue provided by Michael Heerdegen in:
58005	https://lists.gnu.org/r/emacs-devel/2018-08/msg01043.html
58006	* src/font.c (font_unparse_xlfd): Fix off-by-1 typo.
58007
580082018-08-30  Michael Albinus  <michael.albinus@gmx.de>
58009
58010	Handle thread-signal towards the main thread  (Bug#32502)
58011
58012	* doc/lispref/threads.texi (Basic Thread Functions):
58013	* etc/NEWS: Document thread-signal towards the main thread.
58014
58015	* lisp/emacs-lisp/thread.el: New package.
58016
58017	* src/keyboard.c (read_char): Check for Qthread_event.
58018	(kbd_buffer_get_event, make_lispy_event): Handle THREAD_EVENT.
58019	(syms_of_keyboard): Declare Qthread_event.
58020	(keys_of_keyboard): Add thread-handle-event to special-event-map.
58021
58022	* src/termhooks.h (enum event_kind): Add THREAD_EVENT.
58023
58024	* src/thread.c: Include "keyboard.h".
58025	(poll_suppress_count) Don't declare extern.
58026	(Fthread_signal): Raise event if THREAD is the main thread.  (Bug#32502)
58027
58028	* test/src/thread-tests.el (thread): Require it.
58029	(threads-signal-main-thread): New test.
58030
580312018-08-30  Glenn Morris  <rgm@gnu.org>
58032
58033	* configure.ac: Fix goofs in my recent ImageMagick change.
58034
580352018-08-30  Paul Eggert  <eggert@cs.ucla.edu>
58036
58037	Pacify -Wdouble-promotion in ImageMagick code
58038
58039	* src/image.c (imagemagick_load_image): Use double division, and
58040	eliminate a cast.  This avoids a -Wdouble-promotion warning with
58041	GCC 7.3 on Ubuntu 18.04.
58042
580432018-08-29  Glenn Morris  <rgm@gnu.org>
58044
58045	Merge from origin/emacs-26
58046
58047	2670cbf (origin/emacs-26) ; * configure.ac: Remove outdated comment (...
58048	3b71bef admin.el: respect environment settings for makeinfo etc
58049	3764ab4 * etc/PROBLEMS: New entry about GTK+ 3 crash with some X serv...
58050	9d61344 Index profiler commands in elisp manual
58051	f088817 Fix math-imaginary-i check
58052	fca935e ; Let pre-commit git hook check merged in changes (Bug#29197)
58053	fe06fcc Avoid infinite hscrolling loops when line numbers are displayed
58054	63e59c8 Avoid crashes in malformed defvar
58055	785682c * configure.ac (emacs_config_features): Add GLIB, XDBE, XIM.
58056	2695b7e * configure.ac: Doc fixes related to --with-xim.
58057	d0d162c Small checkdoc quoting fix (bug#32546)
58058
58059	Conflicts:
58060		configure.ac
58061
580622018-08-29  Stefan Monnier  <monnier@iro.umontreal.ca>
58063
58064	* src/keymap.c: Make better use of access_keymap's functionality
58065
58066	(Flookup_key): Allow `keymap' to be a list of keymaps.
58067	(Fcommand_remapping, Fkey_binding): Simplify accordingly.
58068	(shadow_lookup, describe_map_tree): Simplify.
58069
580702018-08-29  Michael Albinus  <michael.albinus@gmx.de>
58071
58072	Improve tramp-convert-file-attributes backward compatibility
58073
58074	* lisp/net/tramp-sh.el (tramp-convert-file-attributes):
58075	Use `seconds-to-time' for {access, modification, status change}
58076	time.  Simplify check for inode.
58077
58078	* test/lisp/net/tramp-tests.el (tramp-test22-file-times):
58079	Use `seconds-to-time'.
58080
580812018-08-28  Glenn Morris  <rgm@gnu.org>
58082
58083	* lisp/mail/emacsbug.el (report-emacs-bug--os-description): Add BSD.
58084
58085	* lisp/mail/emacsbug.el (report-emacs-bug--os-description):
58086	Add MS Windows.
58087
580882018-08-28  Paul Eggert  <eggert@cs.ucla.edu>
58089
58090	Improve (format "%g" bignum) precision
58091
58092	* src/editfns.c (styled_format): When formatting bignums with
58093	floating-point conversions like %g, use long double if that
58094	would lose less information than double, which is what the
58095	code was already doing for fixnums.  On Fedora 28 x86-64, for
58096	example, (format "%.100g" (1- (ash 1 64))) now yields
58097	"18446744073709551615" instead of the numerically incorrect
58098	"18446744073709549568".  Also, fix a stray INTEGERP that
58099	can just be FIXNUMP, since bignums are not possible there.
58100
581012018-08-28  Paul Eggert  <eggert@cs.ucla.edu>
58102
58103	Fix Fnatnump typos
58104
58105	Problem reported by Glenn Morris in:
58106	https://lists.gnu.org/r/emacs-devel/2018-08/msg00946.html
58107	* src/floatfns.c (Fexpt):
58108	* src/xselect.c (cons_to_x_long):
58109	Don't assume Lisp_Object values are scalars.
58110
581112018-08-28  Eli Zaretskii  <eliz@gnu.org>
58112
58113	Fix a recent change
58114
58115	* src/dispnew.c (sit_for): Don;t treat nil as zero.  Reported
58116	by Glenn Morris <rgm@gnu.org>.
58117
581182018-08-28  Michael Albinus  <michael.albinus@gmx.de>
58119
58120	Add bignum support in Tramp
58121
58122	* lisp/net/tramp-adb.el (tramp-adb-handle-file-system-info):
58123	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-system-info):
58124	* lisp/net/tramp-sh.el (tramp-do-file-attributes-with-stat)
58125	(tramp-do-directory-files-and-attributes-with-stat)
58126	(tramp-sh-handle-file-system-info):
58127	* lisp/net/tramp-smb.el (tramp-smb-handle-file-system-info): Do
58128	not add "e0" to integers.
58129
58130	* lisp/net/tramp-sh.el (tramp-perl-file-attributes)
58131	(tramp-convert-file-attributes): Do not use a consp for the inode
58132	if there is bignum support.
58133
581342018-08-27  Paul Eggert  <eggert@cs.ucla.edu>
58135
58136	Improve bignum support for system types
58137
58138	Use bignums when Emacs converts to and from system types like
58139	off_t for file sizes whose values can exceed fixnum range.
58140	Formerly, Emacs sometimes generted floats and sometimes ad-hoc
58141	conses of integers.  Emacs still accepts floats and conses for
58142	these system types, in case some stray Lisp code is generating
58143	them, though this usage is obsolescent.
58144	* doc/lispref/files.texi (File Attributes):
58145	* doc/lispref/hash.texi (Defining Hash):
58146	* doc/lispref/nonascii.texi (Character Sets):
58147	* doc/lispref/os.texi (User Identification):
58148	* doc/lispref/processes.texi (System Processes):
58149	* etc/NEWS:
58150	Document changes.
58151	* src/bignum.c (mpz_set_uintmax, make_biguint)
58152	(mpz_set_uintmax_slow, bignum_to_intmax, bignum_to_uintmax):
58153	New functions.
58154	(mpz_set_intmax_slow): Implement via mpz_limbs_write,
58155	to avoid the need for an extra pass through a negative number.
58156	* src/charset.c (Fencode_char):
58157	* src/composite.h (LGLYPH_SET_CODE):
58158	* src/dired.c (file_attributes):
58159	* src/dosfns.c, src/w32.c (list_system_processes)
58160	(system_process_attributes):
58161	* src/editfns.c (init_editfns, Fuser_uid, Fuser_real_uid)
58162	(Fgroup_gid, Fgroup_real_gid, Femacs_pid):
58163	* src/emacs-module.c (check_vec_index):
58164	* src/fns.c (Fsafe_length):
58165	* src/process.c (record_deleted_pid, Fprocess_id):
58166	* src/sysdep.c (list_system_processes, system_process_attributes):
58167	* src/xselect.c (x_own_selection, selection_data_to_lisp_data):
58168	* src/xterm.c (set_wm_state):
58169	* src/inotify.c (inotifyevent_to_event, add_watch)
58170	(inotify_callback):
58171	If an integer is out of fixnum range, use a bignum
58172	instead of converting it to a float or a cons of integers.
58173	* src/coding.c (Fdefine_coding_system_internal):
58174	* src/frame.c (frame_windows_min_size)
58175	(x_set_frame_parameters):
58176	* src/fringe.c (Fdefine_fringe_bitmap):
58177	* src/nsterm.m (mouseDown:):
58178	* src/syntax.c (find_defun_start):
58179	* src/w32fns.c (x_set_undecorated, w32_createwindow)
58180	(w32_wnd_proc, Fx_create_frame, Fx_show_tip)
58181	(w32_console_toggle_lock_key):
58182	* src/w32inevt.c (key_event):
58183	* src/w32proc.c (Fw32_get_locale_info):
58184	Do not mishandle floats by treating their addresses as their
58185	values.
58186	* src/data.c (store_symval_forwarding):
58187	* src/gnutls.c (Fgnutls_error_fatalp, Fgnutls_error_string):
58188	* src/keyboard.c (command_loop_1, make_lispy_event):
58189	* src/lread.c (read_filtered_event, read1)
58190	(substitute_object_recurse):
58191	* src/window.c (Fcoordinates_in_window_p, Fwindow_at)
58192	(window_resize_apply, Fset_window_vscroll):
58193	* src/xdisp.c (handle_single_display_spec, try_scrolling)
58194	(redisplay_window, calc_pixel_width_or_height)
58195	(calc_line_height_property, on_hot_spot_p):
58196	* src/xfaces.c (check_lface_attrs):
58197	* src/xselect.c (x_get_local_selection, cons_to_x_long)
58198	(lisp_data_to_selection_data, clean_local_selection_data)
58199	(x_check_property_data, x_fill_property_data):
58200	(x_send_client_event):
58201	Do not reject bignums.
58202	* src/data.c (INTBIG_TO_LISP, intbig_to_lisp)
58203	(uintbig_to_lisp):
58204	Remove.  All uses removed.
58205	* src/data.c (cons_to_unsigned, cons_to_signed):
58206	* src/dbusbind.c (xd_signature, xd_extract_signed)
58207	(xd_extract_unsigned):
58208	* src/dispnew.c (sit_for):
58209	* src/dosfns.c, src/w32.c (system_process_attributes):
58210	* src/editfns.c (Fuser_full_name):
58211	* src/fileio.c (file_offset):
58212	* src/fileio.c (write_region):
58213	* src/font.c (font_unparse_xlfd, font_open_for_lface, Fopen_font):
58214	* src/frame.c (x_set_screen_gamma):
58215	* src/frame.h (NUMVAL, FRAME_PIXEL_X_FROM_CANON_X)
58216	(FRAME_PIXEL_Y_FROM_CANON_Y):
58217	* src/image.c (parse_image_spec, x_edge_detection)
58218	(compute_image_size):
58219	* src/json.c (json_to_lisp):
58220	* src/lcms.c (PARSE_LAB_LIST_FIELD, Flcms_cie_de2000)
58221	(PARSE_XYZ_LIST_FIELD, PARSE_JCH_LIST_FIELD)
58222	(PARSE_JAB_LIST_FIELD, PARSE_VIEW_CONDITION_FLOAT)
58223	(Flcms_temp_to_white_point):
58224	* src/nsimage.m (ns_load_image, setSizeFromSpec):
58225	* src/process.c (Fsignal_process, handle_child_signal):
58226	* src/sysdep.c (system_process_attributes):
58227	* src/xdisp.c (calc_line_height_property):
58228	Handle bignums.
58229	* src/data.c (Fnumber_to_string): Use proper predicate name in
58230	signal if the argument is not a number.
58231	* src/lisp.h (make_uint): New function.
58232	(INT_TO_INTEGER): New macro.
58233	(FIXED_OR_FLOATP, CHECK_FIXNUM_OR_FLOAT)
58234	(CHECK_FIXNUM_OR_FLOAT_COERCE_MARKER, INTEGER_TO_CONS)
58235	(make_fixnum_or_float): Remove; no longer used.
58236	* src/nsfns.m, src/w32fns.c, src/xfns.c (Fx_create_frame):
58237	Reject floating-point min-width or min-height.
58238	* src/process.c (handle_child_signal): Do not worry
58239	about floating-point pids, as they are no longer generated.
58240
582412018-08-27  Paul Eggert  <eggert@cs.ucla.edu>
58242
58243	Modularize bignums better
58244
58245	* src/bignum.c, src/bignum.h: New files.  Only modules that
58246	need to know how bignums are implemented should include
58247	bignum.h.  Currently these are alloc.c, bignum.c (of course),
58248	data.c, emacs.c, emacs-module.c, floatfns.c, fns.c, print.c.
58249	* src/Makefile.in (base_obj): Add bignum.o.
58250	* src/alloc.c (make_bignum_str): Move to bignum.c.
58251	(make_number): Remove; replaced by bignum.c’s make_integer.
58252	All callers changed.
58253	* src/conf_post.h (ARG_NONNULL): New macro.
58254	* src/json.c (json_to_lisp): Use it.
58255	* src/data.c (Fnatnump):
58256	Move NATNUMP’s implementation here from lisp.h.
58257	* src/data.c (Fnumber_to_string):
58258	* src/editfns.c (styled_format):
58259	Move conversion of string to bignum to bignum_to_string, and
58260	call it here.
58261	* src/emacs-module.c (module_make_integer):
58262	* src/floatfns.c (Fabs):
58263	Simplify by using make_int.
58264	* src/emacs.c: Include bignum.h, to expand its inline fns.
58265	* src/floatfns.c (Ffloat): Simplify by using XFLOATINT.
58266	(rounding_driver): Simplify by using double_to_bignum.
58267	(rounddiv_q): Clarify use of temporaries.
58268	* src/lisp.h: Move decls that need to know bignum internals to
58269	bignum.h.  Do not include gmp.h or mini-gmp.h; that is now
58270	bignum.h’s job.
58271	(GMP_NUM_BITS, struct Lisp_Bignum, XBIGNUM, mpz_set_intmax):
58272	Move to bignum.h.
58273	(make_int): New function.
58274	(NATNUMP): Remove; all callers changed to use Fnatnump.
58275	(XFLOATINT): If arg is a bignum, use bignum_to_double, so that
58276	bignum internals are not exposed here.
58277	* src/print.c (print_vectorlike): Use SAFE_ALLOCA to avoid the
58278	need for a record_unwind_protect_ptr.
58279
582802018-08-27  Glenn Morris  <rgm@gnu.org>
58281
58282	* configure.ac, src/image.c: Tweak previous ImageMagick change.
58283
582842018-08-27  Karl Otness  <karl@karlotness.com>  (tiny change)
58285
58286	Support ImageMagick version 7 (bug#25967)
58287
58288	* configure.ac, src/image.c: Add support for ImageMagick version 7.
58289
582902018-08-27  Paul Eggert  <eggert@cs.ucla.edu>
58291
58292	Update from Gnulib
58293
58294	* build-aux/config.sub, lib/intprops.h, lib/regex_internal.c:
58295	* lib/regex_internal.h, lib/unistd.in.h, m4/limits-h.m4:
58296	* m4/stdint.m4, m4/unistd_h.m4:
58297	Copy from Gnulib.
58298	* lib/gnulib.mk.in: Regenerate.
58299
583002018-08-27  Alex Branham  <alex.branham@gmail.com>
58301
58302	New commands bibtex-next/previous-entry (Bug#32378)
58303
58304	* lisp/textmodes/bibtex.el (bibtex-next-entry)
58305	(bibtex-previous-entry): New commands.
58306	(bibtex-mode-map): Bind to to forward-paragraph and
58307	backward-paragraph.  Add to menu under "Moving inside an Entry".
58308
583092018-08-27  Noam Postavsky  <npostavs@gmail.com>
58310
58311	shr: Allow skipping tags with aria-hidden (Bug#32348)
58312
58313	* lisp/net/shr.el (shr-discard-aria-hidden): New option.
58314	(shr-descend): Suppress aria-hidden=true tags if it's set.
58315	* doc/misc/eww.texi (Advanced): Document shr-discard-aria-hidden.
58316	* etc/NEWS: Announce it.
58317
583182018-08-27  Noam Postavsky  <npostavs@gmail.com>
58319
58320	Allow setf of buffer-modified-p without argument (Bug#21201)
58321
58322	* lisp/emacs-lisp/cl-lib.el (setf buffer-modified-p): Take current
58323	buffer if optional argument BUF is not passed.
58324
583252018-08-27  Alan Mackenzie  <acm@muc.de>
58326
58327	CC Mode: Fix syntactic context of BOD sometimes being 'topmost-intro-cont
58328
58329	This happened when the type of the previous function was a struct, etc.,
58330	declaration.
58331
58332	* lisp/progmodes/cc-mode.el (c-guess-basic-syntax CASE 5N): Check here (for
58333	'topmost-intro-cont) that the first opening brace after BOD is the opening
58334	brace preceding the starting point.
58335
583362018-08-27  Alan Mackenzie  <acm@muc.de>
58337
58338	c-where-wrt-brace-construct: deal with point following a struct's semicolon.
58339
58340	More precisely, when point is right after the terminating semicolon of a
58341	construct like "struct foo { .... } bar;", the function must return
58342	'at-function-end.
58343
58344	* lisp/progmodes/cc-cmds.el (c-where-wrt-brace-construct): Surround an
58345	existing test for 'at-function-end with an `or' form, the other arm testing
58346	for being after the semicolon above.
58347
583482018-08-27  Gemini Lasswell  <gazally@runbox.com>
58349
58350	Fix links in backtraces to work on advised built-ins (Bug#25393)
58351
58352	* lisp/emacs-lisp/backtrace.el (backtrace--print-func-and-args): Make
58353	links to the original definition of advised functions.  Handle the
58354	case when the function slot of the backtrace frame contains the
58355	definition of a built-in function.
58356
583572018-08-27  Michael Albinus  <michael.albinus@gmx.de>
58358
58359	Bump Tramp version to 2.4.1-pre
58360
58361	* doc/misc/trampver.texi:
58362	* lisp/net/trampver.el: Change version to "2.4.1-pre".
58363
58364	* lisp/net/tramp.el: Add "Package-Requires" header.
58365
583662018-08-26  Glenn Morris  <rgm@gnu.org>
58367
58368	Merge from origin/emacs-26
58369
58370	54fb383 (origin/emacs-26) Fix detection of freed emacs_values (Bug#32...
58371	769d0cd ; Fix out-of-tree build for mod-test.so
58372	9a1329e Avoid crashes with very wide TTY frames on MS-Windows
58373	9a613d3 Prevent `modify-file-local-variable-prop-line' from adding ex...
58374	624e7dc Update GNOME bugtracker URLs
58375	51ef6d5 Clarify in the Emacs manual that ChangeLog files are not used
58376	6e08019 Recognize codepage 65001 as a valid encoding
58377	1a350d7 ; * etc/NEWS: Fix format of first lines of some entries.
58378	22d1f53 Avoid compilation warning in nt/addpm.c
58379	7bc9ce7 Fix duplicate custom group names in bibtex.el
58380	a9cf938 Fix outdated text in the Calc manual
58381
58382	Conflicts:
58383		etc/NEWS
58384		etc/PROBLEMS
58385		src/emacs-module.c
58386		src/gtkutil.c
58387		src/image.c
58388		src/xterm.c
58389		test/Makefile.in
58390
583912018-08-26  Eli Zaretskii  <eliz@gnu.org>
58392
58393	Fix a typo in alloc.c
58394
58395	* src/alloc.c (Fmemory_use_counts): The list we return now has
58396	only 7 elements, not 8.  (Bug#32531)
58397
583982018-08-26  Alan Mackenzie  <acm@muc.de>
58399
58400	CC Mode: make c-display-defun-name work with a pointer return type.
58401
58402	Fixes bug #32403.
58403
58404	* lisp/progmodes/cc-cmds.el (c-in-function-trailer-p): No longer insist on
58405	c-beginning-of-decl-1 returning 'same.
58406	(c-where-wrt-brace-construct): Tighten up the test for looking at a symbol by
58407	excluding keywords.  When point is after a }, do not return 'at-function-end
58408	for a struct/union/class/...
58409	(c-defun-name-1): Considerably simplify, by amalgamating the two cond arms
58410	which find structs etc., and by using functions like c-forward-declarator
58411	rather than the faulty analysis of the source by hand.
58412
584132018-08-26  Stefan Monnier  <monnier@iro.umontreal.ca>
58414
58415	* lisp/net/tramp.el: Add "Version" header.
58416
584172018-08-25  Paul Eggert  <eggert@cs.ucla.edu>
58418
58419	Improve format-seconds accuracy
58420
58421	* doc/lispref/os.texi (Time Parsing): It works with bignums.
58422	* lisp/calendar/time-date.el (format-seconds):
58423	Take the floor so that the resulting arithmetic is exact.
58424
584252018-08-25  Paul Eggert  <eggert@cs.ucla.edu>
58426
58427	Prefer CONSP etc. to XTYPE
58428
58429	* src/nsmenu.m (process_dialog:):
58430	(initFromContents:isQuestion:):
58431	Prefer CONSP (x) to XTYPE (x) == Lisp_Cons,
58432	and similarly for STRINGP (x).
58433
584342018-08-25  Paul Eggert  <eggert@cs.ucla.edu>
58435
58436	Improve performance of CONSP, FIXNUMP, etc.
58437
58438	Optimization opportunity noted by Pip Cet in:
58439	https://lists.gnu.org/r/emacs-devel/2018-08/msg00828.html
58440	On my platform (Fedora 28 x86-64, AMD Phenom II X4 910e,
58441	user+system time), this improved ‘make compile-always’
58442	performance by 0.4% and shrank text size by a similar amount.
58443	* src/lisp.h (TAGGEDP, lisp_h_TAGGEDP): New macros and function.
58444	(lisp_h_CONSP, lisp_h_FLOATP, lisp_h_SYMBOLP)
58445	(lisp_h_VECTORLIKEP, make_lisp_ptr, STRINGP): Use them.
58446	(lisp_h_FIXNUMP): Use the same idea that lisp_h_TAGGEDP uses.
58447
584482018-08-23  Noam Postavsky  <npostavs@gmail.com>
58449
58450	Detect Chinese sudo password prompts (Bug#31075)
58451
58452	* lisp/comint.el (comint-password-prompt-regexp): Allow text between
58453	the prompt prefix and password equivalent.
58454	* lisp/eshell/esh-mode.el (eshell-password-prompt-regexp): Accept some
58455	unicode alternatives to ":".
58456	* test/lisp/comint-tests.el (comint-testsuite-password-strings): Add
58457	test case.
58458
584592018-08-23  Noam Postavsky  <npostavs@gmail.com>
58460
58461	Fix comint-password-prompt-regexp
58462
58463	The change from 2017-12-22 "Support French password prompts in shell"
58464	tried to allow nonbreaking space in addition to whitespace syntax
58465	characters around the colon, but used square brackets which cause "\s"
58466	to be interpreted literally rather than as a backslash construct.
58467	* lisp/comint.el (comint-password-prompt-regexp): Use [[:blank:]]
58468	instead, which also has the benefit of not relying on the major mode's
58469	whitespace syntax setting.
58470	* test/lisp/comint-tests.el (comint-testsuite-password-strings):
58471	Update French localized entry to have a space before the colon, as
58472	reported in Bug#29729.
58473
584742018-08-23  Charles A. Roelli  <charles@aurox.ch>
58475
58476	Replace 2 checks in rmailsum.el with 'pos-visible-in-window-p'
58477
58478	* lisp/mail/rmailsum.el (rmail-summary-scroll-msg-up)
58479	(rmail-summary-scroll-msg-down): Use 'pos-visible-in-window-p'
58480	instead of checking the condition by hand.
58481
584822018-08-23  Lars Ingebrigtsen  <larsi@gnus.org>
58483
58484	Fix binding error in nnfolder-read-folder
58485
58486	* lisp/gnus/nnfolder.el (nnfolder-read-folder): Fix previous
58487	checkin that left `active' unbound before using it.
58488
584892018-08-22  Paul Eggert  <eggert@cs.ucla.edu>
58490
58491	Prune most-positive-fixnum from Lisp source
58492
58493	I looked through all instances of most-negative-fixnum
58494	and most-positive-fixnum in the Lisp source code, and
58495	when it was easy I removed assumptions that integers
58496	fit in fixnums.  The remaining instances are either
58497	nontrivial to fix, or are inherent to the algorithm.
58498	* lisp/arc-mode.el (archive-l-e): Do not convert to float,
58499	since we have bignums now.  All uses changed.
58500	* lisp/calc/calc.el (math-bignum):
58501	Don’t special-case most-negative-fixnum.
58502	* lisp/calendar/parse-time.el (parse-time-string):
58503	* lisp/emacs-lisp/edebug.el (edebug-read-special):
58504	* lisp/emacs-lisp/package.el (package--remove-hidden):
58505	* lisp/gnus/nnfolder.el (nnfolder-read-folder):
58506	* lisp/international/mule-util.el (filepos-to-bufferpos--dos):
58507	* lisp/menu-bar.el (menu-bar-update-buffers):
58508	* lisp/net/rcirc.el (rcirc-handler-317):
58509	* lisp/org/org-agenda.el (org-cmp-ts):
58510	* lisp/window.el (window--resize-child-windows):
58511	Avoid arbitrary limit to most-positive-fixnum or to
58512	most-negative-fixnum.
58513	* lisp/calendar/time-date.el (days-to-time):
58514	* lisp/erc/erc-dcc.el (erc-unpack-int):
58515	Don’t worry about integer overflow.
58516	* lisp/cedet/semantic/wisent/comp.el (wisent-BITS-PER-WORD):
58517	* lisp/gnus/message.el (message-unique-id):
58518	* lisp/org/org-footnote.el (org-footnote-new):
58519	Simplify.
58520	* lisp/erc/erc-dcc.el (erc-most-positive-int-bytes)
58521	(erc-most-positive-int-msb): Remove; no longer needed.
58522	* lisp/net/imap.el (imap-string-to-integer): Remove; unused.
58523	* lisp/org/org-element.el (org-element--cache-generate-key):
58524	Document fixnum limitation.
58525
585262018-08-22  Paul Eggert  <eggert@cs.ucla.edu>
58527
58528	Fix bugs when rounding to bignums
58529
58530	Also, since Emacs historically reported a range error when
58531	rounding operations overflowed, do that consistently for all
58532	bignum overflows.
58533	* doc/lispref/errors.texi (Standard Errors):
58534	* doc/lispref/numbers.texi (Integer Basics): Document range errors.
58535	* src/alloc.c (range_error): Rename from integer_overflow.
58536	All uses changed.
58537	* src/floatfns.c (rounding_driver): When the result of a floating
58538	point rounding operation does not fit into a fixnum, put it
58539	into a bignum instead of always signaling an range error.
58540	* test/src/floatfns-tests.el (divide-extreme-sign):
58541	These tests now return the mathematically-correct answer
58542	instead of signaling an error.
58543	(bignum-round): Check that integers round to themselves.
58544
585452018-08-22  Paul Eggert  <eggert@cs.ucla.edu>
58546
58547	Undo part of previous change
58548
58549	Issue spotted by Pip Cet in:
58550	https://lists.gnu.org/r/emacs-devel/2018-08/msg00758.html
58551	* lisp/vc/vc-hg.el (vc-hg--raw-dirstate-search):
58552	Go back to using eq on flen, since it must be a fixnum.
58553
585542018-08-22  Paul Eggert  <eggert@cs.ucla.edu>
58555
58556	Make vc-hg safe for bignums
58557
58558	* lisp/vc/vc-hg.el (vc-hg--raw-dirstate-search):
58559	Use eql, not eq, on integers that could be bignums.
58560	(vc-hg--time-to-integer): Rename from vc-hg--time-to-fixnum.
58561	All uses changed.
58562	(vc-hg-state-fast): Remove test that 32-bit unsigned values
58563	must be fixnums.
58564
585652018-08-21  Paul Eggert  <eggert@cs.ucla.edu>
58566
58567	* src/buffer.h (DECODE_POSITION): Remove; unused.
58568
585692018-08-21  Paul Eggert  <eggert@cs.ucla.edu>
58570
58571	Add bignum support to floor, ceiling, etc.
58572
58573	Problem reported by Andy Moreton (Bug#32463#35 (d)).
58574	* src/floatfns.c (rounding_driver): Change the signature
58575	of the integer rounder to use mpz_t rather than EMACS_INT.
58576	All uses changed.  Support bignums.
58577	(ceiling2, floor2, truncate2, round2): Remove.
58578	All uses changed to rounddiv_q or to a GMP library function.
58579	(rounddiv_q): New function.
58580	* test/src/floatfns-tests.el (bignum-round): New test.
58581
585822018-08-21  Paul Eggert  <eggert@cs.ucla.edu>
58583
58584	Move bignump, fixnump from C to Lisp
58585
58586	* doc/lispref/objects.texi (Integer Type): Mention
58587	most-negative-fixnum and most-positive-fixnum as alternatives
58588	to fixnump and bignump.
58589	* lisp/subr.el (fixnump, bignump): Now written in Lisp.
58590	* src/data.c (Ffixnump, Fbignump): No longer written in C,
58591	as these new functions are not crucial for performance.
58592
585932018-08-21  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
58594
58595	Fix assertion failure when reading 'BIGNUM.'
58596
58597	Problem reported by Stefan Monnier (Bug#32476).
58598	* src/lread.c (string_to_number): Don't pass leading "+"
58599	or trailing "." or junk to make_bignum_str.
58600	* test/src/lread-tests.el (lread-string-to-number-trailing-dot):
58601	New test.
58602
586032018-08-21  Paul Eggert  <eggert@cs.ucla.edu>
58604
58605	Audit use of lsh and fix glitches
58606
58607	I audited use of lsh in the Lisp source code, and fixed the
58608	glitches that I found.  While I was at it, I replaced uses of lsh
58609	with ash when either will do.  Replacement is OK when either
58610	argument is known to be nonnegative, or when only the low-order
58611	bits of the result matter, and is a (minor) win since ash is a bit
58612	more solid than lsh nowadays, and is a bit faster.
58613	* lisp/calc/calc-ext.el (math-check-fixnum):
58614	Prefer most-positive-fixnum to (lsh -1 -1).
58615	* lisp/vc/vc-hg.el (vc-hg-state-fast): When testing fixnum width,
58616	prefer (zerop (ash most-positive-fixnum -32)) to (zerop (lsh -1
58617	32)) (Bug#32485#11).
58618	* lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode):
58619	Tighten sanity-check for bytecode overflow, by checking that the
58620	result of (ash pc -8) is nonnegative.  Formerly this check was not
58621	needed since lsh was used and the number overflowed differently.
58622	* lisp/net/dns.el (dns-write): Fix some obvious sign typos in
58623	shift counts.  Evidently this part of the code has never been
58624	exercised.
58625	* lisp/progmodes/hideif.el (hif-shiftleft, hif-shiftright):
58626	* lisp/term/common-win.el (x-setup-function-keys):
58627	Simplify.
58628	* admin/unidata/unidata-gen.el, admin/unidata/uvs.el:
58629	* doc/lispref/keymaps.texi, doc/lispref/syntax.texi:
58630	* doc/misc/calc.texi, doc/misc/cl.texi, etc/NEWS.19:
58631	* lisp/arc-mode.el, lisp/calc/calc-bin.el, lisp/calc/calc-comb.el:
58632	* lisp/calc/calc-ext.el, lisp/calc/calc-math.el:
58633	* lisp/cedet/semantic/wisent/comp.el, lisp/composite.el:
58634	* lisp/disp-table.el, lisp/dos-fns.el, lisp/edmacro.el:
58635	* lisp/emacs-lisp/bindat.el, lisp/emacs-lisp/byte-opt.el:
58636	* lisp/emacs-lisp/bytecomp.el, lisp/emacs-lisp/cl-extra.el:
58637	* lisp/erc/erc-dcc.el, lisp/facemenu.el, lisp/gnus/message.el:
58638	* lisp/gnus/nndoc.el, lisp/gnus/nnmaildir.el, lisp/image.el:
58639	* lisp/international/ccl.el, lisp/international/fontset.el:
58640	* lisp/international/mule-cmds.el, lisp/international/mule.el:
58641	* lisp/json.el, lisp/mail/binhex.el, lisp/mail/rmail.el:
58642	* lisp/mail/uudecode.el, lisp/md4.el, lisp/net/dns.el:
58643	* lisp/net/ntlm.el, lisp/net/sasl.el, lisp/net/socks.el:
58644	* lisp/net/tramp.el, lisp/obsolete/levents.el:
58645	* lisp/obsolete/pgg-parse.el, lisp/org/org.el:
58646	* lisp/org/ox-publish.el, lisp/progmodes/cc-defs.el:
58647	* lisp/progmodes/ebnf2ps.el, lisp/progmodes/hideif.el:
58648	* lisp/ps-bdf.el, lisp/ps-print.el, lisp/simple.el:
58649	* lisp/tar-mode.el, lisp/term/common-win.el:
58650	* lisp/term/tty-colors.el, lisp/term/xterm.el, lisp/vc/vc-git.el:
58651	* lisp/vc/vc-hg.el, lisp/x-dnd.el, test/src/data-tests.el:
58652	Prefer ash to lsh when either will do.
58653
586542018-08-21  Paul Eggert  <eggert@cs.ucla.edu>
58655
58656	Fix bignum bugs with nth, elt, =
58657
58658	* src/bytecode.c (exec_byte_code): Support bignums
58659	when implementing nth, elt, and =.
58660	* src/lisp.h (SMALL_LIST_LEN_MAX): New constant.
58661	* src/fns.c (Fnthcdr): Use it.
58662	(Felt): Do not reject bignum indexes.
58663
586642018-08-21  Glenn Morris  <rgm@gnu.org>
58665
58666	Restore compatibility with Texinfo < 6
58667
58668	* doc/lispref/numbers.texi (Integer Basics, Bitwise Operations):
58669	Don't use Texinfo 6.0's "@sup" command.
58670
586712018-08-21  Eli Zaretskii  <eliz@gnu.org>
58672
58673	Improve documentation of 'integer-width'
58674
58675	* etc/NEWS: Minor rewording of the recent addition.
58676
58677	* doc/lispref/numbers.texi (Bitwise Operations): Use @dots{}
58678	for ellipsis.  Improve indexing.
58679
586802018-08-21  Paul Eggert  <eggert@cs.ucla.edu>
58681
58682	Avoid libgmp aborts by imposing limits
58683
58684	libgmp calls ‘abort’ when given numbers too big for its
58685	internal data structures.  The numeric limit is large and
58686	platform-dependent; with 64-bit GMP 6.1.2 it is around
58687	2**2**37.  Work around the problem by refusing to call libgmp
58688	functions with arguments that would cause an abort.  With luck
58689	libgmp will have a better way to do this in the future.
58690	Also, introduce a variable integer-width that lets the user
58691	control how large bignums can be.  This currently defaults
58692	to 2**16, i.e., it allows bignums up to 2**2**16.  This
58693	should be enough for ordinary computation, and should
58694	help Emacs to avoid thrashing or hanging.
58695	Problem noted by Pip Cet (Bug#32463#71).
58696	* doc/lispref/numbers.texi, etc/NEWS:
58697	Document recent bignum changes, including this one.
58698	Improve documentation for bitwise operations, in the light
58699	of bignums.
58700	* src/alloc.c (make_number): Enforce integer-width.
58701	(integer_overflow): New function.
58702	(xrealloc_for_gmp, xfree_for_gmp):
58703	Move here from emacs.c, as it's memory allocation.
58704	(init_alloc): Initialize GMP here, rather than in emacs.c.
58705	(integer_width): New var.
58706	* src/data.c (GMP_NLIMBS_MAX, NLIMBS_LIMIT): New constants.
58707	(emacs_mpz_size, emacs_mpz_mul)
58708	(emacs_mpz_mul_2exp, emacs_mpz_pow_ui): New functions.
58709	(arith_driver, Fash, expt_integer): Use them.
58710	(expt_integer): New function, containing integer code
58711	that was out of place in floatfns.c.
58712	(check_bignum_size, xmalloc_for_gmp): Remove.
58713	* src/emacs.c (main): Do not initialize GMP here.
58714	* src/floatfns.c (Fexpt): Use expt_integer, which
58715	now contains integer code moved from here.
58716	* src/lisp.h (GMP_NUMB_BITS): Define if gmp.h doesn’t.
58717
587182018-08-21  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
58719
58720	Fix glitches introduced by nthcdr changes
58721
58722	* src/fns.c (Fnthcdr): Fix recently-introduced bug when
58723	nthcdr is supposed to yield a non-nil non-cons.
58724	Reported by Glenn Morris and by Pip Cet here:
58725	https://lists.gnu.org/r/emacs-devel/2018-08/msg00699.html
58726	https://lists.gnu.org/r/emacs-devel/2018-08/msg00708.html
58727	Speed up nthcdr for small N, as suggested by Pip Cet here:
58728	https://lists.gnu.org/r/emacs-devel/2018-08/msg00707.html
58729	* test/src/fns-tests.el (test-nthcdr-simple): New test.
58730
587312018-08-20  Paul Eggert  <eggert@cs.ucla.edu>
58732
58733	Speed up (nthcdr N L) when L is circular
58734
58735	Also, fix bug when N is a positive bignum, a problem reported
58736	by Eli Zaretskii and Pip Cet in:
58737	https://lists.gnu.org/r/emacs-devel/2018-08/msg00690.html
58738	* src/fns.c (Fnthcdr): If a cycle is found, reduce the count
58739	modulo the cycle length before continuing.  This reduces the
58740	worst-case cost of (nthcdr N L) from N to min(N, C) where C is
58741	the number of distinct cdrs of L.  Reducing modulo the cycle
58742	length also allows us to do arithmetic with machine words
58743	instead of with GMP.
58744	* test/src/fns-tests.el (test-nthcdr-circular): New test.
58745
587462018-08-20  Andy Moreton  <andrewjmoreton@gmail.com>
58747
58748	Define get_proc_addr in Cygwin-w32 build
58749
58750	* src/w32common.h (get_proc_addr, DEF_DLL_FN, LOAD_DLL_FN): Move
58751	definitions here from src/w32.h.
58752	* src/decompress.c [WINDOWSNT]:
58753	* src/gnutls.c [WINDOWSNT]:
58754	* src/image.c [WINDOWSNT]:
58755	* src/json.c [WINDOWSNT]:
58756	* src/lcms.c [WINDOWSNT]:
58757	* src/w32font.c [WINDOWSNT]:
58758	* src/w32uniscribe.c:
58759	* src/xml.c [WINDOWSNT]: Include w32common.h.
58760
587612018-08-20  Paul Eggert  <eggert@cs.ucla.edu>
58762
58763	nthcdr now works with bignums
58764
58765	Problem reported by Karl Fogel in:
58766	https://lists.gnu.org/r/emacs-devel/2018-08/msg00671.html
58767	* src/fns.c (Fnthcdr): Support bignum counts.
58768
587692018-08-19  Paul Eggert  <eggert@cs.ucla.edu>
58770
58771	Fix expt signedness bug --without-wide-int
58772
58773	Problem reported by Federico in:
58774	https://lists.gnu.org/r/emacs-devel/2018-08/msg00619.html
58775	* src/floatfns.c (Fexpt): Use TYPE_RANGED_FIXNUMP, not
58776	RANGED_FIXNUMP, to fix bug with unsigned comparison on
58777	platforms built --without-wide-int.
58778
587792018-08-19  Stefan Monnier  <monnier@iro.umontreal.ca>
58780
58781	* lisp/progmodes/cc-mode.el: Add version header
58782
587832018-08-19  Paul Eggert  <eggert@cs.ucla.edu>
58784
58785	Add bignum support to expt
58786
58787	Problem and initial solution reported by Andy Moreton in:
58788	https://lists.gnu.org/r/emacs-devel/2018-08/msg00503.html
58789	* doc/lispref/numbers.texi (Math Functions): expt integer
58790	overflow no longer causes truncation; it now signals an error
58791	since bignum overflow is a big deal.
58792	* src/floatfns.c (Fexpt): Support bignum arguments.
58793	* test/src/floatfns-tests.el (bignum-expt): New test.
58794
587952018-08-18  Paul Eggert  <eggert@cs.ucla.edu>
58796
58797	Fix bug with ‘mod’ and float+bignum
58798
58799	Problem reported by Andy Moreton in:
58800	https://lists.gnu.org/r/emacs-devel/2018-08/msg00442.html
58801	* src/floatfns.c (fmod_float): Work even if an arg is a bignum.
58802	* test/src/floatfns-tests.el (bignum-mod): New test.
58803
588042018-08-18  Paul Eggert  <eggert@cs.ucla.edu>
58805
58806	Update from Gnulib
58807
58808	This incorporates:
58809	2018-08-18 Avoid -Wcast-function-type warnings from casts
58810	* build-aux/config.sub, lib/gettimeofday.c: Copy from Gnulib.
58811
588122018-08-18  Paul Eggert  <eggert@cs.ucla.edu>
58813
58814	Tweak integer division
58815
58816	* src/data.c (arith_driver): Reorder to remove unnecessary
58817	FIXNUMP.  Tighten test for whether to convert the divisor from
58818	fixnum to mpz_t.  Simplify.
58819
588202018-08-18  Paul Eggert  <eggert@cs.ucla.edu>
58821
58822	Simplify float_arith_driver
58823
58824	* src/data.c (float_arith_driver): Simplify, as we needn’t
58825	worry about that 30-year-old compiler bug any more.
58826
588272018-08-18  Paul Eggert  <eggert@cs.ucla.edu>
58828
58829	Minor fixups for intmax_t→mpz_t conversion
58830
58831	* src/alloc.c (mpz_set_intmax_slow): Tighten assertion.
58832	Work even in the unlikely case where libgmp uses nails.
58833	* src/data.c (FIXNUMS_FIT_IN_LONG): New constant.
58834	(arith_driver): Use it to tighten compile-time checks.
58835	* src/lisp.h (mpz_set_intmax): Do not assume that converting
58836	an out-of-range value to ‘long’ is harmless, as it might raise
58837	a signal.  Use simpler expression; compiler can optimize.
58838
588392018-08-18  Paul Eggert  <eggert@cs.ucla.edu>
58840
58841	Improve --with-wide-int mpz_t→fixnum conversion
58842
58843	These tuneups and minor simplifications should affect only
58844	platforms with EMACS_INT wider than ‘long’.
58845	* src/alloc.c (make_number): If the number fits in long but
58846	not in fixnum, do not attempt to convert to fixnum again.
58847	Tighten the compile-time check for whether the second attempt
58848	is worth trying, from sizeof (long) < sizeof (EMACS_INT) to
58849	LONG_WIDTH < FIXNUM_BITS.  Do not bother computing the sign of
58850	the value to tighten the bounds for whether to try the second
58851	attempt, as it’s not worth the effort.  Do not call mpz_size,
58852	which is unnecessary since the number of bits is already known
58853	and the loop can iterate over a shift count instead.  Avoid
58854	unnecessary casts.  Use + instead of | where either will do,
58855	as + is typically better for optimization.
58856
58857	Improve mpz_t to fixnum when --with-wide-int
58858	* src/alloc.c (make_number): Avoid undefined behavior
58859	when shifting an EMACS_UINT by more than EMACS_UINT_WIDTH bits.
58860	Check for integer overflow when shifting.
58861
588622018-08-18  Paul Eggert  <eggert@cs.ucla.edu>
58863
58864	Improve bignum comparison (Bug#32463#50)
58865
58866	* src/data.c (isnan): Remove, as we can assume C99.
58867	(bignumcompare): Remove, folding its functionality
58868	into arithcompare.
58869	(arithcompare): Compare bignums directly here.
58870	Fix bugs when comparing NaNs to bignums.
58871	When comparing a bignum to a fixnum, just look at the
58872	bignum’s sign, as that’s all that is needed.
58873	Decrease scope of locals when this is easy.
58874	* test/src/data-tests.el (data-tests-bignum): Test bignum vs NaN.
58875
588762018-08-18  Paul Eggert  <eggert@cs.ucla.edu>
58877
58878	Document that ‘random’ is limited to fixnums
58879
58880	Problem reported by Pip Cet (Bug#32463#20).
58881	* doc/lispref/numbers.texi (Random Numbers):
58882	* src/fns.c (Frandom): Adjust doc.
58883
588842018-08-18  Paul Eggert  <eggert@cs.ucla.edu>
58885
58886	Restore traditional lsh behavior on fixnums
58887
58888	* doc/lispref/numbers.texi (Bitwise Operations): Document that
58889	the traditional (lsh A B) behavior is for fixnums, and that it
58890	is an error if A and B are both negative and A is a bignum.
58891	See Bug#32463.
58892	* lisp/subr.el (lsh): New function, moved here from src/data.c.
58893	* src/data.c (ash_lsh_impl): Remove, moving body into Fash
58894	since it’s the only caller now.
58895	(Fash): Check for out-of-range counts.  If COUNT is zero,
58896	return first argument instead of going through libgmp.  Omit
58897	lsh code since lsh is now done in Lisp.  Add code for shifting
58898	fixnums right, to avoid a round trip through libgmp.
58899	(Flsh): Remove; moved to lisp/subr.el.
58900	* test/lisp/international/ccl-tests.el (shift):
58901	Test for traditional lsh behavior, instead of assuming
58902	lsh is like ash when bignums are present.
58903	* test/src/data-tests.el (data-tests-logand)
58904	(data-tests-logior, data-tests-logxor, data-tests-ash-lsh):
58905	New tests.
58906
589072018-08-17  Eli Zaretskii  <eliz@gnu.org>
58908
58909	Avoid compilation warning in w32fns.c
58910
58911	* src/w32fns.c (Fw32_read_registry): Avoid compiler warning
58912	regarding possible use of 'rootkey' without initializing it
58913	first.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
58914
589152018-08-17  Paul Eggert  <eggert@cs.ucla.edu>
58916
58917	Improve ‘abs’ performance
58918
58919	* src/floatfns.c (Fabs): Improve performance by not copying
58920	the argument if it would eql the result.  As a minor detail,
58921	don't assume fixnums are two’s complement.
58922
589232018-08-17  Eli Zaretskii  <eliz@gnu.org>
58924
58925	Improve documentation of bignums
58926
58927	* etc/NEWS: Enhance the announcement of bignums.
58928
58929	* doc/lispref/numbers.texi (Integer Basics): Add a missing
58930	period.  Reported by Basil L. Contovounesios <contovob@tcd.ie>.
58931
589322018-08-17  Andy Moreton  <andrewjmoreton@gmail.com>
58933
58934	Pacify -Wcast-function-type warnings in GCC 8.1
58935
58936	* src/image.c: Move attributes into DEF_DLL_FN call.
58937	* src/dynlib.c (dynlib_addr): Use get_proc_addr.
58938	* src/w32.h: (get_proc_addr): New function.
58939	(LOAD_DLL_FN): Use it.
58940	(DEF_DLL_FN): Allow function attributes after argument
58941	list.  Add function pointer type used by LOAD_DLL_FN.
58942	* src/w32.c (open_process_token, get_token_information)
58943	(lookup_account_sid, get_sid_sub_authority)
58944	(get_sid_sub_authority_count, get_security_info)
58945	(get_file_security, set_file_security)
58946	(set_named_security_info)
58947	(get_security_descriptor_owner, get_security_descriptor_group)
58948	(get_security_descriptor_dacl, is_valid_sid, equal_sid)
58949	(get_length_sid, copy_sid, get_native_system_info)
58950	(get_system_times, create_symbolic_link)
58951	(is_valid_security_descriptor, convert_sd_to_sddl)
58952	(convert_sddl_to_sd, get_adapters_info, reg_open_key_ex_w)
58953	(reg_query_value_ex_w, expand_environment_strings_w)
58954	(init_environment, create_toolhelp32_snapshot)
58955	(process32_first, process32_next, open_thread_token)
58956	(impersonate_self, revert_to_self, get_process_memory_info)
58957	(get_process_working_set_size, global_memory_status)
58958	(global_memory_status_ex, init_winsock)
58959	(maybe_load_unicows_dll, globals_of_w32): Use get_proc_addr.
58960	* src/w32fns.c (setup_w32_kbdhook, Ffile_system_info)
58961	(get_dll_version, w32_reset_stack_overflow_guard)
58962	(w32_backtrace, globals_of_w32fns): Use get_proc_addr.
58963	* src/w32font.c (get_outline_metrics_w, get_text_metrics_w)
58964	(get_glyph_outline_w, get_char_width_32_w): Use get_proc_addr.
58965	* src/w32heap.c (init_heap): Use get_proc_addr.
58966	* src/w32menu.c (globals_of_w32menu): Use get_proc_addr.
58967	* src/w32proc.c (init_timers, sys_kill, w32_compare_strings):
58968	Use get_proc_addr.
58969	* src/w32uniscribe.c (syms_of_w32uniscribe): Use get_proc_addr.
58970
589712018-08-17  Allen Li  <darkfeline@felesatra.moe>
58972
58973	Don't include text properties when making autoloads
58974
58975	* lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
58976	Ignore text properties when finding autoload defs.  Otherwise,
58977	autoload generation is less deterministic, as the exact format of the
58978	generated autoloads depends on whether the files are visited in
58979	Emacs.  (Bug#32395)
58980
589812018-08-17  Paul Eggert  <eggert@cs.ucla.edu>
58982
58983	Fix problems with logxor etc. and fixnums
58984
58985	These operations incorrectly treated negative fixnums as
58986	bignums greater than most-positive-fixnum.
58987	* src/alloc.c (mpz_set_intmax_slow): Avoid undefined
58988	behavior if signed unary negation overflows, while
58989	we’re in the neighborhood.
58990	(mpz_set_uintmax_slow): Remove.  All uses removed.
58991	* src/data.c (arith_driver): Treat fixnums as signed, not
58992	unsigned, even for logical operations.
58993	* src/lisp.h (mpz_set_uintmax): Remove.  All uses removed.
58994	* test/src/data-tests.el (data-tests-logand)
58995	(data-tests-logior, data-tests-logxor): New tests.
58996
589972018-08-16  Paul Eggert  <eggert@cs.ucla.edu>
58998
58999	Reject outlandishly-wide bignums
59000
59001	Do not allow bignums that are so wide that their log base 2
59002	might not fit into a fixnum, as this will cause problems elsewhere.
59003	We already have a similar limitation for bool-vectors.
59004	* src/emacs.c (check_bignum_size, xmalloc_for_gmp): New function.
59005	(xrealloc_for_gmp): Check for too-large bignum.
59006	(main): Use xmalloc_for_gmp.
59007
590082018-08-16  Paul Eggert  <eggert@cs.ucla.edu>
59009
59010	Speed up logcount on bignums
59011
59012	* src/data.c (Flogcount): Speed up by using the mpz equivalent
59013	of ~X instead of -X-1.
59014
590152018-08-16  Michael Albinus  <michael.albinus@gmx.de>
59016
59017	Fix Bug#32454
59018
59019	* lisp/files.el (find-alternate-file): Handle the wildcards case.
59020	(Bug#32454)
59021
590222018-08-16  Ken Brown  <kbrown@cornell.edu>
59023
59024	Pacify GCC with -Wunused-but-set-variable
59025
59026	* src/unexcw.c (read_exe_header):
59027	(fixup_executable):
59028	(unexec): Specify the "unused" attribute for variables that
59029	are used only in assertions.
59030
590312018-08-15  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
59032
59033	EUDC: Add more BBDB >= 3 support
59034
59035	* lisp/net/eudcb-bbdb.el: Declare BBDB >= 3 functions.
59036	(eudc-bbdb-field): Add translation from company to
59037	organization.
59038	(eudc-bbdb-extract-phones, eudc-bbdb-extract-addresses)
59039	(eudc-bbdb-format-record-as-result): Call BBDB >= 3 functions.
59040
590412018-08-15  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
59042
59043	EUDC: Remove XEmacs support
59044
59045	* lisp/net/eudc.el (eudc-mode, eudc-install-menu): Remove
59046	XEmacs support.
59047	* lisp/net/eudc-hotlist.el (eudc-hotlist-mode)
59048	(eudc-hotlist-emacs-menu): Likewise.
59049	* lisp/net/eudc-bob.el (eudc-bob-toggle-inline-display)
59050	(eudc-bob-popup-menu, eudc-bob-generic-keymap)
59051	(eudc-bob-sound-keymap, eudc-bob-url-keymap)
59052	(eudc-bob-mail-keymap): Likewise.
59053	* etc/NEWS (EUDC): Mention removal of XEmacs support.
59054
590552018-08-15  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
59056
59057	EUDC: Shorten eudc-tools-menu autoload
59058
59059	* lisp/net/eudc.el: Remove XEmacs support from eudc-tools-menu
59060	autoload.
59061
590622018-08-15  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
59063
59064	EUDC: Add commentary to eudc-bob.el
59065
59066	* lisp/net/eudc-bob.el: Add commentary.
59067
590682018-08-14  Eli Zaretskii  <eliz@gnu.org>
59069
59070	Improve documentation of last change
59071
59072	* lisp/hi-lock.el (hi-lock-set-pattern, hi-lock-face-buffer):
59073	Improve the doc strings.  (Bug#32365)
59074
59075	* etc/NEWS:
59076	* doc/emacs/display.texi (Highlight Interactively): Clarify
59077	wording.
59078
590792018-08-14  Grégory Mounié  <Gregory.Mounie@imag.fr>  (tiny change)
59080
59081	Interactive Highlighting: prefix argument to select subexp
59082
59083	* doc/emacs/display.texi (Highlight Interactively):
59084	* etc/NEWS: Document the change.
59085	* lisp/hi-lock.el (hi-lock-face-buffer, hi-lock-set-pattern): Use
59086	the prefix argument to highlight only the corresponding sub-expression
59087	of the regexp (Bug#32365).
59088
590892018-08-14  Paul Eggert  <eggert@cs.ucla.edu>
59090
59091	Rename --without-mini-gmp to --with-libgmp
59092
59093	* configure.ac (HAVE_GMP): Rename ‘configure’ option from
59094	--without-mini-gmp to --with-libgmp.  All uses changed.
59095	* doc/lispref/numbers.texi (Predicates on Numbers): Large
59096	integers are always available.  Clarify how eq works on them.
59097
590982018-08-14  Stephen Berman  <stephen.berman@gmx.net>
59099
59100	Fix last todo-edit-mode change
59101
59102	* lisp/calendar/todo-mode.el (todo-edit-mode): For editing an item
59103	instead of the whole file, the current todo-file must be set from
59104	todo-global-current-todo-file.
59105
59106	* test/lisp/calendar/todo-mode-tests.el (todo-test-current-file-in-edit-mode):
59107	New test.
59108
591092018-08-14  Stephen Berman  <stephen.berman@gmx.net>
59110
59111	Fix exiting from editing todo archive file (bug#32437)
59112
59113	* lisp/calendar/todo-mode.el (todo-edit-file): Make the warning
59114	also suitable for Todo Archive mode, and add more space to it.
59115	(todo-edit-quit): On quitting editing an archive file, return to
59116	the Todo Archive mode buffer editing was invoked in.
59117	(todo-check-format): Display a warning instead of a message when
59118	the categories sexp isn't as expected.
59119	(todo-mode-external-set): Remove.
59120	(todo-edit-mode): Set buffer local values of
59121	todo-current-todo-file and todo-categories from the todo or
59122	archive file being edited.
59123	(todo-categories-mode): Set buffer local values of
59124	todo-current-todo-file and todo-categories as before but directly
59125	instead of using superfluous todo-mode-external-set function.
59126
59127	* test/lisp/calendar/todo-mode-tests.el (todo-test-edit-quit): New test.
59128
591292018-08-14  Paul Eggert  <eggert@cs.ucla.edu>
59130
59131	Remove more traces of misc (Bug#32405)
59132
59133	Remove misc-objects-consed and the misc component of
59134	memory-use-count, since misc objects no longer exist.
59135	* doc/lispref/internals.texi, etc/NEWS: Mention this,
59136	and adjust better to recent removal of misc objects.
59137	* src/alloc.c (MEM_TYPE_MISC): Remove; no longer used.
59138	(Fmemory_use_counts): Omit misc count, since miscs
59139	no longer exist.
59140	(misc-objects-consed): Remove.
59141
591422018-08-14  Glenn Morris  <rgm@gnu.org>
59143
59144	Merge from origin/emacs-26
59145
59146	34e75c1 Add comment about floating point test
59147	e73e683 Ibuffer: Add toggle ibuffer-do-toggle-lock
59148	12f7116 Ibuffer: Detect correctly the buffers running a process
59149
591502018-08-14  Glenn Morris  <rgm@gnu.org>
59151
59152	Merge from origin/emacs-26
59153
59154	614cc65 ; * lisp/simple.el (line-move-visual): Fix typo.
59155	d2ad4ba Do not consider external packages to be removable (Bug#27822)
59156	ec0995c * src/alloc.c: Remove obsolete comments.
59157	ec6f588 Better support utf-8-with-signature and utf-8-hfs in HTML
59158	eb026a8 Don't use -Wabi compiler option
59159
591602018-08-14  Paul Eggert  <eggert@cs.ucla.edu>
59161
59162	Port recent changes to older GCC
59163
59164	Problem reported by Glenn Morris in:
59165	https://lists.gnu.org/r/emacs-devel/2018-08/msg00446.html
59166	* src/lisp.h (make_pointer_integer_unsafe):
59167	Port to older GCC.
59168
591692018-08-13  Paul Eggert  <eggert@cs.ucla.edu>
59170
59171	Update doc strings for fixnum constants
59172
59173	* src/data.c (most-positive-fixnum, most-negative-fixnum):
59174	Update doc strings in the light of fixnums.
59175
591762018-08-13  Paul Eggert  <eggert@cs.ucla.edu>
59177
59178	Fix check for unsafe watch descriptor
59179
59180	* src/lisp.h (make_pointer_integer_unsafe): New function.
59181	(make_pointer_integer): Use it.
59182	* src/gfilenotify.c (dir_monitor_callback): Omit redundant eassert.
59183	(Fgfile_add_watch): Signal an error instead of failing an
59184	assertion if the pointer does not work.
59185
591862018-08-13  Raimon Grau  <raimonster@gmail.com>
59187
59188	Add uuid as allowed thingatpt symbol (Bug#32372)
59189
59190	* etc/NEWS: Mention changes in thingatpt.el.
59191	* lisp/thingatpt.el (thing-at-point-uuid-regexp): Add regexp for uuid.
59192	(top-level): Add 'bounds-of-thing-at-point' operation for 'uuid'.
59193	* test/lisp/thingatpt-tests.el: Add tests for uuid at point.
59194
591952018-08-12  Paul Eggert  <eggert@cs.ucla.edu>
59196
59197	Pacify gcc -Og -Wuninitialized
59198
59199	This addresses the -Og uninitialized variable warnings I ran
59200	into on Fedora 28, which uses 8.1.1 20180712 (Red Hat 8.1.1-5).
59201	It also changes some explicit initializations to UNINIT
59202	when the variable does not actually need to be initialized.
59203	* src/process.c (connect_network_socket):
59204	* src/sysdep.c (system_process_attributes):
59205	* src/xfns.c (x_real_pos_and_offsets):
59206	* src/xterm.c (get_current_wm_state) [USE_XCB]:
59207	Add UNINIT.
59208	* src/editfns.c (tzlookup):
59209	* src/fns.c (Fnconc):
59210	* src/font.c (font_parse_fcname):
59211	* src/frame.c (x_set_frame_parameters):
59212	Prefer UNINIT to explicit initialization.
59213
592142018-08-12  Paul Eggert  <eggert@cs.ucla.edu>
59215
59216	* configure.ac (GMP_LIB): Set to -lgmp if --without-mini-gmp.
59217
592182018-08-12  Paul Eggert  <eggert@cs.ucla.edu>
59219
59220	Port better to x86 -fexcess-precision=fast
59221
59222	Problem reported by Eli Zaretskii in:
59223	https://lists.gnu.org/r/emacs-devel/2018-08/msg00380.html
59224	* src/data.c (arithcompare): Work around incompatibility
59225	between gcc -fexcess-precision=fast and the C standard on x86,
59226	by capturing the results of floating-point comparisons before
59227	the excess precision spontaneously decays.  Although this fix
59228	might not work in general, it does work here and is probably
59229	good enough for the platforms we care about.
59230
592312018-08-12  Stephen Berman  <stephen.berman@gmx.net>
59232
59233	Update and improve todo-mode item insertion and editing code
59234
59235	* lisp/calendar/todo-mode.el (todo-insert-item--param-key-alist)
59236	(todo-insert-item--keyof, todo-insert-item--this-key)
59237	(todo-insert-item--keys-so-far, todo-insert-item--args)
59238	(todo-insert-item--argleft. todo-insert-item--argsleft)
59239	(todo-insert-item--newargsleft, todo-insert-item--apply-args)
59240	(todo-edit-item--param-key-alist, todo-edit-item--prompt)
59241	(todo-edit-item--date-param-key-alist)
59242	(todo-edit-done-item--param-key-alist): Remove.
59243	(todo-insert-item--next-param): Reimplement to take advantage of
59244	lexical binding.
59245	(todo-insert-item): Adjust to new implementation of the above.
59246	(todo-edit-item--next-key): Incorporate now removed global
59247	variables, adjust signature accordingly, update use of pcase.
59248	(todo-edit-item): Adjust to changed signature of the above.
59249
592502018-08-12  Paul Eggert  <eggert@cs.ucla.edu>
59251
59252	Adjust .gdbinit to removal of misc objects
59253
59254	* src/.gdbinit (xtype, xpr): Adjust.
59255	(xmisctype, xmiscfree): Remove.
59256
592572018-08-12  Paul Eggert  <eggert@cs.ucla.edu>
59258
59259	Make mini-gmp safe for --enable-gcc-warnings
59260
59261	* configure.ac (GMP_OBJ): When building mini-gmp, compile
59262	mini-gmp-emacs.c, not mini-gmp.c.
59263	* lib-src/etags.c (NDEBUG): Don't attempt to redefine, in
59264	case the builder compiles with -DNDEBUG.
59265	* src/conf_post.h (NDEBUG) [!ENABLE_CHECKING && !NDEBUG]: Define.
59266	This avoids bloat in mini-gmp-emacs.o.
59267	* src/mini-gmp-emacs.c: New file, which pacifies --enable-gcc-warnings.
59268
592692018-08-12  Paul Eggert  <eggert@cs.ucla.edu>
59270
59271	Fix typo caught by zsh
59272
59273	* lisp/Makefile.in (compile-clean): Fix typo; missing ";" (Bug#32423).
59274
592752018-08-12  João Távora  <joaotavora@gmail.com>
59276
59277	jsonrpc-shutdown's cleanup also kills stderr buffer
59278
59279	* lisp/jsonrpc.el
59280	(Version): Bump to 1.0.6
59281	(jsonrpc-shutdown): Also kill stderr buffer
59282
592832018-08-12  João Távora  <joaotavora@gmail.com>
59284
59285	Revert "Make jsonrpc-shutdown a noop if process isn't running"
59286
59287	This reverts commit c580443325a3d071625185876a8f28e04793c625.  It
59288	leads to situations where the sentinel hasn't run yet, which brings
59289	problems if the normal process isn't running, but the stderr
59290	pseudo-process still is.
59291
59292	* lisp/jsonrpc.el (jsonrpc-shutdown): Always enter loop.
59293
592942018-08-12  Andreas Schwab  <schwab@linux-m68k.org>
59295
59296	Ensure no padding after union vectorlike_header
59297
59298	Instead of increasing GCALIGNMENT align union vectorlike_header by
59299	adding a Lisp_Object member.
59300
59301	* src/lisp.h (GCALIGNMENT): Revert last change.
59302	(union vectorlike_header): Add align member.
59303	(header_size): Verify the same as sizeof (union
59304	vectorlike_header)
59305
593062018-08-12  Andreas Schwab  <schwab@linux-m68k.org>
59307
59308	Avoid padding after union vectorlike_header
59309
59310	The PSEUDOVECTORSIZE macro requires that the first member after union
59311	vectorlike_header has the same offset in all pseudo vector structures.
59312
59313	* src/lisp.h (GCALIGNMENT) [!USE_LSB_TAG]: Use alignment of
59314	Lisp_Object.
59315
593162018-08-12  Paul Eggert  <eggert@cs.ucla.edu>
59317
59318	New 'configure' arg --with-mini-gmp
59319
59320	* configure.ac: It lets the builder override default of whther
59321	mini-gmp is used.  Use AC_SEARCH_LIBS as per Autoconf manual.
59322
593232018-08-11  Paul Eggert  <eggert@cs.ucla.edu>
59324
59325	Update from Gnulib
59326
59327	This incorporates:
59328	2018-08-11 verify: port 'assume' to traditional tools
59329	* build-aux/config.sub, lib/regcomp.c, lib/verify.h:
59330	Copy from Gnulib.
59331	* lib/gnulib.mk.in: Regenerate.
59332
593332018-08-11  Paul Eggert  <eggert@cs.ucla.edu>
59334
59335	Remove stray union Lisp_Misc doc (Bug#32405#35).
59336
593372018-08-11  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
59338
59339	Simplify mark_object for pseudovectors
59340
59341	Suggested by Pip Cet (Bug#32405#14).
59342	* src/alloc.c (mark_object): Remove unnecessary special cases for
59343	PVEC_MARKER, PVEC_BOOL_VECTOR, PVEC_MISC_PTR, PVEC_USER_PTR, and
59344	PVEC_FINALIZER.
59345
59346	change is to free up an enum Lisp_Type tag value, a scarce
59347
593482018-08-11  Paul Eggert  <eggert@cs.ucla.edu>
59349
59350	Turn misc objects into pseudovectors
59351
59352	Eliminate the category of miscellaneous objects, and turn all
59353	such objects into pseudovectors.  The immediate motivation
59354	for this change is to free up an enum Lisp_Type tag value, a
59355	scarce resource that can be better used elsewhere.  However,
59356	this change is worthwhile in its own right, as it improves
59357	performance slightly on my platform, 0.3% faster for 'make
59358	compile-always' on Fedora 28, and it simplifies the garbage
59359	collector and interpreter (Bug#32405).
59360	* doc/lispref/internals.texi (Garbage Collection):
59361	* etc/NEWS:
59362	Document change to garbage-collect return value.
59363	* src/alloc.c (total_markers, total_free_markers):
59364	(union aligned_Lisp_Misc, MARKER_BLOCK_SIZE)
59365	(struct marker_block, marker_block, marker_block_index)
59366	(misc_free_list, allocate_misc, live_misc_holding)
59367	(live_misc_p, sweep_misc):
59368	* src/lisp.h (lisp_h_MARKERP, lisp_h_MISCP, MARKERP, MISCP)
59369	(Lisp_Misc, enum Lisp_Misc_Type, Lisp_Misc_Free)
59370	(Lisp_Misc_Marker, Lisp_Misc_Overlay, Lisp_Misc_Finalizer)
59371	(Lisp_Misc_Ptr, Lisp_Misc_User_Ptr, Lisp_Misc_Limit)
59372	(Lisp_Misc_Bignum)
59373	(XSETMISC, struct Lisp_Misc_Any, XMISCANY, XMISCTYPE)
59374	(struct Lisp_Free, union Lisp_Misc, XMISC):
59375	Remove.  All uses removed.
59376	(cleanup_vector): Clean up objects that were formerly misc
59377	and are now pseudovectors.
59378	(make_misc_ptr, build_overlay, Fmake_marker, build_marker)
59379	(make_bignum_str, make_number, make_pure_bignum)
59380	(make_user_ptr, Fmake_finalizer):
59381	Build as pseudovectors, not as misc objects.
59382	(mark_finalizer_list, queue_doomed_finalizers)
59383	(compact_undo_list, mark_overlay, mark_object)
59384	(unchain_dead_markers):
59385	Mark as vector-like objects, not as misc objects.
59386	(mark_maybe_object, mark_maybe_pointer, valid_lisp_object_p)
59387	(total_bytes_of_live_objects, survives_gc_p):
59388	* src/fns.c (sxhash):
59389	No need to worry about misc objects.
59390	(garbage_collect_1): Do not generate a 'misc' component.
59391	(syms_of_alloc): No need for 'misc' symbol.
59392	* src/buffer.c (overlays_at, overlays_in, overlay_touches_p)
59393	(overlay_strings, recenter_overlay_lists)
59394	(fix_start_end_in_overlays, fix_overlays_before)
59395	(Foverlay_lists, report_overlay_modification)
59396	(evaporate_overlays):
59397	* src/editfns.c (overlays_around):
59398	* src/data.c (Ftype_of):
59399	* src/fns.c (internal_equal):
59400	* src/lisp.h (mint_ptrp, xmint_pointer, FINALIZERP)
59401	(XFINALIZER, MARKERP, XMARKER, OVERLAYP, XOVERLAY, USER_PTRP)
59402	(XUSER_PTR, BIGNUMP, XBIGNUM):
59403	* src/print.c (print_vectorlike, print_object):
59404	* src/undo.c (record_marker_adjustments):
59405	* src/xdisp.c (load_overlay_strings):
59406	Formerly misc objects are now pseudovectors.
59407	* src/lisp.h (PVEC_MARKER, PVEC_OVERLAY, PVEC_FINALIZER)
59408	(PVEC_BIGNUM, PVEC_MISC_PTR, PVEC_USER_PTR):
59409	New constants, replacing their misc versions.  All uses changed.
59410	(struct Lisp_Marker, struct Lisp_Overlay, struct Lisp_Misc_Ptr)
59411	(struct Lisp_Bignum, struct Lisp_User_Ptr, struct Lisp_Finalizer):
59412	Make usable as a pseudovector by using a pseudovector header,
59413	replacing any DIY components, and putting Lisp_Object members
59414	first.  All uses changed.
59415
594162018-08-11  Paul Eggert  <eggert@cs.ucla.edu>
59417
59418	Pacify Oracle Studio 12.6
59419
59420	* src/xfns.c (Fx_frame_restack):
59421	* src/xterm.c (x_io_error_quitter): Omit unreachable code.
59422
594232018-08-11  Paul Eggert  <eggert@cs.ucla.edu>
59424
59425	Reject old libgmp that lack mpz_roinit_n
59426
59427	* configure.ac (HAVE_GMP): Port to RHEL 6.9, which has
59428	libgmp 3.5, which predates mpz_roinit_n.
59429
594302018-08-11  Tom Tromey  <tom@tromey.com>
59431
59432	Merge branch 'feature/bignum'
59433
594342018-08-11  Michael Albinus  <michael.albinus@gmx.de>
59435
59436	Fix Bug#32226, hopefully
59437
59438	* test/lisp/shadowfile-tests.el: Set Tramp variables for hydra.
59439
594402018-08-11  João Távora  <joaotavora@gmail.com>
59441
59442	Fix blunder in last commit for lisp/jsonrpc.el
59443
59444	* lisp/jsonrpc.el (jsonrpc-shutdown): Use jsonrpc--process.
59445
594462018-08-11  João Távora  <joaotavora@gmail.com>
59447
59448	Add option to cleanup buffers to jsonrpc-shutdown
59449
59450	* lisp/jsonrpc.el (Version): Bump to 1.0.5
59451	(jsonrpc-shutdown): Add an option to cleanup process buffer.
59452
594532018-08-11  João Távora  <joaotavora@gmail.com>
59454
59455	* lisp/jsonrpc.el (jsonrpc-request): Clarify comment.
59456
594572018-08-11  João Távora  <joaotavora@gmail.com>
59458
59459	Make jsonrpc-shutdown a noop if process isn't running
59460
59461	* lisp/jsonrpc.el
59462	(Version): Bump to 1.0.4
59463	(jsonrpc-shutdown): Noop if server isn't running.
59464
594652018-08-11  Andy Moreton  <andrewjmoreton@gmail.com>
59466
59467	Avoid calling vc backend if 'vc-display-status' is nil
59468
59469	* lisp/vc/vc-hooks.el (vc-mode-line): Avoid calling VC backend if
59470	'vc-display-status' is nil.  (Bug#32225)
59471
594722018-08-11  Eli Zaretskii  <eliz@gnu.org>
59473
59474	Give auto-save-no-message a proper version attribute
59475
59476	* lisp/cus-start.el (standard): Give 'auto-save-no-message' the
59477	proper version attribute.  (Bug#31039)
59478
594792018-08-11  Federico Tedin  <federicotedin@gmail.com>
59480
59481	Add variable auto-save-no-message
59482
59483	* src/keyboard.c (auto-save-no-message): New variable, allows
59484	suppressing auto-saving message.
59485	* lisp/cus-start.el (standard): Add 'auto-save-no-message' variable.
59486	* doc/emacs/files.texi (Auto Save): Document 'auto-save-no-message'.
59487	* etc/NEWS: Mention 'auto-save-no-message'.  (Bug#31039)
59488
594892018-08-11  Eli Zaretskii  <eliz@gnu.org>
59490
59491	Reinstate the 'tis620-2533' character set
59492
59493	This is a partial revert of "Make 'tis620-2533' character set be an
59494	alias for 'thai-iso8859-11'" commit from Jul 28, 2018.
59495	* lisp/international/mule-conf.el (tis620-2533): No longer an
59496	alias for thai-iso8859-11.  Instead, reinstate the original
59497	definition of tis620-2533, but without eight-bit-control in
59498	the :superset attribute.  For the details, see
59499	http://lists.gnu.org/archive/html/emacs-devel/2018-08/msg00117.html
59500	and the surrounding discussions.
59501	* lisp/international/fontset.el (font-encoding-alist)
59502	(font-encoding-charset-alist): Reinstate tis620-2533 charset.
59503	* lisp/language/thai.el (thai-tis620): Restore the original
59504	:charset-list.
59505	("Thai"): Restore the original nonascii-translation.
59506	* lisp/w32-fns.el: Use tis620-2533 instead of thai-iso8859-11.
59507
595082018-08-11  Michael Albinus  <michael.albinus@gmx.de>
59509
59510	Editorial changes in tramp.texi
59511
59512	* doc/misc/tramp.texi (Bug Reports): Tramp buffers shall be
59513	appended as attachments to bug reports.
59514	(Frequently Asked Questions): New item, determining remote buffers.
59515
595162018-08-11  Nikolaus Rath  <Nikolaus@rath.org>
59517
59518	Make nnimap support IMAP namespaces
59519
59520	* lisp/gnus/nnimap.el (nnimap-use-namespaces): Introduce new
59521	server variable.
59522	(nnimap-group-to-imap, nnimap-get-groups): Transform IMAP group
59523	names to Gnus group name by stripping / prefixing personal
59524	namespace prefix.
59525	(nnimap-open-connection-1): Ask server for namespaces and store
59526	them.
59527
59528	* lisp/gnus/nnimap.el (nnimap-request-group-scan)
59529	(nnimap-request-create-group, nnimap-request-delete-group)
59530	(nnimap-request-rename-group, nnimap-request-move-article)
59531	(nnimap-process-expiry-targets)
59532	(nnimap-request-update-group-status)
59533	(nnimap-request-accept-article, nnimap-request-list)
59534	(nnimap-retrieve-group-data-early, nnimap-change-group)
59535	(nnimap-split-incoming-mail): Use nnimap-group-to-imap.
59536	(nnimap-group-to-imap): New function to map Gnus group names to
59537	IMAP folder names.  (Bug#21057)
59538
595392018-08-11  Eli Zaretskii  <eliz@gnu.org>
59540
59541	Improve error message when Hunspell dictionaries are misconfigured
59542
59543	* lisp/textmodes/ispell.el
59544	(ispell-find-hunspell-dictionaries): Produce a meaningful
59545	error message if Hunspell dictionaries are misconfigured.
59546	(Bug#32319)
59547
595482018-08-10  Glenn Morris  <rgm@gnu.org>
59549
59550	Merge from origin/emacs-26
59551
59552	71c92d8 Fix copying text properties by 'format'
59553	96be6b6 Improve error messages regarding initial-buffer-choice (Bug#2...
59554	00fb127 * test/lisp/wdired-tests.el (wdired-test-unfinished-edit-01):...
59555
59556	Conflicts:
59557		lisp/startup.el
59558
595592018-08-10  Glenn Morris  <rgm@gnu.org>
59560
59561	Merge from origin/emacs-26
59562
59563	5afbf62 Fix emacsclient check for term.el buffer (Bug#21041)
59564	5132a58 Improve documentation of 'set-fontset-font'
59565	cd90325 Improve documentation of M-?
59566	155a885 Reinterpret Esperanto characters in iso-transl as iso-8859-3.
59567	a0ef733 Fix Flyspell mode when several languages are mixed in a buffer
59568
595692018-08-10  Michael Albinus  <michael.albinus@gmx.de>
59570
59571	Another try to fix Bug#32226
59572
59573	* test/lisp/shadowfile-tests.el (shadow-test06-literal-groups)
59574	(shadow-test07-regexp-groups, shadow-test08-shadow-todo)
59575	(shadow-test09-shadow-copy-files): Use `set-visited-file-name'
59576	instead of setting the value in `buffer-file-name' directly.
59577	(Bug#32226)
59578
595792018-08-09  João Távora  <joaotavora@gmail.com>
59580
59581	Allow completely disabling event logging in jsonrpc.el
59582
59583	Pretty printing the event sexp can be very slow when very big messages
59584	are involved.
59585
59586	* lisp/jsonrpc.el (Version): Bump to 1.0.3
59587	(jsonrpc-connection): Tweak docstring for
59588	jsonrpc--event-buffer-scrollback-size.
59589	(jsonrpc--log-event): Only log if max size is positive.
59590
595912018-08-09  Tom Tromey  <tom@tromey.com>
59592
59593	Fix up for bignums after merge from trunk
59594
59595	* src/character.c (char_width): Use XFIXNUM.
59596	* src/editfns.c (styled_format): Use XFIXNUM, XUFIXNUM.
59597	* src/fns.c (Fproper_list_p): Use make_fixnum.
59598
595992018-08-09  Tom Tromey  <tom@tromey.com>
59600
59601	Merge remote-tracking branch 'origin/master' into feature/bignum
59602
596032018-08-09  Tom Tromey  <tom@tromey.com>
59604
59605	Use mpz_sgn rather than comparisons against 0
59606
59607	* src/data.c (Fmod): Use mpz_sgn.
59608	* src/lisp.h (NATNUMP): Use mpz_sgn.
59609
596102018-08-09  Andy Moreton  <andrewjmoreton@gmail.com>
59611
59612	Do not use GMP_NUMB_BITS
59613
59614	* src/alloc.c (make_number): Use mp_bits_per_limb, not GMP_NUMB_BITS.
59615
596162018-08-09  Charles A. Roelli  <charles@aurox.ch>
59617
59618	Update src/{ns,mac}*.m to use bignum-compatible macros
59619
59620	* src/nsterm.m:
59621	* src/nsselect.m:
59622	* src/nsmenu.m:
59623	* src/nsimage.m:
59624	* src/nsfont.m:
59625	* src/nsfns.m:
59626	* src/macfont.m: Replace
59627	"make_number"		-> "make_fixnum",
59628	"XINT"			-> "XFIXNUM",
59629	"XFASTINT"		-> "XFIXNAT",
59630	"TYPE_RANGED_INTEGERP"	-> "TYPE_RANGED_FIXNUMP",
59631	"RANGED_INTEGERP"	-> "RANGED_FIXNUMP",
59632	"CHECK_NATNUM"		-> "CHECK_FIXNAT",
59633	"CHECK_NUMBER"		-> "CHECK_FIXNUM",
59634	"INTEGERP"		-> "FIXNUMP",
59635	"NUMBERP"		-> "FIXED_OR_FLOATP",
59636	as done in the following changes:
59637	2018-07-06 Rename integerp->fixnum, etc, in preparation
59638	for bignums (42fe787b)
59639	2018-08-07 More macro renamings for bignum (d1ec3a0a)
59640
596412018-08-09  Michael Albinus  <michael.albinus@gmx.de>
59642
59643	Fix Bug#32304
59644
59645	* test/lisp/net/tramp-tests.el (tramp-test45-unload):
59646	Handle tramp-archive autoloaded objects.  Remove tag :unstable.
59647
596482018-08-09  João Távora  <joaotavora@gmail.com>
59649
59650	Trim JSONRPC events buffer when it's too large
59651
59652	* lisp/jsonrpc.el (Version): Bump to 1.0.2
59653	(jsonrpc--events-buffer-scrollback-size): New
59654	jsonrpc-connection slot.
59655	(jsonrpc--log-event): Use it to trim buffer.
59656
596572018-08-09  João Távora  <joaotavora@gmail.com>
59658
59659	Synchronous JSONRPC requests can be cancelled on user input
59660
59661	This allows building more responsive interfaces, such as a snappier
59662	completion backend.
59663
59664	* lisp/jsonrpc.el (Version): Bump to 1.0.1
59665	(jsonrpc-connection-receive): Don't warn when continuation isn't
59666	found.
59667	(jsonrpc-request): Add parameters CANCEL-ON-INPUT and
59668	CANCEL-ON-INPUT-RETVAL.
59669
596702018-08-08  Paul Eggert  <eggert@cs.ucla.edu>
59671
59672	Minor pseudovector allocation cleanups
59673
59674	* src/alloc.c (VECTOR_BLOCK_SIZE, VECTOR_BLOCK_BYTES)
59675	(VBLOCK_BYTES_MIN, VBLOCK_BYTES_MAX, VECTOR_MAX_FREE_LIST_INDEX):
59676	Prefer enums to macros where either will do.
59677	(allocate_vector_from_block): Arg is ptrdiff_t, not size_t.
59678	Use eassume instead of eassert.
59679	(PSEUDOVEC_STRUCT): New macro, which verifies the already-existing
59680	assumption that the vector-like objects are small.
59681	(cleanup_vector): Use it.  Use if-then-else systematically;
59682	this lets GCC do a bit better job.
59683
59684	2018-08-08  Paul Eggert  <eggert@cs.ucla.edu>
59685
59686	* src/alloc.c (VBLOCK_BYTES_MAX): Use vroundup_ct, not
59687	vroundup, so that can be used in static assertions.
59688
596892018-08-08  Tom Tromey  <tom@tromey.com>
59690
59691	Fix mod-test-sum-test for bignums
59692
59693	* test/src/emacs-module-tests.el (mod-test-sum-test): Update
59694	for bignums.
59695
596962018-08-08  Tom Tromey  <tom@tromey.com>
59697
59698	Handle leading "+" when converting string to bignum
59699
59700	* src/lread.c (string_to_number): Skip leading "+" when calling
59701	make_bignum_str.
59702
597032018-08-08  Tom Tromey  <tom@tromey.com>
59704
59705	Use mpz_import in mpz_set_uintmax_slow
59706
59707	* src/alloc.c (mpz_set_uintmax_slow): Use mpz_import.
59708
597092018-08-08  Tom Tromey  <tom@tromey.com>
59710
59711	Make purecopy work for bignums
59712
59713	* src/alloc.c (make_pure_bignum): New function.
59714	(purecopy): Use it.
59715
597162018-08-08  Michael Albinus  <michael.albinus@gmx.de>
59717
59718	Fix problems in tramp-tests
59719
59720	* test/lisp/net/tramp-tests.el (tramp-test45-unload): Filter out
59721	tramp-archive objects.  (Bug#32304)
59722
59723	* test/lisp/net/tramp-tests.el (tramp-test43-auto-load):
59724	Add skip condition.  (Bug#32304)
59725	(tramp-test43-unload): Tag as :unstable.
59726
597272018-08-08  Michael Albinus  <michael.albinus@gmx.de>
59728
59729	Filter out tramp-archive objects in tramp-test45-unload
59730
59731	* test/lisp/net/tramp-tests.el (tramp-test45-unload): Filter out
59732	tramp-archive objects.  (Bug#32304)
59733
597342018-08-08  Michael Albinus  <michael.albinus@gmx.de>
59735
59736	Tag expensive tests in tramp-archive.el  (Bug#30807)
59737
59738	* test/lisp/net/tramp-archive-tests.el (tramp-archive-test44-auto-load)
59739	(tramp-archive-test44-delay-load): Rename.
59740	(tramp-archive-test07-file-exists-p)
59741	(tramp-archive-test08-file-local-copy)
59742	(tramp-archive-test09-insert-file-contents)
59743	(tramp-archive-test11-copy-file)
59744	(tramp-archive-test15-copy-directory)
59745	(tramp-archive-test16-directory-files)
59746	(tramp-archive-test17-insert-directory)
59747	(tramp-archive-test18-file-attributes)
59748	(tramp-archive-test19-directory-files-and-attributes)
59749	(tramp-archive-test20-file-modes)
59750	(tramp-archive-test21-file-links)
59751	(tramp-archive-test26-file-name-completion)
59752	(tramp-archive-test44-auto-load)
59753	(tramp-archive-test44-delay-load): Tag them as :expensive-test,
59754	because they run longer than 10 seconds.  (Bug#30807)
59755
597562018-08-07  Tom Tromey  <tom@tromey.com>
59757
59758	More macro renamings for bignum
59759
59760	* src/alloc.c, src/bidi.c, src/buffer.c, src/buffer.h, src/bytecode.c,
59761	src/callint.c, src/callproc.c, src/casefiddle.c, src/casetab.c,
59762	src/category.c, src/ccl.c, src/character.c, src/character.h,
59763	src/charset.c, src/charset.h, src/chartab.c, src/cmds.c, src/coding.c,
59764	src/composite.c, src/composite.h, src/data.c, src/dbusbind.c,
59765	src/decompress.c, src/dired.c, src/dispextern.h, src/dispnew.c,
59766	src/disptab.h, src/doc.c, src/dosfns.c, src/editfns.c,
59767	src/emacs-module.c, src/emacs.c, src/eval.c, src/fileio.c,
59768	src/floatfns.c, src/fns.c, src/font.c, src/font.h, src/fontset.c,
59769	src/frame.c, src/frame.h, src/fringe.c, src/ftcrfont.c, src/ftfont.c,
59770	src/gfilenotify.c, src/gnutls.c, src/gtkutil.c, src/image.c,
59771	src/indent.c, src/insdel.c, src/intervals.c, src/json.c,
59772	src/keyboard.c, src/keymap.c, src/kqueue.c, src/lcms.c, src/lisp.h,
59773	src/lread.c, src/macros.c, src/marker.c, src/menu.c, src/minibuf.c,
59774	src/msdos.c, src/print.c, src/process.c, src/profiler.c, src/search.c,
59775	src/sound.c, src/syntax.c, src/syntax.h, src/sysdep.c, src/term.c,
59776	src/termhooks.h, src/textprop.c, src/undo.c, src/w32.c,
59777	src/w32console.c, src/w32fns.c, src/w32font.c, src/w32inevt.c,
59778	src/w32proc.c, src/w32select.c, src/w32term.c, src/w32term.h,
59779	src/w32uniscribe.c, src/window.c, src/xdisp.c, src/xfaces.c,
59780	src/xfns.c, src/xfont.c, src/xftfont.c, src/xmenu.c, src/xml.c,
59781	src/xrdb.c, src/xselect.c, src/xsettings.c, src/xterm.c, src/xwidget.c
59782	Rename XINT->XFIXNUM, XFASTINT->XFIXNAT, XUINT->XUFIXNUM.
59783
597842018-08-07  Eli Zaretskii  <eliz@gnu.org>
59785
59786	Avoid segfaults in jason-serialize on MS-Windows
59787
59788	* src/json.c (Fjson_serialize): Free the string with
59789	'json_free', not 'free', since it was allocated with
59790	'json_malloc'.  (Bug#32381)
59791
597922018-08-06  Stephen Berman  <stephen.berman@gmx.net>
59793
59794	Fix todo-mode bug involving active region (bug#32379)
59795
59796	* lisp/calendar/todo-mode.el (todo-forward-category)
59797	(todo-jump-to-category, todo-toggle-view-done-items)
59798	(todo-toggle-view-done-only, todo-edit-quit, todo-search)
59799	(todo-go-to-source-item, todo-diary-goto-entry): Deactivate the
59800	mark when the region is active.
59801
598022018-08-06  Stephen Berman  <stephen.berman@gmx.net>
59803
59804	Correct and improve part of previous todo-mode.el fix
59805
59806	* lisp/calendar/todo-mode.el (todo-jump-to-category): Improve code
59807	by using bound-and-true-p.  This leaves a byte-compiler warning
59808	unsilenced, but ideally, there shouldn't be a warning here (see
59809	https://lists.gnu.org/archive/html/emacs-devel/2018-08/msg00131.html).
59810	(todo--fifiles-history): New variable.
59811	(todo-find-filtered-items-file): Use it to fix the filtered items
59812	files history list for completing-read.
59813
598142018-08-06  Eli Zaretskii  <eliz@gnu.org>
59815
59816	Fix the MS-Windows build as followup to Gnulib regex import
59817
59818	* lib-src/ntlib.c (nl_langinfo): New function.  (Bug#32194)
59819
598202018-08-05  Paul Eggert  <eggert@cs.ucla.edu>
59821
59822	Spruce up some regex-emacs comments
59823
59824	* src/regex-emacs.c, src/regex-emacs.h: Update comments.
59825
598262018-08-05  Paul Eggert  <eggert@cs.ucla.edu>
59827
59828	Remove always-0 struct re_pattern_buffer members
59829
59830	* src/regex-emacs.h (struct re_pattern_buffer):
59831	Remove no_sub, not_bol, not_eol.  They are always zero.
59832	All uses removed, and code simplified.
59833
598342018-08-05  Paul Eggert  <eggert@cs.ucla.edu>
59835
59836	Simplify regex-emacs by assuming Emacs syntax
59837
59838	* src/regex-emacs.c (reg_syntax_t)
59839	(RE_BACKSLASH_ESCAPE_IN_LISTS, RE_BK_PLUS_QM)
59840	(RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS)
59841	(RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS)
59842	(RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE)
59843	(RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT)
59844	(RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS)
59845	(RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES)
59846	(RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING)
59847	(RE_NO_GNU_OPS, RE_FRUGAL, RE_SHY_GROUPS)
59848	(RE_NO_NEWLINE_ANCHOR, RE_SYNTAX_EMACS, RE_TRANSLATE_P):
59849	Remove.  All uses removed and resulting code simplified.
59850	(TRANSLATE): Treat nil as an absent translation table, not zero.
59851	All uses changed.
59852
598532018-08-05  Paul Eggert  <eggert@cs.ucla.edu>
59854
59855	Simplify regex-emacs code by assuming Emacs
59856
59857	* src/regex-emacs.c: Omit no-longer-needed AIX code.
59858	Don’t ignore GCC warnings.
59859	Include regex-emacs.h immediately after config.h,
59860	to test that it’s independent.
59861	Omit the "#ifndef emacs" and "#ifdef REGEX_MALLOC" and
59862	"#if WIDE_CHAR_SUPPORT" or "#ifdef _REGEX_RE_COMP",
59863	code, as we are no longer interested in compiling outside
59864	Emacs (with or without debugging or native wide char support)
59865	or in avoiding alloca.
59866	(REGEX_EMACS_DEBUG, regex_emacs_debug): Rename from DEBUG and debug,
59867	to avoid collision with other DEBUGS.  All uses changed.
59868	In debugging output, change %ld and %zd to %zu when appropriate.
59869	No need to include stddef.h, stdlib.h, sys/types.h, wchar.h,
59870	wctype.h, locale/localeinfo.h, locale/elem-hash.h, langinfo.h,
59871	libintl.h, unistd.h, stdbool.h, string.h, stdio.h, assert.h.
59872	All uses of assert changed to eassert.
59873	(RE_DUP_MAX, reg_syntax_t, RE_BACKSLASH_ESCAPE_IN_LISTS)
59874	(RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS)
59875	(RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS, RE_DOT_NEWLINE)
59876	(RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE, RE_INTERVALS)
59877	(RE_LIMITED_OPS, RE_NEWLINE_ALT, RE_NO_BK_BRACES)
59878	(RE_NO_BK_PARENS, RE_NO_BK_REFS, RE_NO_BK_VBAR)
59879	(RE_NO_EMPTY_RANGES, RE_UNMATCHED_RIGHT_PAREN_ORD)
59880	(RE_NO_POSIX_BACKTRACKING, RE_NO_GNU_OPS, RE_FRUGAL)
59881	(RE_SHY_GROUPS, RE_NO_NEWLINE_ANCHOR, RE_SYNTAX_EMACS)
59882	(REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE)
59883	(REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN)
59884	(REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT)
59885	(REG_EEND, REG_ESIZE, REG_ERPAREN, REG_ERANGEX, REG_ESIZEBR)
59886	(reg_errcode_t, REGS_UNALLOCATED, REGS_REALLOCATE, REGS_FIXED)
59887	(RE_NREGS, RE_TRANSLATE, RE_TRANSLATE_P):
59888	Move here from regex-emacs.h.
59889	(RE_NREGS): Define unconditionally.
59890	(boolean): Remove.  All uses replaced by bool.
59891	(WIDE_CHAR_SUPPORT, regfree, regexec, regcomp, regerror):
59892	(re_set_syntax, re_syntax_options, WEAK_ALIAS, gettext, gettext_noop):
59893	Remove.  All uses removed.
59894	(malloc, realloc, free): Do not redefine.  Adjust all callers
59895	to use xmalloc, xrealloc, xfree instead.
59896	(re_error_msgid): Use C99 to avoid need to keep in same order
59897	as reg_error_t.
59898	(REGEX_USE_SAFE_ALLOCA): Simplify by using USE_SAFE_ALLOCA.
59899	(REGEX_ALLOCATE, REGEX_REALLOCATE, REGEX_FREE, REGEX_ALLOCATE_STACK)
59900	(REGEX_REALLOCATE_STACK, REGEX_FREE_STACK): Remove.
59901	All callers changed to use the non-REGEX_MALLOC version.
59902	(REGEX_TALLOC): Remove.  All callers changed to use SAFE_ALLOCA.
59903	(re_set_syntax): Remove; unused.
59904	(MATCH_MAY_ALLOCATE): Remove; now always true.  All uses simplified.
59905	(INIT_FAILURE_ALLOC): Define unconditionally.
59906	(re_compile_fastmap): Now static.
59907	(re_compile_pattern): Avoid unnecessary cast.
59908	* src/regex-emacs.h (EMACS_REGEX_H): Renamed from _REGEX_H to
59909	avoid possible collision with glibc.
59910	Don’t include sys/types.h.  All uses of ssize_t changed to ptrdiff_t.
59911	Don’t worry about C++ or VMS.
59912	Assume emacs is defined and that _REGEX_RE_COMP and WIDE_CHAR_SUPPORT
59913	are not.
59914	Define struct re_registers before including lisp.h.
59915	(REG_ENOSYS, RE_TRANSLATE_TYPE): Remove; all uses replaced by
59916	Lisp_Object.
59917	(regoff_t): Remove.  All uses replaced with ptrdiff_t.
59918	(re_match, regcomp, regexec, regerror, regfree):
59919	Remove decl of nonexistent functions.
59920	(RE_DEBUG, RE_SYNTAX_AWK, RE_SYNTAX_GNU_AWK)
59921	(RE_SYNTAX_POSIX_AWK, RE_SYNTAX_GREP, RE_SYNTAX_EGREP)
59922	(RE_SYNTAX_POSIX_EGREP, RE_SYNTAX_ED, RE_SYNTAX_SED)
59923	(_RE_SYNTAX_POSIX_COMMON, RE_SYNTAX_POSIX_BASIC)
59924	(RE_SYNTAX_POSIX_MINIMAL_BASIC, RE_SYNTAX_POSIX_EXTENDED)
59925	(RE_SYNTAX_POSIX_MINIMAL_EXTENDED, REG_EXTENDED, REG_ICASE)
59926	(REG_NEWLINE, REG_NOSUB, REG_NOTBOL, REG_NOTEOL, regmatch_t):
59927	Remove; unused.
59928	* src/search.c (Fset_match_data): Simplify range test now that
59929	we know it’s ptrdiff_t.
59930
599312018-08-05  Paul Eggert  <eggert@cs.ucla.edu>
59932
59933	Use Gnulib regex for lib-src
59934
59935	Emacs regular expressions forked from everyone else long ago.
59936	This makes it official and should allow simplification later.
59937	etags.c now uses the glibc regex API, falling back on a
59938	Gnulib-supplied substitute lib/regex.c if necessary.
59939	Emacs proper now uses its own regular expression module.
59940	Although this patch may look dauntingly large, most of it
59941	was generated automatically by admin/merge-gnulib
59942	and contains an exact copy of the glibc regex source,
59943	and the by-hand changes do not grow the Emacs source code.
59944	* admin/merge-gnulib (GNULIB_MODULES): Add regex.
59945	(AVOIDED_MODULES): Add btowc, langinfo, lock, mbrtowc, mbsinit,
59946	nl_langinfo, wchar, wcrtomb, wctype-h.
59947	* lib-src/Makefile.in (regex-emacs.o): Remove; Gnulib does it now.
59948	(etags_deps, etags_libs): Remove regex-emacs.o.
59949	* lib-src/etags.c: Go back to including regex.h.
59950	(add_regex): Use unsigned char translation array,
59951	since glibc regex requires that.
59952	* lib/Makefile.in (not_emacs_OBJECTS, for_emacs_OBJECTS): New macros.
59953	(libegnu_a_OBJECTS): Use them, to avoid building e-regex.o.
59954	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
59955	* lib/regcomp.c, lib/regex.c, lib/regex.h, lib/regex_internal.c:
59956	* lib/regex_internal.h, lib/regexec.c, m4/builtin-expect.m4:
59957	* m4/eealloc.m4, m4/glibc21.m4, m4/mbstate_t.m4, m4/regex.m4:
59958	New files, copied from Gnulib.
59959	* src/regex-emacs.h, src/conf_post.h:
59960	(RE_TRANSLATE_TYPE, RE_TRANSLATE, RE_TRANSLATE_P):
59961	Move from src/conf_post.h to src/regex-emacs.h,
59962	so that they don’t interfere with compiling lib/regex.c.
59963
599642018-08-05  Paul Eggert  <eggert@cs.ucla.edu>
59965
59966	Rename src/regex.c to src/regex-emacs.c.
59967
59968	This is in preparation for using Gnulib regex for etags,
59969	to avoid collisions in include directives.
59970	* src/regex-emacs.c: Rename from src/regex.c.
59971	* src/regex-emacs.h: Rename from src/regex.h.  All uses changed.
59972	* test/src/regex-emacs-tests.el: Rename from test/src/regex-tests.el.
59973
599742018-08-05  Paul Eggert  <eggert@cs.ucla.edu>
59975
59976	Update from gnulib
59977
59978	This incorporates:
59979	2018-08-05 Fix link error regarding 'rpl_environ'
59980	* build-aux/config.guess, lib/unistd.in.h, lib/warn-on-use.h:
59981	* m4/extern-inline.m4: Copy from Gnulib.
59982
599832018-08-05  Andy Moreton  <andrewjmoreton@gmail.com>
59984
59985	Fix test and comment in CCL change
59986
59987	* lisp/international/ccl.el (ccl-fixnum): Update comment.
59988	* test/lisp/international/ccl-tests.el (prog-midi-dump): Add
59989	trailing space to expected result.
59990
599912018-08-04  Mike Kupfer  <mkupfer@alum.berkeley.edu>
59992	    Jeffrey C Honig  <jch@honig.net>
59993
59994	Fix mh-redistribute to work with nmh 1.5 and identities (SF#268)
59995
59996
59997	* lisp/mh-e/mh-comp.el (mh-redistribute): Add a non-optional
59998	identity parameter.  Use mh-bare-components to generate a draft,
59999	then apply identity-specific settings.  Add more details to the
60000	"Resent" annotation line.
60001	(mh-dist-formfile): New.
60002	(mh-bare-components): Add a formfile argument.
60003	(mh-edit-again, mh-send-sub): Track the change to
60004	mh-bare-components.
60005	* lisp/mh-e/mh-identity.el (mh-select-identity)
60006	(mh-identity-field): New.
60007
600082018-08-04  Tom Tromey  <tom@tromey.com>
60009
60010	Fix hash functions for bignums
60011
60012	* src/fns.c (cmpfn_eql, hashfn_eql): Handle bignums.
60013	(sxhash_bignum): New function.
60014	(sxhash): Use it.
60015	* test/src/fns-tests.el (test-bignum-hash): New test.
60016
600172018-08-04  Tom Tromey  <tom@tromey.com>
60018
60019	Fix bignum comparisons with NaN
60020
60021	* src/data.c (isnan): Move earlier.
60022	(bignumcompare): Explicitly handle NaN.
60023	* test/src/data-tests.el (data-tests-min): Add NaN tests
60024	for bignum.
60025	(data-check-sign): Fix for previous patch.
60026	* test/src/fns-tests.el (test-bignum-eql): Add NaN test.
60027
600282018-08-04  Andy Moreton  <andrewjmoreton@gmail.com>
60029
60030	Make bignums work better when EMACS_INT is larger than long
60031
60032	* lisp/international/ccl.el (ccl-fixnum): New function.
60033	(ccl-embed-data, ccl-embed-current-address, ccl-dump): Use it.
60034	* src/alloc.c (make_number): Handle case where EMACS_INT is
60035	larger than long.
60036	* src/data.c (bignumcompare): Handle case where EMACS_INT is
60037	larger than long.
60038	(arith_driver): Likewise.  Coerce markers.
60039	(float_arith_driver): Coerce markers.
60040	(Flogcount): Use mpz_sgn.
60041	(ash_lsh_impl): Fix bugs.
60042	(Fsub1): Fix underflow check.
60043	* src/lisp.h (NUMBERP): Don't check BIGNUMP.
60044	(CHECK_FIXNUM_OR_FLOAT_COERCE_MARKER): Fix indentation.
60045	* test/lisp/international/ccl-tests.el: New file.
60046
600472018-08-04  Stephen Berman  <stephen.berman@gmx.net>
60048
60049	Fix assorted todo-mode bugs (bug#32366)
60050
60051	* lisp/calendar/todo-mode.el (todo-forward-category): Fix
60052	calculation for skipping backward over archived categories.
60053	(todo-jump-to-category): When hl-line-mode is enabled, force
60054	highlighting to compensate for apparent failure of
60055	post-command-hook to run.
60056	(todo-insert-item--basic): Prevent inserting a new todo item in an
60057	archive category.
60058	(todo-delete-item): Ensure done items separator disappears when
60059	the last done item is deleted.
60060	(todo-edit-item--header): Fix calculation for choosing a month
60061	prior to the current one.
60062	(todo-find-filtered-items-file): Fix use of completing-read,
60063	correcting typo in default value passed to it and confining
60064	history to filtered items files.
60065	(todo-go-to-source-item): Make a noop when point is not on an item.
60066	(todo-save-filtered-items-buffer): Make buffer read-only after
60067	saving and improve buffer name.
60068	(todo-key-bindings-t+a+f): Remove three mistakenly included bindings.
60069	(todo-key-bindings-t+a): Add two mistakenly omitted bindings.
60070
600712018-08-04  Noam Postavsky  <npostavs@gmail.com>
60072
60073	Respect non-saved value of `read-short-answer' (Bug#31782)
60074
60075	* lisp/emacs-lisp/map-ynp.el (read-answer-short): Add an `auto'
60076	setting.
60077	(read-answer): Check the function cell of `yes-or-no-p' when
60078	`read-answer-short' is `auto' rather than calling
60079	`custom-reevaluate-setting' which would reset the option to its saved
60080	value.
60081
600822018-08-04  Noam Postavsky  <npostavs@gmail.com>
60083
60084	Merge from emacs-26
60085
60086	f0b8e64fb7 Avoid assertion violations in maybe_produce_line_number
60087	7669bf7880 Avoid assertion violations in set_text_properties_1
60088
600892018-08-04  Noam Postavsky  <npostavs@gmail.com>
60090
60091	Merge from emacs-26
60092
60093	951c5a127f Fix wdired test failure when byte compiled (bug#32318)
60094	0252f7311f * test/lisp/wdired-tests.el (wdired-test-symlink-name): Ne...
60095	dd51434714 Fix url's thing-at-point beginning-op (Bug#32028)
60096
600972018-08-04  Michael Albinus  <michael.albinus@gmx.de>
60098
60099	* lisp/international/mule-cmds.el (universal-coding-system-argument):
60100
60101	Use `current-input-mode' for determining quit char.
60102
601032018-08-04  Michael Albinus  <michael.albinus@gmx.de>
60104
60105	Rename Tramp method "owncloud" to "nextcloud"
60106
60107	In the spirit of freedom, "nextcloud" is preferred over "owncloud".
60108
60109	* doc/misc/tramp.texi (Quick Start Guide, GVFS based methods):
60110	* etc/NEWS: Rename "owncloud" method to "nextcloud".
60111
60112	* lisp/net/tramp-gvfs.el (tramp-gvfs-methods, tramp-goa-methods)
60113	(tramp-gvfs-url-file-name, tramp-gvfs-handler-mounted-unmounted)
60114	(tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
60115	(tramp-get-goa-accounts): Use "nextcloud" instead of "owncloud".
60116	(tramp-gvfs-nextcloud-default-prefix)
60117	(tramp-gvfs-nextcloud-default-prefix-regexp): Rename them.  Adapt
60118	all callees.
60119
60120	* test/lisp/net/tramp-tests.el (tramp--test-nextcloud-p):
60121	Rename from `tramp--test-owncloud-p'.
60122	(tramp-test11-copy-file, tramp-test12-rename-file): Use it.
60123
601242018-08-03  Ken Brown  <kbrown@cornell.edu>
60125
60126	Fix a filenotify test failure on Cygwin
60127
60128	* test/lisp/filenotify-tests.el
60129	(file-notify-test04-autorevert): Increase a sleep-for time
60130	from 2 to 3 on Cygwin.  This avoids sporadic failures of the
60131	test.  (Bug#32363)
60132
601332018-08-03  Gemini Lasswell  <gazally@runbox.com>
60134
60135	Merge branch 'scratch/backtrace-mode'
60136
601372018-08-03  Gemini Lasswell  <gazally@runbox.com>
60138
60139	Fix some documentation formatting nits
60140
60141	* doc/misc/ert.texi (Running Tests Interactively): Correct
60142	Elisp manual titile in xref.
60143	* doc/lispref/edebug.texi (Edebug Misc): Use single argument
60144	form of xref.
60145	* doc/lispref/debugging.texi (Backtraces): Add comma and
60146	period after xref braces.
60147	(Backtraces): Correct Emacs manual title.
60148	(Internals of Debugger): Add a space before period.
60149
601502018-08-03  Gemini Lasswell  <gazally@runbox.com>
60151
60152	Fix typo in edebug-backtrace-hide-instrumentation's docstring.
60153
60154	* lisp/emacs-lisp/edebug.el (edebug-backtrace-hide-instrumentation):
60155	Fix docstring copypasta.
60156
601572018-08-03  Gemini Lasswell  <gazally@runbox.com>
60158
60159	Give two backtrace-mode commands better names
60160
60161	* lisp/emacs-lisp/backtrace.el (backtrace-mode-map): Update
60162	bindings and menu items with new function names.
60163	(backtrace-collapse, backtrace-pretty-print)
60164	(backtrace--collapse, backtrace--pretty-print): Remove functions.
60165	(backtrace-single-line, backtrace-multi-line)
60166	(backtrace--single-line, backtrace--multi-line): New functions.
60167	(backtrace--reformat-sexp): Remove 'error-message' argument.
60168	* test/lisp/emacs-lisp/backtrace-tests.el
60169	(backtrace-tests--pretty-print-and-collapse): Remove.
60170	(backtrace-tests--single-and-multi-line): New test.
60171	(backtrace-tests--verify-pp-and-collapse): Remove.
60172	(backtrace-tests--verify-single-and-multi-line): New function.
60173
601742018-08-03  Gemini Lasswell  <gazally@runbox.com>
60175
60176	Move 'backtrace' from subr.el to backtrace.el
60177
60178	* lisp/subr.el (backtrace, backtrace--print-frame): Remove functions.
60179	* lisp/emacs-lisp/backtrace.el (backtrace-backtrace): Remove function.
60180	(backtrace): New function.
60181	(backtrace-to-string): Make argument optional.
60182	* doc/lispref/debugging.texi (Internals of Debugger): Update
60183	description of 'backtrace' function.
60184
601852018-08-03  Gemini Lasswell  <gazally@runbox.com>
60186
60187	Add new commands to Edebug backtraces
60188
60189	Add commands to go to source if available, and to show and hide
60190	Edebug's instrumentation.  Make Edebug pop to backtraces instead of
60191	displaying them, which makes Edebug consistant with the behavior of
60192	ERT and the Lisp Debugger.
60193	* doc/lispref/edebug.texi (Edebug Misc): Document when and how you can
60194	jump to source code from an Edebug backtrace.  Document
60195	'edebug-backtrace-show-instrumentation' and
60196	'edebug-backtrace-hide-instrumentation'.
60197	* lisp/emacs-lisp/backtrace.el (backtrace-frame): Add comments to
60198	describe the fields.
60199	(backtrace-goto-source-functions): New
60200	abnormal hook.
60201	(backtrace-mode-map): Add keybinding and menu item for
60202	backtrace-goto-source.
60203	(backtrace--flags-width): New constant.
60204	(backtrace-update-flags): Use it.
60205	(backtrace-goto-source): New command.
60206	(backtrace--print-flags): Print the :source-available flag.
60207	* lisp/emacs-lisp/edebug.el (edebug-backtrace-frames)
60208	(edebug-instrumented-backtrace-frames): New variables.
60209	(edebug-backtrace, edebug--backtrace-frames): Remove functions.
60210	(edebug-pop-to-backtrace, edebug--backtrace-goto-source)
60211	(edebug--add-source-info): New functions.
60212	(edebug-mode-map, edebug-mode-menus): Replace 'edebug-backtrace' with
60213	'edebug-pop-to-backtrace'.
60214	(edebug--strip-instrumentation): New function.
60215	(edebug--unwrap-and-add-info): Remove.
60216	(edebug-unwrap-frame, edebug-add-source-info): New functions.
60217	(edebug-backtrace-show-instrumentation)
60218	(edebug-backtrace-hide-instrumentation): New commands.
60219	* test/lisp/emacs-lisp/edebug-tests.el (edebug-tests-check-keymap):
60220	Verify keybindings in backtrace-mode-map used by new test.
60221	Update with binding for 'edebug-pop-to-backtrace'.
60222	(edebug-tests-backtrace-goto-source): New test.
60223	* test/lisp/emacs-lisp/edebug-resources/edebug-test-code.el
60224	(edebug-test-code-range): Add a new stop point.
60225
602262018-08-03  Gemini Lasswell  <gazally@runbox.com>
60227
60228	Add a menu for backtrace-mode
60229
60230	* lisp/emacs-lisp/backtrace.el (backtrace-mode-map): Add a menu.
60231	* lisp/emacs-lisp/debug.el (debugger-mode-map): Change menu text for
60232	'backtrace-help-follow-symbol' to better describe what it does.
60233
602342018-08-03  Gemini Lasswell  <gazally@runbox.com>
60235
60236	* lisp/emacs-lisp/debug.el (debugger-mode-map): Use easy-menu-define.
60237
602382018-08-03  Gemini Lasswell  <gazally@runbox.com>
60239
60240	Add new command to expand all "..."s in a backtrace frame
60241
60242	* doc/lispref/debugging.texi (Backtraces): Document new keybinding.
60243	* lisp/emacs-lisp/backtrace.el (backtrace-line-length): Add the
60244	option of unlimited line length.
60245	(backtrace--match-ellipsis-in-string): Add a comment to explain
60246	why this function is necessary.
60247	(backtrace-mode-map): Add keybinding for 'backtrace-expand-ellipses'.
60248	(backtrace-expand-ellipsis): Use 'cl-print-to-string-with-limit'.
60249	(backtrace-expand-ellipses): New command.
60250	(backtrace-print-to-string): Use 'cl-print-to-string-with-limit'.
60251	Tag the printed forms with a gensym instead of the values of
60252	print-length and print-level.
60253	(backtrace--print): Add 'stream' argument.
60254	* test/lisp/emacs-lisp/backtrace-tests.el
60255	(backtrace-tests--expand-ellipsis): Make the test less dependent
60256	on the implementation.
60257	(backtrace-tests--expand-ellipses): New test.
60258
60259	Move the fitting of a printed representation into a limited number of
60260	characters using appropriate values of print-level and print-length
60261	from 'backtrace-print-to-string' to cl-print.el for future use by
60262	other parts of Emacs.
60263	* lisp/emacs-lisp/cl-print.el (cl-print-to-string-with-limit): New
60264	function.
60265	* test/lisp/emacs-lisp/cl-print-tests.el
60266	(cl-print-tests-print-to-string-with-limit): New test.
60267
602682018-08-03  Gemini Lasswell  <gazally@runbox.com>
60269
60270	Change keybinding for backtrace-collapse from '=' to '-'
60271
60272	'+' and '-' make a more intuitive pair of keybindings for
60273	backtrace-pretty-print and backtrace-collapse than '+' and '='.
60274	* lisp/emacs-lisp/backtrace.el (backtrace-mode-map):
60275	* doc/lispref/debugging.texi (Backtraces): Change
60276	keybinding for backtrace-collapse.
60277
602782018-08-03  Gemini Lasswell  <gazally@runbox.com>
60279
60280	Add more tests for backtrace-mode
60281
60282	* test/lisp/emacs-lisp/backtrace-tests.el (backtrace-tests--variables)
60283	(backtrace-tests--backward-frame, backtrace-tests--forward-frame)
60284	(backtrace-tests--pretty-print-and-collapse)
60285	(backtrace-tests--verify-pp-and-collapse)
60286	(backtrace-tests--print-circle, backtrace-tests--make-regexp)
60287	(backtrace-tests--expand-ellipsis): New tests.
60288	(backtrace-tests--to-string): Use backtrace-tests--make-backtrace.
60289	(backtrace-tests--get-substring): New function.
60290
60291	Change the method of generating sample backtraces in backtrace tests
60292	to work whether or not the tests are byte-compiled.
60293	* test/lisp/emacs-lisp/backtrace-tests.el (backtrace-tests--func1)
60294	(backtrace-tests--func2, backtrace-tests--func3)
60295	(backtrace-tests--create-backtrace-frames): Remove.
60296	(backtrace-tests--uncompiled-functions): New constant.
60297	(backtrace-tests--make-backtrace, backtrace-tests--setup-buffer):
60298	New functions.
60299	(backtrace-tests--backtrace-lines)
60300	(backtrace-tests--backtrace-lines-with-locals): New functions.
60301	(backtrace-tests--line-count): New constant.
60302	(backtrace-tests--result, backtrace-tests--result-with-locals):
60303	New functions.
60304	(backtrace-tests--header): New constant.
60305	(backtrace-tests--insert-header): Use backtrace-tests--header.
60306	(backtrace-tests--with-buffer): Remove.
60307
603082018-08-03  Gemini Lasswell  <gazally@runbox.com>
60309
60310	Add link in backtraces to position in buffer being evaluated (bug#14081)
60311
60312	* lisp/emacs-lisp/backtrace.el (backtrace-frame): Add buffer field.
60313	(backtrace-get-frames): Set buffer field of frame.
60314	(backtrace-buffer-pos): New button type.
60315	(backtrace--pop-to-buffer-pos): New function.
60316	(backtrace--print-func-and-args): Create a button for the buffer
60317	position if it is set.
60318
603192018-08-03  Gemini Lasswell  <gazally@runbox.com>
60320
60321	Add links in backtraces to functions written in C (bug#25393)
60322
60323	* lisp/emacs-lisp/backtrace.el (backtrace--print-func-and-args):
60324	Look up file names for built-in functions with evaluated arguments.
60325
603262018-08-03  Gemini Lasswell  <gazally@runbox.com>
60327
60328	Add prefix argument to backtrace-toggle-print-circle
60329
60330	With prefix argument, toggle print-circle for the whole buffer.
60331	* lisp/emacs-lisp/backtrace.el (backtrace-toggle-print-circle): Add
60332	universal prefix argument.
60333	(backtrace--toggle-feature): Add new argument 'all' to toggle all
60334	frames.
60335	(backtrace--set-feature): New function.
60336	(backtrace-mode): Use indent functions from Lisp modes.
60337
603382018-08-03  Gemini Lasswell  <gazally@runbox.com>
60339
60340	Lazily print backtrace frame local variables
60341
60342	Instead of printing the local variables for all frames when the
60343	backtrace buffer is created, print them when they are first made
60344	visible.  Add a prefix argument to backtrace-toggle-locals to toggle
60345	local variables display for the entire buffer.
60346	* lisp/emacs-lisp/backtrace.el (backtrace-view): Mention
60347	:show-locals in docstring.
60348	(backtrace-get-section-end): Remove function.
60349	(backtrace-toggle-locals): Add prefix argument.
60350	(backtrace--with-output-variables): Move before first use.
60351	(backtrace--set-frame-locals-visible): New function.
60352	(backtrace--set-locals-visible-overlay): New function.
60353	(backtrace--set-locals-visible): Remove function.
60354	(backtrace-toggle-feature): Remove TODO comment.
60355	(backtrace--print-locals): Skip printing the locals if they are not
60356	visible.
60357
603582018-08-03  Gemini Lasswell  <gazally@runbox.com>
60359
60360	Always make buttons from function names in backtraces
60361
60362	* lisp/emacs-lisp/backtrace.el (backtrace-view)
60363	(backtrace--print-func-and-args, backtrace-mode): Always
60364	make buttons.  Remove all uses of ':do-xrefs'.
60365	* lisp/emacs-lisp/debug.el (debugger-setup-buffer): Modify
60366	backtrace-view instead of setting it.
60367	* lisp/emacs-lisp/edebug.el (edebug-backtrace):
60368	* lisp/emacs-lisp/ert.el
60369	(ert-results-pop-to-backtrace-for-test-at-point):
60370	Remove initialization of backtrace-view.
60371
603722018-08-03  Gemini Lasswell  <gazally@runbox.com>
60373
60374	Add backtrace-mode and use it in the debugger, ERT and Edebug
60375
60376	* doc/lispref/debugging.texi (Using Debugger): Remove explanation of
60377	backtrace buffer.  Refer to new node.
60378	(Backtraces): New node.
60379	(Debugger Commands): Refer to new node.  Remove 'v'.
60380	* doc/lispref/edebug.texi (Edebug Misc): Refer to new node.
60381	* doc/misc/ert.texi (Running Tests Interactively): Refer to new node.
60382
60383	* lisp/emacs-lisp/backtrace.el: New file.
60384	* test/lisp/emacs-lisp/backtrace-tests.el: New file.
60385
60386	* lisp/emacs-lisp/debug.el: (debugger-buffer-state): New cl-defstruct.
60387	(debugger--restore-buffer-state): New function.
60388	(debug): Use a debugger-buffer-state object to save and restore buffer
60389	state.  Fix bug#15749 by leaving an unused buffer in debugger-mode,
60390	empty, instead of in fundamental-mode, and then when reusing a buffer,
60391	not calling debugger-mode if the buffer is already in debugger-mode.
60392	(debugger-insert-backtrace): Remove.
60393	(debugger-setup-buffer): Use backtrace-mode.
60394	(debugger--insert-header): New function.
60395	(debugger-continue, debugger-return-value): Change check for flags to
60396	use backtrace-frames.
60397	(debugger-frame-number): Determine backtrace frame number from
60398	backtrace-frames.
60399	(debugger--locals-visible-p, debugger--insert-locals)
60400	(debugger--show-locals, debugger--hide-locals)
60401	(debugger-toggle-locals): Remove.
60402	(debugger-mode-map): Make a child of backtrace-mode-map.  Move
60403	navigation commands to backtrace-mode-map.  Bind 'q' to debugger-quit
60404	instead of top-level.  Make Help Follow menu item call
60405	backtrace-help-follow-symbol.
60406	(debugger-mode): Derive from backtrace-mode.
60407	(debug-help-follow): Remove.  Move body of this function to
60408	'backtrace-help-follow-symbol' in backtrace.el.
60409	(debugger-quit): New function.
60410
60411	* lisp/emacs-lisp/edebug.el (edebug-unwrap-results): Remove warning
60412	in docstring about circular results.
60413	(edebug-unwrap): Use pcase.
60414	(edebug-unwrap1): New function to unwrap circular objects.
60415	(edebug-unwrap*): Use it.
60416	(edebug--frame): New cl-defstruct.
60417	(edebug-backtrace): Call the buffer *Edebug Backtrace* and use
60418	backtrace-mode.  Get the frames from edebug--backtrace-frames.
60419	(edebug--backtrace-frames, edebug--unwrap-and-add-info)
60420	(edebug--symbol-not-prefixed-p): New functions.
60421
60422	* lisp/emacs-lisp/lisp-mode.el
60423	(lisp-el-font-lock-keywords-for-backtraces)
60424	(lisp-el-font-lock-keywords-for-backtraces-1)
60425	(lisp-el-font-lock-keywords-for-backtraces-2): New constants.
60426
60427	* lisp/emacs-lisp/ert.el (ert--print-backtrace): Remove.
60428	(ert--run-test-debugger): Use backtrace-get-frames.
60429	(ert-run-tests-batch): Use backtrace-to-string.
60430	(ert-results-pop-to-backtrace-for-test-at-point): Use backtrace-mode.
60431	(ert--insert-backtrace-header): New function.
60432
60433	* test/lisp/emacs-lisp/ert-tests.el (ert-test--which-file):
60434	Use backtrace-frame slot accessor.
60435
604362018-08-03  Gemini Lasswell  <gazally@runbox.com>
60437
60438	Add methods for strings to cl-print
60439
60440	* lisp/emacs-lisp/cl-print.el (cl-print-object) <string>: New method.
60441	(cl-print-object-contents) <string>: New method.
60442	(cl-print--find-sharing): Look in string property lists.
60443
60444	* test/lisp/emacs-lisp/cl-print-tests.el (cl-print-tests-3): Test
60445	printing of long strings.
60446	(cl-print-tests-4): Test printing of strings nested in other objects.
60447	(cl-print-tests-strings, cl-print-tests-ellipsis-string): New
60448	tests.
60449
604502018-08-03  Gemini Lasswell  <gazally@runbox.com>
60451
60452	Support ellipsis expansion in cl-print
60453
60454	* lisp/emacs-lisp/cl-print.el (cl-print-object-contents): New
60455	generic method.
60456	(cl-print-object-contents) <cons, vector,cl-structure-object>: New
60457	methods.
60458	(cl-print-object) <cons>: Use cl-print-insert-ellipsis.
60459	(cl-print-object) <vector, cl-structure-object>: Elide whole object if
60460	print-level exceeded.  Use cl-print-insert-ellipsis.
60461	(cl-print-insert-ellipsis, cl-print-propertize-ellipsis)
60462	(cl-print-expand-ellipsis): New functions.
60463
60464	* test/lisp/emacs-lisp/cl-print-tests.el (cl-print-tests-4): Test
60465	printing of objects nested in other objects.
60466	(cl-print-tests-strings, cl-print-tests-ellipsis-cons)
60467	(cl-print-tests-ellipsis-vector, cl-print-tests-ellipsis-struct)
60468	(cl-print-tests-ellipsis-circular): New tests.
60469	(cl-print-tests-check-ellipsis-expansion)
60470	(cl-print-tests-check-ellipsis-expansion-rx): New functions.
60471
604722018-08-01  Tino Calancha  <tino.calancha@gmail.com>
60473
60474	New commands to create an empty file
60475
60476	Similarly as `create-directory', `dired-create-directory',
60477	the new commands create the parent dirs as needed (Bug#24150).
60478	* lisp/files.el (make-empty-file): New command.
60479
60480	* lisp/dired-aux.el (dired-create-empty-file): New command.
60481	(dired--find-topmost-parent-dir): New function extracted
60482	from `dired-create-directory'.
60483	(dired-create-directory, dired-create-empty-file): Use it.
60484
60485	* lisp/dired.el (dired-mode-map):
60486	Add menu entry for `dired-create-empty-file'.
60487
60488	* doc/emacs/dired.texi (Misc Dired Features)
60489	* doc/lispref/files.texi (Create/Delete Dirs): Update manual.
60490
604912018-08-01  Paul Eggert  <eggert@cs.ucla.edu>
60492
60493	Substitute a <ieee754.h> on hosts lacking it
60494
60495	* .gitignore: Add lib/ieee754.h.
60496	* admin/merge-gnulib (GNULIB_MODULES): Add ieee754-h.
60497	* configure.ac: Remove ieee754.h check, as Gnulib now does that.
60498	* etc/NEWS: Mention this.
60499	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
60500	* lib/ieee754.in.h, m4/ieee754-h.m4: New files, from Gnulib.
60501	* src/lisp.h (IEEE_FLOATING_POINT): Now a macro so that it
60502	can be used in #if.
60503	* src/lread.c, src/print.c: Include <ieee754.h> if
60504	IEEE_FLOATING_POINT, not if HAVE_IEEE754_H.
60505	* src/lread.c (string_to_number):
60506	* src/print.c (float_to_string):
60507	Process NaNs only on IEEE hosts, and assume <ieee754.h>
60508	in that case.
60509
605102018-08-01  Michael Albinus  <michael.albinus@gmx.de>
60511
60512	Fix Bug#32325
60513
60514	* lisp/net/tramp-sh.el (tramp-sh-handle-make-directory): In case
60515	of PARENTS flush also upper directories caches.  (Bug#32325)
60516
605172018-08-01  Gemini Lasswell  <gazally@runbox.com>
60518
60519	Fix Edebug spec for cl-macrolet (bug#29919)
60520
60521	Add an Edebug matching function for cl-macrolet which keeps track of
60522	its bindings and treats them as macros without Edebug specs when found
60523	in the body of the expression.
60524	* lisp/emacs-lisp/edebug.el (edebug--cl-macrolet-defs): New variable.
60525	(edebug-list-form-args): Use it.
60526	(edebug--current-cl-macrolet-defs): New variable.
60527	(edebug-match-cl-macrolet-expr, edebug-match-cl-macrolet-name)
60528	(edebug-match-cl-macrolet-body): New functions.
60529	* lisp/emacs-lisp/cl-macs.el (cl-macrolet): Use cl-macrolet-expr
60530	for Edebug spec.
60531	* test/lisp/emacs-lisp/edebug-tests.el (edebug-tests-cl-macrolet):
60532	New test.
60533	* test/lisp/emacs-lisp/edebug-resources/edebug-test-code.el
60534	(edebug-test-code-use-cl-macrolet): New function.
60535
605362018-08-01  Stephen Berman  <stephen.berman@gmx.net>
60537
60538	Fix todo-mode commands called on done items separator
60539
60540	The done items separator is not reachable by todo-mode navigation
60541	commands, but it is e.g. by C-n and C-p.  Ensure that invoking
60542	todo-mode commands with point on the separator does not result in
60543	unexpected results, errors or file corruption (bug#32343).
60544
60545	* lisp/calendar/todo-mode.el (todo-insert-item--basic): Make
60546	copying item and inserting item "here" noops when invoked on done
60547	items separator.  Consolidate error handling of these cases.  Also
60548	restrict "here" insertion to valid positions in the current
60549	category, since this is simpler than the previous behavior of
60550	inserting as the first item, which was moreover undocumented,
60551	counterintuitive and superfluous.
60552	(todo-set-item-priority, todo-move-item, todo-item-done)
60553	(todo-item-start, todo-item-end): Make noops when invoked on done
60554	items separator.
60555
60556	* test/lisp/calendar/todo-mode-tests.el: Require ert-x.
60557	(todo-test--insert-item): Add formal parameters of
60558	todo-insert-item--basic.
60559	(todo-test--done-items-separator): New function.
60560	(todo-test-done-items-separator01-bol)
60561	(todo-test-done-items-separator01-eol)
60562	(todo-test-done-items-separator02-bol)
60563	(todo-test-done-items-separator02-eol)
60564	(todo-test-done-items-separator03-bol)
60565	(todo-test-done-items-separator03-eol)
60566	(todo-test-done-items-separator04-bol)
60567	(todo-test-done-items-separator04-eol)
60568	(todo-test-done-items-separator05-bol)
60569	(todo-test-done-items-separator05-eol)
60570	(todo-test-done-items-separator06-bol)
60571	(todo-test-done-items-separator06-eol)
60572	(todo-test-done-items-separator07): New tests.
60573
605742018-08-01  Paul Eggert  <eggert@cs.ucla.edu>
60575
60576	Read and print NaN significand if <ieee754.h>
60577
60578	* configure.ac: Check for ieee754.h.
60579	* doc/lispref/numbers.texi (Float Basics): Document
60580	that NaN string representation digits are machine-dependent.
60581	* etc/NEWS: Mention the change.
60582	* src/lread.c, src/print.c [HAVE_IEEE754_H]: Include ieee754.h.
60583	* src/lread.c (string_to_number) [HAVE_IEEE754_H]:
60584	* src/print.c (float_to_string) [HAVE_IEEE754_H]:
60585	Read and print NaN significand.
60586
605872018-07-31  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
60588
60589	Simplify by assuming C99 math.h isnan etc.
60590
60591	These should be portable nowadays.
60592	* src/data.c (isnan): Remove.
60593	* src/floatfns.c (isfinite, isnan): Remove.
60594	* src/print.c: Include math.h, for isinf and isnan.
60595	(float_to_string): Simplify by using them.
60596
605972018-07-31  Stephen Gildea  <stepheng+emacs@gildea.com>
60598
60599	Reset mh-blacklist and mh-whitelist on folder undo
60600
60601	* lisp/mh-e/mh-funcs.el (mh-undo-folder): Set mh-blacklist and mh-whitelist
60602	to nil, as is done with the other lists of pending operations.
60603
606042018-07-30  Michael Albinus  <michael.albinus@gmx.de>
60605
60606	Fix Bug#32304
60607
60608	* lisp/net/tramp.el (tramp-handle-substitute-in-file-name):
60609	Handle special cas on Cygwin and MS-Windows.  (Bug#32304)
60610
606112018-07-29  Noam Postavsky  <npostavs@gmail.com>
60612
60613	* lisp/term.el (term-read-noecho): Mark obsolete.
60614
606152018-07-29  Eli Zaretskii  <eliz@gnu.org>
60616
60617	Avoid gettimeofday deprecation warnings with MinGW
60618
60619	* nt/inc/ms-w32.h (__POSIX_2008_DEPRECATED)
60620	[__MINGW32_VERSION >= 5001000L]: Define to nothing, to avoid
60621	deprecation warnings about gettimeofday with mingw.org's MinGW
60622	runtime 5.1 and later.
60623
606242018-07-29  Paul Eggert  <eggert@cs.ucla.edu>
60625
60626	Merge from origin/emacs-26
60627
60628	39d3e8b Fix last change in 'char_width'
60629	67679f0 Add initial tests for wdired.el
60630
606312018-07-29  Tino Calancha  <tino.calancha@gmail.com>
60632
60633	Prefer ?* to hide passwords
60634
60635	It might be argued that a hidden string is more legible when using
60636	?* as the hidden character instead of ?.
60637	For example, the following strings have the same length:
60638	"......"
60639
60640	"******"
60641
60642	It's slighly easier to visually count the number of characters in the second
60643	string (Bug#32220).
60644
60645	* lisp/subr.el (read-passwd): Prefer ?* as default char instead of ?.
60646	* doc/lispref/minibuf.texi (Reading a Password): Update manual.
60647
606482018-07-29  Stephen Berman  <stephen.berman@gmx.net>
60649
60650	Handle symlinks in wdired.el when restoring filename property
60651
60652	* lisp/wdired.el (wdired--restore-dired-filename-prop): If the
60653	file name is a symbolic link, only propertize the link name.  This
60654	prevents wdired-create-parentdirs from turning the link into a
60655	directory.
60656
606572018-07-28  Stephen Berman  <stephen.berman@gmx.net>
60658
60659	Fix bugs in wdired.el involving dired-filename property
60660
60661	After every change in wdired-mode, put the dired-filename text
60662	property on the file name.  This ensures that changing some but not
60663	all characters in the name succeeds with non-nil
60664	wdired-use-interactive-rename (bug#32173) and it also ensures that
60665	changed names can be found (e.g. by dired-isearch-filenames) while
60666	still in wdired-mode.
60667
60668	* lisp/wdired.el (wdired--restore-dired-filename-prop): New function.
60669	(wdired-change-to-wdired-mode): Add it to after-change-functions.
60670	(wdired-change-to-dired-mode): Remove it from after-change-functions.
60671	(wdired-finish-edit): Move invocation of
60672	wdired-change-to-dired-mode below invocation of wdired-do-renames,
60673	so that the latter runs wdired--restore-dired-filename-prop, but
60674	above the invocation of revert-buffer to avoid using
60675	wdired-revert, which changes back to wdired-mode.
60676	(wdired-search-and-rename): Wrap renaming in unwind-protect and if
60677	user types C-g when prompted to change the file name, make sure we
60678	return to dired-mode.
60679
606802018-07-28  Eli Zaretskii  <eliz@gnu.org>
60681
60682	Make 'tis620-2533' character set be an alias for 'thai-iso8859-11'
60683
60684	* lisp/simple.el (what-cursor-position): Revert ad-hoc change
60685	to work around tis620-2533 charset.
60686	* lisp/w32-fns.el: Use thai-iso8859-11 instead of tis620-2533.
60687	* lisp/international/mule-conf.el (tis620-2533): Now an alias
60688	for thai-iso8859-11, not a separate character set.
60689	* lisp/international/fontset.el (charset-script-alist): Add
60690	thai-iso8859-11; fix entries for greek and hebrew.
60691	(font-encoding-alist, font-encoding-charset-alist): Use
60692	thai-iso8859-11 instead of tis620-2533.
60693	* lisp/descr-text.el (describe-char): Remove the ad-hoc code
60694	that assigns eight-bit-control characters to the eight-bit
60695	charset.
60696
606972018-07-28  Glenn Morris  <rgm@gnu.org>
60698
60699	Merge from origin/emacs-26
60700
60701	bd52f37 (origin/emacs-26) ; Fix last change: only MinGW runtime 5.0.2...
60702	024d20f Fix compilation with mingw.org's MinGW 5.x headers
60703	38b6748 Update the list of special forms in the ELisp manual
60704	8579105 Don't fail to indent-sexp before a full sexp (Bug#31984)
60705	d24c5f2 Fix calls to modifications hooks in replace-buffer-contents
60706	71a9151 * src/character.c (char_width): Support glyphs with faces.  (...
60707	0feb673 Display raw bytes as belonging to 'eight-bit' charset
60708	2e2f00f ; * doc/emacs/mule.texi (International Chars): Fix last change.
60709	00561b5 Fix inaccurate text in the user manual
60710	5cfb7a3 Copyedits in tramp.texi, improved example with bash's readline
60711	6f8f358 Minor Tramp doc update
60712	2585fcb File Shadowing is not available on MS Windows
60713	39da592 ; Minor markup change in indent.texi
60714	2f00ffe ; bookmark-jump: Add comment about last change.
60715
607162018-07-28  Phil Sainty  <psainty@orcon.net.nz>
60717
60718	* lisp/vc/diff.el (diff-buffer-with-file): Support indirect buffers.
60719
60720	(Bug#32195)
60721
607222018-07-28  João Távora  <joaotavora@gmail.com>
60723
60724	Fix @include directive in Flymake doc again
60725
60726	Problem was reintroduced by commit titled:
60727	"Mention use of C-h . (display-local-help) in Flymake manual"
60728
60729	* doc/misc/flymake.texi: Don't @include a relative path.
60730
607312018-07-28  Martin Rudalics  <rudalics@gmx.at>
60732
60733	Fix problem with 'scroll-bar-adjust-thumb-portion' nil (Bug#32002)
60734
60735	* lisp/scroll-bar.el (scroll-bar-drag-1): Do not scroll window
60736	when its buffer is fully visible and
60737	'scroll-bar-adjust-thumb-portion' is nil (Bug#32002).
60738
607392018-07-27  Ken Brown  <kbrown@cornell.edu>
60740
60741	Fix file-name-case-insensitive-p on non-existent files
60742
60743	* src/fileio.c (Ffile_name_case_insensitive_p): If the file
60744	doesn't exist, move up the filesystem tree until an existing
60745	directory is found.  Then test that directory for
60746	case-insensitivity.  (Bug#32246)
60747
607482018-07-27  Stefan Monnier  <monnier@iro.umontreal.ca>
60749
60750	* lisp/simple.el (event-apply-modifier): Map control+[ to C-[
60751
607522018-07-26  Alan Mackenzie  <acm@muc.de>
60753
60754	Correctly indent C++ brace lists in member init lists.
60755
60756	* lisp/progmodes/cc-engine.el (c-guess-basic-syntax; CASE 9B, CASE 9C): Set a
60757	limit for a backward search to the ":" introducing the member init list, when
60758	there is one, rather than the enclosing "{" or nil.
60759
607602018-07-26  Paul Eggert  <eggert@cs.ucla.edu>
60761
60762	* src/editfns.c (syms_of_editfns): Fix typo in previous change.
60763
607642018-07-26  Paul Eggert  <eggert@cs.ucla.edu>
60765
60766	%o and %x can now format signed integers
60767
60768	Optionally treat integers as signed numbers with %o
60769	and %x format specifiers, instead of treating them as
60770	a machine-dependent two’s complement representation.
60771	This option is more machine-independent, allows formats
60772	like "#x%x" to be useful for reading later, and is
60773	better-insulated for future changes involving bignums.
60774	Setting the new variable ‘binary-as-unsigned’ to nil
60775	enables the new behavior (Bug#32252).
60776	This is a simplified version of the change proposed in:
60777	https://lists.gnu.org/r/emacs-devel/2018-07/msg00763.html
60778	I simplified that proposal by omitting bitwidth modifiers, as
60779	I could not find an any example uses in the Emacs source code
60780	that needed them and doing them correctly would have been
60781	quite a bit more work for apparently little benefit.
60782	* doc/lispref/strings.texi (Formatting Strings):
60783	Document that %x and %o format negative integers in a
60784	platform-dependent way.  Also, document how to format
60785	numbers so that the same values can be read back in.
60786	* etc/NEWS: Document the change.
60787	* src/editfns.c (styled_format): Treat integers as signed
60788	numbers even with %o and %x, if binary-as-unsigned is nil.
60789	Support the + and space flags with %o and %x, since they’re
60790	about signs.
60791	(syms_of_editfns): New variable binary-as-unsigned.
60792	* test/src/editfns-tests.el (read-large-integer):
60793	Test that maximal integers can be read after printing
60794	with all integer formats, if binary-as-unsigned is nil.
60795
607962018-07-25  Lucas Werkmeister  <mail@lucaswerkmeister.de>
60797
60798	Notify systemd in daemon-initialized and kill-emacs (Bug#31498)
60799
60800	With --[bg-]daemon and Type=forking, systemd will only consider the
60801	daemon to have fully started up once the original process exits, and
60802	will wait until then to start units depending on the Emacs service.  To
60803	get the same functionality with --fg-daemon, use Type=notify instead of
60804	Type=simple and explicitly send a readiness notification to systemd at
60805	the point where the forked process would in --bg-daemon mode notify its
60806	parent process and cause it to exit.  Similarly, notify systemd at the
60807	beginning of the shutdown process as well.  (Both of these calls are
60808	successful no-ops if emacs was not started by systemd.)
60809	* etc/emacs.service: Update Type.
60810	* src/emacs.c (daemon-initialized) [HAVE_LIBSYSTEMD]:
60811	* src/emacs.c (kill-emacs) [HAVE_LIBSYSTEMD]: Call sd_notify().
60812
608132018-07-25  Eric Abrahamsen  <eric@ericabrahamsen.net>
60814
60815	Fix docstring of gnus-dependencies-add-header
60816
60817	* lisp/gnus/gnus-sum.el (gnus-dependencies-add-header): Code is
60818	  correct, but docs had logic of `gnus-summary-ignore-duplicates'
60819	  backwards: if it's t, the Message-IDs will not be renamed.
60820
608212018-07-25  Michael Albinus  <michael.albinus@gmx.de>
60822
60823	Instrument shadowfile{-tests} for error hunting on hydra.
60824
60825	* lisp/shadowfile.el (shadow-make-fullname): Use changed
60826	`tramp-make-tramp-file-name' from Tramp 2.4.
60827
60828	* test/lisp/shadowfile-tests.el (shadow-test08-shadow-todo):
60829	Instrument test.  Suppress errors in cleanup.
60830	(shadow-test09-shadow-copy-files): Suppress errors in cleanup.
60831
608322018-07-24  Paul Eggert  <eggert@cs.ucla.edu>
60833
60834	Move proper-list-p to C
60835
60836	Since C code can use it and it’s simple, we might as well use C.
60837	* lisp/subr.el (proper-list-p): Move to C code.
60838	* src/eval.c (signal_error): Simplify by using Fproper_list_p.
60839	* src/fns.c (Fproper_list_p): New function, moved here from Lisp.
60840
60841	Simplify signal_error
60842	* src/eval.c (signal_error): Simplify by using FOR_EACH_TAIL_SAFE.
60843
608442018-07-24  Paul Eggert  <eggert@cs.ucla.edu>
60845
60846	* etc/NEWS: Omit bug# when not needed.
60847
608482018-07-24  Glenn Morris  <rgm@gnu.org>
60849
60850	Merge from origin/emacs-26
60851
60852	f64c277 (origin/emacs-26) Let bookmark-jump override window-point (Bu...
60853	1208aaa Omit keymap from subword-mode docstring (Bug#32212)
60854	2b70b54 Prevent line-mode term from showing user passwords
60855	5de4441 Check for special filenames in eshell (Bug#30724)
60856	1b4b965 Fix indent-sexp of #s(...) (Bug#31984)
60857	59e8533 Add save-match-data to abbreviate-file-name (Bug#32201)
60858	47f75b1 Fix last change in editfns.c
60859	671dc5a Fix calls to buffer modification hooks from replace-buffer-co...
60860	cc4ceed ; etc/NEWS: Remove unnecessary reference to a bug number.
60861	e0f33ea Fix Bug#32226
60862	7308fa0 Improve doc strings of several variables in keyboard.c
60863
608642018-07-24  Michael Albinus  <michael.albinus@gmx.de>
60865
60866	Fix typo in `find-alternate-file'
60867
60868	* lisp/files.el (find-alternate-file): Add missing arguments to
60869	`find-file-noselect' call.
60870
608712018-07-23  Paul Eggert  <eggert@cs.ucla.edu>
60872
60873	(format "%#x" 0) yields "0", not "0x0"
60874
60875	* doc/lispref/strings.texi (Formatting Strings):
60876	* src/editfns.c (Fformat): Document this.
60877
608782018-07-23  Paul Eggert  <eggert@cs.ucla.edu>
60879
60880	0x%x → %#x in elisp formats
60881
60882	* lisp/emacs-lisp/cl-print.el (cl-print-object):
60883	* lisp/profiler.el (profiler-format-entry):
60884	* lisp/progmodes/hideif.el (hif-evaluate-macro):
60885	Prefer %#x to 0x%x in elisp formats when formatting arbitrary
60886	integers, as it’ll produce more-readable output with negative args
60887	should we change how negative values are printed with %x.
60888
608892018-07-23  Paul Eggert  <eggert@cs.ucla.edu>
60890
60891	positive → nonnegative doc fixes
60892
60893	* doc/lispref/numbers.texi (Bitwise Operations)
60894	(Math Functions):
60895	* doc/lispref/strings.texi (Formatting Strings):
60896	* src/editfns.c (Fformat):
60897	Correct “positive” with “nonnegative” in some documentation.
60898
608992018-07-23  Lars Ingebrigtsen  <larsi@gnus.org>
60900
60901	Revert "Make nnimap support IMAP namespaces"
60902
60903	This reverts commit 7b5b3ddb2dfa98d640aff7b5b160f777e22cc794.
60904
60905	Insufficiently tested before committing -- bugs out several places
60906	when not using namespaces.
60907
609082018-07-22  Arash Esbati  <arash@gnu.org>
60909
60910	Add \eqref to RefTeX's reference styles (Bug#32203)
60911
60912	* lisp/textmodes/reftex-vars.el (reftex-ref-style-alist): Add entry
60913	for \eqref provided by amsmath.sty and bind it to "e" key.
60914
609152018-07-22  Noam Postavsky  <npostavs@gmail.com>
60916
60917	Preserve nonblank whitespace when indenting (Bug#32200)
60918
60919	* lisp/indent.el (indent-line-to): Remove only spaces and tabs, not
60920	any whitespace syntax characters.
60921
609222018-07-22  Lars Ingebrigtsen  <larsi@gnus.org>
60923
60924	Add further clarifications to gnus-blocked-images
60925
60926	* lisp/gnus/gnus-art.el (gnus-blocked-images): Add further
60927	clarifications.
60928
609292018-07-22  Nikolaus Rath  <nikolaus@rath.org>
60930
60931	Make nnimap support IMAP namespaces
60932
60933	* lisp/gnus/nnimap.el (nnimap-use-namespaces): Introduc new
60934	server variable.
60935	(nnimap-group-to-imap, nnimap-get-groups): Transform IMAP group
60936	names to Gnus group name by stripping / prefixing personal
60937	namespace prefix.
60938	(nnimap-open-connection-1): Ask server for namespaces and store them.
60939
60940	* lisp/gnus/nnimap.el (nnimap-request-group-scan)
60941	(nnimap-request-create-group, nnimap-request-delete-group)
60942	(nnimap-request-rename-group, nnimap-request-move-article)
60943	(nnimap-process-expiry-targets)
60944	(nnimap-request-update-group-status)
60945	(nnimap-request-accept-article, nnimap-request-list)
60946	(nnimap-retrieve-group-data-early, nnimap-change-group)
60947	(nnimap-split-incoming-mail): Use nnimap-group-to-imap.
60948	(nnimap-group-to-imap): New function to map Gnus group names to
60949	IMAP folder names.
60950
609512018-07-22  Lars Ingebrigtsen  <larsi@gnus.org>
60952
60953	Make async :family 'local failures fail correctly again
60954
60955	* src/fileio.c (get_file_errno_data): Refactor out into its own
60956	function so that we can reuse the error handling from an async
60957	context (bug#31901).
60958
60959	* src/process.c (connect_network_socket): When an async :family
60960	'local client fails (with a file error, for instance), mark the
60961	process as failed.
60962
609632018-07-22  Michael Albinus  <michael.albinus@gmx.de>
60964
60965	thread-join returns the result of finished thread
60966
60967	* doc/lispref/threads.texi (Basic Thread Functions):
60968	* etc/NEWS: Document return value of `thread-join'.
60969
60970	* src/thread.c (invoke_thread_function, Fmake_thread)
60971	(init_main_thread): Set result.
60972	(Fthread_join): Propagate signals, and return result.
60973	(Vmain_thread): New defvar.
60974
60975	* src/thread.h (struct thread_state): Add `result' field.
60976
60977	* test/src/thread-tests.el (threads-join): Test also return value.
60978	(threads-join-error): New test.
60979	(threads-mutex-signal): Check for propagation of `quit' signal.
60980
609812018-07-21  John Shahid  <jvshahid@gmail.com>
60982
60983	Avoid destroying match data in 'setenv' (Bug#32201)
60984
60985	* lisp/env.el (setenv,setenv-internal): Replace string-match with
60986	string-match-p.
60987
609882018-07-21  Ken Brown  <kbrown@cornell.edu>
60989
60990	Pacify GCC 7 with -Wformat-overflow
60991
60992	* src/w32term.c (x_draw_glyphless_glyph_string_foreground):
60993	Force sprintf to write at most 6 bytes, excluding the
60994	terminating null byte.
60995
609962018-07-21  Eli Zaretskii  <eliz@gnu.org>
60997
60998	Minor rewording of last change
60999
61000	* lisp/vc/add-log.el (add-log-dont-create-changelog-file)
61001	(add-log--pseudo-changelog-buffer-name)
61002	(add-log--changelog-buffer-p, add-change-log-entry): Doc fixes.
61003
61004	* etc/NEWS: Improve wording of last change.
61005
61006	* doc/emacs/maintaining.texi (Change Log Commands): Improve
61007	wording of last change.
61008
610092018-07-21  João Távora  <joaotavora@gmail.com>
61010
61011	New option to make 'C-x 4 a' use file-less ChangeLog buffers
61012
61013	* doc/emacs/maintaining.texi (Change Log Commands): Document
61014	add-log-dont-create-changelog-file.
61015
61016	* etc/NEWS (Change Logs Mode): Mention
61017	add-log-dont-create-changelog-file.
61018
61019	* lisp/vc/add-log.el (add-log-file-name): Add comment.
61020	(add-log-dont-create-changelog-file): New variable.
61021	(add-log--pseudo-changelog-buffer-name)
61022	(add-log--changelog-buffer-p): New helpers.
61023	(add-log-find-changelog-buffer): New function.
61024	(add-log--pseudo-changelog-buffer-name): Respect
61025	add-log-dont-create-changelog-file.
61026
61027	* lisp/vc/log-edit.el (log-edit-changelog-entries): Use
61028	add-log-find-changelog-buffer.
61029
610302018-07-21  Bozhidar Batsov  <bozhidar@batsov.com>
61031
61032	Make ielm accept an optional buffer name param
61033
61034	The ielm buffer name was hardcoded which made it hard for programs to
61035	interactively create ielm buffers with different names and switch to
61036	them (e.g. perhaps you want to have one ielm buffer for each of the
61037	Elisp projects you're working on).
61038
610392018-07-21  Eli Zaretskii  <eliz@gnu.org>
61040
61041	Fix recording keyboard macros when input method is active
61042
61043	* lisp/international/quail.el (quail-start-translation)
61044	(quail-start-conversion): Bind inhibit--record-char to t for
61045	the first character of a translated sequence.
61046
61047	* src/keyboard.c (record_char): Don't record events from
61048	macros to dribble file, per documentation.
61049	(Fopen_dribble_file): Doc fix.
61050	(syms_of_keyboard) <inhibit--record-char>: New variable.
61051	(record_char): Don't record input event if
61052	inhibit--record-char is non-nil.  (Bug#32108)
61053
610542018-07-21  Paul Eggert  <eggert@cs.ucla.edu>
61055
61056	Report base of out-of-range input fixnums
61057
61058	* src/lread.c (string_to_number): Report the base of an
61059	out-of-range fixnum.  Problem reported by Andy Moreton in:
61060	https://lists.gnu.org/r/emacs-devel/2018-07/msg00696.html
61061
610622018-07-20  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
61063
61064	* src/fns.c (Feql, Fequal): Improve floating-point doc.
61065
610662018-07-20  Glenn Morris  <rgm@gnu.org>
61067
61068	Merge from origin/emacs-26
61069
61070	3e72298 Improve documentation of 'pcase-defmacro rx'
61071	ba9b9bb Fix TTY colors breakage by 'clear-face-cache'
61072	f56ad42 * admin/MAINTAINERS: Add files maintained by me (Michael Albi...
61073	7a258fa Adapt shadowfile.el for Tramp  (Bug#4526, Bug#4846)
61074	cb50077 Fix auth-source-delete (Bug#26184)
61075	a4767a6 Avoid assertion violations in gnutls.c
61076	90110f8 Don't use a literal "C-u" in ispell.el  help message text
61077	f4e7f6d Improve documentation of 'seqp'
61078	ed13639 Clarify usage and dependencies between several Flyspell features
61079
61080	Conflicts:
61081		etc/NEWS
61082		test/lisp/auth-source-tests.el
61083
610842018-07-20  Paul Eggert  <eggert@cs.ucla.edu>
61085
61086	Simplify w32cygwinx.c and pacify GCC (Bug#32189)
61087
61088	* src/w32cygwinx.c (format_string): New function.
61089	(Fw32_battery_status): Use it.
61090
610912018-07-20  Michael Albinus  <michael.albinus@gmx.de>
61092
61093	* lisp/net/trampver.el (customize-package-emacs-version-alist):
61094
61095	Add Tramp version integrated in Emacs 26.2.
61096
610972018-07-19  Paul Eggert  <eggert@cs.ucla.edu>
61098
61099	Prefer NILP (x) to EQ (x, Qnil)
61100
61101	This simplifies the code a bit, and also simplifies some
61102	potential future changes slightly (e.g., altering eq vs eql).
61103	* src/alloc.c (mark_object):
61104	* src/callint.c (fix_command):
61105	* src/chartab.c (Fchar_table_range, Fset_char_table_range):
61106	* src/dbusbind.c (XD_OBJECT_TO_DBUS_TYPE, xd_signature):
61107	* src/dired.c (Fsystem_users):
61108	* src/fileio.c (Fdo_auto_save):
61109	* src/fns.c (concat):
61110	* src/frame.c (get_frame_param, frame_inhibit_resize)
61111	(store_in_alist, store_frame_param, x_set_autoraise)
61112	(x_set_autolower, x_get_arg):
61113	* src/image.c (Fclear_image_cache):
61114	* src/intervals.c (intervals_equal):
61115	* src/intervals.h (DEFAULT_INTERVAL_P):
61116	* src/lread.c (substitute_object_recurse):
61117	* src/menu.c (digest_single_submenu)
61118	(find_and_call_menu_selection)
61119	(find_and_return_menu_selection):
61120	* src/nsfns.m (x_set_icon_name, Fx_create_frame):
61121	* src/nsmenu.m (ns_menu_show):
61122	* src/nsselect.m (ns_string_to_pasteboard_internal)
61123	(Fns_selection_exists_p, Fns_selection_owner_p):
61124	* src/process.c (Faccept_process_output)
61125	(wait_reading_process_output):
61126	* src/terminal.c (store_terminal_param):
61127	* src/textprop.c (verify_interval_modification):
61128	* src/xdisp.c (next_element_from_buffer):
61129	* src/xfaces.c (Finternal_set_lisp_face_attribute):
61130	* src/xfns.c (x_set_icon_type, Fx_synchronize):
61131	* src/xmenu.c (x_menu_show):
61132	* src/xselect.c (Fx_selection_owner_p)
61133	(Fx_selection_exists_p):
61134	* src/xwidget.c (xwidget_view_lookup):
61135	Prefer NILP (x) to EQ (x, Qnil).
61136
611372018-07-19  Tom Tromey  <tom@tromey.com>
61138
61139	Fix bignum creation when EMACS_INT is wider than long
61140
61141	* src/alloc.c (mpz_set_intmax_slow, mpz_set_uintmax_slow): New
61142	functions.
61143	* src/data.c (arith_driver, Frem, Fmod, ash_lsh_impl, Fadd1)
61144	(Fsub1): Use mpz_set_intmax, mpz_set_uintmax.
61145	* src/emacs-module.c (module_make_integer): Use mpz_set_intmax.
61146	* src/floatfns.c (Fabs): Use mpz_set_intmax.
61147	* src/lisp.h (mpz_set_intmax, mpz_set_uintmax): New inline
61148	functions.
61149	(mpz_set_uintmax_slow, mpz_set_intmax_slow): Declare.
61150
611512018-07-19  Tom Tromey  <tom@tromey.com>
61152
61153	Add missing @end defun
61154
61155	* doc/lispref/numbers.texi (Bitwise Operations): Add missing @end defun.
61156
611572018-07-19  Paul Eggert  <eggert@cs.ucla.edu>
61158
61159	Improve doc for floating point ‘=’ vs ‘eql’
61160
61161	* doc/lispref/numbers.texi (Float Basics, Comparison of Numbers):
61162	Improve documentation of ‘=’ vs ‘eq’, ‘eql’ and ‘equal’
61163	when NaNs and signed zeros are involved.
61164
611652018-07-19  Charles A. Roelli  <charles@aurox.ch>
61166
61167	Add 'font-lock-maximum-decoration' levels for Python
61168
61169	* etc/NEWS: New entry under Python mode.
61170
61171	* lisp/progmodes/python.el (python-font-lock-keywords-level-1)
61172	(python-font-lock-keywords-level-2)
61173	(python-font-lock-keywords-maximum-decoration): New variables
61174	based off the incumbent 'python-font-lock-keywords'.
61175	(python-font-lock-keywords): Change it to a list of the new
61176	symbols, for use in the 'car' of 'font-lock-defaults'.
61177	(python-mode): Set the 'car' of 'font-lock-defaults' to the
61178	value of 'python-font-lock-keywords', instead of the symbol
61179	'python-font-lock-keywords'.
61180
611812018-07-18  Paul Eggert  <eggert@cs.ucla.edu>
61182
61183	* etc/NEWS: Fix eql typo in previous change.
61184
611852018-07-18  Stefan Monnier  <monnier@iro.umontreal.ca>
61186
61187	* lisp/comint.el: Clean up namespace
61188
61189	(shell-strip-ctrl-m): Mark as obsolete.
61190	(comint-send-invisible): Rename from `send-invisible`.
61191	(send-invisible): Make it an obsolete alias.
61192	* lisp/net/rlogin.el: Adjust accordingly; Use lexical-binding.
61193	* lisp/shell.el: Adjust accordingly.
61194
611952018-07-18  Filipp Gunbin  <fgunbin@fastmail.fm>
61196
61197	Fix imenu--generic-function after fix for Bug#32024.
61198
61199	* lisp/imenu.el (imenu--generic-function): Restore returning of nconc
61200	  result from the function.  Move filtering out empty menus so it is
61201	  done before removing dummy element and splicing main element into
61202	  index-alist.
61203
612042018-07-18  Paul Eggert  <eggert@cs.ucla.edu>
61205
61206	* etc/NEWS: Mention eql etc. NaN fix.
61207
612082018-07-18  Paul Eggert  <eggert@cs.ucla.edu>
61209
61210	Fix bug with eql etc. on NaNs
61211
61212	Fix a bug where eql, sxhash-eql, memql, and make-hash-table
61213	were not consistent on NaNs.  Likewise for equal,
61214	sxhash-equal, member, and make-hash-table.  Some of these
61215	functions ignored NaN significands, whereas others treated
61216	them as significant.  It's more logical to treat significands
61217	as significant, and this typically makes eql a bit more
61218	efficient on floats, with just one integer comparison instead
61219	of one to three floating-point comparisons.
61220	* doc/lispref/numbers.texi (Float Basics): Document that
61221	NaNs are never numerically equal, but might be eql.
61222	* src/fns.c (WORDS_PER_DOUBLE): Move to top level of this file.
61223	(union double_and_words): Now named, and at the top level of this file.
61224	(same_float): New function.
61225	(Fmemql, Feql, internal_equal, cmpfn_eql): Use it, so that
61226	the corresponding functions treat NaNs consistently.
61227	(sxhash_float): Simplify based on above-mentioned changes.
61228
61229	* test/src/fns-tests.el (fns-tests-equality-nan): New test.
61230
612312018-07-17  Stefan Monnier  <monnier@iro.umontreal.ca>
61232
61233	* lisp/net/soap-client.el (soap-type-of): Optimize for Emacs≥26
61234
612352018-07-17  Alexander Gramiak  <agrambot@gmail.com>
61236
61237	Remove menu name from emacs-lisp-mode-map (Bug#27114)
61238
61239	* lisp/progmodes/elisp-mode.el (emacs-lisp-mode-map): Don't give a
61240	menu name to the top-level map, the menu name is only useful for the
61241	menu-map.
61242
612432018-07-17  Paul Eggert  <eggert@cs.ucla.edu>
61244
61245	Update from gnulib
61246
61247	This incorporates:
61248	2018-07-17 gnulib-tool: limit line length for git send-email
61249	* lib/gnulib.mk.in: Regenerate.
61250
612512018-07-17  Robert Pluim  <rpluim@gmail.com>
61252
61253	Don't check unibyte hostnames for pure-ASCII
61254
61255	* src/process.c (network_lookup_address_info_1): Only check multibyte
61256	hostnames for pure-ASCII.
61257
61258	* test/src/process-tests.el (unibyte-domain-name): Test unibyte domain
61259	names with network-lookup-address-info.
61260
612612018-07-17  Paul Eggert  <eggert@cs.ucla.edu>
61262
61263	Update from Gnulib
61264
61265	This causes config.guess to assume support for shell functions,
61266	a safe assumption nowadays.
61267	* build-aux/config.guess, build-aux/config.sub: Copy from Gnulib.
61268
612692018-07-17  Robert Pluim  <rpluim@gmail.com>
61270
61271	Add network-lookup-address-info description
61272
61273	* doc/lispref/processes.texi (Misc Network): Document
61274	  network-lookup-address-info.
61275
612762018-07-17  Robert Pluim  <rpluim@gmail.com>
61277
61278	Add tests for network-lookup-address-info
61279
61280	* test/src/process-tests.el (lookup-family-specification): Test
61281	network-lookup-address-info api.
61282	(lookup-unicode-domains): Test that unicode domains fail.
61283	(lookup-google): Test that normal lookups succeed.
61284	(non-existent-lookup-failure): Check that known non-existent
61285	domains fail.
61286
612872018-07-17  Robert Pluim  <rpluim@gmail.com>
61288
61289	Refactor getaddrinfo usage
61290
61291	* src/process.c:
61292	(network_lookup_address_info_1): New function, does most of the
61293	work to call getaddrinfo.  Now checks hostname for pure-ASCII.
61294	(Fmake_network_process): Use it.
61295	(Fnetwork_lookup_address_info): Likewise.  Error check family
61296	argument.
61297
612982018-07-17  Michael Albinus  <michael.albinus@gmx.de>
61299
61300	Add variable main-thread, fix Bug#32169
61301
61302	* doc/lispref/threads.texi (Basic Thread Functions): Add example,
61303	how to propagate signals to the main thread.  Describe variable
61304	`main-thread'.  Document optional argument CLEANUP of
61305	`thread-last-error'.
61306
61307	* src/thread.c (Fthread_last_error): Add optional argument
61308	CLEANUP.  (Bug#32169)
61309	(main-thread): New defvar.
61310
61311	* test/src/thread-tests.el (thread-last-error): Adapt declaration.
61312	(main-thread): Declare.
61313	(threads-main-thread): New test.
61314	(threads-errors): Extend test.
61315
613162018-07-16  Charles A. Roelli  <charles@aurox.ch>
61317
61318	Improve description of window configs in 'register-val-describe'
61319
61320	* etc/NEWS: Describe the change.
61321	* lisp/register.el (register-val-describe)
61322	[(window-configuration-p (car val))]: Include the shown
61323	buffers in the return value to make
61324	'register-read-with-preview' more useful.  (Bug#30863)
61325
613262018-07-16  Charles A. Roelli  <charles@aurox.ch>
61327
61328	* configure.ac [$HAVE_NS]: Correct build instructions.
61329
61330	Running 'make install' to test a repo build on macOS used to
61331	be required, but is no longer needed.
61332
613332018-07-16  Robert Pluim  <rpluim@gmail.com>
61334
61335	Implement hostname->ip lookup function
61336
61337	* src/process.c (conv_sockaddr_to_lisp): Add include_port
61338	argument.  Don't put a port in the result if this is false.
61339	(conv_addrinfo_to_lisp, Fprocess_datagram_address)
61340	(connect_network_socket, network_interface_list)
61341	(network_interface_info, server_accept_connection)
61342	(init_process_emacs): Update callers.
61343	(Fnetwork_lookup_address_info): New function.  Performs hostname to
61344	ip address lookups.
61345
61346	* src/w32.c (network_interface_get_info): Update callers of
61347	  conv_sockaddr_to_lisp
61348
61349	* etc/NEWS : mention addition of 'network-lookup-address-info'
61350
613512018-07-15  Noam Postavsky  <npostavs@gmail.com>
61352
61353	Reject gpg 2.0 for epg configs by default (Bug#23561)
61354
61355	Previously, gpg2 2.0 would be rejected, but the same version installed
61356	as "gpg" would be accepted.
61357
61358	* lisp/epg-config.el (epg-gpg2-minimum-version): New constant.
61359	(epg-config--program-alist) <OpenPGP>: Require a version in 1.4.3..2.0
61360	or 2.1.6+., not just anything above 1.4.3.
61361	(epg-check-configuration): Accept a list of required version
61362	intervals, in addtion to just a single minimum.
61363
613642018-07-15  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
61365
61366	* lisp/format.el (format-proper-list-p): New alias.
61367
613682018-07-15  Noam Postavsky  <npostavs@gmail.com>
61369
61370	Don't test symmetric operations on gpg 2.0 (Bug#23561)
61371
61372	On the Hydra test machines, which have gpg 2.0, the symmetric tests
61373	fail.
61374	* test/lisp/epg-tests.el (with-epg-tests): Pass REQUIRE-PUBLIC-KEY to
61375	`epg-tests-find-usable-gpg-configuration' and call it before
61376	`epg-make-context' so that the latter uses the resulting cached
61377	config.
61378	(epg-tests-find-usable-gpg-configuration): Only allow gpg 2.0 for
61379	symmetric operations.  Clear `epg--configurations' and don't pass
61380	NO-CACHE to `epg-find-configuration'.
61381	(epg-tests--config-program-alist): Use copy-tree to avoid modifying
61382	the epg-config--program-alist cons values.
61383	* test/lisp/emacs-lisp/package-tests.el (package-test-signed): Allow
61384	running with gpg 2.0.
61385
613862018-07-15  Michael Albinus  <michael.albinus@gmx.de>
61387
61388	Precise dav/davs in Tramp manual
61389
61390	* doc/misc/tramp.texi (GVFS based methods): Mention `owncloud'
61391	method for special `dav'/`davs' file names.
61392
613932018-07-15  Michael Albinus  <michael.albinus@gmx.de>
61394
61395	Fix Bug#32147
61396
61397	* test/lisp/net/secrets-tests.el (secrets-test02-collections)
61398	(secrets-test03-items): Test for both "Login" or "login"
61399	collection.  (Bug#32147)
61400
614012018-07-14  Noam Postavsky  <npostavs@gmail.com>
61402
61403	Update package.el test for message format changes
61404
61405	* test/lisp/emacs-lisp/package-tests.el (package-test-signed): Update
61406	the expected message.  The message was changed in 2018-06-25 "Reformat
61407	package.el message strings for future l10n".
61408	(with-package-test, with-fake-help-buffer): Add debug declarations.
61409
614102018-07-14  Noam Postavsky  <npostavs@gmail.com>
61411
61412	Fix gpg detection for tests (Bug#23561)
61413
61414	* test/lisp/emacs-lisp/package-tests.el (package-test-signed): Stop
61415	using epg-check-configuration and ignore-errors, they're redundant
61416	because epg-find-configuration already does all that.
61417	* test/lisp/epg-tests.el (epg-tests-find-usable-gpg-configuration):
61418	Remove tracing.
61419	(with-epg-tests): Skip test if no gpg config is found.
61420	(epg-decrypt-1 epg-roundtrip-1, epg-sign-verify-1, epg-sign-verify-2)
61421	(epg-import-1): Don't check gpg configuration at top-level, rely on
61422	`with-epg-tests' instead.  Checking the gpg configuration requires a
61423	valid HOME (or GNUPGHOME), which is provided by `with-epg-tests'.
61424
614252018-07-14  Jimmy Yuen Ho Wong  <wyuenho@gmail.com>
61426
61427	Show full issuer and subject distinguished names
61428
61429	CAs like Let's Encrypt do not put O and OU into the Subject's DN.
61430	Similarly, O and OU are often used to indicate Domain Validated or
61431	Organization Validation as opposed to the actual OU.
61432
61433	Issuer CN often contains the issuer's server or as an indication of
61434	Extended Validation certificate as opposed to the actual issuer
61435	organization.
61436
61437	The Hostname part as extracted from the Subject is also confusing, as
61438	in the case of a hostname mismatch, the Subject's CN, which
61439	`nsm-format-certificate' naively calls the Hostname, will not actually
61440	match the hostname in the problem preamble.
61441
61442	* lisp/net/nsm.el (nsm-format-certificate): Show full DN of Issuer and
61443	  Subject.  Remove Hostname.
61444	  (nsm-certificate-part, nsm-parse-subject): Removed.
61445
614462018-07-14  Jimmy Yuen Ho Wong  <wyuenho@gmail.com>
61447
61448	Full certificate chain details for NSM
61449
61450	* lisp/net/nsm.el (nsm-check-tls-connection): Fix issue with plural
61451	  problems in message.  Prefix every problem with a bullet.
61452	  (nsm-query-user): Add new view the full certificate chain by
61453	  pressing d.
61454	  (nsm-format-certificate): Improve basic certificate and session info
61455	  formatting.
61456
61457	* src/gnutls.c (emacs_gnutls_certificate_export_pem): New function.
61458	  (gnutls_certificate_details): Rename to
61459	  emacs_gnutls_certificate_details.  Add :pem to result list.
61460	  (Fgnutls_format_certificate):  New function for formatting a PEM to
61461	  human-readable text.
61462
614632018-07-14  Jimmy Yuen Ho Wong  <wyuenho@gmail.com>
61464
61465	Add option to bypass NSM TLS checks on local networks
61466
61467	* lisp/net/net-utils.el (nslookup-host-ipv4, nslookup-host-ipv6,
61468	  ipv6-expand): New functions to lookup IPv4 and IPv6 addresses from
61469	  DNS.
61470
61471	* lisp/net/nsm.el (nsm-trust-local-network, nsm-should-check,
61472	  nsm-check-tls-connection, nsm-check-plain-connection): New defcustom
61473	  `nsm-trust-local-network' lets users customize whether NSM should
61474	  check for TLS problems when connecting to the hosts on their local
61475	  networks.  `nsm-should-check' determines whether
61476	  `nsm-check-tls-connection' and `nsm-check-plain-connection' should
61477	  perform checks.  localhost is implicitly trusted, thus checks are
61478	  never performed there.
61479
614802018-07-14  Jimmy Yuen Ho Wong  <wyuenho@gmail.com>
61481
61482	Revamp Network Security manager checks for TLS
61483
61484	* lisp/net/nsm.el (network-security-level, nsm-level,
61485	  nsm-new-fingerprint-ok-p): Remove `paranoid' level and related code.
61486
61487	* lisp/net/nsm.el (nsm-tls-checks, nsm-tls-check-version,
61488	    nsm-tls-check-compression, nsm-tls-check-renegotiation-info-ext,
61489	    nsm-tls-check-verify-cert, nsm-tls-check-same-cert,
61490	    nsm-tls-check-null-suite, nsm-tls-check-export-kx,
61491	    nsm-tls-check-anon-kx, nsm-tls-check-md5-sig,
61492	    nsm-tls-check-rc4-cipher, nsm-tls-check-dhe-prime-kx,
61493	    nsm-tls-check-sha1-sig, nsm-tls-check-ecdsa-cbc-cipher
61494	    nsm-tls-check-dhe-kx, nsm-tls-check-rsa-kx,
61495	    nsm-tls-check-3des-cipher, nsm-tls-check-cbc-cipher,
61496	    nsm-save-fingerprint-maybe, nsm-tls-post-check-functions): New
61497	    options and functions for checking TLS handshake problems.
61498
61499	* lisp/net/nsm.el (nsm-check-certificate,
61500	  network-security-protocol-checks,
61501	  nsm-protocol-check--diffie-hellman-prime-bits,
61502	  nsm-protocol-check--3des, nsm-protocol-check--rc4,
61503	  nsm-protocol-check--signature-sha1,
61504	  nsm-protocol-check--intermediate-sha1, nsm-protocol-check--ssl,
61505	  nsm-check-protocol): Remove in favor of `nsm-tls-checks' and
61506	  `nsm-tls-check-*' functions.
61507
61508	* lisp/net/nsm.el (nsm-verify-connection): Ensure connection is
61509	  checked even when `network-security-level' is `low'.
61510
61511	* lisp/net/nsm.el (nsm-check-tls-connection): Batch all problems found
61512	  before querying the user.
61513
61514	* lisp/net/nsm.el (nsm--encryption): Renamed to `nsm-cipher-suite'.
61515
61516	* lisp/net/nsm.el (nsm-fingerprint-ok-p): No longer prompt when
61517	  certificate fingerprints mismatch.  Returns a boolean instead when
61518	  the fingerprint of the certificate received matches the saved
61519	  fingerprints.
61520
61521	* lisp/net/nsm.el (nsm-query): Change signature.  Accepts a list of
61522	  problems and a preformatted message instead of just a message format
61523	  and the arguments for the message.
61524
61525	* lisp/net/nsm.el (nsm-query-user): Change signature.  Accepts a
61526	  preformatted message and the peer status of the handshake instead of
61527	  a message format, its arguments and the certificate for the host.
61528
61529	* lisp/net/nsm.el (nsm-save-host): Change signature.  Accepts a list of
61530	  problems after the WHAT parameter.  Saves multiple fingerprints for
61531	  the same host in case the host load balances a TLS server with more
61532	  than one certificates signed with different keys.  Makes sure
61533	  conditions are not removed when updating a fingerprint.
61534
61535	* lisp/net/nsm.el (nsm-format-certificate): Display the TLS handshake's
61536	  renegotiation info extension, compression level, encrypt-then-MAC
61537	  extension, and key exchange prime bit length.
61538
61539	* src/gnutls.c (gnutls-peer-status-warning-describe,
61540	  gnutls-peer-status): Check for certificate verification problems
61541	  introduced since GnuTLS 3.1.
61542
61543	* src/gnutls.c (gnutls-peer-status): `:compression', `:encrypt-then-mac'
61544	  and `:safe-renegotiation' are now contained in the peer status
61545	  result return value.
61546
615472018-07-14  Jimmy Yuen Ho Wong  <wyuenho@gmail.com>
61548
61549	Set standard value of `gnutls-min-primes-bits' to nil
61550
61551	* lisp/net/gnutls.el (gnutls-min-prime-bits): Set standard value to
61552	  nil in order to let GnuTLS manage the minimum DH prime bits
61553	  accepted.
61554
615552018-07-14  Jimmy Yuen Ho Wong  <wyuenho@gmail.com>
61556
61557	Check TLS certs against CRL
61558
61559	* lisp/net/gnutls.el (gnutls-boot-parameters): Return
61560	  `gnutls-crlfiles' in `:crlfiles'.
61561	  (gnutls-crlfiles): New defcustom.
61562	  (gnutls--get-files): New defun.
61563	  (gnutls-trustfiles, gnutls-crlfiles): Delegate to
61564	  `gnutls--get-files' to return a list of filenames, accepts glob pattern.
61565
615662018-07-14  Charles A. Roelli  <charles@aurox.ch>
61567
61568	Add to documentation of 'jump-to-register'
61569
61570	* lisp/register.el (jump-to-register):
61571	* doc/emacs/regs.texi (Position Registers): Document that
61572	jumping to a register can push the mark.
61573
615742018-07-14  Jonathan Kyle Mitchell  <kyle@jonathanmitchell.org>
61575
61576	Avoid infloop in redisplay due to faulty mode-line properties
61577
61578	* src/xdisp.c (safe_set_text_properties): New function.
61579	(display_mode_element): Call Fset_text_properties through
61580	internal_condition_case_n, using safe_set_text_properties as a
61581	wrapper.  (Bug#32038)
61582
615832018-07-13  Stefan Monnier  <monnier@iro.umontreal.ca>
61584
61585	* lisp/vc/diff-mode.el (diff-font-lock-prettify): New var
61586
61587	(diff--font-lock-prettify): New function.
61588	(diff-font-lock-keywords): Use it.
61589
615902018-07-13  Glenn Morris  <rgm@gnu.org>
61591
61592	Merge from origin/emacs-26
61593
61594	17ebb6e (origin/emacs-26) Use consistent function names in thread-tes...
61595	1c86229 Fix format error in Faccept_process_output
61596	b38b91a Lessen stack consumption in recursive read1
61597	3eb4603 Match w32 paths in grep sans --null hits (Bug#32051)
61598	5cc7c4b Fix previous make-network-process change
61599	d6a1b69 Another documentation improvement in flyspell.el
61600	9b49a8e Improve documentation of Flyspell
61601	3744fda Provide feature 'threads
61602	ef9025f Save the server alias on reconnect (Bug#29657)
61603	db3874b Refer to "proper lists" instead of "true lists"
61604	35e0305 Avoid turning on the global-minor-mode recursively
61605	51bf4e4 Fix Bug#32085
61606
616072018-07-13  Basil L. Contovounesios  <contovob@tcd.ie>
61608
61609	Tweak subr-x.el substring functions
61610
61611	* lisp/emacs-lisp/subr-x.el (string-join): #'-quote function symbol.
61612	(string-trim-left, string-trim-right):
61613	Make better use of substring for minor speedup.
61614	* test/lisp/emacs-lisp/subr-x-tests.el
61615	(subr-x-test-string-trim-left, subr-x-test-string-trim-right)
61616	(subr-x-test-string-remove-prefix)
61617	(subr-x-test-string-remove-suffix): New tests.
61618
616192018-07-13  Basil L. Contovounesios  <contovob@tcd.ie>
61620
61621	Minor cus-theme.el simplifications
61622
61623	* lisp/cus-theme.el (custom-new-theme-mode, customize-themes)
61624	(custom-theme-choose-mode): Use setq-local.
61625	(customize-create-theme): Ditto.  Use delete-all-overlays.
61626	(describe-theme-1, custom-theme-summary): Simplify logic.
61627
616282018-07-13  Basil L. Contovounesios  <contovob@tcd.ie>
61629
61630	Minor custom.el simplifications
61631
61632	* lisp/custom.el (custom-quote): Duplicate macroexp-quote.
61633	(custom-load-symbol, customize-mark-to-save, customize-mark-as-set)
61634	(custom-theme-name-valid-p, enable-theme, custom-enabled-themes)
61635	(disable-theme): Simplify logic.
61636
616372018-07-13  Basil L. Contovounesios  <contovob@tcd.ie>
61638
61639	* lisp/cus-theme.el: Use lexical-binding
61640
616412018-07-13  Basil L. Contovounesios  <contovob@tcd.ie>
61642
61643	* lisp/custom.el: Use lexical-binding
61644
61645	Remove duplicate 'Custom Themes' comment heading.
61646	(deftheme, custom-declare-theme): Fix advertised calling convention.
61647	(custom-enabled-themes): Fix message grammar.
61648
616492018-07-13  Basil L. Contovounesios  <contovob@tcd.ie>
61650
61651	Fix custom-available-themes file expansion
61652
61653	For discussion, see thread starting at
61654	https://lists.gnu.org/archive/html/emacs-devel/2018-05/msg00222.html.
61655	* lisp/custom.el: (custom-available-themes): Use directory-files
61656	instead of performing arbitrary wildcard expansion in file names.
61657	(custom-theme--load-path): Document return value.
61658	* test/lisp/custom-tests.el: New file.
61659	(custom-theme--load-path): New test.
61660
616612018-07-13  Basil L. Contovounesios  <contovob@tcd.ie>
61662
61663	Disable no-byte-compile in built-in themes
61664
61665	* etc/themes/adwaita-theme.el:
61666	* etc/themes/deeper-blue-theme.el:
61667	* etc/themes/dichromacy-theme.el:
61668	* etc/themes/leuven-theme.el:
61669	* etc/themes/light-blue-theme.el:
61670	* etc/themes/manoj-dark-theme.el:
61671	* etc/themes/misterioso-theme.el:
61672	* etc/themes/tango-dark-theme.el:
61673	* etc/themes/tango-theme.el:
61674	* etc/themes/tsdh-dark-theme.el:
61675	* etc/themes/tsdh-light-theme.el:
61676	* etc/themes/wheatgrass-theme.el:
61677	* etc/themes/whiteboard-theme.el:
61678	* etc/themes/wombat-theme.el: Disable no-byte-compile.
61679
61680	https://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00614.html
61681	https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00060.html
61682
616832018-07-13  Basil L. Contovounesios  <contovob@tcd.ie>
61684
61685	Improve loading of byte-compiled custom themes
61686
61687	* lisp/custom.el (load-theme):
61688	Load byte-compiled file of safe themes when available.
61689
61690	https://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00614.html
61691	https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00060.html
61692
616932018-07-13  Robert Pluim  <rpluim@gmail.com>
61694
61695	Add GMP to emacs_config_features
61696
61697	* configure.ac : Add GMP to emacs_config_features.  This allows us
61698	to determine whether the built-in gmp-mini is being used or not.
61699
617002018-07-12  Tom Tromey  <tom@tromey.com>
61701
61702	Document bignums
61703
61704	* doc/lispref/numbers.texi (Numbers, Integer Basics)
61705	(Predicates on Numbers, Comparison of Numbers)
61706	(Arithmetic Operations, Bitwise Operations): Update for bignums.
61707	* doc/lispref/objects.texi (Integer Type, Type Predicates):
61708	Update for bignums.
61709	* etc/NEWS: Update for bigums.
61710
617112018-07-12  Tom Tromey  <tom@tromey.com>
61712
61713	Bignum fixes for byte-compiler and bytecode interpreter
61714
61715	* lisp/emacs-lisp/byte-opt.el: Mark bignump and fixnump as
61716	side-effect-and-error-free-fns.
61717	* src/bytecode.c (exec_byte_code): Handle bignums.
61718
617192018-07-12  Tom Tromey  <tom@tromey.com>
61720
61721	Use fixnump rather than integerp in some spots
61722
61723	* src/buffer.c (syms_of_buffer): Use Qfixnump, not Qintegerp.
61724	* src/data.c (syms_of_data): Define fixnump symbol.
61725	* src/lisp.h (lisp_h_CHECK_FIXNUM): Use Qfixnump.
61726	(struct Lisp_Buffer_Objfwd): Update comment.
61727
617282018-07-12  Tom Tromey  <tom@tromey.com>
61729
61730	Make ash and lsh handle bignums
61731
61732	* src/data.c (ash_lsh_impl): Handle bignums.
61733	* test/src/data-tests.el (data-tests-ash-lsh): New test.
61734
617352018-07-12  Tom Tromey  <tom@tromey.com>
61736
61737	Make logb handle bignums
61738
61739	* src/floatfns.c (Flogb): Handle bignums.
61740	* test/src/floatfns-tests.el (bignum-logb): New test.
61741
617422018-07-12  Tom Tromey  <tom@tromey.com>
61743
61744	Make % and mod handle bignums
61745
61746	* src/data.c (Frem, Fmod): Handle bignums.
61747	* src/lisp.h (CHECK_INTEGER_COERCE_MARKER): New macro.
61748	* test/src/data-tests.el (data-tests-check-sign)
61749	(data-tests-%-mod): New tests.
61750
617512018-07-12  Tom Tromey  <tom@tromey.com>
61752
61753	Let C modules access bignum values
61754
61755	* src/emacs-module.c (module_extract_integer, module_make_integer):
61756	Handle bignums.
61757
617582018-07-12  Tom Tromey  <tom@tromey.com>
61759
61760	Make min and max handle bignums
61761
61762	* src/data.c (minmax_driver): Handle bignums.
61763	* test/src/data-tests.el (data-tests-minmax): New test.
61764
617652018-07-12  Tom Tromey  <tom@tromey.com>
61766
61767	Make logcount handle bignums
61768
61769	* src/data.c (Flogcount): Handle bignums.
61770	* test/src/data-tests.el (data-tests-logcount): New test.
61771
617722018-07-12  Tom Tromey  <tom@tromey.com>
61773
61774	Make lognot handle bignums
61775
61776	* src/data.c (Flognot): Handle bignums.
61777
617782018-07-12  Tom Tromey  <tom@tromey.com>
61779
61780	Make 1+ and 1- handle bignums
61781
61782	* src/data.c (Fadd1, Fsub1): Handle bignums.
61783	* test/src/data-tests.el (data-tests-1+, data-tests-1-): New tests.
61784
617852018-07-12  Tom Tromey  <tom@tromey.com>
61786
61787	Make abs handle bignums
61788
61789	* src/floatfns.c (Fabs): Handle bignums.
61790	* test/src/floatfns-tests.el (bignum-abs): New test.
61791
617922018-07-12  Tom Tromey  <tom@tromey.com>
61793
61794	Allow conversion of bignums to floats
61795
61796	* src/floatfns.c (extract_float, Ffloat): Handle bignums.
61797	* src/lisp.h (XFLOATINT): Handle bignums.
61798	* test/src/floatfns-tests.el (bignum-to-float): New test.
61799
618002018-07-12  Tom Tromey  <tom@tromey.com>
61801
61802	Make format handle bignums
61803
61804	* src/editfns.c (styled_format): Handle bignums.
61805	* test/src/editfns-tests.el (read-large-integer): Update.
61806	(format-bignum): New test.
61807
618082018-07-12  Tom Tromey  <tom@tromey.com>
61809
61810	Make number-to-string work for bignums
61811
61812	* src/data.c (Fnumber_to_string): Handle bignum.
61813	* test/src/data-tests.el (data-tests-number-to-string): New test.
61814
618152018-07-12  Tom Tromey  <tom@tromey.com>
61816
61817	Add some bignum tests
61818
61819	* test/src/data-tests.el (data-tests-bignum, data-tests-+)
61820	(data-tests-/, data-tests-number-predicates): New tests.
61821	* test/src/fns-tests.el (test-bignum-eql): New test.
61822	* test/src/lread-tests.el (lread-long-hex-integer): Expect bignum.
61823	* test/src/print-tests.el (print-bignum): New test.
61824
618252018-07-12  Tom Tromey  <tom@tromey.com>
61826
61827	Make arithmetic work with bignums
61828
61829	* src/data.c (free_mpz_value): New function.
61830	(arith_driver): Rewrite.
61831	(float_arith_driver): Handle bignums.
61832
618332018-07-12  Tom Tromey  <tom@tromey.com>
61834
61835	Make comparison operators handle bignums
61836
61837	* src/data.c (bignumcompare): New function.
61838	(arithcompare): Handle bignums.
61839
618402018-07-12  Tom Tromey  <tom@tromey.com>
61841
61842	Make the reader accept bignums
61843
61844	* src/data.c (Fstring_to_number): Update.
61845	* src/lisp.h (S2N_OVERFLOW_TO_FLOAT): Remove.
61846	* src/lread.c (free_contents): New function.
61847	(read_integer): Handle bignums.
61848	(read1): Update.
61849	(string_to_number): Handle bignums.
61850	(syms_of_lread): Remove read-integer-overflow-as-float.
61851	* src/process.c (Fsignal_process): Update.
61852
618532018-07-12  Tom Tromey  <tom@tromey.com>
61854
61855	Make eql work for bignums
61856
61857	* src/fns.c (Feql, internal_equal): Handle bignums.
61858
618592018-07-12  Tom Tromey  <tom@tromey.com>
61860
61861	Provide new functions to create bignums
61862
61863	* src/alloc.c (make_bignum_str, make_number): New functions.
61864	* src/lisp.h (make_bignum_str, make_number): Declare.
61865
618662018-07-12  Tom Tromey  <tom@tromey.com>
61867
61868	Introduce the bignum type
61869
61870	* src/alloc.c (mark_object): Handle Lisp_Misc_Bignum.
61871	(sweep_misc): Call mpz_clear for Lisp_Misc_Bignum.
61872	* src/data.c (Ftype_of): Handle Lisp_Misc_Bignum.
61873	(Fintegerp, Finteger_or_marker_p, Fnatnump, Fnumberp)
61874	(Fnumber_or_marker_p): Update for bignum.
61875	(Ffixnump, Fbignump): New defuns.
61876	(syms_of_data): Update.
61877	* src/emacs.c (xrealloc_for_gmp, xfree_for_gmp): New functions.
61878	(main): Call mp_set_memory_functions.
61879	* src/lisp.h (enum Lisp_Misc_Type) <Lisp_Misc_Bignum>: New constant.
61880	(struct Lisp_Bignum): New.
61881	(union Lisp_Misc): Add u_bignum.
61882	(BIGNUMP, XBIGNUM, INTEGERP, NATNUMP, NUMBERP, CHECK_NUMBER)
61883	(CHECK_INTEGER, CHECK_NUMBER_COERCE_MARKER): New functions.
61884	* src/print.c (print_object): Handle Lisp_Misc_Bignum.
61885
618862018-07-12  Tom Tromey  <tom@tromey.com>
61887
61888	Add configury for GMP library
61889
61890	* configure.ac (GMP_LIB, GMP_OBJ): New substs.
61891	* src/Makefile.in (GMP_OBJ, GMP_OBJ): New variables.
61892	(base_obj): Add GMP_OBJ.
61893	(LIBES): Add GMP_LIB.
61894	* src/mini-gmp.h: New file.
61895	* src/mini-gmp.c: New file.
61896
618972018-07-12  Tom Tromey  <tom@tromey.com>
61898
61899	Rename integerp->fixnum, etc, in preparation for bignums
61900
61901	* src/json.c, src/keyboard.c, src/keyboard.h, src/keymap.c,
61902	src/kqueue.c, src/lcms.c, src/lisp.h, src/lread.c, src/macros.c,
61903	src/marker.c, src/menu.c, src/minibuf.c, src/msdos.c, src/print.c,
61904	src/process.c, src/profiler.c, src/search.c, src/sound.c,
61905	src/syntax.c, src/sysdep.c, src/term.c, src/terminal.c,
61906	src/textprop.c, src/undo.c, src/w16select.c, src/w32.c,
61907	src/w32console.c, src/w32cygwinx.c, src/w32fns.c, src/w32font.c,
61908	src/w32inevt.c, src/w32proc.c, src/w32select.c, src/w32term.c,
61909	src/w32uniscribe.c, src/widget.c, src/window.c, src/xdisp.c,
61910	src/xfaces.c, src/xfns.c, src/xfont.c, src/xftfont.c, src/xmenu.c,
61911	src/xrdb.c, src/xselect.c, src/xterm.c, src/xwidget.c: Rename
61912	INTEGERP->FIXNUM, make_number->make_fixnum, CHECK_NUMBER->CHECK_FIXNUM,
61913	make_natnum->make_fixed_natum, NUMBERP->FIXED_OR_FLOATP,
61914	NATNUMP->FIXNATP, CHECK_NATNUM->CHECK_FIXNAT.
61915
619162018-07-12  Noam Postavsky  <npostavs@gmail.com>
61917
61918	Speed up smerge-refine-regions by avoiding fsync
61919
61920	* lisp/vc/smerge-mode.el (smerge-refine-regions): Bind
61921	write-region-inhibit-fsync to t.  This was reported in
61922	https://github.com/magit/magit/pull/2834 to give a noticable speedup.
61923
619242018-07-12  Noam Postavsky  <npostavs@gmail.com>
61925
61926	Don't skip epg-tests even with gpg 2.0 (Bug#23561)
61927
61928	* test/lisp/epg-tests.el (epg-tests--config-program-alist): New
61929	constant, which allows gpg2 version 2.0+.
61930	(epg-tests-find-usable-gpg-configuration): Pass it to
61931	epg-find-configuration.
61932
619332018-07-12  Stefan Monnier  <monnier@iro.umontreal.ca>
61934
61935	Fix the bootstrap differently, so zerop can be where it belongs
61936
61937	Suggested by Robert Pluim <rpluim@gmail.com>.
61938
61939	* lisp/emacs-lisp/byte-run.el (defun-declarations-alist): Avoid cadr/cddr.
61940	* lisp/subr.el (zerop): Un-revert 2018-07-10T23:08:58-07:00!contovob@tcd.ie.
61941
619422018-07-11  Glenn Morris  <rgm@gnu.org>
61943
61944	Unbreak bootstrap
61945
61946	* lisp/subr.el (zerop): Revert previous change, which caused
61947	bootstrap to fail with void function cadr.
61948
619492018-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
61950
61951	* lisp/vc/diff-mode.el: Perform hunk refinement from font-lock
61952
61953	Remove redundant :group arguments.
61954	(diff-font-lock-refine): New var.
61955	(diff--refine-hunk): New function, extracted from diff-refine-hunk.
61956	(diff-refine-hunk): Use it.
61957	(diff--font-lock-refine--refresh): New function.
61958	(diff--font-lock-refined): New function.
61959	(diff-font-lock-keywords): Use it.
61960
619612018-07-10  Filipp Gunbin  <fgunbin@fastmail.fm>
61962
61963	Fix Bug#32107
61964
61965	* lisp/progmodes/sql.el (sql-buffer-live-p): Fix handling of optional
61966	  connection argument.  (Bug#32107)
61967
619682018-07-10  Jonathan Kyle Mitchell  <kyle@jonathanmitchell.org>
61969
61970	Fix infinite recursion in eshell/clear (Bug#31326)
61971
61972	* lisp/eshell/esh-mode.el (eshell/clear): Bind
61973	eshell-input-filter-functions to nil to prevent entries like
61974	eshell-smart-display-setup from causing infinite recursion.
61975
619762018-07-10  Noam Postavsky  <npostavs@gmail.com>
61977
61978	* lisp/indent.el (indent-line-to): Fix dedenting of tabs.
61979
619802018-07-09  Paul Eggert  <eggert@cs.ucla.edu>
61981
61982	* lisp/format.el (format-annotate-single-property-change): Simplify.
61983
619842018-07-09  Basil L. Contovounesios  <contovob@tcd.ie>
61985
61986	Add predicate proper-list-p
61987
61988	For discussion, see emacs-devel thread starting at
61989	https://lists.gnu.org/archive/html/emacs-devel/2018-04/msg00460.html.
61990
61991	* lisp/subr.el (proper-list-p): New function.
61992	Implementation suggested by Paul Eggert <eggert@cs.ucla.edu> in
61993	https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00138.html.
61994	* doc/lispref/lists.texi (List Elements):
61995	* etc/NEWS: Document proper-list-p.
61996	* lisp/org/ob-core.el (org-babel-insert-result):
61997	* lisp/emacs-lisp/byte-opt.el (byte-optimize-if):
61998	* lisp/emacs-lisp/cl-macs.el (cl--make-usage-args): Use proper-list-p.
61999	* lisp/emacs-lisp/ert.el (ert--proper-list-p): Remove.
62000	Replaced by proper-list-p in lisp/subr.el.
62001	(ert--explain-equal-rec): Use proper-list-length.
62002	* lisp/format.el (format-proper-list-p): Remove.
62003	Replaced by proper-list-p in lisp/subr.el.
62004	(format-annotate-single-property-change): Use proper-list-p.
62005	* test/lisp/emacs-lisp/ert-tests.el (ert-test-proper-list-p):
62006	Move from here...
62007	* test/lisp/subr-tests.el (subr-tests--proper-list-length):
62008	...to here, mutatis mutandis.
62009
620102018-07-09  Noam Postavsky  <npostavs@gmail.com>
62011
62012	Respect field boundaries in indent-line-to (Bug#32014)
62013
62014	* lisp/indent.el (indent-line-to): Use the back-to-indentation point
62015	as the end-point of whitespace removal, rather than
62016	backward-to-indentation which doesn't respect field boundaries.
62017	* test/lisp/emacs-lisp/lisp-mode-tests.el
62018	(lisp-indent-with-read-only-field): Don't expect to fail.
62019
620202018-07-09  Noam Postavsky  <npostavs@gmail.com>
62021
62022	Merge from emacs-26
62023
62024	db3f779780 ; Test for Bug#32014
62025	90d95b000c Explicitly reject :server and :nowait (Bug#31903)
62026	917158f8c9 Fix Bug#32090
62027
62028	# Conflicts:
62029	#	src/process.c
62030
620312018-07-09  Noam Postavsky  <npostavs@gmail.com>
62032
62033	Merge from emacs-26
62034
62035	65889a6d12 Fix bootstrap infloop in GNU/Linux alpha
62036	48efd1c98b Minor fix of a recent documentation change
62037	3302b7cd7f Mention the NSM in the gnutls variable doc strings
62038	40c2ce743b Remove test code from last commit
62039	e02d8e29c6 Fix Bug#32084
62040	da5d6dbe39 Fix (length NON-SEQUENCE) documentation
62041
620422018-07-09  Sam Steingold  <sds@gnu.org>
62043
62044	dired-do-find-regexp: Use rgrep-find-ignored-directories.
62045
620462018-07-08  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
62047
62048	Fix etc/HELLO searching in grep.el
62049
62050	* lisp/progmodes/grep.el (grep-compute-defaults):
62051	Search for "^Copyright", not "^English", as the latter is no
62052	longer present in etc/HELLO and the former is more likely to
62053	survive future changes to etc/HELLO (Bug#32093).
62054
620552018-07-08  Paul Eggert  <eggert@cs.ucla.edu>
62056
62057	Fix floating point exceptions on Alpha (Bug#32086)
62058
62059	* admin/merge-gnulib (GNULIB_MODULES): Add fpieee.
62060	* m4/fpieee.m4: New file, copied from Gnulib.
62061	* m4/gnulib-comp.m4: Regenerate.
62062
620632018-07-08  Eli Zaretskii  <eliz@gnu.org>
62064
62065	Minor improvements in recent NSM documentation changes
62066
62067	* doc/emacs/misc.texi (Network Security): Improve wording and
62068	markup of last change.
62069
62070	* src/gnutls.c (Fgnutls_peer_status): Doc fix.
62071
62072	* etc/NEWS: Improve wording of last change.
62073
620742018-07-08  Lars Ingebrigtsen  <larsi@gnus.org>
62075
62076	Fix typo in sha1-intermediate check
62077
62078	* lisp/net/nsm.el (nsm-protocol-check--intermediate-sha1): Allow
62079	storing the exception with a correct name.
62080
620812018-07-08  Lars Ingebrigtsen  <larsi@gnus.org>
62082
62083	Document network-security-protocol-checks better
62084
62085	* doc/emacs/misc.texi (Network Security): Rearrange the
62086	network-security-protocol-checks documentation and try to explain
62087	more what this all means and what checks are triggered.
62088
620892018-07-08  Lars Ingebrigtsen  <larsi@gnus.org>
62090
62091	NSM-related doc fixes
62092
62093	* src/gnutls.c (Fgnutls_peer_status): Mention :certificates in the
62094	doc string.
62095
62096	* etc/NEWS: Mention how to switch off the additional TLS checks.
62097
620982018-07-07  Glenn Morris  <rgm@gnu.org>
62099
62100	* lisp/imenu.el: Require cl-lib, not internal components of same.
62101
62102	* admin/make-tarball.txt, admin/release-process: Refcard tweaks.
62103
621042018-07-07  Glenn Morris  <rgm@gnu.org>
62105
62106	Merge from origin/emacs-26
62107
62108	a427de9 (origin/emacs-26) Fix bug #11732
62109	3a04e15 Improve documentation of 'emacs-lock-mode'
62110	9d6ca5a * lisp/imenu.el (imenu-generic-expression): Doc fix.  (Bug#32...
62111	fdd7e7d Improve indexing of 'eval-defun' in ELisp manual
62112	10af989 Fix (length CIRCULAR) documentation
62113	271d1f7 Tramp editorials
62114	4abf94f Clarify and improve doc strings of 'eval-last-sexp' and friends
62115	6cfc7a7 Automate upload of Emacs manuals to gnu.org
62116	b73cde5 Fix MH-E mail composition with GNU Mailutils (SF#485)
62117	0dce5e5 Speed up 'replace-buffer-contents' some more
62118	00fdce0 * doc/emacs/docstyle.texi: Avoid messing up the html output.
62119
62120	Conflicts:
62121		admin/make-tarball.txt
62122
621232018-07-07  Drew Adams  <drew.adams@oracle.com>
62124
62125	Fix 2 minor bugs in 'imenu--generic-function'
62126
62127	* lisp/imenu.el (imenu--generic-function): Move point to START
62128	before checking whether the current item is inside a comment
62129	or a string.  Remove any empty menus that could have been
62130	added before returning.  (Bug#32024)
62131
621322018-07-07  John Shahid  <jvshahid@gmail.com>
62133
62134	Keep interactive uses of 'recenter' backward compatible (Bug#31325)
62135
62136	* src/window.c (Frecenter): Change the interactive spec to always pass
62137	a non-nil value to the REDISPLAY argument when called interactively.
62138	* lisp/window.el (recenter-top-bottom): Make sure 'recenter's second
62139	argument is non-nil everywhere.
62140	* doc/emacs/windows.texi (Textual Scrolling): Update documentation of
62141	'recenter'.
62142
621432018-07-07  Eli Zaretskii  <eliz@gnu.org>
62144
62145	Documentation followup for bug#32029
62146
62147	* etc/NEWS: Mention 'xref-find-definitions-at-mouse'
62148
62149	* doc/emacs/maintaining.texi (Looking Up Identifiers):
62150	Document 'xref-find-definitions-at-mouse'.
62151
621522018-07-07  Tobias Gerdin  <tgerdin@gmail.com>  (tiny change)
62153
62154	New function 'xref-find-definitions-at-mouse'
62155
62156	* lisp/progmodes/xref.el (xref-find-definitions-at-mouse): New
62157	function.  (Bug32029)
62158
621592018-07-07  Eli Zaretskii  <eliz@gnu.org>
62160
62161	Fix recent change in window.c
62162
62163	* src/window.c (scroll_command): Fix minor inefficiency in
62164	last change: don't call Fset_buffer if the buffer is already set to be
62165	what we want.  (Bug#31988)
62166
621672018-07-06  Paul Eggert  <eggert@cs.ucla.edu>
62168
62169	Update from gnulib
62170
62171	This incorporates:
62172	2018-07-04 gnulib-tool: minor tweaks for --gnu-make
62173	* build-aux/config.guess, build-aux/config.sub: Copy from Gnulib.
62174	* lib/gnulib.mk.in: Regenerate.
62175
621762018-07-06  Basil L. Contovounesios  <contovob@tcd.ie>
62177
62178	Fix scrolling
62179
62180	* src/window.c (scroll_command): Fix scrolling.
62181
621822018-07-04  Michael Albinus  <michael.albinus@gmx.de>
62183
62184	* lisp/shell.el (shell-completion-vars):
62185
62186	Set `comint-file-name-prefix' to "" for local default directory.
62187
621882018-07-03  Paul Eggert  <eggert@cs.ucla.edu>
62189
62190	Adjust to Gnulib change with -Wswitch-default
62191
62192	* configure.ac: Simplify by not bothering to omit
62193	-Wswitch-default, as Gnulib no longer enables it by default.
62194
621952018-07-03  Paul Eggert  <eggert@cs.ucla.edu>
62196
62197	Update from Gnulib
62198
62199	This incorporates:
62200	2018-07-01 getloadavg: don't redefine WINDOWS32
62201	2018-07-01 manywarnings: omit -Wswitch-default
62202	* build-aux/config.sub, lib/getloadavg.c, m4/manywarnings.m4:
62203	Copy from Gnulib.
62204
622052018-07-03  Tom Tromey  <tom@tromey.com>
62206
62207	Fix Tcl indentation in a namespace
62208
62209	Fixes bug#32035
62210	* lisp/progmodes/tcl.el (tcl-proc-list): Add "namespace".
62211	* test/lisp/progmodes/tcl-tests.el (tcl-mode-namespace-indent): New
62212	test.
62213
622142018-07-03  Stefan Monnier  <monnier@iro.umontreal.ca>
62215
62216	* lisp/mail/sendmail.el: Use lexical-binding
62217
62218	(mail-recover-1): Declare dired-trivial-filenames.
62219
622202018-07-03  Paul Eggert  <eggert@cs.ucla.edu>
62221
62222	Fix typo in --with-x-toolkit=no code
62223
62224	* src/xmenu.c (pop_down_menu) [!USE_X_TOOLKIT && !USE_GTK]:
62225	Fix type typo introduced by 2018-06-14T22:59:08!eggert@cs.ucla.edu.
62226
622272018-07-03  João Távora  <joaotavora@gmail.com>
62228
62229	Adjust previous jsonrpc change
62230
62231	(nth 2) is probably a better alternative to caddr, and in Emacs 26.1
62232	we can pass 0 as :service to automatically find an available port.
62233
62234	* lisp/jsonrpc.el (jsonrpc--call-deferred): Use cl-caddr.
62235
62236	* test/lisp/jsonrpc-tests.el
62237	(jsonrpc--call-with-emacsrpc-fixture): Pass 0 as :service to when
62238	making the listen server.
62239
622402018-07-02  Glenn Morris  <rgm@gnu.org>
62241
62242	* lisp/mail/sendmail.el (mail-from-style):
62243	Improve obsolescence message.
62244
622452018-07-02  Glenn Morris  <rgm@gnu.org>
62246
62247	Merge from origin/emacs-26
62248
62249	fc5cae7 ; Fix ChangeLog typo.
62250	e17a5e5 ; make change-history-commit
62251	f205928 * etc/HISTORY: Cite Brinkoff on early history.
62252	4e58ca8 Document internal use of 'above-suspended' z-group frame para...
62253	4bd43b0 Increase max-lisp-eval-depth adjustment while in debugger (bu...
62254	ab98352 Improve on last change in replace-buffer-contents
62255	2f149c0 Fix a factual error in Introduction to Emacs Lisp
62256	8ad50a3 ; * lisp/files.el (buffer-offer-save): Doc fix.  (Bug#32000)
62257	c80f31f Minor improvements in documentation of imenu.el
62258	8ebb683 Avoid errors with recentering in 'skeleton-insert'
62259	e980a3c * src/lisp.h: Omit obsolete comment re bytecode stack.
62260	eec71eb Speed up replace-buffer-contents
62261	93c41ce Remove extra process call from vc-git-find-file-hook
62262	7ea0873 ; Update some commentary
62263	4a7f423 Speed up vc-git-dir-status-files
62264	9134c84 Avoid compiler warning using coding.h
62265
62266	Conflicts:
62267		src/editfns.c
62268
622692018-07-02  Glenn Morris  <rgm@gnu.org>
62270
62271	Merge from origin/emacs-26
62272
62273	d008ef3 * src/xdisp.c (Vmouse_autoselect_window): Clarify doc-string ...
62274	6f6d525 Detect a non-list package archive content properly (Bug#22311)
62275
622762018-07-02  João Távora  <joaotavora@gmail.com>
62277
62278	Make lisp/jsonrpc.el work with Emacs 25.1
62279
62280	* lisp/jsonrpc.el (Package-Requires): Require Emacs 25.1
62281	(jsonrpc-lambda): Use cl-gensym.
62282	(jsonrpc--call-deferred): Caddr doesn't exist in
62283	emacs 25.1.
62284
62285	* test/lisp/jsonrpc-tests.el
62286	(jsonrpc--call-with-emacsrpc-fixture): New function.
62287	(jsonrpc--with-emacsrpc-fixture): Use it.
62288	(deferred-action-complex-tests): Adjust test for Emacs 25.1
62289
622902018-07-01  John Shahid  <jvshahid@gmail.com>
62291
62292	Optionally add argument description in minor mode DOC (bug#10754)
62293
62294	Add a paragraph to minor mode's docstring documenting the mode's ARG
62295	usage if the supplied docstring doesn't already contain the word "ARG".
62296
62297	* lisp/emacs-lisp/easy-mmode.el (easy-mmode--arg-docstring): New const.
62298	(easy-mmode--arg-docstring): New function.
62299	(define-minor-mode): Use them.
62300
62301	Remove argument documentation from all minor modes.
62302
623032018-07-01  Eli Zaretskii  <eliz@gnu.org>
62304
62305	Fix last change
62306
62307	* src/w32console.c (Fset_screen_color): Call Frecenter with 2
62308	arguments.  (Bug#31325)
62309
62310	* etc/NEWS:
62311	* doc/lispref/windows.texi (Textual Scrolling): Clarify the
62312	role of the second argument to 'recenter'.
62313
623142018-07-01  John Shahid  <jvshahid@gmail.com>
62315
62316	Add a new argument to 'recenter' to allow finer control of redisplay
62317
62318	* src/window.c (recenter): Add a new REDISPLAY argument to allow the
62319	caller to control the redisplay behavior.  'recenter' will only
62320	redisplay the frame if this new arg and 'recenter-redisplay' are
62321	both non-nil.
62322	(recenter-top-bottom): Pass an extra non-nil argument to
62323	'recenter' to force a redisplay.  (Bug#31325)
62324
623252018-07-01  Michael Albinus  <michael.albinus@gmx.de>
62326
62327	Minor change in tramp-tests.el
62328
62329	* test/lisp/net/tramp-tests.el (tramp-test03-file-name-host-rules):
62330	Cleanup before running the test.
62331
623322018-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
62333
62334	* lisp/hexl.el (hexl-follow-ascii-mode): Fix last fix (bug#32021)
62335
623362018-06-30  Glenn Morris  <rgm@gnu.org>
62337
62338	Unbreak bootstrap
62339
62340	* lisp/jsonrpc.el (jsonrpc-connection, jsonrpc-process-connection):
62341	Don't autoload defclass, else dumping fails loading loaddefs.el
62342	due to trying to autoload eieio-defclass-autoload.
62343
623442018-06-30  Glenn Morris  <rgm@gnu.org>
62345
62346	* doc/lispref/text.texi (JSONRPC): Add missing menu.
62347
623482018-06-30  João Távora  <joaotavora@gmail.com>
62349
62350	* lisp/jsonrpc.el (subr-x): Only require when compiling
62351
62352	* lisp/jsonrpc.el: Add "Package-Requires" and "Version" headers
62353
623542018-06-30  João Távora  <joaotavora@gmail.com>
62355
62356	Add lisp/jsonrpc.el
62357
62358	* doc/lispref/text.texi (Text): Add JSONRPC.
62359	(JSONRPC): New node.
62360
62361	* etc/NEWS (New Modes and Packages in Emacs 27.1): Mention jsonrpc.el
62362
62363	* lisp/jsonrpc.el: New file.
62364
62365	* test/lisp/jsonrpc-tests.el: New file.
62366
623672018-06-30  Eli Zaretskii  <eliz@gnu.org>
62368
62369	* lisp/hexl.el (hexl-follow-ascii-mode): Fix a typo.  (Bug#32021)
62370
623712018-06-30  Eli Zaretskii  <eliz@gnu.org>
62372
62373	Speed up reading sub-process output on MS-Windows
62374
62375	* src/w32proc.c (syms_of_ntproc) <w32-pipe-read-delay>: Set to
62376	zero.  For the details, see this discussion:
62377	http://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00711.html.
62378	* src/w32.c (_sys_read_ahead): Update the commentary for
62379	w32-pipe-read-delay usage.
62380
62381	* doc/emacs/msdos.texi (Windows Processes): Document
62382	w32-pipe-read-delay.
62383
62384	* etc/NEWS: Mention the change of the value of w32-pipe-read-delay.
62385
623862018-06-30  Eli Zaretskii  <eliz@gnu.org>
62387
62388	Speed-up let-binding of automatically-local variables
62389
62390	* src/data.c (set_default_internal): Use FOR_EACH_LIVE_BUFFER
62391	when binding variables that don't nominally have a local
62392	value, to avoid slowing down due to a large number of dead
62393	buffers.  (Bug#18522) (Bug#31853)
62394
623952018-06-29  Paul Eggert  <eggert@cs.ucla.edu>
62396
62397	Update from Gnulib
62398
62399	This incorporates:
62400	2018-06-29 regex: glibc does not use intprops.h
62401	2018-06-28 regex: port to recently proposed glibc regex merge
62402	2018-06-25 Continue to use spaces for indentation, not tabs
62403	2018-06-25 manywarnings: Don't enable -Wjump-misses-init by default
62404	2018-06-25 acl-internal.h: remove _GL_ATTRIBUTE_CONST on void function
62405	2018-06-24 manywarnings: accommodate GCC 9: remove -Wchkp and -Wabi
62406	2018-06-24 maint: clarify comments about sticky EOF
62407	2018-06-24 af_alg: avoid hangs when reading from streams
62408	2018-06-17 crypto: use byteswap
62409	2018-06-17 getloadavg: Return 0 on MS-Windows without Cygwi
62410	2018-06-17 getloadavg: Allow building on MS-Windows without Cygwin
62411	* build-aux/config.guess, build-aux/config.sub, doc/misc/texinfo.tex:
62412	* lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
62413	* lib/getloadavg.c, lib/gettimeofday.c, lib/md5.c, lib/pselect.c:
62414	* lib/set-permissions.c, lib/sha1.c, lib/sha256.c, lib/sha512.c:
62415	* lib/time.in.h, m4/getloadavg.m4, m4/gnulib-common.m4:
62416	* m4/manywarnings.m4, m4/pthread_sigmask.m4, m4/vararrays.m4:
62417	Copy from Gnulib.
62418
624192018-06-29  Paul Eggert  <eggert@cs.ucla.edu>
62420
62421	unbind_to performance tuning
62422
62423	* src/alloc.c (which_symbols):
62424	* src/dispnew.c (Fredisplay):
62425	* src/editfns.c (Fsubst_char_in_region):
62426	* src/fileio.c (Fdo_auto_save):
62427	* src/indent.c (Fvertical_motion):
62428	* src/keymap.c (Fcurrent_active_maps):
62429	* src/lread.c (Feval_buffer):
62430	* src/minibuf.c (get_minibuffer):
62431	* src/sysdep.c (system_process_attributes):
62432	* src/textprop.c (Fnext_single_char_property_change)
62433	(Fprevious_single_char_property_change):
62434	* src/window.c (Fscroll_other_window, Fscroll_other_window_down):
62435	* src/xdisp.c (Fformat_mode_line):
62436	Help the compiler eliminate tail recursion in call to unbind_to.
62437	* src/coding.c (decode_coding_gap):
62438	Omit unnecessary unbind_to, as we’re about to call unbind_to anyway.
62439	* src/coding.c (Fread_coding_system):
62440	* src/eval.c (eval_sub):
62441	* src/xdisp.c (handle_single_display_spec, decode_mode_spec):
62442	* src/xselect.c (x_get_local_selection):
62443	Avoid need to save a machine register when calling unbind_to.
62444	* src/minibuf.c (Ftry_completion, Fall_completions):
62445	Omit unnecessary assignment.
62446
624472018-06-29  Andreas Schwab  <schwab@linux-m68k.org>
62448
62449	* lisp/url/url-http.el (url-http-create-request): Doc fix.
62450
624512018-06-29  Andreas Schwab  <schwab@linux-m68k.org>
62452
62453	Use a non-proxy request when retrieving https URLs via a proxy
62454
62455	* lisp/url/url-http.el
62456	(url-https-proxy-after-change-function): Bind url-http-proxy
62457	to nil around url-http-create-request.
62458
624592018-06-29  Michael Albinus  <michael.albinus@gmx.de>
62460
62461	Sync with Tramp 2.4.0
62462
62463	* doc/misc/trampver.texi:
62464	* lisp/net/trampver.el: Change version to "2.4.0".
62465
62466	* lisp/net/tramp-gvfs.el (tramp-gvfs-handler-mounted-unmounted):
62467	Ignore unknown GVFS methods.
62468
62469	* test/lisp/net/tramp-tests.el (tramp-test42-asynchronous-requests):
62470	Tag as :unstable.
62471
624722018-06-29  Paul Eggert  <eggert@cs.ucla.edu>
62473
62474	* src/lisp.h: Add comment (Bug#31996#25).
62475
624762018-06-28  Noam Postavsky  <npostavs@gmail.com>
62477
62478	Let ediff '=' compare against ancestor buffer (Bug#11320)
62479
62480	* lisp/vc/ediff-util.el (ediff-inferior-compare-regions): Ask user
62481	whether to compare against the ancestor or merge buffer.  Use
62482	read-multiple-choice for A vs B buffer query.
62483
624842018-06-28  Paul Eggert  <eggert@cs.ucla.edu>
62485
62486	Fix recently-introduced SAFE_FREE bug
62487
62488	Problem reported by Andy Moreton (Bug#31996).
62489	* src/lisp.h (union specbinding.unwind_array):
62490	Remove unused member func.  Move array after nelts, as this is
62491	likely to generate more efficient code in safe_free, which can
62492	call xfree with the same value either way.
62493	(safe_free): Also handle SPECPDL_UNWIND_AWAY.
62494
624952018-06-28  Paul Eggert  <eggert@cs.ucla.edu>
62496
62497	Tune SAFE_FREE
62498
62499	On my platform (Fedora 28 x86-64, AMD Phenom II X4 910e) this sped
62500	up a SAFE_FREE-using microbenchmark (string-distance "abc" "abc")
62501	by about 18%, and shrank the Emacs text size by about 0.1%.
62502	* src/callint.c (Fcall_interactively):
62503	* src/callproc.c (call_process):
62504	* src/doc.c (get_doc_string, Fsnarf_documentation):
62505	* src/editfns.c (Freplace_buffer_contents):
62506	* src/emacs-module.c (funcall_module):
62507	* src/eval.c (Flet):
62508	* src/process.c (Fmake_process):
62509	* src/term.c (tty_menu_show):
62510	* src/xdisp.c (safe__call):
62511	* src/xmenu.c (x_menu_show):
62512	Use SAFE_FREE_UNBIND_TO.
62513	* src/data.c (wrong_choice): No need to call SAFE_FREE here.
62514	* src/lisp.h (USE_SAFE_ALLOCA):
62515	* src/regex.c (REGEX_USE_SAFE_ALLOCA):
62516	Do not declare sa_must_free local; no longer needed.
62517	All uses removed.
62518	(SAFE_FREE): Rewrite in terms of safe_free.
62519	(safe_free): New function, optimized to use xfree.
62520	(SAFE_FREE_UNBIND_TO): New macro.
62521	(safe_free_unbind_to): New function.
62522
625232018-06-27  João Távora  <joaotavora@gmail.com>
62524
62525	Respect s-s-b-default-predicate when killing terminal
62526
62527	Fixes: Bug#31951
62528
62529	* lisp/server.el (server-save-buffers-kill-terminal): Only pass
62530	PRED=t to save-some-bufers if ARG in non-nil.
62531
625322018-06-27  Vincent Belaïche  <vincentb1@users.sourceforge.net>
62533
62534	Allow 'file:' protocol for Info-follow-nearest-node.
62535
625362018-06-26  Glenn Morris  <rgm@gnu.org>
62537
62538	Merge from origin/emacs-26
62539
62540	12c77f6 (origin/emacs-26) Add ido-fallback special variable (Bug#31707)
62541	826e8d1 Merge branch 'emacs-26' of git.sv.gnu.org:/srv/git/emacs into...
62542	c784876 Tighten a cross-reference in documentation
62543	517dc0b Fix last change in tramp-sh.el
62544	f43186f Revert previous patch; comment was OK after all.
62545	4c3306e Fix lead comment for count_trailing_zero_bits
62546	b419f27 ; * doc/emacs/files.texi (Interlocking): Fix a non-portable @...
62547	7488de4 * lisp/emacs-lisp/regexp-opt.el (regexp-opt): Fix docstring q...
62548	0b69807 Make a minor update to the CSS mode docstring
62549	9a53b6d Say how to override a primitive interactive spec
62550	1d77078 Fix Bug#31941
62551
625522018-06-25  Jean-Christophe Helary  <brandelune@gmail.com>
62553
62554	Reformat package.el message strings for future l10n
62555
62556	* lisp/emacs-lisp/package.el (package-buffer-info)
62557	(package--download-one-archive, package-install-selected-packages)
62558	(package-autoremove, describe-package-1, package-menu-toggle-hiding)
62559	(package-menu-hide-package, package-menu--mark-upgrades-1)
62560	(package-menu--list-to-prompt, package-menu--prompt-transaction-p)
62561	(package-menu-execute, package-menu--find-and-notify-upgrades):
62562	Reformat message strings to remove need for plural computation.  Try
62563	to put full sentences in source string literals.
62564	* test/lisp/emacs-lisp/package-tests.el
62565	(package-test-describe-package): Update to match new message format.
62566
625672018-06-25  Noam Postavsky  <npostavs@gmail.com>
62568
62569	Suppress indent errors during electric indentation (Bug#18764)
62570
62571	* lisp/electric.el (electric-indent-post-self-insert-function):
62572	Suppress errors from indent code, but don't suppress errors from
62573	elsewhere in this function.  That way, if trouble is encountered with
62574	electric indent "not working", the error should be reproducible by
62575	calling indent directly (as is the case for Bug#18764), or else it's
62576	from the electric indent code and will be reported normally.
62577
625782018-06-25  Paul Eggert  <eggert@cs.ucla.edu>
62579
62580	(format "%d" F) now truncates floating F
62581
62582	Problem reported by Paul Pogonyshev (Bug#31938).
62583	* src/editfns.c: Include math.h, for trunc.
62584	(styled_format): For %d, truncate floating-point numbers and
62585	convert -0 to 0, going back to how Emacs 26 did things.
62586	* doc/lispref/strings.texi (Formatting Strings):
62587	Document behavior of %o, %d, %x, %X on floating-point numbers.
62588	* src/floatfns.c (trunc) [!HAVE_TRUNC]: Rename from emacs_trunc
62589	and make it an extern function, so that editfns.c can use it.
62590	All callers changed.
62591	* test/src/editfns-tests.el (format-%d-float): New test.
62592
625932018-06-25  Lars Ingebrigtsen  <larsi@gnus.org>
62594
62595	Fix spelling of "intermediate" (it's not "intermediary")
62596
62597	* doc/emacs/misc.texi (Network Security): Ditto.
62598
62599	* lisp/net/nsm.el (network-security-protocol-checks): Fix spelling
62600	on "intermediate".
62601	(nsm-protocol-check--intermediate-sha1): Ditto.
62602
626032018-06-25  Lars Ingebrigtsen  <larsi@gnus.org>
62604
62605	Clean up redundant code from previous checkins
62606
62607	* src/gnutls.c (gnutls_verify_boot): Remove reduntant setting of
62608	p->gnutls_certificates, which is now performed by
62609	gnutls_deinit_certificates.
62610
626112018-06-25  João Távora  <joaotavora@gmail.com>
62612
62613	Mention use of C-h . (display-local-help) in Flymake manual
62614
62615	Fixes: Bug#31921
62616
62617	* doc/misc/flymake.texi (Using Flymake): Mention display-local-help.
62618
626192018-06-24  Lars Ingebrigtsen  <larsi@gnus.org>
62620
62621	Make the intermediary-sha1 check work
62622
62623	* lisp/net/nsm.el (nsm-protocol-check--intermediary-sha1): Make
62624	the "skip the root cert" logic work (suggested by Noam Postavsky).
62625
626262018-06-24  Lars Ingebrigtsen  <larsi@gnus.org>
62627
62628	Don't use XCAR in possibly-nil situations
62629
62630	* src/gnutls.c (Fgnutls_peer_status): certs theoretically may be
62631	nil, so don't use XCAR.
62632
626332018-06-24  Noam Postavsky  <npostavs@gmail.com>
62634
62635	(Network Security): Fix the description of the 3DES weakness
62636
62637	* doc/emacs/misc.texi (Network Security): Fix the description of
62638	the 3DES weakness.
62639
626402018-06-24  Lars Ingebrigtsen  <larsi@gnus.org>
62641
62642	Make more TLS checks trigger on the default `medium' level
62643
62644	* doc/emacs/misc.texi (Network Security): Update the doc to say
62645	what's on the different levels.
62646
62647	* lisp/net/nsm.el (nsm-protocol-check--intermediary-sha1): Check
62648	intermediary certificates for SHA1.
62649	(nsm-protocol-check--3des): Check for 3DES ciphers.
62650	(network-security-protocol-checks): Put most of the checks on
62651	`medium'.
62652
626532018-06-24  Lars Ingebrigtsen  <larsi@gnus.org>
62654
62655	Tweak previous gnutls change for efficiency
62656
62657	* src/gnutls.c (Fgnutls_peer_status): Minor optimisation to avoid
62658	computing the topmost certificate twice.
62659
626602018-06-24  Lars Ingebrigtsen  <larsi@gnus.org>
62661
62662	Return the entire TLS certificate chain back to the caller
62663
62664	* src/gnutls.c (gnutls_deinit_certificates): New function.
62665	(Fgnutls_peer_status): Return all certificates in the chain back
62666	to Lisp land.
62667	(gnutls_verify_boot): Compute all the x509 certificates in the
62668	chain.
62669
62670	* src/process.h (struct Lisp_Process): Adjust gnutls fields so
62671	that we can keep tracks of all certificates in the chain instead
62672	of just the host certificate.
62673
626742018-06-24  Tom Tromey  <tom@tromey.com>
62675
62676	Fix two tcl-mode defun-related bugs
62677
62678	Fixes bug#23565
62679	* lisp/progmodes/tcl.el (tcl-mode): Set beginning-of-defun-function
62680	and end-of-defun-function.
62681	(tcl-beginning-of-defun-function, tcl-end-of-defun-function): New
62682	defuns.
62683	* test/lisp/progmodes/tcl-tests.el: New file.
62684
626852018-06-24  Lars Ingebrigtsen  <larsi@gnus.org>
62686
62687	Fix reverse test in previous check-in
62688
62689	* lisp/net/nsm.el (nsm-check-protocol): Fix reverse test in
62690	previous check-in.
62691
626922018-06-24  Lars Ingebrigtsen  <larsi@gnus.org>
62693
62694	Refactor the protocol NSM checks for flexibility
62695
62696	* doc/emacs/misc.texi (Network Security): Mention
62697	network-security-protocol-checks.
62698
62699	* lisp/net/nsm.el (network-security-protocol-checks): New variable.
62700	(nsm-check-protocol): Refactor the checks into separate functions
62701	for greater flexibility.
62702	(nsm-protocol-check--diffie-hellman-prime-bits)
62703	(nsm-protocol-check--rc4, nsm-protocol-check--ssl)
62704	(nsm-protocol-check--signature-sha1): Refactored out of the big
62705	function.
62706
627072018-06-23  Glenn Morris  <rgm@gnu.org>
62708
62709	Merge from origin/emacs-26
62710
62711	bbc9d37 (origin/emacs-26) Fix previous change in minibuffer-default-a...
62712	7caeef1 * src/editfns.c (Fformat): Make %x easier to spot in doc stri...
62713	ecc29fb Improve responsiveness while in 'replace-buffer-contents'
62714	8182d64 Improve documentation of 'server-start' and friends
62715	decdfed Clarify wording about functions' argument lists
62716	5abac8b * lisp/doc-view.el: Fix typos in the commentary.  (Bug#31937)
62717
627182018-06-23  Glenn Morris  <rgm@gnu.org>
62719
62720	Merge from origin/emacs-26
62721
62722	5cb3991 Fix a typo in emacs-lisp-intro.texi
62723	d6aa55e Avoid segfaults in replace-buffer-contents with large buffers
62724	d22b8d1 Adjust for scaling for mode-line popup menus (Bug#31880)
62725	3d2e3dc Change name of `seqp' argument (Bug#26411)
62726	40e1db8 Change index of ";" to better reflect it's usage (Bug#31623)
62727	d289e7e Fix bug of 'mouse-drag-and-drop-region' to detect edges of re...
62728	e292c09 Fix #'fun handling inside `labels' (Bug#31792)
62729
627302018-06-23  Michael Albinus  <michael.albinus@gmx.de>
62731
62732	* lisp/net/tramp-sh.el (tramp-get-ls-command-with): Fix typo.
62733
627342018-06-22  Stefan Monnier  <monnier@iro.umontreal.ca>
62735
62736	* lisp/net/tramp-sh.el (tramp-sh--quoting-style-options): New function
62737
62738	(tramp-do-directory-files-and-attributes-with-stat)
62739	(tramp-do-file-attributes-with-ls): Use it.
62740
627412018-06-22  Michael Albinus  <michael.albinus@gmx.de>
62742
62743	Improve backward compatibility of Tramp
62744
62745	* lisp/net/tramp-adb.el (tramp-adb-handle-exec-path):
62746	* lisp/net/tramp-sh.el (tramp-sh-handle-exec-path): Use ´file-remote-p'.
62747	(tramp-get-ls-command-with): Handle busybox specially.
62748
62749	* test/lisp/net/tramp-tests.el (tramp-test34-exec-path): Check for
62750	`fboundp'.  Use `file-remote-p'.  Hide compiler warning for older
62751	Emacsen.
62752
627532018-06-22  Eli Zaretskii  <eliz@gnu.org>
62754
62755	Document 'major-mode-suspend' and 'major-mode-restore'
62756
62757	* doc/lispref/modes.texi (Major Modes): Document
62758	'major-mode-suspend' and 'major-mode-restore'.  (Bug#31551)
62759
62760	* etc/NEWS: Mark the corresponding entry as documented in
62761	manuals.
62762
627632018-06-21  Stefan Monnier  <monnier@iro.umontreal.ca>
62764
62765	New functions to switch back and forth to another major mode
62766
62767	* lisp/subr.el (major-mode--suspended): New var.
62768	(major-mode-suspend, major-mode-restore): New funs, extracted from doc-view.
62769	* lisp/doc-view.el (doc-view--previous-major-mode): Remove.
62770	(doc-view-mode): Use major-mode-suspend.
62771	(doc-view-fallback-mode): Use major-mode-restore.
62772	* lisp/hexl.el: (hexl-mode--minor-mode-p, hexl-mode--setq-local): Remove.
62773	(hexl-mode): Use major-mode-suspend and hexl-follow-ascii-mode.
62774	(hexl-mode-exit): Use major-mode-restore.
62775	(hexl-activate-ruler, hexl-follow-line): Don't bother trying to preserve
62776	earlier state, now that entering/leaving hexl-mode kills local vars.
62777	(hexl-follow-ascii-mode): New proper local minor mode.
62778	(hexl-follow-ascii): Rewrite, using it.
62779	* lisp/image-mode.el (image-mode-previous-major-mode): Remove.
62780	(image-mode): Use major-mode-suspend.
62781	(image-mode-to-text): Use major-mode-restore.
62782
627832018-06-21  memeplex  <carlosjosepita@gmail.com>
62784
62785	Remove broken icon from tooltip (Bug#31884)
62786
62787	* src/gtkutil.c (xg_show_tooltip): Call gtk_widget_show instead of
62788	gtk_widget_show_all, the latter displays an extra placeholder icon.
62789
627902018-06-21  Paul Eggert  <eggert@cs.ucla.edu>
62791
62792	Set group when installing, too
62793
62794	From a patch by Ulrich Mueller in:
62795	https://lists.gnu.org/r/emacs-devel/2018-06/msg00687.html
62796	* Makefile.in (set_installuser): Also set the group, in order
62797	to match install(1) behavior.  Also, don’t clutter stderr
62798	with a diagnostic if ‘id’ is missing.
62799
628002018-06-20  Eli Zaretskii  <eliz@gnu.org>
62801
62802	Improve documentation of a recent change
62803
62804	* doc/lispref/processes.texi (Subprocess Creation): Improve
62805	wording of documentation for the function 'exec-path'.
62806
62807	* etc/NEWS: Improve wording and formatting of recently added
62808	entries.
62809
62810	* lisp/files.el (exec-path): Doc fix.
62811
628122018-06-20  Michael Albinus  <michael.albinus@gmx.de>
62813
62814	Implement command completion in remote shells.  (Bug#31704)
62815
62816	* doc/lispref/files.texi (Locating Files): Describe optional
62817	argument REMOTE of `executable-find'.
62818	(Magic File Names): Add `exec-path'.
62819
62820	* doc/lispref/processes.texi (Subprocess Creation): Describe
62821	function `exec-path'.
62822
62823	* doc/misc/tramp.texi (Remote programs): Explain refresh of search
62824	paths by `tramp-cleanup-this-connection'.
62825
62826	* etc/NEWS: Mention 'exec-path' and 'executable-find'.
62827
62828	* lisp/files.el (exec-path): New defun.
62829	(executable-find): Add optional argument REMOTE.
62830
62831	* lisp/shell.el (shell-completion-vars): Set `comint-file-name-prefix'.
62832	(shell--command-completion-data): Use `(exec-path)'.  (Bug#31704)
62833
62834	* lisp/net/ange-ftp.el (exec-path):
62835	* lisp/net/tramp.el (tramp-file-name-for-operation):
62836	* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
62837	* lisp/net/tramp-archive.el (tramp-archive-file-name-handler-alist):
62838	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
62839	* lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
62840	* lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
62841	<exec-path>: Add handler.
62842
62843	* lisp/net/tramp-adb.el (tramp-adb-handle-exec-path): New defun.
62844	(tramp-adb-maybe-open-connection): Do not set "remote-path"
62845	connection property.
62846
62847	* lisp/net/tramp-compat.el (tramp-compat-exec-path): New defun.
62848
62849	* lisp/net/tramp-sh.el (tramp-sh-handle-exec-path): New defun.
62850
62851	* lisp/net/tramp.el (tramp-eshell-directory-change): Use it.
62852
62853	* test/lisp/net/tramp-archive-tests.el
62854	(tramp-archive-test38-make-nearby-temp-file)
62855	(tramp-archive-test41-file-system-info)
62856	(tramp-archive-test43-auto-load)
62857	(tramp-archive-test43-delay-load): Rename.
62858
62859	* test/lisp/net/tramp-tests.el (tramp-test34-exec-path): New test.
62860	(tramp-test36-make-auto-save-file-name)
62861	(tramp-test37-find-backup-file-name)
62862	(tramp-test38-make-nearby-temp-file)
62863	(tramp-test39-special-characters)
62864	(tramp-test39-special-characters-with-stat)
62865	(tramp-test39-special-characters-with-perl)
62866	(tramp-test39-special-characters-with-ls, tramp-test40-utf8)
62867	(tramp-test40-utf8-with-stat, tramp-test40-utf8-with-perl)
62868	(tramp-test40-utf8-with-ls, tramp-test41-file-system-info)
62869	(tramp-test42-asynchronous-requests, tramp-test43-auto-load)
62870	(tramp-test43-delay-load, tramp-test43-recursive-load)
62871	(tramp-test43-remote-load-path, tramp-test44-unload): Rename.
62872
628732018-06-19  João Távora  <joaotavora@gmail.com>
62874
62875	Properly ignore stderr in elisp Flymake backend
62876
62877	Naively passing `null-device' as stderr creates a buffer named
62878	"/dev/null" instead.  Pass a hidden buffer name instead.  (Bug#31902).
62879
62880	* lisp/progmodes/elisp-mode.el (elisp-flymake-byte-compile): Pass
62881	hidden buffer as make-process :stderr instead of null-device.
62882
628832018-06-19  Daniel Colascione  <dancol@dancol.org>
62884
62885	Fix theme application
62886
62887	Fix an inverted test.  Patch due to Andy Moreton.
62888
62889	* lisp/cus-face.el (custom-theme-set-faces): Correct sense of
62890	`custom--should-apply-setting' test.
62891
628922018-06-19  Daniel Colascione  <dancol@dancol.org>
62893
62894	Unbreak dabbrev
62895
62896	This commit partially reverts
62897	edb1f85a27817a3fac38bb85752671414819203b, which results in dabbev
62898	expansion failing due to trying to switch to the null buffer.
62899
62900	* lisp/dabbrev.el (dabbrev--progress-reporter): Restore variable.
62901	(dabbrev--find-expansion): Restore original code.
62902
629032018-06-18  Stefan Monnier  <monnier@iro.umontreal.ca>
62904
62905	lisp/obsolete/*tls.el: Note when obsolescence was decided
62906
629072018-06-18  João Távora  <joaotavora@gmail.com>
62908
62909	Skip a json.c test unless functions being tested exist
62910
62911	* test/src/json-tests.el
62912	(json-parse-with-custom-null-and-false-objects): Skip this test
62913	unless functions being tested exist.
62914
629152018-06-18  João Távora  <joaotavora@gmail.com>
62916
62917	Mark a specific electric-pair-mode test as an expected failure
62918
62919	See https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00535.html
62920
62921	* test/lisp/electric-tests.el
62922	(electric-pair-whitespace-chomping-2-at-point-4-in-c++-mode-in-strings):
62923	Mark as failing.
62924
629252018-06-18  Mark Oteiza  <mvoteiza@udel.edu>
62926
62927	Change errant if to when (Bug#31840)
62928
62929	* lisp/emacs-lisp/subr-x.el: Expand to 'when' instead of 'if'.
62930
629312018-06-18  João Távora  <joaotavora@gmail.com>
62932
62933	Electric-pair-mode lets modes choose how to skip whitespace
62934
62935	cc-mode.el-based major-modes with stricter syntax for invalid
62936	NL-terminated strings might choose to have electric-pair-mode skip
62937	some of whitespace into non-string-syntax regions, for the sake of
62938	letting electric-pair-mode chomp that whitespace and make the string
62939	valid again.
62940
62941	* lisp/elec-pair.el (electric-pair-post-self-insert-function): Call it.
62942	(electric-pair-skip-whitespace-function): New buffer-local variable.
62943
629442018-06-18  Noam Postavsky  <npostavs@gmail.com>
62945
62946	Stop assuming .git is a directory in gitmerge.el
62947
62948	* admin/gitmerge.el (gitmerge-maybe-resume): Use 'git rev-parse
62949	--git-dir' to find the git directory rather than assuming it is
62950	.git/ (that assumption fails for separated worktrees).
62951
629522018-06-18  Noam Postavsky  <npostavs@gmail.com>
62953
62954	Default to splash on current frame, if none visible (Bug#31169)
62955
62956	* lisp/startup.el (fancy-splash-frame): Default to current frame.
62957
629582018-06-18  Noam Postavsky  <npostavs@gmail.com>
62959
62960	Move tls.el and starttls.el to lisp/obsolete/ (Bug#31457)
62961
62962	* lisp/obsolete/tls.el: Moved from lisp/net/tls.el.
62963	* lisp/gnus/nnimap.el:
62964	* lisp/url/url-http.el: Don't require tls, since it's obsolete.
62965	* lisp/net/network-stream.el: Only require tls if we actually try to
62966	use it (i.e., when (gnutls-available-p) returns nil).  Declare some
62967	functions to fix compilation warnings.
62968
62969	* lisp/obsolete/starttls.el: Moved from lisp/net/starttls.el.
62970	* lisp/net/sieve-manage.el:
62971	* lisp/net/network-stream.el: Don't require `starttls' at the
62972	top-level, declare the variables and functions used instead.
62973	(network-stream-open-starttls): Only require `starttls' if
62974	needed (i.e., gnutls-available-p fails).
62975
62976	* etc/NEWS: Announce obsoletion.
62977
629782018-06-18  Glenn Morris  <rgm@gnu.org>
62979
62980	Merge from origin/emacs-26
62981
62982	3673770 (origin/emacs-26) Fix vertical-motion with 'visual' line-numb...
62983	d8bff53 ; CONTRIBUTE: Add a couple of nits.
62984
629852018-06-18  Glenn Morris  <rgm@gnu.org>
62986
62987	Merge from origin/emacs-26
62988
62989	ebe065f Prevent errant scroll on mouse click (Bug#31546)
62990	ffd2018 Minor documentation fix
62991	cf4dc95 * lisp/window.el (window-toggle-side-windows): Doc fix.  (Bug...
62992
629932018-06-18  Glenn Morris  <rgm@gnu.org>
62994
62995	Merge from origin/emacs-26
62996
62997	63ba73a Fix documentation of ':propertize' in mode-line-format
62998	22aa665 Reject invalid 5-byte sequences when detecting UTF-8 encoding
62999	0d3c358 Fix 'replace-buffer-contents' in multibyte buffers
63000	c79a627 Update etc/NEWS for mail-source-movemail-program change
63001	63f1dc4 Improve movemail default
63002	0b1a2ae Delete description of deleted Customize functions
63003	fcd66d0 Keep vc-print-log from putting point at buffer end (Bug#31764)
63004
63005	Conflicts:
63006		etc/NEWS
63007
630082018-06-18  Glenn Morris  <rgm@gnu.org>
63009
63010	Merge from origin/emacs-26
63011
63012	a933ebe Improve commentary in info.el
63013	94e84a9 ; Further wording fix in tramp.texi
63014	a5a0b11 Fix wording in tramp.texi
63015	2933242 * doc/misc/tramp.texi (Remote shell setup): Fix typo.
63016
630172018-06-18  Glenn Morris  <rgm@gnu.org>
63018
63019	Merge from origin/emacs-26
63020
63021	5bdc344 ; Reduce quoting for SELECTOR in 'make -C test' (Bug#31744)
63022	b6b793b ; test/Makefile.in: Add TEST_INTERACTIVE option (Bug#31744).
63023	1aa906f Make 'tags' targets respect --with-silent-rules (Bug#31744)
63024
63025	Conflicts:
63026		test/Makefile.in
63027		test/README
63028
630292018-06-18  Glenn Morris  <rgm@gnu.org>
63030
63031	Merge from origin/emacs-26
63032
63033	9c6f35a * doc/lispref/files.texi (Unique File Names): Fix a typo.  (B...
63034
630352018-06-18  Eli Zaretskii  <eliz@gnu.org>
63036
63037	Improve documentation of recent changes in Comint
63038
63039	* lisp/comint.el (comint-insert-previous-argument)
63040	(comint-arguments, comint-insert-previous-argument-from-end):
63041	Doc fixes.
63042	(comint-insert-previous-argument-from-end): Add :version.
63043
63044	* doc/emacs/misc.texi (Shell Ring): Fix a typo in the name of
63045	'comint-insert-previous-argument'.  Document
63046	'comint-insert-previous-argument-from-end'.  (Bug#25271)
63047
63048	* etc/NEWS: Reformat and rephrase the entry for recent Comint
63049	changes.
63050
630512018-06-18  Richard Stallman  <rms@gnu.org>
63052
63053	rmail-summary-by-senders defaults to sender
63054
63055	* etc/NEWS: Mention this.
63056	* lisp/mail/rmailsum.el (rmail-summary-by-senders):
63057	Offer From field of current message as a default argument.
63058
630592018-06-17  Dima Kogan  <dima@secretsauce.net>
63060
63061	comint-insert-previous-argument doesn't detect and ignore trailing &
63062
63063	This function is invoked in shell-mode by the user, and is meant to
63064	emulate what M-. does in zsh and bash: it inserts an argument from a
63065	previous command.  Neither zsh nor bash treat a trailing & specially:
63066	M-. simply inserts it if it is encountered.  Emacs DID have extra
63067	logic to detect and discard trailing &, but this logic was buggy, and
63068	a && anywhere in the sequence would confuse it.  This patch simply
63069	removes that logic to fix the bug and to emulate zsh and bash more
63070	closely
63071
63072	* lisp/comint.el (comint-insert-previous-argument): don't detect and
63073	  ignore trailing &
63074	  (Bug#25271)
63075	* etc/NEWS: Document this.
63076
630772018-06-17  Dima Kogan  <dima@secretsauce.net>
63078
63079	comint-insert-previous-argument counts args from start or from end
63080
63081	This function is invoked in shell-mode by the user, and is meant to
63082	emulate what M-. does in zsh and bash: it inserts an argument from a
63083	previous command.  Without a prefix argument, it inserts the last arg
63084	from the previous command; with an argument INDEX, it inserts the
63085	INDEX-th argument.  bash counts from the start, while zsh counts from
63086	the end.  This patch adds a variable
63087	`comint-insert-previous-argument-from-end' that emulates the zsh
63088	behavior if non-nil.
63089
63090	* lisp/comint.el (comint-arguments): can take in negative arguments to count
63091	  from the end, same as indexing in python.
63092	  (comint-insert-previous-argument): if
63093	  comint-insert-previous-argument-from-end is non-nil, INDEX counts
63094	  arguments from the end; if nil, from the beginning
63095	  (Bug#25271)
63096	* etc/NEWS: Document this.
63097
630982018-06-17  Glenn Morris  <rgm@gnu.org>
63099
63100	* test/lisp/simple-tests.el (simple-tests-async-shell-command-30280):
63101	Use the correct emacs executable, not first in PATH.
63102
631032018-06-17  Michael Heerdegen  <michael_heerdegen@web.de>
63104
63105	Allow floats as 'pcase' QPATS
63106
63107	* lisp/emacs-lisp/pcase.el (\`): Extend semantics of QPATS to all
63108	numbers.  Add a comment explaining why we disallow some atoms as
63109	QPATS.
63110	* doc/lispref/control.texi (Backquote Patterns): Update the paragraph
63111	explaining QPATS.  Remove a sentence suggesting an analogy between
63112	QPATS to self-quoting objects.
63113
631142018-06-17  João Távora  <joaotavora@gmail.com>
63115
63116	Minor Flymake docstring fixes
63117
63118	* lisp/progmodes/flymake.el (flymake-diagnostic-functions):
63119	Clarify meaning of :region in docstring.
63120	(flymake-start): Fix broken docstring.
63121
631222018-06-17  Eli Zaretskii  <eliz@gnu.org>
63123
63124	Fix last change
63125
63126	* etc/NEWS: Fix last added entry.
63127
63128	* lisp/subr.el (dotimes-with-progress-reporter)
63129	(dolist-with-progress-reporter): Fix the advertised signature.
63130
63131	* doc/lispref/display.texi (Progress): Fix last change.
63132	(Bug#31696)  (Bug#31697)
63133
631342018-06-17  Tino Calancha  <tino.calancha@gmail.com>
63135
63136	Add new macro dolist-with-progress-reporter
63137
63138	* lisp/subr.el (dolist-with-progress-reporter): New macro (Bug#31697).
63139	* lisp/cus-edit.el (custom-group-value-create): Use it.
63140	* lisp/dabbrev.el (dabbrev--progress-reporter): Delete variable.
63141	(dabbrev--find-expansion): Use dotimes-with-progress-reporter.
63142
63143	* doc/lispref/display.texi: Document the macro.
63144
631452018-06-17  Tino Calancha  <tino.calancha@gmail.com>
63146
63147	dotimes-with-progress-reporter: Polymorphic 2nd argument
63148
63149	* lisp/subr.el (dotimes-with-progress-reporter): Allow 2nd arg to be
63150	a string or a progress reporter (Bug#31696).
63151	* doc/lispref/display.texi (node Progress): Update manual.
63152
631532018-06-17  Michael Albinus  <michael.albinus@gmx.de>
63154
63155	Cleanup secrets-tests
63156
63157	* test/lisp/net/secrets-tests.el (secrets-test03-items)
63158	(secrets-test04-search): Cleanup "session" collection initially.
63159
631602018-06-17  Eli Zaretskii  <eliz@gnu.org>
63161
63162	When possible, prefer UTF-8 as the safe encoding for saving
63163
63164	* lisp/international/mule-cmds.el (select-safe-coding-system):
63165	If possible, offer UTF-8 as the default encoding.  (Bug#31807)
63166
631672018-06-16  Daniel Colascione  <dancol@dancol.org>
63168
63169	Apply non-user themes only when asked
63170
63171	Theme settings now generally aren't actually applied until a call to
63172	`enable-theme-, either one made explicitly or implicitly through
63173	`load-theme' with NO-ENABLE nil.  This change has the effect of not
63174	applying theme changes just because we load a lisp file containing a
63175	theme specification.  The previous behavior is preserved for the
63176	special case of the `user' theme, which is frequently used for
63177	ad-hoc customization.
63178
63179	* lisp/cus-face.el (custom-theme-set-faces): Call
63180	`custom--should-apply-setting' to decide whether to apply
63181	a setting.
63182
63183	* lisp/custom.el (custom--should-apply-setting): New function.
63184	(custom--inhibit-theme-enable): Add `apply-only-user' option;
63185	default to it.
63186	(custom-push-theme, custom-theme-set-variables): Call
63187	`custom--should-apply-setting' to decide whether to apply
63188	a setting.
63189
631902018-06-16  Noam Postavsky  <npostavs@gmail.com>
63191
63192	Don't forget to analyze args of lambda lifted functions (Bug#30872)
63193
63194	* lisp/emacs-lisp/cconv.el (cconv--convert-funcbody): New function.
63195	(cconv--convert-function): Extracted from here.
63196	(cconv-convert): Also use it here, in the lambda lifted case, so that
63197	mutated args are properly accounted for.
63198	* test/lisp/emacs-lisp/cconv-tests.el: New test.
63199
632002018-06-16  Noam Postavsky  <npostavs@gmail.com>
63201
63202	Fix off by one error in python-mode assertion (Bug#30964)
63203
63204	* lisp/progmodes/python.el (python-nav-end-of-statement): Don't assert
63205	that string-start is strictly greater than last-string-end, because
63206	the string end is a position outside of the string and may therefore
63207	be the same as the following string's start.
63208	* test/lisp/progmodes/python-tests.el (python-nav-end-of-statement-2):
63209	New test.
63210
632112018-06-16  Daniel Colascione  <dancol@dancol.org>
63212
63213	Restore old echo_truncate condition
63214
63215	* src/keyboard.c (read_key_sequence): Restore old
63216	echo_truncate condition.
63217
632182018-06-16  Daniel Colascione  <dancol@dancol.org>
63219
63220	Make regex matching reentrant; update syntax during match
63221
63222	* src/lisp.h (compile_pattern): Remove prototype of
63223	now-internal function.
63224
63225	* src/regex.c (POS_AS_IN_BUFFER): Consult gl_state instead of
63226	re_match_object: the latter can change in Lisp.
63227	(re_match_2_internal): Switch back to UPDATE_SYNTAX_* FROM
63228	UPDATE_SYNTAX_FAST*, allowing calls into Lisp.
63229
63230	* src/regex.h (re_match_object): Uncomment declaration.
63231
63232	* src/search.c (struct regexp_cache): Add `busy' field.
63233	(thaw_buffer_relocation): Delete; rely on unbind.
63234	(compile_pattern_1): Assert pattern isn't busy.
63235	(shrink_regexp_cache): Don't shrink busy patterns.
63236	(clear_regexp_cache): Don't nuke busy patterns.
63237	(unfreeze_pattern, freeze_pattern): New functions.
63238	(compile_pattern): Return a regexp_cache pointer instead of the
63239	re_pattern_buffer, allowing callers to use `freeze_pattern' if
63240	needed.  Do not consider busy patterns as cache hit candidates;
63241	error if we run out of non-busy cache entries.
63242	(looking_at_1, fast_looking_at): Snapshot
63243	Vinhibit_changing_match_data; mark pattern busy while we're
63244	matching it; unbind.
63245	(string_match_1, fast_string_match_internal)
63246	(fast_c_string_match_ignore_case): Adjust for compile_pattern
63247	return type.
63248	(search_buffer_re): Regex code from old search_buffer moved here;
63249	snapshot Vinhibit_changing_match_data; mark pattern busy while
63250	we're matching it; unbind.
63251	(search_buffer_non_re): Non-regex code from old search_buffer
63252	moved here.
63253	(search_buffer): Split into search_buffer_re,
63254	search_buffer_non_re.
63255	(syms_of_search): Staticpro re_match_object, even though we really
63256	shouldn't have to.
63257
63258	* src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
63259	(UPDATE_SYNTAX_TABLE_FAST): Remove.
63260
63261	* src/thread.h (struct thread_state): Remove m_re_match_object,
63262	which is global again.  (It never needs to be preserved across
63263	thread switch.)
63264
632652018-06-16  Daniel Colascione  <dancol@dancol.org>
63266
63267	Decouple dired from regex internals
63268
63269	* src/dired.c: Remove use of regex.h
63270	(directory_files_internal): Use higher-level regular
63271	expression functions.
63272
632732018-06-16  Daniel Colascione  <dancol@dancol.org>
63274
63275	Remove commented-out code in compile_pattern_1
63276
63277	* src/search.c (compile_pattern_1): Remove commented-out code.
63278
632792018-06-16  Daniel Colascione  <dancol@dancol.org>
63280
63281	Tweak field ordering in re_pattern_buffer
63282
63283	* src/regex.h (struct re_pattern_buffer): Reorder charset_unibyte
63284	field to keep bitfields together.
63285
632862018-06-16  Bozhidar Batsov  <bozhidar@batsov.com>
63287
63288	Fix a docstring
63289
63290	Fix references to RuboCop in ruby-mode.el
63291
632922018-06-16  João Távora  <joaotavora@gmail.com>
63293
63294	Fix bug in elisp-flymake-byte-compile
63295
63296	* lisp/progmodes/elisp-mode.el (elisp-flymake-byte-compile): Pass
63297	keyword args to make-process.
63298
632992018-06-16  Paul Eggert  <eggert@cs.ucla.edu>
63300
63301	Rewrite memory-limit in Lisp
63302
63303	Have it return Emacs virtual memory size, not the sbrk value
63304	which is often useless newadays.
63305	* doc/lispref/internals.texi (Garbage Collection):
63306	* etc/NEWS: Document this.
63307	* lisp/subr.el (memory-limit): New implementation in Lisp,
63308	written in terms of process-attributes, and which returns
63309	virtual memory size.
63310	* src/alloc.c (Fmemory_limit): Remove C implementation.
63311
633122018-06-16  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
63313
63314	Fix byte compilation of (eq foo 'default)
63315
63316	Do not use the symbol ‘default’ as a special marker.
63317	Instead, use a value that cannot appear in the program,
63318	improving on a patch proposed by Robert Cochran (Bug#31718#14).
63319	* lisp/emacs-lisp/bytecomp.el (byte-compile--default-val):
63320	New constant.
63321	(byte-compile-cond-jump-table-info)
63322	(byte-compile-cond-jump-table): Use it instead of 'default.
63323	* test/lisp/emacs-lisp/bytecomp-tests.el:
63324	(byte-opt-testsuite-arith-data): Add a test for the bug.
63325
633262018-06-16  Eli Zaretskii  <eliz@gnu.org>
63327
63328	Use mint_ptr in w32notify.c
63329
63330	* src/w32notify.c (Fw32notify_add_watch, Fw32notify_rm_watch)
63331	(Fw32notify_valid_p, w32_get_watch_object): Use make_mint_ptr and
63332	xmint_pointer.
63333
633342018-06-16  Eli Zaretskii  <eliz@gnu.org>
63335
63336	* doc/lispref/text.texi (Parsing JSON): Minor formatting changes.
63337
633382018-06-16  Eli Zaretskii  <eliz@gnu.org>
63339
63340	Minor doc string fixes in json.c
63341
63342	* src/json.c (Fjson_serialize, Fjson_insert): Fix 'usage'.
63343
633442018-06-16  Eli Zaretskii  <eliz@gnu.org>
63345
63346	Formatting and doc fixes in recent changes
63347
63348	* src/xfaces.c (evaluate_face_filter): Explain the inner braces.
63349	(merge_face_ref): Fix whitespace.
63350	(syms_of_xfaces) <face-filters-always-match>: Doc fix.
63351	* src/xdisp.c (extend_face_to_end_of_line): Fix whitespace.
63352
633532018-06-16  Eli Zaretskii  <eliz@gnu.org>
63354
63355	Improve documentation of several recent changes
63356
63357	* src/xfaces.c (merge_face_ref): Fix a typo in the commentary.
63358	(evaluate_face_filter, filter_face_ref): Minor copyedits in
63359	the commentary.
63360	* doc/lispref/display.texi (Face Remapping):
63361	* doc/lispref/text.texi (Special Properties): Document the
63362	':filter' face specs and their effects.  Document
63363	'face-filters-always-match'.
63364
63365	* doc/emacs/files.texi (Visiting): Document the new
63366	possibility to visit large files literally in response to
63367	question asked by Emacs.
63368	* etc/NEWS: Mention the new possibility to visit large files
63369	literally.
63370	* lisp/files.el (files--ask-user-about-large-file): Use
63371	"literally" instead of "raw", for consistency with
63372	find-file-literally.
63373
63374	* doc/lispref/frames.texi (Input Focus): Tell explicitly that
63375	focus-change events are sometimes supported on TTY frames.
63376
633772018-06-16  Eli Zaretskii  <eliz@gnu.org>
63378
63379	Prevent QUIT to top level inside 'while-no-input'
63380
63381	* lisp/subr.el (while-no-input): Handle the case when BODY
63382	never tests quit-flag, and runs to completion even though
63383	input arrives while BODY executes.  (Bug#31692)
63384
633852018-06-16  Eli Zaretskii  <eliz@gnu.org>
63386
63387	Fix a typo in xmenu.c
63388
63389	* src/xmenu.c (x_menu_show): Replace a call to
63390	record_unwind_protect_pointer with record_unwind_protect_ptr.
63391	(Bug#31856)
63392
633932018-06-16  Ari Roponen  <ari.roponen@gmail.com>
63394
63395	Fix --with-cairo build
63396
63397	* src/xterm.c (x_cr_destroy): Remove extra semicolon.
63398	(x_cr_export_frames): Fix a typo in calling
63399	record_unwind_protect_ptr.  (Bug#31856)
63400
634012018-06-15  Paul Eggert  <eggert@cs.ucla.edu>
63402
63403	* src/Makefile.in: Update paxctl comment.
63404
634052018-06-15  Paul Eggert  <eggert@cs.ucla.edu>
63406
63407	Minor CANNOT_DUMP cleanups
63408
63409	Mostly, this avoids munging executables when CANNOT_DUMP = yes,
63410	as the munging is needed only for unexec.
63411	* configure.ac (PAXCTL_dumped, PAXCTL_notdumped) [CANNOT_DUMP]:
63412	Leave these empty.
63413	(LD_SWITCH_SYSTEM_TEMACS) [CANNOT_DUMP]:
63414	Do not append -no-pie or -nopie.
63415	* src/alloc.c (my_heap_start) [CANNOT_DUMP]: Omit; not used.
63416
634172018-06-15  Paul Eggert  <eggert@cs.ucla.edu>
63418
63419	Remove old combreloc hack
63420
63421	It has not been needed for many years and gets in the way of
63422	portable dumping, address sanitization, etc.  See:
63423	https://lists.gnu.org/r/emacs-devel/2016-12/msg00147.html
63424	* configure.ac (LDFLAGS_NOCOMBRELOC, emacs_cv_znocombreloc):
63425	Remove.  All uses removed.
63426	* etc/PROBLEMS: Remove discussion of combreloc problems.
63427
634282018-06-15  Paul Eggert  <eggert@cs.ucla.edu>
63429
63430	Fix typo in previous macfont.m change
63431
63432	* src/macfont.m (macfont_descriptor_entity): Fix typo.
63433	Problem reported by Clemens Schüller.
63434
634352018-06-15  Paul Eggert  <eggert@cs.ucla.edu>
63436
63437	Restore macfont.m casts to void *
63438
63439	* src/macfont.m (macfont_set_family_cache): Restore casts
63440	to void * that were mistakenly removed in my recent change.
63441	The types in question are pointer-to-const.  Problem
63442	reported by Clemens Schüller.
63443
634442018-06-15  João Távora  <joaotavora@gmail.com>
63445
63446	Fix a bug in Flymake handling of region-specific reports
63447
63448	The backend's diagnostic list must be updated too, not just cleared.
63449
63450	* lisp/progmodes/flymake.el (flymake--diag): Add overlay field.
63451	(flymake--highlight-line): Return created overlay.
63452	(flymake--handle-report): Iterate the backend's diagnostics, not
63453	the overlays.  Set diagnostic overlay.
63454	(flymake--run-backend): Don't clean diagnostic list here.
63455	(flymake-mode): Call delete-overlay directly.
63456
634572018-06-15  Eli Zaretskii  <eliz@gnu.org>
63458
63459	Fix building --without-x and similar
63460
63461	* src/keyboard.c (make_lispy_focus_out): Compile it
63462	unconditionally, as it is now supported on TTYs as well.
63463	Reported by Filipp Gunbin <fgunbin@fastmail.fm>.
63464
634652018-06-15  João Távora  <joaotavora@gmail.com>
63466
63467	Flymake and backends exchange hints abouts changed regions
63468
63469	* lisp/progmodes/flymake.el (flymake--delete-own-overlays): Accept
63470	BEG and END.  Rename from flymake-delete-own-overlays.
63471	(flymake-diagnostic-functions): Describe :region, :recent-changes
63472	in docstring.
63473	(flymake--handle-report): Accept REGION.
63474	(flymake--run-backend): Accept optional ARGS to pass to backend
63475	fn.
63476	(flymake--recent-changes): New buffer-local variable.
63477	(flymake-start): Call flymake--run-backend with recent changes.
63478	(flymake-mode): Initialize flymake--recent-changes.  Call
63479	flymake--delete-own-overlays.
63480	(flymake-after-change-function): Collect recent changes.
63481
63482	* doc/misc/flymake.texi (Backend functions): Describe
63483	:recent-changes and :region.
63484
63485	* etc/NEWS (Flymake): Mention improvements in backend communication.
63486
634872018-06-15  Tino Calancha  <tino.calancha@gmail.com>
63488
63489	customize-apropos: Separate package name from its description
63490
63491	* lisp/cus-edit.el (custom-group-value-create):
63492	Always insert documentation indented from its package name (Bug#31466).
63493
634942018-06-14  Paul Eggert  <eggert@cs.ucla.edu>
63495
63496	Remove Lisp_Misc_Save_Value
63497
63498	This type and its associated routines are no longer used.
63499	* src/alloc.c (voidfuncptr): Move here from src/lisp.h.
63500	(free_misc, make_save_int_int_int)
63501	(make_save_obj_obj_obj_obj, make_save_ptr)
63502	(make_save_ptr_int, make_save_ptr_ptr)
63503	(make_save_funcptr_ptr_obj, make_save_memory)
63504	(free_save_value, mark_save_value):
63505	Remove.
63506	(mark_object): Remove mention of Lisp_Misc_Save_Value.
63507	* src/lisp.h (Lisp_Misc_Save_Value, SAVE_SLOT_BITS)
63508	(SAVE_VALUE_SLOTS, SAVE_TYPE_BITS, enum Lisp_Save_Type)
63509	(struct Lisp_Save_Value, SAVE_VALUEP, XSAVE_VALUE)
63510	(save_type, XSAVE_POINTER, set_save_pointer)
63511	(XSAVE_FUNCPOINTER, XSAVE_INTEGER, set_save_integer)
63512	(XSAVE_OBJECT): Remove.
63513	(union Lisp_Misc): Remove u_save_value.
63514	(voidfuncptr): Move from here to src/alloc.c.
63515	* src/print.c (print_object):
63516	Remove support for printing Lisp_Misc_Save_Value.
63517
635182018-06-14  Paul Eggert  <eggert@cs.ucla.edu>
63519
63520	New type Lisp_Misc_Ptr
63521
63522	This is a streamlined version of Lisp_Save_Value, which contains just
63523	a pointer, as that is all Lisp_Save_Values are used for any more.
63524	With the previous changes, these objects are not primarily used as
63525	save values, so just call them "Misc" rather than "Save".
63526	* src/alloc.c (make_misc_ptr): New function.
63527	(mark_object): Mark Lisp_Misc_Ptr too.
63528	* src/lisp.h (Lisp_Misc_Ptr): New constant.
63529	(struct Lisp_Misc_Ptr): New type.
63530	(make_mint_ptr, mint_ptrp, xmint_pointer):
63531	Use Lisp_Misc_Ptr, not Lisp_Save_Value.
63532	(union Lisp_Misc): Add Lisp_Misc_Ptr.
63533	* src/print.c (print_object): Print Lisp_Misc_Ptr.
63534
635352018-06-14  Paul Eggert  <eggert@cs.ucla.edu>
63536
63537	Avoid allocating Lisp_Save_Value for arrays
63538
63539	* src/alloc.c (mark_maybe_objects): New function.
63540	* src/eval.c (default_toplevel_binding)
63541	(backtrace_eval_unrewind, Fbacktrace__locals):
63542	Treat array unwindings like other miscellaneous pdl types.
63543	(record_unwind_protect_array): New function.
63544	(do_one_unbind): Free the array while unwinding.
63545	(mark_specpdl): Mark arrays directly.
63546	* src/lisp.h (SPECPDL_UNWIND_ARRAY): New constant.
63547	(union specbinding): New member unwind_array.
63548	(SAFE_ALLOCA_LISP_EXTRA): Use record_unwind_protect_array
63549	instead of make_save_memory + record_unwind_protect.
63550
635512018-06-14  Paul Eggert  <eggert@cs.ucla.edu>
63552
63553	Avoid allocating Lisp_Save_Value for excursions
63554
63555	* src/editfns.c (save_excursion_save): New arg PDL,
63556	specifying where to save the state.  All uses changed.
63557	(save_excursion_restore): Args are now the marker and info
63558	rather than a pointer to a Lisp_Save_Value containing them.
63559	All uses changed.
63560	* src/eval.c (default_toplevel_binding, Fbacktrace__locals):
63561	Treat excursions like other miscellaneous pdl types.
63562	(record_unwind_protect_excursion): Save data directly
63563	into the pdl rather than creating an object on the heap.
63564	This avoids the need to allocate and free an object.
63565	(do_one_unbind, backtrace_eval_unrewind):
63566	Unwind excursions directly.
63567	(mark_specpdl): Mark excursions directly.
63568	* src/lisp.h (SPECPDL_UNWIND_EXCURSION): New constant.
63569	(union specbinding): New member unwind_excursion.
63570
635712018-06-14  Paul Eggert  <eggert@cs.ucla.edu>
63572
63573	Just use cons in macfont_descriptor_entity
63574
63575	* src/macfont.m (macfont_descriptor_entity): Use cons instead
63576	of make_save_ptr_int, as this avoids the need for a special
63577	type and function for this one-off.
63578
635792018-06-14  Paul Eggert  <eggert@cs.ucla.edu>
63580
63581	Avoid allocating a Lisp_Save_Value in ftfont.c
63582
63583	* src/ftfont.c (struct ftfont_cache_data): New member face_refcount.
63584	(ftfont_lookup_cache): Clear it when initializing.
63585	Use make_mint_ptr, since this typically avoids the need to
63586	allocate a Lisp_Save_Value as refcount is now stored elsewhere.
63587	(ftfont_open2, ftfont_close): Manipulate the reference
63588	count in the struct, not in the save object.
63589
635902018-06-14  Paul Eggert  <eggert@cs.ucla.edu>
63591
63592	Use record_unwind_protect_ptr to avoid allocation
63593
63594	* src/term.c (struct tty_pop_down_menu): New type.
63595	(tty_pop_down_menu, tty_menu_show): Use it, along with
63596	record_unwind_protect_ptr, to avoid allocating a Lisp_Misc.
63597	* src/xmenu.c (struct pop_down_menu): New type.
63598	(pop_down_menu, x_menu_show): Use it, likewise.
63599	* src/xterm.c (x_cr_destroy, x_cr_export_frames):
63600	Use record_unwind_protect_pointer to avoid possibly allocating
63601	a Lisp_Misc.
63602
636032018-06-14  Paul Eggert  <eggert@cs.ucla.edu>
63604
63605	Avoid Lisp_Misc allocation if C stack suffices
63606
63607	* src/fileio.c (union read_non_regular): New type.
63608	(read_non_regular, Finsert_file_contents):
63609	Use it to avoid	allocating a Lisp_Misc.
63610	* src/keymap.c (union map_keymap): New type.
63611	(map_keymap_char_table_item, map_keymap_internal):
63612	Use it to avoid	allocating a Lisp_Misc.
63613
636142018-06-14  Paul Eggert  <eggert@cs.ucla.edu>
63615
63616	Simplify init_module_assertions
63617
63618	* src/emacs-module.c (init_module_assertions): Just use NULL
63619	instead of allocating a dummy on the stack and then using
63620	eassert.  Practical platforms check for null pointer
63621	dereferencing nowadays, so this is good enough.
63622
636232018-06-14  Paul Eggert  <eggert@cs.ucla.edu>
63624
63625	New mint_ptr representation for C pointers
63626
63627	* src/lisp.h (make_mint_ptr, mint_ptrp, xmint_pointer): New functions.
63628	* src/dbusbind.c (xd_lisp_dbus_to_dbus, Fdbus__init_bus):
63629	* src/emacs-module.c (module_free_global_ref, Fmodule_load)
63630	(module_assert_runtime, module_assert_env, value_to_lisp)
63631	(lisp_to_value, initialize_environment)
63632	(finalize_environment, finalize_runtime_unwind)
63633	(mark_modules):
63634	* src/font.c (otf_open, font_put_frame_data)
63635	(font_get_frame_data):
63636	* src/macfont.m (macfont_invalidate_family_cache)
63637	(macfont_get_family_cache_if_present)
63638	(macfont_set_family_cache):
63639	* src/nsterm.h (XNS_SCROLL_BAR):
63640	* src/nsterm.m (ns_set_vertical_scroll_bar)
63641	(ns_set_horizontal_scroll_bar):
63642	* src/w32fns.c (w32_monitor_enum)
63643	(w32_display_monitor_attributes_list):
63644	* src/xterm.c (x_cr_destroy, x_cr_export_frames):
63645	* src/xwidget.c (webkit_javascript_finished_cb)
63646	(save_script_callback, Fxwidget_webkit_execute_script)
63647	(kill_buffer_xwidgets):
63648	Use mint pointers instead of merely save pointers.
63649
636502018-06-14  João Távora  <joaotavora@gmail.com>
63651
63652	Also allow custom false and null when serializing to JSON
63653
63654	* doc/lispref/text.texi (Parsing JSON): Describe new arguments of
63655	json-serialize and json-insert.
63656
63657	* src/json.c (enum json_object_type, struct json_configuration):
63658	Move up in file before first usage.
63659	(lisp_to_json_toplevel, lisp_to_json_toplevel_1, lisp_to_json):
63660	Accept a struct json_configuration*.
63661	(Fjson_serialize, Fjson_insert): Accept multiple args.
63662	(json_parse_args): Accept new boolean configure_object_type.
63663
63664	* test/src/json-tests.el
63665	(json-serialize, json-insert): Update forward decls.
63666	(json-parse-with-custom-null-and-false-objects): Add assertions for
63667	json-serialize.
63668
636692018-06-14  João Távora  <joaotavora@gmail.com>
63670
63671	Support custom null and false objects when parsing JSON
63672
63673	* doc/lispref/text.texi (Parsing JSON): Describe new :null-object
63674	and :false-object kwargs to json-parse-string and
63675	json-parse-buffer.
63676
63677	* src/json.c
63678	(struct json_configuration): New type.
63679	(json_to_lisp): Accept a struct json_configuration* param.
63680	(json_parse_args): Rename from json_parse_object_type.
63681	(Fjson_parse_string): Rework docstring.
63682	(Fjson_parse_string, Fjson_parse_buffer): Update call to
63683	json_to_lisp.
63684	(syms_of_json): Two new syms, QCnull_object and QCfalse_object.
63685
63686	* test/src/json-tests.el
63687	(json-parse-with-custom-null-and-false-objects): New test.
63688
636892018-06-14  Damien Cassou  <damien@cassou.me>
63690
63691	Fix pretty-printing empty objects as null
63692
63693	* lisp/json.el (json-pretty-print): Force distinction between empty
63694	  objects and null.
63695	(json-encode-list): Remove responsibility to print "null" as this
63696	value is not a list.
63697	(json-encode): Give higher precedence to lists so that an empty list
63698	is printed as an empty object, not as "null".
63699
63700	* test/lisp/json-tests.el (test-json-encode): Add many tests to check
63701	  the behavior of pretty-printing.
63702
637032018-06-13  Paul Eggert  <eggert@cs.ucla.edu>
63704
63705	Remove some wrong 8-byte alignment assumptions
63706
63707	Do not assume that 8-byte alignment suffices for all C objects,
63708	as some platforms require 16-byte alignment for some objects,
63709	and this will start to bite us as time goes on (e.g., if an
63710	Emacs module ever uses an object containing a long
63711	double, which requires 16-byte alignment on x86-64).
63712	Conversely, on !USE_LSB_TAG platforms, do not insist on
63713	aligning Lisp objects to a multiple of 8, as this is not
63714	needed for high-order tag bits.
63715	* src/alloc.c (LISP_ALIGNMENT, MALLOC_IS_LISP_ALIGNED):
63716	New constants.
63717	(XMALLOC_BASE_ALIGNMENT, XMALLOC_HEADER_ALIGNMENT):
63718	Removed.  All uses replaced by LISP_ALIGNMENT.
63719	(aligned_alloc, laligned, lmalloc, lrealloc, union aligned_Lisp_Misc)
63720	(maybe_lisp_pointer, pure_alloc):
63721	Use LISP_ALIGNMENT rather than GCALIGNMENT.
63722	(aligned_alloc): Do not worry about an alignment of
63723	LISP_ALIGNMENT when MALLOC_IS_LISP_ALIGNED, as the code never
63724	uses aligned_alloc with alignment == LISP_ALIGNMENT in that case.
63725	(__alignof__): Remove.  All uses removed.
63726	(MALLOC_IS_GC_ALIGNED): Remove.
63727	All uses replaced with MALLOC_IS_LISP_ALIGNED.
63728	(vector_alignment): Remove.
63729	All uses replaced with LISP_ALIGNMENT.
63730	* src/alloc.c (mark_maybe_pointer):
63731	* src/emacs-module.c (value_to_lisp_bits):
63732	Do not assume GCALIGNMENT == 1 << GCTYPEBITS, as GCALIGNMENT
63733	is 1 on !USE_LSB_TAG platforms now.
63734	* src/lisp.h (GCALIGNMENT) [!USE_LSB_TAG]: Now 1.
63735	(struct Lisp_Symbol, union vectorlike_header, struct Lisp_Cons)
63736	(struct Lisp_String): Simplify test for verifying alignment.
63737
637382018-06-12  Daniel Colascione  <dancol@dancol.org>
63739
63740	Clarify that enabling a theme does not disable other themes
63741
63742	Avoid user confusion by explicitly stating that enabling a theme does
63743	not imply disabling other themes and that theme load functions are not
63744	theme switch functions.
63745
63746	* lisp/custom.el (load-theme, enable-theme): Clarify docstrings.
63747
637482018-06-12  Daniel Colascione  <dancol@dancol.org>
63749
63750	Ignore focus events for dead frames
63751
63752	Frames can die between the time we generate a focus event and the time
63753	we get around to processing it.  Do run after-focus-change-function,
63754	since that's idempotent and we want to make sure not to miss
63755	any changes.
63756
63757	* lisp/frame.el (handle-focus-in, handle-focus-out): Check for dead frames.
63758
637592018-06-12  Stefan Monnier  <monnier@iro.umontreal.ca>
63760
63761	* lisp/textmodes/ispell.el (ispell-menu-map): Init in declaration
63762
63763	(ispell-menu-map-needed): Remove, now that the menu doesn't include
63764	the list of dictionaries any more, so it's basically constant.
63765
637662018-06-12  Eli Zaretskii  <eliz@gnu.org>
63767
63768	Fix initialization of custom-delayed-init-variables
63769
63770	* lisp/startup.el (command-line): Re-evaluate delayed-init custom
63771	variables one more time after setting up the initial
63772	window-system.  (Bug#30994)
63773
63774	* doc/emacs/custom.texi (Early Init File):
63775	* etc/NEWS: Warn against using early-init.el as a substitute for
63776	.emacs.
63777
637782018-06-12  Noam Postavsky  <npostavs@gmail.com>
63779
63780	Give warning if losing value to defvaralias (Bug#5950)
63781
63782	* src/eval.c (Fdefvaralias): Call `display-warning' if the alias
63783	target has a non-eq value to the variable being aliased.
63784	* test/src/eval-tests.el (defvaralias-overwrite-warning): New test.
63785
637862018-06-12  Noam Postavsky  <npostavs@gmail.com>
63787
63788	Let display-warning work during bootstrap
63789
63790	* lisp/emacs-lisp/warnings.el (display-warning): Only call
63791	`special-mode' and `newline' if they are `fbound'.
63792
637932018-06-11  Michael R. Mauger  <michael@mauger.com>
63794
63795	* lisp/progmodes/sql.el: Add MariaDB support (Robert Cochran)
63796	  (sql-product-alist): Add MariaDB entry
63797	  (sql-mariadb-program, sql-mariadb-options, sql-mariadb-login-params,
63798	  sql-mode-mariadb-font-lock): New variables, aliases of the MySQL
63799	  equivalents
63800	  (sql-mariadb, sql-comint-mariadb): New interaction mode functions
63801	  for MariaDB
63802	  (sql-mode-mysql-font-lock-keywords): Updated font-lock for MySQL
63803	  and MariaDB
63804
638052018-06-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
63806	    Noam Postavsky  <npostavs@gmail.com>
63807
63808	soap-client: Add byte-code compatibility function (Bug#31742)
63809
63810	* lisp/net/soap-client.el: Bump version to 3.1.4.
63811	(soap-type-of): New function.
63812	(soap-resolve-references, soap-decode-type)
63813	(soap-encode-attributes, soap-encode-value): Replace aref
63814	calls with calls to soap-type-of.
63815
63816	* lisp/net/soap-inspect.el (soap-sample-value, soap-inspect):
63817	Replace aref calls with calls to soap-type-of.
63818
638192018-06-11  Daniel Colascione  <dancol@dancol.org>
63820
63821	Add after-delete-frame-functions
63822
63823	Instead of working around the behavior delete-frame-functions, just
63824	add an after-delete-frame-functions hook.
63825
63826	* doc/lispref/frames.texi (Deleting Frames): Document
63827	`after-delete-frame-functions'.
63828
63829	* etc/NEWS: Mention `after-delete-frame-functions'.
63830
63831	* lisp/frame.el (blink-cursor--should-blink):
63832	(blink-cursor--rescan-frames, blink-frame-mode): Get rid of the
63833	ugly ignored-frame parameter and switch from
63834	`delete-frame-functions' to `after-delete-frame-functions'.
63835
63836	* src/frame.c (syms_of_frame): New variable
63837	`after-delete-frame-functions'.
63838	(delete_frame): Use it.
63839
638402018-06-11  Daniel Colascione  <dancol@dancol.org>
63841
63842	Make blink-cursor-mode use new focus functions
63843
63844	* lisp/frame.el (blink-cursor--should-blink): New function.
63845	(blink-cursor-check): Call it.
63846	(blink-cursor--rescan-frames): New function.
63847	(blink-cursor-mode): Wire up `blink-cursor--rescan-frames`; stop
63848	using `focus-in-hook' and `focus-out-hook'.
63849
638502018-06-11  Daniel Colascione  <dancol@dancol.org>
63851
63852	Losing focus should not stop idleness
63853
63854	* src/keyboard.c (read_char): Make Qfocus_out not break idle.
63855
638562018-06-11  Daniel Colascione  <dancol@dancol.org>
63857
63858	New focus management interface
63859
63860	focus-in-hook and focus-out-hook don't accurately reflect actual
63861	user-visible focus states.  Add a new focus interface and mark the old
63862	one obsolete.
63863
63864	* doc/lispref/frames.texi (Input Focus): Document new focus
63865	functions.  Remove references to the now-obsolete focus hooks.
63866
63867	* lisp/frame.el (frame-focus-state): New function.
63868	(after-focus-change-function): New variable.
63869	(focus-in-hook, focus-out-hook): Move to lisp from C;
63870	mark obsolete.
63871
63872	* lisp/term/xterm.el (xterm-translate-focus-in)
63873	(xterm-translate-focus-out): Track tty focus in `tty-focus-state'
63874	terminal parameter; call `after-focus-change-function'.
63875	(xterm--suspend-tty-function): New function.
63876
63877	* src/frame.c (Fhandle_switch_frame): Update docstring; don't call
63878	focus hooks.
63879	(focus-in-hook, focus-out-hook): Remove: moved to lisp.
63880	(syms_of_frame): Remove unread_switch_frame; add
63881	Vunread_switch_frame.
63882
63883	* src/keyboard.c:
63884	(Finternal_handle_focus_in): New function.
63885	(make_lispy_event): Always report focus events to lisp; don't
63886	translate them to switch events sometimes.  Lisp can take care of
63887	creating synthetic switch-frame events via
63888	`internal-handle-focus-in'.
63889
63890	* src/w32term.c (x_focus_changed): Remove switch-avoidance logic:
63891	just directly report focus changes to lisp.
63892
63893	* src/xterm.c (x_focus_changed): Remove switch-avoidance logic:
63894	just directly report focus changes to lisp.
63895
638962018-06-11  Daniel Colascione  <dancol@dancol.org>
63897
63898	Remove code #if-0-ed terminal-local code
63899
63900	This code hasn't been used since 2005.
63901
63902	* src/data.c
63903	(get_terminal, Fterminal_local_value, Fset_terminal_local_value): Remove.
63904
639052018-06-11  Daniel Colascione  <dancol@dancol.org>
63906
63907	Remove obsolete keyboard.c code
63908
63909	* src/keyboard.c (any_kboard_state, single_kboard_state): Remove
63910	#if-0-ed functions.
63911
639122018-06-11  Lars Ingebrigtsen  <larsi@gnus.org>
63913
63914	Don't have shr bug out on degenerate <img> tags
63915
63916	* lisp/net/shr.el (shr-tag-img): Protect against contructs like
63917	<img src=" ">.
63918
639192018-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
63920
63921	* lisp/textmodes/ispell.el (ispell--call-enchant-lsmod): Use \' i.s.o $.
63922
639232018-06-10  Noam Postavsky  <npostavs@gmail.com>
63924
63925	Merge from emacs-26
63926
63927	8a1576cc03 Fix term.el cursor movement at bottom margin (Bug#31690)
63928
639292018-06-10  Noam Postavsky  <npostavs@gmail.com>
63930
63931	Merge from emacs-26
63932
63933	3434edc731 Enlarge DUMPED_HEAP_SIZE for 64-bit Windows builds
63934	36bbdfc017 Update Unicode data files to version 11.0.0 of Unicode
63935	b7b7a5f4f3 * etc/NEWS: Belatedly call out vc-hg changes in v26.1.  (B...
63936	5b6f8b54d1 Clarify the documentation of 'dired-recursive-deletes'
63937	9db97b49cd ; * etc/DEBUG: Add information about debugging libXft prob...
63938	0214ffbe60 Clarify doc string of 'update-glyphless-char-display'
63939	ef35d405b1 Clarify subtle issues with 'eq' in byte-compiled code
63940	c6ef3c8321 Make cl-print respect print-quoted (bug#31649)
63941	26b52ac40e Fix unexpected jumps of window-point in 'set-window-config...
63942	4af077ab4d * etc/emacs.appdata.xml: Update Emacs screenshot.
63943	e5ab25deae Fix cursor movement by 'next-logical-line' after 'next-line'
63944	d20beef5f1 Fix prompt in bookmark.el (Bug#24726)
63945	c57e7eaae8 Improve documentation of 'empty' whitespace-style
63946
63947	# Conflicts:
63948	#	etc/NEWS
63949
639502018-06-10  Noam Postavsky  <npostavs@gmail.com>
63951
63952	Merge from emacs-26
63953
63954	55c9bb9f3c Fix comint-get-old-input-default for output field case (Bu...
63955	26819cd1c0 ; ChangeLog.3: Fix typo.
63956	e35a08ea4b Prevent infloop in 'delete-trailing-whitespace'
63957
63958	* lisp/progmodes/cperl-mode.el:
63959	* lisp/progmodes/cc-engine.el:
63960	* lisp/progmodes/cc-mode.el: Fix tabs mixed with space preventing
63961	commit hook from succeeding.
63962
639632018-06-10  Paul Eggert  <eggert@cs.ucla.edu>
63964
63965	Pacify gcc -Wnull-dereference some more
63966
63967	* src/keyboard.c (read_char): Use xevent_start in a couple
63968	more places where it is safe.  This is needed with
63969	--enable-gcc-warnings --enable-checking on Fedora 28 x86-64.
63970
639712018-06-10  Paul Eggert  <eggert@cs.ucla.edu>
63972
63973	Use native alignment to access Lisp object data
63974
63975	Instead of using __builtin_assume_aligned (P, GCALIGNMENT) to
63976	tell GCC that P has alignment 8, use (T *) P where T is the
63977	type of the pointed-to object, to tell GCC that P has native
63978	alignment.  This is simpler, matches the intent better, and
63979	should help simplify future improvements.  Some of these
63980	changes are to pacify gcc -Wnull-dereference, since GCC is
63981	smarter about pointers now that Emacs no longer uses
63982	__builtin_assume_aligned; these minor changes should improve
63983	code efficiency slightly.  On Fedora 28 x86-64 with default
63984	optimization this patch shrinks the size of the Emacs text
63985	segment by 0.36%.
63986	* src/conf_post.h (__has_builtin, __builtin_assume_aligned):
63987	Remove; no longer used.
63988	* src/dbusbind.c (XD_OBJECT_TO_DBUS_TYPE):
63989	Pacify -Wnull-dereference by using XCAR instead of CAR_SAFE
63990	and XCDR instead of CDR_SAFE when this is safe.
63991	* src/fileio.c (Fexpand_file_name):
63992	* src/font.c (clear_font_cache):
63993	Pacify -Wnull-dereference by removing unnecessary NILP test.
63994	* src/keyboard.c (xevent_start): New function.
63995	(read_char, read_key_sequence): Pacify -Wnull-dereference by
63996	using xevent_start instead of EVENT_START.
63997	* src/lisp.h (lisp_h_XUNTAG): Remove; XUNTAG is always a macro
63998	now, since it can no longer be implemented as a function.
63999	(XUNTAG): New third argument CTYPE.  All uses changed.
64000	Cast result to CTYPE * instead of using __builtin_assume_aligned.
64001	Simplify by using LISP_WORD_TAG.
64002	(LISP_WORD_TAG): New macro.
64003	(TAG_PTR): Use it.
64004	* src/menu.c (x_popup_menu_1):
64005	Pacify -Wnull-dereference by using XCAR instead of Fcar and
64006	XCDR instead of Fcdr where this is safe.
64007
640082018-06-09  Paul Eggert  <eggert@cs.ucla.edu>
64009
64010	Simplify read_key_sequence
64011
64012	* src/keyboard.c (READ_KEY_ELTS): New constant.
64013	(keyremap_step, read_key_sequence): Omit BUFSIZE arg, since it's
64014	always READ_KEY_ELTS.  All callers changed.
64015	(grow_bool_vector): Remove; no longer needed.
64016	(read_key_sequence): Use a bool array instead of a Lisp bool
64017	vector, since it's small and this puts less pressure on the GC.
64018
640192018-06-09  Daniel Colascione  <dancol@dancol.org>
64020
64021	Unbreak echoing
64022
64023	* src/keyboard.c (read_key_sequence): Don't echo_truncate the first time.
64024
640252018-06-09  Paul Eggert  <eggert@cs.ucla.edu>
64026
64027	Fix pointer misuse in JSON parser
64028
64029	* src/json.c (lisp_to_json_toplevel_1): Fix pointer misuse not
64030	caught by C type checking (json_t ** converted to void * where
64031	the program expected json_t *).  Bug caught on Fedora 28 x86-64 via
64032	'./configure CFLAGS="-g3 -O2 -fsanitize=address" CANNOT_DUMP=yes'.
64033	Avoid similar problems in the future by rewriting to use
64034	json_t * instead of json_t **.
64035
640362018-06-09  Daniel Colascione  <dancol@dancol.org>
64037
64038	Correctly set last_nonmenu_event when replaying
64039
64040	read_key_sequence can, in various circumstances, play back recorded
64041	events.  Make sure that we set last_nonmenu_event as if we weren't
64042	replaying.  Without this change, we leave last_nonmenu_event set to
64043	whatever it was before we started replaying, leading to spurious
64044	random keymap menu prompts appearing after reading terminal control
64045	sequences, the translation of which sometimes causes event replays.
64046
64047	* src/keyboard.c:
64048	(grow_bool_vector): New function
64049	(read_key_sequence): Remember menu event history per-event.
64050
640512018-06-09  Daniel Colascione  <dancol@dancol.org>
64052
64053	Add debug facility for formatting in rr sessions
64054
64055	The existing debug print commands don't work in rr, since they touch
64056	stderr. The new xfmt command just calls Fformat and doesn't touch the
64057	stdio streams.
64058
64059	* src/.gdbinit:
64060	(xfmt): New GDB command.
64061
64062	* src/print.c:
64063	(debug_format): New function.
64064
640652018-06-09  Daniel Colascione  <dancol@dancol.org>
64066
64067	Fix typo in docstring
64068
64069	* lisp/term/xterm.el: (xterm-paste-ending-sequence): Fix typo
64070
640712018-06-09  Paul Eggert  <eggert@cs.ucla.edu>
64072
64073	Fix read buffer overrun on overflowed integers
64074
64075	* src/lread.c (read_integer): Fix off-by-1 buffer overrun
64076	introduced in 2018-04-17T23:23:16Z!eggert@cs.ucla.edu.  The
64077	bug could occur when Emacs read radixed integers containing
64078	more than 100 digits.  Bug caught by AddressSanitizer.
64079
640802018-06-09  Alan Mackenzie  <acm@muc.de>
64081
64082	Implement the C++11 "using" type definition.
64083
64084	Cease using the long obsolete c++-template-syntax-table.
64085
64086	* lisp/progmodes/cc-align.el (c-lineup-template-args): Cease using
64087	c++-template-syntax-table.
64088
64089	* lisp/progmodes/cc-engine.el (c-beginning-of-inheritance-list)
64090	(c-search-decl-header-end, c-beginning-of-decl-1, c-end-of-decl-1)
64091	(c-guess-continued-construct, c-guess-basic-syntax): Cease using
64092	c++-template-syntax-table.
64093	(c-guess-basic-syntax): Add CASE 5D.6 to handle C++11's "using" type
64094	definition.
64095
64096	* lisp/progmodes/cc-langs.el (c++-make-template-syntax-table)
64097	(c++-template-syntax-table): Remove.
64098	(c-equals-type-clause-kwds, c-equals-type-clause-key): New language
64099	constants/variables.
64100
641012018-06-09  Daniel Colascione  <dancol@dancol.org>
64102
64103	Improve robustness xterm event processing
64104
64105	We used to treat the start of a focus-in, focus-out, and the start of
64106	a paste sequence as normal events bound in global-map, but this
64107	approach produces problems when we recognize events in the middle of
64108	actions that don't immediately dispatch to the command loop.
64109
64110	Now we handle these events internally inside read-key, translating the
64111	focus events to nothing and paste-start into an xterm-paste event that
64112	neatly encapsulates the entire paste sequence.
64113
64114	* lisp/term/xterm.el:
64115	(xterm-paste): Accept an event argument; insert text from event.
64116	(xterm-translate-focus-in,xterm-translate-focus-out)
64117	(xterm-translate-bracketed-paste): New functions.
64118	(xterm-handle-focus-in,xterm-handle-focus-out): Remove.
64119	(xterm-rxvt-function-map): Bind new translation functions.
64120
641212018-06-09  Alan Mackenzie  <acm@muc.de>
64122
64123	CC Mode: In brace lists, anchor an elt on its predecessor, not on first elt
64124
64125	* lisp/progmodes/cc-engine.el (c-beginning-of-statement-1): At the end, accept
64126	"." as a unary operator (which it now is in brace lists in, e.g., C Mode).
64127	(c-guess-basic-syntax): Just before CASE 9C, move back to the previous brace
64128	list entry in the block, rather than to the first one.
64129
641302018-06-09  Philipp Stephani  <phst@google.com>
64131
64132	Make error checking for thread functions stricter.
64133
64134	* src/systhread.c (sys_thread_create): Change return type to bool.
64135	Check for errors returned by pthread_attr_setstacksize and
64136	pthread_attr_destroy.
64137	(sys_mutex_init): Abort on errors.  Enable mutex checks when checking
64138	is enabled.
64139	(sys_cond_init): Abort on errors.
64140	(sys_mutex_lock, sys_mutex_unlock, sys_cond_wait)
64141	(sys_cond_signal, sys_cond_broadcast, sys_cond_destroy): Check for
64142	errors in debug mode.
64143
641442018-06-09  Eli Zaretskii  <eliz@gnu.org>
64145
64146	Allow to reset Deleted flag when exporting messages in Rmail
64147
64148	* lisp/mail/rmailout.el (rmail-output-reset-deleted-flag): New
64149	defcustom.
64150	(rmail-output): When 'rmail-output-reset-deleted-flag' is non-nil,
64151	reset the Deleted flag of the appended messages, and if COUNT is
64152	greater than 1, do not ignore deleted messages.  Update the doc
64153	string accordingly.  (Bug#31271)
64154
64155	* doc/emacs/rmail.texi (Rmail Output): Document
64156	'rmail-output-reset-deleted-flag'.
64157
64158	* etc/NEWS: Mention the new user option.
64159
641602018-06-08  Paul Eggert  <eggert@cs.ucla.edu>
64161
64162	Remove AddressSanitizer bug workaround
64163
64164	This workaround no longer appears to be needed.
64165	* src/alloc.c (USE_ALIGNED_ALLOC): Don’t leave undefined
64166	merely because ADDRESS_SANITIZER is defined, as that bug
64167	in -fsanitize=address appears to have been fixed.  See:
64168	https://github.com/google/sanitizers/issues/337
64169	* src/conf_post.h (vfork): Improve comment.
64170
641712018-06-08  Basil L. Contovounesios  <contovob@tcd.ie>
64172
64173	Fix default candidate of find-face-definition
64174
64175	* lisp/emacs-lisp/find-func.el (find-function-read): Use
64176	face-at-point instead of variable-at-point for faces. (bug#31699)
64177
641782018-06-08  Daniel Colascione  <dancol@dancol.org>
64179
64180	Avoid unnecessary readahead early in TTY frame init
64181
64182	We query some properties of the terminal early in initialization, and
64183	just before we do, we perform ordinary redisplay.  This redisplay can
64184	result in unsightly flickering if we change some aspects of the
64185	display immediately afterward and redisplay again.  By avoiding
64186	redisplay in xquery--query as long as we get timely responses from the
64187	terminal, we can avoid this early unwanted redisplay.
64188
64189	* lisp/term/xterm.el:
64190	(xterm-query-redisplay-timeout): New variable.
64191	(xterm--read-event-for-query): New function.
64192	(xterm--report-background-handler,xterm--version-handler,xterm--query):
64193	Call it.
64194
641952018-06-08  Daniel Colascione  <dancol@dancol.org>
64196
64197	Support terminal focus notifications
64198
64199	* lisp/frame.el (handle-focus-in,handle-focus-out): Make event
64200	argument optional.
64201	(blink-cursor-check): Make sure that the current frame is a
64202	window-system frame before restarting the blink timer. TTY frames
64203	can get focus, but don't need a blink timer because the terminal
64204	will do the blinking.
64205
64206	* lisp/term/xterm.el
64207	(xterm-handle-focus-in,xterm-handle-focus-out): New functions.
64208	(xterm-rxvt-function-map): Recognize focus notification sequences.
64209	(xterm--init-focus-tracking): New function.
64210	(terminal-init-xterm): Call it.
64211
642122018-06-08  Daniel Colascione  <dancol@dancol.org>
64213
64214	Fix formatting in the face filter change
64215
64216	* src/xfaces.c:
64217	(evaluate_face_filter,filter_face_ref)
64218	(merge_face_ref,syms_of_xfaces): Fix comments, formatting.
64219
642202018-06-08  Daniel Colascione  <dancol@dancol.org>
64221
64222	Make setting inhibit-startup-screen in early init work
64223
64224	* lisp/startup.el (command-line): Bind `inhibit-startup-screen'
64225	around loading the site file instead of unconditionally
64226	resetting it.
64227
642282018-06-08  João Távora  <joaotavora@gmail.com>
64229
64230	Describe flymake-start-on-save-buffer in manual and NEWS
64231
64232	(Bug#31738)
64233
64234	* doc/misc/flymake.texi (Using Flymake, Customizable variables):
64235	Mention flymake-start-on-save-buffer.
64236
64237	* etc/NEWS: Mention flymake-start-on-save-buffer.
64238
642392018-06-08  João Távora  <joaotavora@gmail.com>
64240
64241	New flymake-start-on-save-buffer custom variable
64242
64243	(Bug#21419)
64244
64245	* lisp/progmodes/flymake.el (flymake-after-save-hook): Use
64246	flymake-start-on-save-buffer.
64247	(flymake-start-on-save-buffer): New custom variable.
64248	(flymake-start-on-flymake-mode): Tweak docstring.
64249
642502018-06-08  Alan Mackenzie  <acm@muc.de>
64251
64252	CC Mode: Fontify unbalanced quotes in unconstrained multiline strings, etc.
64253
64254	("Unconstrained" meaning that every string is multiline, without needing such
64255	special marking as used by Pike Mode.)
64256
64257	* lisp/progmodes/cc-mode.el (c-pps-to-string-delim): Don't process the char
64258	before BOB.
64259	(c-multiline-string-check-final-quote): New function.
64260	(c-bc-changed-stringiness): New variable.
64261	(c-before-change-check-unbalanced-strings): Add handling for unconstrained
64262	multiline strings.
64263	(c-after-change-re-mark-unbalanced-strings): Add handling for unconstrained
64264	multiline strings.  Handle escaped double quotes more accurately.
64265
642662018-06-08  Paul Eggert  <eggert@cs.ucla.edu>
64267
64268	Port alignment verification to x86 --with-wide-int
64269
64270	Problem reported by Eli Zaretskii in:
64271	https://lists.gnu.org/r/emacs-devel/2018-06/msg00238.html
64272	* src/lisp.h (struct Lisp_Symbol, union vectorlike_header)
64273	(struct Lisp_Cons, struct Lisp_String):
64274	Do not check alignment if !USE_LSB_TAG, as alignment is
64275	needed only if we are tagging the low-order bits.
64276
642772018-06-07  Daniel Colascione  <dancol@dancol.org>
64278
64279	Offer to open large files without modes
64280
64281	* lisp/files.el:
64282	(files--ask-user-about-large-file): New function.
64283	(abort-if-file-too-large): Call it.
64284	(find-file-noselect): Support new raw open.
64285
642862018-06-07  Daniel Colascione  <dancol@dancol.org>
64287
64288	Add support for per-window face remapping
64289
64290	Extend face specifications to support the notion of filtering to a
64291	specific context and add a filter that limits a face specification to
64292	windows having a certain parameter.
64293
64294	* src/xfaces.c:
64295	(evaluate_face_filter,filter_face_ref): New functions.
64296	(merge_face_ref): Ignore filtered face specifications.
64297	(Fx_list_fonts,get_lface_attributes,merge_face_vectors)
64298	(merge_named_face,merge_face_ref,merge_face_ref)
64299	(Finternal_merge_in_global_face,Fface_font,lookup_named_face)
64300	(lookup_basic_face,Fface_attributes_as_vector)
64301	(x_supports_face_attributes_p)
64302	(Fdisplay_supports_face_attributes_p,realize_named_face)
64303	(compute_char_face,face_at_buffer_position)
64304	(face_at_buffer_position,face_at_buffer_position)
64305	(face_at_buffer_position)
64306	(face_for_overlay_string,face_at_string_position,merge_faces):
64307	Pass window to face machinery.
64308	(syms_of_xfaces): Add :window and :filtered
64309
64310	* src/xdisp.c (init_iterator, handle_face_prop)
64311	(handle_single_display_spec, merge_escape_glyph_face)
64312	(merge_glyphless_glyph_face, get_next_display_element)
64313	(next_element_from_display_vector, append_space_for_newline)
64314	(extend_face_to_end_of_line,highlight_trailing_whitespace)
64315	(maybe_produce_line_number)
64316	(display_line, calc_line_height_property): Pass window to
64317	face machinery.
64318
64319	* src/term.c (tty_menu_activate): Adjust to new face core
64320	function signature.
64321
64322	* src/msdos.c (XMenuActivate): Adjust to new face core
64323	function signature.
64324
64325	* src/fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
64326	Pass window to face machinery.
64327
64328	* src/font.c (font_range, Finternal_char_font): Pass window to
64329	face machinery.
64330
64331	* src/dispnew.c (spec_glyph_lookup_face): Pass window to
64332	face machinery.
64333
64334	* src/dispextern.h:
64335	(lookup_named_face,lookup_basic_face)
64336	(lookup_derived_face,merge_faces):
64337	Add struct window arguments to prototypes.
64338
643392018-06-07  Paul Eggert  <eggert@cs.ucla.edu>
64340
64341	Fit kill_buffer_xwidgets into 80
64342
64343	* src/xwidget.c (kill_buffer_xwidgets): Reindent and use C99
64344	style to fit in 80 columns.
64345
643462018-06-07  Paul Eggert  <eggert@cs.ucla.edu>
64347
64348	Minor cleanup of save_excursion_restore
64349
64350	* src/editfns.c (save_excursion_restore): Use clearer names
64351	for locals.  Free earlier, removing the need for a label and goto.
64352
643532018-06-07  Paul Eggert  <eggert@cs.ucla.edu>
64354
64355	New function record_unwind_protect_excursion
64356
64357	This simplifies callers a bit, and will simplify future changes.
64358	* src/eval.c (record_unwind_protect_excursion): New function.
64359	* src/buffer.c (Fkill_buffer):
64360	* src/bytecode.c (exec_byte_code):
64361	* src/editfns.c (Fsave_excursion, Freplace_buffer_contents):
64362	* src/lread.c (readevalloop, Feval_buffer):
64363	* src/window.c (scroll_command):
64364	Use it.
64365
643662018-06-07  Paul Eggert  <eggert@cs.ucla.edu>
64367
64368	* src/.gdbinit: Omit soon-obsolete comment.
64369
643702018-06-07  Paul Eggert  <eggert@cs.ucla.edu>
64371
64372	Fix ftfont_open2 failure cleanup
64373
64374	* src/ftfont.c (ftfont_open2): Don’t increment counter if failing.
64375	Avoid use-after-free once the increment bug is fixed.
64376
643772018-06-07  Paul Eggert  <eggert@cs.ucla.edu>
64378
64379	Don’t over-align if WIDE_EMACS_INT
64380
64381	* src/lisp.h (GCALIGNED_UNION): New macro.
64382	(struct Lisp_Symbol, union vectorlike_header)
64383	(struct Lisp_Cons, struct Lisp_String):
64384	Use it to avoid possible over-alignment if !USE_LSB_TAG.
64385
643862018-06-07  Paul Eggert  <eggert@cs.ucla.edu>
64387
64388	Fix GC-related commentary
64389
64390	* src/lisp.h: USE_STACK_LISP_OBJECTS is no longer experimental.
64391	Also, remove confusion about scope vs lifetime.
64392	And say that stack-allocated strings should not be given
64393	text properties.
64394
643952018-06-07  Noam Postavsky  <npostavs@gmail.com>
64396
64397	Let isearch-yank-kill enable isearch-mode if needed (Bug#21419)
64398
64399	* lisp/isearch.el (isearch-yank-kill): Enable isearch-mode if needed.
64400
644012018-06-07  João Távora  <joaotavora@gmail.com>
64402
64403	Accept plists when serializing and parsing JSON
64404
64405	* doc/lispref/text.texi (Parsing JSON): Mention plist support.
64406
64407	* src/json.c (lisp_to_json_toplevel_1): Serialize plists to json.
64408	(Fjson_serialize): Mention plists in docstring.
64409	(enum json_object_type): Add json_object_plist.
64410	(json_to_lisp): Parse JSON into plists.
64411	(json_parse_object_type): Consider plists.
64412	(Fjson_parse_string): Mention plists in docstring.
64413	(syms_of_json): New Qplist sym_of_json.
64414	(lisp_to_json): Update comment.
64415
64416	* test/src/json-tests.el (json-serialize/object)
64417	(json-parse-string/object): New plist tests.
64418
644192018-06-07  Michael Albinus  <michael.albinus@gmx.de>
64420
64421	Remove Tramp "obex" and "synce" methods
64422
64423	* doc/misc/tramp.texi (GVFS based methods): Remove `obex' and `synce'.
64424
64425	* etc/NEWS: Mention obsolete Tramp "obex" and "synce" methods.
64426
64427	* lisp/net/tramp-gvfs.el (tramp-gvfs-methods):
64428	Remove "obex" and "synce".
64429	(top): Do not add defaults for "obex" and "synce".
64430	(tramp-bluez-service, tramp-bluez-interface-manager)
64431	(tramp-bluez-interface-adapter)
64432	(tramp-bluez-discover-devices-timeout, tramp-bluez-discovery)
64433	(tramp-bluez-devices, tramp-hal-service, tramp-hal-path-manager)
64434	(tramp-hal-interface-manager, tramp-hal-interface-device)
64435	(tramp-bluez-address, tramp-bluez-device)
64436	(tramp-bluez-list-devices, tramp-bluez-property-changed)
64437	(tramp-bluez-device-found, tramp-bluez-parse-device-names)
64438	(tramp-synce-list-devices, tramp-synce-parse-device-names): Remove.
64439	(tramp-gvfs-handler-mounted-unmounted)
64440	(tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec): Do not
64441	handle "obex" and "synce".
64442
644432018-06-05  João Távora  <joaotavora@gmail.com>
64444
64445	When navigating Flymake diagnostics, consider their severity
64446
64447	The FILTER arg of flymake-goto-next-error, a list of types, includes
64448	every diagnostic with a severity number `eq` to those types.
64449
64450	* lisp/progmodes/flymake.el (flymake--severity): New helper.
64451	(flymake-goto-next-error, flymake-goto-prev-error): Clarify
64452	meaning of FILTER.
64453	(flymake-goto-next-error): Interpret filter as a severity filter.
64454	(flymake--mode-line-format): Simplify.
64455
644562018-06-05  João Távora  <joaotavora@gmail.com>
64457
64458	Obsolete Flymake's flymake-diagnostic-types-alist
64459
64460	That varaiable was an association between symbols and properties,
64461	effecively duplicating symbol's property lists.  It is simpler to just
64462	put properties on symbols.  Backward compatibility to the old variable
64463	has been kept.
64464
64465	* doc/misc/flymake.texi (Flymake error types): Don't mention
64466	flymake-diagnostic-types-alist.
64467	(Flymake error types): Rework section.
64468	(Backend functions): Refill a paragraph.
64469	(Flymake utility functions): Don't mention
64470	flymake-diagnostic-types-alist.
64471	(Proc customization variables): Don't mention
64472	flymake-diagnostic-types-alist.
64473
64474	* etc/NEWS: Mention obsoletion of flymake-diagnostic-types-alist.
64475
64476	* lisp/progmodes/flymake-proc.el
64477	(flymake-proc--diagnostics-for-pattern): Don't use
64478	flymake-diagnostic-types-alist.
64479
64480	* lisp/progmodes/flymake.el: Rewrite commentary.
64481	(flymake-make-diagnostic, flymake-mode, flymake-goto-next-error)
64482	(flymake-goto-prev-error): Don't mention
64483	flymake-diagnostic-types-alist in docstring.
64484	(flymake-diagnostic-types-alist): Make obsolete.
64485	(:error, :warning, :note): Put flymake-category in these symbols.
64486	(flymake-error, flymake-warning, flymake-note): Put
64487	`flymake-bitmap', not `bitmap' in these symbols.
64488	(flymake--lookup-type-property, flymake--highlight-line): Rewrite.
64489	Honor flymake-diagnostic-types-alist for backward
64490	compatibility.
64491
64492	* lisp/progmodes/python.el (python-flymake-msg-alist): Don't
64493	mention flymake-diagnostic-types-alist.
64494
644952018-06-05  João Távora  <joaotavora@gmail.com>
64496
64497	Correctly filter Flymake diagnostic types shown in mode-line
64498
64499	Thus, if a package foo has its own types foo-error and
64500	foo-warning, and if the buffer has no errors, the mode-line
64501	will correctly show `[0 0]' (zero errors and warnings) instead
64502	of `[0 0 0 0]' (zero errors, zero foo-errors, zero warnings,
64503	zero  foo-warnings).
64504
64505	* lisp/progmodes/flymake.el
64506	(flymake--mode-line-format): Coalesce diagnostic types based on
64507	the severity, not the symbol.
64508
645092018-06-05  João Távora  <joaotavora@gmail.com>
64510
64511	Let Flymake backends attach arbitrary data to diagnostics
64512
64513	This is easier that setting properties on diagnostics' text.
64514
64515	* lisp/progmodes/flymake.el (flymake--diag): Add data slot.
64516	(flymake-make-diagnostic): Add DATA arg.
64517	(flymake-diagnostic-data): New accessor.
64518
645192018-06-05  João Távora  <joaotavora@gmail.com>
64520
64521	Update version information for Flymake package and manual
64522
64523	* doc/misc/flymake.texi: Update date and version.
64524	Make myself the first author.
64525
64526	* lisp/progmodes/flymake.el: Update Maintainer and Version fields.
64527
64528	* lisp/progmodes/flymake-proc.el
64529	(flymake-proc--diagnostics-for-pattern): Update Maintainer and Version fields.
64530
645312018-06-05  Damien Cassou  <damien@cassou.me>
64532
64533	* lisp/auth-source-pass.el: Update version to 4.0.1
64534
645352018-06-05  Damien Cassou  <damien@cassou.me>
64536
64537	Test checking that auth-source-pass backend is correctly installed
64538
64539	* test/lisp/auth-source-pass-tests.el
64540	(auth-source-pass-can-start-from-auth-source-search): Add test.
64541
645422018-06-05  Damien Cassou  <damien@cassou.me>
64543
64544	Make sure auth-source-pass is compatible with Emacs 25
64545
64546	* lisp/auth-source-pass.el: Use `advice-add' for Emacs 25 users as
64547	`auth-source-backend-parser-functions' does not exist there.
64548
645492018-06-05  Damien Cassou  <damien@cassou.me>
64550
64551	* lisp/auth-source-pass.el: Update version to 4.0.0
64552
645532018-06-05  Damien Cassou  <damien@cassou.me>
64554
64555	Fix prefix messages of auth-source-pass debug messages
64556
64557	* lisp/auth-source-pass.el (auth-source-pass--do-debug): Fix message
64558	prefix.
64559
645602018-06-05  Damien Cassou  <damien@cassou.me>
64561
64562	* lisp/auth-source-pass.el: Update version to 3.0.0
64563
645642018-06-05  Alex Branham  <branham@utexas.edu>
64565
64566	Silence byte compiler warning in auth-source-pass
64567
64568	* lisp/auth-source-pass.el (auth-source-pass-backend): Silence byte
64569	compiler warning by only passing a parameter to `auth-source-backend'
64570	in Emacs <= 25.
64571
645722018-06-05  Jelle Licht  <jlicht@fsfe.org>
64573
64574	Fix auth-source-pass.el to properly handle special inputs
64575
64576	* lisp/auth-source-pass.el (auth-source-pass-search): Warn when
64577	passing multiple hosts in SPEC. Early return and warn when passing a
64578	wildcard as host in SPEC. Early return when host is nil.
64579	* test/lisp/auth-source-pass-tests.el (auth-source-pass-any-host,
64580	auth-source-pass-undefined-host): Add corresponding tests.
64581
645822018-06-05  Damien Cassou  <damien@cassou.me>
64583
64584	auth-source-pass: Take care of matching hosts when port is provided
64585
64586	* lisp/auth-source-pass.el (auth-source-pass--find-match): Add PORT
64587	parameter and reorganize code by extracting `find-match-unambiguous'.
64588	(auth-source-pass--find-match-unambiguous): New function.
64589	(auth-source-pass--build-result): Fix the call to `find-match'.
64590	(auth-source-pass--hostname, auth-source-pass--hostname-with-user,
64591	auth-source-pass--user): Remove functions.
64592	* test/lisp/auth-source-pass-tests.el: Fix the calls to `find-match'.
64593	(auth-source-pass-find-host-without-port) Add corresponding test.
64594
645952018-06-05  Damien Cassou  <damien@cassou.me>
64596
64597	Add missing test cases to auth-source-pass-tests.el
64598
64599	* test/lisp/auth-source-pass-tests.el
64600	(auth-source-pass-build-result-passes-full-host-to-find-match): Add
64601	missing test cases.
64602
646032018-06-05  Damien Cassou  <damien@cassou.me>
64604
64605	Add a test to auth-source-pass-tests.el
64606
64607	* test/lisp/auth-source-pass-tests.el
64608	(auth-source-pass-build-result-passes-full-host-to-find-match): Add
64609	test making sure find-match is called with full host.
64610
646112018-06-05  Damien Cassou  <damien@cassou.me>
64612
64613	Fix indentation in auth-source-pass-tests.el
64614
64615	* test/lisp/auth-source-pass-tests.el
64616	(auth-source-pass-only-return-entries-that-can-be-open): Fix indentation.
64617
646182018-06-05  Edison Ibañez  <arkhan.xxx@gmail.com>
64619
64620	* test/lisp/auth-source-pass-tests.el: Add assertions for host:port
64621
646222018-06-05  Damien Cassou  <damien@cassou.me>
64623
64624	* lisp/auth-source-pass.el: Fix headers.
64625
646262018-06-05  Michael Albinus  <michael.albinus@gmx.de>
64627
64628	Fix selinux test in files-tests.el
64629
64630	* test/lisp/files-tests.el
64631	(files-tests-file-name-non-special-set-file-selinux-context):
64632	Adapt test.
64633
646342018-06-04  Glenn Morris  <rgm@gnu.org>
64635
64636	Merge from origin/emacs-26
64637
64638	03697e6 Fix remote-host directory tracking for shells in `term' buffers
64639	16e8541 Update doc string of 'rx'
64640
646412018-06-04  Glenn Morris  <rgm@gnu.org>
64642
64643	Merge from origin/emacs-26
64644
64645	defd53a Set accessibility subroles for child frame (bug#31324)
64646	de6a876 Fix redefinition of child frames on NS
64647
646482018-06-04  Michael Albinus  <michael.albinus@gmx.de>
64649
64650	Fix Bug#31489
64651
64652	* lisp/files.el (file-name-unquote-non-special): Remove.
64653	(file-name-quoted-p, file-name-quote, file-name-unquote):
64654	Add optional argument TOP.
64655	(file-name-non-special): Adapt callees.  Finish implementation of
64656	functions which need a local copy.  (Bug#31489)
64657
646582018-06-03  João Távora  <joaotavora@gmail.com>
64659
64660	Add proper Flymake support to cc-mode.el
64661
64662	Except for the important detail that it doesn't make temporary files,
64663	the new flymake-cc backend doesn't yet behave much differently from
64664	the old flymake-proc-legacy-flymake, i.e. it still needs a special
64665	`check-syntax' Makefile target to provide the compiler and compilation
64666	flags.  However, the new infrastructure created should allow less
64667	intrusive cleverer flag guessers (yet to be written) to replace that
64668	mechanism.
64669
64670	* lisp/progmodes/cc-mode.el (c-mode, c++-mode): Add to
64671	flymake-diagnostic-functions.
64672
64673	* lisp/progmodes/flymake-cc.el: New file.
64674
646752018-06-03  Alan Third  <alan@idiocy.org>
64676
64677	Add NS style text scale keybindings
64678
64679	* lisp/term/ns-win.el: Add super-based keybindings for adjusting text
64680	zoom.
64681
646822018-06-03  Michael Albinus  <michael.albinus@gmx.de>
64683
64684	Extend file-name-non-special
64685
64686	* lisp/files.el (insert-file-contents-literally):
64687	Bind `inhibit-file-name-handlers' the default way.
64688	(file-name-non-special): Rework, mainly for operations with two
64689	file name arguments.
64690	(file-name-unquote-non-special): New defsubst.
64691	(file-name-unquote): Use it.
64692
64693	* test/lisp/files-tests.el (files-test-bug-18141): Skip if needed.
64694	(files-tests--with-temp-non-special): Add docstring.  Delete also
64695	`non-special-name' if the file/directory exists.
64696	(files-tests--special-file-name-extension)
64697	(files-tests--special-file-name-regexp): New defconst.
64698	(files-tests--special-file-name-handler, files-tests--new-name):
64699	New defuns.
64700	(files-tests--with-temp-non-special-and-file-name-handler): New macro.
64701	(files-tests-file-name-non-special-access-file)
64702	(files-tests-file-name-non-special-add-name-to-file)
64703	(files-tests-file-name-non-special-byte-compiler-base-file-name)
64704	(files-tests-file-name-non-special-copy-directory)
64705	(files-tests-file-name-non-special-copy-file)
64706	(files-tests-file-name-non-special-delete-directory)
64707	(files-tests-file-name-non-special-delete-file)
64708	(files-tests-file-name-non-special-diff-latest-backup-file)
64709	(files-tests-file-name-non-special-directory-file-name)
64710	(files-tests-file-name-non-special-directory-files)
64711	(files-tests-file-name-non-special-directory-files-and-attributes)
64712	(files-tests-file-name-non-special-dired-compress-handler)
64713	(files-tests-file-name-non-special-dired-uncache)
64714	(files-tests-file-name-non-special-expand-file-name)
64715	(files-tests-file-name-non-special-file-accessible-directory-p)
64716	(files-tests-file-name-non-special-file-acl)
64717	(files-tests-file-name-non-special-file-attributes)
64718	(files-tests-file-name-non-special-file-directory-p)
64719	(files-tests-file-name-non-special-file-equal-p)
64720	(files-tests-file-name-non-special-file-executable-p)
64721	(files-tests-file-name-non-special-file-exists-p)
64722	(files-tests-file-name-non-special-file-in-directory-p)
64723	(files-tests-file-name-non-special-file-local-copy)
64724	(files-tests-file-name-non-special-file-modes)
64725	(files-tests-file-name-non-special-file-name-all-completions)
64726	(files-tests-file-name-non-special-file-name-as-directory)
64727	(files-tests-file-name-non-special-file-name-case-insensitive-p)
64728	(files-tests-file-name-non-special-file-name-completion)
64729	(files-tests-file-name-non-special-file-name-directory)
64730	(files-tests-file-name-non-special-file-name-nondirectory)
64731	(files-tests-file-name-non-special-file-name-sans-versions)
64732	(files-tests-file-name-non-special-file-newer-than-file-p)
64733	(files-tests-file-name-non-special-notify-handlers)
64734	(files-tests-file-name-non-special-file-ownership-preserved-p)
64735	(files-tests-file-name-non-special-file-readable-p)
64736	(files-tests-file-name-non-special-file-regular-p)
64737	(files-tests-file-name-non-special-file-remote-p)
64738	(files-tests-file-name-non-special-file-selinux-context)
64739	(files-tests-file-name-non-special-file-symlink-p)
64740	(files-tests-file-name-non-special-file-truename)
64741	(files-tests-file-name-non-special-file-writable-p)
64742	(files-tests-file-name-non-special-find-backup-file-name)
64743	(files-tests-file-name-non-special-get-file-buffer)
64744	(files-tests-file-name-non-special-insert-directory)
64745	(files-tests-file-name-non-special-insert-file-contents)
64746	(files-tests-file-name-non-special-load)
64747	(files-tests-file-name-non-special-make-auto-save-file-name)
64748	(files-tests-file-name-non-special-make-directory)
64749	(files-tests-file-name-non-special-make-directory-internal)
64750	(files-tests-file-name-non-special-make-symbolic-link)
64751	(files-tests-file-name-non-special-rename-file)
64752	(files-tests-file-name-non-special-set-file-acl)
64753	(files-tests-file-name-non-special-set-file-modes)
64754	(files-tests-file-name-non-special-set-file-selinux-context)
64755	(files-tests-file-name-non-special-set-file-times)
64756	(files-tests-file-name-non-special-set-visited-file-modtime)
64757	(files-tests-file-name-non-special-shell-command)
64758	(files-tests-file-name-non-special-start-file-process)
64759	(files-tests-file-name-non-special-substitute-in-file-name)
64760	(files-tests-file-name-non-special-temporary-file-directory)
64761	(files-tests-file-name-non-special-unhandled-file-name-directory)
64762	(files-tests-file-name-non-special-vc-registered)
64763	(files-tests-file-name-non-special-write-region): Extends tests to
64764	quoted file names, which would require a file name handler if unquoted.
64765	(files-test-no-file-write-contents): Make test more robust.
64766
64767	* test/lisp/net/tramp-tests.el (tramp-test21-file-links): Adapt test.
64768	(tramp--test-emacs25-p): New defun.
64769	(tramp-test34-vc-registered): Use it.
64770
647712018-06-02  Michael R. Mauger  <michael@mauger.com>
64772
64773	Improve buffer naming in sql.el (Bug#31446)
64774
647752018-06-02  Glenn Morris  <rgm@gnu.org>
64776
64777	Merge from origin/emacs-26
64778
64779	4cfe531 (origin/emacs-26) Improve ELisp documentation of 'clone-indir...
64780	9089b02 Improve documentation of 'inhibit-message'
64781	6107e12 Improve documentation of comment styles
64782	fb45125 Documentation improvements in newcomment.el
64783	641c94c Imp[rove documentation of 'with-silent-modifications'
64784
647852018-06-02  Glenn Morris  <rgm@gnu.org>
64786
64787	Merge from origin/emacs-26
64788
64789	76f692e Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/emac...
64790
647912018-06-02  Glenn Morris  <rgm@gnu.org>
64792
64793	Merge from origin/emacs-26
64794
64795	90bea37 ; * etc/PROBLEMS: Fix fvwm version number in last commit
64796	af82d1f * etc/PROBLEMS: Document stickyness problem with FVWM (Bug#31...
64797	4a3aed2 Update Emacs Lisp Intro to match current behavior
64798	21f2247 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/emac...
64799	3257085 Fix previous commit
64800	6d23525 Fix typos in several manuals (Bug#31610)
64801	9188291 Add detailed documentation about lock files
64802	e5471b2 Add commentary for subtle aspect of frame.el
64803
64804	Conflicts:
64805		doc/lispintro/emacs-lisp-intro.texi
64806
648072018-06-02  Glenn Morris  <rgm@gnu.org>
64808
64809	Merge from origin/emacs-26
64810
64811	ca3f0a8 ; * etc/NEWS: Belated announcement of 2 changes made in Emacs...
64812	99f92da Improve documentation of 'directory-files-and-attributes'
64813	df8649a * lisp/gnus/message.el (message-remove-header): Don't remove ...
64814	b682a7e ; * etc/NEWS: Add headings for Emacs 26.2
64815	aa175a4 Adapt hexl-mode to native line-number display
64816	b8e7749 Fix example in Tramp manual
64817	f212fe5 Handle case where Xft is found but not XRender
64818	186280f * doc/misc/tramp.texi (Frequently Asked Questions): Adapt zsh...
64819	24ba633 Improve read-multiple-choice docstring (Bug#31628)
64820
64821	Conflicts:
64822		etc/NEWS
64823		src/dired.c
64824
648252018-06-02  Eli Zaretskii  <eliz@gnu.org>
64826
64827	Un-obsolete 'string-to-unibyte'
64828
64829	* lisp/subr.el (string-to-unibyte): No longer obsolete.  See the
64830	emacs-devel discussion around this message:
64831	http://lists.gnu.org/archive/html/emacs-devel/2018-05/msg00656.html.
64832
64833	* etc/NEWS: Announce the change.
64834
648352018-06-01  John Shahid  <jvshahid@gmail.com>
64836
64837	Fix column double counting in term.el (Bug#31662)
64838
64839	* lisp/term.el (term-emulate-terminal): Invalidate
64840	`term-current-column' after deleting overwritten text.
64841
648422018-06-01  João Távora  <joaotavora@gmail.com>
64843
64844	Minimally support Flymake in Emacs C sources
64845
64846	The check-syntax target is enabled the use of Flymake's "legacy"
64847	backend, flymake-proc-legacy-flymake in src/*.c.  It works quite well
64848	with C sources.  The green light for this change had already been
64849	given some time ago in
64850
64851	https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00385.html
64852
64853	* src/Makefile.in (check-syntax): New target.
64854	(.PHONY): Add check-syntax.
64855
648562018-06-01  Ville Skyttä  <ville.skytta@iki.fi>  (tiny change)
64857
64858	Fix a typo in emacs-mime.texi (Bug#31610)
64859
648602018-05-31  Robert Pluim  <rpluim@gmail.com>
64861
64862	Obsolete image-jpeg-p
64863
64864	* lisp/image.el (image-jpeg-p): Declare obsolete.
64865
648662018-05-31  Lars Ingebrigtsen  <larsi@gnus.org>
64867
64868	Fdirectory_files_and_attributes doc string clarification
64869
64870	* src/dired.c (Fdirectory_files_and_attributes): Clarify what data
64871	is returned.
64872
648732018-05-31  Alan Mackenzie  <acm@muc.de>
64874
64875	Amend c-before-change-check-unbalanced-strings to handle a quote at EOB.
64876
64877	* lisp/progmodes/cc-mode.el (c-before-change-check-unbalanced-strings): Before
64878	going back a sexp from the \n marked with a string-fence syntax-table text
64879	property, check that it is indeed a \n.  If not, simply delete that text
64880	property from the isolated quote, not the quote and the \n which otherwise
64881	delimit an unterminated string.  Should we encounter a double quote marked
64882	with a string-fence syntax-table text property at the end of the last line,
64883	remove that property.
64884
648852018-05-30  Paul Eggert  <eggert@cs.ucla.edu>
64886
64887	Work around GCC bug 81401
64888
64889	* src/xterm.c (x_draw_glyphless_glyph_string_foreground):
64890	Make the buffer a byte longer than it needs to be, if
64891	--enable-gcc-warnings.
64892
648932018-05-30  Roland Winkler  <winkler@gnu.org>
64894
64895	bibtex-search-entry: Reuse the window displaying the buffer.
64896
64897	* lisp/textmodes/bibtex-style.el (bibtex-reposition-window): New optional arg
64898	pos.
64899	(bibtex-search-crossref, bibtex-search-entry): Use it.
64900	(bibtex-search-entry): If possible, reuse the window displaying
64901	the buffer that contains the entry found.
64902
649032018-05-30  Roland Winkler  <winkler@gnu.org>
64904
64905	bibtex-mark-entry: Display no message.
64906
64907	* lisp/textmodes/bibtex.el (bibtex-mark-entry): Display no message.
64908
649092018-05-30  Roland Winkler  <winkler@gnu.org>
64910
64911	bibtex-format-entry: Preserve opt-alt if possible.
64912
64913	* lisp/textmodes/bibtex.el (bibtex-format-entry):
64914	Preserve opt-alt unless its removal is selected.
64915	(bibtex-parse-entry):  New optional arg keep-opt-alt.
64916
649172018-05-29  Simen Heggestøyl  <simenheg@gmail.com>
64918
64919	Add Imenu support to CSS mode and its derivatives
64920
64921	* lisp/textmodes/css-mode.el (css--join-nested-selectors)
64922	(css--prev-index-position, css--extract-index-name): New helper
64923	functions for supporting Imenu.
64924	(css-mode): Set `imenu-space-replacement',
64925	`imenu-prev-index-position-function', and
64926	`imenu-extract-index-name-function'.
64927	(css-current-defun-name): Reuse `css--prev-index-position' and
64928	`css--extract-index-name' to support nested selectors.
64929
64930	* test/lisp/textmodes/css-mode-tests.el (css-test-current-defun-name):
64931	Fix character index.
64932	(css-test-join-nested-selectors): New tests for
64933	`css--join-nested-selectors'.
64934
64935	* etc/NEWS: Add news entry.
64936
649372018-05-29  Eli Zaretskii  <eliz@gnu.org>
64938
64939	Allow access to MS-Windows Registry from Lisp programs
64940
64941	* src/w32.c (g_b_init_reg_open_key_ex_w)
64942	(g_b_init_reg_query_value_ex_w)
64943	(g_b_init_expand_environment_strings_w): New init flags.
64944	(globals_of_w32): Initialize them at startup.
64945	(RegOpenKeyExW_Proc, RegQueryValueExW_Proc)
64946	(ExpandEnvironmentStringsW_Proc): New function typedefs.
64947	(reg_open_key_ex_w, reg_query_value_ex_w)
64948	(expand_environment_strings_w): New wrapper function.
64949	(w32_read_registry): New function.
64950	* src/w32fns.c (Fw32_read_registry) [WINDOWSNT]: New primitive.
64951	(syms_of_w32fns) [WINDOWSNT]: Defsubr it.  DEFSYM "HKLM", "HKCU",
64952	etc. root keys.
64953
64954	* etc/NEWS: Mention the new primitive.
64955
649562018-05-29  Michael Albinus  <michael.albinus@gmx.de>
64957
64958	* doc/misc/tramp.texi (All): Use @code instead of @option for user options.
64959
649602018-05-29  Michael Albinus  <michael.albinus@gmx.de>
64961
64962	Merge from origin/emacs-26
64963
64964	13963a3a5c * doc/misc/tramp.texi (All): Use @code instead of @option ...
64965	6e5f19ada4 Fix Bug#31605
64966
649672018-05-29  Michael Albinus  <michael.albinus@gmx.de>
64968
64969	Merge from origin/emacs-26
64970
64971	9a7a2e919a ; ChangeLog.3: Remove stray phrase.
64972
649732018-05-29  Michael Albinus  <michael.albinus@gmx.de>
64974
64975	Merge from origin/emacs-26
64976
64977	9d6a3ac73a Mention pcase as a fifth conditional form
64978	567cb9046d Overhaul pcase documentation
64979	4d7e54acff Use EXPVAL in docstrings of patterns defined using pcase-d...
64980	7e8227ed68 Introduce EXPVAL for pcase, pcase-defmacro docstrings
64981	e6de5b3d51 Ensure pcase doc shows `QPAT first among extensions
64982
649832018-05-27  Gemini Lasswell  <gazally@runbox.com>
64984
64985	Make cl-print respect print-level and print-length (bug#31559)
64986
64987	* lisp/emacs-lisp/cl-print.el (cl-print--depth): New variable.
64988	(cl-print-object) <cons>: Print ellipsis if printing depth greater
64989	than 'print-level' or length of list greater than 'print-length'.
64990	(cl-print-object) <vector>: Truncate printing with ellipsis if
64991	vector is longer than 'print-length'.
64992	(cl-print-object) <cl-structure-object>: Truncate printing with
64993	ellipsis if structure has more slots than 'print-length'.
64994	(cl-print-object) <:around>: Bind 'cl-print--depth'.
64995	* test/lisp/emacs-lisp/cl-print-tests.el
64996	(cl-print-tests-3, cl-print-tests-4): New tests.
64997
649982018-05-27  Basil L. Contovounesios  <contovob@tcd.ie>
64999
65000	Place epg-pinentry-mode varalias before defcustom
65001
65002	This is needed to avoid losing user settings made under the obsolete
65003	name (Bug#31603).
65004	* lisp/epa.el (epa-pinentry-mode): Move obsolete varalias from here...
65005	* lisp/epg-config.el (epg-pinentry-mode): ...to here.
65006
650072018-05-26  Paul Eggert  <eggert@cs.ucla.edu>
65008
65009	Port .gdbinit to unsigned-pointer platforms
65010
65011	* src/.gdbinit (Lisp_Object_Printer.to_string):
65012	Don’t assume that GDB treats C pointers as signed integers.
65013	Problem found with GDB Fedora 8.1-15.fc28.
65014
650152018-05-26  Paul Eggert  <eggert@cs.ucla.edu>
65016
65017	GNOME moved URLs for its active bug reports
65018
65019	* src/emacs.c (main) [USE_GTK]:
65020	* src/gtkutil.c (xg_display_close):
65021	* src/xterm.c (x_connection_closed):
65022	Update GNOME bug report URLs.
65023
650242018-05-26  Paul Eggert  <eggert@cs.ucla.edu>
65025
65026	Don’t set EMACS=t if Bash is 4.4 or newer
65027
65028	(Thanks to Stefan Monnier for improvements to this patch.)
65029	* lisp/term.el (term--bash-needs-EMACS-status): New var.
65030	(term--bash-needs-EMACSp): New function.
65031	(term-exec-1): Use it instead of always setting EMACS.
65032
650332018-05-26  Tino Calancha  <tino.calancha@gmail.com>
65034
65035	replace-tests.el: Refactor undo tests
65036
65037	* test/lisp/replace-tests.el (replace-tests-bind-read-string): New variable.
65038	(replace-tests-with-undo): Add helper macro to generate the boilerplate code.
65039	(replace-tests--query-replace-undo, query-replace-undo-bug31073)
65040	(query-replace-undo-bug31492, query-replace-undo-bug31538): Use it.
65041
650422018-05-26  Michael Albinus  <michael.albinus@gmx.de>
65043
65044	Make `tramp-make-tramp-file-name' calls consistent.
65045
65046	* lisp/net/tramp.el (tramp-get-buffer)
65047	(tramp-handle-file-name-as-directory)
65048	(tramp-handle-file-name-directory, tramp-handle-file-remote-p)
65049	(tramp-handle-file-truename, tramp-handle-find-backup-file-name)
65050	(tramp-handle-insert-file-contents):
65051	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
65052	(tramp-gvfs-get-remote-uid, tramp-gvfs-get-remote-gid)
65053	(tramp-gvfs-maybe-open-connection):
65054	* lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
65055	(tramp-sh-handle-expand-file-name, )
65056	(tramp-sh-handle-process-file, tramp-get-remote-path):
65057	* lisp/net/tramp-smb.el (tramp-smb-handle-expand-file-name)
65058	(tramp-smb-handle-process-file): Make `tramp-make-tramp-file-name'
65059	calls consistent.
65060
650612018-05-26  Eli Zaretskii  <eliz@gnu.org>
65062
65063	* etc/HELLO: Add a few more scripts.
65064
650652018-05-25  Tino Calancha  <tino.calancha@gmail.com>
65066
65067	replace-tests.el: Fix broken tests
65068
65069	After previous commit, all tests using helper function
65070	`replace-tests-clauses' fail: during the expansion
65071	of macro `replace-tests-with-undo', the function
65072	`replace-tests-clauses' is unbound.
65073
65074	Delete those helpers and reimplement test
65075	`query-replace-undo-bug31538'.
65076	* test/lisp/replace-tests.el (query-replace-undo-bug31538):
65077	Reimplement this test without using any helper function/macro.
65078
650792018-05-25  Tino Calancha  <tino.calancha@gmail.com>
65080
65081	query-replace undo: Handle when user edits the replacement string
65082
65083	* lisp/replace.el (perform-replace): Update the replacement string
65084	after the user edit it (Fix Bug#31538).
65085
65086	* test/lisp/replace-tests.el (replace-tests-clauses): New function.
65087	(replace-tests-bind-read-string): New variable.
65088	(replace-tests-with-undo): Macro to create boilerplate code.
65089	(query-replace-undo-bug31073): Use it.
65090	(query-replace-undo-bug31538): New test.
65091
650922018-05-25  Glenn Morris  <rgm@gnu.org>
65093
65094	Merge from origin/emacs-26
65095
65096	07f8f9b (origin/emacs-26) ; * lisp/ldefs-boot.el: Update.
65097	5cec2b0 * etc/HISTORY: Update for Emacs 26.1 release.
65098	7c474e1 * etc/AUTHORS: Update.
65099	ddc7bea ; * ChangeLog.3: Update.
65100	3557460 ; * admin/authors.el: Update.
65101	2f44d2d Note caveat for backward regexp searching in docstring (Bug#3...
65102	3145d08 Update backtrace in Emacs Lisp Intro
65103	43a9c26 Move window-point in bibtex-search-entry
65104	4bb2741 More fixes of Intro to Emacs Lisp
65105	c57c226 ; * doc/emacs/misc.texi (FFAP): Fix a typo.  (Bug#31580)
65106	0a51113 Add a footnote to Emacs Lisp Intro
65107	5eabe4a ; * doc/emacs/msdos.texi (ls in Lisp): Fix a typo.  (Bug#31575)
65108	d5e0ceb * lisp/help.el (with-help-window): Doc fix.  (Bug#31574)
65109	e7952bd Fix some cross-references in emacs-lisp-intro.texi
65110	a897959 Minor copyedits in Emacs manual in macos.texi
65111
65112	Conflicts:
65113		lisp/ldefs-boot.el
65114
651152018-05-24  Michael Albinus  <michael.albinus@gmx.de>
65116
65117	Fix file name completion in Tramp
65118
65119	* lisp/net/tramp.el (tramp-handle-file-name-directory): Fix case
65120	of localname starts w/o a slash.
65121
65122	* test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
65123	Extend test.
65124
651252018-05-24  Michael Albinus  <michael.albinus@gmx.de>
65126
65127	Fix Bug#31558
65128
65129	* lisp/net/tramp.el (tramp-mode, tramp-verbose)
65130	(tramp-backup-directory-alist, tramp-auto-save-directory)
65131	(tramp-encoding-shell, tramp-encoding-command-switch)
65132	(tramp-encoding-command-interactive, tramp-default-method)
65133	(tramp-default-method-alist, tramp-default-user)
65134	(tramp-default-user-alist, tramp-default-host)
65135	(tramp-default-host-alist, tramp-default-proxies-alist)
65136	(tramp-save-ad-hoc-proxies, tramp-restricted-shell-hosts-alist)
65137	(tramp-local-host-regexp, tramp-local-end-of-line)
65138	(tramp-rsh-end-of-line, tramp-login-prompt-regexp)
65139	(tramp-shell-prompt-pattern, tramp-password-prompt-regexp)
65140	(tramp-wrong-passwd-regexp, tramp-yesno-prompt-regexp)
65141	(tramp-yn-prompt-regexp, tramp-terminal-prompt-regexp)
65142	(tramp-operation-not-permitted-regexp, tramp-copy-failed-regexp)
65143	(tramp-process-alive-regexp, tramp-ignored-file-name-regexp)
65144	(tramp-chunksize, tramp-process-connection-type)
65145	(tramp-connection-timeout, tramp-connection-min-time-diff)
65146	(tramp-completion-reread-directory-timeout)
65147	* lisp/net/tramp-adb.el (tramp-adb-program)
65148	(tramp-adb-connect-if-not-connected, tramp-adb-prompt):
65149	* lisp/net/tramp-cache.el (tramp-connection-properties)
65150	(tramp-persistency-file-name):
65151	* lisp/net/tramp-gvfs.el (tramp-gvfs-methods)
65152	(tramp-gvfs-zeroconf-domain)
65153	(tramp-bluez-discover-devices-timeout):
65154	* lisp/net/tramp-sh.el (tramp-inline-compress-start-size)
65155	(tramp-copy-size-limit, tramp-terminal-type)
65156	(tramp-histfile-override, tramp-use-ssh-controlmaster-options)
65157	(tramp-remote-path, tramp-remote-process-environment)
65158	(tramp-sh-extra-args):
65159	* lisp/net/tramp-smb.el (tramp-smb-program, tramp-smb-acl-program)
65160	(tramp-smb-conf, tramp-smb-winexe-program)
65161	(tramp-smb-winexe-shell-command)
65162	(tramp-smb-winexe-shell-command-switch):
65163	Dont't require 'tramp.  (Bug#31558)
65164
65165	* lisp/net/tramp.el (tramp-ignored-file-name-regexp): Use type regexp.
65166
651672018-05-23  Noam Postavsky  <npostavs@gmail.com>
65168
65169	Honor print-charset-text-property value of nil (Bug#31376)
65170
65171	* src/print.c (print_check_string_charset_prop): Move check
65172	for nil Vprint_charset_text_property from here...
65173	(print_prune_string_charset): ... to here.
65174	(syms_of_print) <print-charset-text-property>: Clarify that any
65175	non-boolean values are treated the same as `default'.
65176	* doc/lispref/streams.texi (Output Variables): Add
65177	print-prune-string-charset.
65178	* test/src/print-tests.el (print-charset-text-property-nil)
65179	(print-charset-text-property-default)
65180	(print-charset-text-property-t): New tests.
65181	(print-tests--prints-with-charset-p): New helper function.
65182
651832018-05-23  Michael Welsh Duggan  <mwd@md5i.com>
65184
65185	Avoid messing up buffer list when starting gud (Bug#22374)
65186
65187	* lisp/progmodes/gud.el (gud-common-init): Use `display-buffer'
65188	instead of `switch-to-buffer'.
65189
651902018-05-23  Noam Postavsky  <npostavs@gmail.com>
65191
65192	Move epa-pinentry-mode to epg-config (Bug#26298)
65193
65194	* lisp/epa.el (epa-pinentry-mode): Make into obsolete alias for...
65195	* lisp/epg-config.el (epg-pinentry-mode): ...this new user option.
65196	* lisp/epg.el (epg-context): Use it as the default value for
65197	pinentry-mode.
65198	* etc/NEWS: Announce name change.
65199
65200	* lisp/epa-file.el (epa-file-insert-file-contents)
65201	(epa-file-write-region):
65202	* lisp/epa.el (epa-decrypt-file, epa-sign-file)
65203	(epa-encrypt-file, epa-decrypt-region)
65204	(epa-sign-region, epa-encrypt-region): Don't change
65205	epg-context-pinentry-mode from the default.
65206
652072018-05-23  Noam Postavsky  <npostavs@gmail.com>
65208
65209	Drop some epg/epa backwards compat code for ancient Emacs versions
65210
65211	* lisp/epa.el (epa--select-safe-coding-system): Remove,
65212	`select-safe-coding-system' has been present since Emacs 20.3.
65213	(epa--encode-coding-string, epa--decode-coding-string):
65214	* lisp/epg.el (epg--decode-coding-string, epg--encode-coding-string)
65215	(epg--clear-string): Remove, the corresponding Emacs functions are so
65216	old they don't show up in NEWS.  Furthermore, the fallback for
65217	the *-coding-string functions was `identity' which wouldn't have
65218	worked anyway, since it only takes a single argument.
65219	(epg--make-temp-file): Remove, `make-temp-file' has been present since
65220	Emacs 21.1.
65221	* lisp/epg-config.el (epg-gpg-program, epg-gpgsm-program)
65222	(epg-gpgconf-program, epg-gpg-home-directory)
65223	(epg-passphrase-coding-system, epg-debug): Remove unneeded :group
65224	parameter.
65225
652262018-05-23  Tino Calancha  <tino.calancha@gmail.com>
65227
65228	Fix corner case in query-replace-regexp undo
65229
65230	This commit fixes Bug#31492.
65231	* lisp/replace.el (replace-match-maybe-edit): Preserve match data.
65232
65233	* test/lisp/replace-tests.el (query-replace-undo-bug31492): Add test.
65234
652352018-05-23  Glenn Morris  <rgm@gnu.org>
65236
65237	Merge from origin/emacs-26
65238
65239	e3f00f5 (origin/emacs-26) Clarify when to use advice-add vs add-function
65240	c0f3e6b Minor formatting tweak in the Emacs manual
65241	fadf653 Update comments in Intro to Emacs Lisp
65242	52ccb24 ; * doc/os.texi (Batch Mode): use = after --eval
65243	d65430f * etc/NEWS: Mention change in `edebug-prin1-to-string'.
65244	ef4aec1 ; * doc/lispref/hash.texi (Defining Hash): Fix typos.
65245	2981952 Another attempt to fix sql.el
65246	b1b96d7 Update binding of 'M-.' in Intro to Emacs Lisp
65247	b239a09 Fix a typo in last change in sql.el
65248	0d8bae5 Fix capitalization of mail headers
65249	845fe03 Fix buffer names in sql.el
65250	a3885f5 Minor fixes in the Emacs manual
65251	542f830 Fix a typo in rmail.texi
65252	eb0bc6f * etc/PROBLEMS: Document Bug#31305.
65253
65254	Conflicts:
65255		doc/emacs/sending.texi
65256		etc/NEWS
65257
652582018-05-23  Glenn Morris  <rgm@gnu.org>
65259
65260	Merge from origin/emacs-26
65261
65262	73bc6f8 Fix a typo in describing input methods
65263	6b4bafe ; Add a comment to emacs-lisp-intro.texi
65264
652652018-05-22  João Távora  <joaotavora@gmail.com>
65266
65267	More helpful docstrings for tests of electric-tests.el
65268
65269	* test/lisp/electric-tests.el (electric-pair-define-test-form):
65270	Improve automatically generated docstring.
65271
652722018-05-22  Paul Eggert  <eggert@cs.ucla.edu>
65273
65274	Work around GCC bug with function attributes
65275
65276	* src/alloc.c (PNTR_ADD): Put attributes after ‘static’ and before
65277	returned type.  Problem reported by Eli Zaretskii in:
65278	https://lists.gnu.org/r/emacs-devel/2018-05/msg00559.html
65279
652802018-05-22  Paul Eggert  <eggert@cs.ucla.edu>
65281
65282	Fix failed assertion when load-force-doc-strings
65283
65284	Problem reported by Philipp Stephani (Bug#31556).
65285	* src/lread.c (read_vector): When load_force_doc_strings, check
65286	for byte code vectors that are invalid because they are too short.
65287	* test/src/lread-tests.el (lread-invalid-bytecodes): New test.
65288
652892018-05-22  Paul Eggert  <eggert@cs.ucla.edu>
65290
65291	Minor tweaks to recent fix for Bug#31545
65292
65293	* src/xwidget.c (webkit_javascript_finished_cb)
65294	(Fxwidget_webkit_execute_script): Use intptr_t to avoid warnings
65295	in the (unlikely) event that ptrdiff_t and void * differ in width.
65296	(save_script_callback): Simplify by using xlispdstrdup and
65297	larger_vector.
65298
652992018-05-22  Michael Albinus  <michael.albinus@gmx.de>
65300
65301	Extend secrets.el by searching for object paths.
65302
65303	* lisp/net/secrets.el (secrets-search-item-paths): New function.
65304	(secrets-search-items): Use it.
65305	(secrets-create-item): Adapt docstring.
65306
65307	* test/lisp/net/secrets-tests.el (secrets-test04-search): Extend test.
65308
653092018-05-21  Andreas Schwab  <schwab@linux-m68k.org>
65310
65311	* src/xwidget.c (Fxwidget_webkit_goto_uri): Encode uri.
65312
653132018-05-21  Andreas Schwab  <schwab@linux-m68k.org>
65314
65315	Make xwidget-webkit-execute-script safe against GC (Bug#31545)
65316
65317	* src/xwidget.h (struct xwidget): Add script_callbacks.
65318	* src/xwidget.c (save_script_callback): New function.
65319	(Fxwidget_webkit_execute_script): Use it.  Encode script
65320	before passing to execution engine.  Always use a callback.
65321	(webkit_javascript_finished_cb): Deallocate script.
65322	(kill_buffer_xwidgets): Deallocate remaining scripts.
65323	(Fxwidget_webkit_zoom): Doc fix.
65324	(Fxwidget_resize): Doc fix.
65325
653262018-05-21  Paul Eggert  <eggert@cs.ucla.edu>
65327
65328	Don’t assume ordering in make-process/mix-stderr
65329
65330	* test/src/process-tests.el (process-tests--mixable): New function.
65331	(make-process/mix-stderr): Don’t assume stdout is merged before
65332	stderr.  POSIX does not require this, and the assumption failed to
65333	hold on my Fedora 28 platform.  See Bug#31214.
65334
653352018-05-21  Paul Eggert  <eggert@cs.ucla.edu>
65336
65337	Update from Gnulib
65338
65339	This incorporates:
65340	2018-05-21 crypto: omit stream ops Emacs doesn’t need
65341	2018-05-13 truncate: Fix compilation error on Android
65342	2018-05-13 imaxdiv: Fix compilation error on Android
65343	2018-05-13 Support selective inclusion of recent mingw.org headers
65344	2018-05-13 Add cross-compilation guesses for Linux systems sans glibc
65345	2018-05-13 stdioext: Fix compilation errors with newer Android headers
65346	2018-05-07 af_alg: Pacify --enable-gcc-warnings
65347	2018-05-06 af_alg: Fix bug with streams that are not at position 0
65348	2018-05-06 Followup to 'af_alg: New module'
65349	2018-05-05 crypto/{md5,sha1,sha256,sha512}: simplify
65350	2018-05-05 af_alg: New module
65351	2018-05-05 af_alg: Improve function signature
65352	2018-04-28 md5sum: Use AF_ALG when available
65353	2018-04-28 sha512sum: Use AF_ALG when available
65354	2018-04-28 sha256sum: Use AF_ALG when available
65355	2018-04-28 sha1sum: Use AF_ALG when available
65356	2018-05-05 all: Replace more http URLs by https URLs
65357	2018-05-03 maint: port more modules to GCC 8
65358	2018-05-03 Simplify code; drop support for Borland C++ on Windows
65359	* admin/merge-gnulib (GNULIB_MODULES): Use crypto/md5-buffer
65360	rather than crypto/md5, since Emacs doesn’t use the stream
65361	operations that in recent Gnulib pull in other stuff Emacs doesn’t
65362	need.  Similarly for crypto/sha1-buffer, crypto/sha256-buffer,
65363	crypto/sha512-buffer.
65364	* build-aux/config.guess, build-aux/config.sub, lib/dosname.h:
65365	* lib/dup2.c, lib/errno.in.h, lib/euidaccess.c, lib/fcntl.c:
65366	* lib/fcntl.in.h, lib/fpending.c, lib/fsync.c, lib/getdtablesize.c:
65367	* lib/getopt.c, lib/gettimeofday.c, lib/inttypes.in.h, lib/md5.c:
65368	* lib/md5.h, lib/open.c, lib/pipe2.c, lib/putenv.c, lib/sha1.c:
65369	* lib/sha1.h, lib/sha256.c, lib/sha256.h, lib/sha512.c:
65370	* lib/sha512.h, lib/stat-time.h, lib/stdio-impl.h, lib/stdio.in.h:
65371	* lib/stdlib.in.h, lib/sys_stat.in.h, lib/sys_types.in.h:
65372	* lib/timespec.h, lib/unistd.in.h, lib/utimens.c, m4/c-strtod.m4:
65373	* m4/gnulib-common.m4, m4/inttypes.m4, m4/lstat.m4, m4/nocrash.m4:
65374	* m4/pselect.m4, m4/readlink.m4, m4/stdio_h.m4, m4/symlink.m4:
65375	* m4/unistd_h.m4, m4/utimens.m4:
65376	Copy from Gnulib.
65377	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
65378
653792018-05-21  João Távora  <joaotavora@gmail.com>
65380
65381	Fix Flymake's ruby-mode tests when user has "rubocop" installed
65382
65383	The Flymake test suite fails if the "rubocop" program is installed,
65384	because the ruby-flymake-rubocop backend is selected automatically by
65385	ruby-flymake-auto.  The test was designed for ruby-flymake-simple,
65386	tough, and fails.
65387
65388	* test/lisp/progmodes/flymake-tests.el (ruby-backend): Ensure
65389	this test runs exclusively with the ruby-flymake-simple backend.
65390
653912018-05-21  Michael Albinus  <michael.albinus@gmx.de>
65392
65393	Fix Bug#31489
65394
65395	* doc/misc/tramp.texi (Frequently Asked Questions):
65396	Mention `tramp-ignored-file-name-regexp'.  Improve index.
65397
65398
65399	* lisp/net/tramp.el (tramp-ignored-file-name-regexp): New defcustom.
65400	(tramp-tramp-file-p): Use it.  Check also for `tramp-mode'.
65401	(tramp-file-name-handler): Don't check for `tramp-mode'.  (Bug#31489)
65402
65403	* test/lisp/net/tramp-tests.el (tramp-test01-file-name-syntax):
65404	Extend test.
65405
654062018-05-20  Eli Zaretskii  <eliz@gnu.org>
65407
65408	Revert part of the previous change
65409
65410	* doc/misc/message.texi:
65411	* doc/misc/efaq.texi:
65412	* doc/emacs/sending.texi:
65413	* doc/emacs/rmail.texi: Revert the CC => Cc etc. conversions.
65414
654152018-05-20  Paul Eggert  <eggert@cs.ucla.edu>
65416
65417	Use “Cc” for email copies, as per RFC 5322.
65418
65419	Also fix similar problems with Bcc, Fcc, In-Reply-To,
65420	and similar email headers.  See thread starting at:
65421	https://lists.gnu.org/r/emacs-devel/2018-05/msg00463.html
65422
654232018-05-20  Noam Postavsky  <npostavs@gmail.com>
65424
65425	* make-dist: Add '--no-info' option.
65426
654272018-05-20  Alan Mackenzie  <acm@muc.de>
65428
65429	Enhance CC Mode's fontification, etc., of unterminated strings.
65430
65431	String delimiters, including escaped new lines, of correctly terminated
65432	strings are left in font-lock-string-face.  All others get
65433	font-lock-warning-face.  The latter get syntax-table text properties on the
65434	opening string delim and the "terminating EOL".
65435
65436	Correct two miscellaneous bugs: the handling of text properties on Java Mode's
65437	generic delimiters; the handling of c-just-done-before-change.
65438
65439	* lisp/progmodes/cc-defs.el (c-point): New position 'eoll "end of logical line".
65440	(c-characterp): New macro.
65441
65442	* lisp/progmodes/cc-fonts.el (c-font-lock-invalid-string): Removed.
65443	(c-basic-matchers-before): Use a simple matcher in place of the form around
65444	c-font-lock-invalid-string.
65445
65446	* lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): Add
65447	c-before-change-check-unbalanced-strings to the value for all modes except AWK
65448	Mode.  Also add c-before-change-check-<>-operators to Java Mode, correcting an
65449	error in that mode's handling of generic delimiters.
65450	(c-before-font-lock-functions): Add c-after-change-re-mark-unbalanced-strings
65451	to the value for all modes except AWK Mode.
65452	(c-single-quotes-quote-strings, c-string-delims): New lang variables for
65453	future enhancements.
65454	(c-string-innards-re-alist): New lang variable.
65455
65456	* lisp/progmodes/cc-mode.el (c-just-done-before-change): Do not set this
65457	variable when a change is the alteration of text properties.
65458	(c-basic-common-init): Set parse-sexp-lookup-properties (and the XEmacs
65459	equivalent) also for Pike Mode.
65460	(c-neutralize-CPP-line): No longer neutralize unbalanced quotes here.
65461	(c-unescaped-nls-in-string-p, c-multiline-string-start-is-being-detached)
65462	(c-pps-to-string-delim, c-before-change-check-unbalanced-strings)
65463	(c-after-change-re-mark-unbalanced-strings): New functions.
65464	(c-after-change): Fix a bug with the handling of c-just-done-before-change.
65465
654662018-05-20  Eli Zaretskii  <eliz@gnu.org>
65467
65468	* etc/HELLO: More reasonable placement of 'charset' properties.
65469
654702018-05-19  Paul Eggert  <eggert@cs.ucla.edu>
65471
65472	* admin/notes/unicode: HELLO is again UTF-8.
65473
654742018-05-19  Eli Zaretskii  <eliz@gnu.org>
65475
65476	Use Enriched mode in etc/HELLO to keep charset information
65477
65478	This allows to encode HELLO in UTF-8, thus supporting the entire
65479	repertory of Unicode, while still keeping the charset info where
65480	that is important.  Suggested by Michael Welsh Duggan <mwd@md5i.com>.
65481	* lisp/textmodes/enriched.el (enriched-translations): Add
65482	translations for 'charset'.
65483	(enriched-decode-charset, enriched-handle-charset-prop): New
65484	functions.
65485	* lisp/facemenu.el (facemenu-special-menu): Add sub-menu for
65486	'charset' property.
65487	(facemenu-set-charset): New function.
65488	(facemenu-remove-special): Remove the 'charset' property as well.
65489
65490	* etc/NEWS: Announce the new feature of Enriched mode.
65491	* etc/HELLO: Recode in UTF-8 and place under Enriched mode.
65492
65493	* doc/emacs/text.texi (Enriched Properties): Mention the support
65494	for 'charset'.
65495
654962018-05-18  Paul Eggert  <eggert@cs.ucla.edu>
65497
65498	* src/alloc.c: Fix comment.
65499
655002018-05-18  Paul Eggert  <eggert@cs.ucla.edu>
65501
65502	Port to GCC 8 -fsanitize=undefined
65503
65504	In GCC 8, gcc -fsanitize=undefined flags the undefined behavior
65505	that Emacs relies on in its XPNTR and XSYMBOL low-level functions.
65506	Disable undefined sanitization in these functions.  Although this
65507	disabling doesn’t suffice if DEFINE_KEY_OPS_AS_MACROS is true, it
65508	works for -fsanitize=undefined -DINLINING=0, which is good enough.
65509	* src/alloc.c (macro_PNTR_ADD): New macro.
65510	(PNTR_ADD): New function and macro.
65511	The function disables -fsanitize=undefined.
65512	(macro_XPNTR): Use it.
65513	* src/conf_post.h (ATTRIBUTE_NO_SANITIZE_UNDEFINED): New macro.
65514	* src/lisp.h (XSYMBOL): Disable -fsanitize=undefined.
65515
655162018-05-18  Lars Ingebrigtsen  <larsi@gnus.org>
65517
65518	(gnus-blocked-images): Clarify privacy implications
65519
65520	* lisp/gnus/gnus-art.el (gnus-blocked-images): Clarify the privacy
65521	implication of altering the value of this variable.
65522
655232018-05-18  Eli Zaretskii  <eliz@gnu.org>
65524
65525	Fix decoding of directories when "~" includes non-ASCII chars
65526
65527	* src/fileio.c (Fexpand_file_name): Don't build multibyte strings
65528	from unibyte non-ASCII strings when NAME and DEFAULT_DIRECTORY
65529	have different multibyteness, as this adds bytes to the byte
65530	sequence, and in some situations, e.g., when the home directory
65531	includes non-ASCII characters, can fail file APIs.  (Bug#30755)
65532
65533	* lisp/startup.el (normal-top-level): Make sure default-directory
65534	is set to a multibyte string when decoded on MS-Windows.
65535
655362018-05-17  Filipp Gunbin  <fgunbin@fastmail.fm>
65537
65538	Fix bugs in `auth-source-netrc-parse-one'.
65539
65540	* lisp/auth-source.el (auth-source-netrc-parse-one): Ensure that match
65541	  data is not overwritten in `auth-source-netrc-parse-next-interesting'.
65542	  Ensure that blanks are skipped before and after going over comments
65543	  and eols.
65544	* test/lisp/auth-source-tests.el (auth-source-test-netrc-parse-one): New test.
65545
655462018-05-16  Michael Albinus  <michael.albinus@gmx.de>
65547
65548	Fix creation of Secret Service items in auth-source
65549
65550	* lisp/auth-source.el (auth-source-secrets-create): Use ´apply'.
65551	(auth-source-secrets-saver): Handle `auth-source-save-behavior'
65552	equal t.
65553
65554	* lisp/net/secrets.el (secrets-get-items): Do not call
65555	`secrets-open-session' here ...
65556	(top): ... but here.
65557
65558	* test/lisp/auth-source-tests.el
65559	(auth-source-test-secrets-create-secret): Bind
65560	`auth-source-save-behavior' to t.  Cleanup.
65561
65562	* test/lisp/net/secrets-tests.el (secrets-test00-availability):
65563	After loading secets.el, a session is already opened.
65564	(secrets-test02-collections, secrets-test03-items)
65565	(secrets-test04-search): Open a new session.
65566
655672018-05-15  Dima Kogan  <dima@secretsauce.net>
65568
65569	Give '$' punctuation syntax in make-mode (Bug#24477)
65570
65571	* lisp/progmodes/make-mode.el (makefile-mode-syntax-table): Set syntax
65572	of '$' to punctuation.
65573
655742018-05-15  Noam Postavsky  <npostavs@gmail.com>
65575
65576	Simplify eshell arg processing with (pop (nthcdr ...))
65577
65578	* lisp/eshell/esh-opt.el (eshell--set-option)
65579	(eshell--process-args): Use (pop (nthcdr ...)) instead of writing it
65580	out by hand.
65581
655822018-05-15  Jay Kamat  <jaygkamat@gmail.com>
65583
65584	esh-opt.el: Add a :parse-leading-options-only argument (Bug#28323)
65585
65586	* lisp/eshell/esh-opt.el (eshell-eval-using-options): Add a new
65587	:parse-leading-options-only argument which ignores dash/switch
65588	arguments after the first positional argument.
65589	(eshell--process-args): Abort processing of arguments if we see one
65590	positional argument and :parse-leading-options-only is set.
65591	* lisp/eshell/em-tramp.el (eshell/sudo): Use
65592	:parse-leading-options-only, to avoid parsing subcommand switches as
65593	switches of sudo itself.
65594	* test/lisp/eshell/esh-opt-tests.el: Add tests for new and old behavior.
65595
655962018-05-15  Jay Kamat  <jaygkamat@gmail.com>
65597
65598	esh-opt.el: Fix improper parsing of first argument (Bug#28323)
65599
65600	Examples of broken behavior:
65601
65602	    sudo -u root whoami
65603	    Outputs: -u
65604	    ls -I '*.txt' /dev/null
65605	    Errors with: *.txt: No such file or directory
65606
65607	* lisp/eshell/esh-opt.el (eshell--process-args): Refactor usage of
65608	args to eshell--args, as we rely on modifications from
65609	eshell--process-option and vice versa.  These modifications were not
65610	being propogated in the (if (= ai 0)) case, since popping the first
65611	element of a list doesn't destructively modify the underlying list
65612	object.
65613
656142018-05-15  Glenn Morris  <rgm@gnu.org>
65615
65616	Merge from origin/emacs-26
65617
65618	c2ef847 (origin/emacs-26) Clarify the mode-line indicators in CC Mode
65619
656202018-05-15  Glenn Morris  <rgm@gnu.org>
65621
65622	Merge from origin/emacs-26
65623
65624	b98cf9c ; Fix a typo in the Emacs manual
65625	700fcd7 * doc/emacs/help.texi: Fix paren typo.
65626	c9c0e40 More minor changes in shell-related nodes of Emacs manual
65627	e6bf19c Fix inaccuracies in "Shell Ring" node of Emacs manual
65628	087681b8 Improve documentation of kmacro commands and variables.
65629	be2e8cb * doc/man/emacs.1.in: Document --fg-daemon and --bg-daemon.
65630	1d9e66a Don't check non-X frames for z order (Bug#31373)
65631	7dc028e Check NSWindow is actually a frame
65632
65633	Conflicts:
65634		src/nsfns.m
65635
656362018-05-15  Michael Albinus  <michael.albinus@gmx.de>
65637
65638	Fix Bug#29575
65639
65640	* lisp/net/secrets.el (secrets-create-item): The new item does not
65641	need a unique label.
65642	(secrets-item-path, secrets-get-secret, secrets-get-attributes)
65643	(secrets-get-attribute, secrets-delete-item): ITEM can also be an
65644	object path.  (Bug#29575)
65645
65646	* test/lisp/net/secrets-tests.el (secrets-test03-items):
65647	Test also creation of two items with same label.  Test
65648	`secrets-get-secret', `secrets-get-attribute' and
65649	`secrets-get-attributes' with object path.
65650	(secrets-test04-search): Harden test.
65651
656522018-05-15  Michael Albinus  <michael.albinus@gmx.de>
65653
65654	Fix Bug#31068
65655
65656	* lisp/net/tramp-archive.el (tramp-archive-file-name-handler):
65657	Unregister unless `tramp-archive-enabled'.  (Bug#31068)
65658
656592018-05-14  Tino Calancha  <tino.calancha@gmail.com>
65660
65661	Run python test if the python executable is found
65662
65663	* test/lisp/progmodes/python-tests.el (python-tests--bug31398):
65664	Skip test when executable python is no found.
65665
656662018-05-14  Tino Calancha  <tino.calancha@gmail.com>
65667
65668	run-python: Make the buffer running python current
65669
65670	* lisp/progmodes/python.el (run-python, python-shell-make-comint):
65671	Make the buffer running the inferior python process the current buffer
65672	(Bug#31398).
65673	* test/lisp/progmodes/python-tests.el (python-tests--bug31398):
65674	Add test.
65675
656762018-05-14  Basil L. Contovounesios  <contovob@tcd.ie>
65677
65678	Minor refactoring in shell-command
65679
65680	* lisp/simple.el (shell-command): Use call-process-shell-command,
65681	start-process-shell-command, and file-attribute-size. (bug#30280).
65682
656832018-05-14  Basil L. Contovounesios  <contovob@tcd.ie>
65684
65685	Fix a broken test
65686
65687	* lisp/simple.el (shell-command): Use call-process-shell-command,
65688	start-process-shell-command, and file-attribute-size. (bug#30280)
65689
656902018-05-14  Michael Albinus  <michael.albinus@gmx.de>
65691
65692	* lisp/net/ange-ftp.el (ange-ftp-allow-child-lookup):
65693
65694	Do not use obsolete ´dired-local-variables-file'.
65695
656962018-05-14  Michael Albinus  <michael.albinus@gmx.de>
65697
65698	Fix Bug#30663
65699
65700	* lisp/dired.el (dired-revert):
65701	Call `hack-dir-local-variables-non-file-buffer'.  (Bug#30663)
65702
657032018-05-14  Michael Albinus  <michael.albinus@gmx.de>
65704
65705	Improve `dired-buffer-stale-p' for remote files
65706
65707	* lisp/dired.el (dired-buffer-stale-p): Check for ´file-remote-p'
65708	only if `auto-revert-remote-files' is non-nil.
65709
657102018-05-14  Michael Albinus  <michael.albinus@gmx.de>
65711
65712	Remove obsolete objects from dired-x.el
65713
65714	* doc/misc/dired-x.texi (Local Variables): Remove node.
65715
65716	* lisp/dired-x.el (dired-enable-local-variables)
65717	(default-directory-alist, dired-default-directory-alist)
65718	(dired-default-directory, dired-local-variables-file)
65719	(dired-hack-local-variables, dired-omit-here-always):
65720	Remove obsolete variables, constants and functions.
65721
657222018-05-11  João Távora  <joaotavora@gmail.com>
65723
65724	Fix filesystem littering by Flymake's legacy backend
65725
65726	The Flymake legacy "proc" backend, which is active by default will try
65727	to syntax-check foo.c/foo.cpp and many other types of files, but on
65728	failing to find a suitable Makefile target, will fail.  There's
65729	nothing wrong with that except that it used to leave behind the
65730	foo_flymake.c and foo_flymake.cpp auxiliary files behind, littering
65731	the filesystem.
65732
65733	* lisp/progmodes/flymake-proc.el (flymake-proc-legacy-flymake):
65734	Call init-function inside of the unwind-protect.
65735
657362018-05-11  Michael Albinus  <michael.albinus@gmx.de>
65737
65738	Tramp updates
65739
65740	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
65741	Parse multibyte symlinks correctly.
65742
65743	* test/lisp/net/tramp-tests.el (tramp--test-utf8):
65744	Improve backward compatibility.
65745
657462018-05-10  Basil L. Contovounesios  <contovob@tcd.ie>
65747
65748	Rewrite scroll-other-window-down in C (bug#30207)
65749
65750	* lisp/window.el (scroll-other-window-down):
65751	Move to src/window.c as Fscroll_other_window_down.
65752	* src/window.c (scroll_command): Generalise for arbitrary windows.
65753	(Fscroll_up, Fscroll_down): Use scroll_command with selected_window.
65754	(Fscroll_other_window, Fscroll_other_window_down):
65755	Rewrite in terms of scroll_command.
65756	(syms_of_window): Add Sscroll_other_window_down.
65757
657582018-05-10  Basil L. Contovounesios  <contovob@tcd.ie>
65759
65760	Simplify "other window" bob/eob motion commands
65761
65762	* lisp/window.el (beginning-of-buffer-other-window)
65763	(end-of-buffer-other-window):
65764	Simplify via with-selected-window. (bug#30207)
65765
657662018-05-10  Basil L. Contovounesios  <contovob@tcd.ie>
65767
65768	Improve documentation for "other window" scrolling
65769
65770	* doc/emacs/windows.texi (Other Window):
65771	* doc/lispref/windows.texi (Textual Scrolling):
65772	Document scroll-other-window-down.
65773	* doc/lispref/minibuf.texi (Minibuffer Misc):
65774	Cross-reference minibuffer-scroll-window with Textual Scrolling.
65775	* src/window.c (Fother_window_for_scrolling):
65776	Clarify how "other window" is determined in docstring.
65777	(Fscroll_other_window): Simplify docstring, pointing to that of
65778	Fother_window_for_scrolling. (bug#30207)
65779
657802018-05-10  Basil L. Contovounesios  <contovob@tcd.ie>
65781
65782	Limit "other window" scrolling to current terminal
65783
65784	* src/window.c (Fother_window_for_scrolling): Limit next-window
65785	search to visible frames on the current terminal. (bug#30207)
65786
657872018-05-07  Glenn Morris  <rgm@gnu.org>
65788
65789	Merge from origin/emacs-26
65790
65791	1d732d6 (origin/emacs-26) Fix gud-statement for pdb
65792	91a68b5 ; * msdos/INSTALL: Add info about GCC versions.
65793	7ddcc9a Document 'custom-group'
65794	58f9e15 A minor addition to etc/DEBUG
65795	4590414 Avoid errors in ispell.el when Enchant returns empty extra chars
65796	d0d75f9 Make 'ispell-initialize-spellchecker-hook' work again
65797	b90ce66 Handle selected_window change in prepare_menu_bars (Bug#31312)
65798	79ad0b3 ; * INSTALL: Fix Emacs version number.  (Bug#31358)
65799	91de88b Fix report-emacs-bug via mailclient on MS-Windows
65800	f4b5ff2 Port collation tests to glibc 2.27
65801
658022018-05-06  Ari Roponen  <ari.roponen@gmail.com>
65803
65804	Fix cairo scrolling for side-by-side windows
65805
65806	* src/xterm.c (x_scroll_run) [USE_CAIRO]: Fix scrolling for
65807	side-by-side split windows.  (Bug#31288)
65808
658092018-05-06  Eli Zaretskii  <eliz@gnu.org>
65810
65811	Don't remove highlight of misspelled word on pdict save
65812
65813	* lisp/textmodes/ispell.el (ispell-pdict-save): Don't restart
65814	flyspell-mode, as bug#11963, which this was supposed to fix, is
65815	fixed better by ispell-command-loop, when the user types 'i' or
65816	'a'.  Restarting Flyspell mode when the personal dictionary is
65817	saved caused bug#31372 as side effect.
65818	(ispell-command-loop): Test 'flyspell-mode', not whether
65819	flyspell-unhighlight-at is fboundp, to determine whether Flyspell
65820	mode is turned on in the current buffer.
65821	(flyspell-unhighlight-at): Add declare-function form for it.
65822
658232018-05-06  Michael Albinus  <michael.albinus@gmx.de>
65824
65825	Fix Bug#31272
65826
65827	* lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls)
65828	(tramp-do-directory-files-and-attributes-with-stat)
65829	(tramp-sh-handle-insert-directory): Use "--show-control-chars".
65830	(tramp-convert-file-attributes): Decode multibyte strings,
65831	produced by "stat".  (Bug#31272)
65832
65833	* test/lisp/net/tramp-tests.el (tramp--test-utf8): Extend test.
65834
658352018-05-05  Michael Hendricks  <michael@ndrix.org>  (tiny change)
65836
65837	Include narrowing indication in describe-mode
65838
65839	* lisp/help.el (describe-mode): Include "Narrow", if narrowing is
65840	active.  (Bug#31139)
65841
658422018-05-05  Ari Roponen  <ari.roponen@gmail.com>
65843
65844	Fix some problems in the Cairo build
65845
65846	* src/xterm.c (x_begin_cr_clip): Create image surface.
65847	(x_update_end) [USE_CAIRO]: Remove GTK3-specific code.
65848	(x_scroll_run) [USE_CAIRO]: Implement scrolling.
65849	* src/image.c (lookup_rgb_color) [USE_CAIRO]: Support Cairo.
65850	(jpeg_load_body) [USE_CAIRO]: Support Cairo.  Use USE_CAIRO
65851	instead of CAIRO for #ifdef's.
65852	(imagemagick_load_image) [USE_CAIRO]: Support Cairo.
65853	(Bug#31288)
65854
658552018-05-05  Eli Zaretskii  <eliz@gnu.org>
65856
65857	Avoid infloops in font_open_entity
65858
65859	* src/font.c (font_open_entity): Fail after 15 iterations through
65860	the loop that looks for a font whose average_width and height are
65861	both positive.  This avoids infinite loops for fonts that, e.g.,
65862	report average_width of zero for any possible size we try.
65863	(Bug#31316)
65864
658652018-05-05  Eli Zaretskii  <eliz@gnu.org>
65866
65867	Fix encoding of characters when using GB18030 fonts
65868
65869	* lisp/international/fontset.el (font-encoding-alist): Fix the
65870	GB18030 entry to encode characters correctly when passing them to
65871	the xfont back-end.  (Bug#31315)  See also
65872	http://lists.gnu.org/archive/html/emacs-devel/2008-01/msg00754.html.
65873
658742018-05-04  Noam Postavsky  <npostavs@gmail.com>
65875
65876	* make-dist: Don't fail if building --without-makeinfo.
65877
658782018-05-03  Phillip Lord  <phillip.lord@russet.org.uk>
65879
65880	Fix windows snapshot building
65881
65882	* admin/nt/dist-build/build-zips.sh: Fix broken if statement
65883
658842018-05-03  Phillip Lord  <phillip.lord@russet.org.uk>
65885
65886	* admin/nt/dist-build/build-zips.sh: Support building of branches
65887
658882018-05-03  Paul Eggert  <eggert@cs.ucla.edu>
65889
65890	More porting to GCC 8 of --enable-gcc-warnings
65891
65892	* lwlib/lwlib-Xaw.h (xaw_update_one_value, xaw_popup_menu):
65893	* lwlib/lwlib-Xlw.h (xlw_update_one_value, xlw_pop_instance):
65894	* lwlib/lwlib.h (lw_allow_resizing, lw_set_main_areas) [!USE_MOTIF]:
65895	No longer const.
65896	* src/emacs-module.c: Ignore -Wcast-function-type.
65897
658982018-05-02  Marco Wahl  <marcowahlsoft@gmail.com>
65899	    Noam Postavsky  <npostavs@gmail.com>
65900
65901	Fix next-page for dired (Bug#31061)
65902
65903	* lisp/textmodes/page-ext.el (next-page): Don't go back any pages if
65904	COUNT is 0.  For negative COUNT, end with point just after the last
65905	delimiter.
65906
659072018-05-02  Basil L. Contovounesios  <contovob@tcd.ie>
65908
65909	Minor simple.el simplifications (Bug#31211)
65910
65911	* lisp/simple.el (kill-append, push-mark, pop-mark):
65912	Simplify conditionals and surrounding code.
65913
659142018-05-02  Basil L. Contovounesios  <contovob@tcd.ie>
65915
65916	Fix off-by-one history pruning (bug#31211)
65917
65918	* lisp/subr.el (add-to-history): Clarify docstring.
65919	Protect against negative history-length and unnecessary variable
65920	modification, as per read_minibuf.
65921
65922	* lisp/ido.el (ido-record-command):
65923	* lisp/international/mule-cmds.el (deactivate-input-method):
65924	(set-language-environment-input-method):
65925	* lisp/isearch.el (isearch-done):
65926	* lisp/minibuffer.el (read-file-name-default):
65927	* lisp/net/eww.el (eww-save-history):
65928	* lisp/simple.el (edit-and-eval-command, repeat-complex-command):
65929	(command-execute, kill-new, push-mark):
65930	* src/callint.c (Fcall_interactively):
65931	* src/minibuf.c (read_minibuf): Delegate to add-to-history.
65932
65933	* test/lisp/simple-tests.el (command-execute-prune-command-history):
65934	* test/src/callint-tests.el
65935	(call-interactively-prune-command-history): New tests.
65936
659372018-05-02  Glenn Morris  <rgm@gnu.org>
65938
65939	* lisp/textmodes/ispell.el (ispell-use-framepop-p): Doc fix.
65940
659412018-05-02  Michael Albinus  <michael.albinus@gmx.de>
65942
65943	Adapt Tramp for auth-source
65944
65945	* lisp/net/tramp.el (tramp-read-passwd): auth-source could return
65946	cascaded functions.
65947
659482018-05-02  Michael Albinus  <michael.albinus@gmx.de>
65949
65950	Fix some edge cases of tramp-smb
65951
65952	* lisp/net/tramp-smb.el (tramp-smb-errors):
65953	Add "NT_STATUS_REVISION_MISMATCH".
65954	(tramp-smb-handle-delete-directory): Check, that the directory
65955	has been removed indeed.
65956	(tramp-smb-get-localname): Add further checks on filename syntax.
65957
65958	* lisp/net/tramp.el (tramp-localname-regexp): Do not allow linefeeds.
65959
65960	* test/lisp/net/tramp-tests.el (tramp-smb-get-localname): Declare.
65961	(auth-source-save-behavior): Set it to nil.
65962	(tramp-test01-file-name-syntax): Extend, checking for linefeeds.
65963	(tramp-test03-file-name-host-rules, tramp--test-utf8): Refine tests.
65964	(tramp-test03-file-name-method-rules): New test.
65965	(tramp--test-ignore-add-name-to-file-error): New defmacro.
65966	(tramp-test21-file-links): Use it.
65967
659682018-05-01  Glenn Morris  <rgm@gnu.org>
65969
65970	Merge from origin/emacs-26
65971
65972	71be806 ; * etc/DEBUG: Minor clarification.
65973	4403f89 Update the Emacs FAQ
65974	40b3317 * etc/DEBUG: Minor copyedits.
65975	850ff18 Clarify wording of NS drag n drop documentation
65976	343d70b1 Improve kill-related documentation (bug#31209)
65977	0b43224 * lisp/simple.el (region-extract-function): Don't hide the 'n...
65978	d6e2c59 Fix pre- and post-command-hook errors in term.el
65979	6cf83131e * doc/lispref/display.texi (Glyphless Chars): Fix grammar.
65980	88d178c Fix macOS drag n drop event documentation
65981
659822018-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
65983
65984	`url-domain' doc clarification
65985
65986	* lisp/url/url-util.el (url-domain): Add an example to the doc
65987	string.
65988
659892018-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
65990
65991	Rewrite `url-domain' to avoid network traffic
65992
65993	* lisp/url/url-util.el (url-domain): Don't talk DNS to determine
65994	the domain, because this is slow.
65995
65996	* test/lisp/url/url-util-tests.el (url-domain-tests): Add tests
65997	for `url-domain'.
65998
659992018-04-30  Glenn Morris  <rgm@gnu.org>
66000
66001	* test/src/process-tests.el (make-process/mix-stderr): Skip on hydra.
66002
660032018-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
66004
66005	* lisp/net/socks.el: Use lexical-binding and process properties
66006
66007	Remove unneeded requires.  Better following commenting conventions.
66008	(socks-connections): Remove (use process properties instead).
66009	(socks-wait-for-state-change): Make it a function.
66010	(open-network-stream): Use an advice when overriding.
66011	(socks-send-command): Avoid string-make-unibyte.
66012	(socks--open-network-stream): New function (extracted from
66013	socks-open-network-stream).
66014	(socks-open-network-stream): Rewrite using it.
66015
660162018-04-29  Paul Eggert  <eggert@cs.ucla.edu>
66017
66018	Advise CFLAGS= operand, not in environment, when configuring
66019
660202018-04-28  Noam Postavsky  <npostavs@gmail.com>
66021
66022	Replace epg--gv-nreverse with (cl-callf nreverse ...)
66023
66024	* lisp/epg.el (epg--gv-nreverse): Remove.
66025	(epg-list-keys): Replace it with (cl-callf nreverse ...).
66026
660272018-04-28  Paul Eggert  <eggert@cs.ucla.edu>
66028
66029	Port --enable-gcc-warnings to GCC 8
66030
66031	* configure.ac: Do not use GCC 8’s new -Wcast-align flag.
66032	* lib-src/ebrowse.c (xmalloc):
66033	* lib-src/emacsclient.c (xmalloc, xstrdup):
66034	* lib-src/etags.c (xmalloc):
66035	* lib-src/make-docfile.c (xmalloc):
66036	* lib-src/movemail.c (xmalloc):
66037	* src/dispnew.c (new_glyph_pool):
66038	* src/regex.c (xmalloc):
66039	* src/term.c (tty_menu_create):
66040	* src/tparam.h (tparam):
66041	Use ATTRIBUTE_MALLOC.  Also see GCC bug 85562.
66042	* lib-src/emacsclient.c (fail):
66043	Do not dereference a null pointer.
66044	* src/frame.c (delete_frame):
66045	Add a decl with UNINIT to work around GCC bug 85563.
66046	* src/menu.h (finish_menu_items):
66047	Do not use attribute const.
66048	* src/regex.c (analyze_first): Use FALLTHROUGH, not a comment.
66049
660502018-04-28  Paul Eggert  <eggert@cs.ucla.edu>
66051
66052	Update from Gnulib
66053
66054	This incorporates:
66055	2018-04-27 manywarnings: port to GCC 8.0
66056	* build-aux/config.sub, m4/manywarnings.m4: Copy from Gnulib.
66057
660582018-04-28  Juri Linkov  <juri@linkov.net>
66059
66060	* lisp/vc/add-log.el (change-log-mode-syntax-table): New defvar
66061
66062	that redefines syntax of quotes to "expression quote or prefix operator".
66063	(Bug#31231)
66064
660652018-04-28  Juri Linkov  <juri@linkov.net>
66066
66067	* lisp/subr.el (dotimes): Deprecate RESULT field.  (Bug#16206)
66068
66069	* doc/lispref/control.texi (Iteration):
66070	* doc/misc/cl.texi (Iteration): Document deprecation of its use.
66071	* doc/lispintro/emacs-lisp-intro.texi (dotimes):
66072	* test/src/emacs-module-tests.el (multiply-string):
66073	* test/lisp/filenotify-tests.el (file-notify-test07-many-events):
66074	Place RESULT field after the form.
66075
660762018-04-28  Eli Zaretskii  <eliz@gnu.org>
66077
66078	* src/fns.c (Fstring_distance): Minor code reformatting.
66079
660802018-04-28  Eli Zaretskii  <eliz@gnu.org>
66081
66082	Fix documentation and tests for 'string-distance'
66083
66084	* src/fns.c (Fstring_distance): Doc fix.
66085
66086	* doc/lispref/strings.texi (Text Comparison): Document
66087	'string-distance'.
66088
66089	* etc/NEWS: Fix wording and mark as documented in the manuals.
66090
66091	* test/src/fns-tests.el (test-string-distance): Move from
66092	subr-tests.el and rename.
66093
660942018-04-27  Chen Bin  <chenbin.sh@gmail.com>
66095
66096	New function 'string-distance'
66097
66098	* src/fns.c (Fstring_distance): New primitive.
66099	(syms_of_fns): Defsubr it.
66100
66101	* test/lisp/subr-tests.el (subr-tests--string-distance): New test.
66102
66103	* etc/NEWS: Mention 'string-distance'.
66104
661052018-04-27  Michael Albinus  <michael.albinus@gmx.de>
66106
66107	Manual update for Tramp
66108
66109	* doc/misc/tramp.texi (Password handling): Explain, how passwords
66110	are saved permanently.
66111
66112	* etc/NEWS: auth-source Secret Service backend supports :create.
66113	Tramp saves validated passwords.
66114
661152018-04-27  Noam Postavsky  <npostavs@gmail.com>
66116
66117	* lisp/epa.el (epa-decrypt-file): Apply epa-pinentry-mode (Bug#30363).
66118
661192018-04-26  Lars Ingebrigtsen  <larsi@gnus.org>
66120
66121	Strip most headers when forwarding messages
66122
66123	* lisp/gnus/message.el (message-forward-included-headers): Change
66124	the default to exclude most messages.
66125	(message-remove-ignored-headers): Make
66126	message-forward-included-headers actually work -- it's a list of
66127	regexps, not a list of strings.
66128
661292018-04-26  Paul Eggert  <eggert@cs.ucla.edu>
66130
66131	* etc/NEWS: Fix minor quoting and spacing bugs.
66132
661332018-04-26  Noam Postavsky  <npostavs@gmail.com>
66134
66135	Add missing calendar-dlet* (Bug#31267)
66136
66137	* lisp/calendar/calendar.el (calendar-generate-month): Use
66138	calendar-dlet* around evaluation of calendar-date-echo-text.
66139
661402018-04-26  Ivan Shmakov  <ivan@siamics.net>
66141
66142	Ensure woman2-roff-buffer restores functions on error (Bug#30908)
66143
66144	* lisp/woman.el (woman2-roff-buffer): Put the fallback paragraph
66145	processing inside the protected part of the unwind-protect form,
66146	rather than the cleanup forms.  Attempting to format paragraphs again
66147	after an error has been signaled is unlikely to be helpful.  The
66148	fallback processing should be triggered only in case the loop
66149	terminated normally, but did not reach the end of the buffer for some
66150	reason.
66151
661522018-04-26  Noam Postavsky  <npostavs@gmail.com>
66153
66154	Fix cl-print for circular sublists (Bug#31146)
66155
66156	* lisp/emacs-lisp/cl-print.el (cl-print-object) <cons>: Push each
66157	element of list being printed onto cl-print--currently-printing.
66158	* test/lisp/emacs-lisp/cl-print-tests.el (cl-print-circle-2): New
66159	test.
66160
661612018-04-25  Paul Eggert  <eggert@cs.ucla.edu>
66162
66163	Don’t set print-escape-newlines in the minibuffer
66164
66165	This appears to be an unnecessary and possibly-confusing
66166	revenant from ancient code (Bug#31251).  See thread containing:
66167	https://lists.gnu.org/r/emacs-devel/2018-04/msg00654.html
66168	* src/minibuf.c (read_minibuf): Do not set print-escape-newlines.
66169	* src/print.c (syms_of_print): Do not defsym print-escape-newlines
66170	or print-escape-control-characters, as these symbols are not used
66171	in C code.
66172
661732018-04-25  Glenn Morris  <rgm@gnu.org>
66174
66175	* lisp/foldout.el (outline-minor-mode): Remove pointless check.
66176
661772018-04-25  Glenn Morris  <rgm@gnu.org>
66178
66179	speedbar: remove support for missing custom.el
66180
66181	* lisp/speedbar.el (speedbar-file-regexp)
66182	(speedbar-ignored-directory-regexp): Remove support for no custom.el.
66183
661842018-04-25  Glenn Morris  <rgm@gnu.org>
66185
66186	* lisp/progmodes/sql.el (comint-line-beginning-position):
66187	Remove pre-21 fallback definition.
66188
66189	* lisp/net/eudc.el (split-string): Remove pre-21 fallback definition.
66190
661912018-04-25  Basil L. Contovounesios  <contovob@tcd.ie>
66192
66193	Do not call interprogram-paste-function repeatedly
66194
66195	* lisp/simple.el (current-kill): Disable interprogram-paste-function
66196	so that kill-new doesn't call it repeatedly when
66197	save-interprogram-paste-before-kill is enabled.  (bug#31209)
66198
661992018-04-24  Glenn Morris  <rgm@gnu.org>
66200
66201	socks.el: remove pre-21 compatibility code
66202
66203	* lisp/net/socks.el (socks-split-string): Remove.
66204	(socks-nslookup-host): Just use split-string.
66205
662062018-04-24  Paul Eggert  <eggert@cs.ucla.edu>
66207
66208	* src/minibuf.c (read_minibuf): Add a FIXME comment.
66209
662102018-04-24  Lars Ingebrigtsen  <larsi@gnus.org>
66211
66212	(add-to-invisibility-spec): Further doc tweak
66213
66214	* lisp/subr.el (add-to-invisibility-spec): Tweak doc fix from
66215	previous patch.
66216
662172018-04-24  Lars Ingebrigtsen  <larsi@gnus.org>
66218
66219	Doc fix for `*-*-invisibility-spec'
66220
66221	* lisp/subr.el (add-to-invisibility-spec)
66222	(remove-from-invisibility-spec): Make the doc string say what
66223	happens if `buffer-invisibility-spec' is an atom (bug#30171).
66224
662252018-04-24  Lars Ingebrigtsen  <larsi@gnus.org>
66226
66227	libxml-parse-*-region calling convention fix
66228
66229	* lisp/subr.el (libxml-parse-xml-region)
66230	(libxml-parse-html-region): Adjust the calling convention to note
66231	that the final parameter is optional.
66232
662332018-04-24  Lars Ingebrigtsen  <larsi@gnus.org>
66234
66235	Make url-http-create-request work with non-ASCII data again
66236
66237	* lisp/url/url-http.el (url-http-create-request): Ensure that the
66238	entire request string is unibyte (bug#31248).
66239
662402018-04-23  Eli Zaretskii  <eliz@gnu.org>
66241
66242	Fix recent change in lread.c
66243
66244	* src/lread.c (openp): Avoid assertion violations in XCDR when
66245	PATH is nil.  (Bug#31229)
66246
662472018-04-23  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
66248
66249	Backspace is not a paragraph separator in Texinfo files
66250
66251	* lisp/textmodes/texinfo.el (texinfo-mode): Omit backspace from
66252	paragraph separator and start.  Perhaps there was some confusion
66253	about .texi vs .info files long ago?
66254
662552018-04-23  Eli Zaretskii  <eliz@gnu.org>
66256
66257	* etc/NEWS: Improve wording of next-error entries.
66258
662592018-04-23  Michael Albinus  <michael.albinus@gmx.de>
66260
66261	Let Tramp save passwords
66262
66263	* lisp/auth-source.el (auth-source-secrets-saver): New defun.
66264	(auth-source-secrets-create): Use it.
66265
66266	* lisp/net/secrets.el (secrets-struct-secret-content-type):
66267	(secrets-create-item): Do not hard-code :xdg:schema.
66268
66269	* lisp/net/tramp.el (tramp-password-save-function): New defvar.
66270	(tramp-read-passwd): Set it properly.
66271	(tramp-process-actions):
66272	* lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
66273	Save password.
66274
66275	* lisp/net/tramp-cmds.el (tramp-bug): Don't report
66276	`tramp-password-save-function'.
66277
66278	* test/lisp/net/secrets-tests.el (secrets-test03-items):
66279	Extend test with another :xdg:schema.
66280
662812018-04-23  Michael Albinus  <michael.albinus@gmx.de>
66282
66283	Ensure proper EOL handling for Tramp on macOS
66284
66285	* lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
66286	Ensure proper EOL handling for Darwin.
66287
662882018-04-22  Juri Linkov  <juri@linkov.net>
66289
66290	Improve Isearch error handling
66291
66292	* lisp/isearch.el (isearch--momentary-message): Propertize message
66293	suffix with minibuffer-prompt face.
66294	(isearch--describe-regexp-mode): Do not omit description in case
66295	of error in default non-literal search.
66296	(isearch-message-prefix): Display “case-sensitive” in case of error.
66297	(isearch-message-suffix): Propertize message suffix with
66298	minibuffer-prompt face.
66299	(isearch-search-fun-default): Remove unused error handling.
66300
66301	* lisp/vc/add-log.el (change-log-next-buffer): Better handle
66302	errors during wrapping.
66303
663042018-04-22  Lars Ingebrigtsen  <larsi@gnus.org>
66305
66306	(text-property-search-forward): Copy edits in doc string
66307
66308	* lisp/emacs-lisp/text-property-search.el
66309	(text-property-search-forward): Copy edits in doc string.
66310
663112018-04-22  Eli Zaretskii  <eliz@gnu.org>
66312
66313	Minor improvements of next-error docs
66314
66315	* lisp/simple.el (next-error-find-buffer-function)
66316	(previous-error, next-error-select-buffer): Doc fixes.
66317	* doc/emacs/maintaining.texi (Change Log Commands):
66318	* doc/emacs/building.texi (Compilation Mode): Index the new
66319	commands and variables.  Improve wording.
66320	(Bug#20493)
66321
663222018-04-22  Lars Ingebrigtsen  <larsi@gnus.org>
66323
66324	(text-property-search-forward): Doc string tweak
66325
66326	* lisp/emacs-lisp/text-property-search.el
66327	(text-property-search-forward): Doc string tweak.
66328
663292018-04-22  Lars Ingebrigtsen  <larsi@gnus.org>
66330
66331	(text-property-search-forward): Fix search at the end
66332
66333	* lisp/emacs-lisp/text-property-search.el
66334	(text-property-search-forward): Fix search at the end of the
66335	buffer with no text properties.
66336
663372018-04-22  Lars Ingebrigtsen  <larsi@gnus.org>
66338
66339	Add a test suite for text-property-search
66340
663412018-04-21  Juri Linkov  <juri@linkov.net>
66342
66343	Update documentation for more next-error features
66344
66345	* doc/emacs/maintaining.texi (Change Log Commands): Mention
66346	change-log-goto-source.
66347
66348	* doc/emacs/building.texi (Compilation Mode): Document
66349	next-error-find-buffer-function and next-error-select-buffer.
66350
66351	* doc/emacs/building.texi (Grep Searching):
66352	* doc/emacs/files.texi (Diff Mode):
66353	* doc/emacs/search.texi (Other Repeating Search):
66354	* doc/emacs/windows.texi (Displaying Buffers):
66355	Prefer ‘M-g M-n’ over ‘C-x `’.
66356
66357	* lisp/simple.el (next-error-find-buffer-function, next-error)
66358	(next-error-select-buffer): Elaborate docstrings.  (Bug#20493)
66359
663602018-04-20  Glenn Morris  <rgm@gnu.org>
66361
66362	Tweak recent bytecomp defvaralias change
66363
66364	* lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defvar-function):
66365	Respect with-no-warnings.
66366
663672018-04-20  Glenn Morris  <rgm@gnu.org>
66368
66369	More alias-related tedium
66370
66371	* lisp/comint.el (comint-scroll-to-bottom-on-output):
66372	* lisp/completion.el (cmpl-syntax-table):
66373	* lisp/erc/erc-button.el (erc-button-google-url):
66374	* lisp/font-lock.el (font-lock-reference-face):
66375	* lisp/hfy-cmap.el (hfy-fallback-colour-map, hfy-rgb-txt-colour-map):
66376	* lisp/isearch.el (isearch-regexp-function, isearch-new-word):
66377	* lisp/startup.el (argv):
66378	* lisp/version.el (emacs-bzr-version):
66379	* lisp/org/org.el (org-CUA-compatible)
66380	(org-popup-calendar-for-date-prompt):
66381	Move aliases before targets, to silence new compiler warning.
66382
663832018-04-20  Glenn Morris  <rgm@gnu.org>
66384
66385	The tedious game of whack-a-mole with compiler warnings continues
66386
66387	* lisp/abbrev.el (edit-abbrevs-map):
66388	* lisp/emacs-lock.el (emacs-lock-from-exiting):
66389	* lisp/htmlfontify.el (hfy-optimisations):
66390	* lisp/ielm.el (inferior-emacs-lisp-mode-hook)
66391	(inferior-emacs-lisp-mode-map):
66392	* lisp/isearch.el (isearch-lazy-highlight-word):
66393	* lisp/select.el (x-select-enable-clipboard, x-select-enable-primary):
66394	* lisp/shell.el (shell-dirtrack-mode):
66395	* lisp/skeleton.el (skeleton-transformation, skeleton-filter):
66396	* lisp/startup.el (inhibit-splash-screen, inhibit-startup-message):
66397	* lisp/window.el (even-window-heights):
66398	* lisp/calendar/timeclock.el (timeclock-modeline-display):
66399	* lisp/cedet/semantic/db-mode.el (semanticdb-mode-hook)
66400	(semanticdb-global-mode):
66401	* lisp/emacs-lisp/edebug.el (gud-inhibit-global-bindings):
66402	* lisp/emacs-lisp/warnings.el (display-warning-minimum-level)
66403	(log-warning-minimum-level):
66404	* lisp/erc/erc-dcc.el (erc-dcc-chat-filter-hook):
66405	* lisp/gnus/nnspool.el (news-path):
66406	* lisp/org/org-agenda.el (org-agenda-search-view-search-words-only)
66407	(org-agenda-remove-tags-when-in-prefix)
66408	(org-agenda-align-tags-to-column, org-agenda-keymap):
66409	* lisp/org/org.el (org-special-ctrl-a)
66410	(org-log-state-notes-into-drawer)
66411	(org-agenda-multi-occur-extra-files):
66412	* lisp/progmodes/flymake-proc.el (flymake-err-line-patterns)
66413	(flymake-check-file-limit):
66414	* lisp/progmodes/make-mode.el (makefile-query-one-target-method):
66415	* lisp/progmodes/octave.el (inferior-octave-startup-hook):
66416	* lisp/progmodes/python.el (python-buffer)
66417	(python-preoutput-result):
66418	* lisp/progmodes/sql.el (sql-dialect):
66419	* lisp/textmodes/artist.el (artist-text-renderer):
66420	* lisp/textmodes/bibtex.el (bibtex-autokey-name-case-convert)
66421	(bibtex-autokey-titleword-case-convert):
66422	* lisp/textmodes/flyspell.el (flyspell-generic-check-word-p):
66423	* lisp/textmodes/ispell.el (ispell-format-word):
66424	* lisp/textmodes/rst.el (rst-preferred-decorations):
66425	* lisp/textmodes/sgml-mode.el (sgml-transformation):
66426	Move aliases before targets, to silence new compiler warning.
66427	* lisp/term/ns-win.el (ns-option-modifier, ns-right-option-modifier):
66428	Silence warning.
66429
664302018-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
66431
66432	* lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defvar-function):
66433
66434	Warn about defvaralias that follows instead of precedes its var.
66435
664362018-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
66437
66438	* lisp/url/url-file.el: Use lexical-binding.
66439
664402018-04-20  Glenn Morris  <rgm@gnu.org>
66441
66442	* lisp/net/newst-backend.el (newsticker--sentinel-work):
66443	Replace obsolete form of libxml-parse-xml-region.
66444
66445	* lisp/replace.el (query-replace-descr): Silence compiler.
66446
664472018-04-20  Michael Albinus  <michael.albinus@gmx.de>
66448
66449	Revert "* etc/HELLO: Add langugae Emoji.  Use utf-8 coding."
66450
66451	This reverts commit c4cfb5d20487f9912f5896b3f1d291fe7ccc9804.
66452
664532018-04-20  Michael Albinus  <michael.albinus@gmx.de>
66454
66455	Revert "* admin/notes/unicode: HELLO is now UTF-8."
66456
66457	This reverts commit 0585bd643dae2592214e77998b875347e6e59bab.
66458
664592018-04-20  Paul Eggert  <eggert@cs.ucla.edu>
66460
66461	* admin/notes/unicode: HELLO is now UTF-8.
66462
664632018-04-20  Glenn Morris  <rgm@gnu.org>
66464
66465	Merge from origin/emacs-26
66466
66467	5de608f (origin/emacs-26) Update the documentation of 'perform-replace'
66468	06245b6 * etc/NEWS: Another fix for the last change (noted by Juri Li...
66469	8f6293c Fix use of @key in Texinfo manuals
66470	f4c9894 Improve documentation of actual arglist
66471	ce0e253 ; * etc/NEWS: Improve last change as proposed by Phil Sainty
66472	b89ff0e Don't assume term-current-row cache is valid (Bug#31193)
66473	326a296 ; * etc/NEWS: Mention 'display-buffer-in-major-side-window' c...
66474	3bdc9a1 Fix flyspell-auto-correct-previous-word broken by recent change
66475	a539eb5 * test/src/lread-tests.el (lread-test-bug-31186): New test.
66476	3fa472b Fix undefined behaviour while looking for lexical-binding fil...
66477	4341aac Minor wording improvement in "Bookmarks"
66478
66479	Conflicts:
66480		test/src/lread-tests.el
66481
664822018-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
66483
66484	* lisp/international/mule-cmds.el (view-hello-file): Avoid duplicate
66485
66486	Don't hardcode the coding-system, now that it's specified with a "coding:" tag
66487
664882018-04-20  Michael Albinus  <michael.albinus@gmx.de>
66489
66490	* lisp/international/mule-cmds.el (view-hello-file):  Use utf-8 coding.
66491
66492	* etc/HELLO: Add langugae Emoji.  Use utf-8 coding.
66493
664942018-04-19  Glenn Morris  <rgm@gnu.org>
66495
66496	* lisp/url/url-util.el (puny-encode-domain): Autoload it.
66497
664982018-04-19  Juri Linkov  <juri@linkov.net>
66499
66500	Mention next-error-select-buffer in etc/NEWS
66501
665022018-04-19  Alan Mackenzie  <acm@muc.de>
66503
66504	Amend c-colon-type-list-re also to handle compound identifiers
66505
66506	* lisp/progmodes/cc-langs.el (c-colon-type-list-re): Amend to recognize and
66507	skip over "::" in C++ and "." in Java.
66508
665092018-04-19  Juri Linkov  <juri@linkov.net>
66510
66511	Use text properties to save search parameters.  (Bug#22479)
66512
66513	* lisp/isearch.el (isearch-update-ring): Call isearch-string-propertize.
66514	Delete duplicates with possibly different text properties.
66515	(isearch-string-propertize)
66516	(isearch-update-from-string-properties): New functions.
66517	(with-isearch-suspended, isearch-ring-adjust1):
66518	Call isearch-update-from-string-properties.
66519	(isearch-edit-string): Let-bind minibuffer-allow-text-properties to t.
66520	(isearch-query-replace): Use propertized isearch-string.
66521	(isearch--lax-regexp-function-p): Simplify.
66522
66523	* lisp/replace.el (query-replace-descr): Rewrite to keep text properties
66524	non-destructively in the replacement string.
66525	(query-replace--split-string): Don't remove text properties
66526	by substring-no-properties.
66527	(query-replace-read-args): Try to get isearch-regexp-function
66528	from text-properties.
66529	(perform-replace): Display parameters in the replacement message.
66530
66531	* lisp/desktop.el (desktop--v2s): Check if text properties are unreadable.
66532	(Bug#30786)
66533
665342018-04-19  Juri Linkov  <juri@linkov.net>
66535
66536	* lisp/isearch.el (isearch-mode-map): Restore advertised bindings.
66537
66538	Remove obsolete comments and code.
66539
66540	* lisp/replace.el (occur-find-match): Use user-error instead of error.
66541	(Bug#14912)
66542
665432018-04-19  Drew Adams  <drew.adams@oracle.com>
66544
66545	Add REGION-NONCONTIGUOUS-P arg to other replace.el commands
66546
66547	* lisp/replace.el (query-replace, query-replace-regexp): Doc fix.
66548	(query-replace-regexp-eval, map-query-replace-regexp)
66549	(replace-string, replace-regexp): Add REGION-NONCONTIGUOUS-P arg.
66550	(perform-replace): Doc fix.  (Bug#27897)
66551
665522018-04-19  Glenn Morris  <rgm@gnu.org>
66553
66554	* lisp/emacs-lisp/autoload.el (autoload--make-defs-autoload):
66555	Sort definition-prefixes, for stability.
66556
665572018-04-19  Michael Albinus  <michael.albinus@gmx.de>
66558
66559	Handle chrooted environments in Tramp
66560
66561	* doc/misc/tramp.texi (Frequently Asked Questions): New item, chrooted
66562	environments.
66563
66564	* lisp/net/tramp.el (tramp-local-host-regexp): Make it a defcustom.
66565	Allow nil.
66566	(tramp-local-host-p):
66567	* lisp/net/tramp-sh.el (tramp-compute-multi-hops): Handle this.
66568
665692018-04-18  Glenn Morris  <rgm@gnu.org>
66570
66571	* test/src/process-tests.el (make-process/mix-stderr): Use bash.
66572
66573	Not all shells support ">&2".
66574
665752018-04-18  Paul Eggert  <eggert@cs.ucla.edu>
66576
66577	Fix botched merge of FQDNs in PROBLEMS
66578
66579	This text was originally removed in
66580	2014-12-30T04:42:26Z!eggert@cs.ucla.edu but then was
66581	mistakenly re-added in the merge in
66582	2015-03-23T17:30:30Z!eggert@cs.ucla.edu.
66583	* etc/PROBLEMS: Omit obsolete mention of FQDNs.
66584
665852018-04-18  Paul Eggert  <eggert@cs.ucla.edu>
66586
66587	Tweak mark_object to avoid a conditional branch
66588
66589	* src/alloc.c (LAST_MARKED_SIZE): Now an enum.  Make it a power of 2.
66590	(mark_object): Take advantage of the power of 2.
66591
665922018-04-18  Stefan Monnier  <monnier@iro.umontreal.ca>
66593
66594	* lisp/emacs-lisp/gv.el (gv-define-setter): Silence compiler warning
66595
66596	Code placed in the `gv-expander` property will presumably only be used
66597	when gv is loaded (bug#14529).
66598
665992018-04-18  Paul Eggert  <eggert@cs.ucla.edu>
66600
66601	Tell user about read-integer-overflow-as-float
66602
66603	* src/lread.c (string_to_number): Suggest
66604	read-integer-overflow-as-float in signal message.
66605	Suggested by Stefan Monnier (Bug#31118#58).
66606
666072018-04-17  Paul Eggert  <eggert@cs.ucla.edu>
66608
66609	Fix signal for large integers with valid syntax
66610
66611	* src/lread.c (read_integer): If a radixed integer has valid syntax
66612	but is waayyy too large, signal overflow instead of invalid syntax.
66613	* test/src/lread-tests.el (lread-long-hex-integer): New test.
66614
666152018-04-17  Lars Ingebrigtsen  <larsi@gnus.org>
66616
66617	(sql-stop): Don't bug out if the SQL buffer is killed
66618
66619	* lisp/progmodes/sql.el (sql-stop): Don't bug out if the SQL
66620	buffer is killed (bug#30244).
66621
666222018-04-17  David Beswick  <dlbeswick@gmail.com>  (tiny change)
66623
66624	Don't display an initial-buffer-choice buffer twice
66625
66626	* lisp/startup.el (command-line-1): Don't display an
66627	initial-buffer-choice buffer twice if the user is also explicitly
66628	specifying it on the mode line, but shift it to the initial place
66629	(bug#29999).
66630
666312018-04-17  Lars Ingebrigtsen  <larsi@gnus.org>
66632
66633	Revert hunk mistakenly applied in last patch
66634
666352018-04-17  Lars Ingebrigtsen  <larsi@gnus.org>
66636
66637	Fix problem in `g' in Info with strings like "(foo)"
66638
66639	* lisp/info.el (Info-find-file): Add a new parameter to avoid
66640	jumping to the directory if the user looks for a filename on the
66641	form "(foo)" that doesn't exist.
66642	(Info-read-node-name-1): Use it to allow completing over strings
66643	like "(foo)" without losing focus (bug#30091).
66644
666452018-04-17  Basil L. Contovounesios  <contovob@tcd.ie>
66646
66647	Set :version of shr faces
66648
66649	* lisp/net/shr.el (shr-strike-through, shr-link, shr-selected-link):
66650	Set :version tag (bug#31200).
66651
666522018-04-17  Lars Ingebrigtsen  <larsi@gnus.org>
66653
66654	shr doc string fix
66655
66656	* lisp/net/shr.el (shr-strike-through, shr-link)
66657	(shr-selected-link): Doc string fix.
66658
666592018-04-17  Basil L. Contovounesios  <contovob@tcd.ie>
66660
66661	Modernise face specs and set version tags in eww/shr
66662
66663	* lisp/net/shr.el (shr-strike-through, shr-link, shr-selected-link):
66664	Set :version tag (bug#31200).
66665
66666	* lisp/net/eww.el (eww-form-text, eww-form-textarea):
66667	* lisp/net/shr.el (shr-strike-through, shr-link, shr-selected-link):
66668	Use (DISPLAY . PLIST) face spec syntax as recommended in
66669	'(elisp) Defining Faces'.
66670
666712018-04-17  Lars Ingebrigtsen  <larsi@gnus.org>
66672
66673	When undoing a mark-as-read, display the group if it isn't
66674
66675	* lisp/gnus/gnus-group.el (gnus-group-jump-to-group): Return
66676	whether we found the group.
66677	(gnus-info-clear-data): Make the group visible if it wasn't.
66678
66679	* lisp/gnus/gnus-sum.el (gnus-group-make-articles-read): Ditto.
66680	(gnus-update-read-articles): Ditto.
66681
666822018-04-17  Juri Linkov  <juri@linkov.net>
66683
66684	Use next-error-found to set next-error-last-buffer.
66685
66686	https://lists.gnu.org/archive/html/emacs-devel/2018-04/msg00207.html
66687
66688	* lisp/simple.el (next-error-buffer): New buffer-local variable
66689	instead of making buffer-local next-error-last-buffer.  (Bug#20489)
66690	(next-error-found-function): New defcustom.
66691	(next-error-buffer-on-selected-frame): Use t for avoid-current arg
66692	of next-error-buffer-p.
66693	(next-error-find-buffer): Add second rule for using the current
66694	next-error-buffer if it's not visited by other navigation.
66695	(next-error, next-error-internal): Call next-error-found.
66696	(next-error-found): New function with body extracted mostly from
66697	next-error.
66698
66699	* lisp/vc/add-log.el (change-log-goto-source-internal): New function
66700	with body from change-log-goto-source.
66701	(change-log-goto-source): Call change-log-goto-source-internal and
66702	next-error-found.
66703	(change-log-next-error): Call change-log-goto-source-internal
66704	instead of change-log-goto-source.
66705	(change-log-mode): Don't set next-error-last-buffer.  (Bug#28864)
66706
66707	* lisp/vc/diff-mode.el (diff-goto-source): Call next-error-found.
66708
66709	* lisp/progmodes/xref.el (xref-goto-xref): Call next-error-found.
66710
66711	* lisp/replace.el (occur-mode-goto-occurrence)
66712	(occur-mode-goto-occurrence-other-window)
66713	(occur-mode-display-occurrence): Call next-error-found.
66714	(occur-next-error): Remove unnecessary with-current-buffer.
66715	(Bug#27362, bug#30646)
66716
667172018-04-17  Lars Ingebrigtsen  <larsi@gnus.org>
66718
66719	Tweak shr window width computation
66720
66721	* lisp/net/shr.el (shr-insert-document): The computation of the
66722	window width is apparently one pixel too wide for the shr line
66723	folding algorithm (bug#31196).
66724
667252018-04-17  Lars Ingebrigtsen  <larsi@gnus.org>
66726
66727	(gnus-summary-select-article-buffer): Further point placing tweak
66728
66729	* lisp/gnus/gnus-sum.el (gnus-summary-select-article-buffer):
66730	Further tweak for the previous point-placing tweak.
66731
667322018-04-17  Lars Ingebrigtsen  <larsi@gnus.org>
66733
66734	Tweak point placement in gnus-summary-select-article-buffer
66735
66736	* lisp/gnus/gnus-sum.el (gnus-summary-select-article-buffer):
66737	Ensure that point is where it's supposed to be after switching to
66738	the article buffer.
66739
667402018-04-17  Lars Ingebrigtsen  <larsi@gnus.org>
66741
66742	Make the `c' command work in a single-article Gnus view
66743
66744	* lisp/gnus/gnus-art.el (gnus-article-read-summary-keys): Make `c'
66745	work from the article buffer (bug#31195) when no summary buffer is
66746	shown.
66747
667482018-04-17  Lars Ingebrigtsen  <larsi@gnus.org>
66749
66750	Place point consistently in the Gnus group buffer on exit
66751
66752	* lisp/gnus/gnus-sum.el (gnus-summary-exit): Place point correctly
66753	when exiting with `q' (and the like) from the article buffer when
66754	only the article buffer is displayed (bug#31195).  This is
66755	apparently yet another fall-out from the "preserve-visible-point-
66756	in-windows" patches of yesteryear...
66757
667582018-04-17  Lars Ingebrigtsen  <larsi@gnus.org>
66759
66760	Reimplement `shr-next-link' and `shr-previous-link'
66761
66762	* lisp/net/shr.el (shr-next-link): Use
66763	`text-property-search-forward'.
66764	(shr-previous-link): Use `text-property-search-backward'.
66765
667662018-04-17  Lars Ingebrigtsen  <larsi@gnus.org>
66767
66768	Add `text-property-search-forward' and `-backward'
66769
66770	* doc/lispref/text.texi (Property Search): Document
66771	`text-property-search-forward' and `text-property-search-backward'.
66772
66773	* lisp/emacs-lisp/text-property-search.el: New file.
66774
667752018-04-17  Tino Calancha  <tino.calancha@gmail.com>
66776
66777	* lisp/textmodes/artist.el (artist-mode): Ensure we have a font
66778
667792018-04-16  Katsumi Yamaoka  <yamaoka@jpl.org>
66780
66781	* lisp/mail/sendmail.el (mail-sendmail-undelimit-header): Work for
66782	the case where the mail header separator has already been deleted.
66783
667842018-04-16  Lars Ingebrigtsen  <larsi@gnus.org>
66785
66786	(gnus-group-goto-group): Return correct value after previous patch
66787
66788	* lisp/gnus/gnus-group.el (gnus-group-goto-group): Return the
66789	correct value after the previous patch.
66790
667912018-04-16  Lars Ingebrigtsen  <larsi@gnus.org>
66792
66793	Fix inconsistent point movement in the Gnus group buffer
66794
66795	* lisp/gnus/gnus-group.el (gnus-group-goto-group): If we can't
66796	find the group we're looking for, then don't move point at all
66797	(bug#23021).
66798
667992018-04-16  Lars Ingebrigtsen  <larsi@gnus.org>
66800
66801	(artist-mode): Warn about proportional fonts
66802
66803	* lisp/textmodes/artist.el (artist-mode): Warn about proportional
66804	fonts (bug#24175).
66805
668062018-04-16  Lars Ingebrigtsen  <larsi@gnus.org>
66807
66808	Make mail-sendmail-undelimit-header actually remove the delimiter
66809
66810	* lisp/mail/sendmail.el (mail-sendmail-undelimit-header): Actually
66811	remove the mail header separator (bug#17488).  In all the cases
66812	where this is called, the separator will probably already have
66813	been removed, so the only thing this does is place point at the
66814	end of the headers.
66815
668162018-04-16  Lars Ingebrigtsen  <larsi@gnus.org>
66817
66818	(semantic-symref-results-mode-map): Fix typo in previous check-in
66819
66820	* lisp/cedet/semantic/symref/list.el
66821	(semantic-symref-results-mode-map): Fix typo in previous check-in.
66822
668232018-04-15  Philipp Stephani  <phst@google.com>
66824
66825	Avoid undefined behavior in 'defvar' (Bug#31072)
66826
66827	* src/eval.c (Fdefvar): Check that first argument is a symbol.
66828	* test/src/eval-tests.el (defvar/bug31072): New unit test.
66829
668302018-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
66831
66832	EUDC: Enable lexical binding and do some cleanups
66833
66834	* lisp/net/eudc.el: Enable lexical binding.
66835	(cl-lib): Always require cl-lib, not only when byte compiling.
66836	(eudc-mode-map): Set parent keymap within let form.
66837	(eudc-update-local-variables): Use #' read syntax for function
66838	argument to map function.
66839	(eudc-select): Likewise.
66840	(eudc-format-attribute-name-for-display): Likewise
66841	(eudc-filter-duplicate-attributes): Likewise.
66842	(eudc-format-query): Likewise.
66843	(eudc-expand-inline): Likewise.
66844	(eudc-query-form): Likewise.
66845	(eudc-print-attribute-value): Use mapc instead of mapcar.
66846	(eudc-filter-partial-records): Use cl-every.
66847	(eudc-distribute-field-on-records): Use delete-dups to
66848	simplify function.
66849	(eudc-expand-inline): Replace while with dolist and let form.
66850	(eudc-query-form): Set inhibit-read-only after switching
66851	buffers.  Remove useless and call.
66852	(eudc-load-eudc): Add a FIXME comment.
66853
668542018-04-15  Rüdiger Sonderfeld  <ruediger@c-plusplus.de>
66855
66856	In HTML mode, don't match </ with the wrong /
66857
66858	* lisp/textmodes/sgml-mode.el (sgml-slash): In HTML mode, don't
66859	match <br /><h1>...</ with the preceding / (bug#16508).
66860
668612018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66862
66863	Use quit-buffer instead of semantic-symref-hide-buffer
66864
66865	* lisp/cedet/semantic/symref/list.el
66866	(semantic-symref-hide-buffer): Removed (bug#15857).
66867	(semantic-symref-results-mode-map): Use quit-buffer instead.
66868
668692018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66870
66871	Doc string update for gnus-extract-address-components
66872
66873	* lisp/gnus/gnus-util.el (gnus-extract-address-components): Doc
66874	update.
66875
668762018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66877
66878	Add an undo command to url-cookie-mode
66879
66880	* lisp/url/url-cookie.el (url-cookie-undo): New command and
66881	keystroke (bug#16650).
66882
668832018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66884
66885	Tweak the look of the cookie buffer after cookie deletion
66886
66887	* lisp/url/url-cookie.el (url-cookie--generate-buffer): Factor out
66888	into its own function.
66889	(url-cookie-delete): Use it to make the buffer look consistent
66890	after deleting a cookie.
66891
668922018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66893
66894	Make eww handle "http://a/../../../g"
66895
66896	* lisp/net/eww.el (eww): Strip leading elements off URLs on the
66897	form "http://a/../../../g", because that's what all the other
66898	browsers do (bug#8622).
66899
669002018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66901
66902	Make url-cookie-write-file be more permissive
66903
66904	* lisp/url/url-cookie.el (url-cookie-write-file): If
66905	`url-cookie-file' isn't set (due to url.el not being used yet),
66906	don't error out in this function (bug#23183).
66907
669082018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66909
66910	Don't warn the user about large files if they are unreadable
66911
66912	* lisp/files.el (abort-if-file-too-large): There's no point in
66913	warning the user about a too-large file if we're not able to read
66914	it (bug#29549).  Hopefully this doesn't introduce a race condition
66915	between this test and the `file-readable-p' test later.
66916
669172018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66918
66919	Only save the mailer choice after sending the mail
66920
66921	* lisp/mail/sendmail.el (sendmail-query-once): Only save the
66922	mailer choice after we've sent the mail, so that if that fails,
66923	the user has an easy way to back out of the choice and make
66924	another (bug#14487).
66925	(sendmail-query-user-about-smtp): Return the choice; don't save it.
66926
669272018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66928
66929	(compose-mail): Give a better error message for `mail-user-agent'
66930
66931	* lisp/simple.el (compose-mail): Give a better error message for
66932	invalid values for `mail-user-agent' (bug#17979).
66933
669342018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66935
66936	Fix typo in gnus.texi
66937
66938	* doc/misc/gnus.texi (Summary Message Commands): Fix typo in last
66939	change.
66940
669412018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66942
66943	Update doc string after previous ietf-drums change
66944
66945	* lisp/mail/ietf-drums.el (ietf-drums-parse-address): Doc fix
66946	after previous change.
66947
669482018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66949
66950	mail-extr.el: Mention `mail-header-parse-address' in the doc string
66951
66952	* lisp/mail/mail-extr.el (mail-extract-address-components):
66953	Mention `mail-header-parse-address' in the doc string.
66954
669552018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66956
66957	Allow `mail-header-parse-address' to decode encoded words
66958
66959	* lisp/mail/ietf-drums.el (ietf-drums-parse-address): Take an
66960	optional parameter to decode the display name.
66961
669622018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66963
66964	Revert "Make mail-extract-address-components return the user name more"
66965
66966	This reverts commit 8b50ae8b2284b5652c2843a9d0d076f4f657be28.
66967
66968	According to tests in bug#27656 by OGAWA Hirofumi, this patch
66969	led to wrong results when binding
66970
66971	(dolist (addr '("Rasmus <rasmus@gmx.us>" "Rasmus <mbox@gmx.us>"))
66972	  (dolist (ignore-single '(t nil))
66973	    (dolist (ignore-same '(t nil))
66974	      (let ((mail-extr-ignore-single-names ignore-single)
66975		    (mail-extr-ignore-realname-equals-mailbox-name ignore-same))
66976		(message "%s" (mail-extract-address-components addr))))))
66977
66978	in combination.
66979
669802018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66981
66982	Query the user whether to increase stack depth in shr
66983
66984	* lisp/net/shr.el (shr-insert-document): Bind `max-specpdl-size'
66985	here... (bug#30675).
66986	(shr-descend): So that we can increase it temporarily here if the
66987	user wants to.
66988
669892018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66990
66991	Minor copy edit of etc/NEWS
66992
66993	* src/lread.c (openp): Add a comment before the now-obscure loop.
66994
669952018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
66996
66997	Clarify menu entry in previous check-in
66998
66999	* lisp/gnus/gnus-sum.el (gnus-summary-make-menu-bar): Menu bar
67000	entry for it.
67001
670022018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
67003
67004	Add new command `gnus-summary-attach-article'
67005
67006	* doc/misc/gnus.texi (Summary Message Commands): Document it.
67007
67008	* lisp/gnus/gnus-msg.el (gnus-summary-attach-article): New command
67009	and keystroke (bug#19788).
67010
67011	* lisp/gnus/gnus-sum.el (gnus-summary-make-menu-bar): Menu bar
67012	entry for it.
67013
670142018-04-15  Daiki Ueno  <ueno@gnu.org>
67015
67016	Divert to call `gnus-activate-group' with the SCAN argument set
67017
67018	* lisp/gnus/gnus-group.el (gnus-group-get-new-news-this-group):
67019	Divert to call `gnus-activate-group' with the SCAN argument set,
67020	if request-group-scan is not defined for the backend.  Ensure that
67021	the server is open when calling `gnus-request-group-scan'
67022	(bug#22649).
67023
670242018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
67025
67026	Abort Gnus exit if we have unsaved Message buffers
67027
67028	* lisp/gnus/gnus-group.el
67029	(gnus--abort-on-unsaved-message-buffers): New function (bug#28843).
67030	(gnus-group-exit): Use it to abort exit if we have unsaved Message
67031	buffers.
67032
670332018-04-15  Lars Ingebrigtsen  <larsi@gnus.org>
67034
67035	Avoid an infloop in shr filling when not using fonts
67036
67037	* lisp/net/shr.el (shr-fill-line): If we have an indentation
67038	that's wider than the width of what we're trying to fill, just
67039	give up.  This avoids an infloop when `shr-use-fonts' in nil.
67040
670412018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67042
67043	Remove calls from string-to-multibyte in nnheader/nntp
67044
67045	* lisp/gnus/nntp.el (nntp-copy-to-buffer): Apparently `insert' now
67046	behaves more like string-make-multibyte, but it now behaves more
67047	like string-to-multibyte, so remove that call here.  I'm not quite
67048	sure I follow that logic, but apparently there are no ill effects.
67049
67050	* lisp/gnus/nnheader.el (nnheader-insert-buffer-substring): Ditto.
67051
670522018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67053
67054	Remove a string-to-multibyte from nnmh.el
67055
67056	* lisp/gnus/nnmh.el (nnmh-request-list-1): Remove superfluous
67057	string-to-multibyte.
67058
670592018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67060
67061	Remove call to string-to-multibyte from nndoc.el
67062
67063	* lisp/gnus/nndoc.el (nndoc-oe-dbx-type-p): My testing shows that
67064	no matter whether we're in a unibyte or a multibyte buffer, doing
67065	the looking-at here without the string-to-multibyte, we'll get a
67066	match.  We did not get a match with the call in and if we were in
67067	a unibyte buffer, but we presumably never are.
67068
670692018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67070
67071	Fix calculation in gnus-update-group-mark-positions
67072
67073	* lisp/gnus/gnus-group.el (gnus-update-group-mark-positions):
67074	Rewrite a call to string-to-multibyte that didn't even work.
67075	After the rewrite it gives the correct result and should allow
67076	people to customise Gnus group process mark positions (but that's
67077	a pretty obscure feature).
67078
670792018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67080
67081	Removed outdated comment from nnweb.el
67082
67083	* lisp/gnus/nnweb.el (nnweb-insert-html): Removed ten year old
67084	comment from Stefan about string-as-multibyte.
67085
670862018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67087
67088	Rewrite Gnus calls to compat function mm-multibyte-p
67089
670902018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67091
67092	Rewrite string-as-unibyte/string-as-multibyte logic in nnmail
67093
67094	* lisp/gnus/nnmail.el (nnmail-insert-xref): Rewrite
67095	string-as-unibyte/string-as-multibyte logic and confirm that the
67096	result is the same in both multibyte and unibyte buffers after the
67097	change.
67098
670992018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67100
67101	Remove call to string-as-unibyte from nnmail
67102
67103	* lisp/gnus/nnmail.el (nnmail-parse-active): Remove call to
67104	string-as-unibyte; the alist before and after the change are
67105	`equal' to each other, so it should presumably have no impact.
67106
671072018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67108
67109	Remove calls to string-as-unibyte from nnir.el
67110
67111	* lisp/gnus/nnir.el (nnir-get-active): Remove two calls to
67112	string-as-unibyte from code that seems cargo-culted from Gnus
67113	functions where it is not needed, so it's presumably not needed
67114	here, either.
67115
671162018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67117
67118	Remove call to string-as-unibyte in gnus-start.el
67119
67120	* lisp/gnus/gnus-start.el (gnus-read-newsrc-el-file): Remove
67121	string-as-unibyte call, which appears not to do anything much in
67122	modern Emacsen.
67123
671242018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67125
67126	Remove call to string-as-unibyte from gnus-start.el
67127
67128	* lisp/gnus/gnus-start.el (gnus-update-active-hashtb-from-killed):
67129	Remove a string-as-unibyte call here, which appears not to be
67130	necessary: I'm able to complete over non-ASCII names both before
67131	and after.
67132
671332018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67134
67135	Modernise a Gnus function a bit
67136
67137	* lisp/gnus/gnus-start.el (gnus-update-active-hashtb-from-killed):
67138	Modernise code a bit.
67139
671402018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67141
67142	Remove two string-as-unibyte in gnus-srvr.el
67143
67144	* lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): We do not
67145	seem to need the string-as-unibyte here: We read a multibyte
67146	string from the *nntpd* buffer and then decode it later, and this
67147	apparently by some strange magic leads to the correct results in
67148	my test cases.
67149
671502018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67151
67152	Fix a `string-to-multibyte' in Gnus
67153
67154	* lisp/gnus/gnus-art.el (gnus-request-article-this-buffer): The
67155	original article buffer is multibyte, and we're inserting into the
67156	article buffer, which is also multibyte, so the `string-to-multibyte'
67157	here should be unnecessary?
67158
671592018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67160
67161	Fix a string-as-unibyte in Gnus
67162
67163	* lisp/gnus/gnus-art.el (gnus-article-browse-html-parts): Get rid
67164	of a string-as-unibyte.
67165
671662018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67167
67168	Further shr line folding/link continuation tweaks
67169
67170	* lisp/net/shr.el (shr-fill-line): Tweak the link continuations
67171	further when folding lines.
67172
671732018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67174
67175	Indent after transforming for loop into do/while
67176
671772018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67178
67179	Make call-process work if exec-path is nil
67180
67181	* src/lread.c (openp): If exec-path is nil, no files would be
67182	found to execute (bug#30564).
67183
67184	Test cases:
67185
67186	 (let ((exec-path ()))
67187	   (call-process "/bin/ls" nil (current-buffer)))
67188
67189	This would previously fail, but now works.
67190
67191	 (let ((exec-path '("/bin/")))
67192	   (call-process "ls" nil (current-buffer)))
67193
67194	This worked, and still works.
67195
671962018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67197
67198	Make erc-current-logfile work with explicit parameter
67199
67200	* lisp/erc/erc-log.el (erc-current-logfile): This function
67201	apparently refers to buffer-local variables, so switch to the
67202	buffer given before calculating the file name (bug#16111).
67203
672042018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67205
67206	Tweak shr link text property adjustments when folding
67207
67208	* lisp/net/shr.el (shr-fill-line): If a link starts at the first
67209	word on a new folded line, then don't copy the link properties to
67210	the newline inserted.
67211
672122018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67213
67214	* lisp/erc/erc-button.el (erc-button-search-url): Doc fix.
67215
67216	erc build fix for the previous patch
67217
672182018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67219
67220	erc-truncate-buffer-on-save doc string clarification
67221
67222	* lisp/erc/erc-log.el (erc-truncate-buffer-on-save): Doc
67223	clarification (bug#18207) since "truncate" is a word used by
67224	erc-truncate to mean something else.
67225
672262018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67227
67228	Ignore all-whitespace topics in erc
67229
67230	* lisp/erc/erc.el (erc-cmd-TOPIC): Ignore all-whitespace topics
67231	(bug#25153).
67232
672332018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67234
67235	Rename url-button-google-url
67236
67237	* lisp/erc/erc-button.el (erc-button-search-url): Renamed from
67238	url-button-google-url (bug#25717).  Suggested by Andrew Robbins.
67239	(erc-button-alist): Use it.
67240
672412018-04-14  John Goerzen  <jgoerzen@complete.org>  (tiny change)
67242
67243	Subject: Fix problem with erc buffer renames after reconnect
67244
67245	* lisp/erc/erc.el (erc-generate-new-buffer-name): Solve problem
67246	with renamed buffers on different servers after reconnect (bug#30639).
67247
672482018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67249
67250	(libxml-parse-html-region): Make DISCARD-COMMENTS obsolete
67251
67252	* lisp/subr.el (libxml-parse-xml-region)
67253	(libxml-parse-html-region): Make DISCARD-COMMENTS obsolete.
67254
67255	* src/xml.c (Flibxml_parse_html_region)
67256	(Flibxml_parse_xml_region): Don't mention DISCARD-COMMENTS, since
67257	it's now no longer part of the advertised signature (bug#27178).
67258
672592018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67260
67261	Revert "Revert "Give better errors in signing failures in Gnus""
67262
67263	This reverts commit 42141da5b0885b199636524c1e57f08ee1723aea.
67264
67265	This patch was reverted in error.  I misinterpreted an email saying that
67266	it didn't work, but apparently it worked as it should.
67267
672682018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67269
67270	Make DISCARD-COMMENTS in `libxml-parse-{html,xml}-region' obsolete
67271
67272	* doc/lispref/text.texi (Parsing HTML/XML): Mention that
67273	discard-comments is obsolete.
67274
67275	* lisp/xml.el (xml-remove-comments): New function (bug#27178).
67276
67277	* src/xml.c (Flibxml_parse_html_region): Clarify what
67278	DISCARD-COMMENTS actually does, and say that the parameter is
67279	obsolete.
67280	(Flibxml_parse_xml_region): Ditto.
67281
672822018-04-14  Glenn Morris  <rgm@gnu.org>
67283
67284	Merge from origin/emacs-26
67285
67286	5a6bb01 (origin/emacs-26) Fix building etc/DOC in the MSDOS port
67287	274c979 * lisp/select.el (gui-get-selection): Doc fix.
67288	ad731b0 ; * doc/lispref/display.texi (Temporary Displays): Fix typos.
67289	f1450e9 Complete documentation of syntax flags by adding `c'
67290	6bdcaec Fix typos and minor wording issues in ELisp manual
67291	febac27 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/emac...
67292	6c2e21e Avoid segfault in processes of type 'pipe'
67293	60e10c5 Remove repetitions in documentation strings
67294	208e752 * lisp/image.el (image-load-path): Doc fix.
67295	92e0fd8 ; * etc/NEWS: Remove a FIXME.  (Bug#31122)
67296
67297	Conflicts:
67298		etc/NEWS
67299
673002018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67301
67302	Change the default From style to `angles' and make obsolete
67303
67304	* lisp/gnus/message.el (message-from-style): Make `angles' the
67305	default (bug#29309) and mark as obsolete.
67306
67307	* lisp/mail/sendmail.el (mail-from-style): Ditto.
67308
673092018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67310
67311	Make image-mode respect `imagemagick-types-inhibit'
67312
67313	* lisp/image-mode.el (image--imagemagick-wanted-p): New function
67314	(bug#29584).
67315	(image-toggle-display-image): Use it to see whether we want to use
67316	imagemagick.
67317
673182018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67319
67320	Revert "Give better errors in signing failures in Gnus"
67321
67322	This reverts commit ef2059e877d104bfe5abd24df05bb09c7295e4fa.
67323
67324	Apparently this test triggered both when signing was successful
67325	and unsuccessful (bug#26298).
67326
673272018-04-14  Lars Ingebrigtsen  <larsi@gnus.org>
67328
67329	Tweak mailcap precedence so that Emacs values are heeded better
67330
67331	* lisp/net/mailcap.el (mailcap-parse-mailcaps): Place entries from
67332	system-wide mailcap files after the values that are distributed
67333	with Emacs, and the ones from ~/.mailcap before.
67334	(mailcap-parse-mailcap): Take an optional `after' parameter to
67335	achieve that.
67336	(mailcap-add-mailcap-entry): Ditto.
67337
673382018-04-14  Tino Calancha  <tino.calancha@gmail.com>
67339
67340	Subject: Fix circular dependency for mm-decode
67341
67342	* lisp/gnus/mm-decode.el: Do not require shr.el at the top
67343	of the file; `mm-shr' already requires shr.el in its body, and
67344	this function is the only `mm-convert-shr-links' caller (Bug#31151).
67345
673462018-04-13  Basil L. Contovounesios  <contovob@tcd.ie>
67347
67348	Do not destructively modify interprogram paste
67349
67350	* lisp/simple.el (kill-new, current-kill): Non-destructively reverse list
67351	returned by interprogram-paste-function. (bug#31097)
67352
673532018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67354
67355	Don't bind image commands on eww non-image links
67356
67357	* lisp/net/eww.el (eww-link-keymap): Only inherit the normal shr
67358	keymap.
67359	(eww-image-link-keymap): New keymap with the image bindings.
67360	(eww-tag-a): Use the appropriate one on links (bug#30148).
67361
673622018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67363
67364	Move utility function to mm-util.el
67365
67366	* lisp/gnus/mm-util.el (mm-images-in-region-p): Move from
67367	mm-decode.el and renamed, since it is generally useful.
67368
673692018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67370
67371	Make the url file: handler be less clever
67372
67373	* doc/misc/url.texi (file/ftp): Remove mention of the
67374	url-directory-index-file variable, which is no longer consulted.
67375
67376	* lisp/url/url-file.el (url-file-build-filename): Remove the DWIM
67377	code from the file: handler (bug#30195): It would look for
67378	index.html in a directory if we asked it to fetch the directory.
67379	Determining what to do in a directory should be left up to the
67380	programs that use this low-level library.  If the library decides
67381	to load a different file than we specified, then things start
67382	falling apart, as demonstrated by this bug report.
67383
673842018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67385
67386	Don't bind image commands on non-image links in Gnus
67387
67388	* lisp/gnus/mm-decode.el (mm--images-in-region-p): New utility
67389	function.
67390	(mm-convert-shr-links): Only use the shr image map on links that
67391	contain images.  This avoids binding commands like `r' on links
67392	that don't need it.
67393
673942018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67395
67396	Revert "Add colors to faces that lack them."
67397
67398	This reverts commit 16748a5f6bd57ec0967ecb5e14ffe8af5f43d888.
67399
67400	From the discussion on the ding mailing list, I said:
67401
67402	I think the colours should be reverted back to what they were before the
67403	change.  Normal text should be white on black (if you have a dark
67404	background), and colours should be used to emphasise or de-emphasise
67405	certain text.  Following that principle, normal Gnus groups should be
67406	white, not ... er...  what are they now?  Teal?
67407
674082018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67409
67410	Tweak the fonts applied to shr indentation
67411
67412	* lisp/net/shr.el (shr-fill-line): Don't use fonts (especially
67413	link fonts) over indentation, because that's ugly..
67414
674152018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67416
67417	Further tweak point placement on gnus-summary-select-article-buffer
67418
67419	* lisp/gnus/gnus-sum.el (gnus-summary-select-article-buffer):
67420	Place point in the empty space between headers and body.
67421
674222018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67423
67424	Tweak point placement in *Group* on `Q' exit
67425
67426	* lisp/gnus/gnus-sum.el (gnus-summary-exit-no-update): When
67427	exiting the summary buffer with `Q', move point to the next unread
67428	group (which is the same thing that happens on `q' exit.)
67429
674302018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67431
67432	Tweak point placement in gnus-summary-select-article-buffer
67433
67434	* lisp/gnus/gnus-sum.el (gnus-summary-select-article-buffer):
67435	Tweak where point is placed because when the user selects the
67436	article buffer, it's probably to cite something or click on
67437	something, and not do anything with the headers.
67438
674392018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67440
67441	Compute erc line lengths correctly for utf-8 (etc.)
67442
67443	* lisp/erc/erc-backend.el (erc-split-line): Fold the lines
67444	according to octet length, not the number of characters (bug#23047).
67445
674462018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67447
67448	Clean up some defvoo doc strings
67449
67450	* lisp/gnus/nndiary.el: Remove "*" from doc strings from defvoo
67451	elements (bug#23392).
67452
67453	* lisp/gnus/nndir.el: Ditto
67454
67455	* lisp/gnus/nndoc.el: Ditto.
67456
67457	* lisp/gnus/nnrss.el: Ditto.
67458
67459	* lisp/gnus/nnspool.el: Ditto.
67460
67461	* lisp/gnus/nntp.el: Ditto.
67462
674632018-04-13  Eric Abrahamsen  <eric@ericabrahamsen.net>
67464
67465	Further fix to eieio-persistent
67466
67467	* lisp/emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
67468	  Make handling of hash tables and vectors recursive. This is
67469	  necessary because the write process, in `eieio-override-prin1' is
67470	  also recursive. With any luck, this will be the last fix of its
67471	  kind. If that's true, cherry-pick to Emacs 26.2 later on.
67472
674732018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67474
67475	Make nnimap parse pathological spam headers better
67476
67477	* lisp/gnus/nnimap.el (nnimap-transform-headers): Unfold certain
67478	pathological IMAP headers more correctly (bug#25502).  Perhaps
67479	this function should be re-implemented.
67480
674812018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67482
67483	Fix syntax error in emacs-mime.texi in last check-in
67484
674852018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67486
67487	Prefer settings from ~/.mailcap over system and Emacs settings
67488
67489	* doc/misc/emacs-mime.texi (mailcap): Document the variable and
67490	how mailcap chooses which viewer to use.
67491
67492	* lisp/net/mailcap.el (mailcap-prefer-mailcap-viewers): New variable.
67493	(mailcap-mime-info): Use it.
67494
674952018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67496
67497	Fix bug in shr-urlify introduced in previous patch
67498
67499	* lisp/net/shr.el (shr-urlify): Not all URLs have domains, so
67500	check for that before doing IDNA.
67501
675022018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67503
67504	Make shr support inline <div>s
67505
67506	* lisp/net/shr.el (shr-tag-div): Support display: inline; for
67507	<div>, since that's a very common thing (bug#25588).
67508
675092018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67510
67511	Notify the user a bit more before clicking IDNA links
67512
67513	* lisp/net/shr.el (shr-urlify): Show the puny-encoded domain name
67514	in the mouseover string (bug#25600).
67515
675162018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67517
67518	(nnimap-sequence): Add comment
67519
67520	* lisp/gnus/nnimap.el (nnimap-sequence): Add comment.
67521
675222018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67523
67524	(url-http): Ensure that the referrer is all-ASCII
67525
67526	* lisp/url/url-http.el (url-http): Ensure that the referrer is all-ASCII.
67527
675282018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67529
67530	gnutls.el now needs punycode
67531
67532	* lisp/net/gnutls.el (puny): Require punycode.
67533
675342018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67535
67536	Make Unicode domain names work again in URL after recent changes
67537
67538	* lisp/net/gnutls.el (open-gnutls-stream): IDNA-encode hostnames
67539	before passing them on to gnutls for verification.
67540
67541	* lisp/net/network-stream.el (network-stream-open-starttls): Ditto.
67542
67543	* lisp/url/url-http.el (url-http--get-referer): Be IDNA-aware.
67544	(url-http-create-request): Don't de-Unicodify host names, because
67545	they may be IDNA names (that are later encoded).
67546
67547	* lisp/url/url-util.el (url-domain): Be IDNA-aware when doing
67548	domain name computations.
67549
675502018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67551
67552	Update defcustom version for last patch to url-vars.el
67553
67554	* lisp/url/url-vars.el (url-lastloc-privacy-level): Update
67555	defcustom version.
67556
675572018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67558
67559	Use a separate history for the eww prompt
67560
67561	* lisp/net/eww.el (eww-prompt-history): A separate history
67562	variable for the interactive eww prompt.
67563	(eww): Use it.
67564
675652018-04-13  Michael Albinus  <michael.albinus@gmx.de>
67566
67567	Fix Bug#30246
67568
67569	* lisp/auth-source.el (auth-source-secrets-search): Do not
67570	suppress creation.
67571	(auth-source-secrets-create): Implement it.  (Bug#30246)
67572
67573	* lisp/net/secrets.el (secrets-debug): Set default to nil.
67574
67575	* test/lisp/auth-source-tests.el (secrets): Require it.
67576	(auth-source-test-secrets-create-secret): New test.
67577
675782018-04-13  Peder O. Klingenberg  <peder@klingenberg.no>
67579
67580	Change gnutls-verify-error to be first-match
67581
67582	* doc/misc/url.texi (Customization): Describe the new user
67583	option url-lastloc-privacy-level.
67584
67585	* lisp/net/eww.el (eww-render): Set url-current-lastloc to the
67586	url we are rendering, to get the referer header right on
67587	subsequent requests.
67588
67589	* lisp/url/url-http.el (url-http--get-referer): New function
67590	to determine which referer to send, if any, considering the
67591	users privacy settings and the target url we are visiting.
67592	(url-http-referer): New variable keeping track of the referer
67593	computed by url-http--get-referer
67594	(url-http-create-request): Use url-http-referer instead of the
67595	optional argument to set up the referer header.  Leave
67596	checking of privacy settings to url-http--get-referer.
67597	(url-http): Set up url-http-referer by using
67598	url-http--get-referer.
67599
67600	* lisp/url/url-queue.el (url-queue): New struct member
67601	context-buffer for keeping track of the context a queued job
67602	started from.
67603	(url-queue-retrieve): Store the current buffer in the queue
67604	object.
67605	(url-queue-start-retrieve): Make sure url-retrieve is called
67606	in the context of the original buffer, if available.
67607
67608	* lisp/url/url-util.el (url-domain): New function to determine
67609	the domain of a given URL.
67610
67611	* lisp/url/url-vars.el (url-current-lastloc): New variable to
67612	keep track of the desired "last location" (referer header).
67613	(url-lastloc-privacy-level): New custom setting for more
67614	fine-grained control over how lastloc (referer) is sent to
67615	servers (Bug#27012).
67616
676172018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67618
67619	Make #anchors work again in eww
67620
67621	* lisp/net/eww.el (eww-render): When we have a #link link, then
67622	url.el will say that we have a redirect to a non-#link link, so
67623	get the anchor before url.el mangles the URL (bug#28441).
67624	(eww-display-html): ... and don't get it here, because it's gone
67625	by now.
67626
67627	Test URL: http://www.gnu.org/s/hyperbole/#summary
67628
676292018-04-13  Robert Pluim  <rpluim@gmail.com>
67630
67631	Doc fix after previous gnutls patch
67632
67633	* lisp/net/gnutls.el (gnutls-verify-error): Mention that the
67634	matching is first-match (bug#29977).
67635
676362018-04-13  Robert Pluim  <rpluim@gmail.com>
67637
67638	Change gnutls-verify-error to be first-match
67639
67640	* lisp/net/gnutls.el (gnutls-boot-parameters): Convert to
67641	first-match for gnutls-verify-error rather than any-match
67642	(bug#29977).
67643
676442018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67645
67646	Mention the new `shr-selected-link' face
67647
67648	Clean up the double Gnus section
67649
676502018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67651
67652	When opening external links in eww, blink the link
67653
67654	* lisp/net/eww.el (eww-follow-link): Ditto.
67655
67656	* lisp/net/shr.el (shr-selected-link): New face (bug#25096).
67657	(shr--blink-link): New function to blink links.
67658	(shr--current-link-region): New utility function.
67659	(shr-browse-url): Use it to blink external links.
67660
67661	Blinking the link allows the user to get immediate feedback that the
67662	action has been performed.  Opening the external browser may take a
67663	while, and may not be obvious that is going on.
67664
676652018-04-13  Lars Ingebrigtsen  <larsi@gnus.org>
67666
67667	Tweak nnimap sequence numbers to avoid reuse
67668
67669	* lisp/gnus/nnimap.el (nnimap-sequence): Start the sequence at a
67670	higher number to avoid reusing the sequence number used by
67671	`open-network-stream' (bug#30022).
67672
676732018-04-13  martin rudalics  <rudalics@gmx.at>
67674
67675	* lisp/gnus/gnus-art.el (gnus-article-prepare): Fix previous commit,
67676	in which selecting the article window is not necessary (bug#25526).
67677
676782018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67679
67680	Remove unused local variable
67681
676822018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67683
67684	Treat 302 redirects as if they were 303 redirects
67685
67686	* lisp/url/url-http.el (url-http-parse-headers): Treat 302 as 303,
67687	since this is what the standards recommend these days (bug#25703).
67688	See https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#3xx_Redirection
67689
676902018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67691
67692	Make eww render <select> elements again
67693
67694	* lisp/net/eww.el (eww-tag-select): Actually render <select>
67695	elements (bug#25703).
67696
676972018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67698
67699	<label> shouldn't introduce a line break
67700
67701	* lisp/net/shr.el (shr-tag-label): Remove so that labels don't
67702	break lines (because they shouldn't: They're usually part of a
67703	selection interface) (bug#30557).
67704
677052018-04-12  Katsumi Yamaoka  <yamaoka@jpl.org>
67706
67707	* lisp/gnus/gnus-art.el (gnus-article-prepare): Make sure the article
67708	begins with the top of the header (bug#25526).
67709
677102018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67711
67712	Tweak the eww readability function
67713
67714	* lisp/net/eww.el (eww-highest-readability): Require that the
67715	readable bit is at least 100 words (bug#30445).
67716
677172018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67718
67719	(dom-texts): Don't return contents of <script> as text
67720
67721	From: Lars Ingebrigtsen <larsi@gnus.org>
67722
67723	* lisp/dom.el (dom-texts): Don't return contents of <script> as
67724	text, because it isn't and makes reasoning about textual parts
67725	more difficult.
67726
677272018-04-12  Basil L. Contovounesios  <contovob@tcd.ie>
67728
67729	Support list of default values in completing-read-multiple
67730
67731	* lisp/emacs-lisp/crm.el (completing-read-multiple):
67732	Consider head of DEF argument when specified as a list,
67733	as per completing-read-default. (bug#30072)
67734
677352018-04-12  Jonathan Marten  <jjm@keelhaul.me.uk>  (tiny change)
67736
67737	From: Lars Ingebrigtsen <larsi@gnus.org>
67738
67739	* lisp/gnus/nnimap.el (nnimap-login): Allow anonymous logins
67740	(bug#24704).
67741
677422018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67743
67744	Default message-forward-as-mime to nil
67745
67746	* doc/misc/gnus.texi (Summary Mail Commands): Ditto.
67747
67748	* doc/misc/message.texi (Forwarding): Note the new default.
67749
67750	* lisp/gnus/message.el (message-forward-as-mime): Default to nil
67751	since it's been reported that many recipients can't read MIME
67752	digest forwards (bug#24878).
67753
677542018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67755
67756	Load w3m in Gnus if required
67757
67758	* lisp/gnus/gnus-art.el (gnus-article-show-images): Ensure that
67759	w3m is loaded if the user requests that we use it.
67760
677612018-04-12  Tim Landscheidt  <tim@tim-landscheidt.de>
67762
67763	Don't autoload function from w3m
67764
67765	* lisp/gnus/gnus-art.el (w3m-toggle-inline-images): Don't use
67766	autoload for packages that may not be installed (bug#25604).
67767
677682018-04-12  Oleg Pykhalov  <go.wigust@gmail.com>
67769
67770	From: Lars Ingebrigtseb <larsi@gnus.org>
67771
67772	* lisp/gnus/gnus-sum.el (gnus-summary-limit-to-score): Allow limit
67773	to articles that have a score below the stated number, too
67774	(bug#30356).
67775
677762018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67777
67778	message-forward-as-mime doc clarification
67779
67780	* lisp/gnus/message.el (message-forward-as-mime): Doc
67781	clarification (bug#27714).
67782
677832018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67784
67785	message-forward-ignored-headers doc clarification
67786
67787	* lisp/gnus/message.el (message-forward-ignored-headers): Doc
67788	clarification (bug#27715).
67789
677902018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67791
67792	Restore point in summary buffer after sorting
67793
67794	* lisp/gnus/gnus-sum.el (gnus-summary-sort): Keep point on the
67795	current article when sorting (bug#30615).
67796
677972018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67798
67799	nil is no longer an allowed value for mm-inline-text-html
67800
67801	* doc/misc/emacs-mime.texi (Display Customization): Remove the doc
67802	for the nil case of mm-inline-text-html.
67803
67804	* doc/misc/mh-e.texi (HTML): Ditto.
67805
67806	* lisp/gnus/mm-view.el (mm-inline-text-html): If no
67807	mm-text-html-renderer is specified, just insert the raw text
67808	instead of erroring out (bug#30870).
67809
678102018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67811
67812	Ensure that non-QRESYNC nnimap can proceed after a QRESYNC fail
67813
67814	* lisp/gnus/nnimap.el (nnimap-update-info): If we don't have a
67815	start-article in the non-QRESYNC case, then the start has to be 1
67816	(bug#23241).
67817
678182018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67819
67820	Make it possible to exit Gnus without saving .newsrc.eld
67821
67822	* lisp/gnus/gnus-start.el (gnus-save-newsrc-file): Don't error out
67823	here so that we can proceed with shutting down Gnus without saving
67824	the .newsrc.eld file when it has been updated externally (bug#23761).
67825
678262018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67827
67828	Make nnml save the .overview file when used as an expiry target
67829
67830	* lisp/gnus/nnmail.el (nnmail-expiry-target-group): Always pass in
67831	the `last' parameter to the acceptance function so that backends
67832	like nnml save the .overview file (bug#24499).  This may slow down
67833	some use cases.
67834
678352018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67836
67837	Clarify Gnus doc string
67838
67839	* lisp/gnus/gnus-cite.el (gnus-article-fill-cited-article):
67840	Clarify doc string (bug#24578).
67841
678422018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67843
67844	Elide XEmacs-relevant comment
67845
67846	* lisp/gnus/gnus-cite.el (gnus-article-fill-cited-article): Remove
67847	mention of XEmacs, since we no longer support XEmacs.
67848
678492018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67850
67851	Make message-simplify-recipients obsolete
67852
67853	* lisp/gnus/message.el (message-simplify-recipients)
67854	(message-recipients-without-full-name): Made obsolete since
67855	Message now simplifies all addresses by default.
67856
678572018-04-12  Lars Ingebrigtsen  <larsi@gnus.org>
67858
67859	Remove repetitions from recipient addresses in Message
67860
67861	* lisp/gnus/message.el (message--alter-repeat-address): New function.
67862	(message-get-reply-headers): Use it to remove repetitions on the
67863	form "foo@bar.com" <foo@bar.com>.
67864
678652018-04-11  Damien Cassou  <damien@cassou.me>
67866
67867	* etc/NEWS: Fix entry regarding automatic encryption of (Bug#31124) messages
67868
678692018-04-11  Shanavas M  <shanavas@disroot.org>
67870
67871	Add tests for buffer-base-buffer function (Bug#30905)
67872
67873	* test/src/buffer-tests.el (test-buffer-base-buffer-indirect)
67874	(test-buffer-base-buffer-non-indirect): New tests for
67875	`buffer-base-buffer'.
67876
678772018-04-11  Paul Eggert  <eggert@cs.ucla.edu>
67878
67879	make-dist: fix bug with top-level ChangeLog
67880
67881	Problem reported by Glenn Morris in:
67882	https://lists.gnu.org/r/emacs-devel/2018-04/msg00307.html
67883	* make-dist (top_level_ChangeLog): New var.  Use it to link
67884	top-level ChangeLog only when desired.
67885
678862018-04-11  Alain Schneble  <a.s@realize.ch>
67887
67888	Support port number in Gnus X-Message-SMTP-Method header
67889
67890	* lisp/gnus/message.el (message-multi-smtp-send-mail): Try to parse
67891	service as port number.  If it succeeds, use parsed number, else use
67892	supplied service name as before (bug#24653).  (This only matters
67893	on some operating systems.)
67894
678952018-04-11  Daniel Dehennin  <daniel.dehennin@baby-gnu.org>
67896
67897	Gnus Group Mail Spliting on mailing-list headers
67898
67899	* doc/misc/gnus.texi: Document the new `list' split abbreviation and
67900	`match-list' group parameter (bug#25346).
67901
67902	* lisp/gnus/gnus-mlspl.el: Use the `list' abbreviation when the new
67903	`match-list' group parameter is set to `t'.
67904	The split regexp is modified to match either `@` or `.` as domain
67905	separator to comply with RFC2919 IDs too.
67906
67907	* lisp/nnmail.el: Add new `list' split abbreviation matching common
67908	mailing-list headers.
67909
679102018-04-11  Lars Ingebrigtsen  <larsi@gnus.org>
67911
67912	Tweak previous patch to respect quiet next group selection again
67913
67914	* lisp/gnus/gnus-sum.el (gnus-summary-next-article): Tweak
67915	previous patch to be quieter if the user has requested `quietly'
67916	next group selection.
67917
679182018-04-11  Lars Ingebrigtsen  <larsi@gnus.org>
67919
67920	Display "No more ... articles" on `n' in Gnus
67921
67922	* lisp/gnus/gnus-sum.el (gnus-summary-next-article): Display the
67923	"No more"... messages if gnus-auto-select-next is nil and the user
67924	has default messaging levels (bug#25582).
67925
679262018-04-11  Łukasz Stelmach  <l.stelmach@samsung.com>  (tiny change)
67927
67928	Rung new-news-hook from `M-g' in the Gnus summary buffer
67929
67930	* lisp/gnus/gnus-group.el (gnus-group-get-new-news-this-group):
67931	Run `gnus-after-getting-new-news-hook' when doing `M-g' in the
67932	summary buffer, too (bug#25892).  This makes `M-g' in both group
67933	and summary buffers work more similar.
67934
679352018-04-11  Noam Postavsky  <npostavs@users.sourceforge.net>
67936
67937	Give better errors in signing failures in Gnus
67938
67939	* lisp/gnus/mml1991.el (mml1991-epg-sign): Give better error
67940	messages when signing fails (bug#26298).
67941
67942	* lisp/gnus/mml2015.el (mml2015-epg-sign): Ditto.
67943
679442018-04-11  Lars Ingebrigtsen  <larsi@gnus.org>
67945
67946	Remove the Gmane backend from nnir
67947
67948	* lisp/gnus/nnir.el (nnir-engines): Remove Gmane backend, which no
67949	longer exists.
67950	(nnir-method-default-engines): Ditto.
67951	(nnir-run-gmane): Removed function (bug#28234).
67952
679532018-04-11  Basil L. Contovounesios  <contovob@tcd.ie>
67954
67955	Heed switch-function argument in gnus-user-agent
67956
67957	* lisp/gnus/gnus-msg.el (gnus-msg-mail): Heed switch-action argument
67958	when falling back to message-user-agent because Gnus is not
67959	running (bug#28992).
67960
679612018-04-11  Lars Ingebrigtsen  <larsi@gnus.org>
67962
67963	Always rescale images in gnus-rescale-image
67964
67965	* lisp/gnus/gnus-util.el (gnus-rescale-image): Rescale images even
67966	if we don't have a visible article buffer.  Reported and fix
67967	suggested by Kevin Brubeck Unhammer.
67968
679692018-04-11  Michael Albinus  <michael.albinus@gmx.de>
67970
67971	Some minor Tramp changes
67972
67973	* lisp/net/tramp-sh.el (tramp-get-ls-command-with):
67974	New defun, replacing ...
67975	(tramp-get-ls-command-with-dired)
67976	(tramp-get-ls-command-with-quoting-style)
67977	(tramp-get-ls-command-with-w-option): Removed.
67978	(tramp-do-file-attributes-with-ls)
67979	(tramp-do-directory-files-and-attributes-with-stat)
67980	(tramp-sh-handle-insert-directory): Adapt callees.
67981
67982	* lisp/net/tramp-smb.el (tramp-smb-errors):
67983	Add "NT_STATUS_CONNECTION_RESET".
67984
679852018-04-11  Lars Ingebrigtsen  <larsi@gnus.org>
67986
67987	Don't kill off LibreOffice when selecting the next article in Gnus
67988
67989	* lisp/gnus/mm-decode.el (mm-keep-viewer-alive-types): Add the
67990	media types that LibreOffice uses to the list, since we don't want
67991	to kill off LibreOffice willy-nilly.
67992
679932018-04-11  Lars Ingebrigtsen  <larsi@gnus.org>
67994
67995	Doc fix for mm-keep-viewer-alive-types
67996
67997	* lisp/gnus/mm-decode.el (mm-keep-viewer-alive-types): Clarify doc
67998	string.
67999
680002018-04-10  Glenn Morris  <rgm@gnu.org>
68001
68002	Merge from origin/emacs-26
68003
68004	c267421 (tag: emacs-26.1-rc1, origin/emacs-26) ; * ChangeLog.3: Update.
68005	aa77415 * etc/AUTHORS: Regenerate.
68006	c8ffca5 * lisp/files.el (kept-new-versions): Improve documentation st...
68007	3a798f6 Fix a minor mistake in the ELisp manual
68008	6afa868 ; * src/dispextern.h (struct it): Fix a typo in a comment.
68009	5659b2f * lisp/files.el (find-file-literally): Doc fix.
68010	9b24a79 Fix typos in doc strings
68011
680122018-04-10  Glenn Morris  <rgm@gnu.org>
68013
68014	Merge from origin/emacs-26
68015
68016	f674c89 ; * ChangeLog.3: Update.
68017	80d868e * lisp/emacs-lisp/inline.el: Clarify apparent typos
68018	9f54f28 ; * lisp/auth-source.el (auth-sources): Update the :version tag.
68019
680202018-04-09  Paul Eggert  <eggert@cs.ucla.edu>
68021
68022	make-dist: check exit statuses more carefully
68023
68024	* make-dist: Do a better job checking for subprocess failure.
68025
680262018-04-08  Tino Calancha  <tino.calancha@gmail.com>
68027
68028	Preserve case in query-replace undo
68029
68030	If the user query and replaces 'foo' with 'BAR', then
68031	undo must comeback to 'foo', not to 'FOO' (Bug#31073).
68032	* lisp/replace.el (perform-replace): Bind nocasify to non-nil
68033	value during undo/undo-all actions.
68034	* test/lisp/replace-tests.el (query-replace-undo-bug31073): Add test.
68035
680362018-04-08  Michael Albinus  <michael.albinus@gmx.de>
68037
68038	* lisp/auth-source.el (auth-source-secrets-search): Fix docstring.
68039
680402018-04-08  nitishch  <nitishchandrachinta@gmail.com>  (tiny change)
68041
68042	Fix python-shell-send-defun at start of buffer (Bug#30822)
68043
68044	* lisp/progmodes/python.el (python-shell-send-defun): Handle the case
68045	when we hit the beginning of buffer.
68046
680472018-04-07  Philipp Stephani  <phst@google.com>
68048
68049	Document that 'make-process' mixes the output streams
68050
68051	* doc/lispref/processes.texi (Asynchronous Processes):
68052	* src/process.c (Fmake_process): Document that standard error is mixed
68053	with standard output if STDERR is nil.
68054
68055	* test/src/process-tests.el (make-process/mix-stderr): New unit test.
68056
680572018-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
68058
68059	* lisp/simple.el (undo-auto--undoable-change): Avoid leak
68060
680612018-04-07  Marco Wahl  <marcowahlsoft@gmail.com>
68062
68063	Fix goto page from page directory (Bug#28909)
68064
68065	* lisp/textmodes/page-ext.el (pages-directory-goto): Use the
68066	interactive spec as in `occur-mode-goto-occurrence'.
68067
680682018-04-07  Michal Nazarewicz  <mina86@mina86.com>
68069
68070	Handle quotation marks and apostrophes in ‘sgml-quote’
68071
68072	To be able to use text in an HTML argument, quotation marks need
68073	to be replaced with an appropriate character reference.  Make
68074	‘sgml-quote’ do that.
68075
68076	While at it, fix entiteis not being unquoted if they lack closing
68077	semicolon (e.g. ‘&amp’) occuring at the very end of a region.
68078	Even though unlikely, make ‘sgml-quote’ handle this scenario.
68079
68080	* lisp/textmodes/sgml-mode.el (sgml-quote): Handle quotation marks and
68081	apostrophes.  Match entities lacking semicolon at the end of regions.
68082	* test/lisp/textmodes/sgml-mode-tests.el (sgml-quote-works): New test
68083	case for ‘sgml-quote’ function.
68084
680852018-04-06  Michael Albinus  <michael.albinus@gmx.de>
68086
68087	Make dbus.el fitter for Emacs configured --without-dbus
68088
68089	* lisp/net/dbus.el (dbus-error, dbus-debug): Define if not exist.
68090
68091	* test/lisp/net/secrets-tests.el: Revert 51c8369fa2 and 79a3ad9592.
68092
680932018-04-05  Tino Calancha  <tino.calancha@gmail.com>
68094
68095	Require secrets.el iif Emacs has dbusbind support
68096
68097	* test/lisp/net/secrets-tests.el: Require secrets.el if
68098	and only if, Emacs has been compiled with dbusbind support.
68099
681002018-04-05  Tino Calancha  <tino.calancha@gmail.com>
68101
68102	Run secrets suite test when Emacs has dbus support
68103
68104	* test/lisp/net/secrets-tests.el (secrets-test00-availability)
68105	(secrets-test01-sessions, secrets-test02-collections)
68106	(secrets-test03-items, secrets-test04-search): Skip test
68107	unless Emacs is compiled with dbus support.
68108
681092018-04-05  Michael Albinus  <michael.albinus@gmx.de>
68110
68111	Add tests for secrets.el
68112
68113	* lisp/net/secrets.el (secrets-lock-collection): New defun.
68114	(secrets-search-items, secrets-create-item): Fix structure of :dict-entry.
68115
68116	* test/lisp/net/secrets-tests.el: New package.
68117
681182018-04-05  Glenn Morris  <rgm@gnu.org>
68119
68120	* test/lisp/gnus/message-tests.el (message-all-epg-keys-available-p):
68121	Add skip condition.
68122
681232018-04-04  Tino Calancha  <tino.calancha@gmail.com>
68124
68125	Honor dired-create-destination-dirs if copying/renaming >1 files
68126
68127	Check `dired-create-destination-dirs' when the user wants to
68128	copy/rename several files.
68129	* lisp/dired-aux.el (dired-do-create-files):
68130	Call `dired-maybe-create-dirs' right before bind `into-dir' (Bug#30624).
68131	* test/lisp/dired-aux-tests.el (dired-test-bug30624): Add test.
68132
681332018-04-04  Paul Eggert  <eggert@cs.ucla.edu>
68134
68135	Move password-word-equivalents defn to mule-conf
68136
68137	* lisp/international/mule-conf.el (password-word-equivalents):
68138	Move here ...
68139	* lisp/simple.el (password-word-equivalents): ... from here.
68140	This variable belongs in an i18n file somewhere, not in simple.el,
68141	since it’s i18n-related.  Also, having it in simple.el tickles
68142	Emacs performance bugs on some platforms when developers visit
68143	simple.el.  Problem reported by Drew Adams in, for example:
68144	https://lists.gnu.org/r/emacs-devel/2018-04/msg00124.html
68145
681462018-04-04  Juri Linkov  <juri@linkov.net>
68147
68148	* lisp/isearch.el (isearch-pre-command-hook): Default to shift-translated
68149
68150	move commands that can be enabled by the `isearch-move' property `enabled',
68151	and disabled by `disabled'.
68152	(search-exit-option): Doc fix.
68153	(isearch-post-command-hook): Check for isearch-forward.
68154	https://lists.gnu.org/archive/html/emacs-devel/2018-03/msg00438.html
68155
681562018-04-04  Juri Linkov  <juri@linkov.net>
68157
68158	* lisp/shell.el (shell-mode): Check if buffer has a live process.
68159
68160	(Bug#31028)
68161
681622018-04-04  Damien Cassou  <damien@cassou.me>
68163
68164	Detect if a message can be encrypted and add an MML tag
68165
68166	* lisp/gnus/message.el (message-all-recipients): Return a list of
68167	pairs, one for each recipient in To, Cc, Bcc.
68168	(message-all-epg-keys-available-p): Check that there is a public key
68169	in epg for each recipient of the current message.
68170	(message-sign-encrypt-if-all-keys-available): Add MML tag to sign and
68171	encrypt current message if there is a public key for every recipient
68172	in current message.
68173
68174	* test/lisp/gnus/message-tests.el (message-all-recipients): Test for
68175	message-all-recipients.
68176
681772018-04-04  Ted Zlatanov  <tzz@lifelogs.com>
68178
68179	* lisp/auth-source.el (auth-sources): Allow sexp customization type
68180
681812018-04-04  Paul Eggert  <eggert@cs.ucla.edu>
68182
68183	Improve GC+Cairo workaround
68184
68185	Suggested by Eli Zaretskii (Bug#20890#31).
68186	* src/font.h (font_data_structures_may_be_ill_formed): New function.
68187	* src/ftfont.c (ftfont_close):
68188	* src/ftcrfont.c (ftcrfont_close): Use it.
68189
681902018-04-04  Glenn Morris  <rgm@gnu.org>
68191
68192	Merge from origin/emacs-26
68193
68194	3109d2b (origin/emacs-26) ; * lisp/ldefs-boot.el: Update.
68195	86825c4 * etc/NEWS: Remove temporary markup.
68196	737d0a2 * Update etc/AUTHORS
68197	fbd03ba * ChangeLog.3: Update
68198	56794ac Fix Bug#31022
68199	a231c33 Update "Calendrical Calculations" cites
68200	1527235 ; * doc/lispref/compile.texi (Compilation Functions): Fix wor...
68201	b07decd ; * doc/lispref/compile.texi (Compilation Functions): Fix typo
68202	a64c11a Fix term.el rendering following a window resize (Bug#30544)
68203	1e6f09a * files.el (auto-save-visited-mode): Don't prompt for filenames.
68204	eb8b13f ; * etc/NEWS: Improve the entry about pinentry.el removal.
68205	52501ec Quote a few backticks in docstrings.
68206
68207	Conflicts:
68208		etc/NEWS
68209		lisp/ldefs-boot.el
68210
682112018-04-03  Martin Rudalics  <rudalics@gmx.at>
68212
68213	* etc/NEWS: Mention that output of 'help-for-help' is searchable now
68214
682152018-04-03  Stefan Monnier  <monnier@iro.umontreal.ca>
68216
68217	* lisp/vc/emerge.el: Use lexical-binding
68218
68219	Replace all `(lambda ...) with closures.  Use inhibit-read-only.
68220	(emerge-mode): Use define-minor-mode.
68221	(emerge-setup, emerge-setup-with-ancestor):
68222	Don't use 'run-hooks' on local var.
68223	(emerge-files, emerge-files-with-ancestor):
68224	Don't use 'add-hook' on local var.
68225	(emerge-convert-diffs-to-markers): Remove unused var 'B-point-min'.
68226	Simplify 'offset'.
68227	(emerge--current-beg, emerge--current-end): New macros.
68228	(emerge-select-version): Pass 'diff-vector' to the function it calls.
68229	Change all callers to use it instead of dyn-bound vars.
68230
682312018-04-03  Paul Eggert  <eggert@cs.ucla.edu>
68232
68233	Pacify GCC when --enable-profiling
68234
68235	* src/conf_post.h (PROFILING): Undef if not on a platform that
68236	supports it.  Simplify uses accordingly.
68237	* src/emacs.c (etext) [PROFILING]:
68238	Declare at top level to avoid GCC warning.
68239
682402018-04-03  Alan Mackenzie  <acm@muc.de>
68241
68242	Put combine-change-calls around comment-region and uncomment-region
68243
68244	* lisp/newcomment.el (comment-combine-change-calls): New buffer local
68245	variable.
68246	(uncomment-region-default-1, comment-region-default-1): Functions renamed from
68247	uncomment-region-default and comment-region-default.
68248	(uncomment-region-default, comment-region-default): New functions, which call
68249	the above either enclosed in combine-change-calls or not.
68250
682512018-04-03  Alan Mackenzie  <acm@muc.de>
68252
68253	Introduce new macro combine-change-calls
68254
68255	This macro is a bit like combine-after-change-calls, but also works with a
68256	non-null before-change-functions.  It suppresses the operation of the change
68257	hooks on a possibly large sequence of buffer modifications, replacing them
68258	with a single invocation of before-change-functions at the start, and a single
68259	invocation of after-change-functions at the end.
68260
68261	* lisp/subr.el (undo--combining-change-calls): New variable.
68262	(combine-change-calls-1, undo--wrap-and-run-primitive-undo): New functions.
68263	(combine-change-calls): New macro.
68264
68265	* doc/lispref/text.texi (Change Hooks): Document combine-change-calls.
68266
68267	* etc/NEWS: Add an entry under "Lisp Changes" for combine-change-calls.
68268
682692018-04-03  Paul Eggert  <eggert@cs.ucla.edu>
68270
68271	Work around GC+Cairo bug
68272
68273	Workaround suggested by Robert Pluim (Bug#20890#13).
68274	* src/ftfont.c (ftfont_close) [USE_CAIRO]:
68275	Do nothing if GC is in progress.
68276
682772018-04-03  Paul Eggert  <eggert@cs.ucla.edu>
68278
68279	Port FC_COLOR change to older fontconfig
68280
68281	Problem reported by John ff in:
68282	https://lists.gnu.org/r/emacs-devel/2018-04/msg00058.html
68283	* src/ftfont.c (ftfont_spec_pattern) [!FC_COLOR]:
68284	Don’t use FC_COLOR on older fontconfigs that don’t have it.
68285
682862018-04-03  Robert Pluim  <rpluim@gmail.com>
68287
68288	Ignore color fonts when using Xft
68289
68290	* src/font.c (syms_of_font): New configuration variable
68291	xft-ignore-color-fonts, default t.
68292	* src/ftfont.c (ftfont_spec_pattern): Tell fontconfig to ignore
68293	color fonts if xft-ignore-color-fonts is t.  (Bug#30874, Bug#30045)
68294	* etc/NEWS: Document xft-ignore-color-fonts.
68295
682962018-04-03  Eli Zaretskii  <eliz@gnu.org>
68297
68298	Document custom-variable-history
68299
68300	* etc/NEWS:
68301	* doc/lispref/minibuf.texi (Minibuffer History): Document
68302	'custom-variable-history'.
68303
683042018-04-02  Alan Mackenzie  <acm@muc.de>
68305
68306	* lisp/progmodes/cc-defs.el:
68307	* lisp/progmodes/cc-engine.el:
68308	* lisp/progmodes/cc-langs.el:
68309	* lisp/progmodes/cc-vars.el: Comment the use of "a\\`"
68310
683112018-04-02  Paul Eggert  <eggert@cs.ucla.edu>
68312
68313	Clarify eq on floats
68314
68315	* doc/lispref/objects.texi (Equality Predicates):
68316	Say that two floats with the same values might or might not be eq.
68317
683182018-04-02  Gemini Lasswell  <gazally@runbox.com>
68319
68320	Fix Testcover bug in handling of vectors containing dotted lists
68321
68322	* lisp/emacs-lisp/testcover.el (testcover-analyze-coverage-compose):
68323	Handle dotted lists. Fix bug#30909.
68324	* test/lisp/emacs-lisp/testcover-resources/testcases.el:
68325	(dotted-list-in-vector-bug-30909): New test case.
68326	(quotes-within-backquotes-bug-25316, dotted-backquote)
68327	(quoted-backquote, backquoted-vector-bug-25316)
68328	(vector-in-macro-spec-bug, backquoted-dotted-alist): Change
68329	docstrings to mention analyzing code instead of reinstrumenting
68330	it.
68331
683322018-04-02  Charles A. Roelli  <charles@aurox.ch>
68333
68334	Add a history variable for `read-variable'
68335
68336	* src/minibuf.c (Fread_variable): Use the history variable when
68337	calling Fcompleting_read.
68338	(syms_of_minibuf): New history variable, custom-variable-history.
68339
683402018-04-02  Alan Mackenzie  <acm@muc.de>
68341
68342	Optimize c-syntactic-skip-backward, c-determine-limit for large comment blocks
68343
68344	* lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Remove.
68345	(c-syntactic-skip-backward): Remove the surrounding c-self-bind-state-cache.
68346	Use the standard function c-literal-start in place of the special purpose
68347	c-ssb-lit-begin.  With a suitable skip-chars argument (the usual case),
68348	optimize by invoking c-backward-syntactic-ws to move back over comment blocks.
68349	(c-determine-limit-get-base): Inovke an early c-backward-syntactic-ws.
68350	(c-determine-limit): Use c-forward-comment whilst moving forward.  Cope with
68351	an empty position stack whilst looking for non-literals (bug fix).  In the
68352	recursive call, double try-size to prevent Lisp stack overflow.
68353
683542018-04-02  Simona Arizanova  <simonikane@hotmail.fr>  (tiny change)
68355
68356	Make help-for-help window searchable (Bug#19655)
68357
68358	* lisp/help.el (help-map): Map C-s to new function
68359	search-forward-help-for-help.
68360	(help-for-help-internal): In doc-string add entry for C-s.
68361	(search-forward-help-for-help): New function.
68362
683632018-04-01  Stefan Monnier  <monnier@iro.umontreal.ca>
68364
68365	* lisp/emacs-lisp/debug.el (debug): Don't hang upon error in initial-frame.
68366
683672018-04-01  Paul Eggert  <eggert@cs.ucla.edu>
68368
68369	Further improve advice in make-tarball.txt
68370
68371	See comments by Glenn Morris in:
68372	https://lists.gnu.org/r/emacs-devel/2018-03/msg00968.html
68373	* admin/make-tarball.txt: Bring back refcard advice.
68374
683752018-04-01  Paul Eggert  <eggert@cs.ucla.edu>
68376
68377	Port make-dist to tar 1.27 and earlier
68378
68379	Problem reported by Glenn Morris in:
68380	https://lists.gnu.org/r/emacs-devel/2018-03/msg00984.html
68381	* make-dist: Use --sort=name only if Tar supports it.
68382
683832018-04-01  Glenn Morris  <rgm@gnu.org>
68384
68385	* lisp/nxml/nxml-mode.el (nxml-sexp-element-flag): Set :version.
68386
683872018-04-01  Glenn Morris  <rgm@gnu.org>
68388
68389	Merge from origin/emacs-26
68390
68391	af1624f * lisp/net/shr.el (shr-browse-url): Doc fix.  (Bug#30957)
68392	3a451bd ; * doc/emacs/msdos.texi: Fix wording of last change.
68393	3bc1e2f Mention `key-description' as inverse of `kbd' (Bug#30942)
68394	e50196e Document return value of pcase (Bug#30425)
68395	8a2466f * doc/emacs/macos.texi: Tweak grammar and capitalization.
68396	9db62bf Distinguish free from non-free OSes
68397	ff49d86 * doc/emacs/misc.texi (Amusements): Avoid non-printing charac...
68398	5bab671 Fix xrefs in pdf Emacs manual
68399
684002018-04-01  Eli Zaretskii  <eliz@gnu.org>
68401
68402	Followup to last change
68403
68404	* etc/NEWS: Mark nxml-sexp-element-flag entry as not needing
68405	documentation updates.
68406
68407	* lisp/nxml/nxml-mode.el (nxml-mode, nxml-forward-balanced-item):
68408	Doc fixes.
68409
684102018-04-01  Jostein Kjønigsen  <jostein@kjonigsen.net>
68411
68412	Change the default value of nxml-sexp-element-flag.
68413
68414	* lisp/nxml/nxml-mode.el (nxml-sexp-element-flag): Default value
68415	is now t.
68416
684172018-04-01  Eli Zaretskii  <eliz@gnu.org>
68418
68419	Minor copyedits of completion-at-point-functions documentation
68420
68421	* lisp/minibuffer.el (completion-at-point-functions):
68422	* doc/lispref/minibuf.texi (Completion in Buffers): Fix wording
68423	and filling.
68424
684252018-03-31  Eli Zaretskii  <eliz@gnu.org>
68426
68427	Support more separators in rmail-retry-failure
68428
68429	* lisp/mail/rmail.el (mail-unsent-separator): Add a form of
68430	separator that confused rmail-retry-failure due to additional
68431	lines that start with a series of dashes.  (Bug#30965)
68432
684332018-03-30  Paul Eggert  <eggert@cs.ucla.edu>
68434
68435	Improve doc for web pages; reproducible tarballs
68436
68437	* admin/make-tarball.txt: Make the tarballs more reproducible.
68438	Fix instructions for web pages as best I can (they are still
68439	incomplete).
68440	* make-dist (default_gzip): Add --no-name for gzip.
68441	(taropt): Add options to make the build more reproducible.
68442
684432018-03-30  Paul Eggert  <eggert@cs.ucla.edu>
68444
68445	Do not assume --with-file-notification
68446
68447	* src/fileio.c (report_file_notify_error) [!USE_FILE_NOTIFY]: Omit.
68448
684492018-03-30  Paul Eggert  <eggert@cs.ucla.edu>
68450
68451	Centralize Bug#30931 fix
68452
68453	* src/marker.c (detach_marker): New function.
68454	* src/editfns.c (save_restriction_restore):
68455	* src/insdel.c (signal_before_change): Use it.
68456
684572018-03-30  Noam Postavsky  <npostavs@gmail.com>
68458
68459	Fix another case of freed markers in the undo-list (Bug#30931)
68460
68461	* src/alloc.c (free_marker): Remove.
68462	* src/editfns.c (save_restriction_restore):
68463	* src/insdel.c (signal_before_change): Detach the markers from the
68464	buffer when we're done with them instead of calling free_marker on
68465	them.
68466	* test/src/editfns-tests.el (delete-region-undo-markers-1)
68467	(delete-region-undo-markers-2): New tests.
68468
684692018-03-30  Eli Zaretskii  <eliz@gnu.org>
68470
68471	Add Capital sharp s to 2 more Latin input methods
68472
68473	* lisp/leim/quail/latin-pre.el ("latin-prefix"):
68474	* lisp/leim/quail/latin-post.el ("latin-postfix"): Support Capital
68475	sharp s.  (Bug#30988)
68476
684772018-03-30  Eli Zaretskii  <eliz@gnu.org>
68478
68479	Fix C-p and C-n when wrap-prefix is too wide
68480
68481	* src/xdisp.c (move_it_in_display_line_to): Avoid looping in
68482	previous/next-line when wrap-prefix is set to a too-wide
68483	stretch of whitespace.  (Bug#30432)
68484
684852018-03-30  Alan Third  <alan@idiocy.org>
68486
68487	Simplify represented filename handling (bug#30800)
68488
68489	* src/nsfns.m (ns_set_represented_filename): Move function from
68490	nsterm.m and set represented filename directly.
68491	* src/nsterm.h (ns_set_represented_filename): Remove definition.
68492	* src/nsterm.m (ns_set_represented_filename): Move function to
68493	nsfns.m.
68494	(x_free_frame_resources): Remove references to represented_frame.
68495	(sendEvent): Don't set represented filename.
68496
684972018-03-30  Michael Albinus  <michael.albinus@gmx.de>
68498
68499	Improve Tramp test performance
68500
68501	* lisp/net/tramp.el (tramp-backtrace): Improve performance.
68502
68503	* test/lisp/net/tramp-tests.el (tramp-test03-file-name-host-rules):
68504	Skip for older Emacsen.
68505	(tramp-test39-utf8): Remove instrumentation.
68506
685072018-03-29  Paul Eggert  <eggert@cs.ucla.edu>
68508
68509	Fix CHECK_ALLOCATED_AND_LIVE abort during GC
68510
68511	* src/editfns.c (save_restriction_restore):
68512	Wait for the GC to free the temporary markers (Bug#30931).
68513
685142018-03-29  Paul Eggert  <eggert@cs.ucla.edu>
68515
68516	Prefer \... to control chars in .el literals
68517
685182018-03-29  Noam Postavsky  <npostavs@gmail.com>
68519
68520	* src/xterm.c (x_make_frame_visible): Fix typo in previous change.
68521
685222018-03-29  Noam Postavsky  <npostavs@gmail.com>
68523
68524	Don't wait for visible frames to become visible
68525
68526	For discussion, see thread starting at
68527	https://lists.gnu.org/archive/html/emacs-devel/2018-03/msg00807.html.
68528	* src/xterm.c (x_make_frame_visible): Check FRAME_VISIBLE_P before
68529	calling x_wait_for_event.
68530
685312018-03-29  Paul Eggert  <eggert@cs.ucla.edu>
68532
68533	New experimental variable read-integer-overflow-as-float.
68534
68535	Following a suggestion by Eli Zaretskii (Bug#30408#46).
68536	* etc/NEWS: Mention it.
68537	* src/lread.c (syms_of_lread): Add it.
68538	(read1): Treat out-of-range integers as floats if
68539	read-integer-overflow-as-float is non-nil.
68540
685412018-03-29  Paul Eggert  <eggert@cs.ucla.edu>
68542
68543	Lisp reader now checks for integer overflow
68544
68545	* doc/lispref/numbers.texi (Integer Basics), etc/NEWS:
68546	Document this.
68547	* src/lisp.h (S2N_IGNORE_TRAILING, S2N_OVERFLOW_TO_FLOAT):
68548	New constants.
68549	* src/lread.c (string_to_number): Change trailing bool arg to
68550	integer argument with flags, to support S2N_OVERFLOW_TO_FLOAT.
68551	All uses changed.
68552	* test/src/editfns-tests.el (read-large-integer): New test.
68553
685542018-03-29  Eli Zaretskii  <eliz@gnu.org>
68555
68556	Support Capital sharp S in German input methods
68557
68558	* lisp/leim/quail/latin-post.el ("german-postfix"):
68559	* lisp/leim/quail/latin-pre.el ("german-prefix"): Add Capital
68560	sharp S.  (Bug#30988)
68561
68562	* etc/NEWS: Mention the support of Capital sharp S.
68563
685642018-03-29  Michael Albinus  <michael.albinus@gmx.de>
68565
68566	Fix Bug#30946
68567
68568	* doc/misc/tramp.texi (Multi-hops): Mention host name checks.
68569
68570	* lisp/net/tramp.el (tramp-set-syntax, tramp-dissect-file-name)
68571	(tramp-debug-message, tramp-handle-shell-command):
68572	* lisp/net/tramp-adb.el (tramp-adb-handle-shell-command):
68573	* lisp/net/tramp-archive.el (tramp-archive-file-name-handler)
68574	(tramp-archive-dissect-file-name):
68575	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler): Adapt callees.
68576
68577	* lisp/net/tramp-compat.el (tramp-compat-user-error): Move defsubst ---
68578
68579	* lisp/net/tramp-sh.el (tramp-compute-multi-hops): Check for proper
68580	host names in multi-hop.  (Bug#30946)
68581
68582	* lisp/net/tramp.el (tramp-user-error): ... here.  Make it a defun.
68583
68584	* test/lisp/net/tramp-tests.el (tramp-test03-file-name-host-rules):
68585	New test.
68586
685872018-03-29  Stefan Monnier  <monnier@iro.umontreal.ca>
68588
68589	* src/keyboard.c (record_char, read_key_sequence): Copy raw events
68590
685912018-03-28  Paul Eggert  <eggert@cs.ucla.edu>
68592
68593	Test notify handlers only if file notification
68594
68595	* test/lisp/files-tests.el:
68596	(files-file-name-non-special-notify-handlers):
68597	Skip if file notification is not available.
68598
685992018-03-28  Paul Eggert  <eggert@cs.ucla.edu>
68600
68601	Port recent org-clock fix to POSIX time_t
68602
68603	* lisp/org/org-clock.el (org-clock-special-range):
68604	Don't assume support for time_t values less than 0, or less than
68605	-2**31 for that matter (Bug#27736).
68606
686072018-03-28  Paul Eggert  <eggert@cs.ucla.edu>
68608
68609	Update from Gnulib
68610
68611	This incorporates:
68612	2018-03-28 time_rz: fix workaround for Mac OS X 10.6 infloop
68613	* m4/time_rz.m4: Copy from Gnulib.
68614
686152018-03-28  Alan Mackenzie  <acm@muc.de>
68616
68617	Handle C++17's constexpr keyword in if statements
68618
68619	* lisp/progmodes/cc-engine.el (c-after-conditional): Test for matches to
68620	c-block-stmt-hangon-key.
68621
68622	* lisp/progmodes/cc-langs.el (c-block-stmt-hangon-kwds): New lang const.
68623	(c-block-stmt-hangon-key): New lang const/var matching any element of the
68624	above.
68625
686262018-03-28  Alan Mackenzie  <acm@muc.de>
68627
68628	Replace faulty non-matching regexp "\\<\\>" with "a\\`"
68629
68630	The regexp "\\<\\>", which is supposed never to match, actually matches, for
68631	instance, where a Chinese character is directly followed by an ASCII letter.
68632	So, replace it with "a\\`".
68633
68634	* lisp/progmodes/cc-defs.el (cc-fix, c-make-keywords-re)
68635	* lisp/progmodes/cc-engine.el (c-beginning-of-statement-1)
68636	(c-forward-<>-arglist-recur, c-forward-decl-or-cast-1)
68637	(c-looking-at-decl-block)
68638	* lisp/progmodes/cc-langs.el (c-assignment-op-regexp)
68639	(c-block-comment-ender-regexp, c-block-comment-start-regexp)
68640	(c-line-comment-start-regexp, c-doc-comment-start-regexp)
68641	(c-decl-start-colon-kwd-re, c-type-decl-prefix-key)
68642	(c-type-decl-operator-prefix-key, c-pre-id-bracelist-key)
68643	(c-enum-clause-introduction-re, c-nonlabel-token-2-key)
68644	* lisp/progmodes/cc-vars.el (c-noise-macro-with-parens-name-re)
68645	(c-make-noise-macro-regexps):
68646	Replace "\\<\\>" by "a\\`".
68647
686482018-03-28  Michael Albinus  <michael.albinus@gmx.de>
68649
68650	Remove unstable tags in Tramp
68651
68652	* test/lisp/net/tramp-tests.el (tramp-test39-utf8)
68653	(tramp-test39-utf8-with-stat, tramp-test39-utf8-with-perl)
68654	(tramp-test39-utf8-with-ls): Remove :unstable tag.
68655
686562018-03-28  Glenn Morris  <rgm@gnu.org>
68657
68658	Merge from origin/emacs-26
68659
68660	9bff405 (origin/emacs-26) * doc/misc/org.texi (Installation): Fix clo...
68661	613c9a5 Update Org to v9.1.9
68662	1b075a9 ; Fix some tiny doc typos
68663	441fe20 De-obsolete `if-let' and `when-let'
68664	8696038 * lisp/htmlfontify.el (hfy-begin-span-handler): Doc fix.
68665	930f7b1 * doc/lispref/functions.texi (Defining Functions): Improve in...
68666	95ccf50 Fix crash after frame is freed on macOS (bug#30800)
68667	45d0475 More manual editing
68668	2acb9f0 Minor manual changes changes
68669	d481cba * lisp/calculator.el (calculator-paste-decimals): Add version.
68670	7d6c7d0 ; Use GNU not Gnu in docs
68671	1bc4def More proofreading of the Emacs manual
68672
68673	Conflicts:
68674		doc/misc/org.texi
68675		etc/NEWS
68676		lisp/org/org-clock.el
68677
686782018-03-28  Michael Albinus  <michael.albinus@gmx.de>
68679
68680	Improve tramp--test-utf8
68681
68682	* test/lisp/net/tramp-tests.el (tramp--test-check-files):
68683	Encode string when testing environment variables.
68684	(tramp--test-utf8): Remove "TaiViet" test.
68685
686862018-03-28  Phillip Lord  <phillip.lord@russet.org.uk>
68687
68688	Reduce parallelism to Windows build
68689
68690	* admin/nt/dist-build/build-zips.sh: Reduce make parallelism to 2.
68691
686922018-03-27  Paul Eggert  <eggert@cs.ucla.edu>
68693
68694	Avoid using unportable integer in org-clock
68695
68696	* lisp/org/org-clock.el (org-clock--oldest-date): Avoid use of an
68697	integer outside portable Emacs range.  Go back to using a simple
68698	check, since decode-time should no longer infloop.
68699
687002018-03-27  Paul Eggert  <eggert@cs.ucla.edu>
68701
68702	Update from Gnulib
68703
68704	This incorporates:
68705	2018-03-26 time_rz: work around Mac OS X 10.6 infloop
68706	2018-03-20 euidaccess: Port to native Windows.
68707	* lib/euidaccess.c, lib/time_rz.c, m4/time_rz.m4: Copy from Gnulib.
68708
687092018-03-27  Stefan Monnier  <monnier@iro.umontreal.ca>
68710
68711	(benchmark-run-compiled): Make it work like 'benchmark-run' again
68712
68713	* lisp/emacs-lisp/benchmark.el (benchmark-run): Add special case for
68714	nil repetitions.
68715
687162018-03-27  Stefan Monnier  <monnier@iro.umontreal.ca>
68717
68718	(completion-at-point-functions): Improve doc
68719
687202018-03-27  Stefan Monnier  <monnier@iro.umontreal.ca>
68721
68722	(read_key_sewuence): Use POSN in second event when needed (bug#30955)
68723
68724	* src/keyboard.c (active_maps): Add arg 'second_event'.
68725	(read_key_sequence): Pass it.
68726
68727	* lisp/mouse.el (mouse--click-1-maybe-follows-link): Modify event in place.
68728
687292018-03-27  Stefan Monnier  <monnier@iro.umontreal.ca>
68730
68731	* lisp/mouse.el: Remove redundant ':group's.
68732
687332018-03-26  Glenn Morris  <rgm@gnu.org>
68734
68735	* test/lisp/emacs-lisp/bytecomp-tests.el
68736	(bytecomp-test-featurep-warnings): New.
68737
687382018-03-26  Stefan Monnier  <monnier@iro.umontreal.ca>
68739
68740	* lisp/emacs-lisp/benchmark.el (benchmark-run): Allow variable.
68741
68742	(benchmark-run): Allow `repetitions` to be a variable rather than a constant.
68743
687442018-03-26  Paul Eggert  <eggert@cs.ucla.edu>
68745
68746	Fix constant folding of overflows
68747
68748	This suppresses some byte-code optimizations that were invalid in
68749	the presence of integer overflows, because they meant that .elc
68750	files assumed the runtime behavior of the compiling platform, as
68751	opposed to the runtime platform.  Problem reported by Pip Cet in:
68752	https://lists.gnu.org/r/emacs-devel/2018-03/msg00753.html
68753	* lisp/emacs-lisp/byte-opt.el (byte-opt--portable-max)
68754	(byte-opt--portable-min): New constants.
68755	(byte-opt--portable-numberp, byte-opt--arith-reduce)
68756	(byte-optimize-1+, byte-optimize-1-): New functions.
68757	(byte-optimize-plus, byte-optimize-minus, byte-optimize-multiply)
68758	(byte-optimize-divide):	Avoid invalid optimizations.
68759	(1+, 1-): Use new optimizers.
68760	(byte-optimize-or, byte-optimize-cond): Simplify by using
68761	remq instead of delq and copy-sequence.
68762
687632018-03-26  Stefan Monnier  <monnier@iro.umontreal.ca>
68764
68765	Trivial fixes for last changes to package.el and marker.c
68766
68767	* lisp/emacs-lisp/package.el (package-quickstart): Add missing version.
68768	* src/marker.c (verify_bytepos): Fix typo.
68769
687702018-03-26  Stefan Monnier  <monnier@iro.umontreal.ca>
68771
68772	* lisp/emacs-lisp/package.el: New quickstart feature
68773
68774	(package--quickstart-pkgs): New var.
68775	(package-activate-1): Obey and fill it.
68776	(package-activate-all): New function.
68777	(package-initialize): Call it.
68778	Set package-initialized before activating the packages.
68779	(package-installed-p): Make it work before package.el is initialized in
68780	the case where min-version is not specified.
68781	(package-install, package-delete): Refresh the quickstart if applicable.
68782	(package-quickstart, package-quickstart-file): New vars.
68783	(package--quickstart-maybe-refresh, package-quickstart-refresh):
68784	New functions.
68785
68786	* lisp/startup.el (command-line): Use package-activate-all rather than
68787	package-initialize.
68788
68789	* doc/lispref/package.texi (Packaging Basics):
68790	* doc/emacs/package.texi (Package Installation):
68791	* doc/lispref/os.texi (Startup Summary): Refer to package-activate-all.
68792
687932018-03-26  Stefan Monnier  <monnier@iro.umontreal.ca>
68794
68795	* src/marker.c: Try and speed up byte<->char conversion with many markers.
68796
68797	When considering markers (to find a starting point for the conversion),
68798	typically one of the two bounds is nearby (coming from
68799	cached_(byte|char)pos) but the other is far (point-min or point-max),
68800	so change the exit condition so we stop as soon as *one* of the bounds
68801	is near.
68802
68803	(BYTECHAR_DISTANCE_INITIAL, BYTECHAR_DISTANCE_INCREMENT): New constants.
68804	(buf_charpos_to_bytepos, buf_bytepos_to_charpos): Use them to try and
68805	reduce the number of markers we consider.
68806
688072018-03-26  Michael Albinus  <michael.albinus@gmx.de>
68808
68809	Fix problem with trailing slash in Tramp
68810
68811	* lisp/net/tramp.el (tramp-handle-file-truename):
68812	* lisp/net/tramp-adb.el (tramp-adb-handle-file-truename):
68813	* lisp/net/tramp-sh.el (tramp-sh-handle-file-truename):
68814	Fix problem with trailing slash.
68815
68816	* test/lisp/net/tramp-tests.el (tramp-test21-file-links):
68817	Test also quoted directories.
68818
688192018-03-26  Phillip Lord  <phillip.lord@russet.org.uk>
68820
68821	Remove architecture dependent source downloads
68822
68823	* admin/nt/dist-build/build-dep-zips.py:
68824
688252018-03-25  Eric Skoglund  <eric@pagefault.se>
68826
68827	Make eshell/kill handle -<signal> and -<SIGNALNAME> (Bug#29156)
68828
68829	* lisp/eshell/esh-proc.el (eshell/kill): Handle the argument parsing
68830	and numeric conversion in function in order to parse -signal and
68831	-SIGNALNAME correctly.
68832	* doc/misc/eshell.texi (kill): Update docs to reflect new function
68833	behaviour.
68834	* etc/NEWS: Mention new eshell/kill behaviour.
68835
688362018-03-25  Noam Postavsky  <npostavs@gmail.com>
68837
68838	Allow `&rest' or `&optional' without following variable (Bug#29165)
68839
68840	This is sometimes convenient when writing macros, so that the empty
68841	variable case doesn't need to be handled specially.  Older versions of
68842	Emacs accepted this in some cases (especially the interpreter in Emacs
68843	25 and below was very accepting).
68844
68845	                            |   interpreted/compiled   |
68846	| arglist                   | 25 & earlier | 26  | 27  |
68847	|---------------------------+--------------+-----+-----|
68848	| (&rest)                   | y/n          | n/n | y/y |
68849	| (&rest &rest)             | y/n          | n/n | n/n |
68850	| (&rest &rest x)           | y/n          | n/n | n/n |
68851	| (&rest x &rest)           | y/n          | n/n | n/n |
68852	| (&rest x &rest y)         | y/n          | n/n | n/n |
68853	|---------------------------+--------------+-----+-----|
68854	| (&optional)               | y/n          | n/n | y/y |
68855	| (&optional &optional)     | y/n          | n/n | n/n |
68856	| (&optional x &optional)   | y/n          | n/n | n/n |
68857	| (&optional x &optional y) | y/y          | n/n | n/n |
68858	|---------------------------+--------------+-----+-----|
68859	| (&optional &rest)         | y/n          | n/n | y/y |
68860	| (&optional x &rest)       | y/n          | n/n | y/y |
68861	| (&optional &rest y)       | y/y          | n/n | y/y |
68862	|---------------------------+--------------+-----+-----|
68863	| (&rest &optional)         | y/n          | n/n | n/n |
68864	| (&rest &optional y)       | y/n          | n/n | n/n |
68865	| (&rest x &optional y)     | y/n          | n/n | n/n |
68866
68867	The values in the table above can be produced with the following code:
68868
68869	(with-current-buffer (get-buffer-create "*ck-args*")
68870	  (erase-buffer)
68871	  (dolist (arglist '((&rest)
68872	                     (&rest &rest)
68873	                     (&rest &rest x)
68874	                     (&rest x &rest)
68875	                     (&rest x &rest y)
68876	                     (&optional)
68877	                     (&optional &optional)
68878	                     (&optional x &optional)
68879	                     (&optional x &optional y)
68880	                     (&optional &rest)
68881	                     (&optional x &rest)
68882	                     (&optional &rest y)
68883	                     (&rest &optional)
68884	                     (&rest &optional y)
68885	                     (&rest x &optional y)))
68886	    (insert
68887	     (format "%c/%c\n"
68888	             (condition-case err
68889	                 (progn (funcall `(lambda ,arglist 'ok))
68890	                        ?y)
68891	               (error ?n))
68892	             (condition-case err
68893	                 (progn (byte-compile-check-lambda-list arglist)
68894	                        ?y)
68895	               (error ?n))))
68896	    (display-buffer (current-buffer))))
68897
68898	* src/eval.c (funcall_lambda):
68899	* lisp/emacs-lisp/bytecomp.el (byte-compile-check-lambda-list): Don't
68900	check for missing variables after `&rest' and `&optional'.
68901	* test/src/eval-tests.el (eval-tests--bugs-24912-and-24913)
68902	(eval-tests-accept-empty-optional-rest): Update tests accordingly.
68903	* etc/NEWS: Update announcement accordingly.
68904	* doc/lispref/functions.texi (Argument List): Update manual to
68905	indicate that variable names are optional.
68906
689072018-03-24  Vibhav Pant  <vibhavp@gmail.com>
68908
68909	Fix byte-optimize-memq incorrectly optimizing some memq forms.
68910
68911	* lisp/emacs-lisp/byte-opt.el (byte-optimize-memq): Call
68912	  byte-optimize-and only for memq forms that can be optimized, use
68913	  byte-optimize-predicate to optimize the final form.
68914
689152018-03-24  Vibhav Pant  <vibhavp@gmail.com>
68916
68917	Optimize certain memq forms during byte-compilation.
68918
68919	* lisp/emacs-lisp/byte-opt.el (byte-optimize-memq): New function.
68920	  Set the byte optimizer function for memq to byte-optimize-memq.
68921
689222018-03-24  Phillip Lord  <phillip.lord@russet.org.uk>
68923
68924	Reduce build load
68925
68926	* admin/nt/dist-build/build-zips.sh: Reduce parallelism to 8
68927
689282018-03-23  Glenn Morris  <rgm@gnu.org>
68929
68930	* lisp/emulation/viper.el (viper-set-hooks): Replace obsolete func.
68931
68932	* lisp/vc/vc.el (vc-initial-comment): Remove var unused since 23.2.
68933
689342018-03-23  Glenn Morris  <rgm@gnu.org>
68935
68936	Remove some unused gnus-registry variables
68937
68938	* lisp/gnus/gnus-registry.el (gnus-registry-clean-empty)
68939	(gnus-registry-use-long-group-names)
68940	(gnus-registry-max-track-groups, gnus-registry-entry-caching)
68941	(gnus-registry-trim-articles-without-groups):
68942	Remove variables labeled as obsolete since 23.4 that do nothing.
68943
689442018-03-23  Glenn Morris  <rgm@gnu.org>
68945
68946	Remove variables labeled as obsolete that do nothing
68947
68948	* lisp/allout.el (allout-passphrase-verifier-string)
68949	(allout-passphrase-hint-string):
68950	* lisp/w32-vars.el (w32-list-proportional-fonts):
68951	Remove variables that are unused since Emacs 23.x.
68952
689532018-03-23  Phillip Lord  <phillip.lord@russet.org.uk>
68954
68955	Limit build load
68956
68957	* admin/nt/dist-build/build-zips.sh: Limit build load.
68958
689592018-03-23  Phillip Lord  <phillip.lord@russet.org.uk>
68960
68961	Ensure configure is running if necessary
68962
68963	* admin/nt/dist-build/build-zips.sh: Check for missing Makefile.
68964
689652018-03-23  Glenn Morris  <rgm@gnu.org>
68966
68967	* lisp/progmodes/cc-langs.el: Silence compiler.
68968
689692018-03-23  Glenn Morris  <rgm@gnu.org>
68970
68971	Quieten lisp/obsolete compilation
68972
68973	* lisp/obsolete/vi.el (vi-mark-region):
68974	* lisp/obsolete/vip.el (vip-delete-backward-char): Silence compiler.
68975
689762018-03-23  Paul Eggert  <eggert@cs.ucla.edu>
68977
68978	Clarify syntax of radixed integers
68979
68980	* doc/lispref/numbers.texi (Integer Basics): Specify what digits
68981	are allowed in radixed integers, and that there is no initial sign
68982	or final period.
68983
689842018-03-23  Glenn Morris  <rgm@gnu.org>
68985
68986	Remove some declare-function stub definitions
68987
68988	* lisp/emulation/viper-cmd.el, lisp/emulation/viper-keym.el:
68989	* lisp/emulation/viper-util.el, lisp/net/newst-plainview.el:
68990	* lisp/net/newst-treeview.el, lisp/ps-def.el, lisp/vc/ediff.el:
68991	* lisp/vc/ediff-util.el, lisp/vc/ediff-wind.el:
68992	Remove stub declare-function definitions.
68993	It exists since Emacs 22.2, released 10 years ago.
68994	Most of these files are using even newer features, such as
68995	lexical-binding and cl-lib anyway, making the stubs pointless.
68996
689972018-03-23  Glenn Morris  <rgm@gnu.org>
68998
68999	Replace some uses of cl with cl-lib
69000
69001	* lisp/progmodes/idlw-toolbar.el: No need for cl.
69002	* lisp/progmodes/antlr-mode.el, lisp/progmodes/idlw-shell.el:
69003	* lisp/progmodes/idlwave.el: Replace cl with cl-lib.
69004
690052018-03-23  Glenn Morris  <rgm@gnu.org>
69006
69007	Replace cl in some obsolete files
69008
69009	* lisp/obsolete/assoc.el, lisp/obsolete/fast-lock.el:
69010	* lisp/obsolete/mouse-sel.el: No need for cl.
69011	* lisp/obsolete/lazy-lock.el, lisp/obsolete/pgg-gpg.el:
69012	* lisp/obsolete/pgg-parse.el, lisp/obsolete/pgg-pgp.el:
69013	* lisp/obsolete/pgg-pgp5.el, lisp/obsolete/pgg.el:
69014	* lisp/obsolete/sregex.el: Replace cl with cl-lib.
69015
690162018-03-23  Glenn Morris  <rgm@gnu.org>
69017
69018	cedet: replace cl with cl-lib
69019
69020	* lisp/cedet/ede/linux.el, lisp/cedet/semantic/decorate/mode.el:
69021	* lisp/cedet/semantic/wisent/comp.el: Replace cl with cl-lib.
69022	* lisp/cedet/cedet.el, lisp/cedet/mode-local.el:
69023	* lisp/cedet/ede/dired.el, lisp/cedet/ede/pmake.el:
69024	* lisp/cedet/ede/proj-comp.el, lisp/cedet/ede/proj-misc.el:
69025	* lisp/cedet/ede/proj-obj.el, lisp/cedet/ede/proj-prog.el:
69026	* lisp/cedet/ede/speedbar.el, lisp/cedet/semantic/analyze.el:
69027	* lisp/cedet/semantic/complete.el:
69028	* lisp/cedet/semantic/mru-bookmark.el, lisp/cedet/semantic/debug.el:
69029	* lisp/cedet/semantic/wisent/python.el:
69030	* lisp/cedet/srecode/compile.el, lisp/cedet/srecode/dictionary.el:
69031	* lisp/cedet/srecode/srt.el: No need for cl.
69032
690332018-03-23  Glenn Morris  <rgm@gnu.org>
69034
69035	gnus: replace cl with cl-lib
69036
69037	* lisp/gnus/gnus-agent.el, lisp/gnus/gnus-art.el:
69038	* lisp/gnus/gnus-async.el, lisp/gnus/gnus-cache.el:
69039	* lisp/gnus/gnus-demon.el, lisp/gnus/gnus-group.el:
69040	* lisp/gnus/gnus-icalendar.el, lisp/gnus/gnus-logic.el:
69041	* lisp/gnus/gnus-msg.el, lisp/gnus/gnus-picon.el:
69042	* lisp/gnus/gnus-registry.el, lisp/gnus/gnus-salt.el:
69043	* lisp/gnus/gnus-score.el, lisp/gnus/gnus-spec.el:
69044	* lisp/gnus/gnus-srvr.el, lisp/gnus/gnus-start.el:
69045	* lisp/gnus/gnus-sum.el, lisp/gnus/gnus-topic.el:
69046	* lisp/gnus/gnus-util.el, lisp/gnus/gnus-uu.el, lisp/gnus/gnus-win.el:
69047	* lisp/gnus/mail-source.el, lisp/gnus/mm-decode.el:
69048	* lisp/gnus/mm-encode.el, lisp/gnus/mm-url.el, lisp/gnus/mm-view.el:
69049	* lisp/gnus/mml-smime.el, lisp/gnus/mml.el, lisp/gnus/mml2015.el:
69050	* lisp/gnus/nnbabyl.el, lisp/gnus/nndoc.el, lisp/gnus/nneething.el:
69051	* lisp/gnus/nnheader.el, lisp/gnus/nnimap.el, lisp/gnus/nnmail.el:
69052	* lisp/gnus/nnmaildir.el, lisp/gnus/nnoo.el, lisp/gnus/nnrss.el:
69053	* lisp/gnus/nnspool.el, lisp/gnus/nntp.el, lisp/gnus/nnvirtual.el:
69054	* lisp/gnus/nnweb.el, lisp/gnus/spam.el: Replace cl with cl-lib.
69055	* lisp/gnus/canlock.el, lisp/gnus/gnus-bcklg.el:
69056	* lisp/gnus/gnus-cite.el, lisp/gnus/gnus-cloud.el:
69057	* lisp/gnus/gnus-draft.el, lisp/gnus/gnus-dup.el:
69058	* lisp/gnus/gnus-fun.el, lisp/gnus/gnus-html.el:
69059	* lisp/gnus/gnus-int.el, lisp/gnus/gnus-kill.el, lisp/gnus/gnus-ml.el:
69060	* lisp/gnus/gnus-mlspl.el, lisp/gnus/gnus-range.el:
69061	* lisp/gnus/gnus-undo.el, lisp/gnus/gnus-vm.el:
69062	* lisp/gnus/mm-partial.el, lisp/gnus/mm-uu.el, lisp/gnus/mml1991.el:
69063	* lisp/gnus/nnagent.el, lisp/gnus/nndiary.el, lisp/gnus/nndir.el:
69064	* lisp/gnus/nndraft.el, lisp/gnus/nnfolder.el, lisp/gnus/nngateway.el:
69065	* lisp/gnus/nnmairix.el, lisp/gnus/nnmbox.el, lisp/gnus/nnmh.el:
69066	* lisp/gnus/nnml.el, lisp/gnus/score-mode.el, lisp/gnus/smiley.el:
69067	No need for cl.
69068
690692018-03-23  Glenn Morris  <rgm@gnu.org>
69070
69071	* lisp/gnus/gnus-vm.el (vm-mode, vm-save-message):
69072	Declare rather than autoload.
69073
690742018-03-23  Paul Eggert  <eggert@cs.ucla.edu>
69075
69076	* src/process.c (Fsignal_process): Simplify.
69077
690782018-03-23  Paul Eggert  <eggert@cs.ucla.edu>
69079
69080	Fix too-large integer in Hg backend
69081
69082	* lisp/vc/vc-hg.el (vc-hg-state-fast):
69083	Don’t assume that 2**32 - 1 is representable as a fixnum.
69084
690852018-03-23  Paul Eggert  <eggert@cs.ucla.edu>
69086
69087	Avoid Fortran-style floating-point optimization
69088
69089	When optimizing arithmetic operations, avoid optimizations that
69090	are valid for mathematical numbers but invalid for floating-point.
69091	For example, do not optimize (+ 1 v 0.5) to (+ v 1.5), as they may
69092	not be the same due to rounding errors.  In general,
69093	floating-point numbers cannot be constant-folded, since that would
69094	make .elc files platform-dependent.
69095	* lisp/emacs-lisp/byte-opt.el (byte-optimize-associative-math):
69096	Do not optimize floats.
69097	(byte-optimize-nonassociative-math, byte-optimize-approx-equal)
69098	(byte-optimize-delay-constants-math, byte-compile-butlast)
69099	(byte-optimize-logmumble):
69100	Remove; no longer used.
69101	(byte-optimize-minus): Do not optimize (- 0 x) to (- x).
69102	(byte-optimize-multiply): Do not optimize (* -1 x) to (- x).
69103	(byte-optimize-divide): Do not optimize (/ x -1) to (- x).
69104	(logand, logior, logxor): Optimize with byte-optimize-predicate
69105	instead of with byte-optimize-logmumble.
69106	* test/lisp/emacs-lisp/bytecomp-tests.el:
69107	(byte-opt-testsuite-arith-data): Add a couple of test cases.
69108
691092018-03-23  Michael Albinus  <michael.albinus@gmx.de>
69110
69111	Instrument tramp-test39-utf8
69112
69113	* test/lisp/net/tramp-tests.el (tramp--test-expensive-test):
69114	Add the test name to the template.
69115	(tramp-test39-utf8): Instrument test.
69116
691172018-03-23  Glenn Morris  <rgm@gnu.org>
69118
69119	sql.el defcustom fixes
69120
69121	* lisp/progmodes/sql.el (sql-login-params): Update.
69122	Avoids type mismatch with postgres and sqlite login params.
69123	(sql-postgres-login-params): Bump version.
69124
691252018-03-23  Stefan Monnier  <monnier@iro.umontreal.ca>
69126
69127	Fix bug#30846, along with misc cleanups found along the way
69128
69129	* test/src/data-tests.el (data-tests-kill-all-local-variables): New test.
69130
69131	* src/buffer.c (swap_out_buffer_local_variables): Remove.
69132	Fuse the body of its loop into that of reset_buffer_local_variables.
69133	(Fkill_buffer, Fkill_all_local_variables): Don't call it any more.
69134	(reset_buffer_local_variables): Make sure the buffer's local binding
69135	is swapped out before removing it from the alist (bug#30846).
69136	Call watchers before actually killing the var.
69137
69138	* src/data.c (Fmake_local_variable): Simplify.
69139	Use swap_in_global_binding to swap out any local binding, instead of
69140	a mix of find_symbol_value followed by messing with where&found.
69141	Don't call swap_in_symval_forwarding since the currently swapped
69142	binding is never one we've modified.
69143	(Fkill_local_variable): Use swap_in_global_binding rather than messing
69144	with where&found to try and trick find_symbol_value into doing the same.
69145
69146	* src/alloc.c (mark_localized_symbol): 'where' can't be a frame any more.
69147
691482018-03-23  Stefan Monnier  <monnier@iro.umontreal.ca>
69149
69150	* src/alloc.c: Avoid O(N²) complexity when unchaining markers (bug#24548).
69151
69152	Unchain all dead markers with a single scan of the markers list,
69153	instead of calling the O(N) 'unchain_marker' N times.
69154
69155	(unchain_dead_markers): New function.
69156	(sweep_buffers): Use it.
69157	(gc_sweep): Sweep buffers before markers.
69158	(sweep_misc): Check that markers have been unchained when reclaiming them.
69159
691602018-03-23  Stefan Monnier  <monnier@iro.umontreal.ca>
69161
69162	Merge from origin/emacs-26
69163
69164	b8ebf5fb64 * src/lisp.h (struct Lisp_Buffer_Local_Value): Update comm...
69165	8c92a37cb4 * doc/emacs/trouble.texi: Fix location of `emacs-version' ...
69166	10b1f2fdd5 Explain more about (defvar foo) form (Bug#18059)
69167	68c2f336b1 * doc/lispref/buffers.texi (Buffer List): Fix grammar.
69168	7e720c6851 * doc/lispref/anti.texi (Antinews): Fix grammar.
69169	a6a821d29b * lisp/org/ob-lisp.el (org-babel-lisp-eval-fn): Tweak type.
69170
691712018-03-23  Robert Pluim  <rpluim@gmail.com>
69172
69173	Make update_autogen work in git worktrees
69174
69175	* admin/update_autogen: Make it work in a git worktree
69176
691772018-03-22  Glenn Morris  <rgm@gnu.org>
69178
69179	Quieten cl-lib related compiler warnings
69180
69181	* lisp/completion.el (cl-set-difference):
69182	* lisp/files.el (map-merge-with, map-merge):
69183	* lisp/emacs-lisp/radix-tree.el (map-apply): Declare.
69184	* lisp/emacs-lisp/thunk.el: Load cl-lib at run-time, not
69185	cl-macs at compile.
69186	* lisp/gnus/gnus-group.el: Load cl-lib at run-time, not cl at compile.
69187	* lisp/emacs-lisp/checkdoc.el, lisp/emacs-lisp/package.el
69188	* lisp/gnus/gnus-sum.el, lisp/gnus/message.el, lisp/net/shr.el:
69189	Load cl-lib at run-time.
69190	* lisp/gnus/mml-sec.el (mml-signencrypt-style)
69191	(mml-secure-cust-record-keys): Replace cl with cl-lib,
69192	and load it at run-time.
69193	* lisp/cedet/ede/linux.el, lisp/vc/vc-hg.el: Reorder requires.
69194
691952018-03-22  Stefan Monnier  <monnier@iro.umontreal.ca>
69196
69197	Try and fix the more obvious sources of bug#30635
69198
69199	* lisp/files.el (dir-locals-read-from-dir): Handle the easy cases
69200	without loading `map`.
69201
69202	* lisp/emacs-lisp/bytecomp.el: Don't require cl-lib at run-time.
69203	(byte-compile-and-folded): Avoid cl-every.
69204
692052018-03-22  Charles A. Roelli  <charles@aurox.ch>
69206
69207	Add new command vc-git-stash-delete
69208
69209	* lisp/vc/vc-git.el (vc-git-stash-delete): New command, in line with
69210	vc-git-stash-delete-at-point.
69211	(vc-git-extra-menu-map): Add menu entry.
69212
692132018-03-22  Paul Eggert  <eggert@cs.ucla.edu>
69214
69215	Fix byte-opt lists of pure functions etc.
69216
69217	This fixes a bug where a byte-compiler running on 64-bit Emacs
69218	optimized (lsh -1 -1) to #x1fffffffffffffff, an optimization
69219	that is incorrect for .elc files intended for either 32- or
69220	64-bit Emacs.  While I was in the neighborhood, I noticed other
69221	glitches in the lists of pure and side-effect-free functions, and
69222	fixed the errors that I found.
69223	* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns):
69224	Move some functions here from side-effect-and-error-free-fns,
69225	since they can now signal errors.  The affected functions are
69226	current-time-string, current-time-zone,
69227	line-beginning-position, line-end-position.  Rename langinfo
69228	to locale-info.  Add logcount.  Remove string-to-int.
69229	(side-effect-and-error-free-fns): Remove minibuffer-window, a
69230	function that can signal errors, and that is already in
69231	side-effect-free-fns.
69232	(pure-fns): Remove ash, lsh, and logb, since they are
69233	platform-dependent and .elc files should be
69234	platform-independent.  Add %, logand, logcount.  Sort.
69235	Clarify what is meant by “pure”.
69236
692372018-03-22  Paul Eggert  <eggert@cs.ucla.edu>
69238
69239	Port emacs-module-tests to 32-bit Emacs
69240
69241	Fix a portability bug when emacs-module-tests.el is byte-compiled
69242	with a 32-bit Emacs (where #x20000000 evaluates to a
69243	floating-point number) and then is run on a 64-bit Emacs (where
69244	the floating-point number causes a test failure).
69245	* test/src/emacs-module-tests.el (mod-test-sum-test):
69246	Don’t assume #x20000000 can be represented as an Emacs integer.
69247
692482018-03-22  Glenn Morris  <rgm@gnu.org>
69249
69250	Merge from origin/emacs-26
69251
69252	8ac621b (origin/emacs-26) Document DEFUN attributes
69253	16d0cc7 * etc/NEWS: Add an entry for auth-source-pass.
69254	cc1702f Fix the MSDOS build
69255	daa9e85 Improve warning and error messages
69256	7612dd1 Adjust eieio persistence tests for expected failure
69257	f0cf4dc Let eieio-persistent-read read what object-write has written
69258	40ad1ff Handle possible classtype values in eieio-persistent-read
69259	4ec935d Add new tests for eieio persistence
69260	47917d8 * lisp/gnus/gnus-cloud.el (gnus-cloud-synced-files): Fix doc ...
69261	e32f352 * lisp/ibuf-ext.el (ibuffer-never-search-content-mode): Fix t...
69262	5268f30 * doc/lispref/windows.texi (Selecting Windows): Fix a typo.
69263	143b485 * doc/lispref/internals.texi (Writing Emacs Primitives): Fix ...
69264	4ab4551 Firm up documentation of generalized variables
69265	a5bf099 Improve documentation of Auto-Revert mode
69266	ed05eaa Improvements in dired.texi
69267
69268	Conflicts:
69269		etc/NEWS
69270
692712018-03-22  Michael Albinus  <michael.albinus@gmx.de>
69272
69273	Fix commit c24c5dc4a4
69274
69275	* lisp/net/tramp.el (tramp-handle-substitute-in-file-name): Drop volume
69276	letter of localname substitution.  Reported by Chris Zheng
69277	<chriszheng99@gmail.com>.
69278
692792018-03-22  Michael Albinus  <michael.albinus@gmx.de>
69280
69281	Tag tramp-test39-utf8* as :unstable
69282
69283	* test/lisp/net/tramp-tests.el (tramp-test39-utf8)
69284	(tramp-test39-utf8-with-stat, tramp-test39-utf8-with-perl)
69285	(tramp-test39-utf8-with-ls): Tag the tests as :unstable.
69286
692872018-03-22  Michael Albinus  <michael.albinus@gmx.de>
69288
69289	Fix Bug#30904
69290
69291	* lisp/net/tramp.el (tramp-dissect-file-name): Adapt docstring.  (Bug#30904)
69292
692932018-03-21  Paul Eggert  <eggert@cs.ucla.edu>
69294
69295	Port data-tests-popcnt to 32-bit Emacs
69296
69297	* test/src/data-tests.el (data-tests-popcnt):
69298	Don’t assume Emacs integers can represent 32-bit quantities.
69299	Change to a simple and straightforward approach, since runtime
69300	performance is not important here.
69301
693022018-03-21  Glenn Morris  <rgm@gnu.org>
69303
69304	* lisp/play/fortune.el (fortune-in-buffer): Revert previous nonsense.
69305
693062018-03-21  Charles A. Roelli  <charles@aurox.ch>
69307
69308	Provide completion in vc-git-stash-* commands
69309
69310	* lisp/vc/vc-git.el (vc-git-stash-read-history)
69311	(vc-git-stash-read): New history variable and function.
69312	(vc-git-stash-show, vc-git-stash-apply, vc-git-stash-pop): Update
69313	their interactive specifications.
69314
693152018-03-21  Paul Eggert  <eggert@cs.ucla.edu>
69316
69317	Add tests for Bug#30408
69318
69319	* test/src/editfns-tests.el (format-%d-large-float)
69320	(format-%x-large-float, format-%o-invalid-float): New tests.
69321
693222018-03-21  Glenn Morris  <rgm@gnu.org>
69323
69324	Quieten eieio-test compilation
69325
69326	* test/lisp/emacs-lisp/eieio-tests/eieio-test-methodinvoke.el:
69327	* test/lisp/emacs-lisp/eieio-tests/eieio-test-persist.el:
69328	* test/lisp/emacs-lisp/eieio-tests/eieio-tests.el:
69329	Remove obsolete name args where not being explicitly tested.
69330
693312018-03-21  Glenn Morris  <rgm@gnu.org>
69332
69333	* lisp/play/fortune.el (fortune-in-buffer): Unadvertise no-op arg.
69334
69335	* lisp/play/fortune.el (fortune-message):
69336	Avoid trailing newline.  (Bug#30887)
69337
693382018-03-20  Glenn Morris  <rgm@gnu.org>
69339
69340	* lisp/isearch.el (isearch-pre-command-hook): Replace cl-lib function.
69341
69342	As a preloaded file, isearch.el cannot require cl-lib at runtime.
69343
693442018-03-20  Alan Mackenzie  <acm@muc.de>
69345
69346	* lisp/progmodes/cc-engine.el (c-looking-at-or-maybe-in-bracelist): Remove pessimization
69347
693482018-03-20  Eli Zaretskii  <eliz@gnu.org>
69349
69350	Avoid redisplay problems with too wide wrap-prefix
69351
69352	* src/xdisp.c (display_line): Avoid looping in redisplay when
69353	wrap-prefix is set to a too-wide stretch of whitespace.
69354	(Bug#30432)
69355
693562018-03-20  Paul Eggert  <eggert@cs.ucla.edu>
69357
69358	Port to 32-bit sparc64
69359
69360	Problem reported by Ulrich Mueller; fix suggested by Eli Zaretskii
69361	and Andreas Schwab (Bug#30855).
69362	* src/alloc.c (mark_memory): Call mark_maybe_object only on
69363	pointers that are properly aligned for Lisp_Object.
69364
693652018-03-20  Paul Eggert  <eggert@cs.ucla.edu>
69366
69367	Autoupdate from Gnulib
69368
693692018-03-20  Paul Eggert  <eggert@cs.ucla.edu>
69370
69371	Merge from origin/emacs-26
69372
69373	23527013c7 ; Rewrap doc string
69374	4328d5f744 Correct Info link markup
69375	2fb52abd9e Improve documentation of 'with-help-window'
69376	ec08c62f03 Minor improvements in building.texi
69377	663aafe1ff * lisp/textmodes/bibtex.el (bibtex-mark-entry): activate mark
69378	05781b2e88 ; Spelling fix
69379	aa40014ba3 * doc/emacs/building.texi (Starting GUD): Mention 'guiler'.
69380	23072e468f Yet more proofreading of the Emacs manual
69381	ba5a372540 * doc/emacs/rmail.texi: Fix broken link.
69382	6b2210cc29 ; Spelling fix
69383	067c8c4f5b Fix recently-added POP doc glitch
69384	fb3dc0e8aa More proofreading of the Emacs manual
69385	a776ce7be6 Fix typo in the Emacs manual's VC chapter
69386	7f27d42f0b Pass json-readtable-error data as a list (bug#30489)
69387	10bd3b3af8 Improve word motion docs (Bug#30815)
69388	2b8507fbdc Replace "carriage-return" by "carriage return" in manuals
69389	2616cd94f1 Minor copyedits in mule.texi
69390	36a1d52814 Fix problems caused by fontconfig-2.13.0
69391
693922018-03-20  Michael Albinus  <michael.albinus@gmx.de>
69393
69394	Extend Tramp's UTF8 tests
69395
69396	* test/lisp/net/tramp-tests.el (tramp--test-utf8):
69397	Apply more exhaustive tests.
69398
693992018-03-20  Aaron Jensen  <aaronjensen@gmail.com>
69400
69401	Better support for 'transpose-chars' in Flyspell mode
69402
69403	* lisp/textmodes/flyspell.el (flyspell-post-command-hook): Check
69404	word  before previous point location after 'transpose-chars'.
69405	(Bug#30813)
69406
694072018-03-19  Paul Eggert  <eggert@cs.ucla.edu>
69408
69409	Improve port to NetBSD tzalloc
69410
69411	Problem reported by Valery Ushakov (Bug#30738#22).
69412	* src/editfns.c (HAVE_TZALLOC_BUG): New macro.
69413	(tzlookup): Use it.  Compile on all platforms, not just on NetBSD.
69414
694152018-03-19  Glenn Morris  <rgm@gnu.org>
69416
69417	* test/lisp/info-xref-tests.el (info-xref-test-emacs-manuals): New.
69418
694192018-03-19  Paul Eggert  <eggert@cs.ucla.edu>
69420
69421	Tune time zone 0
69422
69423	* src/editfns.c (tzlookup): Treat time zone 0 like t, for speed.
69424	Suggested by Valery Ushakov (Bug#30738#19).
69425
694262018-03-19  Charles A. Roelli  <charles@aurox.ch>
69427
69428	Normalize and fix some mistakes in NS-related commentary
69429
69430	* lisp/term/ns-win.el (ns-insert-working-text): Normalize
69431	commentary.
69432	(x-file-dialog): Fix indentation.
69433
69434	* src/nsfns.m (ns_get_window, interpret_services_menu)
69435	(x_set_background_color, x_set_icon_name, x_set_tool_bar_lines)
69436	(x_set_icon_type, x_set_mouse_color, Fx_create_frame)
69437	(ns_window_is_ancestor, Fns_popup_font_panel)
69438	(Fx_display_visual_class, Fns_font_name, Fns_do_applescript)
69439	(ns_screen_name, compute_tip_xy, Fns_mouse_absolute_pixel_position)
69440	(handlePanelKeys): Normalize commentary (also in top-level
69441	declarations) and remove two outdated comments (one in
69442	Fx_create_frame, the other in compute_tip_xy).
69443
69444	* src/nsterm.h (NSApplication, NSWindow, ns_bitmap_record):
69445	* src/nsselect.m:
69446	* src/nsmenu.m (ns_update_menubar, addItemWithWidgetValue:)
69447	(runMenuAt:forFrame:keymaps:, ns_menu_show, free_frame_tool_bar)
69448	(update_frame_tool_bar, init)
69449	(initWithContentRect:styleMask:backing:defer:)
69450	(initFromContents:isQuestion:, timeout_handler:)
69451	(Fmenu_or_popup_active_p):
69452	* src/nsimage.m (initFromXBM, initFromXBMWithDepth):
69453	* src/nsgui.h:
69454	* src/nsfont.m (ns_spec_to_descriptor, ns_descriptor_to_entity)
69455	(ns_charset_covers, ns_get_req_script, ns_findfonts)
69456	(nsfont_list_family, nsfont_open, nsfont_encode_char)
69457	(nsfont_draw, ns_uni_to_glyphs, ns_glyph_metrics)
69458	(syms_of_nsfont): Normalize commentary (also in top-level
69459	declarations).
69460
69461	* src/nsterm.m (ns_init_locale, ns_retain_object)
69462	(ns_screen_margins_ignoring_hidden_dock, ns_unfocus, NSImageView)
69463	(x_make_frame_visible, x_iconify_frame, x_destroy_window)
69464	(x_set_undecorated, x_set_no_focus_on_map, x_set_z_group)
69465	(ns_index_color, ns_get_color, ns_lisp_to_color)
69466	(note_mouse_movement, scrollbar, ns_scroll_run)
69467	(ns_draw_fringe_bitmap, ns_draw_window_cursor)
69468	(ns_draw_text_decoration, ns_draw_relief)
69469	(ns_dumpglyphs_box_or_relief, ns_dumpglyphs_image)
69470	(ns_dumpglyphs_stretch, ns_draw_glyph_string, ns_send_appdefined)
69471	(ns_check_menu_open, ns_read_socket, ns_select, ns_run_loop_break)
69472	(ns_set_vertical_scroll_bar, ns_set_horizontal_scroll_bar)
69473	(ns_string_to_lispmod, ns_default, ns_initialize_display_info)
69474	(ns_delete_display, ns_term_init, sendEvent:)
69475	(applicationDidFinishLaunching:, applicationDidBecomeActive:)
69476	(fd_handler:, setWindowClosing:, keyDown:, insertText:)
69477	(mouseDown:, mouseMoved:, updateFrameSize:)
69478	(windowWillResize:toSize:, windowDidResize:, windowDidResignKey:)
69479	(initFrameFromEmacs:, toggleFullScreen:, toolbarClicked:)
69480	(writeSelectionToPasteboard:types:, setMiniwindowImage:)
69481	(scrollerWidth, initFrame:window:, setFrame:, repeatScroll:)
69482	(ns_xlfd_to_fontname, syms_of_nsterm): Normalize commentary (also in
69483	top-level declarations), and in ns_get_color, replace a Gmane link
69484	with one from lists.gnu.org, which does not require JS to view the
69485	message.
69486
694872018-03-19  Karl Fogel  <kfogel@red-bean.com>
69488
69489	Revert move of interactive `transpose-regions' to Lisp
69490
69491	This reverts my commit 3a3aa0e056a of 2018-03-18 at 21:43:18 UTC.
69492	I thought consensus had been reached, but it had not: Eli Zaretskii
69493	felt the pre-3a3aa0e056a situation was fine and would not like to
69494	see it changed without at least further discussion.
69495
694962018-03-19  Alan Third  <alan@idiocy.org>
69497
69498	Fix frame resize flicker on macOS (bug#30699)
69499
69500	* src/nsterm.h (ns_enable_screen_updates): New function.
69501	* src/nsterm.m (ns_enable_screen_updates):
69502	(ns_disable_screen_updates): New functions.
69503	(disable_screen_updates_count): Count of number of times we've called
69504	NSDisableScreenUpdates.
69505	(x_set_window_size): Disable screen updates when not in a live resize
69506	loop.
69507	* src/xdisp.c (redisplay_internal): Reenable screen updates when
69508	redisplay doesn't complete due to a popup.
69509	(unwind_redisplay): Reenable screen updates.
69510
695112018-03-19  Michael Albinus  <michael.albinus@gmx.de>
69512
69513	Print top time consuming tests if advised
69514
69515	* lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
69516	New argument HIGH.  Print top-running tests.
69517
69518	* test/Makefile.in (check-doit): Use ${SUMMARIZE_TESTS}.
69519
69520	* test/README: Explain SUMMARIZE_TESTS.
69521
695222018-03-19  Eli Zaretskii  <eliz@gnu.org>
69523
69524	Followup to last change in browse-url.el
69525
69526	* lisp/net/browse-url.el (browse-url-emacs): Doc fix to follow up
69527	the previous change.  (Bug#30673)
69528
69529	* etc/NEWS: Mention the change in 'browse-url-emacs'.
69530
695312018-03-19  Pierre Téchoueyres  <pierre.techoueyres@free.fr>
69532
69533	Allow 'browse-url-emacs' to fetch URL in the selected window
69534
69535	* lisp/net/browse-url.el (browse-url-emacs): Use same-window argument.
69536	(Bug#30673)
69537
695382018-03-19  Radon Rosborough  <radon.neon@gmail.com>
69539
69540	Various follow-ups for early init file changes
69541
69542	* doc/emacs/custom.texi (Early Init File): Add more details about
69543	which variables must be set in the early init file rather than the
69544	regular init file.  See
69545	https://lists.nongnu.org/archive/html/bug-gnu-emacs/2018-02/msg00827.html
69546
69547	* lisp/emacs-lisp/package.el (package-enable-at-startup): Update
69548	docstring to note that packages are now made available before loading
69549	the init file, rather than afterwards.  See
69550	https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00632.html
69551	(package-load-list): Refer to "making available" rather than "loading"
69552	for packages.  See
69553	https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00298.html
69554
69555	* lisp/startup.el (command-line): Call `custom-reevaluate-setting' on
69556	predefined variables before loading the early init file and before
69557	`package-initialize' is called.  This prevents
69558	`Info-default-directory-list' from being unbound when
69559	`package-initialize' tries to access it during startup.  See
69560	https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00545.html
69561
69562	* lisp/emacs-lisp/package.el (package-initialize): Issue a warning
69563	if called twice.
69564	See: https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00626.html
69565	     https://lists.gnu.org/archive/html/emacs-devel/2018-03/msg00301.html
69566
695672018-03-18  Glenn Morris  <rgm@gnu.org>
69568
69569	* lisp/url/url-handlers.el: No need for subr-x at run-time.
69570
695712018-03-18  Karl Fogel  <kfogel@red-bean.com>
69572
69573	Move interactive `transpose-regions' to Lisp
69574
69575	Define `transpose-regions' in Lisp, because its complex interactive
69576	spec was ungainly in C, and change the C version to non-interactive
69577	`transpose-regions-internal'.  The Lisp function is just a wrapper
69578	around the C function, which still does all the work.
69579
69580	* lisp/simple.el (transpose-regions): New wrapper function, with
69581	  interactive spec taken from old C `transpose-regions'.
69582
69583	* src/editfns.c (Ftranspose_regions): Rename to...
69584	  (Ftranspose_regions_internal): ...here, and remove interactive spec.
69585
69586	Discussion on Emacs Devel:
69587
69588	  From: Karl Fogel
69589	  To: Emacs Development
69590	  Cc: Richard Copley, Charles A. Roelli
69591	  Subject: Re: [Emacs-diffs] master b88e7c8: \
69592	           Make transpose-regions interactive (Bug#30343)
69593	  Date: Fri, 16 Mar 2018 10:23:31 -0500
69594	  Message-ID: <87po44jb7w.fsf@red-bean.com>
69595
69596	  https://lists.gnu.org/archive/html/emacs-devel/2018-03/msg00555.html
69597
695982018-03-18  Nicolas Petton  <nicolas@petton.fr>
69599
69600	Fix compilation warnings in subr-x-tests.el
69601
69602	* test/lisp/emacs-lisp/subr-x-tests.el (subr-x-test-if-let*-false)
69603	(subr-x-test-when-let*-false): Make tests simpler and compiler warning
69604	free.
69605
696062018-03-18  Nicolas Petton  <nicolas@petton.fr>
69607
69608	* lisp/url/url-handlers.el: Require subr-x.
69609
696102018-03-18  Nicolas Petton  <nicolas@petton.fr>
69611
69612	Add URL handler for file-name-directory  (Bug#30444)
69613
69614	* lisp/url/url-handlers.el (url-handler-file-name-directory): New
69615	function which handles special cases for `file-name-directory' and
69616	URLs.
69617	* test/lisp/url/url-handlers-test.el: New file.  Add tests for
69618	`url-handler-file-name-directory'.
69619
696202018-03-18  Michael Albinus  <michael.albinus@gmx.de>
69621
69622	* lisp/emacs-lisp/ert.el (ert-run-tests-batch): Print selector.
69623
696242018-03-17  Michael Albinus  <michael.albinus@gmx.de>
69625
69626	Optimize tramp-tests.el
69627
69628	* test/lisp/net/tramp-tests.el (tramp--test-expensive-test):
69629	Make it a defsubst.  Adapt all callees.
69630	(tramp--test-print-duration): New defmacro.
69631	(tramp-test11-copy-file, tramp-test12-rename-file)
69632	(tramp-test21-file-links, tramp--test-special-characters):
69633	Run some parts only if expensive tests are enabled.  (Bug#30807)
69634
696352018-03-17  Aaron Jensen  <aaronjensen@gmail.com>
69636
69637	In frameset save pixel values with frame-resize-pixelwise non-nil  (Bug#30141)
69638
69639	* lisp/frameset.el (frameset--record-relationships): Replace
69640	check for text width/height and replace with check for
69641	frame-resize-pixelwise.  (Bug#30141)
69642
696432018-03-17  Michael Albinus  <michael.albinus@gmx.de>
69644
69645	Print test timings unconditionally
69646
69647	* lisp/emacs-lisp/ert.el (ert-batch-print-duration): Remove.
69648	(ert-run-tests-batch): Adapt accordingly.
69649
69650	* test/Makefile.in:
69651	* test/README: Remove TEST_PRINT_TEST_DURATION.
69652
696532018-03-16  Glenn Morris  <rgm@gnu.org>
69654
69655	Explicitly require cl-lib where needed
69656
69657	Rather than relying on the byte-compiler happening to use it.
69658	* lisp/completion.el, lisp/ffap.el, lisp/loadhist.el:
69659	* lisp/userlock.el, lisp/emacs-lisp/debug.el, lisp/emacs-lisp/rx.el:
69660	* lisp/emacs-lisp/testcover.el, lisp/mail/rfc2231.el:
69661	* lisp/net/newst-treeview.el, lisp/net/puny.el:
69662	* lisp/net/tramp-archive.el, lisp/net/tramp-gvfs.el:
69663	* lisp/net/tramp-sh.el, lisp/net/tramp-smb.el, lisp/org/org-ctags.el:
69664	* lisp/org/org-macs.el, lisp/progmodes/grep.el:
69665	* lisp/progmodes/perl-mode.el, lisp/progmodes/ruby-mode.el:
69666	* lisp/textmodes/dns-mode.el, lisp/textmodes/mhtml-mode.el:
69667	* lisp/vc/pcvs-parse.el: Explicitly require cl-lib as needed.
69668
696692018-03-16  Glenn Morris  <rgm@gnu.org>
69670
69671	cedet: remove obsolete name args to constructors
69672
69673	* lisp/cedet/ede/proj-archive.el, lisp/cedet/ede/proj-aux.el:
69674	* lisp/cedet/ede/proj-elisp.el, lisp/cedet/ede/proj-info.el:
69675	* lisp/cedet/ede/proj-misc.el, lisp/cedet/ede/proj-obj.el:
69676	* lisp/cedet/ede/proj-shared.el, lisp/cedet/ede/simple.el:
69677	* lisp/cedet/ede/source.el, lisp/cedet/semantic/:
69678	* lisp/cedet/semantic/analyze.el, lisp/cedet/semantic/complete.el:
69679	* lisp/cedet/semantic/db-javascript.el:
69680	* lisp/cedet/semantic/db-ref.el, lisp/cedet/semantic/debug.el:
69681	* lisp/cedet/semantic/ede-grammar.el:
69682	* lisp/cedet/semantic/mru-bookmark.el, lisp/cedet/semantic/scope.el:
69683	* lisp/cedet/semantic/texi.el, lisp/cedet/semantic/bovine/:
69684	* lisp/cedet/semantic/bovine/c.el:
69685	* lisp/cedet/semantic/bovine/debug.el, lisp/cedet/srecode/:
69686	* lisp/cedet/srecode/extract.el, lisp/cedet/srecode/map.el:
69687	* lisp/cedet/srecode/srt-mode.el:
69688	Remove obsolete name args to constructors.
69689
696902018-03-16  Glenn Morris  <rgm@gnu.org>
69691
69692	Quieten semantic re-compilation when .elc already exist
69693
69694	* lisp/cedet/semantic/db-find.el, lisp/cedet/semantic/util.el:
69695	Add some function declarations.
69696
696972018-03-16  Glenn Morris  <rgm@gnu.org>
69698
69699	* lisp/gnus/gnus-registry.el: Add missing compile-time requirement.
69700
697012018-03-16  Eli Zaretskii  <eliz@gnu.org>
69702
69703	Fix 'posn-at-point' when line numbers are displayed
69704
69705	* src/xdisp.c (pos_visible_p): For the leftmost glyph, adjust the X
69706	coordinate due to line-number display.  (Bug#30834)
69707
697082018-03-16  Eli Zaretskii  <eliz@gnu.org>
69709
69710	Another followup to fixing 'window-text-pixel-width'
69711
69712	* src/xdisp.c (Fwindow_text_pixel_size): Adjust the return value
69713	when we stop one buffer position short of TO.  (Bug#30746)
69714
697152018-03-16  Michael Albinus  <michael.albinus@gmx.de>
69716
69717	Optimize "make check" and "make check-maybe"
69718
69719	* lisp/emacs-lisp/ert.el (ert-run-tests-batch): Print summary duration.
69720
69721	* test/Makefile.in (TEST_LOAD_EL): Set default to "no" for
69722	targets all, check, and check-maybe.  (Bug#30807)
69723
69724	* test/README: Reflect recent changes in Makefile.
69725
69726	* test/lisp/net/tramp-archive-tests.el
69727	(tramp-archive-test99-libarchive-tests): Tag it :unstable.
69728
697292018-03-16  Reuben Thomas  <rrt@sc3d.org>
69730
69731	Call enchant-lsmod correctly when Enchant is installed with a suffix
69732
69733	* lisp/textmodes/ispell.el (ispell--call-enchant-lsmod): Cope with a
69734	version suffix on the binary name, so enchant-2 is converted to
69735	enchant-lsmod-2, not enchant-2-lsmod.
69736
697372018-03-15  Glenn Morris  <rgm@gnu.org>
69738
69739	Suppress warnings about obsolete generics (bug#25556)
69740
69741	* lisp/Makefile.in (MAIN_FIRST): New variable.
69742	(compile-main): Put some files at the head of the queue.
69743
697442018-03-15  Glenn Morris  <rgm@gnu.org>
69745
69746	Replace some obsolete uses of filter-buffer-substring-functions
69747
69748	* lisp/org/org-agenda.el (org-agenda-mode):
69749	* lisp/org/org-indent.el (org-indent-mode):
69750	Replace filter-buffer-substring-functions, obsolete since 24.4.
69751
697522018-03-15  Glenn Morris  <rgm@gnu.org>
69753
69754	* lisp/gnus/nnmaildir.el (nnmaildir-close-server):
69755	Remove unused locals.
69756
69757	* lisp/emulation/cua-base.el (cua-paste): Quieten compilation.
69758
69759	* lisp/progmodes/verilog-mode.el (verilog-mode): Quieten compilation.
69760
697612018-03-15  Paul Eggert  <eggert@cs.ucla.edu>
69762
69763	Improve port to NetBSD tzalloc
69764
69765	Problem reported by Valery Ushakov (Bug#30738#13).
69766	* src/editfns.c (tzlookup) [__NetBSD_Version__ < 700000000]:
69767	If tzalloc fails for any reason other than memory exhaustion,
69768	assume it’s because NetBSD 6 does not support tzalloc on
69769	POSIX-format TZ strings, and fall back on tzdb if possible.
69770
697712018-03-15  Glenn Morris  <rgm@gnu.org>
69772
69773	* test/lisp/ses-tests.el: Quieten compilation.
69774
69775	* lisp/pcomplete.el (pcomplete-here): Move before first reference.
69776
697772018-03-15  Michael Albinus  <michael.albinus@gmx.de>
69778
69779	Improve robustness in tramp-sh.el
69780
69781	* lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
69782	Wrap both echo calls in parentheses, in order to avoid double prompt.
69783
697842018-03-15  Eli Zaretskii  <eliz@gnu.org>
69785
69786	Support variable-unquoting syntax in bat-mode
69787
69788	* lisp/progmodes/bat-mode.el (bat-font-lock-keywords): Fontify
69789	argument numbers in %~n.  Suggested by Jostein Kjønigsen
69790	<jostein@secure.kjonigsen.net> in emacs-devel.
69791
69792	* test/lisp/progmodes/bat-mode-tests.el
69793	(bat-test-fontification-iter-var-1): Update the test to check also
69794	the %~n construct.
69795
697962018-03-15  Eli Zaretskii  <eliz@gnu.org>
69797
69798	Fix mouse-set-point when line numbers are displayed
69799
69800	* src/xdisp.c (move_it_to): Initialize the line_number_produced_p
69801	flag before iterating on a new line.  (Bug#30818)
69802
698032018-03-15  Michael Albinus  <michael.albinus@gmx.de>
69804
69805	Fix an error in tramp-archive-test42-auto-load
69806
69807	* test/lisp/net/tramp-archive-tests.el (tramp-archive-test42-auto-load):
69808	Do not use "/ssh::" as test directory, it could harm.  (Bug#30807)
69809
698102018-03-14  Glenn Morris  <rgm@gnu.org>
69811
69812	More hydra.nixos.org logging for unfinished tests
69813
69814	* lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
69815	Dump contents of any unfinished log files on hydra.nixos.org.
69816
698172018-03-14  Stefan Monnier  <monnier@iro.umontreal.ca>
69818
69819	* lisp/desktop.el: Make use some "new" functionality
69820
69821	(desktop-files-not-to-save, desktop-clear):
69822	Use \` and \' when we don't intend to match newlines.
69823	(desktop-minor-mode-table): Remove auto-fill-function entry.
69824	(desktop-buffer-info): Use :minor-mode-function instead.
69825	(desktop--v2s): Use a closure rather than a backquoted lambda.
69826	(desktop-save): Set 'lexical-binding' in the saved file.
69827	Use 'utf-8-emacs' encoding rather than the old 'emacs-mule'.
69828	(desktop-read): Use 'default-value' to get the global part of a hook.
69829
698302018-03-14  Michael Albinus  <michael.albinus@gmx.de>
69831
69832	Extend ert to print duration of single tests
69833
69834	* lisp/emacs-lisp/ert.el (ert-test-result): New slot ´duration'.
69835	(ert-run-or-rerun-test): Set it.
69836	(ert-batch-print-duration): New defvar.
69837	(ert-run-tests-batch): Print duration if needed.
69838
69839	* test/Makefile.in (TEST_PRINT_TEST_DURATION): New variable.
69840
69841	* test/README: Explain TEST_PRINT_TEST_DURATION.
69842
698432018-03-13  Noam Postavsky  <npostavs@gmail.com>
69844
69845	Fix line-wrapping for term.el (Bug#30775)
69846
69847	* lisp/term.el (term-emulate-terminal): Leave line-wrapping state if
69848	point was moved after we entered it.
69849	* test/lisp/term-tests.el (term-line-wrapping-then-motion): New test.
69850
698512018-03-13  Glenn Morris  <rgm@gnu.org>
69852
69853	Merge from origin/emacs-26
69854
69855	675edec (origin/emacs-26) Fix some allout.el aliases
69856	b2c069a * lisp/progmodes/ada-mode.el (ada-clean-buffer-before-saving)...
69857	2f5420c Doc fixes re obsolete items
69858	9edf82a Replace an obsolete alias in tpu-mapper
69859	a643792 Doc fixes re obsolete items
69860	3060fb8 Minor changes in mule.texi
69861	3e39897 Avoid assertion violation under visual-order-cursor-movement
69862	e4b73ab Stop mentioning options.el in doc
69863	05669f0 ; * lisp/minibuffer.el (completion-cycle-threshold): Fix last...
69864	758597f * lisp/vc/vc-dir.el (vc-dir-unmark): Fix documentation.
69865	62f0a2b * lisp/minibuffer.el (completion-cycle-threshold): Doc fix.
69866	761845c Fix last change in Xref documentation
69867	5186675 More changes in the Emacs manual
69868	b1aaa72 Improve documentation of Xref
69869
69870	Conflicts:
69871		lisp/w32-fns.el
69872
698732018-03-13  Glenn Morris  <rgm@gnu.org>
69874
69875	Try to stop tramp test hangs on hydra
69876
69877	* test/lisp/net/tramp-tests.el (tramp-test41-asynchronous-requests):
69878	Use fewer processes on hydra.
69879
698802018-03-13  Eli Zaretskii  <eliz@gnu.org>
69881
69882	* src/xdisp.c (Fwindow_text_pixel_size): Fix last change.
69883
698842018-03-12  Glenn Morris  <rgm@gnu.org>
69885
69886	* lisp/subr.el (focus-frame, unfocus-frame): Remove obsolete no-ops.
69887
69888	* lisp/vc/ediff-util.el (ediff-recenter):
69889	Don't try focus-frame on Emacs.
69890
698912018-03-12  Glenn Morris  <rgm@gnu.org>
69892
69893	* lisp/obsolete/options.el: Remove file.
69894
69895	* lisp/loadhist.el (unload-hook-features-list): Remove obsolete alias.
69896
698972018-03-12  Glenn Morris  <rgm@gnu.org>
69898
69899	Make compiler warn about use of obsolete hooks
69900
69901	* lisp/emacs-lisp/bytecomp.el (byte-compile-form):
69902	Warn about using obsolete hooks.
69903
699042018-03-12  Glenn Morris  <rgm@gnu.org>
69905
69906	Replace use of the obsolete write-contents-hooks
69907
69908	* lisp/play/gametree.el (gametree-mode):
69909	Replace write-contents-hooks, obsolete since 22.1,
69910	with write-contents-functions.
69911
699122018-03-12  Paul Eggert  <eggert@cs.ucla.edu>
69913
69914	Revert overenthusiastic procfs fixup
69915
69916	Also, be more systematic in calls to string_to_number.
69917	* src/sysdep.c (list_system_processes) [HAVE_PROCFS]: Allow pids
69918	to be floating-point if they exceed fixnum range.  This partially
69919	reverts my patch 2018-03-09T20:06:05Z!eggert@cs.ucla.edu, which
69920	went too far in fixing string-to-number mishandling.
69921
699222018-03-11  Charles A. Roelli  <charles@aurox.ch>
69923
69924	Allow toggling Grep command abbreviation, and rename related symbols
69925
69926	* lisp/progmodes/grep.el (grep-find-hide): Rename 'grep-find-hide'
69927	to 'grep-find-abbreviate'.
69928	(grep-find-hide-properties): Rename to
69929	'grep-find-abbreviate-properties'.
69930	(grep-mode-font-lock-keywords): Even when 'grep-find-abbreviate'
69931	is nil, fontify the verbose command options with property
69932	'abbreviated-command', so that the toggling command can later find
69933	these parts without refontifying.
69934	(grep-find-show): Rename to 'grep-find-toggle-abbreviation',
69935	simplify the code, and permit toggling the hidden command options.
69936	(grep-mode-map): Add a menu-bar item and new separator for
69937	'grep-find-toggle-abbreviation', and fix the incumbent separators
69938	in the "Grep" menu-bar, of which only one was showing before this
69939	commit, even though two were specified.
69940	* etc/NEWS (grep):
69941	* doc/emacs/building.texi (Grep Searching): Document these
69942	changes, and mention 'grep-find-toggle-abbreviation'.
69943
699442018-03-11  Charles A. Roelli  <charles@aurox.ch>
69945
69946	Document 'transpose-sentences' and 'transpose-paragraphs'
69947
69948	* doc/emacs/fixit.texi (Transpose): Add documentation and index
69949	entries for 'transpose-sentences' and 'transpose-paragraphs'
69950	(Bug#30343 in passing).
69951
699522018-03-11  Charles A. Roelli  <charles@aurox.ch>
69953
69954	Make transpose-regions interactive (Bug#30343)
69955
69956	* doc/emacs/fixit.texi (Transpose): Mention and explain the new
69957	command.
69958	* src/editfns.c (Ftranspose_regions): Add an interactive calling
69959	specification, and add documentation for it.
69960
699612018-03-11  Charles A. Roelli  <charles@aurox.ch>
69962
69963	Unify documentation on 'save-some-buffers'
69964
69965	* doc/emacs/files.texi (Save Commands): Include some more keys
69966	that can be used in 'save-some-buffers'.
69967
69968	* lisp/files.el (save-some-buffers): Include the same keys as
69969	above, and document all missing ones.
69970
699712018-03-11  Charles A. Roelli  <charles@aurox.ch>
69972
69973	* lisp/simple.el (mark-whole-buffer): Clarify its behavior.
69974
699752018-03-11  Charles A. Roelli  <charles@aurox.ch>
69976
69977	Improve and make use of 'image--get-image'
69978
69979	* lisp/image.el (image--get-image): Add documentation, and
69980	check overlays for images too (since function 'put-image' from
69981	the same library uses overlays to insert images).
69982	(image-save): Use 'image--get-image'.
69983
699842018-03-11  Paul Eggert  <eggert@cs.ucla.edu>
69985
69986	Port to NetBSD tzalloc
69987
69988	Problem reported by Valery Ushakov (Bug#30738).
69989	* src/editfns.c (xtzalloc): Remove.
69990	(invalid_time_zone_specification): New function.
69991	(tzlookup): Port to NetBSD, where tzalloc can fail when the TZ
69992	string has an invalid value.
69993
699942018-03-10  Glenn Morris  <rgm@gnu.org>
69995
69996	Remove many items obsolete since Emacs 22.1
69997
69998	Emacs 22.1 was five major releases and over decade ago.
69999	In bug reporting statistics, it's been absent for around 5 years.
70000	Ref: https://debbugs.gnu.org/stats/emacs.html
70001	This list can be reviewed before to the next release, but for
70002	now hopefully this motivates any needed external updates.
70003	* lisp/arc-mode.el (archive-mouse-extract):
70004	* lisp/bookmark.el (bookmark-exit-hooks):
70005	* lisp/comint.el (comint-use-prompt-regexp-instead-of-fields):
70006	* lisp/cus-edit.el (custom-face-save-command):
70007	* lisp/descr-text.el (describe-char-after):
70008	* lisp/desktop.el (desktop-enable, desktop-basefilename)
70009	(desktop-buffer-modes-to-save, desktop-buffer-misc-functions)
70010	(desktop-buffer-handlers, desktop-load-default):
70011	* lisp/dired-x.el (dired-omit-files-p):
70012	* lisp/frame.el (new-frame, set-default-font, delete-frame-hook)
70013	(blink-cursor):
70014	* lisp/generic-x.el (generic-define-mswindows-modes)
70015	(generic-define-unix-modes):
70016	* lisp/help.el (describe-project, view-todo):
70017	* lisp/hilit-chg.el (highlight-changes-colours):
70018	* lisp/ibuffer.el (ibuffer-elide-long-columns, ibuffer-hooks)
70019	(ibuffer-mode-hooks):
70020	* lisp/imenu.el (imenu-always-use-completion-buffer-p):
70021	* lisp/isearch.el (isearch-lazy-highlight-cleanup)
70022	(isearch-lazy-highlight-initial-delay)
70023	(isearch-lazy-highlight-interval)
70024	(isearch-lazy-highlight-max-at-a-time)
70025	(isearch-lazy-highlight-cleanup):
70026	* lisp/mwheel.el (mouse-wheel-down-button)
70027	(mouse-wheel-up-button, mouse-wheel-click-button):
70028	* lisp/novice.el (disabled-command-hook):
70029	* lisp/recentf.el (recentf-menu-append-commands-p):
70030	* lisp/savehist.el (savehist-load):
70031	* lisp/speedbar.el (speedbar-ignored-path-expressions)
70032	(speedbar-ignored-path-regexp, speedbar-add-ignored-path-regexp)
70033	(speedbar-line-path, speedbar-buffers-line-path, speedbar-path-line):
70034	* lisp/subr.el (assoc-ignore-case, assoc-ignore-representation)
70035	(x-lost-selection-hooks, x-sent-selection-hooks)
70036	(process-kill-without-query):
70037	* lisp/calendar/icalendar.el (icalendar-convert-diary-to-ical)
70038	(icalendar-extract-ical-from-buffer):
70039	* lisp/emacs-lisp/autoload.el (update-autoloads-from-directories):
70040	* lisp/emacs-lisp/derived.el (derived-mode-class):
70041	* lisp/emacs-lisp/generic.el (generic-font-lock-defaults):
70042	* lisp/emacs-lisp/timer.el (timer-set-time-with-usecs):
70043	* lisp/gnus/spam.el (spam-list-of-processors):
70044	* lisp/international/latin1-disp.el (latin1-char-displayable-p):
70045	* lisp/mail/rmail.el (rmail-pop-password, rmail-pop-password-required):
70046	* lisp/net/goto-addr.el (goto-address-at-mouse):
70047	* lisp/net/net-utils.el (ipconfig-program, ipconfig-program-options):
70048	* lisp/obsolete/iswitchb.el (iswitchb-use-fonts):
70049	* lisp/play/dunnet.el (dungeon-mode-map):
70050	* lisp/progmodes/compile.el (compilation-finish-function)
70051	* lisp/progmodes/cperl-mode.el (cperl-vc-header-alist)
70052	* lisp/progmodes/gud.el (tooltip-gud-modes, tooltip-gud-display)
70053	(tooltip-gud-toggle-dereference):
70054	* lisp/progmodes/pascal.el (pascal-outline):
70055	* lisp/progmodes/perl-mode.el (electric-perl-terminator):
70056	* lisp/textmodes/nroff-mode.el (count-text-lines)
70057	(forward-text-line, backward-text-line, electric-nroff-newline)
70058	(electric-nroff-mode):
70059	* lisp/vc/log-edit.el (vc-comment-ring, vc-comment-ring-index)
70060	(vc-previous-comment, vc-next-comment)
70061	(vc-comment-search-reverse, vc-comment-search-forward)
70062	(vc-comment-to-change-log):
70063	* lisp/vc/pcvs-info.el (cvs-display-full-path)
70064	(cvs-fileinfo->full-path):
70065	* lisp/vc/vc.el (vc-diff-switches-list):
70066	Remove items, obsolete since Emacs 22.1.
70067	* lisp/ibuffer.el (ibuffer-cached-elide-long-columns):
70068	Remove internal variable.
70069	(ibuffer-compile-make-eliding-form, ibuffer-check-formats):
70070	(ibuffer-mode): Remove support for ibuffer-elide-long-columns.
70071	* lisp/cedet/semantic/sb.el (semantic-sb-token-jump):
70072	Remove support for speedbar-line-path.
70073	* lisp/emacs-lisp/unsafep.el (assoc-ignore-case):
70074	Stop marking as side-effect-free.
70075	* lisp/gnus/spam.el (spam-group-processor-p):
70076	Remove support for spam-list-of-processors.
70077	* lisp/progmodes/compile.el (define-compilation-mode)
70078	(compilation-handle-exit):
70079	Remove support for compilation-finish-function.
70080	* lisp/progmodes/cperl-mode.el (cperl-mode):
70081	Remove support for cperl-vc-header-alist.
70082
700832018-03-10  Stefan Monnier  <monnier@iro.umontreal.ca>
70084
70085	eshell-eval-using-options: Avoid compiler warning differently
70086
70087	* lisp/eshell/em-unix.el (eshell/time):
70088	* lisp/eshell/em-tramp.el (eshell/sudo):
70089	* lisp/eshell/esh-var.el (eshell/env): Remove artificial use of `args'.
70090
70091	* lisp/eshell/esh-opt.el (eshell-eval-using-options): Silence warning
70092	when `args' is not used by `body-forms'.
70093
700942018-03-10  Paul Eggert  <eggert@cs.ucla.edu>
70095
70096	Merge from origin/emacs-26
70097
70098	5c91ca8 Fix create_process bug breaking eudc-expand-inline
70099	e244fed Clarify that nil doesn't match itself as a cl-case clause (Bu...
70100	df0e7e2 Improve SVG documentation
70101	a34ef52 Document the "URL" keyword in library headers
70102	fbc7f9a * test/lisp/international/mule-tests.el: Avoid local variable...
70103	16faff6 ; * lisp/org/org-table.el: Replace obsolete alias in comment.
70104
701052018-03-10  Paul Eggert  <eggert@cs.ucla.edu>
70106
70107	Merge from origin/emacs-26
70108
70109	6af509e Replace the obsolete process-kill-without-query in documentation
70110	4df0d15 ; Tiny fix for recent doc change
70111
701122018-03-10  Noam Postavsky  <npostavs@gmail.com>
70113
70114	Let warning about (:foo) be suppressible (Bug#30499)
70115
70116	* lisp/emacs-lisp/bytecomp.el (byte-compile-form): Check
70117	byte-compile-warning-enabled-p before warning about funcalling const
70118	symbol.
70119
701202018-03-10  Dmitry Safronov  <saf.dmitry@gmail.com>
70121
70122	Fix wrong behavior of 'outline-headers-as-kill' command (Bug#30209)
70123
70124	* lisp/outline.el (outline-headers-as-kill): Fix heading duplication.
70125
701262018-03-10  Eli Zaretskii  <eliz@gnu.org>
70127
70128	Improve support for desktop restoration in daemon mode
70129
70130	* lisp/server.el (server-after-make-frame-hook): New hook.
70131	(server-execute): Call it after creating a new frame or before
70132	switching to a buffer shown in a client frame.  (Bug#30421)
70133
70134	* doc/emacs/misc.texi (Saving Emacs Sessions): Adjust advice for
70135	restoring desktop in daemon mode to the new hook.
70136	* doc/lispref/frames.texi (Creating Frames, Standard Hooks):
70137	Document server-after-make-frame-hook.
70138
70139	* etc/NEWS: Mention server-after-make-frame-hook.
70140
701412018-03-10  Aaron Jensen  <aaronjensen@gmail.com>
70142
70143	Allow underline position variables be buffer-local
70144
70145	* src/nsterm.m (ns_draw_text_decoration):
70146	* src/w32term.c (x_draw_glyph_string):
70147	* src/xterm.c (x_draw_glyph_string): Allow underline-minimum-offset,
70148	underline-at-descent-line, and x-use-underline-position-properties
70149	be buffer local variables.  (Bug#30553)
70150	* src/xdisp.c (syms_of_xdisp) <underline-minimum-offset>: Add DEFSYM.
70151
701522018-03-09  Glenn Morris  <rgm@gnu.org>
70153
70154	* Makefile.in (check-declare): Also check test/ directory.
70155
70156	* test/Makefile.in (check-declare): New PHONY rule.
70157
701582018-03-09  Glenn Morris  <rgm@gnu.org>
70159
70160	Quieten --without-json compilation of json-tests.el
70161
70162	* test/src/json-tests.el (json-serialize, json-insert)
70163	(json-parse-string, json-parse-buffer): Declare.
70164
701652018-03-09  Glenn Morris  <rgm@gnu.org>
70166
70167	* test/lisp/vc/vc-tests.el (w32-application-type): Fix declaration.
70168
701692018-03-09  Paul Eggert  <eggert@cs.ucla.edu>
70170
70171	Fix string-to-number C-level mishandling
70172
70173	* src/sysdep.c (list_system_processes):
70174	* src/xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
70175	Defend against Fstring_to_number returning a float or a nonsense
70176	integer.
70177
701782018-03-09  Glenn Morris  <rgm@gnu.org>
70179
70180	Quieten compilation of some test/lisp files
70181
70182	* test/lisp/dired-tests.el (dired-test-bug27243-02)
70183	(dired-test-bug27243-03, dired-test-bug27899)
70184	(dired-test-with-temp-dirs): Remove unused local variables.
70185	* test/lisp/hi-lock-tests.el (hi-lock-bug26666)
70186	(hi-lock-test-set-pattern): Mark unused arguments.
70187	* test/lisp/ses-tests.el (ses-tests-renamed-cells-row-insertion):
70188	Remove unused global "ses-tests-trigger".
70189	* test/lisp/simple-tests.el (line-number-at-pos-when-passing-point):
70190	Remove unused local "pos".
70191	* test/lisp/emacs-lisp/benchmark-tests.el (benchmark-tests):
70192	Pacify compiler.
70193	* test/lisp/emacs-lisp/package-tests.el (package-test-signed):
70194	Replace obsolete function epg-configuration.
70195	* test/lisp/ls-lisp-tests.el:
70196	* test/lisp/eshell/em-ls-tests.el: Require dired.
70197	* test/lisp/progmodes/ruby-mode-tests.el
70198	(ruby-forward-sexp-skips-method-calls-with-keyword-names):
70199	* test/lisp/vc/diff-mode-tests.el
70200	(diff-mode-test-ignore-trailing-dashes): Replace interactive funcs.
70201
702022018-03-08  Paul Eggert  <eggert@cs.ucla.edu>
70203
70204	Avoid losing info when formatting integers
70205
70206	* doc/lispref/numbers.texi (Integer Basics): Clarify that
70207	out-of-range integers are treated as floating point only when the
70208	integers are decimal.
70209	* etc/NEWS: Mention changes.
70210	* src/editfns.c (styled_format): Use %.0f when formatting %d or %i
70211	values outside machine integer range, to avoid losing info.
70212	Signal an error for %o or %x values that are too large to be
70213	formatted, to avoid losing info.
70214
702152018-03-08  Glenn Morris  <rgm@gnu.org>
70216
70217	Replace uses of the obsolete local-write-file-hooks
70218
70219	* lisp/net/quickurl.el (quickurl-reread-hook-postfix):
70220	* lisp/progmodes/ebrowse.el (ebrowse-tree-mode)
70221	(ebrowse-write-file-hook-fn):
70222	* lisp/progmodes/glasses.el (glasses-mode):
70223	* lisp/progmodes/vhdl-mode.el (vhdl-write-file-hooks-init):
70224	* lisp/vc/ediff-merg.el (ediff-set-merge-mode):
70225	* lisp/vc/ediff-util.el (ediff-setup):
70226	Replace local-write-file-hooks, obsolete since 22.1,
70227	with write-file-functions.
70228
702292018-03-08  Paul Eggert  <eggert@cs.ucla.edu>
70230
70231	Update from Gnulib
70232
70233	This includes:
70234	2018-03-08 fflush: be more paranoid about libio.h change
70235	* lib/fpending.c: Copy from Gnulib.
70236
702372018-03-08  Juri Linkov  <juri@linkov.net>
70238
70239	* lisp/isearch.el (search-exit-option): Add option 'append'.
70240
70241	(isearch-pre-command-hook): Use it.
70242
70243	* doc/emacs/search.texi: Replace search-exit-option option nil with append.
70244
70245	https://lists.gnu.org/archive/html/emacs-devel/2018-03/msg00202.html
70246
702472018-03-08  Charles A. Roelli  <charles@aurox.ch>
70248
70249	Add to "Completion Commands" Info node
70250
70251	* doc/emacs/mini.texi (Completion Commands): Mention other keys
70252	for 'next-completion' and 'previous-completion', and explain 'q'
70253	and 'z' which are relatively new additions.
70254
702552018-03-08  Glenn Morris  <rgm@gnu.org>
70256
70257	Merge from origin/emacs-26
70258
70259	cb0d40e (origin/emacs-26) Minor change in the manual
70260	7e26d83 More minor changes in the manual
70261	6851754 Replace some obsolete aliases in code
70262	6bcb48c Replace some obsolete aliases in documentation
70263	317da2a Minor improvements in manuals
70264	61c1f80 Minor copyedits in display.texi
70265	d523e4a Remove some unused spam.el variables
70266	501808c Replace some obsolete aliases in code
70267	19afff3 Replace some obsolete aliases in documentation
70268	c797bc9 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/emac...
70269	0efe0bd Obsolete eshell-cmpl-suffix-list
70270	add48d2 More minor changes in the Glossary of the Emacs manual
70271	f6bd7e0 Revert last commit
70272	af4697f Define if-let* and derivatives as aliases for if-let etc
70273	ec79bdc Minor fix in Emacs manual's Glossary
70274
702752018-03-08  Eli Zaretskii  <eliz@gnu.org>
70276
70277	Fix 'window-text-pixel-size' when display properties are around
70278
70279	* src/xdisp.c (Fwindow_text_pixel_size): Correct the result when
70280	there's a display property at the  TO position, and the call to
70281	move_it_to overshoots.  (Bug#30746)
70282
702832018-03-08  Michael Albinus  <michael.albinus@gmx.de>
70284
70285	Add OpenDocument formats to Tramp file archives
70286
70287	* doc/misc/tramp.texi (Archive file names):
70288	* lisp/net/tramp-archive.el (tramp-archive-suffixes):
70289	Add OpenDocument formats.
70290
702912018-03-07  Mike Kupfer  <mkupfer@alum.berkeley.edu>
70292
70293	* lisp/mh-e/mh-e.el (mh-variant-set): Tweak failure message.
70294
70295	* lisp/mh-e/mh-utils.el (mh-find-path): Add missing part of previous.
70296
702972018-03-07  Glenn Morris  <rgm@gnu.org>
70298
70299	Suppress "No MH variant found" message (bug#30669)
70300
70301	* lisp/mh-e/mh-e.el (mh-variant): Don't try to detect till needed.
70302	* lisp/mh-e/mh-e.el (mh-version, mh-variant-p):
70303	* lisp/mh-e/mh-comp.el (mh-insert-x-mailer):
70304	Ensure mh-variant-in-use is set.
70305
703062018-03-07  Paul Eggert  <eggert@cs.ucla.edu>
70307
70308	Update from Gnulib
70309
70310	This includes:
70311	2018-03-07 maint: write-file-hooks -> before-save-hook
70312	2018-03-05 binary-io: pacify gcc -Wunused-parameter
70313	2018-03-05 fflush: adjust to glibc 2.28 libio.h removal
70314	* build-aux/config.guess, build-aux/config.sub:
70315	* build-aux/gitlog-to-changelog, build-aux/install-sh:
70316	* build-aux/move-if-change, build-aux/update-copyright:
70317	* doc/misc/texinfo.tex, lib/binary-io.h, lib/fpending.c:
70318	* lib/stdio-impl.h: Copy from Gnulib.
70319
703202018-03-07  Eli Zaretskii  <eliz@gnu.org>
70321
70322	Fix display of TABs in hscrolled windows with line numbers
70323
70324	* src/dispextern.h (struct it): New members tab_offset and
70325	line_number_produced_p.
70326	* src/xdisp.c (display_line): Don't set row->x to a negative value
70327	if line numbers are being displayed.  (Bug#30582)
70328	Reset the line_number_produced_p flag before laying out the glyph
70329	row.
70330	(x_produce_glyphs): Use the line_number_produced_p flag to decide
70331	whether to offset the X coordinate due to line-number display.
70332	Use the tab_offset member to restore the original TAB width for
70333	alignment purposes.
70334	(move_it_in_display_line_to): Don't produce line numbers when moving
70335	in hscrolled window to the left of first_visible_x.
70336	(maybe_produce_line_number): Set the line_number_produced_p flag.
70337	(Bug#30584)
70338	* src/term.c (produce_glyphs): Correct TAB width only when
70339	line_number_produced_p flag is set.
70340
703412018-03-06  Glenn Morris  <rgm@gnu.org>
70342
70343	Condition em-cmpl's setting of pcomplete-suffix-list
70344
70345	* lisp/eshell/em-cmpl.el (eshell-cmpl-initialize):
70346	Only set pcomplete-suffix-list if it is defined.
70347
703482018-03-05  Glenn Morris  <rgm@gnu.org>
70349
70350	Suppress some font-lock-fontify-buffer compiler warnings
70351
70352	* lisp/htmlfontify.el (hfy-force-fontification):
70353	* lisp/progmodes/idlw-help.el (idlwave-help-fontify):
70354	Suppress compiler warning from backwards compatibility branch.
70355
703562018-03-05  Glenn Morris  <rgm@gnu.org>
70357
70358	Small auth-source-netrc-create fix
70359
70360	* lisp/auth-source.el (auth-source-netrc-create):
70361	Fix handling of auth-source-netrc-use-gpg-tokens being a list.
70362
703632018-03-05  Glenn Morris  <rgm@gnu.org>
70364
70365	* lisp/emacs-lisp/ewoc.el (ewoc-goto-node):
70366	Simplify and quieten compiler.
70367
703682018-03-05  Glenn Morris  <rgm@gnu.org>
70369
70370	Suppress some unused lexical variable warnings in eshell
70371
70372	* lisp/eshell/em-tramp.el (eshell/sudo):
70373	* lisp/eshell/em-unix.el (eshell/time):
70374	* lisp/eshell/esh-var.el (eshell/env):
70375	Pretend to use "args" to quieten compiler.
70376
703772018-03-05  Glenn Morris  <rgm@gnu.org>
70378
70379	Suppress some compiler warnings about pcomplete
70380
70381	* lisp/erc/erc-dcc.el, lisp/eshell/em-xtra.el:
70382	Load pcomplete at run-time too, to silence compiler.
70383
703842018-03-05  Glenn Morris  <rgm@gnu.org>
70385
70386	* lisp/pcmpl-rpm.el (pcmpl-rpm-all-query): Fix typo in previous.
70387
703882018-03-04  Paul Eggert  <eggert@cs.ucla.edu>
70389
70390	uniqify -> uniquify
70391
70392	The latter spelling is more common both within Emacs and in
70393	English-language sources in general (Bug#10048).
70394	* lisp/eshell/esh-util.el (eshell-uniquify-list):
70395	Rename from eshell-uniqify-list.  All callers changed.
70396	* lisp/pcomplete.el (pcomplete-uniquify-list):
70397	Rename from pcomplete-uniqify-list.  All callers changed.
70398
703992018-03-04  Paul Eggert  <eggert@cs.ucla.edu>
70400
70401	Spelling fixes (Bug#10068)
70402
70403	* lisp/gnus/gnus-score.el (gnus-score-find-favorite-words):
70404	Rename from gnus-score-find-favourite-words.
70405	* lisp/hfy-cmap.el (hfy-fallback-color-map)
70406	(hfy-rgb-txt-color-map, hfy-fallback-color-values):
70407	* lisp/htmlfontify.el (hfy-color-vals, hfy-color):
70408	Rename from names that used 'colour' instead of 'color'.
70409
704102018-03-04  Paul Eggert  <eggert@cs.ucla.edu>
70411
70412	Merge from origin/emacs-26
70413
70414	f2caf08ca6 ; Spelling fixes
70415	f0e5f220b6 * lisp/progmodes/grep.el (zrgrep):
70416	a0f71260f8 Minor copyedits in doc/emacs/text.texi
70417	adfe2f580f Remove outdated comment in syntax.el
70418	b80e15b6a6 Prevent Flyspell from changing unrelated words
70419	e385599457 Avoid errors in flymake in builds --without-x
70420	d691e30cb0 More improvements of the Emacs manual
70421
704222018-03-04  Daniel Colascione  <dancol@dancol.org>
70423
70424	Rename marker_free_list to misc_free_list
70425
70426	* src/alloc.c: 'marker_free_list' -> 'misc_free_list' throughout
70427
704282018-03-03  Glenn Morris  <rgm@gnu.org>
70429
70430	* lisp/epa-mail.el (epa-mail-default-recipients): Replace obsolete func.
70431
704322018-03-03  Glenn Morris  <rgm@gnu.org>
70433
70434	Replace some obsolete functions in gnus
70435
70436	* lisp/gnus/mml-sec.el (mml-secure-epg-encrypt):
70437	* lisp/gnus/smime.el (smime-ask-passphrase): Replace obsolete functions.
70438
704392018-03-03  Bill Wohler  <wohler@newt.com>
70440
70441	Add missing findex entries for recently removed kindex entries
70442
70443	* doc/misc/mh-e.texi:
70444
704452018-03-03  Juri Linkov  <juri@linkov.net>
70446
70447	* lisp/isearch.el (search-exit-option): Add options ‘shift-move’ and ‘move’.
70448
70449	Change type from ‘boolean’ to ‘choice’.  Extend docstring.
70450	(isearch-pre-move-point): New variable.
70451	(isearch-pre-command-hook, isearch-post-command-hook):
70452	Handle search-exit-option for values ‘move’ and ‘shift-move’.
70453
70454	* doc/emacs/search.texi (Not Exiting Isearch): Document new
70455	values ‘shift-move’ and ‘move’ of search-exit-option.
70456
70457	https://lists.gnu.org/archive/html/emacs-devel/2018-03/msg00013.html
70458
704592018-03-03  Glenn Morris  <rgm@gnu.org>
70460
70461	Quieten gud.el and gdb-mi.el compilation
70462
70463	* lisp/progmodes/gud.el (gud-gdb):
70464	* lisp/progmodes/gdb-mi.el (gdb):
70465	Suppress "unused lexical argument" warning.
70466
704672018-03-03  Eli Zaretskii  <eliz@gnu.org>
70468
70469	Improve commentary in simple,el
70470
70471	* lisp/simple.el (next-error-last-buffer): Improve commentary.
70472	(Bug#20489)
70473
704742018-03-03  Evgeni Kolev  <evgenysw@gmail.com>
70475
70476	Fix font-lock in perl-mode
70477
70478	* lisp/progmodes/perl-mode.el (perl-font-lock-keywords-1): Prevent
70479	the regexp from matching keywords if they start with a Perl sigil.
70480	(Bug#30549)
70481
704822018-03-02  Glenn Morris  <rgm@gnu.org>
70483
70484	Quieten eshell compilation
70485
70486	* lisp/eshell/em-dirs.el (eshell-dirs-initialize, eshell/pwd):
70487	* lisp/eshell/em-script.el (eshell-script-initialize):
70488	* lisp/eshell/em-unix.el (eshell/whoami):
70489	* lisp/eshell/esh-proc.el (eshell/jobs): Mark unused arguments.
70490
704912018-03-02  Glenn Morris  <rgm@gnu.org>
70492
70493	* lisp/gnus/gnus.el (image-load-path): Declare for without-x builds.
70494
704952018-03-02  Glenn Morris  <rgm@gnu.org>
70496
70497	Merge from origin/emacs-26
70498
70499	0213c8b (origin/emacs-26) mwheel minor consistency fix
70500	82f12b2 * src/window.c (Frecenter): Improve commentary.
70501	04da8f4 Fix downloading non-text files in EWW
70502	832b9ec ; Spelling fixes
70503	dd88499 ; Spelling fixes
70504	3968f72 Rename some mwheel options, for consistency
70505	d6e78de * lisp/vc/add-log.el (add-change-log-entry): Replace obsolete...
70506	5fe0387 Improve the Emacs manual
70507	56ab8e3 * lisp/dired-aux.el (dired-do-create-files): Doc fix.  (Bug#3...
70508
70509	Conflicts:
70510		etc/NEWS
70511		lisp/mwheel.el
70512
705132018-03-02  Glenn Morris  <rgm@gnu.org>
70514
70515	Merge from origin/emacs-26
70516
70517	304278c Further improvements on manuals
70518
705192018-03-01  Noam Postavsky  <npostavs@gmail.com>
70520
70521	Fix issues turned up by previous python.el change
70522
70523	See [1] for more discussion.
70524	* lisp/progmodes/python.el (python--prettify-symbols-alist): Define
70525	the obsolete alias before the variable proper, so that we correctly
70526	get the user's settings regardless of which name they set.
70527	(python-nav-end-of-statement): Add missing backslash.
70528	(python-shell-send-file): Call `expand-file-name' before
70529	`file-local-name', the expansion of "~" could be different on remote
70530	filenames.
70531	(python-mode): Declare prettify-symbols-alist instead of checking if
70532	it's bound.  Use the non-obsolete python-prettify-symbols-alist name,
70533	rather than checking if the obsolete name is bound (it always is too,
70534	but the Emacs 24 byte compiler doesn't recognize that
70535	define-obsolete-variable-alias defines a variable).
70536
70537	[1]: https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00826.html
70538
705392018-03-01  Glenn Morris  <rgm@gnu.org>
70540
70541	* admin/automerge: Quieten initial reset.
70542
705432018-03-01  Paul Eggert  <eggert@cs.ucla.edu>
70544
70545	Arrange for loaddefs files to be greppable
70546
70547	Without this change, ldefs-boot.el contains a couple of stray NUL
70548	bytes, which cause it to be considered to be a non-text file by
70549	tools like GNU grep.
70550	* lisp/emacs-lisp/autoload.el (autoload-print-form):
70551	Set print-escape-control-characters to t.
70552
705532018-03-01  Paul Eggert  <eggert@cs.ucla.edu>
70554
70555	Improve octal-escape output in bool vectors and strings
70556
70557	* src/print.c (octalout): New function.
70558	(print_vectorlike): When printing bool vectors, use
70559	octal escapes for control characters when
70560	print-escape-control-characters is non-nil, so that
70561	the printed representation avoids encoding issues.
70562	Rename locals to avoid byte-vs-char confusion.
70563	(print_object): Don't output unnecessary zeros when
70564	printing octal escapes.  Simplify by using octalout.
70565
705662018-03-01  Glenn Morris  <rgm@gnu.org>
70567
70568	Quieten nnir.el compilation
70569
70570	* lisp/gnus/nnir.el (gnus-inhibit-demon, gnus-article-decode-hook):
70571	Declare dynamic variables.
70572	(nnir-request-group, nnir-retrieve-headers)
70573	(nnir-request-move-article, nnir-request-update-mark)
70574	(nnir-run-swish++, nnir-run-swish-e, nnir-run-namazu)
70575	(nnir-run-notmuch, nnir-registry-action)
70576	(nnir-request-create-group, nnir-request-delete-group)
70577	(nnir-request-list, nnir-request-scan): Mark unused arguments.
70578	(nnir-warp-to-article, nnir-run-imap, nnir-run-gmane)
70579	(nnir-get-active): Remove unused local variables.
70580
705812018-03-01  Glenn Morris  <rgm@gnu.org>
70582
70583	* lisp/progmodes/sql.el (sql-comint-oracle): Silence compiler.
70584
705852018-03-01  Glenn Morris  <rgm@gnu.org>
70586
70587	Quieten url-auth.el compilation
70588
70589	* lisp/url/url-auth.el (url-digest-auth-nonce-count):
70590	Mark unused argument.
70591
705922018-03-01  Glenn Morris  <rgm@gnu.org>
70593
70594	Quieten ses.el compilation
70595
70596	* lisp/ses.el (ses--edit-cell-completion-at-point-function)
70597	(ses--read-printer-completion-at-point-function):
70598	Mark unused arguments.
70599
706002018-03-01  Paul Eggert  <eggert@cs.ucla.edu>
70601
70602	make-docfile: minor fixes and cleanups
70603
70604	* lib-src/make-docfile.c: Include c-ctype.h.
70605	(read_c_string_or_comment, write_c_args, scan_c_stream, skip_white)
70606	(read_lisp_symbol, scan_lisp_file):
70607	Prefer c_isspace etc. to listing characters by hand.
70608	(read_c_string_or_comment): Simplify.
70609	(scan_c_stream, read_lisp_symbol): Use true for boolean 1.
70610	(scan_c_stream): Fix typo (c >= 'Z' && c <= 'Z').
70611	Minor rewrites to avoid duplicate code.
70612	(scan_c_stream, read_lisp_symbol, scan_lisp_file):
70613	Avoid infloop if at EOF.
70614	(skip_white, read_lisp_symbol): Don’t stuff getc result into
70615	‘char’, as this mishandles EOF.
70616
706172018-03-01  Glenn Morris  <rgm@gnu.org>
70618
70619	* lisp/emulation/viper-ex.el (ex-cmd-read-exit): Silence compiler.
70620
706212018-03-01  Glenn Morris  <rgm@gnu.org>
70622
70623	Quieten defun-mh compilation
70624
70625	* lisp/mh-e/mh-acros.el (defun-mh):
70626	Rewrite so the compiler can see it always defines target function.
70627
706282018-03-01  Glenn Morris  <rgm@gnu.org>
70629
70630	Quieten mh-compat compilation
70631
70632	* lisp/mh-e/mh-compat.el (mh-assoc-string)
70633	(mh-replace-regexp-in-string): Silence compiler warnings.
70634
706352018-03-01  Glenn Morris  <rgm@gnu.org>
70636
70637	Simplify mh-thread-set-tables
70638
70639	* lisp/mh-e/mh-thread.el (mh-thread-set-tables):
70640	Rewrite to simplify and remove compiler warning.
70641
706422018-03-01  Glenn Morris  <rgm@gnu.org>
70643
70644	Use select-message-coding-system in mh-comp
70645
70646	* lisp/mh-e/mh-comp.el (mh-send-letter):
70647	Use select-message-coding-system.  (Bug#30060)
70648
706492018-03-01  Eli Zaretskii  <eliz@gnu.org>
70650
70651	Remove redundant test in fns.c
70652
70653	* src/fns.c (extract_data_from_object): Remove redundant
70654	CHECK_BUFFER test.
70655
706562018-02-28  Glenn Morris  <rgm@gnu.org>
70657
70658	Quieten without-x org compilation
70659
70660	* lisp/org/org.el (image-refresh):
70661	* lisp/org/ox-odt.el (clear-image-cache, image-size): Declare.
70662
706632018-02-28  Glenn Morris  <rgm@gnu.org>
70664
70665	Quieten compilation of octave.el
70666
70667	* lisp/progmodes/octave.el (compilation-forget-errors): Re-declare.
70668
706692018-02-28  Glenn Morris  <rgm@gnu.org>
70670
70671	* configure.ac (with_gconf): Respect --without-all.
70672
706732018-02-28  Glenn Morris  <rgm@gnu.org>
70674
70675	Quieten eshell compilation
70676
70677	* lisp/eshell/em-tramp.el: Require esh-cmd.
70678	* lisp/eshell/esh-ext.el: Requie esh-io at runtime too.
70679
706802018-02-28  Glenn Morris  <rgm@gnu.org>
70681
70682	* lisp/url/url-handlers.el (mm-charset-to-coding-system): Declare.
70683
706842018-02-28  Glenn Morris  <rgm@gnu.org>
70685
70686	Fix header comment in generated bovine grammar file
70687
70688	* lisp/cedet/semantic/bovine/grammar.el (bovine--make-parser-1):
70689	Fix header comment in generated scm-by.el.
70690
706912018-02-28  Glenn Morris  <rgm@gnu.org>
70692
70693	Quieten cedet "might not be defined at runtime" compile warnings
70694
70695	* admin/grammars/scheme.by (semantic-parse-region):
70696	* lisp/cedet/ede.el (ede--project-inode):
70697	* lisp/cedet/semantic/texi.el (semantic-analyze-context):
70698	Declare.
70699
707002018-02-28  Glenn Morris  <rgm@gnu.org>
70701
70702	Merge from origin/emacs-26
70703
70704	fd50238 (origin/emacs-26) * doc/lispref/streams.texi (Output Variable...
70705	769ea57 Use "GTK+" where applicable in the manual
70706	5e69219 Document print-escape-control-characters
70707	c00fea9 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/emac...
70708	a2ab0d0 * doc/emacs/killing.texi (Rectangles): Don't use @key for cha...
70709	6288c3d * lisp/emulation/viper.el: Unbreak it.
70710	bf3535e More fixes in the Emacs manual
70711	c87d04e Avoid aborts in 'md5'
70712	9743f48 Mark keys consistently in manuals
70713	ce557a9 Remove @key{} markups from @kindex entries in manuals
70714	71243f0 * doc/emacs/display.texi (Standard Faces): Fix markup of inde...
70715	7a069f3 Fix @kindex entries in manuals
70716	6218933 Fix @cindex entries in manuals
70717	57c9f12 Merge branch 'emacs-26' of git.sv.gnu.org:/srv/git/emacs into...
70718	e415309 Fix @cindex entries in org.texi
70719	560a23e Document reserved keys
70720	105d085 * doc/misc/ebrowse.texi: Use @key{} for keys.
70721
70722	Conflicts:
70723		doc/misc/tramp.texi
70724		etc/NEWS
70725
707262018-02-28  Michael Albinus  <michael.albinus@gmx.de>
70727
70728	Some minor Tramp tweaks
70729
70730	* lisp/net/tramp-adb.el (tramp-adb-get-ls-command): Fix docstring.
70731
70732	* lisp/net/tramp-sh.el (tramp-vc-registered-read-file-names):
70733	Quote file.
70734
70735	* lisp/net/tramp.el (tramp-handle-substitute-in-file-name):
70736	Make it more robust.
70737
707382018-02-28  Dmitry Gutov  <dgutov@yandex.ru>
70739
70740	Support PREDICATE in ido-read-buffer
70741
70742	* lisp/ido.el (ido-predicate): New variable.
70743	(ido-read-buffer): Bind it.
70744	(ido-make-buffer-list): Use it.
70745
707462018-02-27  Dmitry Gutov  <dgutov@yandex.ru>
70747
70748	xref--next-error-function: Move xref's window point
70749
70750	* lisp/progmodes/xref.el (xref--next-error-function): Move
70751	xref's window point if it's visible.  When we don't do that,
70752	navigation can start looping after a while.
70753
707542018-02-27  Dmitry Gutov  <dgutov@yandex.ru>
70755
70756	Fix xref--next-error-function behavior WRT current buffer
70757
70758	* lisp/progmodes/xref.el (xref--show-location): Make sure to
70759	make the target window selected at the end, and its buffer
70760	current (bug#20489).
70761
707622018-02-27  Stefan Monnier  <monnier@iro.umontreal.ca>
70763
70764	* lisp/gnus/mm-decode.el: Use lexical-binding and use cl-lib
70765
70766	(mm-display-parts): Remove unused arg 'no-default'.  Use 'cond'.
70767	(mm-display-external): Use closures rather than `(lambda ...).
70768	Don't bother with 'lexical-let'.
70769	(mm-insert-part): No need for string-to-multibyte now that
70770	'insert' will do that for us now (it used to behave more like
70771	string-make-multibyte).
70772	(mm-pipe-part): Remove unused var 'name'.
70773	(shr-width, shr-content-function, shr-inhibit-images): Declare.
70774	(mm-shr): Use a closure rather than `(lambda ...).
70775
707762018-02-27  Stefan Monnier  <monnier@iro.umontreal.ca>
70777
70778	* lisp/gnus/mm-extern.el: Use lexical-binding
70779
70780	Don't require 'cl'.
70781	(mm-extern-anon-ftp): Remove unused var 'mode'.
70782
707832018-02-27  Noam Postavsky  <npostavs@gmail.com>
70784
70785	Fix python.el for Emacs 24, bump ELPA version to 0.26.1 (Bug#30633)
70786
70787	Since python.el is distributed via GNU ELPA, it should be functional
70788	in earlier Emacs versions.  Also fix some compile warnings.
70789	* lisp/progmodes/python.el: Bump version to 0.26.1.  Define
70790	`prog-first-column' and `file-local-name' also at compile time, as
70791	needed.
70792	(inferior-python-mode-hook): Declare for the benefit of Emacs 24.3.
70793	(python-nav-end-of-statement): Fix format string for assertion error.
70794	(python-shell-tramp-refresh-process-environment): Don't `function'
70795	quote a symbol which might not be fbound.
70796	(python-mode): Only use prettify-symbols settings if they're bound.
70797
707982018-02-27  Glenn Morris  <rgm@gnu.org>
70799
70800	* lisp/nxml/nxml-mode.el (nxml-mode): Remove warning due to #'.
70801
708022018-02-27  Glenn Morris  <rgm@gnu.org>
70803
70804	Quieten without-x gnus compilation
70805
70806	* lisp/gnus/gnus-group.el (image-load-path-for-library):
70807	* lisp/gnus/gnus-sum.el (image-load-path-for-library):
70808	* lisp/gnus/message.el (image-load-path-for-library): Declare.
70809	* lisp/gnus/gnus-cloud.el (gnus-group-refresh-group):
70810	* lisp/gnus/mml.el (image-property): Autoload.
70811
708122018-02-27  Juri Linkov  <juri@linkov.net>
70813
70814	* lisp/simple.el (next-error-find-buffer-function): Set default to #'ignore.
70815
70816	(next-error-find-buffer): Don't check next-error-find-buffer-function
70817	for nil.  (Bug#20489)
70818
708192018-02-27  Stefan Monnier  <monnier@iro.umontreal.ca>
70820
70821	* lisp/dired.el (dired-get-filename): Don't string-to-multibyte
70822
70823	We don't need to convert manually to multibyte now that Emacs doesn't silently
70824	convert (uni)bytes into latin-N chars depending on locale any more.
70825
708262018-02-27  Glenn Morris  <rgm@gnu.org>
70827
70828	Remove last vestiges of obsolete font-lock-face-attributes
70829
70830	* lisp/ps-print.el (ps-font-lock-face-attributes): Remove function.
70831	(ps-build-reference-face-lists):
70832	No longer call ps-font-lock-face-attributes.
70833	* lisp/font-lock.el (font-lock-face-attributes):
70834	Remove stale declaration.
70835
708362018-02-27  Glenn Morris  <rgm@gnu.org>
70837
70838	Remove free variable warning when compiling viper using .el files
70839
70840	* lisp/emulation/viper-cmd.el (viper-saved-mark): Move definition...
70841	* lisp/emulation/viper-util.el (viper-saved-mark): ... to here.
70842
708432018-02-27  Aaron Jensen  <aaronjensen@gmail.com>
70844
70845	Require a larger stack size for threads (bug#30364)
70846
70847	* src/systhread.c (sys_thread_create) [THREADS_ENABLED && HAVE_PTHREAD]:
70848	Require at least 8MB stack size for x64 and 4MB for x86.
70849
708502018-02-27  Paul Eggert  <eggert@cs.ucla.edu>
70851
70852	Update from gnulib
70853
70854	This includes:
70855	2018-02-27 environ: fix link error on 32-bit Cygwin
70856	* doc/misc/texinfo.tex, lib/unistd.in.h: Copy from gnulib.
70857
708582018-02-27  Stefan Monnier  <monnier@iro.umontreal.ca>
70859
70860	* lisp/gnus/mm-util.el: Use lexical-binding and use cl-lib
70861
70862	(mm-iso-8859-x-to-15-region): Remove unused var 'charset'.
70863	(mm-with-unibyte-buffer, mm-with-multibyte-buffer): Use 'declare'.
70864	(mm-with-unibyte-current-buffer): Remove.
70865
708662018-02-27  Michael Albinus  <michael.albinus@gmx.de>
70867
70868	Add ".msu" to Tramp file archives
70869
70870	* doc/misc/tramp.texi (Archive file names):
70871	* lisp/net/tramp-archive.el (tramp-archive-suffixes):  Add ".msu".
70872
708732018-02-26  Glenn Morris  <rgm@gnu.org>
70874
70875	* lisp/dired-aux.el (dired-create-destination-dirs): Doc fix.
70876
708772018-02-26  Mathieu Othacehe  <mathieu.othacehe@parrot.com>  (tiny change)
70878
70879	Add coreutils 'ls' support for tramp adb
70880
70881	* lisp/net/tramp-adb.el (tramp-adb-ls-toolbox-regexp): Allow '.'
70882	character in file permissions. It indicates an SELinux security
70883	context.
70884	(tramp-adb-get-ls-command): Detect Coreutils version of 'ls'.
70885	Use 'ls -1' instead of passing COLUMNS=1 env variable. This is
70886	isofunctional.  (Bug#30594)
70887
708882018-02-26  Michael Albinus  <michael.albinus@gmx.de>
70889
70890	Fix problem in tramp-handle-substitute-in-file-name
70891
70892	* lisp/net/tramp.el (tramp-handle-substitute-in-file-name): Concat "/"
70893	only for local file "~".
70894
708952018-02-26  Glenn Morris  <rgm@gnu.org>
70896
70897	Remove leading * from two defcustom doc strings
70898
70899	* lisp/gnus/mm-util.el (mm-extra-numeric-entities):
70900	* lisp/progmodes/cperl-mode.el (cperl-indent-subs-specially):
70901	Remove obsolete leading * from defcustom doc string.
70902
709032018-02-26  Glenn Morris  <rgm@gnu.org>
70904
70905	Quieten without-x, without-xml2 builds
70906
70907	* lisp/help.el (x-display-pixel-height, x-display-pixel-width):
70908	* lisp/image.el (image-flush, image-size):
70909	* lisp/textmodes/sgml-mode.el (libxml-parse-html-region):
70910	Declare for compiler.
70911
709122018-02-26  Glenn Morris  <rgm@gnu.org>
70913
70914	Quieten without-x mwheel.el compilation
70915
70916	* lisp/mwheel.el (mwheel-tilt-scroll-p, mwheel-flip-direction)
70917	(mwheel-scroll-left-function, mwheel-scroll-right-function)
70918	(mouse-wheel-left-event, mouse-wheel-right-event):
70919	Move definitions before use.
70920
709212018-02-26  Glenn Morris  <rgm@gnu.org>
70922
70923	* lisp/net/zeroconf.el (dbus-debug): Declare for builds without dbus.
70924
709252018-02-26  Glenn Morris  <rgm@gnu.org>
70926
70927	Quieten without-x lisp compilation
70928
70929	* lisp/international/fontset.el (fontset-alias-alist):
70930	* lisp/term/ns-win.el (mouse-wheel-scroll-amount)
70931	(mouse-wheel-progressive-speed): Declare for without-x builds.
70932
709332018-02-26  Glenn Morris  <rgm@gnu.org>
70934
70935	* lisp/net/rcirc.el (rcirc-prompt-start-marker): Define before using.
70936
70937	* lisp/term/ns-win.el (ns-version-string): Declare for non-ns builds.
70938
709392018-02-26  Glenn Morris  <rgm@gnu.org>
70940
70941	Remove compiler warnings due to #'
70942
70943	* lisp/gnus/mm-decode.el (mm-convert-shr-links):
70944	* lisp/ps-print.el (ps-print-region-function):
70945	Remove compiler warnings due to #'.
70946
709472018-02-26  Glenn Morris  <rgm@gnu.org>
70948
70949	Update some lisp function declarations
70950
709512018-02-26  Daniel Colascione  <dancol@dancol.org>
70952
70953	Make bare "make" in src actually build emacs again
70954
70955	* src/Makefile.in (all): Move target ahead of dep-file inclusion.
70956
709572018-02-26  Paul Eggert  <eggert@cs.ucla.edu>
70958
70959	Update from gnulib
70960
70961	* build-aux/config.guess, build-aux/config.sub: Copy from gnulib.
70962
709632018-02-24  Glenn Morris  <rgm@gnu.org>
70964
70965	Merge from origin/emacs-26
70966
70967	560a23e (origin/emacs-26) Document reserved keys
70968	b0be19b ; * doc/emacs/xresources.texi (Table of Resources): Fix last ...
70969
709702018-02-24  Glenn Morris  <rgm@gnu.org>
70971
70972	Merge from origin/emacs-26
70973
70974	7e7f2ea (origin/emacs-26) * src/keyboard.c (syms_of_keyboard): Doc fi...
70975	c0676d4 Improve documentation of X resources
70976	d806d69 ; Use @minus for negative numbers in some texi files
70977	4a8ea7d * lisp/international/mule.el (keyboard-coding-system): Doc fix.
70978	8a73b80 Minor doc fixes, mostly for timestamp issues
70979	361a8b9 * doc/emacs/mini.texi (Completion Styles): Improve indexing.
70980	2dc24d5 Fix @findex and @vindex entries in manuals
70981	76f5242 Document, in the Elisp manual, how to get a character's raw s...
70982	5fb2957 Improvements in the Emacs manual
70983	de17b8e Tiny doc/misc markup fixes
70984
709852018-02-24  Robert Pluim  <rpluim@gmail.com>
70986
70987	Describe 'view-lossage' changes in its docstring and NEWS
70988
70989	* lisp/help.el (view-lossage): Mention that this now uses the same
70990	format as `edit-last-kbd-macro'.  (Bug#30560)
70991
70992	* etc/NEWS: Improve the wording of the entry.
70993
709942018-02-23  Paul Eggert  <eggert@cs.ucla.edu>
70995
70996	* .gitignore: revert latest change; not currently needed
70997
709982018-02-23  Glenn Morris  <rgm@gnu.org>
70999
71000	* lisp/vc/vc-git.el: Silence compiler.
71001
71002	* admin/automerge: Quieten initial pull if start with reset.
71003
710042018-02-22  Eli Zaretskii  <eliz@gnu.org>
71005
71006	Fix documentation from recent changes
71007
71008	* lisp/isearch.el (isearch-yank-symbol-or-char): Doc fix.
71009
71010	* doc/emacs/search.texi (Isearch Yank): Fix wording.
71011	* doc/emacs/building.texi (Grep Searching): Fix last change.
71012
710132018-02-22  Daniel Colascione  <dancol@dancol.org>
71014
71015	Add more build outputs to .gitignore
71016
71017	* .gitignore: Add more generated files
71018
710192018-02-22  Daniel Colascione  <dancol@dancol.org>
71020
71021	Add isearch-yank-symbol-or-char
71022
71023	* doc/emacs/search.texi (Isearch Yank): Document new
71024	function, keybindings.
71025
71026	* etc/NEWS: Mention isearch changes.
71027
71028	* lisp/isearch.el (isearch--yank-char-or-syntax): New function.
71029	(isearch-yank-word-or-char): Call it.
71030	(isearch-yank-symbol-or-char): New function.
71031	(isearch-mode-map): Change 'C-M-w' binding from
71032	'isearch-del-char' to isearch-yank-symbol-or-char; add 'C-M-d'
71033	binding for 'isearch-del-char'.
71034
710352018-02-22  Daniel Colascione  <dancol@dancol.org>
71036
71037	Remove unnecessary explicit subword-mode use from isearch
71038
71039	* lisp/isearch.el (isearch-yank-word-or-char): Remove explicit
71040	use of subword-mode. These days, subword-mode use is an
71041	automatic side effect of forward-word.
71042
710432018-02-22  Glenn Morris  <rgm@gnu.org>
71044
71045	* lisp/vc/vc-git.el: Avoid bootstrap errors since recent grep change.
71046
71047	The introduction of grep-find-hide-properties caused an
71048	"invalid read syntax" failure when saving ja-dic.el,
71049	when vc-git.el loaded grep.el.  Fortunately, vc-git doesn't
71050	actually need to load grep when being compiled.
71051
710522018-02-22  Stefan Monnier  <monnier@iro.umontreal.ca>
71053
71054	* test/lisp/emacs-lisp/package-tests.el: Improve signature tests
71055
71056	(package-test-signed): Don't rely on return value of 'package-install'.
71057	Make sure 'package-install' does indeed install the package.
71058
710592018-02-22  Juri Linkov  <juri@linkov.net>
71060
71061	* lisp/help.el (view-lossage): Use the same format as in edit-last-kbd-macro.
71062
71063	Call comment-indent with let-bound comment-start and comment-column.
71064	(Bug#30560)
71065
710662018-02-22  Juri Linkov  <juri@linkov.net>
71067
71068	* lisp/progmodes/grep.el (grep-find-hide): New defcustom (bug#30503).
71069
71070	(grep-find-hide-properties): New variable.
71071	(grep-mode-font-lock-keywords): Put grep-find-hide-properties
71072	on part of grep command line.
71073	(grep-find-show): New function.
71074	* doc/emacs/building.texi (Grep Searching): Document grep-find-hide.
71075
710762018-02-22  Glenn Morris  <rgm@gnu.org>
71077
71078	Merge from origin/emacs-26
71079
71080	83187cd (origin/emacs-26) Skip mouse-face overlap check when mouse-fa...
71081	a6d8f2b Fix capitalization of "Mail-Followup-To"
71082	f9640f9 * lisp/progmodes/grep.el (grep-compute-defaults):
71083	3a26c8a Semantic manual fixes
71084	106a9f6 More improvements in the Emacs manual
71085	244db85 * doc/misc/viper.texi (File and Buffer Handling): Add missing...
71086	f0d6a16 Fix documentation of 'x-underline-at-descent-line'
71087	69a8f45 * lisp/textmodes/flyspell.el (flyspell-get-word): Doc fix.
71088	05214c6 Correct variable markup in manuals
71089	355c644 Improve the "Sending Mail" chapter of Emacs manual
71090
71091	Conflicts:
71092		src/nsterm.m
71093		src/w32term.c
71094
710952018-02-22  Alexei Khlebnikov  <alexei.khlebnikov@gmail.com>
71096
71097	Fix for: "25.0.50; auto-revert-mode breaks git rebase" (Bug#21559)
71098
71099	* lisp/autorevert.el (auto-revert-handler):
71100	Set "revert-buffer-in-progress-p" flag before calling
71101	"vc-refresh-state".
71102
71103	* lisp/vc/vc-git.el (vc-git-command):
71104	If "revert-buffer-in-progress-p" flag is set, prepend
71105	"GIT_OPTIONAL_LOCKS=0" to "process-environment".  (Bug#21559)
71106
711072018-02-22  Michael Albinus  <michael.albinus@gmx.de>
71108
71109	Fix Bug#30533
71110
71111	* lisp/net/ange-ftp.el (ange-ftp-file-regular-p)
71112	(ange-ftp-real-file-regular-p): New defuns.  (Bug#30533)
71113
711142018-02-21  Glenn Morris  <rgm@gnu.org>
71115
71116	* admin/automerge (merge): Report no. of commits if too few.
71117
711182018-02-21  Glenn Morris  <rgm@gnu.org>
71119
71120	Speed up parallel make check by testing slower files first
71121
71122	* test/Makefile.in (SLOW_TESTS): New variable.
71123	(ELFILES): Move slow tests to the front.
71124
711252018-02-21  Glenn Morris  <rgm@gnu.org>
71126
71127	* admin/automerge: Speed up check phase.
71128
711292018-02-21  Juri Linkov  <juri@linkov.net>
71130
71131	* lisp/simple.el (next-error-find-buffer-function): New defcustom.
71132
71133	(next-error-last-buffer): Make variable buffer-local.
71134	(next-error-buffer-on-selected-frame): New function.
71135	(next-error-find-buffer): Use next-error-find-buffer-function
71136	at the first step instead of ad-hoc logic of using one window
71137	on the selected frame.
71138	(next-error, next-error-internal): Set default value of
71139	next-error-last-buffer.  Display message with the name of last
71140	next-error buffer.
71141	(next-error-select-buffer): New command.
71142	(Bug#20489)
71143
711442018-02-21  Juri Linkov  <juri@linkov.net>
71145
71146	* lisp/vc/vc-dispatcher.el (vc-do-command): Bind message-truncate-lines to t
71147
71148	to keep entire commands in *Messages* but avoid resizing the echo area.
71149	Rephrase messages in a such way that the important parts are
71150	at the beginning.  (Bug#19045)
71151
711522018-02-21  Eli Zaretskii  <eliz@gnu.org>
71153
71154	Another fix for cross-references
71155
71156	* doc/emacs/package.texi (Package Installation): Fix references to
71157	"Early Init".  (Bug#30552)
71158
711592018-02-20  Paul Eggert  <eggert@cs.ucla.edu>
71160
71161	Port recent MAX_RW_COUNT checks to POSIX
71162
71163	* src/sysdep.c (MAX_RW_COUNT): Verify that it fits in POSIX standard
71164	types, to go along with already-existing checks for MS-Windows types.
71165	(emacs_intr_read): eassert on all platforms, not just MS-Windows.
71166
711672018-02-20  Paul Eggert  <eggert@cs.ucla.edu>
71168
71169	Update from gnulib
71170
71171	This includes:
71172	2018-02-18 warnings: Add support for Objective C
71173	2018-02-03 stdlib: Fix compilation error on OpenIndiana
71174	* lib/gnulib.mk.in: Regenerate.
71175	* lib/stdlib.in.h, m4/getloadavg.m4, m4/stdlib_h.m4, m4/warnings.m4:
71176	Copy from gnulib.
71177
711782018-02-20  Sam Steingold  <sds@gnu.org>
71179
71180	command-history-mode inherits from special-mode
71181
71182	(command-history-mode-map): Add `special-mode-map' to parents.
71183	(command-history-mode): Parent is `special-mode', not
71184	`fundamental-mode', set `revert-buffer-function'.
71185	(command-history-revert): Define for `revert-buffer-function'.
71186
711872018-02-20  Eli Zaretskii  <eliz@gnu.org>
71188
71189	Fix reference in Emacs manual
71190
71191	* doc/emacs/custom.texi (Early Init File): Fix reference to ELisp
71192	manual.  (Bug#30552)
71193
711942018-02-20  Paul Eggert  <eggert@cs.ucla.edu>
71195
71196	Fix false alarm with recent GCC x86
71197
71198	* src/lread.c (Fload): Use UNINIT to pacify -Wmaybe-uninitialized
71199	false alarm on Fedora 27 x86 with GCC 7.3.1 20180130 (Red Hat 7.3.1-2).
71200
712012018-02-20  Sam Steingold  <sds@gnu.org>
71202
71203	ns_appsrc is not disjoint with srcdir/ns_appsrc
71204
71205	(links): Avoid "file already exists" errors
71206	by removing the existing file.
71207
712082018-02-20  Glenn Morris  <rgm@gnu.org>
71209
71210	Merge from origin/emacs-26
71211
71212	226aca3 (origin/emacs-26) Fix documentation of 'flyspell-auto-correct...
71213	a8c8434 * doc/emacs/misc.texi (Saving Emacs Sessions): Fix markup.
71214	275e735 More changes in the Emacs manuals
71215	d962be5 More fixes in the Emacs manual
71216	6dc2846 * src/data.c (Faref): Fix a typo in the doc string.  (Bug#30510)
71217	36e729f Minor edit in tramp.texi
71218	6537f99 ; Fix oversight from last commit
71219	eb94588 ; * doc/emacs/maintaining.texi: Fix two typos.
71220	258135f More improvements in the Emacs manual
71221	f138bca Improve documentation of 'electric-pair-mode'
71222	f74ab96 ; Spelling and grammar fixes.
71223	42f9dc4 ; * lisp/textmodes/flyspell.el (flyspell-auto-correct-word): ...
71224
712252018-02-19  Eli Zaretskii  <eliz@gnu.org>
71226
71227	Add assertion to guard 'read' calls on MS-Windows
71228
71229	* src/sysdep.c (emacs_intr_read): Assert that NBYTES never
71230	overflows a 32-bit int.
71231
712322018-02-19  Michael Albinus  <michael.albinus@gmx.de>
71233
71234	Add ".xpi" to Tramp file archives
71235
71236	* doc/misc/tramp.texi (Archive file names):
71237	* lisp/net/tramp-archive.el (tramp-archive-suffixes): Add ".xpi".
71238
712392018-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
71240
71241	* lisp/progmodes/elisp-mode.el (eval-sexp-add-defvars): Don't macroexpand.
71242
71243	Otherwise it breaks C-M-x on (progn (defmacro x ..) (... (x ...))).
71244	Furthermore, many callers do their own macroexpansion anyway.
71245	(elisp--eval-last-sexp): Do macroexpansion to make up for it.
71246
712472018-02-17  Stefan Monnier  <monnier@iro.umontreal.ca>
71248
71249	* lisp/vc/diff-mode.el (diff-wiggle): New command.
71250
712512018-02-17  Stefan Monnier  <monnier@iro.umontreal.ca>
71252
71253	* lisp/startup.el (load-user-init-file): Use condition-case-unless-debug.
71254
71255	(argv, argi): Silence compiler warning.
71256
712572018-02-17  Stefan Monnier  <monnier@iro.umontreal.ca>
71258
71259	* lisp/calendar/icalendar.el: Fix compilation warnings
71260
71261	(icalendar-export-region): Remove unused vars 'start', 'sum', and
71262	'contents-n-summary'.
71263	(icalendar--parse-summary-and-rest): Remove unused var 'pos-sum' and 'sum'.
71264	(icalendar--convert-float-to-ical): Use calendar-let* to bind vars
71265	'date' and 'entry'.
71266	(icalendar--convert-non-recurring-all-day-to-diary):
71267	Remove 'event' arg.  Update callers.
71268	(icalendar--convert-non-recurring-not-all-day-to-diary): Remove 'event'
71269	and 'dtend-dec' args.  Update callers.
71270
712712018-02-17  Glenn Morris  <rgm@gnu.org>
71272
71273	* doc/lispref/package.texi (Packaging Basics): Fix xref.
71274
712752018-02-17  Glenn Morris  <rgm@gnu.org>
71276
71277	Merge from origin/emacs-26
71278
71279	e5a2933 (origin/emacs-26) lisp/vc/: documentation fixes
71280	f21f8e6 Document 'desktop-files-not-to-save'
71281	d8917eb Improve documentation of Profiling features
71282	b228839 Improve indexing of "performance" in ELisp manual
71283	ab67b3e Minor change in Emacs manual's VC chapter
71284	c352434 Avoid memory corruption with specpdl overflow + edebug (Bug#3...
71285	593bbda Document comment-fill-column in the manual (Bug#11636)
71286	bd4cc8d * doc/emacs/dired.texi (Marks vs Flags): Copyedits.
71287	69107f3 ; Fix doc typos related to indefinite articles
71288	aaad1e6 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/emac...
71289	5906418 More fixes for the Emacs manual
71290	9ab3df1 ; Fix doc typos related to indefinite articles
71291	66a4e65 ; Fix doc typos related to indefinite articles
71292	35e5c57 ; Fix doc typos related to indefinite articles
71293
712942018-02-17  Noam Postavsky  <npostavs@gmail.com>
71295
71296	Use pkg-config to find lcms2 CFLAGS and LIBS (Bug#30346)
71297
71298	* configure.ac: Use EMACS_CHECK_MODULES fors LCMS2 rather than
71299	AC_SEARCH_LIBS.
71300	* src/Makefile.in: Get LCMS2_LIBS and LCMS2_CFLAGS from configure,
71301	instead of just LIBLCMS2.
71302
713032018-02-17  Allen Li  <darkfeline@felesatra.moe>
71304
71305	Preserve special abbrev properties when writing
71306
71307	Fixes bug#29924
71308
71309	* lisp/abbrev.el (abbrev--write): Write abbrev properties when set.
71310
713112018-02-17  Alan Third  <alan@idiocy.org>
71312
71313	Fix modifier key handling on macOS
71314
71315	* configure.ac: Use the Carbon framework on macOS.
71316	* src/nsterm.m (ns_get_shifted_character) [NS_IMPL_COCOA]: New function.
71317	(EmacsView::keyDown) [NS_IMPL_COCOA]: Use ns_get_shifted_character
71318	when we have shift style modifiers.
71319
713202018-02-17  Eli Zaretskii  <eliz@gnu.org>
71321
71322	Make echo-area buffers  almost always multibyte
71323
71324	* src/xdisp.c (setup_echo_area_for_printing, set_message_1): Ensure
71325	the echo-area buffer is multibyte, unless
71326	unibyte-display-via-language-environment is non-nil, and the text
71327	we are to display is or could be unibyte.  (Bug#30405)
71328
713292018-02-17  Radon Rosborough  <radon.neon@gmail.com>
71330
71331	Add early init file, stop package-initialize insertion
71332
71333	Discussion on emacs-devel leading up to this change (approximately 150
71334	messages):
71335
71336	- https://lists.gnu.org/archive/html/emacs-devel/2017-08/msg00154.html
71337	- https://lists.gnu.org/archive/html/emacs-devel/2017-08/msg00433.html
71338	- https://lists.gnu.org/archive/html/emacs-devel/2017-09/msg00023.html
71339	- https://lists.gnu.org/archive/html/emacs-devel/2017-09/msg00599.html
71340	- https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00332.html
71341
71342	* lisp/startup.el (early-init-file): New variable.
71343	(load-user-init-file): New function.
71344	(command-line): Load the early init file using `load-user-init-file'.
71345	Move the check for an invalid username to just before that, and move
71346	the initialization of the package system to just after.  Load the
71347	regular init file using `load-user-init-file'.
71348	* lisp/emacs-lisp/package.el (package--ensure-init-file): Remove
71349	definition, usage, and documentation.
71350	(package--init-file-ensured): Remove definition and usage.
71351
71352	* src/lread.c (Vuser_init_file): Note change in semantics due to its
71353	usage while loading the early init file.
71354
71355	* doc/emacs/custom.texi: Document early init file.
71356	* doc/emacs/package.texi: Document changes to when package-initialize
71357	is called.  Change terminology for package 'loading'.
71358	* doc/lispref/os.texi: Document early init file.  Update startup
71359	summary.
71360	* doc/lispref/package.texi: Document changes to when
71361	package-initialize is called, and advise against calling it in the
71362	init file.  Change terminology for package 'loading'.
71363	* doc/misc/org.texi: Don't recommend to call package-initialize in the
71364	init file.
71365
713662018-02-17  Alan Mackenzie  <acm@muc.de>
71367
71368	Fix the change from 2018-02-15 which didn't mention literals
71369
71370	* doc/emacs/programs.texi (Left Margin Paren): Document that opening
71371	delimiters at column 0 which are inside strings or comments aren't regarded as
71372	defun starts.
71373
713742018-02-16  Glenn Morris  <rgm@gnu.org>
71375
71376	Quieten compilation of icalendar.el
71377
71378	* lisp/calendar/icalendar.el (icalendar-import-buffer)
71379	(icalendar--convert-ical-to-diary, icalendar--add-diary-entry):
71380	Eliminate "Lexical argument shadows the dynamic variable" warning.
71381
713822018-02-16  Glenn Morris  <rgm@gnu.org>
71383
71384	Merge from origin/emacs-26
71385
71386	a06a8ed (origin/emacs-26) ; * lisp/vc/vc-git.el (vc-git--program-vers...
71387	edc06ad Make 'byte-compile-error-on-warn' a safe file variable
71388	9f5d8da ; * lisp/textmodes/flyspell.el (flyspell-auto-correct-word): ...
71389	f73905a Fix the doc string of flyspell-auto-correct-word
71390	e9c7ddc Improve the MS-Windows appendix of the Emacs manual
71391	6ddb4bd Fix 'vc-git--program-version'
71392	63c93f7 Fix typos and wording in the Emacs manual
71393	42f15b0 * doc/emacs/programs.texi (Semantic): Order programming langu...
71394	b46be29 More improvements for the Emacs manual
71395	874c0ed Minor wording change in Emacs manual
71396	53511f9 Another set of changes for the manual
71397	78426b8 Improvements on tramp.texi
71398	0dca618 Tramp minor doc fixes
71399
71400	Conflicts:
71401		doc/misc/tramp.texi
71402
714032018-02-16  Matthias Dahl  <matthias.dahl@binary-island.eu>
71404
71405	Fix wait_reading_process_output wait_proc hang
71406
71407	* src/process.c (read_process_output): Track bytes read from
71408	a process.
71409	(wait_reading_process_output): If called recursively through
71410	timers and/or process filters via accept-process-output, it is
71411	possible that the output of wait_proc has already been read by
71412	one of those recursive calls, leaving the original call hanging
71413	forever if no further output arrives through that fd and no
71414	timeout has been set.  Fix that by using the process read
71415	accounting to keep track of how many bytes have been read and
71416	use that as a condition to break out of the infinite loop and
71417	return to the caller as well as to calculate the proper return
71418	value (if a wait_proc is given that is).
71419
71420	* src/process.h (struct Lisp_Process): Add nbytes_read to track
71421	bytes read from a process.
71422
714232018-02-16  Aaron Jensen  <aaronjensen@gmail.com>
71424
71425	Don't flash previous buffer when connecting with emacsclient
71426
71427	* lisp/server.el (server-execute): Accept lambda for creating
71428	frame rather than frame.  Ensure newly created tty frame
71429	initially shows the correct buffer.
71430	(server-process-filter): Pass a lambda to server-execute to create
71431	a frame.  (Bug#24218)
71432
714332018-02-15  Alan Mackenzie  <acm@muc.de>
71434
71435	Document open-paren-in-column-0-is-defun-start being of less importance
71436
71437	* doc/emacs/programs.texi (Left Margin Paren): Update to reflect the recent
71438	change in syntax.c, whereby a paren at column 0 is no longer taken as a
71439	beginning of defun in moving backwards over comments.
71440
714412018-02-14  Stefan Monnier  <monnier@iro.umontreal.ca>
71442
71443	* lisp/calendar/diary-lib.el (diary-remind): Fix bug#30455.
71444
71445	(diary-remind): Bind `days' as documented for diary-remind-message.
71446
714472018-02-13  Glenn Morris  <rgm@gnu.org>
71448
71449	Stop keeping multiple doc copies for items defined multiple times
71450
71451	It was always a nuisance to keep all the copies in sync.
71452	* src/doc.c (Fsnarf_documentation): Don't skip entire files.
71453	Instead, skip individual doc strings starting with "SKIP".
71454	* doc/lispref/internals.texi (Writing Emacs Primitives):
71455	Mention this skipping.
71456	* lisp/term/ns-win.el, lisp/term/pc-win.el, src/dosfns.c:
71457	* src/frame.c, src/nsfns.m, src/nsmenu.m, src/nsterm.m:
71458	* src/w16select.c, src/w32fns.c, src/w32menu.c, src/w32select.c:
71459	* src/w32term.c, src/xmenu.c: Remove duplicated doc strings.
71460	* src/xfns.c: Merge in information from doc string duplicates.
71461
714622018-02-13  Glenn Morris  <rgm@gnu.org>
71463
71464	Doc tweak for x-use-underline-position-properties
71465
71466	* src/xterm.c (syms_of_xterm) <x-use-underline-position-properties>:
71467	Remove ancient information from doc.
71468	* etc/PROBLEMS: Related edit.
71469
714702018-02-13  Glenn Morris  <rgm@gnu.org>
71471
71472	Merge from origin/emacs-26
71473
71474	333d6f4 (origin/emacs-26) More changes in the Emacs manual
71475	52ca0d1 * lisp/vc/vc.el (vc-deduce-backend): Use ignore-errors.
71476	69e8046 Don't signal error in vc-deduce-backend
71477	f568c91 * doc/misc/tramp.texi: Index more user options.
71478	92ca881 Minor change in the Emacs manual
71479	e055a12 NEWS update about 'string-trim'
71480	96b6e24 Clarify TRAMP process-environment interaction (Bug#30419)
71481	4fa467e * lisp/progmodes/grep.el (grep-num-matches-found): New variable.
71482	a22820a Avoid aborts in cm.c due to too small TTY frame
71483	26f6441 Another set of improvements in the Emacs manual
71484	cef3b42 Fix help in mode-line-mode-menu
71485	f8a493c Improve documentation of desktop restoring
71486	10637af Improve the Emacs manual's chapter "Frames"
71487	d924953 Fix unbound mm-uu-entry in mm-uu
71488	cb2487b Improve Emacs user manual in fixit.texi
71489	66e9527 Another minor change in the manual
71490	6a1c03d More minor changes in the Emacs manual
71491	32fb8c4 Avoid printing garbled error message from image.el
71492
71493	Conflicts:
71494		etc/NEWS
71495		lisp/image.el
71496
714972018-02-13  Philipp Stephani  <phst@google.com>
71498
71499	Fix NS-related compilation errors.
71500
71501	* src/nsterm.m (ns_set_represented_filename): Remove unused variable
71502	'view'.
71503
71504	* src/nsfns.m (x_implicitly_set_name, syms_of_nsfns): The type of a
71505	variable defined with DEFVAR_BOOL is 'bool', not 'Lisp_Object'.
71506
715072018-02-12  Rami Ylimäki  <rami.ylimaki@vincit.fi>
71508
71509	Expand direct color description in Emacs FAQ
71510
71511	* doc/misc/efaq.texi (Colors on a TTY): Show how to list direct
71512	mode TERM definitions.  (Bug#30429)
71513
715142018-02-12  Stefan Monnier  <monnier@iro.umontreal.ca>
71515
71516	* lisp/gnus/message.el (message-ecomplete-capf): Fix call convention.
71517
715182018-02-12  Noam Postavsky  <npostavs@gmail.com>
71519
71520	* lisp/progmodes/python.el: Bump package version to 0.26.
71521
715222018-02-12  Paul Eggert  <eggert@cs.ucla.edu>
71523
71524	Work if libpng is in /usr/local (2nd try)
71525
71526	Problem reported by Werner Lemberg in:
71527	https://lists.gnu.org/r/emacs-devel/2018-02/msg00304.html
71528	with a further fix suggested by Glenn Morris in Bug#30431#14.
71529	* configure.ac: Try pkg-config before libpng-config.
71530	Adjust LIBPNG accordingly, and append -lz regardless of
71531	whether it was pkg-config.
71532
715332018-02-12  Paul Eggert  <eggert@cs.ucla.edu>
71534
71535	Finish renaming to internal--daemon-sockname
71536
71537	* doc/lispref/processes.texi (Misc Network): Omit discussion of
71538	internal--daemon-sockname, as non-Emacs code shouldn't rely on it.
71539	* src/process.c (syms_of_process): Rename internal-daemon-sockname
71540	to internal--daemon-sockname.  All uses changed.
71541
715422018-02-12  Matthew Leach  <matthew@mattleach.net>
71543
71544	Rename internal--external-sockname and document (Bug#24218)
71545
71546	* lisp/server.el: Rename `internal--external-sockname' to
71547	  `internal-daemon-sockname'.
71548	* src/process.c: Likewise.
71549	* doc/lispref/processes.texi: Document `internal-daemon-sockname'.
71550
715512018-02-12  Matthew Leach  <matthew@mattleach.net>
71552
71553	Update `server-name' :version & document sockname (Bug#24218)
71554
71555	* lisp/server.el: (server-name): Update :version tag.
71556	* etc/NEWS: Document that `server-name' and `server-socket-dir'
71557	  automatically update.
71558	* doc/emacs/misc.texi: (Emacs Server): Likewise.
71559
715602018-02-12  Paul Eggert  <eggert@cs.ucla.edu>
71561
71562	Minor cleanups for server-name fix (Bug#24218)
71563
71564	* lisp/server.el (server--external-socket-initialized): Rename
71565	from server-external-socket-initialised, since it should be
71566	private and Emacs uses American spelling.  All uses changed.
71567	* src/emacs.c, src/lisp.h: Revert previous changes, as the
71568	initialization is now done in src/process.c, which already
71569	includes the relevant files.
71570	* src/process.c (union u_sockaddr): Move decl to top level.
71571	(external_sock_name, Fget_external_sockname): Remove, replacing
71572	with Vinternal__external_sockname.  All uses changed.
71573	(init_process_emacs): Deduce socket name ourselves rather than
71574	have main.c do it.  Use conv_sockaddr_to_lisp instead of doing
71575	it by hand.  Conditionalize it on HAVE_GETSOCKNAME.
71576
715772018-02-12  Matthew Leach  <matthew@mattleach.net>
71578
71579	Fix `server-name' and `server-socket-dir' for (Bug#24218)
71580
71581	* lisp/server.el: (server-external-socket-initialised): New
71582	(server-name): Compute server name from `get-external-sockname'.
71583	(server-socket-dir): Compute socket dir from
71584	`get-external-sockname'.
71585	(server-start): Don't check for existing server when an
71586	uninitialised external socket has been passed to Emacs.
71587	* src/emacs.c: (main): Obtain socket name via getsockname and pass
71588	to `init_process_emacs'.
71589	* src/lisp.h: (init_process_emacs): Add second parameter.
71590	* src/process.c: (external_sock_name): New.
71591	(get-external-sockname): New.
71592	(init_process_emacs): Set `external_sock_name' to `sockname'
71593	parameter.
71594
715952018-02-12  Tom Tromey  <tom@tromey.com>
71596
71597	Minor fixes to .gdbinit
71598
71599	* src/.gdbinit (xcompiled): Emit a final newline.
71600	(python): Define "long" if not already defined.  Use casts to long,
71601	not int.
71602
716032018-02-12  Paul Eggert  <eggert@cs.ucla.edu>
71604
71605	Revert libpng /usr/local patch
71606
71607	It broke builds on Arch, Debian, OpenSuSE; see thread containing:
71608	https://lists.gnu.org/r/2018-02/msg00330.html
71609	* configure.ac: Don't try pkg-config; just use libpng-config.
71610
716112018-02-11  Paul Eggert  <eggert@cs.ucla.edu>
71612
71613	Work even if libpng is installed in /usr/local
71614
71615	Problem reported by Werner Lemberg in:
71616	https://lists.gnu.org/r/emacs-devel/2018-02/msg00304.html
71617	* configure.ac: Try pkg-config before libpng-config.
71618
716192018-02-11  Dmitry Gutov  <dgutov@yandex.ru>
71620
71621	Fix an infloop in python-nav-beginning-of-statement
71622
71623	* lisp/progmodes/python.el (python-nav-beginning-of-statement):
71624	Fix an infloop (bug#30277).
71625
716262018-02-11  Paul Eggert  <eggert@cs.ucla.edu>
71627
71628	Merge from pkg-config
71629
71630	* m4/pkg.m4: Copy from pkg-config 0.29.2.
71631
716322018-02-11  Alan Third  <alan@idiocy.org>
71633
71634	Fix modifier keys on NS port
71635
71636	* src/nsterm.m (EV_MODIFIERS_OPTION):
71637	(EV_MODIFIERS_CONTROL):
71638	(EV_MODIFIERS_COMMAND): New macros.
71639	(ev_modifiers_helper): New function.
71640	(EV_MODIFIERS2): Use new helper function.
71641	(EmacsView::keyDown): Remove duplicate functionality and handle fn key
71642	correctly.
71643
716442018-02-11  Alan Third  <alan@idiocy.org>
71645
71646	Tidy up NS keybindings
71647
71648	* lisp/term/ns-win.el: Remove unneeded mappings to super-shifted keys.
71649
716502018-02-11  Alan Third  <alan@idiocy.org>
71651
71652	Remove NS special handling of 'frame-title-format'
71653
71654	* lisp/term/ns-win.el (frame-title-format, icon-title-format): Change
71655	default format to just the filename.
71656	* src/nsfns.m (ns-use-proxy-icon): New variable.
71657	(ns_set_name_as_filename): Remove function.
71658	(x_implicitly_set_name): Get rid of special handling of
71659	frame-title-format.
71660	* src/nsterm.h (ns_set_represented_filename): Use new definition.
71661	* src/nsterm.m (ns_set_represented_filename): Move some of the logic
71662	from ns_set_name_as_filename into this function.
71663
716642018-02-11  Paul Eggert  <eggert@cs.ucla.edu>
71665
71666	* src/xdisp.c (Vmessage_stack): Fix comment to match code.
71667
716682018-02-11  Michael Albinus  <michael.albinus@gmx.de>
71669
71670	Fix handling of file notifications in tramp-gvfs.el
71671
71672	* lisp/net/tramp-archive.el (tramp-archive-dissect-file-name):
71673	Fix docstring.
71674
71675	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
71676	Use consequently "gio monitor".
71677	(tramp-gvfs-monitor-process-filter): Rename from
71678	`tramp-gvfs-monitor-file-process-filter'.  Adapt implementation.
71679
71680	* lisp/net/tramp-sh.el (tramp-gio-events): Move this ...
71681	* lisp/net/tramp.el (tramp-gio-events): ... here.
71682
716832018-02-10  Juri Linkov  <juri@linkov.net>
71684
71685	* lisp/window.el (display-buffer--maybe-at-bottom): New function (bug#30314).
71686
71687	(display-buffer--maybe-pop-up-frame)
71688	(display-buffer--maybe-pop-up-window): New functions created from
71689	display-buffer--maybe-pop-up-frame-or-window.
71690	(display-buffer--maybe-pop-up-frame-or-window): Call
71691	display-buffer--maybe-pop-up-frame or
71692	display-buffer--maybe-pop-up-window.
71693	(display-buffer-at-bottom): Fix parens.
71694
71695	* lisp/minibuffer.el (minibuffer-completion-help): Use
71696	display-buffer--maybe-pop-up-frame instead of let-binding
71697	pop-up-windows to nil.
71698
71699	* lisp/files.el (hack-local-variables-confirm)
71700	(save-buffers-kill-emacs): Use display-buffer--maybe-at-bottom.
71701
717022018-02-10  Juri Linkov  <juri@linkov.net>
71703
71704	* lisp/comint.el (comint-after-pmark-p): Check if buffer has a live process.
71705
71706	Return nil if not.
71707	(comint-history-isearch-setup): Don't check if process is live.
71708	Always check if shell prompt is empty regardless of the value
71709	of comint-history-isearch. (Bug#30187)
71710
717112018-02-10  Rami Ylimäki  <rami.ylimaki@vincit.fi>
71712
71713	Support standard Terminfo direct mode terminals
71714
71715	Latest Terminfo introduces terminal definitions that support direct
71716	color mode.  The "Co"/"colors" capability is set to 0x1000000 on these
71717	terminals and Emacs is already compatible with them.
71718	However, if used Terminfo library hasn't been compiled with 32-bit
71719	value support, "Co"/"colors" is truncated to 0x7fff.  In this case
71720	direct color mode support can be detected from the "RGB" capability
71721	flag.
71722	There are some minor problems if the color count isn't corrected from
71723	0x7fff.  First eight standard colors defined in xterm-standard-colors
71724	are shown correctly.  However, their RGB values match the terminal
71725	settings, not the RGB values defined in xterm-standard-colors.  Bright
71726	versions of these colors are shown incorrectly.  They are interpreted
71727	as pixels #000008 - #000015, which are very dark shades of blue.
71728
71729	* src/term.c (init_tty): Force terminal color count to 0x1000000 if
71730	"RGB" capability is present.
71731	* src/tparam.h: Define prototype for tigetflag.  (Bug#30308)
71732
71733	* doc/misc/efaq.texi (Colors on a TTY): Add information about direct
71734	mode terminals supported by Terminfo.
71735
717362018-02-10  Eli Zaretskii  <eliz@gnu.org>
71737
71738	Avoid infinite recursion in file_directory_p
71739
71740	* src/fileio.c (file_directory_p) [DOS_NT]: Call faccessat on
71741	MS-DOS as well, to avoid infinite recursion introduced by last
71742	change in this function.
71743
717442018-02-10  Martin Rudalics  <rudalics@gmx.at>
71745
71746	Make tooltip code handle scenarios from Bug#30182 and Bug#30399
71747
71748	Move calculation of the mode line default help echo from
71749	note_mode_line_or_margin_highlight to display_mode_lines
71750	(Bug#30182).  Fix cursor type for dragging the mode line.
71751	Normalize FRAME argument of Fx_show_tip before assigning it to
71752	tip_last_frame and handle the transition from GTK+ to Emacs
71753	tooltips and vice-versa in x_hide_tip (Bug#30399).
71754
71755	* src/window.h (struct window): New Lisp member
71756	mode_line_help_echo.
71757	(wset_mode_line_help_echo): New function.
71758	* src/w32fns.c (Fx_show_tip): Normalize the FRAME argument
71759	bevore storing it in tip_last_frame (Bug#30399).
71760	* src/xdisp.c (display_mode_lines): Calculate mode line
71761	default help echo string here and store it in the window's
71762	mode_line_help_echo slot (Bug#30182).
71763	(note_mode_line_or_margin_highlight): Use value in window's
71764	mode_line_help_echo slot as mode line default help echo.  When
71765	the window is resizable show a vertical drag cursor instead of
71766	the vertical scroll bar cursor.
71767	* src/xfns.c (x_hide_tip): Rewrite the GTK+ part to correctly
71768	handle the transition from GTK+ system to Emacs tooltips and
71769	vice-versa (Bug#30399).
71770	(Fx_show_tip): Normalize the FRAME argument bevore storing it
71771	in tip_last_frame (Bug#30399).
71772
717732018-02-10  Michael Albinus  <michael.albinus@gmx.de>
71774
71775	Handle "gio monitor" in tramp-sh.el
71776
71777	* lisp/net/tramp-sh.el (tramp-gio-events): New defconst.
71778	(tramp-sh-handle-file-notify-add-watch): Handle "gio monitor" extra.
71779	(tramp-sh-gio-monitor-process-filter)
71780	(tramp-get-remote-gio-monitor): New defuns.
71781	(tramp-sh-gvfs-monitor-dir-process-filter)
71782	(tramp-get-remote-gvfs-monitor-dir): Do not check for gio anymore.
71783
717842018-02-09  Glenn Morris  <rgm@gnu.org>
71785
71786	Merge from origin/emacs-26
71787
71788	0276743 (origin/emacs-26) Doc string fix in latin-alt.el
71789	c9269af Minor improvements in package.texi
71790	898a3e4 Minor improvement in Emacs user manual
71791	8f7d718 * doc/lispref/anti.texi (Antinews): Replace 25.2 with 25.3.
71792	989d0af Improve documentation of mini-window resizing
71793	923e415 More changes in the Emacs manual
71794	565adf2 Clarify that text-quoting-style doesn't affect *Info* (Bug#24...
71795	2dd273b Mention that shell quoting of % on w32 may fail (Bug#19350)
71796	19fa6d5 Fix --no-build-details for w32 and macOS
71797	979944c * doc/lispref/anti.texi (Antinews): Add some more antinews.
71798	c2727e3 Fix crashes when run with --no-build-details
71799	dc08490 More changes for the manual
71800	04c5bd5 Doc fixes for process functions (Bug#30349)
71801	e209034 Fix shr and CSS 4 color maps
71802	5fe8192 Yet another round of improvements in the manual
71803
71804	Conflicts:
71805		doc/emacs/files.texi
71806		test/lisp/subr-tests.el
71807
718082018-02-08  Daniel Colascione  <dancol@dancol.org>
71809
71810	Fix iswitchb highlighting: don't mutate buffer name
71811
71812	* lisp/obsolete/iswitchb.el (iswitchb-completions): Copy buffer name
71813	  before applying face
71814
718152018-02-08  Stefan Monnier  <monnier@iro.umontreal.ca>
71816
71817	* lisp/emacs-lisp/cl-macs.el (cl--sm-macroexpand): Handle lambda!
71818
71819	(cl--old-macroexpand): Remove.
71820	(cl--sm-macroexpand): Change its calling convention, so it can use
71821	advice-add.  Extend re-binding treatment of vars so it applies to all
71822	var-introducing forms rather than only to 'let'.
71823	(cl-symbol-macrolet): Use advice-add rather than fset.
71824
718252018-02-08  Glenn Morris  <rgm@gnu.org>
71826
71827	Remove unused duplicate of minibuffer-completion-contents
71828
71829	* src/minibuf.c (Fminibuffer_completion_contents): Remove.
71830	Unused since introduction of minubuffer.el 2008-04-09.
71831	(syms_of_minibuf): Remove Sminibuffer_completion_contents.
71832	* lisp/minibuffer.el (minibuffer-completion-contents): Doc tweak.
71833
718342018-02-06  Juri Linkov  <juri@linkov.net>
71835
71836	* lisp/comint.el (comint-history-isearch-setup): Check if process is live.
71837
71838	Don't activate comint-history isearch when shell prompt is empty
71839	like in all *Async Shell Command* buffers. (Bug#30187)
71840
718412018-02-06  Juri Linkov  <juri@linkov.net>
71842
71843	* lisp/dired.el (dired-get-marked-files): Add new optional arg 'error'.
71844
71845	Call user-error when it's non-nil and result is empty (bug#30285).
71846
71847	* lisp/dired-aux.el (dired-do-chxxx, dired-do-chmod)
71848	(dired-do-print, dired-do-async-shell-command)
71849	(dired-do-shell-command, dired-do-compress-to)
71850	(dired-mark-confirm, dired-do-create-files)
71851	(dired-do-isearch, dired-do-isearch-regexp)
71852	(dired-do-query-replace-regexp, dired-do-find-regexp):
71853	* lisp/dired-x.el (dired-do-find-marked-files):
71854	Set arg 'error' of dired-get-marked-files call to t.
71855
718562018-02-06  Juri Linkov  <juri@linkov.net>
71857
71858	Support occur command operating on the region from Isearch.
71859
71860	* lisp/isearch.el (isearch-occur): Use region-bounds as region arg of occur.
71861	(isearch-query-replace): Use use-region-p.
71862
71863	* lisp/replace.el (occur--region-start-line): Rename from
71864	occur--matches-threshold.
71865	(occur): Use complete lines when region is active for line-oriented occur.
71866	(occur-engine): Count lines either from occur--region-start-line or 1.
71867
718682018-02-05  Paul Eggert  <eggert@cs.ucla.edu>
71869
71870	Work around macOS faccessat bug
71871
71872	* src/fileio.c (file_accessible_directory_p): Append an
71873	extra "/" to work around macOS bug in faccessat (Bug#30350).
71874
718752018-02-05  Juri Linkov  <juri@linkov.net>
71876
71877	Support list-matching-lines-jump-to-current-line for context lines.
71878
71879	* lisp/replace.el (occur--orig-line-str): Remove.
71880	(occur): Remove occur--orig-line-str.
71881	(occur-engine): Use add-face-text-property to add the face
71882	list-matching-lines-current-line-face to the current line.
71883	Use previous-single-property-change to find occur--final-pos.
71884	(occur-context-lines): New args orig-line and multi-occur-p.
71885	Find the current line in context lines and add face to it.
71886	(Bug#30281)
71887
718882018-02-05  Glenn Morris  <rgm@gnu.org>
71889
71890	Merge from origin/emacs-26
71891
71892	c787a49 (origin/emacs-26) * lisp/vc/vc-git.el (vc-git-print-log): Res...
71893	b654791 * doc/emacs/misc.texi (Interactive Shell): Refer to node "Min...
71894	f1102d2 Yet another round of fixing the Emacs manual
71895	76b5a68 * etc/NEWS: Expunge the solecism "allow(s)" + infinitive
71896	b4ff8cc Two minor fixes in Antinews
71897	aafcd12 * etc/NEWS: Rename image-dired-thumb-job-limit
71898	a893924 * lisp/simple.el (async-shell-command, shell-command): Fix gr...
71899	699081f Fix deferred display of async shell-command buffers
71900	d2d5e54 Mention remote file name completion in Emacs manual
71901	f589f5a Yest another round of manual copyedits
71902	1ed4089 Update xdisp.c commentary
71903	e23de39 Fix Bug#30324
71904	e1a9dc0 Recognize Org as builtin package (bug#30310)
71905
71906	Conflicts:
71907		etc/NEWS
71908
719092018-02-05  Michael Albinus  <michael.albinus@gmx.de>
71910
71911	Fix inconsistency expanding "//" in Tramp
71912
71913	* doc/misc/tramp.texi (File name completion): Adapt example
71914	expanding "//".
71915
71916	* lisp/net/tramp.el (tramp-handle-substitute-in-file-name): "//" shall
71917	expand the localname only, even when on top of the local part.
71918
71919	* test/lisp/net/tramp-tests.el (tramp-test04-substitute-in-file-name):
71920	Adapt test.
71921
719222018-02-04  Philipp Stephani  <phst@google.com>
71923
71924	Fix handling of modifier keys on macOS
71925
71926	* src/nsterm.m (keyDown:): Distinguish between shift-like and
71927	control-like modifier keys.  Allow treating ⌘ as shift-like
71928	modifier (e.g. for the Gujarati – QUERTY input method, where ⌘
71929	switches to QUERTY.)
71930
71931	* lisp/cus-start.el (standard): Change nil to none for
71932	ns-command-modifier; update description.
71933
71934	* etc/NEWS: Add NEWS entry.
71935
719362018-02-04  Michael Albinus  <michael.albinus@gmx.de>
71937
71938	Make tramp-archive fit for older Emacsen
71939
71940	* lisp/net/tramp-archive.el (tramp-archive-enabled)
71941	(tramp-archive-file-name-handler-alist)
71942	(tramp-archive-file-name-handler): Adapt docstring.
71943	(tramp-register-archive-file-name-handler): Remove it from
71944	`after-init-hook' when unloading.
71945	(tramp-archive-gvfs-host): New defsubst.
71946	(tramp-archive-dissect-file-name): Use it.
71947
71948	* lisp/net/tramp-cmds.el (tramp-cleanup-all-connections):
71949	Check that `tramp-archive-enabled' is bound.
71950
71951	* test/lisp/net/tramp-archive-tests.el (tramp-archive-test42-auto-load):
71952	Check also that tramp-archive is not loaded when Tramp is loaded.
71953	(tramp-archive-test42-delay-load): Adapt test messages.
71954
719552018-02-03  Paul Eggert  <eggert@cs.ucla.edu>
71956
71957	Avoid EOVERFLOW problems with file-directory-p
71958
71959	This fixes a bug where (file-directory-p FOO) would fail if FOO
71960	had an inode number out of range for ‘stat’.
71961	* src/fileio.c (file_directory_p): Accept a Lisp string instead of
71962	a C string.  All callers changed.  On non-MS-Windows hosts, use
71963	openat with O_PATH|O_DIRECTORY if available, otherwise
71964	file_accessible_directory_p unless it fails due to EACCESS,
71965	otherwise stat.
71966
719672018-02-03  Philipp Stephani  <phst@google.com>
71968
71969	Add tests to verify error propagation in 'json-insert'.
71970
71971	* test/src/json-tests.el (json-tests--error): New error symbol.
71972	(json-insert/signal, json-insert/throw): New tests.
71973
719742018-02-03  Noam Postavsky  <npostavs@gmail.com>
71975
71976	Don't require all file-attributes to be equal (Bug#30327)
71977
71978	* test/lisp/files-tests.el (files-tests-file-attributes-equal): New
71979	function.
71980	(files-tests-file-name-non-special-directory-files-and-attributes)
71981	(files-tests-file-name-non-special-file-attributes): Use it instead of
71982	`equal'.
71983
719842018-02-03  Michael Albinus  <michael.albinus@gmx.de>
71985
71986	* test/lisp/files-tests.el (files-tests--with-temp-non-special):
71987
71988	Expand `temporary-file-directory' by `file-truename', in case
71989	it is located on a symlinked directory.  (Bug#30327)
71990
719912018-02-03  Michael Albinus  <michael.albinus@gmx.de>
71992
71993	Prevent loading tramp-archive when it cannot be used
71994
71995	* lisp/files.el (locate-dominating-file): Check, that FILE is
71996	a directory when traversing the tree.
71997
71998	* lisp/net/tramp-archive.el (tramp-archive-enabled): New defvar.
71999	(tramp-archive-file-name-regexp): Protect against errors.
72000	(tramp-archive-file-name-handler)
72001	(tramp-register-archive-file-name-handler): Use it.
72002	(all) Call `tramp-register-archive-file-name-handler'.
72003
72004	* lisp/net/tramp.el (tramp-register-file-name-handlers):
72005	Use `tramp-archive-enabled'.
72006
72007	* test/lisp/net/tramp-archive-tests.el (all):
72008	Use `tramp-archive-enabled' instead of `tramp-gvfs-enabled'.
72009	(tramp-archive--test-emacs27-p): New defun.
72010	(tramp-archive-test42-auto-load): Skip for older Emacsen.
72011	(tramp-archive-test42-delay-load): Skip for older Emacsen.
72012	Test also behavior when `tramp-archive-enabled' is nil.
72013
720142018-02-03  Michael Albinus  <michael.albinus@gmx.de>
72015
72016	Autoload tramp-archive
72017
72018	* doc/misc/tramp.texi (Archive file names): Do not require to
72019	load Tramp explicitly, this is autoloaded now also for file archives.
72020
72021	* lisp/net/tramp-archive.el (tramp-archive-suffixes)
72022	(tramp-archive-compression-suffixes): Autoload them.
72023	(tramp-archive-autoload-file-name-regexp): New defmacro.
72024	(tramp-archive-file-name-regexp): Use it.
72025	(tramp-register-archive-file-name-handler): New defun.  Call
72026	it in `after-init-hook'.
72027
72028	* test/lisp/net/tramp-archive-tests.el
72029	(tramp-archive-test40-file-system-info): Rename from
72030	`tramp-archive-test40-archive-file-system-info.
72031	(tramp-archive-test42-auto-load)
72032	(tramp-archive-test42-delay-load): New tests.
72033
720342018-02-02  Glenn Morris  <rgm@gnu.org>
72035
72036	Try to work around intermittent autogen failure on hydra.nixos.org
72037
72038	* autogen.sh (check_version): Try to handle odd systems where
72039	/bin/sh does not define the "command" builtin.
72040
720412018-02-02  Glenn Morris  <rgm@gnu.org>
72042
72043	* autogen.sh: Remove temporary debug statements.
72044
72045	* autogen.sh: Add some temporary debug statements, for hydra.nixos.org.
72046
720472018-02-02  Alan Mackenzie  <acm@muc.de>
72048
72049	CC Mode: Fix an enum intro being parsed as defun-block-intro
72050
72051	* lisp/progmodes/cc-engine.el (c-inside-bracelist-p): Return a bufpos rather
72052	than t for the enum case.
72053	(c-add-stmt-syntax, c-guess-continued-construct): Replace
72054	c-looking-at-or-maybe-in-bracelist by c-inside-bracelist-p, since the former
72055	does not recognize enum brace lists, but the latter does.
72056
72057	* lisp/progmodes/cc-fonts.el (c-get-fontification-context): Replace
72058	c-looking-at-or-maybe-in-bracelist by c-inside-bracelist-p.
72059
720602018-02-02  Philipp Stephani  <phst@google.com>
72061
72062	Properly integrate modules into the loading process (Bug#30164).
72063
72064	* src/lread.c (Fload): Don't defer to module-load immediately when
72065	encountering a module, but use the normal loading machinery to
72066	properly set up load-history, check for recursive loads, print
72067	messages, etc.
72068
72069	* test/src/emacs-module-tests.el (module/load-history): New test.
72070	(module/describe-function-1): Adapt test.
72071
72072	* etc/NEWS: Mention fixed behavior.
72073
720742018-02-02  Philipp Stephani  <phst@google.com>
72075
72076	Use 'defalias' in test module instead of 'fset'.
72077
72078	This puts functions defined in the module into the 'load-history'.
72079
72080	* test/data/emacs-module/mod-test.c (bind_function): Use 'defalias'
72081	instead of 'fset'.
72082
72083	* test/src/emacs-module-tests.el (module/describe-function-1): Adapt
72084	unit test.
72085
720862018-02-02  Philipp Stephani  <phst@google.com>
72087
72088	Add support for module functions to C-h f (Bug#30163).
72089
72090	* lisp/help-fns.el (help-fns-function-description-header): Handle
72091	module functions.
72092
72093	* test/src/emacs-module-tests.el (module/describe-function-1): New
72094	test.
72095
720962018-02-02  Michael Albinus  <michael.albinus@gmx.de>
72097
72098	Handle quoted remote file names for file notifications
72099
72100	* lisp/filenotify.el (file-notify-add-watch): Do not suppress
72101	other file name handlers when FILE is quoted.
72102
72103	* test/lisp/filenotify-tests.el
72104	(file-notify-test-remote-temporary-file-directory):
72105	Beware quoted `temporary-file-directory'.
72106
72107	* test/lisp/files-tests.el
72108	(files-tests-file-name-non-special-quote-unquote): Improve test.
72109
721102018-02-02  Michael Albinus  <michael.albinus@gmx.de>
72111
72112	Minor tweaks in tramp-archive.el
72113
72114	* lisp/net/tramp-archive.el (tramp-archive-file-name-handler):
72115	Bind `tramp-unknown-id-integer' and `tramp-unknown-id-string'
72116	in order to have minimal ownership information.
72117
721182018-02-02  Glenn Morris  <rgm@gnu.org>
72119
72120	Merge from origin/emacs-26
72121
72122	6f495ab (origin/emacs-26) Another round of manual fixups
72123	59344c4 * doc/lispref/customize.texi (Custom Themes): Clarify .el pre...
72124	6386efc * doc/emacs/entering.texi (Entering Emacs): Another wording fix.
72125	e21f018 * doc/lispref/functions.texi (Inline Functions): Fix typo (Bu...
72126	1c2fb04 * lisp/imenu.el (imenu-generic-expression): Rephrase doc (Bug...
72127	b90e91c Fix last change of @key markup
72128	f180075 * doc/emacs/entering.texi (Entering Emacs): Fix markup.
72129
721302018-02-02  Glenn Morris  <rgm@gnu.org>
72131
72132	Merge from origin/emacs-26
72133
72134	56c37bb Use @key{} where it is missing in the manuals
72135	25c0198 Another round of manual fixes from proofreading
72136
721372018-02-02  Stefan Monnier  <monnier@iro.umontreal.ca>
72138
72139	* lisp/emacs-lisp/cconv.el (cconv-convert): Fix compiling compiled code
72140
72141	Don't conv-convert the docstring arg of defvar/defconst.
72142
721432018-02-02  Michael Albinus  <michael.albinus@gmx.de>
72144
72145	Fix quoting in tramp-find-inline-compress for w32
72146
72147	* lisp/net/tramp-sh.el (tramp-find-inline-compress): Improve command
72148	quoting for w32.  Reported by Chris Zheng <chriszheng99@gmail.com>.
72149
721502018-02-01  Michael Albinus  <michael.albinus@gmx.de>
72151
72152	Handle quoted file names in filenotify.el
72153
72154	* lisp/filenotify.el (file-notify-add-watch): Do not save
72155	quoted file names in `file-notify-descriptors'.
72156
72157	* test/lisp/files-tests.el
72158	(files-file-name-non-special-notify-handlers): Do not expect
72159	to fail.
72160
721612018-02-01  Michael Albinus  <michael.albinus@gmx.de>
72162
72163	Use file-name-quote{,d-p} in files-tests.el
72164
72165	* test/lisp/files-tests.el
72166	(files-tests-file-name-non-special-quote-unquote): New test.
72167	(files-tests--file-name-non-special--subprocess): Simplify.
72168	(files-tests--file-name-non-special--buffers)
72169	(files-tests--with-temp-non-special)
72170	(files-tests-file-name-non-special-directory-file-name)
72171	(files-tests-file-name-non-special-file-in-directory-p)
72172	(files-tests-file-name-non-special-file-name-all-completions)
72173	(files-tests-file-name-non-special-file-name-as-directory)
72174	(files-tests-file-name-non-special-file-name-completion)
72175	(files-tests-file-name-non-special-file-name-directory)
72176	(files-tests-file-name-non-special-find-backup-file-name)
72177	(files-tests-file-name-non-special-make-nearby-temp-file):
72178	Use `file-name-quote' and `file-name-quoted-p', respectively.
72179
721802018-02-01  Noam Postavsky  <npostavs@gmail.com>
72181
72182	Test and fix "/:" quoted file name handlers (Bug#30243)
72183
72184	Some w32 specific problems were discovered, but only worked around, as
72185	these are not serious, and not the focus of this bug fix:
72186	    - The w32 implementation of `insert-directory doesn't handle a nil
72187	    SWITCHES argument.
72188	    - `dired-compress-file' does not operate correctly if the unquoted
72189	    filename contains a ":" (e.g., C:/foo/bar).
72190
72191	* lisp/files.el (file-name-non-special): Strip the "/:" from
72192	`default-directory' for `temporary-file-directory' operation; both
72193	arguments to `file-name-completion', `file-name-all-completion', and
72194	`file-equal-p' operations; `buffer-file-name' for
72195	`make-auto-save-file-name' and 'set-visited-file-modtime' operations.
72196	Don't touch any operands of `file-notify-rm-watch' and
72197	`file-notify-valid-p' as they receive descriptors; not file
72198	names (this is not sufficient to fix these operations for "/:" quoted
72199	file names though, these are fixed in a later commit).
72200
72201	* test/lisp/files-tests.el (files-tests--with-temp-file): Give it a
72202	`debug' property.
72203	(files-tests--with-temp-non-special): New helper macro.
72204	(files-tests--file-name-non-special--subprocess): Simplify.
72205	(files-tests-file-name-non-special-quote-unquote)
72206	(files-file-name-non-special-notify-handlers)
72207	(files-file-name-non-special-handlers)
72208	(files-tests-file-name-non-special-access-file)
72209	(files-tests-file-name-non-special-add-name-to-file)
72210	(files-tests-file-name-non-special-byte-compiler-base-file-name)
72211	(files-tests-file-name-non-special-copy-directory)
72212	(files-tests-file-name-non-special-copy-file)
72213	(files-tests-file-name-non-special-delete-directory)
72214	(files-tests-file-name-non-special-delete-file)
72215	(files-tests-file-name-non-special-diff-latest-backup-file)
72216	(files-tests-file-name-non-special-directory-file-name)
72217	(files-tests-file-name-non-special-directory-files)
72218	(files-tests-file-name-non-special-directory-files-and-attributes)
72219	(files-tests-file-name-non-special-dired-uncache)
72220	(files-tests-file-name-non-special-dired-compress-handler)
72221	(files-tests-file-name-non-special-expand-file-name)
72222	(files-tests-file-name-non-special-file-accessible-directory-p)
72223	(files-tests-file-name-non-special-file-acl)
72224	(files-tests-file-name-non-special-file-attributes)
72225	(files-tests-file-name-non-special-file-directory-p)
72226	(files-tests-file-name-non-special-file-equal-p)
72227	(files-tests-file-name-non-special-file-executable-p)
72228	(files-tests-file-name-non-special-file-exists-p)
72229	(files-tests-file-name-non-special-file-in-directory-p)
72230	(files-tests-file-name-non-special-file-local-copy)
72231	(files-tests-file-name-non-special-file-modes)
72232	(files-tests-file-name-non-special-file-name-all-completions)
72233	(files-tests-file-name-non-special-file-name-as-directory)
72234	(files-tests-file-name-non-special-file-name-case-insensitive-p)
72235	(files-tests-file-name-non-special-file-name-completion)
72236	(files-tests-file-name-non-special-file-name-directory)
72237	(files-tests-file-name-non-special-file-name-nondirectory)
72238	(files-tests-file-name-non-special-file-name-sans-versions)
72239	(files-tests-file-name-non-special-file-newer-than-file-p)
72240	(files-tests-file-name-non-special-file-ownership-preserved-p)
72241	(files-tests-file-name-non-special-file-readable-p)
72242	(files-tests-file-name-non-special-file-regular-p)
72243	(files-tests-file-name-non-special-file-remote-p)
72244	(files-tests-file-name-non-special-file-selinux-context)
72245	(files-tests-file-name-non-special-file-symlink-p)
72246	(files-tests-file-name-non-special-file-truename)
72247	(files-tests-file-name-non-special-file-writable-p)
72248	(files-tests-file-name-non-special-find-backup-file-name)
72249	(files-tests-file-name-non-special-get-file-buffer)
72250	(files-tests-file-name-non-special-insert-directory)
72251	(files-tests-file-name-non-special-insert-file-contents)
72252	(files-tests-file-name-non-special-load)
72253	(files-tests-file-name-non-special-make-auto-save-file-name)
72254	(files-tests-file-name-non-special-make-directory)
72255	(files-tests-file-name-non-special-make-directory-internal)
72256	(files-tests-file-name-non-special-make-nearby-temp-file)
72257	(files-tests-file-name-non-special-make-symbolic-link)
72258	(files-tests-file-name-non-special-rename-file)
72259	(files-tests-file-name-non-special-set-file-acl)
72260	(files-tests-file-name-non-special-set-file-modes)
72261	(files-tests-file-name-non-special-set-file-selinux-context)
72262	(files-tests-file-name-non-special-set-file-times)
72263	(files-tests-file-name-non-special-set-visited-file-modtime)
72264	(files-tests-file-name-non-special-shell-command)
72265	(files-tests-file-name-non-special-start-file-process)
72266	(files-tests-file-name-non-special-substitute-in-file-name)
72267	(files-tests-file-name-non-special-temporary-file-directory)
72268	(files-tests-file-name-non-special-unhandled-file-name-directory)
72269	(files-tests-file-name-non-special-vc-registered)
72270	(files-tests-file-name-non-special-write-region): New tests.
72271
722722018-02-01  Paul Eggert  <eggert@cs.ucla.edu>
72273
72274	Update from gnulib
72275
72276	This includes:
72277	2018-01-31 environ: Fix link error on 64-bit Cygwin
72278	2018-01-27 Fix malfunction of socket functions on HP-UX in 64-bit mode
72279	2018-01-26 manywarnings: fix maintainer comment
72280	2018-01-23 Merge strftime.c changes from glibc
72281	* build-aux/config.guess, build-aux/config.sub, doc/misc/texinfo.tex:
72282	* lib/gnulib.mk.in, lib/nstrftime.c, lib/unistd.in.h, m4/extensions.m4:
72283	* m4/manywarnings.m4: Update.
72284
722852018-02-01  Paul Eggert  <eggert@cs.ucla.edu>
72286
72287	* src/xfns.c: Make some non-exported vars static.
72288
722892018-02-01  Michael Albinus  <michael.albinus@gmx.de>
72290
72291	Adapt tramp-tests.el according to Bug#30243
72292
72293	* test/lisp/net/tramp-tests.el (tramp--test-emacs27-p): New defun.
72294	(tramp-test11-copy-file, tramp-test12-rename-file)
72295	(tramp-test21-file-links, tramp-test24-file-acl)
72296	(tramp-test25-file-selinux, tramp--test-check-files): Use it.
72297
722982018-01-31  Michael Albinus  <michael.albinus@gmx.de>
72299
72300	* lisp/files.el (get-free-disk-space): Wrap body with `save-match-data'.
72301
72302	Several `*-insert-directory' functions could fail otherwise.
72303
723042018-01-31  Michael Albinus  <michael.albinus@gmx.de>
72305
72306	* lisp/net/tramp-archive.el (tramp-archive-run-real-handler): New defun.
72307
72308	(tramp-archive-file-name-handler): Use it.
72309
723102018-01-31  Glenn Morris  <rgm@gnu.org>
72311
72312	automerge: adjust meaning of -d option
72313
72314	* admin/automerge (nocd): New variable, replacing $dir.
72315	(usage, -d): Option -d no longer takes an argument.
72316
723172018-01-31  Glenn Morris  <rgm@gnu.org>
72318
72319	automerge: add option to work in specific directory
72320
72321	* admin/automerge (usage): Mention -d.
72322	(dir): New variable.
72323	(-d): New option.
72324	(main): If requested, cd to specified directory.
72325
723262018-01-31  Glenn Morris  <rgm@gnu.org>
72327
72328	automerge: add option to start with a reset
72329
72330	* admin/automerge (usage): Mention -r.
72331	(reset): New variable.
72332	(-r): New option.
72333	(main): If requested, do a reset and pull.
72334
723352018-01-31  Glenn Morris  <rgm@gnu.org>
72336
72337	Merge from origin/emacs-26
72338
72339	22922c7 (origin/emacs-26) * doc/emacs/entering.texi (Entering Emacs):...
72340	59657c4 Document 'window-at-side-p' in the Elisp manual
72341	2b35ed0 Document external-debugging-output in the Elisp Manual (Bug#2...
72342	db6564c Fix scroll-margin docstring (Bug#13791)
72343	732d1b9 Clarify that `ansi-term' is almost the same as `term' (Bug#18...
72344	f706c59 Update manual description of locate-file (Bug#23650)
72345	1602262 Clarify effect of print-gensym (Bug#27776)
72346	53e9fa2 * lisp/custom.el (defcustom): Fix docstring (Bug#27891).
72347	607cc4e Define cl-type-definition button type as needed (Bug#28899)
72348	9e6889c Emphasize that GPG passphrase caching is temporary (Bug#29907)
72349	4b5711b Fix @examples in cc-mode.info, where lines were getting glued...
72350	71961f1 Minor change in "Mode Line" section of Emacs manual
72351	55a2b76 More fixes in the Emacs manual
72352
723532018-01-31  Michael Albinus  <michael.albinus@gmx.de>
72354
72355	Fix Bug#30293
72356
72357	* lisp/net/tramp-archive.el (tramp-archive-file-name-for-operation):
72358	New defsubst.
72359	(tramp-archive-file-name-archive, tramp-archive-file-name-localname):
72360	New defuns.
72361	(tramp-archive-file-name-handler, tramp-archive-dissect-file-name)
72362	(tramp-archive-handle-not-implemented): Use them.  (Bug#30293)
72363
72364	* test/lisp/net/tramp-archive-tests.el (tramp-archive-test-directory):
72365	New defconst.
72366	(tramp-archive-test01-file-name-syntax): Extend test.
72367	(tramp-archive-test05-expand-file-name-non-archive-directory):
72368	New test.  (Bug#30293)
72369
72370	* test/lisp/net/tramp-archive-resources/foo.iso/foo: New file.
72371
723722018-01-30  Glenn Morris  <rgm@gnu.org>
72373
72374	automerge: handle upstream changes during operation
72375
72376	* admin/automerge (merge): New function, split from pre-existing code.
72377	(main): If upstream changed during building and testing,
72378	reset local and try merging again.
72379
723802018-01-30  Stefan Monnier  <monnier@iro.umontreal.ca>
72381
72382	* test/lisp/mouse-tests.el: Fix tests broken by mouse.el change
72383
72384	* test/lisp/mouse-tests.el (bug23288-use-return-value)
72385	(bug23288-translate-to-mouse-2): Don't rely as much on details of the
72386	implementation, so it also works with the new code.
72387
723882018-01-30  Michael Albinus  <michael.albinus@gmx.de>
72389
72390	Simplify last change in tramp-archive
72391
723922018-01-30  Stefan Monnier  <monnier@iro.umontreal.ca>
72393
72394	* lisp/mouse.el: Rework the mouse-1-click remapping
72395
72396	Avoid peeking ahead at the next event because this had undesirable effects,
72397	such as making 'this-single-command-raw-keys' return bogus information.
72398
72399	(mouse--last-down): New variable.
72400	(mouse--down-1-maybe-follows-link): Don't do the remapping here.
72401	Instead, just keep track of the time when the down happened.
72402	(mouse--down-1-maybe-follows-link): Do the remapping here.
72403	(key-translation-map): Add bindings for (double-)mouse-1.
72404
724052018-01-30  Stefan Monnier  <monnier@iro.umontreal.ca>
72406
72407	* lisp/help.el: Rework describe-key's handling of up and double clicks
72408
72409	Use lexical-binding.
72410	(help--binding-undefined-p): New function, extracted from help--analyze-key.
72411	(help--analyze-key): Use it.
72412	(help--filter-info-list): New function.
72413	(describe-key-briefly): Change calling convention.
72414	Handle a list of key sequences now.
72415	(help--binding-locus): Remove unused var 'found'.
72416	(help--read-key-sequence): Rename from help-read-key-sequence.
72417	Almost complete rewrite, with a different return value.
72418	(help-downify-mouse-event-type): Remove.
72419	(describe-key): Change calling convention.
72420	Handle a list of key sequences now.
72421
724222018-01-30  Michael Albinus  <michael.albinus@gmx.de>
72423
72424	Fix Bug#30262
72425
72426	* lisp/net/tramp-archive.el (tramp-archive-hash): Document (changed)
72427	layout.
72428	(tramp-archive-dissect-file-name): Merge with
72429	`tramp-archive-local-copy', which has been removed by this.
72430	(tramp-archive-cleanup-hash): Adapt to changed
72431	`tramp-archive-hash'.  (Bug#30262)
72432
72433	* lisp/net/tramp-gvfs.el (tramp-gvfs-unmount): Flush
72434	connection properties.
72435
72436	* test/lisp/net/tramp-archive-tests.el
72437	(tramp-archive-test01-file-name-syntax)
72438	(tramp-archive-test02-file-name-dissect)
72439	(tramp-archive-test16-directory-files)
72440	(tramp-archive-test26-file-name-completion): Adapt to changed
72441	test file.
72442	(tramp-archive-test08-file-local-copy): Be more robust in cleanup.
72443
72444	* test/lisp/net/tramp-archive-resources/foo.tar.gz: Adapt to
72445	extended test.
72446
724472018-01-30  Glenn Morris  <rgm@gnu.org>
72448
72449	Merge from origin/emacs-26
72450
72451	bc8dc37 (origin/emacs-26) Minor copyedits in "Distribution" chapter o...
72452	1c7a936 Minor copyedits in "Entering" chapter of Emacs manual.
72453	1d4498b Minor wording change in the Emacs manual
72454	2bf49e7 Fix a typo in the Emacs manual
72455	f3546a2 Improve the "Basic" chapter of the Emacs manual
72456	691431e Resurrect lost text in lispref
72457	956807b * lisp/emacs-lisp/rx.el (rx): Fix the definition of 'blank'.
72458	7d90d2e Proofread os.texi and files.texi
72459	490c736 Minor improvements in the "International" chapter of Emacs ma...
72460	79252d3 Minor improvement in "Text" chapter of Emacs manual
72461
724622018-01-30  Stefan Monnier  <monnier@iro.umontreal.ca>
72463
72464	* lisp/subr.el (atomic-change-group): Fix return value
72465
72466	Suggested by Jarosław Rzeszótko <jrzeszotko@gmail.com>.
72467
724682018-01-29  Glenn Morris  <rgm@gnu.org>
72469
72470	Recognize more system descriptions in report-emacs-bug
72471
72472	* lisp/mail/emacsbug.el (report-emacs-bug--os-description):
72473	New function, split from report-emacs-bug.  Also parse the
72474	standard /etc files that can contain release information.
72475	(report-emacs-bug): Call report-emacs-bug--os-description.
72476
724772018-01-29  Paul Eggert  <eggert@cs.ucla.edu>
72478
72479	Simplify Fcall_interactively
72480
72481	* src/callint.c (Fcall_interactively): Use C99 constructs to
72482	simplify the code a bit.  Stop worrying about circa-1990
72483	compiler bugs.
72484
724852018-01-29  Glenn Morris  <rgm@gnu.org>
72486
72487	Merge from origin/emacs-26
72488
72489	8d45000 (origin/emacs-26) Fix some issues in the emacs/lispref manuals
72490	194ded5 Fix multiple spaces in Emacs manual
72491	57a5461 * lisp/files.el (save-some-buffers): Doc fix.  (Bug#30215)
72492	231474f Adjudicate comments to "International" chapter of Emacs manual
72493
724942018-01-29  Glenn Morris  <rgm@gnu.org>
72495
72496	Merge from origin/emacs-26
72497
72498	6415b2d Allow read-passwd to hide characters inserted by C-y.  (Secur...
72499	8cb4ffb * etc/PROBLEMS: Document issues with double-buffering.  (Bug#...
72500	fd10070 * lisp/window.el (window-largest-empty-rectangle): Fix grammar.
72501	e1a4403 Minor changes in the Emacs manual
72502	372fda6 Improve the "Files" chapter of the Emacs manual
72503	9afc86d Improve the "Search" chapter of the Emacs manual
72504	22f98b3 * src/indent.c (Findent_to): Doc fix.  (Bug#30260)
72505	085ee43 Improve documentation of 'edebug-defun'
72506	4dd1b33 Mention crashes due to Noto Serif Kannada fonts
72507
725082018-01-29  tino calancha  <tino.calancha@gmail.com>
72509
72510	* test/lisp/simple-tests.el (simple-tests-async-shell-command-30280): Add test
72511
725122018-01-28  Glenn Morris  <rgm@gnu.org>
72513
72514	* configure.ac: Improve recent libtof version test.
72515
725162018-01-28  Juri Linkov  <juri@linkov.net>
72517
72518	* lisp/simple.el: Move definitions shell-command-saved-pos
72519
72520	and shell-command-dont-erase-buffer closer to their usage.
72521
725222018-01-28  Juri Linkov  <juri@linkov.net>
72523
72524	* lisp/simple.el (upcase-dwim, downcase-dwim): Add region-noncontiguous-p
72525
72526	to the calls of region functions to support rectangular regions.
72527
725282018-01-28  Juri Linkov  <juri@linkov.net>
72529
72530	* lisp/tar-mode.el (tar-summarize-buffer): Let-bind `create-lockfiles' to nil
72531
72532	instead of `buffer-file-truename'.  (Bug#30215)
72533
72534	* lisp/image-mode.el (image-toggle-display-image): Idem.
72535
725362018-01-28  Philipp Stephani  <phst@google.com>
72537
72538	Add missing module types to cl--typeof-types.
72539
72540	* lisp/emacs-lisp/cl-preloaded.el (cl--typeof-types): Add module
72541	types.
72542
72543	* test/src/emacs-module-tests.el (emacs-module-tests--generic): New
72544	helper function.
72545	(module-function-object, mod-test-userptr-fun-test): Test that type
72546	dispatching works with module types.
72547
725482018-01-28  Philipp Stephani  <phst@google.com>
72549
72550	Test that module functions are functions.
72551
72552	* test/src/emacs-module-tests.el (module-function-object): Verify that
72553	a module function is treated as a function.
72554
725552018-01-28  Philipp Stephani  <phst@google.com>
72556
72557	* src/lisp.h: Tell developers to add new types to cl--typeof-types.
72558
725592018-01-28  Philipp Stephani  <phst@google.com>
72560
72561	Prevent name clashes between CL structures and builtin types
72562
72563	* lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Don't allow
72564	structures with the same names as builtin types.
72565	(cl--typeof-types, cl--all-builtin-types): Move from cl-generic.el and
72566	rename.
72567	(cl--struct-name-p): New helper function.
72568
72569	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Don't allow structures
72570	with the same names as builtin types.
72571
72572	* lisp/emacs-lisp/cl-generic.el (cl--generic-typeof-generalizer)
72573	(cl-generic-generalizers): Adapt to name change.
72574
72575	* test/lisp/emacs-lisp/cl-macs-tests.el (cl-defstruct/builtin-type):
72576	* test/lisp/emacs-lisp/cl-preloaded-tests.el
72577	(cl-struct-define/builtin-type): New unit tests.
72578
72579	* etc/NEWS: Document changed behavior.
72580
725812018-01-28  Alan Mackenzie  <acm@muc.de>
72582
72583	Fix some errors in c-display-defun-name when the type is "struct {..}", etc.
72584
72585	Also fix some errors with c-display-defun-name when there are nested classes.
72586
72587	* lisp/progmodes/cc-cmds.el (c-in-function-trailer-p): Deal with a struct {..}
72588	being merely the type of a function.
72589	(c-where-wrt-brace-construct): Deal with a struct {..} being merely the type
72590	of a function.  Rearrange the order of some Lisp forms.  Insert a check for
72591	c-protection-key ("private", etc.) alongside the checking for a label.
72592	(c-defun-name-1): New function extracted form c-defun-name, which works within
72593	the existing restriction.  Don't regard 'at-function-end as being within the
72594	defun any more.  Recognize "struct", etc., with the new
72595	c-defun-type-name-decl-key rather than c-type-prefix-key.  Make the
72596	recognition of a normal function more accurate.
72597	(c-defun-name): Part left after extracting the above function.  It now just
72598	widens and calls c-defun-name-1.
72599	(c-declaration-limits-1): New function extracted from c-declaration-limits,
72600	which works within the existing restriction.  Move LIM back one block to
72601	account for the possibility of struct {..} as a function type.  Check we're
72602	not inside a declaration without braces.
72603	(c-declaration-limits): Part left after extracting the above function.  It now
72604	just narrows to an enclosing decl block and calls c-declaration-limits-1.
72605	(c-defun-name-and-limits): New function which identifies the name and limits
72606	of the most nested enclosing declaration or macro.
72607	(c-display-defun-name): Use c-defun-name-and-limits rather than two separate
72608	functions (which didn't always agree on which function).
72609
72610	* lisp/progmodes/cc-engine.el (c-beginning-of-statement-1): If we have struct
72611	{..} as the type of a function, go back over this, too.
72612
72613	* lisp/progmodes/cc-langs.el (c-defun-type-name-decl-kwds)
72614	(c-defun-type-name-decl-key): New lang const/var.
72615
726162018-01-28  Noam Postavsky  <npostavs@gmail.com>
72617
72618	Fix round tripping of read->print for symbols with strange quotes
72619
72620	Since 2017-07-22 "Signal error for symbol names with strange
72621	quotes (Bug#2967)", symbol names beginning with certain quote
72622	characters require an escaping backslash.  However, the corresponding
72623	change for printing missed, so that (eq (read (prin1-to-string SYM))
72624	SYM) does not give `t' for such symbols.
72625	* src/character.c (confusable_symbol_character_p): New function,
72626	extracted from test `read1'.
72627	* src/lread.c (read1): Use it.
72628	* src/print.c (print_object): Use it to print a backslash for symbols
72629	starting with characters that `read1' requires to be escaped.
72630	* test/src/print-tests.el (print-read-roundtrip): New test.
72631	* etc/NEWS.26:
72632	* etc/NEWS: Clarify the announcement for the earlier reader
72633	change (Bug#30217).
72634
726352018-01-28  Simen Heggestøyl  <simenheg@gmail.com>
72636
72637	Shorten CSS hex colors when possible
72638
72639	* lisp/textmodes/css-mode.el (css--format-hex): New function for
72640	shortening CSS hex colors when possible.
72641	(css--named-color-to-hex, css--rgb-to-named-color-or-hex): Use it.
72642
72643	* test/lisp/textmodes/css-mode-tests.el (css-test-format-hex): New
72644	tests for 'css--format-hex'.
72645	(css-test-named-color-to-hex, css-test-cycle-color-format): Adjust for
72646	the changes to 'css--named-color-to-hex' and
72647	'css--rgb-to-named-color-or-hex'.
72648
726492018-01-28  Simen Heggestøyl  <simenheg@gmail.com>
72650
72651	Fix off-by-one error in 'css--hex-to-rgb'
72652
72653	* lisp/textmodes/css-mode.el (css--hex-to-rgb): Fix off-by-one error.
72654
72655	* test/lisp/textmodes/css-mode-tests.el (css-test-hex-to-rgb): Add
72656	regression tests for the above fix.
72657
726582018-01-27  tino calancha  <tino.calancha@gmail.com>
72659
72660	Code refactoring assoc-delete-all assq-delete-all
72661
72662	* lisp/subr.el (assoc-delete-all): Add optional arg TEST.
72663	(assq-delete-all): Use assoc-delete-all.
72664
72665	* test/lisp/subr-tests.el (subr-tests--assoc-delete-all)
72666	(subr-tests--assq-delete-all): New tests.
72667
72668	* doc/lispref/lists.texi (Association Lists): Document
72669	assoc-delete-all in the manual.
72670
726712018-01-27  Simen Heggestøyl  <simenheg@gmail.com>
72672
72673	Fix indentation bug with multi-line CSS values
72674
72675	* lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
72676	multi-line CSS values that are separated by spaces.
72677
72678	* test/manual/indent/css-mode.css: Add a test case for the fix.
72679
726802018-01-27  Alan Third  <alan@idiocy.org>
72681
72682	Allow configure to find Homebrew installed imagemagick
72683
72684	* configure.ac: Add the imagemagick pkgconfig dir to pkg-config's
72685	search path.
72686
726872018-01-26  Martin Rudalics  <rudalics@gmx.at>
72688
72689	In bindings.el fix check whether mode line can be dragged
72690
72691	* lisp/bindings.el (mode-line-default-help-echo): Use check
72692	whether mode line can be dragged from 'mouse-drag-mode-line'.
72693
726942018-01-26  Glenn Morris  <rgm@gnu.org>
72695
72696	Workaround a libotf crash with Kannada font (bug#30193)
72697
72698	* configure.ac (HAVE_OTF_KANNADA_BUG): New define.
72699	* src/xfaces.c (syms_of_xfaces) <Vface_ignored_fonts>:
72700	Add problematic Kannada font if necessary.
72701
727022018-01-26  Noah Friedman  <friedman@splode.com>
72703
72704	Bring emacs-buffer.gdb up to date with recent lisp.h changes.
72705
727062018-01-26  Noam Postavsky  <npostavs@gmail.com>
72707
72708	Raise limit of regexp repetition (Bug#24914)
72709
72710	* src/regex.h (RE_DUP_MAX): Raise limit to 2^16-1.
72711	* etc/NEWS: Announce it.
72712	* doc/lispref/searching.texi (Regexp Backslash): Document it.
72713	* test/src/regex-tests.el (regex-repeat-limit): Test it.
72714
72715	* src/regex.h (reg_errcode_t): Add REG_ESIZEBR code.
72716	* src/regex.c (re_error_msgid): Add corresponding entry.
72717	(GET_INTERVAL_COUNT): Return it instead of the more generic REG_EBADBR
72718	when encountering a repetition greater than RE_DUP_MAX.
72719
72720	* lisp/isearch.el (isearch-search): Don't convert errors starting with
72721	"Invalid" into "incomplete".  Such errors are not incomplete, in the
72722	sense that they cannot be corrected by appending more characters to
72723	the end of the regexp.  The affected error messages are:
72724
72725	- REG_BADPAT "Invalid regular expression"
72726	  - \\(?X:\\) where X is not a legal group number
72727	  - \\_X where X is not < or >
72728
72729	- REG_ECOLLATE "Invalid collation character"
72730	  - There is no code to throw this.
72731
72732	- REG_ECTYPE "Invalid character class name"
72733	  - [[:foo:] where foo is not a valid class name
72734
72735	- REG_ESUBREG "Invalid back reference"
72736	  - \N where N is referenced before matching group N
72737
72738	- REG_BADBR "Invalid content of \\{\\}"
72739	  - \\{N,M\\} where N < 0, M < N, M or N larger than max
72740	  - \\{NX where X is not a digit or backslash
72741	  - \\{N\\X where X is not a }
72742
72743	- REG_ERANGE "Invalid range end"
72744	  - There is no code to throw this.
72745
72746	- REG_BADRPT "Invalid preceding regular expression"
72747	  - We never throw this.  It would usually indicate a "*" with no
72748	    preceding regexp text, but Emacs allows that to match a literal
72749	    "*".
72750
727512018-01-26  Noam Postavsky  <npostavs@gmail.com>
72752
72753	Merge from emacs-26
72754
72755	463f96b481 * doc/lispref/searching.texi: Document regexp repetition l...
72756	08a6195571 ; test/README: Document TEST_LOAD_EL parameter.
72757	7bbea90b1a * src/syntax.c (char-syntax): Warn about ignoring text pro...
72758	50fcbb5f61 ; * src/process.c (Fprocess_contact): Fix docstring typo.
72759	81ae9c8c05 Load mm-util as needed for url-file and url-data (Bug#30258)
72760	5a1ee67ae1 Another minor copyedit in the manual's "Scroll Bars"
72761	226a651e9e Minor fix in documentation of 'equal'
72762	b26786c8d9 * lisp/dired-x.el (dired-guess-shell-alist-user): Doc fix....
72763	5699a824f0 Minor rewording in Emacs manual's "Help Mode" node
72764	f35ff0156e Fixes for Emacs manual in frames.texi
72765	6cd4e8dcc5 * doc/misc/cl.texi (Efficiency Concerns): Fix 2012-10-27 t...
72766	1412cf3edd Fix a few issues with latest GTK scaling changes
72767	59db8dca03 Use scaled coordinates when calling into GTK
72768	2892f05792 Scale monitor dimensions obtained from GTK
72769
727702018-01-26  Stefan Monnier  <monnier@iro.umontreal.ca>
72771
72772	* lisp/emacs-lisp/cl-preloaded.el: Update cl-slot-descriptor name.
72773
727742018-01-26  Francesco Potortì  <pot@gnu.org>
72775
72776	Fix a typo in rmail.el
72777
72778	* lisp/mail/rmail.el (rmail-simplified-subject): Fix a typo in the
72779	regexp.  (Bug#29659)
72780
727812018-01-26  Eli Zaretskii  <eliz@gnu.org>
72782
72783	Minor fix for "M-x pdb"
72784
72785	* lisp/progmodes/gud.el (gud-pdb-marker-regexp): Add @ and SPC to
72786	the regexp.  (Bug#30208)
72787
727882018-01-26  Andy Moreton  <andrewjmoreton@gmail.com>
72789
72790	Fix emacs-module-tests to work out of build tree
72791
72792	* test/Makefile.in (test_module_dir): Build the test module library in
72793	a subdirectory of the build directory (not the source tree).
72794	(MODULE_CFLAGS): Fix location of emacs-module.h header file.
72795	(test_module): Move built library out of the source tree.
72796	* test/src/emacs-module-tests.el (mod-test-file): Locate the test module
72797	library relative to the running Emacs executable.
72798
727992018-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
72800
72801	* lisp/emacs-lisp/gv.el (char-table-range): Add gv-setter.
72802
728032018-01-25  Juri Linkov  <juri@linkov.net>
72804
72805	* lisp/arc-mode.el (archive-extract): Let-bind `create-lockfiles' to nil
72806
72807	to prevent directory time modification by lock_file on visiting
72808	a file from archive.  (Bug#30215)
72809	(archive-summarize): Let-bind `create-lockfiles' to nil
72810	instead of `buffer-file-truename'.
72811
728122018-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
72813
72814	Replace (default-value 'enable-multibyte-characters) with t
72815
72816	Since Emacs-24, (default-value 'enable-multibyte-characters) can't be
72817	changed any more, so we can remove all code which checks this value.
72818
72819	* lisp/x-dnd.el (x-dnd-handle-file-name):
72820	* lisp/w32-fns.el (w32-set-default-process-coding-system):
72821	* lisp/textmodes/ispell.el (ispell-send-string):
72822	* lisp/term/internal.el (dos-codepage-setup):
72823	* lisp/tar-mode.el (tar-header-block-tokenize, tar--extract):
72824	* lisp/startup.el (command-line):
72825	* lisp/server.el (server-process-filter):
72826	* lisp/net/browse-url.el (browse-url-file-url):
72827	* lisp/menu-bar.el (menu-bar-options-menu, menu-bar-describe-menu):
72828	* lisp/mail/sendmail.el (mail-setup):
72829	* lisp/mail/rmail.el (rmail-mode, rmail-get-new-mail):
72830	* lisp/mail/rfc2047.el (rfc2047-encode-message-header):
72831	* lisp/mail/emacsbug.el (report-emacs-bug):
72832	* lisp/international/mule-diag.el (mule-diag):
72833	* lisp/files.el (find-file-noselect-1):
72834	* lisp/dos-fns.el (dos-set-default-process-coding-system):
72835	* lisp/arc-mode.el (archive-mode):
72836	* lisp/international/mule-cmds.el (mule-menu-keymap)
72837	(set-default-coding-systems, set-language-info)
72838	(set-language-environment, standard-display-european-internal)
72839	(set-locale-environment): Simplify code.
72840
728412018-01-25  Michael Albinus  <michael.albinus@gmx.de>
72842
72843	* lisp/simple.el (shell-command-to-string):
72844
72845	Call `shell-command' in order to respect file name handlers.
72846
728472018-01-25  Michael Albinus  <michael.albinus@gmx.de>
72848
72849	* lisp/net/trampver.el: Simplify version check.
72850
728512018-01-24  Juri Linkov  <juri@linkov.net>
72852
72853	* lisp/dired.el (dired-internal-do-deletions): Remove nreverse
72854
72855	to compensate the changes that added nreverse to dired-do-delete
72856	and dired-do-flagged-delete in 9ecbdee (bug#30162)
72857
728582018-01-24  Stefan Monnier  <monnier@iro.umontreal.ca>
72859
72860	* lisp/net/tramp.el: Require trampver here instead of...
72861
72862	* lisp/net/tramp-compat.el: ... there.
72863
728642018-01-24  Glenn Morris  <rgm@gnu.org>
72865
72866	* admin/automerge: Disable rebasing.
72867
728682018-01-24  Marcin Borkowski  <mbork@mbork.pl>
72869
72870	Merge branch 'fix/bug-20871-cur'
72871
728722018-01-23  Glenn Morris  <rgm@gnu.org>
72873
72874	Avoid kill-emacs-hook errors hanging batch mode
72875
72876	* src/emacs.c (Fkill_emacs): Prevent errors from kill-emacs-hook
72877	hanging Emacs in batch mode.  (Bug#29955)
72878
728792018-01-23  Philipp Stephani  <phst@google.com>
72880
72881	Add unit test for Bug#30005.
72882
72883	* test/src/callint-tests.el (call-interactively/embedded-nulls): New
72884	unit test.
72885
728862018-01-23  Stefan Monnier  <monnier@iro.umontreal.ca>
72887
72888	Remove final uses of 'cl' in lisp/net
72889
72890	* lisp/net/pop3.el: Use lexical-binding and cl-lib.
72891	(pop3-write-to-file): Remove unused var 'start'.
72892	(pop3-make-date): Remove unused var 'sign'.
72893
72894	* lisp/net/rfc2104.el: Use lexical-binding and cl-lib.
72895
72896	* lisp/net/shr-color.el: Use lexical-binding and cl-lib.
72897
72898	* lisp/net/sieve-manage.el: Use lexical-binding and cl-lib.
72899
729002018-01-23  Stefan Monnier  <monnier@iro.umontreal.ca>
72901
72902	* lisp/net/imap.el: Use lexical-binding and cl-lib
72903
72904	Require packages instead of autoloading their functions.
72905	(imap-send-command): Remove unused vars 'stream' and 'eol'.
72906	(imap-parse-response): Use pcase.
72907	(imap-parse-fetch): Remove unused arg 'response'.
72908
72909	* lisp/format-spec.el: Don't require CL.
72910
729112018-01-23  Stefan Monnier  <monnier@iro.umontreal.ca>
72912
72913	* lisp/gnus/message.el: Tweak header font-lock and ecomplete completion
72914
72915	(message-font-lock-make-header-matcher): Delete.
72916	(message-match-to-eoh): New function to replace it.
72917	(message-font-lock-keywords): Use it.
72918	(message-strip-forbidden-properties): Remove redundant binding.
72919	(message-goto-body): Avoid called-interactively-p, only use
72920	push-mark when called interactively.
72921	(message-goto-body-1): Merge into message-goto-body.  Redefine as alias.
72922	(message-goto-eoh): Call message-goto-body interactively.
72923	(message--in-tocc-p): New function, extracted from message-display-abbrev.
72924	(message-ecomplete-capf): New function.
72925
729262018-01-23  Stefan Monnier  <monnier@iro.umontreal.ca>
72927
72928	* lisp/ecomplete.el: Add completion-table; use lexical-binding and cl-lib
72929
72930	Also remove redundant :group args.
72931	(ecomplete-database-file): Use locate-user-emacs-file.
72932	(ecomplete-completion-table): New completion table.
72933	(completion-category-defaults): Set default behavior for that table.
72934
729352018-01-23  Eli Zaretskii  <eliz@gnu.org>
72936
72937	Support null characters in interactive specs
72938
72939	* src/callint.c (Fcall_interactively): Support 'interactive'
72940	specifications with embedded null characters.  (Bug#30005)
72941
729422018-01-22  Stefan Monnier  <monnier@iro.umontreal.ca>
72943
72944	* lisp/emacs-lisp/ert.el (describe-symbol-backends): Add ourselves
72945
72946	(ert-describe-test): Return the description text as well.
72947	Remove left over version check.
72948	* lisp/help-mode.el (describe-symbol-backends): Add docstring.
72949
729502018-01-22  Philipp Stephani  <phst@google.com>
72951
72952	Add a regression test for Bug#30004.
72953
72954	* test/src/callint-tests.el
72955	(call-interactively/incomplete-multibyte-sequence): New unit test.
72956
729572018-01-22  Philipp Stephani  <phst@google.com>
72958
72959	* src/nsterm.m (x_set_offset): Remove unused variable 'screens'.
72960
729612018-01-22  Juri Linkov  <juri@linkov.net>
72962
72963	Restore isearch correctly after M-e in special modes (bug#30187)
72964
72965	* lisp/isearch.el (isearch-suspended): New defvar.
72966	(with-isearch-suspended): Set isearch-suspended to t
72967	at the beginning, then set it back to nil at the end.
72968
72969	* lisp/comint.el (comint-history-isearch-backward)
72970	(comint-history-isearch-backward-regexp): Set global value of
72971	comint-history-isearch to t.
72972	(comint-history-isearch-end): Reevaluate
72973	comint-history-isearch when isearch-edit-string finishes.
72974
72975	* lisp/dired-aux.el (dired-isearch-filenames)
72976	(dired-isearch-filenames-regexp): Set global value of
72977	dired-isearch-filenames to t.
72978	(dired-isearch-filenames-end): Reevaluate
72979	dired-isearch-filenames when isearch-edit-string finishes.
72980
729812018-01-22  Paul Eggert  <eggert@cs.ucla.edu>
72982
72983	Merge from origin/emacs-26
72984
72985	1fc98ed073 ; Spelling fix
72986	bb396a369c Update Org to v9.1.6
72987	fa582153f7 Use text-pixels values only when saving framesets (Bug#30141)
72988	6b01b9475d Minor improvement in section "Pages" of the usere manual
72989	e8c8bd3de2 Minor improvements in user manual
72990	26b8b92e63 Improve the "Mark" chapter of the user manual
72991	759569fe40 Improve the "Buffers" chapter of the user manual
72992	c2e6d121ff * lisp/term.el (term-send-input): Fix text duplication in ...
72993	854a1c0a61 Improve "Buffers" in the user manual
72994
72995	# Conflicts:
72996	#	etc/NEWS
72997
729982018-01-22  Michael Albinus  <michael.albinus@gmx.de>
72999
73000	Fix byte-compiler warning in tramp-sh.el
73001
73002	* lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
73003	Use `set-process-coding-system' rather than interactive
73004	`set-buffer-process-coding-system'.
73005
73006	* lisp/net/tramp.el (tramp-default-user-alist)
73007	(tramp-default-host-alist): Fix docstring.
73008
730092018-01-22  Michael Albinus  <michael.albinus@gmx.de>
73010
73011	Finish changes in autorevert from commit 530bb2dc68
73012
73013	* lisp/autorevert.el (auto-revert-buffers):
73014	Check `auto-revert-timer' being a timerp.
73015
73016	* test/lisp/filenotify-tests.el (file-notify-test04-autorevert):
73017	Adapt test in order to cover changed behavior of autorevert.
73018
730192018-01-21  Juri Linkov  <juri@linkov.net>
73020
73021	* lisp/vc/add-log.el (change-log-next-buffer): Check file for nil.
73022
730232018-01-21  Juri Linkov  <juri@linkov.net>
73024
73025	New function read-answer (bug#30073)
73026
73027	* lisp/emacs-lisp/map-ynp.el (read-answer): New function.
73028	(read-answer-short): New defcustom.
73029
73030	* lisp/dired.el (dired-delete-file): Use read-answer.
73031	(dired--yes-no-all-quit-help): Remove function.
73032	(dired-delete-help): Remove defconst.
73033
73034	* lisp/subr.el (assoc-delete-all): New function.
73035
730362018-01-21  Lars Ingebrigtsen  <larsi@gnus.org>
73037
73038	(archive-rar-summarize): Adjust parsing to be more permissive
73039
73040	* lisp/arc-mode.el (archive-rar-summarize): Adjust parsing to
73041	be more permissive.
73042
73043	The previous code would stop parsing if we had a directory entry or a
73044	negative ratio as seen from the output of lsar on Debian jessie:
73045
73046	  0. D----    16221659  -----  Nr20  2005-12-24 19:30  foo/
73047	  4. -----      466509  -0.0%  Nr20  2005-12-24 19:19  foo/bar.jpg
73048
730492018-01-21  Alan Mackenzie  <acm@muc.de>
73050
73051	Handle C99 Compound Literals in return statements and argument lists.
73052
73053	* lisp/progmodes/cc-engine.el (c-looking-at-or-maybe-in-bracelist): Recognize
73054	a brace list when preceded by "return" or inside parentheses, either
73055	immediately after the "(" or following a comma.
73056	(c-looking-at-inexpr-block): Test c-has-compound-literals rather than hard
73057	coded C++ Mode.
73058	(c-guess-basic-syntax, CASE 7B): Test additionally for not being just inside a
73059	parenthesis or being at a Java "new" keyword.  CASE 9: Remove the simple
73060	minded test on the contents of a block to determine a brace list.
73061
73062	* lisp/progmodes/cc-langs.el (c-has-compound-literals): New lang const and lang var.
73063
730642018-01-21  Simen Heggestøyl  <simenheg@gmail.com>
73065
73066	Parse percent values in CSS alpha components
73067
73068	* lisp/textmodes/css-mode.el (css--rgb-color): Support parsing percent
73069	values in the alpha component.
73070
73071	* test/lisp/textmodes/css-mode-tests.el
73072	(css-test-rgb-to-named-color-or-hex, css-test-rgb-parser): Update for
73073	the above changes.
73074
730752018-01-20  Paul Eggert  <eggert@cs.ucla.edu>
73076
73077	Fix tempfile creation when byte compiling
73078
73079	This improves on the recent fix for master failing to build
73080	on FreeBSD.  Suggested by Stefan Monnier in:
73081	https://lists.gnu.org/r/emacs-devel/2018-01/msg00600.html
73082	* lisp/emacs-lisp/bytecomp.el (byte-compile-file):
73083	Put tempfile next to the target file, as was the original intent.
73084
730852018-01-20  Michael Albinus  <michael.albinus@gmx.de>
73086
73087	Extend tramp-test02-file-name-dissect* tests
73088
73089	* test/lisp/net/tramp-tests.el (tramp-test02-file-name-dissect)
73090	(tramp-test02-file-name-dissect-simplified)
73091	(tramp-test02-file-name-dissect-separate): Test also
73092	`tramp-default-method-alist', `tramp-default-user-alist' and
73093	`tramp-default-host-alist'.
73094
730952018-01-20  Jarosław Rzeszótko  <jrzeszotko@gmail.com>  (tiny change)
73096
73097	* lisp/ielm.el: Bring up the debugger when requested
73098
73099
73100	(ielm-eval-input): Don't catch errors during evaluation
73101	of the expression if debug-on-error is set.
73102
731032018-01-20  Glenn Morris  <rgm@gnu.org>
73104
73105	Merge from origin/emacs-26
73106
73107	cfc94fd (origin/emacs-26) Don't mention 'vc-stay-local' in the user m...
73108	8ce430b Fix a typo in calendar.texi
73109	bb748b3 Minor improvement in wording of the Emacs manual
73110	b603aff Revert "Fix tempfile creation when byte compiling"
73111	4fd446e Fix tempfile creation when byte compiling
73112	7f48a11 Improve the Emacs manual as suggested in emacs-manual-bugs
73113	728ded0 * lisp/emacs-lisp/bytecomp.el: Tweak last change
73114	c6c05e2 Unbreak building Emacs on FreeBSD
73115	a41ad3d Don't unnecessarily use non-ASCII characters in C sources
73116	c28d4b6 Portability fixes in emacs-module-tests
73117	1d50c18 Add tests for term.el
73118
731192018-01-20  Glenn Morris  <rgm@gnu.org>
73120
73121	Merge from origin/emacs-26
73122
73123	297dc41 * configure.ac (emacs_config_features): Add threads.
73124
73125	Conflicts:
73126		configure.ac
73127
731282018-01-20  Michael Albinus  <michael.albinus@gmx.de>
73129
73130	Use file notification in autorevert also for recreated files
73131
73132	* lisp/autorevert.el (auto-revert-mode)
73133	(global-auto-revert-mode, auto-revert-notify-add-watch)
73134	(auto-revert-notify-handler, auto-revert-handler): Do not use
73135	buffer local `auto-revert-use-notify' anymore.
73136
73137	* test/lisp/autorevert-tests.el
73138	(auto-revert-test02-auto-revert-deleted-file): Adapt test in
73139	order to check, that file notification is reenabled when possible.
73140
731412018-01-20  Michael Albinus  <michael.albinus@gmx.de>
73142
73143	* doc/misc/tramp.texi: Highlight @cindex entries properly.
73144
731452018-01-20  Basil L. Contovounesios  <contovob@tcd.ie>
73146
73147	Improve and simplify 'map-y-or-n-p'
73148
73149	* lisp/emacs-lisp/map-ynp.el (map-y-or-n-p): Do not follow a
73150	definite article with an action verb in C-h help text.  Use
73151	'with-help-window' instead of 'with-output-to-temp-buffer'.
73152	Simplify string concatenation.  (Bug#30064)
73153
731542018-01-20  Basil L. Contovounesios  <contovob@tcd.ie>
73155
73156	Use map-y-or-n-p in bibtex.el
73157
73158	* lisp/textmodes/bibtex.el (bibtex-reformat): Use map-y-or-n-p.
73159	(Bug#30065)
73160
731612018-01-20  Basil L. Contovounesios  <contovob@tcd.ie>
73162
73163	Reverse bibtex-reference-keys in 'bibtex-parse-keys'
73164
73165	* lisp/textmodes/bibtex.el (bibtex-parse-keys): Reverse
73166	bibtex-reference-keys.  (Bug#30048)
73167
731682018-01-19  Michael Albinus  <michael.albinus@gmx.de>
73169
73170	Add new entry in tramp-smb-errors
73171
73172	* lisp/net/tramp-smb.el (tramp-smb-errors):
73173	Add "NT_STATUS_RESOURCE_NAME_NOT_FOUND".
73174
731752018-01-19  Eli Zaretskii  <eliz@gnu.org>
73176
73177	Fix posn-at-point in Flycheck buffers
73178
73179	* src/dispnew.c (buffer_posn_from_coords): Improve commentary.
73180
73181	* src/xdisp.c (move_it_in_display_line_to): Don't exit the loop
73182	under truncate-lines if the glyph at TO_CHARPOS was not yet
73183	produced.  This avoids bailing out too early when we are at
73184	TO_CHARPOS, but didn't yet produce glyphs for that buffer
73185	position, because the last call to PRODUCE_GLYPHS at this position
73186	was for an object other than the buffer.  For further details, see
73187	http://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00537.html.
73188
731892018-01-19  Reuben Thomas  <rrt@sc3d.org>
73190
73191	etags(1): fix formatting problem
73192
73193	* doc/man/etags.1: Remove spurious space.
73194
731952018-01-19  Michael Albinus  <michael.albinus@gmx.de>
73196
73197	* test/lisp/filenotify-tests.el (file-notify-test03-events): Cleanup subtests.
73198
731992018-01-18  Stefan Monnier  <monnier@iro.umontreal.ca>
73200
73201	* lisp/calendar/calendar.el: Use lexical-binding
73202
73203	(calendar-generate-window): Remove unused variable `day'.
73204	(calendar-generate-month): Use calendar-dlet* to provide the dynbind
73205	vars promised by the respective docstrings.
73206	(calendar-update-mode-line): Use calendar-dlet* to provide `date' to
73207	calendar-mode-line-format.  Don't call `eval' here since it's called in
73208	calendar-string-spread anyway!
73209	(calendar-date-string): Use calendar-dlet* to provide the dynbind
73210	vars promised by the docstring of calendar-date-display-form.
73211
73212	* lisp/calendar/diary-lib.el (diary--date-string): Rename from date-string.
73213
732142018-01-18  Noam Postavsky  <npostavs@gmail.com>
73215
73216	Switch term.el to lexical binding, and clean up code a bit
73217
73218	* lisp/term.el (term-terminal-state): Remove.
73219	(term-do-line-wrapping): New variable, equivalent to state 1.
73220	(term-terminal-previous-parameter, term-terminal-parameter)
73221	(term-terminal-more-parameters)
73222	(term-terminal-previous-parameter-2)
73223	(term-terminal-previous-parameter-3)
73224	(term-terminal-previous-parameter-4): Remove.
73225	(term-move-to-column): New function, for absolute column movement.
73226	(term-control-seq-regexp, term-control-seq-prefix-regexp): New
73227	constants.
73228	(term-emulate-terminal, term-pager-discard): Use them via string-match
73229	instead of implementing a state machine in elisp.  Handle all
73230	unprocessed input via term-terminal-undecoded-bytes (this solves
73231	Bug#17231).
73232	(term-handle-ansi-escape): Take a list of escape sequence parameters
73233	as an argument, rather than via dynamic variables.
73234	(term-erase-in-display): Consult the argument, not the dynamically
73235	bound term-terminal-parameter (which happened to be the same as the
73236	argument up until now).
73237
732382018-01-18  Glenn Morris  <rgm@gnu.org>
73239
73240	* admin/automerge: New script.
73241
732422018-01-18  Glenn Morris  <rgm@gnu.org>
73243
73244	Merge from origin/emacs-26
73245
73246	76040d1 (origin/emacs-26) Handle case-insensitive filenames for load-...
73247	0c9b050 ; * test/file-organization.org: Fix typo.
73248
732492018-01-18  Glenn Morris  <rgm@gnu.org>
73250
73251	Merge from origin/emacs-26
73252
73253	779b2ac Use recommended long options syntax in man page
73254	c433e87 An overdue update of GNUstep emacs.tiff
73255	188a9d9 Add some test skip conditions
73256
732572018-01-18  Glenn Morris  <rgm@gnu.org>
73258
73259	Merge from origin/emacs-26
73260
73261	7efb366 ; * etc/AUTHORS: Regenerate.
73262	3dc7f68 * admin/authors.el (authors-aliases): Tighten more entries.
73263	7428062 ; * lisp/vc/vc.el: Comment fixes.
73264	f4e6b6e Small startup fix for current-load-list
73265	5b776bf ; * etc/AUTHORS: Regenerate.
73266	d80295c authors-aliases is based on regexps, not literals
73267
732682018-01-18  Stefan Monnier  <monnier@iro.umontreal.ca>
73269
73270	* lisp/vc/vc-hg.el, lisp/vc/vc-git.el: Flush the 'vc-functions' cache.
73271
732722018-01-18  Juri Linkov  <juri@linkov.net>
73273
73274	Improve "*Process List*" and "*Local Variables*".  (Bug#30016)
73275
73276	* lisp/files.el (save-buffers-kill-emacs): Display "*Process List*"
73277	buffer at bottom.
73278	(hack-local-variables-confirm): Display "*Local Variables*" buffer
73279	at bottom.
73280
73281	* lisp/simple.el (process-menu-mode): Increase buffer column width
73282	from 15 to 25.
73283
732842018-01-18  Philipp Stephani  <p.stephani2@gmail.com>
73285
73286	Fix module support if threads are disabled (Bug#30106)
73287
73288	* src/systhread.c (sys_thread_equal): New function.
73289	* src/thread.c (in_current_thread): Move from emacs-module.c; use
73290	sys_thread_equal.
73291
732922018-01-18  Michael Albinus  <michael.albinus@gmx.de>
73293
73294	* doc/misc/message.texi (Mail Aliases): Mention also down and up keys.
73295
732962018-01-18  Lars Ingebrigtsen  <larsi@gnus.org>
73297
73298	Bind up/down in ecomplete
73299
73300	* lisp/ecomplete.el (ecomplete-display-matches): Allow using
73301	up/down in addition to M-p/M-n.
73302
733032018-01-18  Martin Rudalics  <rudalics@gmx.at>
73304
73305	Fix some tooltip related problems
73306
73307	Replace 'tooltip' frame parameter with a 'tooltip' member in
73308	the frame structure.  For GTK+ builds use 'tip_last_frame' to
73309	find the frame for which the currently visible tooltip was
73310	made.  For modeline help-echoing have tooltips show applicable
73311	actions only.
73312
73313	* lisp/bindings.el (mode-line-default-help-echo): New function
73314	as default value of homonymous option.
73315	* src/dispextern.h (tip_frame, tip_window): Remove
73316	declarations.
73317	* src/frame.c (make_frame): Initialize new frame structure
73318	member 'tooltip'.
73319	(Fframe_list, other_frames): Rewrite with new macro
73320	FRAME_TOOLTIP_P.
73321	* src/frame.h (struct frame): New member 'tooltip'.
73322	(FRAME_TOOLTIP_P): New macro.
73323	* src/gtkutil.c (xg_prepare_tooltip, xg_hide_tooltip): Rewrite
73324	using boolean return values.
73325	* src/nsfns.m (tip_frame): Remove declaration.
73326	* src/w32fns.c (w32_display_monitor_attributes_list)
73327	(w32_display_monitor_attributes_list_fallback): Rewrite with
73328	new macro FRAME_TOOLTIP_P.
73329	(tip_last_string, tip_last_frame, tip_last_parms): New Lisp
73330	scalars replacing Lisp vector last_show_tip_args.
73331	(x_create_tip_frame): Set new frame's 'tooltip' structure
73332	member to true.
73333	(x_hide_tip): Additionally test tip_frame for liveness.
73334	(Fx_show_tip): Handle last_show_tip_args to tip_last_frame,
73335	tip_last_string and tip_last_parms conversion.
73336	(syms_of_w32fns): staticpro tip_last_frame, tip_last_string
73337	and tip_last_parms instead of last_show_tip_args.
73338	* src/w32term.c (w32_read_socket, x_new_font): Rewrite with
73339	new macro FRAME_TOOLTIP_P.
73340	* src/w32term.h (tip_window): Add external declaration.
73341	* src/xdisp.c (x_consider_frame_title, prepare_menu_bars)
73342	(should_produce_line_number): Rewrite with new macro
73343	FRAME_TOOLTIP_P.
73344	(note_mode_line_or_margin_highlight): If
73345	`mode-line-default-help-echo' specifies a function, call it to
73346	produce help echo string.
73347	* src/xfns.c (x_make_monitor_attribute_list)
73348	(Fx_display_monitor_attributes_list): Rewrite with
73349	new macro FRAME_TOOLTIP_P.
73350	(tip_last_string, tip_last_frame, tip_last_parms): New Lisp
73351	scalars replacing Lisp vector last_show_tip_args.
73352	(x_create_tip_frame): Set new frame's 'tooltip' structure
73353	member to true.
73354	(x_hide_tip): Rewrite with additional tests of frames for
73355	liveness and taking into account that for GTK+ tips the
73356	reference frame is now stored in tip_last_frame instead of
73357	tip_frame.
73358	(Fx_show_tip): Handle last_show_tip_args to tip_last_frame,
73359	tip_last_string and tip_last_parms conversion.  For GTK+ store
73360	FRAME argument in tip_last-frame.
73361	(syms_of_xfns): staticpro tip_last_frame, tip_last_string
73362	and tip_last_parms instead of last_show_tip_args.
73363	* src/xterm.c (x_update_begin, handle_one_xevent, x_new_font)
73364	(x_set_window_size): Rewrite with new macro FRAME_TOOLTIP_P.
73365	* src/xterm.h (tip_window): Add external declaration.
73366	* etc/NEWS: Mention new modeline tooltips behavior.
73367
733682018-01-16  Glenn Morris  <rgm@gnu.org>
73369
73370	Small cus-start fix for custom-delayed-init-variables
73371
73372	* lisp/cus-start.el (custom-delayed-init-variables):
73373	Only modify it during startup.
73374
733752018-01-16  Lars Ingebrigtsen  <larsi@gnus.org>
73376
73377	Introduce a variable to control ecomplete sorting
73378
73379	* lisp/ecomplete.el (ecomplete-sort-predicate): New variable.
73380	(ecomplete-get-matches): Use it.
73381
733822018-01-16  Alan Mackenzie  <acm@muc.de>
73383
73384	C++ Mode: Fontify correctly uniform initialisation with inner parentheses.
73385
73386	E.g.: someStruct x ( (nullptr != y) ? 3 : 4 )
73387	Also fontify declarations of function pointers correctly.
73388
73389	* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): While testing for a
73390	typeless declaration, additionally test the variable `got-prefix' to
73391	recognize a function pointer in parentheses.  Allow c-fdoc-shift-type-backward
73392	to be invoked when we have nested parens.
73393
733942018-01-16  Lars Ingebrigtsen  <larsi@gnus.org>
73395
73396	Add documentation to ecomplete.el
73397
73398	* lisp/ecomplete.el: Add doc strings and document the format.
73399
734002018-01-15  Paul Eggert  <eggert@cs.ucla.edu>
73401
73402	Fix macOS breakage in make_lispy_event
73403
73404	Problem reported by John Wiegley in:
73405	https://lists.gnu.org/r/emacs-devel/2018-01/msg00499.html
73406	* src/keyboard.c (kbd_buffer_get_event) [HAVE_NS]:
73407	Act on used_mouse_menu here...
73408	(make_lispy_event) [HAVE_NS]: ... instead of here.
73409
734102018-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
73411
73412	* lisp/ielm.el (ielm-eval-input): Use cl-print.
73413
734142018-01-15  Glenn Morris  <rgm@gnu.org>
73415
73416	Merge from origin/emacs-26
73417
73418	98e5fb9bf3 (origin/emacs-26) Remove incorrect documentation in comint.el
73419	8ba5b85161 An overdue update of src/emacs-icon.h
73420	155b211133 Minor copyedit in ELisp manual
73421
734222018-01-15  Glenn Morris  <rgm@gnu.org>
73423
73424	Merge from origin/emacs-26
73425
73426	c9c1add6a4 * doc/lispref/variables.texi (File Local Variables): Fix l...
73427	752fba992b (tag: emacs-26.0.91) ; * Update ldefs-boot.el
73428	4f46a5098d * ChangeLog.3: Update
73429	8f705ba44d Update etc/AUTHORS
73430	6c63204b8c Fix an entry in authors-aliases
73431	5dd0e5c54d Mention trace.el facilities in the ELisp manual
73432	97b0e41c5d Improve documentation of safe values of variables
73433	a502ee9dc4 ; * doc/emacs/misc.texi (Amusements): Really add "games" t...
73434	106bf8adc3 Improve the Emacs manual's "Misc" node
73435	47aa85c7ec In nsterm.m use FRAME_NS_P instead of FRAME_X_P (Bug#30019)
73436	e9e32d3475 ; * Update ldefs-boot.el
73437
734382018-01-15  Glenn Morris  <rgm@gnu.org>
73439
73440	Merge from origin/emacs-26
73441
73442	2c0cfa6455 * ChangeLog.3: Update
73443	4387bb44ae Update authors
73444	bce51bd6f7 * lisp/gnus/message.el (message-do-auto-fill): Prevent do-...
73445	bd2a2a1e84 Improve documentation of etags
73446	7ba75b9637 Teach etags new interpreters for some languages
73447	1f7f03742d * lisp/emacs-lisp/generator.el (iter-defun): Add 'doc-stri...
73448	dbb4aac212 * lisp/emacs-lisp/syntax.el (syntax-propertize): Fix bug#2...
73449	80463a43da Improve documentation of fill-separate-heterogeneous-words...
73450	4bd2416d55 Fix documentation of some x-* functions
73451	9c2b11484f Inherit query-on-exit flag to stderr process (Bug#30031)
73452	3efb1e7def Fix Bug#30057
73453	a9b884c60f Tag some unstable tests, and skip by default (bug#24503)
73454
73455	# Conflicts:
73456	#	test/lisp/emacs-lisp/eieio-tests/eieio-tests.el
73457
734582018-01-15  Nicolas Petton  <nicolas@petton.fr>
73459
73460	* admin/authors.el (authors-aliases): Additions.
73461
734622018-01-15  Nicolas Petton  <nicolas@petton.fr>
73463
73464	Update authors.el
73465
73466	* admin/authors.el (authors-valid-file-names)
73467	(authors-renamed-files-alist): Additions.
73468
734692018-01-15  Glenn Morris  <rgm@gnu.org>
73470
73471	Small improvement for noninteractive gitmerge
73472
73473	* admin/gitmerge.el (gitmerge-resolve-unmerged):
73474	In batch mode, report conflicted files.
73475
734762018-01-15  Glenn Morris  <rgm@gnu.org>
73477
73478	Small gitmerge-skip-regexp fix
73479
73480	* admin/gitmerge.el (gitmerge-skip-regexp): Update for new format
73481	of "bump version" message that seems to have appeared.
73482
734832018-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
73484
73485	* src/print.c (syms_of_print) <print_quoted>: Set default to true
73486
734872018-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
73488
73489	* lisp/mail/smtpmail.el (smtpmail-send-data-1): No string-as-multibyte
73490
73491	This is not needed any more since unibyte strings will be sent as-is
73492	anyway by process-send-string.
73493	(smtpmail-via-smtp): Avoid set-buffer-process-coding-system.
73494
734952018-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
73496
73497	(set-buffer-process-coding-system): Mark as interactive-only.
73498
73499	* lisp/international/mule.el (set-buffer-process-coding-system):
73500	Mark as interactive-only.
73501
735022018-01-15  Jeremie Courreges-Anglas  <jca@wxcvbn.org>
73503
73504	Use fcntl.h in kqueue.c
73505
73506	* src/kqueue.c: Use fcntl.h (specified by POSIX) instead of
73507	non-standard sys/file.h to access O_* open(2) flags.
73508
735092018-01-14  Marcin Borkowski  <mbork@mbork.pl>
73510
73511	Add simple tests for the `fill-polish-nobreak-p' function
73512
73513	* test/lisp/textmodes/fill-tests.el:
73514	(fill-test-no-fill-polish-nobreak-p): New test
73515
735162018-01-14  Marcin Borkowski  <mbork@mbork.pl>
73517
73518	Add the function `fill-polish-nobreak-p'
73519
73520	* lisp/textmodes/fill.el (fill-polish-nobreak-p): Prevent
73521	line-breaking after a single-letter word even if this word is not
73522	preceded by a space.  Fixes bug #20871.
73523
735242018-01-13  Ken Brown  <kbrown@cornell.edu>
73525
73526	Add battery support to all Cygwin builds
73527
73528	It already exists in the Cygwin-w32 build.
73529	* src/w32fns.c (Fw32_battery_status): Move to...
73530	* src/w32cygwinx.c: New file, to be used for functions common to
73531	the MS Windows and Cygwin builds.
73532	(syms_of_w32cygwinx): New function.
73533	* src/lisp.h: Add prototype of syms_of_w32cygwinx.
73534	* src/emacs.c (main) [HAVE_NTGUI or CYGWIN]: Call syms_of_w32cygwinx.
73535	* src/Makefile.in (SOME_MACHINE_OBJECTS):
73536	* configure.ac (W32_OBJ) [HAVE_W32]: Add w32cygwinx.o.
73537	(W32_LIBS) [CYGWIN]: Set equal to "-lkernel32" in non-w32 build.
73538	(W32_OBJ) [CYGWIN]: Set equal to "w32cygwinx.o" in non-w32 build.
73539	* etc/NEWS: Document the new battery support.
73540
735412018-01-13  Shuguang Sun  <shuguang@gmail.com>
73542
73543	Fix Bug#29149 in dired-aux.el
73544
73545	* lisp/dired-aux.el (dired-shell-stuff-it): Handle remote
73546	commands on w32 properly.  (Bug#29149)
73547
735482018-01-13  Michael Albinus  <michael.albinus@gmx.de>
73549
73550	Fix Bug#29149 in shell.el
73551
73552	* lisp/shell.el (shell): Change order of `file-local-name' and
73553	`expand-file-name' calls.  Otherwise, the local file name
73554	would be extended by a drive letter, even when it is a remote
73555	file, seen from w32.  (Bug#29149)
73556
735572018-01-13  Michael Albinus  <michael.albinus@gmx.de>
73558
73559	Improve Tramp robustness
73560
73561	* lisp/net/tramp.el (tramp-message, tramp-process-actions)
73562	(tramp-read-passwd, tramp-interrupt-process):
73563	* lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
73564	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch)
73565	(tramp-gvfs-maybe-open-connection):
73566	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
73567	(tramp-process-sentinel)
73568	(tramp-sh-handle-file-notify-add-watch)
73569	(tramp-barf-if-no-shell-prompt, tramp-maybe-open-connection)
73570	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
73571	(tramp-smb-handle-file-acl, tramp-smb-handle-set-file-acl)
73572	(tramp-smb-maybe-open-connection): Use process property rather
73573	than connection property "vector".
73574
73575	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
73576	Fix scoping error.  Let error traces use process buffer.
73577
73578	* lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
73579	Move "inotifywait" up.  GVFS based monitoring is not stable.
73580	Let error traces use process buffer.
73581	(tramp-sh-gvfs-monitor-dir-process-filter): Check more error
73582	messages.
73583	(tramp-get-remote-gvfs-monitor-dir): Search also for "gio".
73584
73585	* lisp/net/tramp.el (tramp-get-debug-buffer):
73586	Use `special-mode-map' as parent map in debug buffer.
73587	(tramp-message): Ensure, that proper process buffer is dumped
73588	in error case.
73589
735902018-01-12  Stefan Monnier  <monnier@iro.umontreal.ca>
73591
73592	* src/keyboard.c: Consolidate code into make_lispy_event
73593
73594	(clear_event): Change arg type.  Adjust callers.
73595	(kbd_buffer_get_event): Move most special event handling to
73596	make_lispy_event.
73597	(make_lispy_event): Add missing cases, taken from kbd_buffer_get_event.
73598	<SAVE_SESSION_EVENT>: Change return value to match what used to be built
73599	in kbd_buffer_get_event.
73600
736012018-01-12  Stefan Monnier  <monnier@iro.umontreal.ca>
73602
73603	* src/keyboard.c (kbd_buffer_get_event): Use 'switch' ...
73604
73605	...rather than a sequence of else-if.
73606
736072018-01-12  Alan Mackenzie  <acm@muc.de>
73608
73609	Make Fzlib_decompress_region always call the change hooks in a balanced way.
73610
73611	This means there will be exactly one call of each of before- and
73612	after-change-functions, regardless of whether or not the decompression
73613	succeeds, and these calls will refer to corresponding buffer regions.
73614
73615	src/decompress.c (struct decompress_unwind_data): add a new field, orig.
73616	(unwind_decompress): Use del_range_2 and update_compositions in place of
73617	del_range, to avoid unwanted change hook calls.  Call signal_after_change for
73618	the failed case.
73619	(Fzlib_decompress_region): Call modify_txt for a before-change-functions.  Set
73620	the new field orig of unwind_data to the region's start.  Use del_range_2 and
73621	update_compositions in place of del_range to avoid unwanted change hook
73622	calls.  Call signal_after_change for the successful case.
73623
736242018-01-11  Juri Linkov  <juri@linkov.net>
73625
73626	* lisp/frame.el (toggle-frame-maximized/fullscreen): Add frame arg.
73627
73628	(Bug#29986)
73629
736302018-01-11  Juri Linkov  <juri@linkov.net>
73631
73632	* lisp/windmove.el (windmove-default-keybindings): Allow list of modifiers.
73633
73634	(Bug#29985)
73635
736362018-01-11  Ken Brown  <kbrown@cornell.edu>
73637
73638	Unbreak the Cygwin-w32 build
73639
73640	* src/keyboard.c (input_polling_used) [CYGWIN]: Restore.  This was
73641	removed on Cygwin in the commit "On non-MS-Windows, omit unnecessary
73642	polling functions".  But it is used in w32fns.c:x_make_frame_visible
73643	in the Cygwin-w32 build.
73644
736452018-01-11  Stefan Monnier  <monnier@iro.umontreal.ca>
73646
73647	* lisp/mail/smtpmail.el: Use lexical-binding and cl-generic
73648
73649	(smtpmail-auth-supported): Mark it as non-constant.
73650	(smtpmail-try-auth-methods): Remove unused var 'ret'.
73651	Test non-nullness of mech user and password before calling
73652	smtpmail-try-auth-method.
73653	(smtpmail-try-auth-method): Make it into a generic function.
73654	(smtpmail-via-smtp): Remove unused var 'response-code'.
73655
736562018-01-11  Stefan Monnier  <monnier@iro.umontreal.ca>
73657
73658	* lisp/org/org-element.el: Add comment about use of internal functions
73659
736602018-01-10  Glenn Morris  <rgm@gnu.org>
73661
73662	Remove some more face aliases obsolete since 22.1
73663
73664	* lisp/generic-x.el (show-tabs-tab-face, show-tabs-space-face):
73665	* lisp/eshell/em-prompt.el (eshell-prompt-face):
73666	* lisp/vc/smerge-mode.el (smerge-base-face, smerge-markers-face):
73667	Remove face "-face" aliases, obsolete since 22.1.
73668
736692018-01-10  Glenn Morris  <rgm@gnu.org>
73670
73671	Remove message.el face aliases obsolete since 22.1
73672
73673	* lisp/gnus/message.el: Remove face "-face" aliases,
73674	obsolete since 22.1.
73675
736762018-01-10  Glenn Morris  <rgm@gnu.org>
73677
73678	Remove Gnus face aliases obsolete since 22.1
73679
73680	* lisp/gnus/gnus-art.el, lisp/gnus/gnus-cite.el:
73681	* lisp/gnus/gnus-srvr.el, lisp/gnus/gnus.el:
73682	* lisp/gnus/spam.el: Remove face "-face" aliases, obsolete since 22.1.
73683
736842018-01-10  Glenn Morris  <rgm@gnu.org>
73685
73686	Remove obsolete variable sun-raw-prefix-hooks
73687
73688	* lisp/term/sun.el (sun-raw-prefix-hooks): Remove, obsolete since 21.1.
73689	(terminal-init-sun): No longer consult sun-raw-prefix-hooks.
73690
736912018-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
73692
73693	* lisp/calendar/appt.el: Use lexical-binding
73694
73695	(appt-display-message): Remove unused variable 'err'.
73696	(appt-check): Fix typo in search for a function on a hook.
73697	(number, original-date): Move declaration into 'appt-make-list'.
73698
736992018-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
73700
73701	* lisp/calendar/diary-lib.el: Fix bug#30051
73702
73703	(diary-list-entries): Dynamically bind 'number' and 'original-date' around
73704	diary-hook as documented in the docstring.
73705
737062018-01-09  Glenn Morris  <rgm@gnu.org>
73707
73708	Remove some obsolete calendar functions and variables
73709
73710	* lisp/calendar/cal-tex.el (cal-tex-list-holidays):
73711	Remove alias, obsolete since 24.4.
73712	* lisp/calendar/calendar.el (calendar-mode):
73713	No longer use calendar-font-lock-keywords.
73714	(calendar-font-lock-keywords): Delete variable, obsolete since 24.4.
73715
737162018-01-09  Glenn Morris  <rgm@gnu.org>
73717
73718	Remove some obsolete compat code in supercite.el
73719
73720	* lisp/mail/supercite.el (sc-ask, sc-cite-original):
73721	Remove obsolete compat code.  This file uses modern features.
73722
737232018-01-09  Glenn Morris  <rgm@gnu.org>
73724
73725	Remove some obsolete compat code in f90.el
73726
73727	* lisp/progmodes/f90.el (f90-mark-subprogram, f90-indent-region)
73728	(f90-fill-region): Remove obsolete compat code.
73729	This file uses modern features.
73730
737312018-01-09  Glenn Morris  <rgm@gnu.org>
73732
73733	Remove some obsolete compat code in fortran.el
73734
73735	* lisp/progmodes/fortran.el (fortran-abbrev-start):
73736	Remove obsolete compat code.  This file uses modern features.
73737
737382018-01-09  Paul Eggert  <eggert@cs.ucla.edu>
73739
73740	Merge from origin/emacs-26
73741
73742	7668717d6f Merge from Gnulib
73743	9e4d523427 * lisp/epg.el (epg-start-sign): Replace obsolete functions.
73744	26c58f31a8 Small fix for erc-logging-enabled
73745	34b41e3bc6 Quieten semantic normal usage
73746	e25f961e37 Avoid irrelevant hyperlink in doc string of 'epa-pinentry-...
73747	ec2636513c * doc/misc/tramp.texi (Remote processes): Mention gdb rest...
73748	918a052a42 Query background for gnome terminal version 3.22 (Bug#29716)
73749	1dfc27576a Make pixel-wise scrolling less laggy
73750	f92264fc2a Fix child frame placement issues (bug#29953)
73751	a5f718c4c5 ; * doc/lispref/text.texi (Change Hooks): Fix last change.
73752	e876f5f9fb Describe the precise interaction of complex primitives wit...
73753	3a22097cf6 Fix valgrind report in call-interactively
73754	d5f1c87bfe * src/editfns.c (Fsave_excursion): Doc fix.  (Bug#30001)
73755	b8d74c4578 Fix mark-defun when there's no spaces between successive d...
73756	a377c652b5 Fix Dired display and operations on file names with raw bytes
73757	d9d6e8a04c ; Comments related to src/termcap.c
73758	f8a07fa6b1 Improve documentation of 'gdb-many-windows'
73759	f82400798e Fix failures in smerge-mode on MS-Windows
73760
737612018-01-09  Paul Eggert  <eggert@cs.ucla.edu>
73762
73763	Merge from origin/emacs-26
73764
73765	d382d2bfc5 * etc/DEBUG (Getting control to the debugger): Fix grammar.
73766	687af4c8e8 * lisp/vc/vc.el (vc-region-history): log-view-vc-fileset h...
73767	43e2aafae3 Don't bind dframe events on load (Bug#29599)
73768	ab31bf3c5f * lisp/textmodes/picture.el (picture-mode-exit): Doc fix. ...
73769	ed44d92fa6 * lisp/textmodes/picture.el (picture-open-line): Doc fix. ...
73770	b87a772612 Fix description of 'emacs-internal'
73771	a5256da588 Update PROBLEMS with selection-related issues
73772	c59ecb005e New customization variable for python-mode indentation (Bu...
73773	4e20c8f220 Fix menu keyboard shortcuts on macOS (Bug#29595)
73774
73775	# Conflicts:
73776	#	etc/NEWS
73777
737782018-01-09  Michael Albinus  <michael.albinus@gmx.de>
73779
73780	Fix Bug#30038
73781
73782	* lisp/net/tramp.el (tramp-make-tramp-file-name): Check, that
73783	method is not empty.  (Bug#30038)
73784
737852018-01-08  Tino Calancha  <tino.calancha@gmail.com>
73786
73787	cl-loop: Add missing guard condition
73788
73789	Consider the expansion of `cl-loop' with a `for' clause and more
73790	than one internal variables, X, Y, processed in parallel.
73791	Each step updates X and Y right after update the loop variable, K; if
73792	either X or Y depend on K, then some forms of the body are
73793	evaluated with the wrong K (Bug#29799).
73794
73795	For instance, consider the following code:
73796	(cl-loop for k below 2
73797	         for x = (progn (message "k = %d" k) 1)
73798	         and y = 1)
73799
73800	This code should show in *Messages*:
73801	k = 0
73802	k = 1
73803
73804	Instead, the code shows:
73805	k = 0
73806	k = 1
73807	k = 2
73808
73809	To prevent this we must ensure that the loop condition is still
73810	satisfied right after update the loop variable.
73811	In the macro expansion of the example above, right after:
73812	(setq k (+ k 1))
73813
73814	evaluate the rest of the body forms iif the condition
73815	(< k 2)
73816	is still valid.
73817
73818	* lisp/emacs-lisp/cl-macs.el (cl--loop-guard-cond): New variable.
73819	(cl--parse-loop-clause): Set it non-nil if the loop contains
73820	a for/as clause.
73821	(cl-loop): After update the loop variable, evaluate the remaining of
73822	the body forms just if the loop condition is still valid (Bug#29799).
73823
73824	* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-loop-for-as-equals-and):
73825	New test.
73826
738272018-01-07  Alan Third  <alan@idiocy.org>
73828
73829	Add macOS character-palette (bug#29837)
73830
73831	* lisp/term/ns-win.el (ns-do-show-character-palette): New function.
73832	* src/nsfns.m (Sns_show_character_palette): New function.
73833	* src/nsterm.m (EmacsView::insertText): Handle NSAttributedString.
73834
738352018-01-07  Alan Third  <alan@idiocy.org>
73836
73837	Fix build issues on macOS (bug#29931)
73838
73839	* configure.ac: On darwin add check for Homebrew texinfo install, and
73840	fix incorrect quoting of libxml2 includes.
73841
738422018-01-07  Philipp Stephani  <phst@google.com>
73843
73844	Allow inserting non-BMP characters
73845
73846	* src/coding.h (UTF_16_HIGH_SURROGATE_P, UTF_16_LOW_SURROGATE_P): Move
73847	from coding.c and document.
73848	(surrogates_to_codepoint): New function.
73849
73850	* src/nsterm.m (insertText:): Properly handle surrogate pairs.
73851
738522018-01-07  Michael Albinus  <michael.albinus@gmx.de>
73853
73854	Make tramp-tests.el more robust on w32
73855
73856	* test/lisp/net/tramp-tests.el (tramp-test21-file-links):
73857	Do not call `make-symbolic-link' on w32.
73858	(tramp-test36-find-backup-file-name): Call also
73859	`convert-standard-filename' due to w32.
73860	(tramp--test-windows-nt): New defun.
73861	(tramp-test42-auto-load, tramp-test42-delay-load)
73862	(tramp-test42-recursive-load, tramp-test42-remote-load-path):
73863	Quote command due to w32.
73864
738652018-01-07  Philipp Stephani  <phst@google.com>
73866
73867	Remove incorrect use of AUTO_STRING
73868
73869	* src/lread.c (load_error_old_style_backquotes): Remove incorrect use
73870	of AUTO_STRING.
73871
738722018-01-07  Tino Calancha  <tino.calancha@gmail.com>
73873
73874	cl-loop: Calculate the array length just once
73875
73876	* lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause):
73877	Dont calculate the array length on each iteration (Bug#29866).
73878
738792018-01-07  Philipp Stephani  <phst@google.com>
73880
73881	Improve error message for old-style backquotes
73882
73883	* src/lread.c (load_error_old_style_backquotes): Improve error message
73884	if no file is being loaded.
73885
73886	* test/src/lread-tests.el (lread-tests--force-new-style-backquotes):
73887	Adapt test.
73888
738892018-01-07  Philipp Stephani  <phst@google.com>
73890
73891	Add new variable to force new-style backquote interpretation.
73892
73893	* src/lread.c (syms_of_lread): Add new variable
73894	'force-new-style-backquotes'.
73895	(read_internal_start): Use it.
73896
73897	* test/src/lread-tests.el (lread-tests--force-new-style-backquotes):
73898	New test.
73899
73900	* etc/NEWS: Document new variable.
73901
739022018-01-07  Philipp Stephani  <phst@google.com>
73903
73904	Revert "Prevent name clashes between CL structures and builtin types"
73905
73906	This reverts commit 151496a4b96430924bc148f85b9c8471d1e132b1.
73907	That commit breaks bootstrap builds due to a cyclic dependency.
73908
739092018-01-07  Philipp Stephani  <phst@google.com>
73910
73911	Ignore escape characters for context-sensitive quotes (Bug#29812)
73912
73913	* lisp/electric.el (electric-quote-post-self-insert-function): Skip
73914	over escape characters when determining whether a context-sensitive
73915	quote should be opening or closing.
73916
73917	* test/lisp/electric-tests.el
73918	(electric-quote-replace-double-escaped-open)
73919	(electric-quote-replace-double-escaped-close): New unit tests.
73920
739212018-01-07  Philipp Stephani  <phst@google.com>
73922
73923	Fix a small bug in electric quoting.
73924
73925	Before this commit, if 'electric-quote-replace-double' is non-nil,
73926	typing " '" turned into " ‘" even if
73927	'electric-quote-context-sensitive' was nil.
73928
73929	* lisp/electric.el (electric-quote-post-self-insert-function): Insert
73930	context-sensitive double quote only if the last character is actually
73931	a double quote character.
73932
73933	* test/lisp/electric-tests.el
73934	(electric-quote-replace-double-no-context-single): New unit test.
73935
739362018-01-07  Philipp Stephani  <phst@google.com>
73937
73938	Prevent name clashes between CL structures and builtin types
73939
73940	* lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Don't allow
73941	structures with the same names as builtin types.
73942	(cl--struct-name-p): New helper function.
73943
73944	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Don't allow structures
73945	with the same names as builtin types.
73946
73947	* test/lisp/emacs-lisp/cl-macs-tests.el (cl-defstruct/builtin-type):
73948	* test/lisp/emacs-lisp/cl-preloaded-tests.el
73949	(cl-struct-define/builtin-type): New unit tests.
73950
73951	* etc/NEWS: Document changed behavior.
73952
739532018-01-07  Alan Mackenzie  <acm@muc.de>
73954
73955	* src/fns.c (base64-decode-region): Add signal_after_change call for insertion.
73956
739572018-01-06  Noam Postavsky  <npostavs@gmail.com>
73958
73959	Revert "Fix command repetition with lexical-binding (Bug#29334)"
73960
73961	It does not work with more complicated interactive forms, because
73962	byte-compile-lambda actually receives an intermediate form of code
73963	rather than valid lisp source (Bug#29988).
73964	* src/callint.c (Fcall_interactively):
73965	* lisp/emacs-lisp/bytecomp.el (byte-compile-lambda): Revert previous
73966	change, and update commentary.
73967
739682018-01-06  Alan Third  <alan@idiocy.org>
73969
73970	Allow setting tooltip colors in NS port
73971
73972	* src/nsfns.m (Fx_show_tip): Get face colors and apply them to the
73973	tooltip.
73974	* src/nsmenu.m (EmacsTooltip::setBackgroundColor):
73975	(EmacsTooltip::setForegroundColor): New functions.
73976	* src/nsterm.h (EmacsTooltip::setBackgroundColor):
73977	(EmacsTooltip::setForegroundColor): New function prototypes.
73978
739792018-01-06  Alan Mackenzie  <acm@muc.de>
73980
73981	Make transpose-regions invoke before-change-functions only once.
73982
73983	In the case of two non-contiguous regions the same size, transpose-regions has
73984	been calling before-change-functions twice, once for each region.  It now
73985	calls it just once, for the minimal region spanning both single regions.
73986
73987	* src/editfns.c (Ftranspose_regions): Combine two calls of modify_text into
73988	one.
73989
739902018-01-06  Michael Albinus  <michael.albinus@gmx.de>
73991
73992	Minor tramp-gvfs.el cleanup
73993
73994	* lisp/net/tramp-gvfs.el (tramp-gvfs-enabled): Move up.
73995	(top): Delete goa methods only when `tramp-gvfs-enabled' is not nil.
73996
739972018-01-05  Michael Albinus  <michael.albinus@gmx.de>
73998
73999	Add new Tramp connection method "owncloud"
74000
74001	* doc/misc/tramp.texi (all): Use @acronym{GNOME} thoroughly.
74002	(Using GNOME Online Accounts based methods): Rename from
74003	"Using Google Drive".  Add `owncloud'.
74004	(GVFS based methods): Add `owncloud'.
74005
74006	* etc/NEWS: Add Tramp connection method "owncloud".
74007
74008	* lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "owncloud".
74009	Remove goa methods if not supported.
74010	(tramp-goa-methods, tramp-goa-service, tramp-goa-path)
74011	(tramp-goa-path-accounts, tramp-goa-interface-documents)
74012	(tramp-goa-interface-printers, tramp-goa-interface-files)
74013	(tramp-goa-interface-contacts, tramp-goa-interface-calendar)
74014	(tramp-goa-interface-oauth2based)
74015	(tramp-goa-interface-account, tramp-goa-identity-regexp)
74016	(tramp-goa-interface-mail, tramp-goa-interface-chat)
74017	(tramp-goa-interface-photos, tramp-goa-path-manager)
74018	(tramp-goa-interface-documents)
74019	(tramp-gvfs-owncloud-default-prefix)
74020	(tramp-gvfs-owncloud-default-prefix-regexp): New defconst.
74021	(tramp-goa-name): New defstruct.
74022	(tramp-gvfs-stringify-dbus-message): Handle all consp messages.
74023	(tramp-dbus-function, tramp-gvfs-get-remote-prefix)
74024	(tramp-get-goa-accounts): New defun.
74025	(with-tramp-dbus-call-method): Use it.
74026	(with-tramp-dbus-get-all-properties): New defmacro.
74027	(tramp-gvfs-url-file-name)
74028	(tramp-gvfs-handler-mounted-unmounted)
74029	(tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec):
74030	Map between "owncloud" and "davs".
74031	(tramp-gvfs-maybe-open-connection): Set "vector" connection property.
74032
74033	* test/lisp/net/tramp-tests.el (tramp-gvfs-handler-askquestion):
74034	Suppress run in tests.
74035	(tramp--test-owncloud-p): New defun.
74036	(tramp-test11-copy-file, tramp-test12-rename-file): Use it.
74037
740382018-01-05  Jay Kamat  <jaygkamat@gmail.com>
74039
74040	Make eshell history expansion more like bash (Bug#29821)
74041
74042	- Prevent expansion of quick substitutions when the initial "^" is not
74043	  at start of line (Bug#29157).
74044	- Allow spaces inside substitutions, so "^foo bar^baz" works.
74045	- Allow trailing characters after substitution, so "^foo^bar^trailing"
74046	  works.
74047	- Throw an error when substitution does not match.
74048
74049	* lisp/eshell/em-hist.el (eshell-expand-history-references): Expand
74050	history substitution before other types of expansions, and expand them
74051	with the whole line.
74052	(eshell-history-substitution): New function to expand only
74053	substitutions, taking in the entire typed line rather than individual
74054	arguments.
74055
740562018-01-04  Michael Albinus  <michael.albinus@gmx.de>
74057
74058	Improve backward compatibility in tramp-archive
74059
74060	* lisp/net/tramp-archive.el
74061	(tramp-archive-handle-temporary-file-directory):
74062	Use `tramp-compat-temporary-file-directory'.
74063
74064	* test/lisp/net/tramp-archive-tests.el
74065	(tramp-archive-test37-make-nearby-temp-file):
74066	Wrap `temporary-file-directory' call with `with-no-warnings'.
74067
740682018-01-04  Michael Albinus  <michael.albinus@gmx.de>
74069
74070	Write proper `write-region' message in Tramp backends
74071
74072	* lisp/net/tramp-adb.el (tramp-adb-handle-write-region):
74073	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
74074	* lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
74075	* lisp/net/tramp-smb.el (tramp-smb-handle-write-region):
74076	Write proper message.
74077
74078	* lisp/net/tramp.el (tramp-message-show-message): Change default.
74079
74080	* test/lisp/net/tramp-tests.el (ert-x): Require it.
74081	(tramp-test10-write-region): Extend test.
74082
740832018-01-03  Noam Postavsky  <npostavs@gmail.com>
74084
74085	Fix command repetition with lexical-binding (Bug#29334)
74086
74087	`call-interactively' relies on analyzing the source of `interactive'
74088	forms in order to preserve arguments like (region-end) in the command
74089	history, rather than just storing the resulting position.  However,
74090	the byte-compiler does not preserve the source of the interactive form
74091	when lexical-binding is in effect, because `call-interactively' would
74092	evaluate the form with dynamic binding in that case.
74093
74094	To fix this, change `call-interactively' so that it checks compiled
74095	functions for lexical-binding as well.  Then the byte-compiler can
74096	preserve the source of interactive forms regardless of the value of
74097	lexical-binding.
74098
74099	* src/callint.c (Fcall_interactively): Functions compiled with
74100	lexical-binding have their arglist encoded as an integer, use this to
74101	choose the right kind of binding for compiled functions too.
74102	* lisp/emacs-lisp/bytecomp.el (byte-compile-lambda): Preserve the
74103	uncompiled form of the interactive form when lexical-binding is
74104	enabled too.
74105
741062018-01-02  Paul Eggert  <eggert@cs.ucla.edu>
74107
74108	Fix .gdbinit to work with Lisp_Word
74109
74110	Problem reported by Stefan Monnier (Bug#29957).
74111	* src/.gdbinit (xgetptr, xgetint, xgettype):
74112	Cast Lisp_Word value to EMACS_INT, since it might be a pointer now.
74113
741142018-01-02  Stephen Leake  <stephen_leake@stephe-leake.org>
74115
74116	Fix description of 'struct' generic function specializer
74117
74118	* doc/lispref/functions.texi (Generic Functions): Fix description of
74119	'struct' specializer; it must be the named struct or a child, not a
74120	parent.
74121
741222018-01-02  Michael Albinus  <michael.albinus@gmx.de>
74123
74124	Remove superfluous test data for Tramp
74125
741262018-01-01  Paul Eggert  <eggert@cs.ucla.edu>
74127
74128	* etc/NEWS: Improve -fcheck-pointer-bounds wording.
74129
74130	Merge from gnulib, mostly to fix copyright years
74131
741322018-01-01  Paul Eggert  <eggert@cs.ucla.edu>
74133
74134	Update copyright year to 2018
74135
74136	Run admin/update-copyright.
74137
741382018-01-01  Paul Eggert  <eggert@cs.ucla.edu>
74139
74140	Merge from origin/emacs-26
74141
74142	63b04c11d5 Fix copyright years by hand
74143	5c7dd8a783 Update copyright year to 2018
74144	220a9ecba1 Merge from Gnulib
74145	312c565566 Don't add empty keyboard macro to macro ring (Bug#24992)
74146	39ca289a7a Allow customization of decoding of "man" command
74147	f8240815ea * etc/NEWS: Add security consideration note on passphrase ...
74148	0c78822c70 Fix subtle problem with scroll-down when scroll-margin is ...
74149	acd289c5a4 Fix problems with indexing in User manual
74150	b240c7846b * lisp/help.el (describe-key): Only (copy-sequence elt) wh...
74151	e879a5444a * src/buffer.c (Frestore_buffer_modified_p): Fix bug#29846
74152	81b1028b63 Improve documentation of 'inhibit-modification-hooks' and ...
74153	7175496d7a Fix doc string of 'enable-recursive-minibuffers'
74154	5b38406491 Fix documentation of delsel and of killing text
74155
74156	# Conflicts:
74157	#	etc/NEWS
74158	#	etc/refcards/ru-refcard.tex
74159
741602017-12-30  Philipp Stephani  <phst@google.com>
74161
74162	Improve error reporting when serializing non-Unicode strings to JSON
74163
74164	* src/coding.c (utf8_string_p): New helper function.
74165	(syms_of_coding) <utf-8-unix>: Move from json.c.
74166
74167	* src/json.c (json_check_utf8): New helper function.
74168	(lisp_to_json_toplevel_1, lisp_to_json): Use it.  To save a bit of
74169	time, check for invalid UTF-8 strings only after encountering an
74170	error, since Jansson already rejects them.
74171
74172	* test/src/json-tests.el (json-serialize/invalid-unicode): Adapt
74173	expected error symbol.
74174
741752017-12-30  David McFarland  <corngood@gmail.com>  (tiny change)
74176
74177	Fix regex stack overflow in gdb-mi.el when parsing complex locals
74178
74179	* lisp/progmodes/gdb-mi.el (gdb-jsonify-buffer): Skip string
74180	literals with (forward-sexp) instead of matching with regex.
74181	(Bug#29868)
74182
741832017-12-30  Sebastian Reuße  <seb@wirrsal.net>  (tiny change)
74184
74185	Fix output alignment in 'find-dired' for "ls -h"
74186
74187	* lisp/find-dired.el (find-dired-filter): Fix alignment of
74188	the file size column when the -h ls option is used in
74189	'find-ls-option'.  (Bug#29803)
74190
741912017-12-28  Eric Abrahamsen  <eric@ericabrahamsen.net>
74192
74193	Make gnus-alter-articles-to-read-function a constant lambda
74194
74195	* lisp/gnus/gnus-sum.el (gnus-alter-articles-to-read-function):
74196	  Default to a no-op lambda form, mention the use of `add-function' in
74197	  the docstring.
74198	* lisp/gnus/gnus-sum.el (gnus-articles-to-read): Check if the option
74199	  value is callable.
74200
742012017-12-28  Stefan Monnier  <monnier@iro.umontreal.ca>
74202
74203	* lisp/net/ange-ftp.el: Use lexical-binding
74204
742052017-12-28  Michael Albinus  <michael.albinus@gmx.de>
74206
74207	Fix Bug#29874
74208
74209	* lisp/net/ange-ftp.el (ange-ftp-file-accessible-directory-p)
74210	(ange-ftp-real-file-accessible-directory-p): New defuns.
74211	(ange-ftp-nslookup-host, ange-ftp-start-process):
74212	Use `ange-ftp-real-file-accessible-directory-p'.
74213	(file-accessible-directory-p): Put `ange-ftp' property.  (Bug#29874)
74214
742152017-12-27  Stefan Monnier  <monnier@iro.umontreal.ca>
74216
74217	Remove uses of `cl` from test/ subdirectory
74218
74219	* test/lisp/gnus/gnus-tests.el: Remove unneeded (require 'cl).
74220
74221	* test/lisp/net/gnutls-tests.el: Use cl-lib and pcase.
74222
742232017-12-27  Stefan Monnier  <monnier@iro.umontreal.ca>
74224
74225	(delayed-after-hook-functions): Tighten the code a bit
74226
74227	* lisp/subr.el (delayed-mode-hooks, delayed-after-hook-functions):
74228	Use defvar-local.
74229	(run-mode-hooks): Reset delayed-after-hook-functions before running
74230	those functions, in case an error is signaled.
74231
74232	* lisp/emacs-lisp/derived.el (define-derived-mode): Don't duplicate code.
74233
742342017-12-27  Glenn Morris  <rgm@gnu.org>
74235
74236	Fix recent rfc2231 avoidance of cl
74237
74238	* lisp/mail/rfc2231.el (rfc2231-parse-string)
74239	(rfc2231-encode-string): Replace cl forms with cl-lib versions.
74240
742412017-12-27  Glenn Morris  <rgm@gnu.org>
74242
74243	Merge from origin/emacs-26
74244
74245	fd35804971 (origin/emacs-26) * doc/lispref/strings.texi (Case Convers...
74246	89e257d71b * doc/misc/speedbar.texi (Top): Fix grammar.
74247	a31ab5ffb5 * lisp/subr.el (with-silent-modifications): Doc fixes.
74248	2ebc8dc3b6 Fix curved quotes in printed manual
74249	e4a881b5cf Say that "gnus-cloud" is a parody name
74250	13c59d0a83 More improvements for text.texi
74251	7850b7620e Adjudicate review comments for the "Text" chapter of user ...
74252	d7d3b14a99 * lisp/url/url-http.el (url-http-wait-for-headers-change-f...
74253	f3819ad13e In C-h k <mouse-n>, alert user to existence of any matchin...
74254	99054fbef9 * net/eww.el (eww): Handle URLs without host part.
74255	de89c0b641 Make C-h c/k S-mouse-1 display message for mouse-appearanc...
74256	720ed0b533 Avoid crashes when ':eval' deletes our frame
74257	9105c9aa34 Fix scrolling up in pixel-scroll.el
74258	b882d4ef11 Fix problems with ligatures in PDF version of ELisp manual
74259	289dd53bb3 (elisp-flymake-byte-compile): Handle killed buffer in sent...
74260	cf36c82127 Avoid some overfull lines in PDF lispref
74261	b07b56a351 Avoid some overfull lines in PDF manual
74262	6b3118f025 * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer M...
74263	7ffb7b1e01 ; lispref nil/t markup fixes
74264
74265	# Conflicts:
74266	#	doc/emacs/text.texi
74267
742682017-12-26  Stefan Monnier  <monnier@iro.umontreal.ca>
74269
74270	Eliminate last uses of 'cl' in lisp/mail/
74271
74272	* lisp/mail/binhex.el: Use lexical-binding and avoid cl.
74273	(binhex-push-char): Remove unused arg 'count'.
74274	(binhex-decode-region-external): Remove unused var 'status'.
74275
74276	* lisp/mail/flow-fill.el: Use lexical-binding and avoid cl.
74277
74278	* lisp/mail/footnote.el: Reduce redundancy.
74279	(footnote-roman-lower-regexp, footnote-roman-upper-regexp)
74280	(footnote-roman-upper-list): Auto-generate from footnote-roman-lower-list.
74281	(footnote-hebrew-numeric-regex): Auto-generate from footnote-hebrew-numeric.
74282	(footnote--hebrew-numeric): Simplify.
74283	(footnote-hebrew-symbolic-regex): Generate from footnote-hebrew-symbolic.
74284
74285	* lisp/mail/hashcash.el: Use lexical-binding and avoid cl.
74286	(hashcash-verify-payment): Use pcase.
74287
74288	* lisp/mail/ietf-drums.el: Use lexical-binding and avoid cl.
74289	(ietf-drums-token-to-list): Remove unused var 'e'.
74290
74291	* lisp/mail/rfc2231.el: Use lexical-binding and avoid cl.
74292
74293	* lisp/mail/uudecode.el: Use lexical-binding and avoid cl.
74294	(uudecode-char-int): Remove unused 'eval-and-compile' wrapper.
74295	(uudecode-decode-region-external): Remove unused 'status' var.
74296	(uudecode-string-to-multibyte): Remove.
74297	(uudecode-decode-region-internal): Use decode-coding-string instead.
74298
74299	* lisp/mail/yenc.el: Use lexical-binding and avoid cl.
74300
743012017-12-26  Charles A. Roelli  <charles@aurox.ch>
74302
74303	Fix highlighting in query-replace with non-nil replace-char-fold
74304
74305	* lisp/replace.el (replace-highlight): Bind
74306	'isearch-regexp-function' in the same way that function
74307	'replace-search' does, so as to respect the value of
74308	'replace-char-fold'.  (Bug#24356)
74309
743102017-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
74311
74312	* lisp/mail/footnote.el: Reduce redundancy in roman&hebrew defs
74313
74314	(footnote-roman-lower-regexp, footnote-roman-upper-regexp)
74315	(footnote-roman-upper-list): Auto-generate from footnote-roman-lower-list.
74316	(footnote-hebrew-numeric-regex): Auto-generate from footnote-hebrew-numeric.
74317	(footnote--hebrew-numeric): Simplify.
74318	(footnote-hebrew-symbolic-regex): Generate from footnote-hebrew-symbolic.
74319
743202017-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
74321
74322	* lisp/mail/footnote.el: Use lexical-binding
74323
74324	(footnote--renumber): Mark arg 'from' as unused.
74325	(footnote-add-footnote, footnote-renumber-footnotes)
74326	(footnote-back-to-message): Remove unused argument 'arg'.
74327
743282017-12-25  Boruch Baum  <boruch_baum@gmx.com>
74329
74330	* lisp/mail/footnote.el: Replace "Footnote-" prefix with "footnote--"
74331
74332	(footnote-section-tag): Remove trailing space.
74333
743342017-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
74335
74336	* lisp/register.el: Use cl-generic
74337
74338	(registerv): Make it a "normal"struct.
74339	(registerv-make): Declare obsolete.
74340	(register-val-jump-to, register-val-describe, register-val-insert):
74341	New generic functions.
74342	(jump-to-register, describe-register-1, insert-register): Use them.
74343
74344	* lisp/emacs-lisp/cl-generic.el: Prefill a combination of struct+typeof.
74345	(cl--generic-prefill-dispatchers): Allow a list of specializers.
74346
743472017-12-25  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
74348
74349	Fix MS-Windows build broken by recent changes in json.c
74350
74351	* src/json.c [WINDOWSNT] (fn_json_object_get): Define.
74352	(init_json_functions) [WINDOWSNT]: Load json_object_get from DLL.
74353	(Bug#29848)
74354
743552017-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
74356
74357	* lisp/rtree.el: Use lexical-binding and not 'cl'.
74358
743592017-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
74360
74361	lisp/net/mailcap.el (mailcap-file-name-to-mime-type): New function.
74362
74363	* lisp/net/mailcap.el (mailcap-file-name-to-mime-type): New function.
74364
743652017-12-25  Michael Albinus  <michael.albinus@gmx.de>
74366
74367	Fix Bug#29822
74368
74369	* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
74370	Fix handling of restricted shells.  (Bug#29822)
74371
743722017-12-24  Paul Eggert  <eggert@cs.ucla.edu>
74373
74374	Make main_thread_id private
74375
74376	* src/sysdep.c (main_thread_id) [FORWARD_SIGNAL_TO_MAIN_THREAD]:
74377	Now static.
74378
743792017-12-24  Paul Eggert  <eggert@cs.ucla.edu>
74380
74381	On non-MS-Windows, omit unnecessary polling functions
74382
74383	* src/keyboard.c (poll_for_input_1) [!CYGWIN && !DOS_NT]: Remove.
74384	(input_polling_used) [!DOS_NT]: Remove.
74385
743862017-12-24  Philipp Stephani  <phst@google.com>
74387
74388	Add more Unicode test cases for JSON conversion
74389
74390	* test/src/json-tests.el (json-parse-string/string)
74391	(json-serialize/string, json-serialize/invalid-unicode)
74392	(json-parse-string/invalid-unicode): Add more Unicode test cases.
74393
743942017-12-24  Philipp Stephani  <phst@google.com>
74395
74396	Accept alists when serializing JSON
74397
74398	* src/json.c (lisp_to_json_toplevel_1): Also accept alists
74399	representing objects.
74400
74401	* src/json.c (Fjson_serialize): Update docstring.
74402
74403	* test/src/json-tests.el (json-serialize/object): Add unit tests for
74404	serializing alists.
74405
74406	* doc/lispref/text.texi (Parsing JSON): Document that serialization
74407	functions accept alists.
74408
744092017-12-24  Philipp Stephani  <phst@google.com>
74410
74411	JSON serialization: reject duplicate keys in hashtables
74412
74413	* src/json.c (lisp_to_json_toplevel_1): Reject duplicate keys in
74414	hashtables.
74415
74416	* test/src/json-tests.el (json-serialize/object-with-duplicate-keys):
74417	Add unit tests.
74418
744192017-12-22  Boruch Baum  <boruch_baum@gmx.com>
74420
74421	* lisp/mail/footnote.el (footnote-align-to-fn-text): New config var
74422
74423	(footnote-mode): Declare.
74424	(Footnote--get-area-point-min): Fix last change to use 'car` instead of
74425	the undefined 'first'.
74426	(Footnote--calc-fn-alignment-column, Footnote--fill-prefix-string)
74427	(Footnote--adaptive-fill-function): New functions.
74428	(footnote-mode): Use them.
74429
744302017-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>
74431
74432	* lisp/textmodes/fill.el (adaptive-fill-function): Change default
74433
74434	Use 'ignore' rather than nil since they behave identically, except that
74435	'ignore' interacts correctly with add/remove-function.
74436
744372017-12-22  Boruch Baum  <boruch_baum@gmx.com>
74438
74439	* lisp/mail/footnote.el: Misc changes in preparation for more
74440
74441	(footnote-section-tag-regexp): Don't require the trailing space.
74442	(Footnote--point-in-body-p, Footnote--get-area-point-min)
74443	(Footnote--get-area-point-max): New functions.
74444	(Footnote-narrow-to-footnotes, Footnote-text-under-cursor): Use them.
74445
744462017-12-22  Glenn Morris  <rgm@gnu.org>
74447
74448	Merge from origin/emacs-26
74449
74450	34fcfc5 (origin/emacs-26, emacs-26) * lisp/emacs-lisp/inline.el (defi...
74451	f7a62c2 Fix doc string of 'footnote-style-alist'
74452	c3b6742 Improve documentation of selecting windows
74453	861d110 Improve documentation of records
74454	22b3075 * etc/NEWS: Mention the removal of pinentry.el.  (Bug#27445)
74455	689526b Fix interactive spec of 'semantic-ia-show-variants'
74456	90ca37f Fix documentation of 'mouse-drag-and-drop-region' and friends
74457	d60faf3 Improve detection of speller version in ispell.el
74458	a0e3b06 Document 'mouse-drag-and-drop-region' options and mention the...
74459	164e84c Fix uses of 'nil' and 'non-nil' in manuals and a few more min...
74460	798f07f Document that mode commands should be idempotent.
74461	ad2a47c ; * src/xdisp.c (extend_face_to_end_of_line): Fix last change.
74462	88ddf53 Fontify a CPP construct correctly when a comment follows with...
74463	de7de9c Prevent infloop in redisplay on TTY frames
74464	293720e Fix loss of documentation face in certain CC Mode doc comment...
74465
74466	# Conflicts:
74467	#	etc/NEWS
74468	#	lisp/mail/footnote.el
74469
744702017-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>
74471
74472	* lisp/progmodes/cperl-mode.el: Split table for electric kwd abbrevs
74473
74474	(cperl-mode-electric-keywords-abbrev-table): New abbrev table.
74475	(cperl-mode-abbrev-table): Use it.
74476
744772017-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>
74478
74479	* lisp/progmodes/cperl-mode.el: Use cl-lib.  Fix comment convention
74480
74481	(defgroup, defcustom, defface, x-color-defined-p, uncomment-region)
74482	(ps-extend-face-list, eval-after-load, turn-on-font-lock):
74483	Assume defined.
74484	(cperl-calculate-indent): Use 'functionp' to test if a value is a function.
74485
744862017-12-22  Boruch Baum  <boruch_baum@gmx.com>
74487
74488	Support Hebrew-style footnotes in footnote.el
74489
74490	* lisp/mail/footnote.el (footnote-hebrew-numeric-regex)
74491	(footnote-hebrew-symbolic-regex): New defconsts.
74492	(Footnote-hebrew-numeric, Footnote-hebrew-symbolic): New functions.
74493	(footnote-style-alist): Add new Hebrew styles.  Doc fix.
74494	(footnote-style): Add new Hebrew styles.  (Bug#29759)
74495
744962017-12-22  Ian Johnson  <ianprime0509@gmail.com>  (tiny change)
74497
74498	Support French password prompts in shell
74499
74500	French punctuation rules require a space (preferably non-breaking)
74501	before the colon.
74502
74503	* lisp/comint.el (comint-password-prompt-regexp): Support
74504	spaces (including non-breaking spaces) before and after password
74505	prompt colon.  (Bug#29729)
74506
745072017-12-22  Ted Zlatanov  <tzz@lifelogs.com>
74508
74509	* lisp/registry.el (registry-collect-prune-candidates): Skip invalid entries
74510
745112017-12-22  Francesco Potortì  <pot@gnu.org>
74512
74513	Improve Rmail Subject normalization when replying
74514
74515	* lisp/mail/rmail.el (rmail-simplified-subject): A more thorough
74516	implementation which removes more prefixes from Subject.
74517	(Bug#29659)
74518
745192017-12-22  Eli Zaretskii  <eliz@gnu.org>
74520
74521	Improve the description of 'electric-quote-replace-double'
74522
74523	* etc/NEWS: Improve the description of 'electric-quote-replace-double'.
74524	(Bug#29806)
74525
745262017-12-21  Stefan Monnier  <monnier@iro.umontreal.ca>
74527
74528	* lisp/progmodes/cperl-mode.el: Use lexical-binding
74529
74530	Drop some support code for Emacs-19.  Remove unused args and vars.
74531	(cperl-mark-active): Remove, use region-active-p.
74532	(cperl-use-region-p): Remove, use use-region-p.
74533	(cperl-can-font-lock, cperl-enable-font-lock, cperl-emacs-can-parse):
74534	Remove, obsolete.
74535	(cperl-mode-map): Move initialization into declaration.
74536
745372017-12-21  Stefan Monnier  <monnier@iro.umontreal.ca>
74538
74539	* lisp/progmodes/cperl-mode.el: Merge from Jonathan Rockway's version
74540
74541	(cperl-indent-subs-specially): New var.
74542	(cperl-mode-abbrev-table): Add '=begin'.  Obey cperl-electric-keywords.
74543	(cperl-sub-keywords, cperl-sub-regexp): New vars.
74544	(cperl-char-ends-sub-keyword-p): New function.
74545	(cperl-mode): Use them.
74546	(cperl-db): Pass `-d` arg to perl.
74547	(cperl-electric-keyword, cperl-linefeed): Accept also '=end'.
74548	(cperl-sniff-for-indent): Obey cperl-indent-parens-as-block and
74549	cperl-indent-subs-specially.
74550	(cperl-calculate-indent): Fix handling of numbers in
74551	cperl-indent-rules-alist, and add a case for functions.
74552	(cperl-find-pods-heres): Use cperl-sub-regexp and allow =begin/=end.
74553	Also recognize 'say'.
74554	(cperl-block-p): Use cperl-sub-regexp
74555	(cperl-after-block-p): Use cperl-char-ends-sub-keyword-p and
74556	cperl-sub-regexp.
74557	(cperl-after-block-and-statement-beg): Accept 'say'.
74558	(cperl-indent-exp): Accept 'state'.
74559	(cperl-fix-line-spacing): Accept 'state'.
74560	(cperl-init-faces): Add 'given', 'when', 'default', 'break', 'try',
74561	'catch', 'finally', 'evalbytes', 'state', '__SUB__', 'fc', 'sysseek'.
74562	Use cperl-sub-regexp.
74563	(cperl-etags): Use cperl-sub-regexp.
74564	(cperl-not-bad-style-regexp): Add '//'.
74565	(cperl-short-docs): Add ~~, UNITCHECK, 'break', 'default', 'evalbytes',
74566	'given', 'say', 'state', //, 'fc', 'prototype', =begin', and '=end'.
74567
745682017-12-21  Philipp Stephani  <phst@google.com>
74569
74570	Add a few more unit tests for JSON
74571
74572	* test/src/json-tests.el (json-serialize/invalid-unicode)
74573	(json-parse-string/null): Add more tests.
74574	(json-parse-string/invalid-unicode): New test.
74575
745762017-12-21  Philipp Stephani  <phst@google.com>
74577
74578	JSON: improve some comments
74579
74580	* src/json.c (json_make_string, json_build_string): Document why
74581	these functions are OK as-is.
74582
745832017-12-21  Philipp Stephani  <phst@google.com>
74584
74585	Simplify a JSON test
74586
74587	* test/src/json-tests.el (json-serialize/invalid-unicode):
74588	Simplify test.  Hexadecimal escape sequences allow putting
74589	non-Unicode characters in strings directly.
74590
745912017-12-21  Philipp Stephani  <phst@google.com>
74592
74593	Fix bugs in JSON test
74594
74595	* test/src/json-tests.el (json-serialize/invalid-unicode): Fix two
74596	bugs that canceled each other out.  "a\xCCb" is actually a valid
74597	Unicode string because the hexadecimal character escape isn't
74598	terminated by the "b".  But this was masked by an incorrect
74599	closing parentheses, causing an unrelated error.
74600
746012017-12-20  Glenn Morris  <rgm@gnu.org>
74602
74603	Merge from origin/emacs-26
74604
74605	b3f4a3a (origin/emacs-26) Special-case %DUMBFW for GnuTLS between 3.2...
74606	c2ae057 Work around GnuTLS version issues with %DUMBFW (tiny change)
74607	2f9d9ef ; Remove the mention of "plain C code" in the docstring as well
74608	aca827b Merge branch 'widen-less' into emacs-26
74609	87548f5 ; Rephrase NEWS entry a bit
74610	da0d773 (emacs-26) ; * lisp/erc/erc.el: Update URL.
74611	3a60515 * lisp/erc/erc.el (erc-shorten-server-name): Silence compiler...
74612	471b6c1 ; Replace non-ascii quote characters in doc strings etc
74613	7af7f5e Fix some more aliases to user options
74614	79fb4b5 Fix some flymake aliases
74615	b9fbc03 (origin/widen-less) Widen in indent-for-tab-command in the no...
74616	446faf3 Replace the mention of c-indent-defun with js-indent-line
74617	7e9eef0 Consolidate 'widen' calls
74618
74619	# Conflicts:
74620	#	etc/NEWS
74621	#	lisp/progmodes/flymake-proc.el
74622
746232017-12-20  Glenn Morris  <rgm@gnu.org>
74624
74625	Merge from origin/emacs-26
74626
74627	4122d54 Fix updating scrollbar sizes when scaling is in effect
74628	21a212f Collect GnuTLS extensions and use them to set %DUMBFW if supp...
74629	936136e * test/lisp/emacs-lisp/derived-tests.el: Fix copy&paste lefto...
74630	07b7fb9 * lisp/subr.el (delayed-after-hook-functions): Rename from .....
74631	a5b0a4e * lisp/net/shr.el (shr-string-pixel-width): Return pixel-widt...
74632	c51e797 python.el doc fixes
74633	c62ced5 Make 'mouse-drag-and-drop-region' more robust and customizable
74634
746352017-12-20  Glenn Morris  <rgm@gnu.org>
74636
74637	Merge from origin/emacs-26
74638
74639	89cfdbf Don't mess up syntax-ppss cache in electric-pair (Bug#29710)
74640	c5061d8 * etc/emacs.appdata.xml: Update file format.
74641	080f227 Use utf-8-hfs-unix on macOS (Bug#29712)
74642	28e0261 * lisp/progmodes/cc-defs.el (c-version): Update to 5.33.1.
74643	ac53084 Improve fix for Bug#29712
74644	ffd4771 * doc/lispref/sequences.texi (Sequence Functions): Improve in...
74645	f274cbd Avoid reordering of output in 'shr-insert-document'
74646	7890864 Improve documentation of 'invisible-p'
74647	a1327bb Remove one more check that Vframe_list is non-nil
74648	63b6281 Fix off-by-one error in 'css--hex-color'
74649	804b37c Save and restore text-pixel height and width of frames (Bug#2...
74650	777fe94 Partially revert "Mention new strictness for &optional, &rest...
74651	ad17db7 * lisp/vc/smerge-mode.el (smerge-refine): Respect font-lock-m...
74652	5a7d009 * lisp/vc/smerge-mode.el (smerge-refine): Replace obsolete al...
74653	e019c35 FOR_EACH_FRAME no longer assumes frame-list
74654	d64b88d * src/font.c (Ffont_info): Doc fix.  (Bug#29682)
74655	92b2604 Modernise message.el face spec syntax
74656	b1efbe6 Update message.el obsolete face aliases
74657	2494c14 ; * lisp/comint.el (comint-terminfo-terminal): Add a :version...
74658	12ad276 Improve documentation of TERM environment variable
74659	8ed529f Add option to configure comint TERM
74660	889f07c Better support utf-8-with-signature and utf-8-hfs in XML/HTML
74661	a2697fa * lisp/menu-bar.el (menu-bar-mode): Doc fix.
74662	ffb50ea ; * etc/NEWS: Fix last change.
74663	95606af Fix Bug#29712 in tramp-tests.el
74664	9bf66c6 Don't run FOR_EACH_FRAME when there's no frame left (Bug#29961)
74665	c2a88ec * lisp/textmodes/tex-mode.el: Ensure uncompiled file is loada...
74666	b178870 Remember password change for IMAP in Gnus (Bug#29692)
74667	a21dac1 Add %DUMBFW to the default GnuTLS priority strings
74668	780407c Small fixes prompted by make check-declare
74669	541a601 Fix some custom groups
74670	e220d6e Fix fontification of first declaration within a C++ lambda form.
74671	aa66da2 * src/data.c (Fadd_variable_watcher): Doc fix.
74672	f838210 Fix misfontification of C++ member initialization list after ...
74673	232c646 Fix doc-string of Fbuffer_list
74674	3f9aac6 Don't raise an extraneous frame (bug#29696)
74675	e7b1111 Mention new strictness for &optional, &rest in arglists (Bug#...
74676	4cb8696 Don't misfontify "foo ()" inside C++ initialization parenthes...
74677	ce31e72 Fixes for defcustoms, prompted by cus-test-opts
74678	aacd1e1 * lisp/net/newst-backend.el (newsticker--raw-url-list-default...
74679	7e2f4d3 * lisp/htmlfontify.el (hfy-which-etags): Fix it.
74680	52d2a69 Add missing :version tags revealed by cusver-check
74681	f5d0360 Escape column-zero doc parens
74682	45099bb Remove ObjC blocks (Bug#23753)
74683	b0369d0 Import the latest IVD_Sequences.txt
74684	cd53b63 Fix dired-do-compress when tar doesn't default to stdin (Bug#...
74685	51911da Suppress warnings during elisp completion macroexpansion
74686	a36a090 * lisp/progmodes/verilog-mode.el (verilog-mode): Fix typo (Bu...
74687	6a6e8e6 Make tramp-interrupt-process more robust
74688	5bcd468 Make quail-input-method work when inhibit-read-only is non-ni...
74689	87baf12 Fix 'fontset-name-p'
74690	d231587 Fix fontset documentation inconsistencies for bug#29630
74691	a829cb8 Remove sentence from child frames section in Elisp manual
74692	ad491c8 Avoid crashes in 'font-at' after 'set-fontset-font'
74693	c73d2cd * lisp/files-x.el (connection-local-set-profile-variables): F...
74694	cefca2b Add /etc/ssl/cert.pem to gnutls-trustfiles for macOS
74695	122e726 Fix tool-tip display when display margins are non-zero by def...
74696	e1cc203 Handle hash tables and vectors when reading/writing EIEIO obj...
74697	cda219c Improve interactive debugging commands in xdisp.c
74698	1056b3c Fix calculation of continuation_pixel_width in display engine
74699	90e2080 Improve documentation of 'save-abbrevs'.
74700	14f0230 Improve documentation of Dired
74701	161b0e5 * lisp/bookmark.el (bookmark-alist): Doc fix.  (Bug#29551)
74702	7eea314 Minor Tramp fixes
74703	c0a670a * lisp/help-mode.el (help-function-def): Allow help-make-xref...
74704	0572016 Fix doc-string of 'display-buffer-in-side-window'
74705	a1bbc49 Fix Bug#29579
74706	cb3d979 ; NEWS: Update Org version number
74707	445eefd Backport: Update Org to v9.1.4
74708	5381c70 In windows.texi mention special splitting behavior of side an...
74709	46d62b9 * lisp/gnus/gnus-group.el (gnus-group-mode-map): Bind [follow...
74710	1ef1dbd Avoid compilation warning in xterm.c
74711	5cf3c26 * README: Document all the top-level directories.  (Bug#29558)
74712	e9ea206 Don't enable erc modules on simply loading erc.el
74713	4b06af0 Allow shr to use data: URLs without encoding
74714	1fdac2d Don't add newlines in minibuffer history
74715	de68f33 modhelp.py: Support Python 3 (Bug#24954)
74716	afb04f7 Use forward slashes for python w32 config example (Bug#21656)
74717	04e5b28 Fix bug in i18n/l10n optimization
74718	8227087 Let autoload-compute-prefix be set file-locally (Bug#29471)
74719	98ca7d5 Improve edit-kbd-macro prompting in case of remapped keys (Bu...
74720	c02c1f6 Add tests on electric-indentation and Python multiline string...
74721	946bb6d Disable electric indent for python strings (Bug#29305)
74722	35f1ed1 ; ChangeLog.2: Fix bug reference.
74723	ac31663 Fix buffer overflow in fontname conversion (Bug#29523)
74724	bf9b972 Fix byte compilation of files with leading directories
74725	ac144dc * lisp/files.el (make-backup-file-name-1): Fix scoping error.
74726	1b351c8 Revert Tramp commit from 2017-11-20
74727	77cf972 Improve documentation of buffer-list commands and features
74728	66ec92a Fix backing up remote files in local directories on MS-Windows
74729	7e61e74 * doc/emacs/mule.texi (Output Coding): Clarify sendmail coding.
74730	1e25cd7 Revert "Fix backing up remote files in local directories on M...
74731	f52d795 Fix a typo in ELisp manual
74732	bf26fc3 * lisp/composite.el (find-composition): Fix a typo in the doc...
74733	34a21c3 ; Auto-commit of loaddefs files.
74734	8c8b673 Fix backing up remote files in local directories on MS-Windows
74735	8eb6870 Fix vertical cursor motion in pixel-scroll.el
74736	625e84f Fix typos in doc strings of message.el
74737	9292276 Fix a typo in the Emacs manual
74738	42509c0 Improve the documentation of 'table-insert-sequence'
74739	93dc7ae Port better to QNX
74740	ad99550 Make tramp-test42-auto-load more robust
74741	af0ce33 ; * lisp/composite.el (find-composition): Fix a typo in last ...
74742	bdbcdba Avoid assertions in find-composition
74743	408862f ; * lisp/emacs-lisp/bytecomp.el: Tweak message formatting in ...
74744	9964db4 Restore obsolete method of changing byte-compile-dest-file
74745	3dd25ae Some minor Tramp corrections
74746	d670a15 * doc/misc/url.texi (http/https): Fix typo
74747	99d07e8 Remove some bogus definition-prefixes from loaddefs
74748
747492017-12-20  Charles A. Roelli  <charles@aurox.ch>
74750
74751	Fix vc-region-history when narrowed
74752
74753	* lisp/vc/vc.el (vc-region-history): Fix behavior when narrowed, by using
74754	line numbers starting from (point-min).
74755
747562017-12-20  Charles A. Roelli  <charles@aurox.ch>
74757
74758	Ensure current buffer is version-controlled in vc-region-history
74759
74760	* lisp/vc/vc.el (vc-region-history): Ensure buffer is
74761	version-controlled.  Otherwise if a user runs it in a
74762	non-version-controlled buffer, they get the error:
74763
74764	  Cannot open load file: No such file or directory, vc-nil
74765
747662017-12-20  Philipp Stephani  <phst@google.com>
74767
74768	Define helper functions only if needed
74769
74770	* src/json.c (JSON_HAS_ERROR_CODE): New define.
74771	(json_parse_error): Use it.
74772	(json_has_prefix, json_has_suffix): Define only if needed.
74773
747742017-12-20  Philipp Stephani  <phst@google.com>
74775
74776	* src/json.c (json_parse_error): Fix embarrassing bug.
74777
747782017-12-20  Philipp Stephani  <phst@google.com>
74779
74780	Fix a few compiler warnings in auth-source.el
74781
74782	* lisp/auth-source.el (json): Add missing require.
74783	(auth-source-json-search): Remove unused argument.
74784
747852017-12-19  Ted Zlatanov  <tzz@lifelogs.com>
74786
74787	* lisp/auth-source.el (auth-source-backends-parser-file): Fix missing stringp.
74788
747892017-12-19  Philipp Stephani  <phst@google.com>
74790
74791	Use Jansson's error code support if available
74792
74793	* src/json.c (json_parse_error): Use Jansson's error code support if
74794	available.
74795
747962017-12-19  Glenn Morris  <rgm@gnu.org>
74797
74798	* doc/misc/auth.texi: Fix use of {} and wrapping in previous change.
74799
748002017-12-19  Philipp Stephani  <phst@google.com>
74801
74802	Allow JSON parser functions to return alists
74803
74804	* src/json.c (Fjson_parse_string, Fjson_parse_buffer): Give these
74805	functions a keyword argument to specify the return type for JSON
74806	objects.
74807	(json_to_lisp): Convert objects to alists if requested.
74808	(json_parse_object_type): New helper function to parse keyword
74809	arguments.
74810
74811	* test/src/json-tests.el (json-parse-string/object): Add a unit test.
74812
74813	* doc/lispref/text.texi (Parsing JSON): Document new functionality.
74814
748152017-12-19  Ted Zlatanov  <tzz@lifelogs.com>
74816
74817	* doc/misc/auth.texi (Help for users): Mention JSON backend.
74818
748192017-12-19  Ted Zlatanov  <tzz@lifelogs.com>
74820
74821	auth-source: support JSON backend with .json extension
74822
74823	* lisp/auth-source.el (auth-source-backends-parser-file): Look
74824	for .gpg extension and make backend decision without it. Add
74825	JSON case to backends.
74826
74827	(auth-source-json-check): Parse JSON data.
74828
748292017-12-18  Glenn Morris  <rgm@gnu.org>
74830
74831	Add a Makefile rule for running gitmerge
74832
74833	* Makefile.in (GITMERGE_EMACS, GITMERGE_NMIN): New variables.
74834	(gitmerge): New phony target.
74835
748362017-12-18  Glenn Morris  <rgm@gnu.org>
74837
74838	Set minimum number of commits for gitmerge in batch mode
74839
74840	* admin/gitmerge.el (gitmerge-minimum-missing): New variable.
74841	(gitmerge): In batch mode, respect gitmerge-minimum-missing.
74842
748432017-12-18  Glenn Morris  <rgm@gnu.org>
74844
74845	* admin/gitmerge.el (gitmerge-skip-regexp): Be stricter in batch mode.
74846
748472017-12-18  Glenn Morris  <rgm@gnu.org>
74848
74849	Make gitmerge usable in batch mode
74850
74851	* admin/gitmerge.el (gitmerge-missing): Add progress messages.
74852	(gitmerge-maybe-resume): In batch mode, never resume.
74853	(gitmerge): Handle batch mode.
74854
748552017-12-18  Philipp Stephani  <phst@google.com>
74856
74857	JSON: Add tests for Unicode edge cases
74858
74859	* test/src/json-tests.el (json-serialize/string): Add test for
74860	serializing the null character.
74861	(json-parse-string/null): Add test for parsing the null character.
74862	(json-serialize/invalid-unicode): Add tests for invalid Unicode
74863	strings.
74864	(json-serialize/roundtrip): Add Unicode
74865	noncharacter, non-BMP characters, and syntactic characters.
74866
748672017-12-18  Charles A. Roelli  <charles@aurox.ch>
74868
74869	Fix infinite loop in vc-dir-mark-unmark
74870
74871	* lisp/vc/vc-dir.el (vc-dir-mark-unmark): Prevent from getting
74872	stuck on the same line in an infinite loop.  (Bug#24017)
74873
748742017-12-18  Eric Abrahamsen  <eric@ericabrahamsen.net>
74875
74876	Fix Gnus registry header extraction
74877
74878	* lisp/gnus/gnus-registry.el (gnus-registry-fetch-recipients-fast,
74879	  gnus-registry-fetch-sender-fast): First, delete
74880	  `gnus-registry-fetch-header-fast'. It was being called with reversed
74881	  arguments, and thus always returned nil, but even if the argument
74882	  order was correct it would have raised an error, as it was trying to
74883	  `assq' a string in a vector. Instead, just have these two functions
74884	  do their own work, as they're doing fairly different things.
74885
748862017-12-17  Paul Eggert  <eggert@cs.ucla.edu>
74887
74888	Default CHECK_LISP_OBJECT_TYPE to "no"
74889
74890	* configure.ac: Go back to not defining CHECK_LISP_OBJECT_TYPE by
74891	default for developer builds, since it is no longer that useful.
74892	We can make it a no-op entirely later, if in practice it's not
74893	that helpful to enable it.
74894
748952017-12-17  Michael Albinus  <michael.albinus@gmx.de>
74896
74897	Minor fixes in Tramp
74898
74899	* lisp/net/tramp-archive.el
74900	(tramp-archive-handle-temporary-file-directory): New defun.
74901	(tramp-archive-file-name-handler-alist): Use it.
74902
74903	* test/lisp/net/tramp-archive-tests.el
74904	(tramp-archive-test99-libarchive-tests): Rename it.
74905
74906	* test/lisp/net/tramp-tests.el (tramp-test34-vc-registered):
74907	Skip for older Emacsen.
74908
749092017-12-17  Simen Heggestøyl  <simenheg@gmail.com>
74910
74911	Add command for cycling between CSS color formats
74912
74913	* lisp/textmodes/css-mode.el (css-mode-map): Add keybinding for
74914	'css-cycle-color-format'.
74915	(css--rgb-color): Add support for extracting alpha component.
74916	(css--hex-alpha, css--color-to-4-dpc, css--named-color-to-hex)
74917	(css--format-rgba-alpha, css--hex-to-rgb)
74918	(css--rgb-to-named-color-or-hex): New functions.
74919	(css-cycle-color-format): New command for cycling between color
74920	formats.
74921
74922	* test/lisp/textmodes/css-mode-tests.el (css-test-color-to-4-dpc):
74923	(css-test-named-color-to-hex, css-test-format-rgba-alpha)
74924	(css-test-hex-to-rgb, css-test-rgb-to-named-color-or-hex)
74925	(css-test-cycle-color-format, css-test-hex-alpha): New tests for the
74926	changes mentioned above.
74927
74928	* etc/NEWS: Mention the new command.
74929
749302017-12-16  Stefan Monnier  <monnier@iro.umontreal.ca>
74931
74932	* lisp/textmodes/css-mode.el (css--hex-color): Trivial simplification
74933
749342017-12-16  Glenn Morris  <rgm@gnu.org>
74935
74936	Merge from origin/emacs-26
74937
74938	28e0261890 * lisp/progmodes/cc-defs.el (c-version): Update to 5.33.1.
74939	ac53084f9b Improve fix for Bug#29712
74940	ffd4771560 * doc/lispref/sequences.texi (Sequence Functions): Improve...
74941	f274cbd185 Avoid reordering of output in 'shr-insert-document'
74942	7890864413 Improve documentation of 'invisible-p'
74943	a1327bbc64 Remove one more check that Vframe_list is non-nil
74944	63b6281fdd Fix off-by-one error in 'css--hex-color'
74945	804b37ca63 Save and restore text-pixel height and width of frames (Bu...
74946	777fe94661 Partially revert "Mention new strictness for &optional, &r...
74947	ad17db7964 * lisp/vc/smerge-mode.el (smerge-refine): Respect font-loc...
74948	5a7d0095a4 * lisp/vc/smerge-mode.el (smerge-refine): Replace obsolete...
74949	e019c35df6 FOR_EACH_FRAME no longer assumes frame-list
74950	d64b88da2f * src/font.c (Ffont_info): Doc fix.  (Bug#29682)
74951	92b2604a7f Modernise message.el face spec syntax
74952	b1efbe6564 Update message.el obsolete face aliases
74953	2494c14e76 ; * lisp/comint.el (comint-terminfo-terminal): Add a :vers...
74954	12ad276d15 Improve documentation of TERM environment variable
74955	8ed529f0f3 Add option to configure comint TERM
74956	889f07c352 Better support utf-8-with-signature and utf-8-hfs in XML/HTML
74957	a2697fac0e * lisp/menu-bar.el (menu-bar-mode): Doc fix.
74958	ffb50eace6 ; * etc/NEWS: Fix last change.
74959	95606af8b0 Fix Bug#29712 in tramp-tests.el
74960	9bf66c6bee Don't run FOR_EACH_FRAME when there's no frame left (Bug#2...
74961	c2a88ec8e8 * lisp/textmodes/tex-mode.el: Ensure uncompiled file is lo...
74962	b178870528 Remember password change for IMAP in Gnus (Bug#29692)
74963	a21dac18bb Add %DUMBFW to the default GnuTLS priority strings
74964	780407cff1 Small fixes prompted by make check-declare
74965	541a60108d Fix some custom groups
74966	e220d6e112 Fix fontification of first declaration within a C++ lambda...
74967	aa66da220c * src/data.c (Fadd_variable_watcher): Doc fix.
74968	f838210b01 Fix misfontification of C++ member initialization list aft...
74969	232c6465ce Fix doc-string of Fbuffer_list
74970	3f9aac68d7 Don't raise an extraneous frame (bug#29696)
74971	e7b1111155 Mention new strictness for &optional, &rest in arglists (B...
74972	4cb8696e47 Don't misfontify "foo ()" inside C++ initialization parent...
74973	ce31e726ad Fixes for defcustoms, prompted by cus-test-opts
74974	aacd1e14fc * lisp/net/newst-backend.el (newsticker--raw-url-list-defa...
74975	7e2f4d3d41 * lisp/htmlfontify.el (hfy-which-etags): Fix it.
74976	52d2a690f6 Add missing :version tags revealed by cusver-check
74977	f5d0360234 Escape column-zero doc parens
74978
74979	# Conflicts:
74980	#	etc/NEWS
74981
749822017-12-16  Philipp Stephani  <phst@google.com>
74983
74984	Remove two unused variables in macfont.m
74985
74986	* src/macfont.m (macfont_get_glyph_for_character): Remove two unused
74987	variables.
74988
749892017-12-16  Alan Third  <alan@idiocy.org>
74990
74991	Use utf-8-hfs-unix on macOS (Bug#29712)
74992
74993	* lisp/term/ns-win.el: Use utf-8-hfs-unix instead of utf-8-hfs.
74994
749952017-12-16  Alan Third  <alan@idiocy.org>
74996
74997	Silence macOS 10.13 deprecation notices (Bug#29643)
74998
74999	* src/nsfns.m (Fx_display_backing_store):
75000	(Fx_display_save_under): Don't use NSBackingStoreRetained or
75001	NSBackingStoreNonretained on macOS 10.13+.
75002	* src/nsselect.m (symbol_to_nsstring):
75003	(ns_string_to_symbol):
75004	(nxatoms_of_nsselect): Replace NSGeneralPboard with
75005	NSPasteboardNameGeneral.
75006	* src/nsterm.h: #define NSPasteboardNameGeneral to NSGeneralPboard on
75007	GNUstep and macOS < 10.13.
75008	* src/nsterm.m (EmacsView::resetCursorRects):
75009	(EmacsScroller::resetCursorRects): Don't use setOnMouseEntered on
75010	macOS 10.13+.
75011
750122017-12-16  Michael Albinus  <michael.albinus@gmx.de>
75013
75014	Suppress timers in Tramp operations
75015
75016	* lisp/net/tramp.el (tramp-accept-process-output):
75017	* lisp/net/tramp-adb.el (tramp-adb-handle-start-file-process):
75018	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
75019	(tramp-sh-handle-start-file-process):
75020	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
75021	(tramp-smb-handle-file-acl, tramp-smb-handle-process-file)
75022	(tramp-smb-handle-set-file-acl)
75023	(tramp-smb-handle-start-file-process): Suppress timers.
75024
75025	* test/lisp/net/tramp-tests.el (tramp-test41-asynchronous-requests):
75026	Use $REMOTE_PARALLEL_PROCESSES.  Flush cache prior file operations.
75027	Add instrumentation messages.
75028
750292017-12-15  Oscar Fuentes  <ofv@wanadoo.es>
75030
75031	Don't compare arguments that can be nil
75032
75033	copy-region-as-kill can be called passing nil as `beg' and
75034	`end'. Magit does that, which caused an error when this advice was in
75035	effect.
75036
75037	* lisp/ses.el (ses--advice-copy-region-as-kill): avoid comparison
75038	  unless `beg' and `end' are non-nil.
75039
750402017-12-15  Glenn Morris  <rgm@gnu.org>
75041
75042	Automatically evaluate top-level define-obsolete-function-alias etc
75043
75044	* lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-make-obsolete):
75045	New handler.
75046
750472017-12-14  Paul Eggert  <eggert@cs.ucla.edu>
75048
75049	Spelling fix
75050
75051	* lisp/net/tramp-archive.el (tramp-archive-file-name-handler-alist):
75052	Fix misspelling of ‘delete-directory’.
75053
750542017-12-14  Glenn Morris  <rgm@gnu.org>
75055
75056	Make w32-fns.el loadable on any platform (bug#6997)
75057
75058	* lisp/w32-fns.el (find-file-visit-truename): Only set on MS Windows.
75059	(set-message-beep, w32-charset-info-alist): Check bound before using.
75060
750612017-12-14  Glenn Morris  <rgm@gnu.org>
75062
75063	Improve Custom's treatment of obsolete options (bug#5742)
75064
75065	* lisp/cus-edit.el (custom-variable-obsolete): New face.
75066	(custom-variable-documentation): Include obsolescence information.
75067	(custom-variable-value-create): Use different face for obsolete items.
75068	(custom-face-documentation): New function.
75069	(custom-face): Use custom-face-documentation.
75070	* lisp/info-look.el (info-lookup-guess-custom-symbol):
75071	Add custom-variable-obsolete face.
75072
750732017-12-14  Eric Abrahamsen  <eric@ericabrahamsen.net>
75074
75075	Clarify manual section on &context specializer for methods
75076
75077	* doc/lispref/functions.texi (Generic Functions): Provide a little
75078	  more information on how they work.
75079
750802017-12-13  Stefan Monnier  <monnier@iro.umontreal.ca>
75081
75082	Don't get fooled by open parens in column 0 within strings
75083
75084	* lisp/emacs-lisp/lisp.el (beginning-of-defun-raw):
75085	Skip defun-prompt-regexp and open-paren-in-0 within strings and comments.
75086
750872017-12-12  Glenn Morris  <rgm@gnu.org>
75088
75089	* admin/gitmerge.el (gitmerge-missing):
75090	Don't get confused by decorations.
75091
750922017-12-12  Stefan Monnier  <monnier@iro.umontreal.ca>
75093
75094	* src/syntax.c (find_defun_start): Use syntax-ppss
75095
75096	(syms_of_syntax): New variable comment-use-syntax-ppss.
75097
750982017-12-12  Glenn Morris  <rgm@gnu.org>
75099
75100	Merge from origin/emacs-26
75101
75102	b0369d0536 Import the latest IVD_Sequences.txt
75103	cd53b6399b Fix dired-do-compress when tar doesn't default to stdin (B...
75104	51911dae14 Suppress warnings during elisp completion macroexpansion
75105	a36a090a95 * lisp/progmodes/verilog-mode.el (verilog-mode): Fix typo ...
75106	6a6e8e6e8d Make tramp-interrupt-process more robust
75107	5bcd468a9e Make quail-input-method work when inhibit-read-only is non...
75108	87baf1242e Fix 'fontset-name-p'
75109	d23158777d Fix fontset documentation inconsistencies for bug#29630
75110	a829cb8c8b Remove sentence from child frames section in Elisp manual
75111	ad491c80e4 Avoid crashes in 'font-at' after 'set-fontset-font'
75112	c73d2cdfd7 * lisp/files-x.el (connection-local-set-profile-variables)...
75113	cefca2b8ac Add /etc/ssl/cert.pem to gnutls-trustfiles for macOS
75114	122e7264b8 Fix tool-tip display when display margins are non-zero by ...
75115	e1cc2037a9 Handle hash tables and vectors when reading/writing EIEIO ...
75116	cda219c3df Improve interactive debugging commands in xdisp.c
75117	1056b3cbcd Fix calculation of continuation_pixel_width in display engine
75118	90e20804f5 Improve documentation of 'save-abbrevs'.
75119	14f0230a48 Improve documentation of Dired
75120	161b0e5493 * lisp/bookmark.el (bookmark-alist): Doc fix.  (Bug#29551)
75121
751222017-12-12  Stefan Monnier  <monnier@iro.umontreal.ca>
75123
75124	* lisp/subr.el (backtrace--print-frame): Use cl-prin1
75125
75126	* lisp/emacs-lisp/cl-print.el (cl-prin1): Catch errors, since callers
75127	generally don't expect errors.
75128
751292017-12-12  Glenn Morris  <rgm@gnu.org>
75130
75131	Fix gitmerge handling of automatic conflict reslution
75132
75133	* admin/gitmerge.el (gitmerge-resolve): Reenable NEWS handling.
75134	(gitmerge-resolve-unmerged): Commit after successful resolution.
75135	(gitmerge-commit): New function, extracted from gitmerge-maybe-resume.
75136	(gitmerge-maybe-resume): Use gitmerge-commit.
75137
751382017-12-12  Paul Eggert  <eggert@cs.ucla.edu>
75139
75140	Fix recently-introduced cast typo
75141
75142	* src/alloc.c (SDATA_OF_STRING): Put cast in right spot.
75143	This matters only if GC_CHECK_STRING_BYTES, which is sort
75144	of a coals-to-Newcastle situation if pointer bounds checking
75145	is also enabled.
75146
751472017-12-12  Paul Eggert  <eggert@cs.ucla.edu>
75148
75149	Port --fcheck-pointer-bounds to --with-wide-int
75150
75151	* src/lisp (XSYMBOL) [__CHKP__ && !USE_LSB_TAG]:
75152	Bypass pointer bounds checking here,
75153	instead of failing the entire build.
75154	(make_lisp_symbol): Improve comment.
75155
751562017-12-12  Paul Eggert  <eggert@cs.ucla.edu>
75157
75158	Narrow pointer bounds when appropriate
75159
75160	This typically occurs in a storage manager, where the caller
75161	is expected to access only the newly-allocated object,
75162	instead of using the returned value to access unrelated
75163	parts of the heap.
75164	* src/alloc.c (allocate_string, allocate_string_data)
75165	(compact_small_strings, find_string_data_in_pure)
75166	(sweep_strings, setup_on_free_list, allocate_vectorlike
75167	(pure_alloc):
75168	* src/bytecode.c (exec_byte_code):
75169	* src/callint.c (Fcall_interactively):
75170	* src/dispnew.c (scrolling):
75171	* src/editfns.c (styled_format):
75172	* src/frame.c (xrdb_get_resource, x_get_resource_string):
75173	* src/fringe.c (Fdefine_fringe_bitmap):
75174	* src/gmalloc.c (malloc, realloc, aligned_alloc):
75175	Narrow pointer bounds when appropriate.
75176	* src/alloc.c (SDATA_OF_STRING):
75177	* src/lisp.h (make_lisp_symbol) [__CHKP__]:
75178	Widen bounds here, though.
75179	* src/bytecode.c, src/callint.c, src/dispnew.c, src/editfns.c:
75180	* src/emacs.c, src/frame.c, src/fringe.c:
75181	Include ptr-bounds.h.
75182	* src/ptr-bounds.h (ptr_bounds_clip): New function.
75183
751842017-12-12  Paul Eggert  <eggert@cs.ucla.edu>
75185
75186	Port to gcc -fcheck-pointer-bounds
75187
75188	This is a minimal port, just to get Emacs running;
75189	it does not attempt to make the pointer bounds at all tight.
75190	* src/ptr-bounds.h: New file.
75191	* src/alloc.c, src/gmalloc.c: Include it.
75192	* src/alloc.c (live_string_holding, live_cons_holding)
75193	(live_symbol_holding, live_misc_holding, garbage_collect_1)
75194	(sweep_conses, sweep_floats):
75195	* src/gmalloc.c (malloc_initialize_1, _free_internal_nolock)
75196	(_realloc_internal_nolock):
75197	Widen pointer bounds as necessary.
75198	We're in a memory allocator so this is OK.
75199	* src/lisp.h (lisp_h_XSYMBOL, make_lisp_symbol) [__CHKP__]:
75200	Do not convert from pointer to integer and back again, so
75201	that GCC does not lose track of pointer bounds.
75202	(XSYMBOL) [__CHKP__ && !USE_LSB_TAG]: Now a compile-time error.
75203	Although it's possible to support both -fcheck-pointer-bounds and
75204	--with-wide-int, it's more work; keep things simple for now.
75205	(DEFINE_LISP_SYMBOL) [__CHKP__]: Now a no-op, to avoid
75206	trouble with unbounded pointers.
75207
752082017-12-12  Paul Eggert  <eggert@cs.ucla.edu>
75209
75210	Reimplement Lisp_Object as pointer-to-incomplete
75211
75212	This makes Lisp_Object values opaque pointers instead of integers,
75213	which helps avoid the same sort of typos that
75214	CHECK_LISP_OBJECT_TYPE helps to avoid, without having to wrap
75215	pointers inside structures.  This also looks forward to supporting
75216	-fcheck-pointer-bounds.
75217	* etc/DEBUG:
75218	* src/.gdbinit (Lisp_Object_Printer.to_string):
75219	Lisp_Object can be a pointer type now.
75220	* src/alloc.c (macro_XPNTR, XPNTR):
75221	* src/emacs-module.c (value_to_lisp_bits, lisp_to_value_bits):
75222	* src/lisp.h (lisp_h_XLI, lisp_h_XIL):
75223	(lisp_h_XUNTAG) [USE_LSB_TAG]:
75224	(XUNTAG) [!USE_LSB_TAG]:
75225	(Lisp_Object, TAG_PTR, make_lisp_symbol):
75226	Support new Lisp_Object implementation as a pointer to an
75227	incomplete type.  Keep pointers pointers, as much as possible.
75228	* src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, XPNTR_OR_SYMBOL_OFFSET):
75229	Remove.  All uses replaced by plain XPNTR.
75230	* src/emacs-module.c: Work around GCC bug 83162.
75231	* src/lisp.h (LISP_WORDS_ARE_POINTERS, lisp_h_XLP, lisp_h_XPL):
75232	(XLP, XPL) [DEFINE_KEY_OPS_AS_MACROS]:
75233	New macros.
75234	(Lisp_Word, untagged_ptr, Lisp_Word_tag): New types.
75235	(XLP, XPL): New inline functions.
75236	(TAG_PTR): Now expands to an initializer, not an expression.
75237	All uses changed.
75238	(TAG_SYMOFFSET, XLI_BUILTIN_LISPSYM): Remove.  All uses removed.
75239	(LISPSYM_INITIALLY): Redo in terms of the new TAG_PTR.
75240	(NIL_IS_ZERO): Redo without XLI_BUILTIN_LISPSYM.
75241	* src/xwidget.c (webkit_javascript_finished_cb): Use XPL
75242	instead of XIL with a non-EMACS_INT arg.
75243	(Fxwidget_webkit_execute_script): Use XLP instead of XLI
75244	followed by two conversions.
75245
752462017-12-12  Ted Zlatanov  <tzz@lifelogs.com>
75247
75248	Rename gnus-cloud method setter
75249
75250	* lisp/gnus/gnus-srvr.el (gnus-server-set-cloud-method-server)
75251	  (gnus-server-make-menu-bar, gnus-server-mode-map): Rename
75252	  `gnus-server-toggle-cloud-method-server' to
75253	  `gnus-server-set-cloud-method-server' (Bug#28845).
75254	  (gnus-server-toggle-cloud-server): Use "toggle" in docstring.
75255
75256	* lisp/gnus/gnus-cloud.el: Fix docstring.
75257
752582017-12-12  Stefan Monnier  <monnier@iro.umontreal.ca>
75259
75260	* lisp/subr.el (run-mode-hooks): Fix last change
75261
752622017-12-12  Alan Third  <alan@idiocy.org>
75263
75264	Remove ObjC blocks (Bug#23753)
75265
75266	* src/macfont.m (macfont_get_glyph_for_character):
75267	(mac_font_get_glyphs_for_variants): Inline Objective-C blocks.
75268
752692017-12-12  Michael Albinus  <michael.albinus@gmx.de>
75270
75271	Extend tramp-cache.el interface
75272
75273	* lisp/net/tramp.el (tramp-handle-add-name-to-file)
75274	(tramp-handle-dired-uncache):
75275	* lisp/net/tramp-adb.el (tramp-adb-handle-make-directory)
75276	(tramp-adb-handle-delete-directory, tramp-adb-handle-delete-file)
75277	(tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
75278	(tramp-adb-handle-set-file-times, tramp-adb-handle-copy-file)
75279	(tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
75280	(tramp-adb-handle-start-file-process, tramp-adb-get-device)
75281	(tramp-adb-maybe-open-connection):
75282	* lisp/net/tramp-cache.el (tramp-flush-file-properties)
75283	(tramp-flush-directory-properties, tramp-flush-file-function):
75284	* lisp/net/tramp-cmds.el (tramp-cleanup-connection):
75285	* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file)
75286	(tramp-gvfs-handle-delete-directory, tramp-gvfs-handle-delete-file)
75287	(tramp-gvfs-handle-file-system-info, tramp-gvfs-handle-make-directory)
75288	(tramp-gvfs-handle-write-region, tramp-gvfs-handler-mounted-unmounted)
75289	(tramp-gvfs-send-command):
75290	* lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
75291	(tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
75292	(tramp-sh-handle-set-file-selinux-context, tramp-sh-handle-set-file-acl)
75293	(tramp-sh-handle-add-name-to-file, tramp-sh-handle-copy-directory)
75294	(tramp-do-copy-or-rename-file, tramp-do-copy-or-rename-file-out-of-band)
75295	(tramp-sh-handle-make-directory, tramp-sh-handle-delete-directory)
75296	(tramp-sh-handle-delete-file, tramp-sh-handle-dired-compress-file)
75297	(tramp-process-sentinel, tramp-sh-handle-start-file-process)
75298	(tramp-sh-handle-process-file, tramp-sh-handle-write-region):
75299	* lisp/net/tramp-smb.el (tramp-smb-handle-add-name-to-file)
75300	(tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
75301	(tramp-smb-handle-delete-directory, tramp-smb-handle-delete-file)
75302	(tramp-smb-handle-file-acl, tramp-smb-handle-make-directory-internal)
75303	(tramp-smb-handle-make-symbolic-link, tramp-smb-handle-process-file)
75304	(tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
75305	(tramp-smb-handle-set-file-modes, tramp-smb-handle-start-file-process)
75306	(tramp-smb-handle-write-region, tramp-smb-maybe-open-connection):
75307	Use them.
75308
75309	* lisp/net/tramp-cache.el (tramp-flush-file-properties)
75310	(tramp-flush-directory-properties, tramp-flush-connection-properties):
75311	Rename from `tramp-flush-file-property',`tramp-flush-directory-property'
75312	and `tramp-flush-connection-property', respectively.
75313	(tramp-flush-file-property, tramp-flush-connection-property):
75314	New defuns.
75315
753162017-12-12  Stefan Monnier  <monnier@iro.umontreal.ca>
75317
75318	* lisp/subr.el (run-mode-hooks): Set parse-sexp-lookup-properties
75319
75320	if syntax-propertize-function is set (bug#24749).
75321	* lisp/progmodes/sh-script.el (sh-set-shell):
75322	* lisp/textmodes/texinfo.el (texinfo-mode):
75323	* lisp/textmodes/mhtml-mode.el (mhtml-mode):
75324	* lisp/progmodes/js.el (js-mode): Don't set parse-sexp-lookup-properties.
75325
753262017-12-12  Glenn Morris  <rgm@stanford.edu>
75327
75328	Make functions invocation-directory and invocation-name obsolete
75329
75330	* lisp/subr.el (invocation-directory, invocation-name):
75331	Mark the function versions as obsolete.  (Bug#10476)
75332	* lisp/startup.el (tty-handle-args):
75333	* lisp/term/common-win.el (x-handle-xrm-switch, x-handle-name-switch):
75334	* lisp/term/ns-win.el (top-level):
75335	* lisp/term/pc-win.el (top-level):
75336	* lisp/term/w32-win.el (window-system-initialization):
75337	* lisp/term/x-win.el (top-level, x-handle-parent-id)
75338	(x-handle-smid, window-system-initialization):
75339	* test/lisp/htmlfontify-tests.el (htmlfontify-bug25468):
75340	Use invocation-directory and invocation-name as variables.
75341
753422017-12-11  Glenn Morris  <rgm@gnu.org>
75343
75344	* lisp/mail/emacsbug.el (report-emacs-bug): Try "sw_vers" on Darwin.
75345
75346	* admin/gitmerge.el (gitmerge-resolve): Disable buggy NEWS handling.
75347
753482017-12-10  Eric Abrahamsen  <eric@ericabrahamsen.net>
75349
75350	Obsolete gnus-remove-if and gnus-remove-if-not
75351
75352	Use seq-remove and seq-filter, respectively, instead.
75353
75354	* lisp/gnus/gnus-util.el: Remove functions and replace with
75355	  define-obsolete-function-alias calls.
75356	* lisp/gnus/gnus.el: Require seq here.
75357	* lisp/gnus/gnus-art.el (gnus-mime-view-part-as-type):
75358	* lisp/gnus/gnus-icalendar.el (gnus-icalendar-event--get-attendee-names):
75359	* lisp/gnus/gnus-score.el (gnus-summary-score-effect):
75360	* lisp/gnus/gnus-sum.el (gnus-read-move-group-name):
75361	* lisp/gnus/gnus-topic.el (gnus-group-prepare-topics):
75362	* lisp/gnus/gnus-win.el (gnus-get-buffer-window):
75363	* lisp/gnus/nnmail.el (nnmail-purge-split-history):
75364	* lisp/gnus/nnmaildir.el (nnmaildir-request-scan):
75365	* lisp/gnus/nnrss.el (nnrss-make-hash-index): Replace calls in all
75366	  these locations.
75367
753682017-12-10  Philipp Stephani  <phst@google.com>
75369
75370	Skip tests for json.c unless compiled with native JSON support.
75371
75372	* test/src/json-tests.el (json-serialize/roundtrip)
75373	(json-serialize/object, json-parse-string/object)
75374	(json-parse-string/string, json-serialize/string)
75375	(json-parse-string/incomplete, json-parse-string/trailing)
75376	(json-parse-buffer/incomplete, json-parse-buffer/trailing): Skip if
75377	JSON functions aren't available.
75378
753792017-12-10  Eli Zaretskii  <eliz@gnu.org>
75380
75381	Support dynamic loading of libjansson on MS-Windows
75382
75383	* src/json.c [WINDOWSNT]: Define fn_* function pointers to jansson
75384	functions.
75385	(json_delete) [WINDOWSNT]: A wrapper around fn_json_delete, needed
75386	by json_decref.
75387	(init_json_functions) [WINDOWSNT]: New function.
75388	(Fjson_serialize, Fjson_insert, Fjson_parse_string)
75389	(Fjson_parse_buffer) [WINDOWSNT]: Call init_json_functions if
75390	needed, and record JSON in Vlibrary_cache.
75391	* src/emacs.c (main): Don't call init_json on WINDOWSNT.
75392	* src/w32fns.c (syms_of_w32fns): DEFSYM "json".
75393
75394	* lisp/term/w32-win.el (dynamic-library-alist): Add JSON DLL to
75395	the list.
75396
75397	* configure.ac (HAVE_JSON): Empty JSON_LIBS for MinGW.
75398
75399	* nt/INSTALL.W64:
75400	* nt/INSTALL: Add information about libjansson.
75401
754022017-12-10  Philipp Stephani  <phst@google.com>
75403
75404	* configure.ac: Fix minimum Jansson version requirement.
75405
754062017-12-10  Wilfred Hughes  <me@wilfred.me.uk>
75407
75408	Ensure that we can find definitions when buffer is narrowed
75409
75410	find-function-search-for-symbol will reuse the existing buffer if
75411	we've already opened the file that contains this symbol. However, if
75412	the user has narrowed that buffer, we can't find definitions outside
75413	the narrowed area.
75414
75415	Instead, search the whole file to find definitions, and teach the help
75416	buttons to widen if necessary.
75417
75418	* lisp/emacs-lisp/find-func.el (find-function-search-for-symbol):
75419	  Search the whole buffer for the target symbol.
75420
75421	* lisp/help-mode.el: Help buttons now widen the target buffer, if
75422	  narrowing is in effect and the target position is not in that range.
75423
754242017-12-10  Philipp Stephani  <phst@google.com>
75425
75426	Implement native JSON support using Jansson
75427
75428	* configure.ac: New option --with-json.
75429
75430	* src/json.c (Fjson_serialize, Fjson_insert, Fjson_parse_string)
75431	(Fjson_parse_buffer): New defuns.
75432	(json_malloc, json_free, json_has_prefix, json_has_suffix)
75433	(json_make_string, json_build_string, json_encode)
75434	(json_out_of_memory, json_parse_error)
75435	(json_release_object, check_string_without_embedded_nulls, json_check)
75436	(lisp_to_json, lisp_to_json_toplevel, lisp_to_json_toplevel_1)
75437	(json_insert, json_insert_callback, json_to_lisp)
75438	(json_read_buffer_callback, Fjson_parse_buffer, define_error): New
75439	helper functions.
75440	(init_json, syms_of_json): New file.
75441
75442	* src/lisp.h: Declaration for init_json and syms_of_json.
75443
75444	* src/emacs.c (main): Enable JSON functions.
75445
75446	* src/eval.c (internal_catch_all, internal_catch_all_1): New helper
75447	functions to catch all signals.
75448	(syms_of_eval): Add uninterned symbol to signify out of memory.
75449
75450	* src/Makefile.in (JSON_LIBS, JSON_CFLAGS, JSON_OBJ, EMACS_CFLAGS)
75451	(base_obj, LIBES): Compile json.c if --with-json is enabled.
75452
75453	* test/src/json-tests.el (json-serialize/roundtrip)
75454	(json-serialize/object, json-parse-string/object)
75455	(json-parse-string/string, json-serialize/string)
75456	(json-parse-string/incomplete, json-parse-string/trailing)
75457	(json-parse-buffer/incomplete, json-parse-buffer/trailing): New unit
75458	tests.
75459
75460	* doc/lispref/text.texi (Parsing JSON): New manual section.
75461
754622017-12-10  Michael Albinus  <michael.albinus@gmx.de>
75463
75464	* doc/misc/tramp.texi (Archive file names): Precise example.
75465
754662017-12-09  Glenn Morris  <rgm@gnu.org>
75467
75468	* test/lisp/net/tramp-archive-tests.el
75469	(tramp-archive-test06-directory-file-name): Add skip condition.
75470
754712017-12-09  Philipp Stephani  <phst@google.com>
75472
75473	* lisp/emacs-lisp/advice.el: Stop using old-style backquotes
75474
754752017-12-09  Philipp Stephani  <phst@google.com>
75476
75477	Raise an error when detecting old-style backquotes.
75478
75479	They have been deprecated for a decade now.
75480
75481	* src/lread.c (Fload): Don't use record_unwind_protect to warn about
75482	old-style backquotes any more.  They now generate a hard error.
75483	(read1): Signal an error when detecting old-style backquotes.  Remove
75484	unused label.
75485	(syms_of_lread): Remove unused internal variable
75486	'lread--old-style-backquotes'.
75487	(load_error_old_style_backquotes): Rename from
75488	'load_warn_oldstyle_backquotes'.  Signal an error.
75489
75490	* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Remove check
75491	from byte compiler.  It isn't triggered any more.
75492
75493	* test/src/lread-tests.el (lread-tests--old-style-backquotes): Adapt
75494	unit test.
75495
75496	* test/lisp/emacs-lisp/bytecomp-tests.el
75497	(bytecomp-tests--old-style-backquotes)
75498	(bytecomp-tests-function-put): Adapt unit tests.
75499
75500	* etc/NEWS: Document change.
75501
755022017-12-09  Philipp Stephani  <phst@google.com>
75503
75504	Work around reader limitations for old-style backquotes.
75505
75506	See Bug#28759.
75507
75508	* admin/grammars/make.by: Escape ,@ to avoid old-style backquote
75509	detection
75510
755112017-12-09  Michael Albinus  <michael.albinus@gmx.de>
75512
75513	Support for archive file names
75514
75515	* doc/misc/tramp.texi (Top, Usage): Add entry "Archive file names".
75516	(History): Mention archive file names.
75517	(GVFS based methods): Mentio "http" and "https" methods.
75518	(Archive file names): New node.
75519	(Frequently Asked Questions): Add Emacs 27 as supported version.
75520
75521	* etc/NEWS: Mention tramp-archive.el.
75522
75523	* lisp/net/tramp.el (tramp-run-real-handler)
75524	(tramp-register-file-name-handlers)
75525	(tramp-register-file-name-handlers, tramp-unload-file-name-handlers):
75526	Add `tramp-archive-file-name-handler'.
75527	(tramp-handle-file-name-completion): Do not insist in Tramp
75528	file names.
75529
75530	* lisp/net/tramp-archive.el: New package.
75531
75532	* lisp/net/tramp-cache.el (tramp-dump-connection-properties): Check for
75533	"archive" method.
75534
75535	* lisp/net/tramp-cmds.el (tramp-cleanup-all-connections): Cleanup also
75536	local copies of archives.
75537
75538	* lisp/net/tramp-compat.el (tramp-compat-use-url-tramp-p): New defconst.
75539
75540	* lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "http" and "https".
75541	(tramp-gvfs-gio-mapping): Add "gvfs-mount".
75542	(tramp-gvfs-handler-mounted-unmounted)
75543	(tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec):
75544	Handle "uri" and "http".
75545	(tramp-gvfs-unmount): New defun.
75546
75547	* test/lisp/net/tramp-archive-tests.el: New package.
75548
755492017-12-09  Michael Albinus  <michael.albinus@gmx.de>
75550
75551	* test/Makefile.in (url-tramp-test.log): Do not handle special.
75552
755532017-12-09  Michael Albinus  <michael.albinus@gmx.de>
75554
75555	Sync with Tramp 2.4.0-pre
75556
75557	* doc/misc/trampver.texi:
75558	* lisp/net/trampver.el: Change version to "2.4.0-pre".
75559
75560	* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
75561	Use `tramp-handle-file-directory-p'.
75562	(tramp-adb-parse-device-names)
75563	(tramp-adb-handle-expand-file-name)
75564	(tramp-adb-handle-file-truename, tramp-adb-handle-process-file):
75565	Adapt `tramp-make-tramp-file-name' call.
75566	(tramp-adb-handle-file-directory-p): Remove.
75567	(tramp-adb-maybe-open-connection): Do not set
75568	tramp-current-*.
75569
75570	* lisp/net/tramp-cache.el (tramp-get-hash-table):
75571	Adapt `tramp-make-tramp-file-name' call.
75572
75573	* lisp/net/tramp-cmds.el (tramp-cleanup-connection): Do not set
75574	tramp-current-*.
75575
75576	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
75577	Use `tramp-handle-file-directory-p'.
75578	(tramp-gvfs-dbus-event-error): Trace with verbosity 6.
75579	(tramp-gvfs-do-copy-or-rename-file): Use `file-truename'.
75580	(tramp-gvfs-handle-file-directory-p): Remove.
75581	(tramp-gvfs-handler-askpassword): Do not set tramp-current-*.
75582
75583	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
75584	(tramp-sh-handle-start-file-process)
75585	(tramp-maybe-open-connection, tramp-get-remote-path): Do not
75586	set tramp-current-*.
75587	(tramp-maybe-open-connection): Set "password-vector" property.
75588
75589	* lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
75590	Use `tramp-handle-file-accessible-directory-p' and
75591	`tramp-handle-file-directory-p'.
75592	(tramp-smb-handle-copy-directory, tramp-smb-handle-file-acl)
75593	(tramp-smb-handle-set-file-acl)
75594	(tramp-smb-maybe-open-connection): Do not set tramp-current-*.
75595	(tramp-smb-handle-file-directory-p): Remove.
75596	(tramp-smb-handle-make-symbolic-link):
75597	Use `tramp-get-connection-buffer' rather than `buffer-name'.
75598
75599	* lisp/net/tramp.el (tramp-current-method, tramp-current-user)
75600	(tramp-current-domain, tramp-current-host)
75601	(tramp-current-port): Remove.
75602	(tramp-dissect-file-name): No special handling of localname anymore.
75603	(tramp-make-tramp-file-name): Reimplemnt with new signature.
75604	(tramp-completion-make-tramp-file-name): Fix docstring.
75605	(tramp-get-buffer, tramp-handle-file-name-as-directory)
75606	(tramp-handle-file-name-directory)
75607	(tramp-check-cached-permissions, tramp-local-host-p)
75608	(tramp-get-remote-tmpdir, tramp-clear-passwd):
75609	Adapt `tramp-make-tramp-file-name' call.
75610	(tramp-completion-handle-file-name-all-completions)
75611	(tramp-action-login, tramp-read-passwd): Do not set
75612	tramp-current-*.
75613	(tramp-handle-file-directory-p): New defun.
75614	(tramp-handle-verify-visited-file-modtime): Remove superfluous
75615	`with-parsed-tramp-file-name'.
75616	(tramp-process-actions, tramp-read-passwd):
75617	Use "password-vector" property.
75618	(tramp-call-process, tramp-call-process-region): No special
75619	setting of vec.
75620	(tramp-read-passwd): Handle "login-as" property.
75621
75622	* test/lisp/net/tramp-tests.el (tramp-test21-file-links):
75623	Special code for "smb".
75624
756252017-12-09  Michael Albinus  <michael.albinus@gmx.de>
75626
75627	Minor Tramp fixes
75628
75629	* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
75630	Fix a bug when renaming.
75631
75632	* test/lisp/net/tramp-tests.el (tramp-test21-file-links): Extend test.
75633	(tramp-test42-delay-load, tramp-test42-remote-load-path):
75634	Skip unless Emacs >= 26.
75635
756362017-12-09  Glenn Morris  <rgm@gnu.org>
75637
75638	* lisp/help-mode.el (help-function-def):
75639	Allow help-make-xrefs to call with one argument.  (Bug#29611)
75640
756412017-12-09  Martin Rudalics  <rudalics@gmx.at>
75642
75643	Fix doc-string of 'display-buffer-in-side-window'
75644
75645	* lisp/window.el (display-buffer-in-side-window): In doc-string
75646	clarify why the window returned gets dedicated to its buffer.
75647
756482017-12-09  Michael Albinus  <michael.albinus@gmx.de>
75649
75650	Fix Bug#29579
75651
75652	* lisp/files.el (file-name-non-special):
75653	Inhibit `file-name-handler-alist' only for some operations.
75654	Add missing operations.  (Bug#29579)
75655
75656	* lisp/net/tramp-compat.el (tramp-compat-file-name-quote):
75657	Do not quote if it is quoted already.
75658
75659	* lisp/net/tramp-smb.el (tramp-smb-handle-insert-directory):
75660	Use `copy-tree' but `copy-sequence'.
75661
75662	* lisp/net/tramp.el (tramp-handle-file-truename): Handle several
75663	trailing slashes correctly.
75664
75665	* test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
75666	(tramp-test12-rename-file, tramp-test24-file-acl)
75667	(tramp-test25-file-selinux, tramp--test-check-files):
75668	Handle also quoted file names.
75669	(tramp-test21-file-links): Fix file name quoting test.
75670	(tramp-test24-file-acl): Be more robust for "smb" method.
75671	(tramp-test35-make-auto-save-file-name): Enable hidden test cases.
75672
756732017-12-09  Michael Albinus  <michael.albinus@gmx.de>
75674
75675	Merge from origin/emacs-26
75676
75677	7eea3144d4 Minor Tramp fixes
75678	c0a670a8b5 * lisp/help-mode.el (help-function-def): Allow help-make-x...
75679	05720162c1 Fix doc-string of 'display-buffer-in-side-window'
75680	a1bbc49015 Fix Bug#29579
75681	cb3d979b74 ; NEWS: Update Org version number
75682
756832017-12-09  Michael Albinus  <michael.albinus@gmx.de>
75684
75685	Merge from origin/emacs-26
75686
75687	5381c70b7a In windows.texi mention special splitting behavior of side...
75688	46d62b9f36 * lisp/gnus/gnus-group.el (gnus-group-mode-map): Bind [fol...
75689	1ef1dbdbc5 Avoid compilation warning in xterm.c
75690	5cf3c26f2d * README: Document all the top-level directories.  (Bug#29...
75691	e9ea2065a8 Don't enable erc modules on simply loading erc.el
75692
756932017-12-09  Michael Albinus  <michael.albinus@gmx.de>
75694
75695	Merge from origin/emacs-26
75696
75697	1fdac2d65c Don't add newlines in minibuffer history
75698	de68f337e3 modhelp.py: Support Python 3 (Bug#24954)
75699	afb04f7f3c Use forward slashes for python w32 config example (Bug#21656)
75700
757012017-12-08  Paul Eggert  <eggert@cs.ucla.edu>
75702
75703	Fix core dump from (format "%#08x" n) patch
75704
75705	Problem reported by Glenn Morris (Bug#29609#13).
75706	* src/editfns.c (styled_format): Null-terminate output,
75707	as later code now expects this.
75708
757092017-12-08  Paul Eggert  <eggert@cs.ucla.edu>
75710
75711	Fix daylight-saving inference for Irish time
75712
75713	* lisp/calendar/cal-dst.el (calendar-dst-find-data): Do not assume
75714	that daylight-saving time has a greater UT offset than standard
75715	time.  The reverse is true in Ireland, where standard time "IST"
75716	is UTC +01 in summer and daylight-saving time "GMT" is UTC +00 in
75717	winter.  The current Irish rules are given by the POSIX setting
75718	TZ='IST-1GMT0,M10.5.0,M3.5.0/1'.
75719
757202017-12-07  Paul Eggert  <eggert@cs.ucla.edu>
75721
75722	Fix zero-padding bug with (format "%#08x" n)
75723
75724	Problem reported by Gustaf Waldemarson (Bug#29609).
75725	* src/editfns.c (styled_format):
75726	Put zero padding after a leading "0x", not before.
75727	* test/src/editfns-tests.el (format-sharp-0-x): New test.
75728
757292017-12-06  Rasmus  <rasmus@gmx.us>
75730
75731	Revert "; Add entry for new Org version in NEWS file"
75732
75733	This reverts commit 793ba92c50d69e1796ea2122520dea872007bca7.
75734
757352017-12-06  Rasmus  <rasmus@gmx.us>
75736
75737	Update Org to v9.1.4
75738
75739	Please note this is a bugfix release. See etc/ORG-NEWS for details.
75740
757412017-12-05  Stefan Monnier  <monnier@iro.umontreal.ca>
75742
75743	* lisp/files.el (find-alternate-file): Use selected-window even if dedicated
75744
757452017-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
75746
75747	* lisp/calendar/diary-lib.el: Use lexical-binding
75748
75749	(diary-pull-attrs): Avoid let...setq.
75750	(diary-list-entries-2, diary-mark-entries-1)
75751	(diary-font-lock-date-forms, diary-fancy-date-pattern):
75752	Use calendar-dlet* around uses of diary-date-forms.
75753	(list-only, number, date, entry): Don't declare globally.
75754	(diary-including): Declare.
75755	(diary-saved-point, date-string): Move before first use.
75756	(diary-list-entries): Use calendar-dlet* around
75757	diary-nongregorian-listing-hook and 'diary-list-entries-hook.
75758	(displayed-year, displayed-month): Move before first use.
75759	(diary-sexp-entry): Use calendar-let* around evaluation of the sexp.
75760	(diary-remind): Use calendar-let* around evaluation of sexp.
75761
757622017-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
75763
75764	* lisp/calendar/cal-dst.el: Use lexical-binding
75765
75766	(calendar-time-zone-daylight-rules, calendar-dst-starts)
75767	(calendar-dst-ends, dst-in-effect): Bind `year' explicitly around `eval'.
75768
757692017-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
75770
75771	* lisp/calendar/todo-mode.el: Use calendar-dlet*
75772
75773	(dayname, monthname, day, month, year): Don't declare globally.
75774	(todo-date-pattern, todo-edit-item--header)
75775	(todo-convert-legacy-date-time, todo-read-date):
75776	Use calendar-dlet* around uses of calendar-date-display-form.
75777
757782017-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
75779
75780	* lisp/calendar/solar.el: Use lexical-binding
75781
75782	(date): Don't declare globally.
75783	(solar-time-string): Use calendar-dlet*.
75784
75785	* lisp/calendar/calendar.el (calendar-dlet*): New macro.
75786
757872017-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
75788
75789	* lisp/emacs-lisp/faceup.el: Don't require CL
75790
75791	(faceup-markup-start-char, faceup-markup-end-char): Use char immediates.
75792
757932017-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
75794
75795	* lisp/emacs-lisp/elint.el (elint-init-form): Remove outdated CL hack
75796
757972017-12-04  Eli Zaretskii  <eliz@gnu.org>
75798
75799	Fix an omission in lookup_basic_face
75800
75801	* src/xfaces.c (lookup_basic_face): Handle 'vertical-border' face
75802	as well.  (Bug#29557)
75803
758042017-12-03  Paul Eggert  <eggert@cs.ucla.edu>
75805
75806	allocate_vectorlike minor cleanup
75807
75808	* src/alloc.c (allocate_vectorlike): Move a bit of code out of the
75809	critical section.  Although this doesn’t really help performance,
75810	it cleans up the code a bit and should make it easier to add
75811	pointer bounds checking.
75812
758132017-12-03  Paul Eggert  <eggert@cs.ucla.edu>
75814
75815	Omit exprintf if modules but no X
75816
75817	* src/doprnt.c (exprintf): Do not define if HAVE_MODULES &&
75818	!(have_X_WINDOWS || USE_X_TOOLKIT), as the modules code no longer
75819	uses exprintf.
75820
758212017-12-03  Paul Eggert  <eggert@union>
75822
75823	Pacify GCC on Ubuntu 17.10 x86-64
75824
75825	* src/xfns.c (x_real_pos_and_offsets): Pull out parent frame
75826	into a local, so that GCC doesn't warn about dereferencing
75827	a possibly-null pointer.
75828
758292017-12-03  Lars Ingebrigtsen  <larsi@gnus.org>
75830
75831	Allow shr to use data: URLs without encoding
75832
75833	* lisp/net/shr.el (shr-image-from-data): Don't bug out on
75834	image data: URLs that have no base64 encoding like
75835	(shr-image-from-data
75836	"text/html,%3Ch1%3EHello%2C%20World!%3C%2Fh1%3E").
75837
758382017-12-03  Alan Third  <alan@idiocy.org>
75839
75840	Add image resizing and rotation to NS port
75841
75842	* lisp/image.el (image--get-imagemagick-and-warn): Bypass imagemagick
75843	check when using NS.
75844	* src/nsimage.m (ns_load_image): Add rotation and resizing
75845	functionality. Move the getMetaData call to before the resize/rotation
75846	so it returns correct metadata.
75847	(EmacsImage::setSizeFromSpec, EmacsImage::rotate): New functions.
75848	* src/nsterm.h (EmacsImage): Add new function prototypes.
75849	(NSCompositingOperationCopy): Add define to older equivalent for
75850	GNUstep and pre-10.12 macOS.
75851	* configure.ac: Don't use libjpeg on Cocoa.
75852
758532017-12-03  Noam Postavsky  <npostavs@gmail.com>
75854
75855	Disable history expansion in eshell (Bug#29157)
75856
75857	History expansion is not so useful since interactive history commands
75858	are already provided.  It can produce surprising errors when the user
75859	is not aware of the history designator syntax.
75860	* lisp/eshell/em-hist.el (eshell-hist-initialize): Don't add
75861	eshell-expand-history-references to eshell-expand-input-functions.
75862	* etc/NEWS: Announce it.
75863
758642017-12-03  Noam Postavsky  <npostavs@gmail.com>
75865
75866	* lisp/emacs-lisp/package.el (package-read-from-string): Simplify.
75867
758682017-12-03  Noam Postavsky  <npostavs@gmail.com>
75869
75870	Fix faceup tests when run from elc
75871
75872	String literals may be shared by the compiler, so the test string
75873	needs to be copied before adding properties to it.  For single
75874	properties, just use a string literal with properties.
75875	* test/lisp/emacs-lisp/faceup-tests/faceup-test-basics.el
75876	(faceup-markup): Split into...
75877	(faceup-markup-basics, faceup-markup-escaping, faceup-markup-plain)
75878	(faceup-markup-plain-full-text, faceup-markup-anonymous-face)
75879	(faceup-markup-anonymous-face-2keys, faceup-markup-anonymous-nested)
75880	(faceup-markup-nested, faceup-markup-overlapping)
75881	(faceup-markup-multi-face, faceup-markup-multi-property): New tests.
75882
758832017-12-02  Paul Eggert  <eggert@cs.ucla.edu>
75884
75885	Merge from origin/emacs-26
75886
75887	04e5b28ff1 Fix bug in i18n/l10n optimization
75888	8227087194 Let autoload-compute-prefix be set file-locally (Bug#29471)
75889	98ca7d5f26 Improve edit-kbd-macro prompting in case of remapped keys ...
75890	c02c1f6be7 Add tests on electric-indentation and Python multiline str...
75891	946bb6d225 Disable electric indent for python strings (Bug#29305)
75892	35f1ed10e4 ; ChangeLog.2: Fix bug reference.
75893	ac316634e4 Fix buffer overflow in fontname conversion (Bug#29523)
75894	bf9b972843 Fix byte compilation of files with leading directories
75895	ac144dc835 * lisp/files.el (make-backup-file-name-1): Fix scoping error.
75896	1b351c8a47 Revert Tramp commit from 2017-11-20
75897	77cf972592 Improve documentation of buffer-list commands and features
75898	66ec92af00 Fix backing up remote files in local directories on MS-Win...
75899	7e61e74da7 * doc/emacs/mule.texi (Output Coding): Clarify sendmail co...
75900	1e25cd79ff Revert "Fix backing up remote files in local directories o...
75901	f52d79500b Fix a typo in ELisp manual
75902	bf26fc3656 * lisp/composite.el (find-composition): Fix a typo in the ...
75903
759042017-12-02  Paul Eggert  <eggert@cs.ucla.edu>
75905
75906	Merge from origin/emacs-26
75907
75908	8c8b673288 Fix backing up remote files in local directories on MS-Win...
75909	8eb6870be6 Fix vertical cursor motion in pixel-scroll.el
75910	625e84f156 Fix typos in doc strings of message.el
75911	9292276a44 Fix a typo in the Emacs manual
75912	42509c0649 Improve the documentation of 'table-insert-sequence'
75913	93dc7ae4a4 Port better to QNX
75914	ad99550610 Make tramp-test42-auto-load more robust
75915	af0ce33d08 ; * lisp/composite.el (find-composition): Fix a typo in la...
75916	bdbcdbac43 Avoid assertions in find-composition
75917
759182017-12-02  Alan Mackenzie  <acm@muc.de>
75919
75920	For help commands, ensure all keys of a mouse sequence are reported.
75921
75922	This solves the problem where read_key_sequence initializes and uses a global
75923	buffer raw_keybuf, yet is called recusrsively.  The initialization is now done
75924	elsewhere, avoiding the reinitialization of that global buffer.
75925
75926	* src/keyboard.c (command_loop_1, read_key_sequence_vs): Initialize
75927	raw_event_count before calling read_key_sequence.
75928	(read_char_x_menu_prompt): Call x_popup_menu_1 in place of Fx_popup_menu.
75929	(init_raw_keybuf_count): New function.
75930	(read_key_sequence): Remove initialization of raw_event_count.  Add a missing
75931	GROW_RAW_KEYBUF invocation.
75932
75933	* src/keyboard.h: (init_raw_keybuf_count): New declaration.
75934
75935	* src/menu.c: (x_popup_menu_1): New function with the functionality of the
75936	former Fx_popup_menu.
75937	(Fx_popup_menu): Replace with function which initializes raw_event_count then
75938	calls x_popup_menu_1.
75939
75940	* src/menu.h: (x_popup_menu_1): New declaration.
75941
759422017-12-01  Vibhav Pant  <vibhavp@gmail.com>
75943
75944	lisp/erc/erc.el: Use inline-letevals for when args are buffer local.
75945
75946	* lisp/erc/erc.el: (erc-get-server-user, erc-add-server-user,
75947	  erc-remove-server-user): Use inline-letevals for when the arguments
75948	  refer to buffer-local variables.
75949
759502017-12-01  Glenn Morris  <rgm@gnu.org>
75951
75952	* admin/gitmerge.el (gitmerge-resolve): Handle NEWS.  (Bug#29366)
75953
759542017-12-01  Glenn Morris  <rgm@gnu.org>
75955
75956	Don't hard-code gitmerge.el's default merge branch
75957
75958	* admin/gitmerge.el (gitmerge-default-branch): Make it a variable,
75959	defaulting to nil.
75960	(gitmerge-emacs-version, gitmerge-default-branch): New functions.
75961	(gitmerge): Guess the branch to merge from.
75962
759632017-12-01  Glenn Morris  <rgm@gnu.org>
75964
75965	* admin/gitmerge.el (gitmerge-resolve):
75966	Fix treatment of generated files.
75967
759682017-11-30  Michael Heerdegen  <michael_heerdegen@web.de>
75969
75970	Add macros `thunk-let' and `thunk-let*'
75971
75972	* lisp/emacs-lisp/thunk.el (thunk-let, thunk-let*): New macros.
75973	* test/lisp/emacs-lisp/thunk-tests.el:
75974	(thunk-let-basic-test, thunk-let*-basic-test)
75975	(thunk-let-bound-vars-cant-be-set-test)
75976	(thunk-let-laziness-test, thunk-let*-laziness-test)
75977	(thunk-let-bad-binding-test): New tests for `thunk-let' and
75978	`thunk-let*.
75979
75980	* doc/lispref/eval.texi (Deferred Eval): New section.
75981	* doc/lispref/elisp.texi: Update menu.
75982
759832017-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
75984
75985	Add date to dependency and source zips for snapshots
75986
75987	* admin/nt/dist-build/build-zips.sh,
75988	  admin/nt/dist-build/build-dep-zips.py: Support snapshot naming
75989
759902017-11-30  Glenn Morris  <rgm@gnu.org>
75991
75992	Make truncate-lines permanently local (bug#15396)
75993
75994	Width of lines relative to display is rarely a function of major mode.
75995	* src/buffer.c (init_buffer_once) <truncate-lines>:
75996	Flag as permanently local.
75997	* lisp/bindings.el (truncate-lines): Add permanent-local property.
75998
759992017-11-29  Glenn Morris  <rgm@gnu.org>
76000
76001	Merge from origin/emacs-26
76002
76003	408862f02a (origin/emacs-26) ; * lisp/emacs-lisp/bytecomp.el: Tweak m...
76004	9964db4c34 Restore obsolete method of changing byte-compile-dest-file
76005	3dd25aeecb Some minor Tramp corrections
76006	d670a15f25 * doc/misc/url.texi (http/https): Fix typo
76007	99d07e8d5e Remove some bogus definition-prefixes from loaddefs
76008	6067f0c702 Shell-quote wildcards when invoking 'vc-git-grep'
76009	0540df10e6 Update documentation of '.dir-locals-2.el'
76010	f2441ab320 ; Fix some tiny doc and comment typos
76011	22ff46e6d8 ; Fix some comment typos
76012
76013	# Conflicts:
76014	#	etc/NEWS
76015
760162017-11-29  Glenn Morris  <rgm@gnu.org>
76017
76018	Merge from origin/emacs-26
76019
76020	f2e6961a1b ; * lisp/emacs-lisp/bytecomp.el (byte-compile-dest-file): ...
76021	1c8bd8a119 A few small doc fixes for bytecomp.el
76022
760232017-11-29  Glenn Morris  <rgm@gnu.org>
76024
76025	Merge from origin/emacs-26
76026
76027	02d114d6b8 * lisp/tree-widget.el (tree-widget-end-guide): Escape it. ...
76028	0a85d12474 Fix ELisp "Warning Tips"
76029	06d05fec84 Fix Bug#29163
76030	ac64fdb248 Harden exec_byte_code against redefining 'error'
76031	700f74e4c8 Fix Edebug specs for if-let* and and-let* (Bug#29236)
76032	0ded1b41a9 Fix Edebug's handling of dotted specs (bug#6415)
76033	16358d4fcb Improve documentation of "constant" symbols
76034
760352017-11-29  Stefan Monnier  <monnier@iro.umontreal.ca>
76036
76037	* lisp/gnus/message.el: Use pcase and cl-lib
76038
76039	(message-check-news-body-syntax): Avoid string-to-multibyte.
76040
760412017-11-28  Glenn Morris  <rgm@gnu.org>
76042
76043	Put most erc autoloads in a dedicated file erc-loaddefs.el
76044
76045	These are features that are only useful after erc.el is loaded.
76046	* lisp/erc/erc.el (top-level): Load erc-loaddefs.
76047	* lisp/erc/erc-autoaway.el, lisp/erc/erc-button.el:
76048	* lisp/erc/erc-capab.el, lisp/erc/erc-compat.el:
76049	* lisp/erc/erc-dcc.el, lisp/erc/erc-desktop-notifications.el:
76050	* lisp/erc/erc-ezbounce.el, lisp/erc/erc-fill.el:
76051	* lisp/erc/erc-identd.el, lisp/erc/erc-imenu.el:
76052	* lisp/erc/erc-join.el, lisp/erc/erc-list.el, lisp/erc/erc-log.el:
76053	* lisp/erc/erc-match.el, lisp/erc/erc-menu.el:
76054	* lisp/erc/erc-netsplit.el, lisp/erc/erc-notify.el:
76055	* lisp/erc/erc-page.el, lisp/erc/erc-pcomplete.el:
76056	* lisp/erc/erc-replace.el, lisp/erc/erc-ring.el:
76057	* lisp/erc/erc-services.el, lisp/erc/erc-sound.el:
76058	* lisp/erc/erc-speedbar.el, lisp/erc/erc-spelling.el:
76059	* lisp/erc/erc-stamp.el, lisp/erc/erc-track.el:
76060	* lisp/erc/erc-truncate.el, lisp/erc/erc-xdcc.el:
76061	Set generated-autoload-file to "erc-loaddefs.el".
76062
760632017-11-27  Glenn Morris  <rgm@gnu.org>
76064
76065	Fix probable typo in elisp-mode constant name
76066
76067	* lisp/progmodes/elisp-mode.el (emacs-lisp-byte-code-comment-re):
76068	Rename from emacs-list-byte-code-comment-re.  Add doc string.
76069	(elisp--byte-code-comment, elisp-byte-code-syntax-propertize):
76070	Update for the above.
76071
760722017-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
76073
76074	Update Build files for Emacs-27
76075
76076	* admin/nt/dist-build/README-windows-binaries,
76077	  admin/nt/dist-build/build-dep-zips.py,
76078	  admin/nt/dist-build/build-zips.sh: Update Version
76079
760802017-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
76081
76082	* lisp/emacs-lisp/cl-macs.el: Fix bug#26073.
76083
76084	* lisp/emacs-lisp/cl-macs.el (cl--sm-macroexpand):
76085	Implement Common-Lisp's behavior for symbol-macro's let-rebindings.
76086	(cl--letf, cl-letf): Don't get fooled into using a plain `let` for
76087	symbol-macros.
76088
76089	* test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-symbol-macrolet-hide):
76090	New test.
76091
760922017-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
76093
76094	* lisp/emacs-lisp/cl-macs.el: Fix &key with no key arg
76095
76096	* test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-empty-keyargs): New test.
76097	* lisp/emacs-lisp/cl-macs.el (cl--do-arglist): Fix it.
76098
760992017-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
76100
76101	* src/lread.c (syms_of_lread): Fix thinko in commit b1573a97e17b5.
76102
761032017-11-26  Paul Eggert  <eggert@union>
76104
76105	Pacify --enable-gcc-warnings on Ubuntu 17.10 x86-64
76106
76107	* src/process.c (Fmake_network_process):
76108	Avoid duplicate test of NILP (host), which apparently confuses
76109	GCC into thinking that portstringlen might be used uninitialized.
76110
761112017-11-26  Charles A. Roelli  <charles@aurox.ch>
76112
76113	* src/process.c (wait_reading_process_output): Deduplicate check.
76114
76115	(Bug#29454)
76116
761172017-11-25  Paul Eggert  <eggert@cs.ucla.edu>
76118
76119	Merge from origin/emacs-26
76120
76121	a89f0b6f33 maint: shorten https://lists.gnu.org/archive/html/... links
76122	8be3aee281 Merge from Gnulib
76123	265cee553f Work around GCC bug 80776 on Fedora 27 x86
76124	dc7a97fb84 Tweak copy-file, rename-file doc
76125	cfa2a944d4 Change font-lock-extend-region-multiline handling in mhtml...
76126	a8664cc998 Minor cleanup in tramp-gvfs-handle-file-local-copy
76127	55c5b12fa0 Add test for Bug#29423 in Tramp.
76128	3198a1646e Avoid jumbled order in HTML rendered by shr.el
76129	23bfc2d2db Make sure 'dired-filename' property is always put by ls-lisp
76130	f7fdaea4c0 A better solution for bug#29347
76131	86e6ed8521 ; * src/thread.c (acquire_global_lock): Fix thinko in last...
76132	f300852037 Avoid a hang after C-g while sit-for on a Unix TTY
76133	d7fc719ff1 Improve the doc string of 'list-packages'
76134	b4f67ebb92 Improve discoverability of 'defvar' for suppressing warnings
76135	8a2b204e64 Improve discoverability of 'read-buffer-completion-ignore-...
76136	eea4e9194c Improve documentation of self-insert-uses-region-functions
76137	e6e41dac87 Reflect changes in copy-file and rename-file in doc strings
76138	0ec534070f * lisp/progmodes/cc-vars.el (c-offsets-alist): Doc fix.  (...
76139	1d0dbdff6c Reorder type predicates in ELisp manual
76140	b081ec9dd7 Fix backward scrolling in buffers with header-line
76141	8e40429c96 ; Fix some doc typos
76142	ed2c542920 * lisp/bindings.el (buffer-file-coding-system): Add explic...
76143	d82474e452 * src/fns.c (syms_of_fns) <overriding-plist-environment>: ...
76144	292c09ff6d Fix incorrect interaction of drag/drop and double click (b...
76145	d6fadb1d26 * lisp/menu-bar.el (menu-bar-options-save): Add display-li...
76146	daa959efbc * lisp/menu-bar.el (menu-bar-options-save): Add global-dis...
76147	17fc74d1b9 * lisp/follow.el (follow-mode): Restore mode line lighter....
76148	f20c2e2f3d ; Compare process status against 127 exactly
76149	2d203ffb7e Extract the common part of ruby-flymake-simple and ruby-fl...
76150	09944d499a Add Rubocop Flymake backend
76151	c65a0ae7c4 ; Fix a typo
76152	7ab7603125 Update nt/INSTALL.W64 (Bug#28601)
76153	11db253c08 Remove incorrect NEWS item about VC state indicator (Bug#2...
76154	2fdc01c036 * lisp/emacs-lisp/byte-run.el (defsubst): Doc fix.
76155	735c8b516e Make c-defun-name analyze more thoroughly a function type ...
76156	92f0c4cd56 Avoid bogus abbreviated file names if HOME changes
76157	8d450453fa * lisp/emacs-lisp/byte-run.el (inline): Give it a doc.
76158	37a3b4ea40 Fix erc keep-place module with new defaults (Bug#29111)
76159	6c312605bf Add window divider faces to NS (bug#29353)
76160
76161	# Conflicts:
76162	#	etc/NEWS
76163	#	lisp/ruler-mode.el
76164
761652017-11-24  Eric Abrahamsen  <eric@ericabrahamsen.net>
76166
76167	Obsolete gnus-copy-sequence and gnus-last-element
76168
76169	(Bug#28856, Bug#28867)
76170
76171	* lisp/gnus/gnus-range.el: Leave gnus-last-element in place, but
76172	  obsolete it and point to car of last. Remove gnus-copy-sequence and
76173	  define as an obsolete alias for copy-tree.
76174	  (gnus-remove-from-range):
76175	* lisp/gnus/gnus-cache.el (gnus-cache-generate-active):
76176	* lisp/gnus/gnus-sum.el (gnus-summary-insert-articles,
76177	  gnus-select-newsgroup, gnus-summary-read-group-1,
76178	  gnus-select-newsgroup, gnus-update-marks,
76179	  gnus-summary-insert-articles, gnus-summary-insert-new-articles):
76180	  Replace calls in these locations.
76181	* lisp/gnus/gnus-agent.el (gnus-agent-catchup,
76182	  gnus-agent-summary-fetch-series, gnus-category-copy):
76183	* lisp/gnus/gnus-cus.el (gnus-group-customize):
76184	* lisp/gnus/gnus-group.el (gnus-group-edit-group-done,
76185	  gnus-group-make-useful-group):
76186	* lisp/gnus/gnus-score.el (gnus-score-adaptive):
76187	* lisp/gnus/gnus-srvr.el (gnus-server-copy-server): Replace calls in
76188	  these locations.
76189
761902017-11-24  Stefan Monnier  <monnier@iro.umontreal.ca>
76191
76192	* src/data.c: Fix regression in last clone-buffer change
76193
76194	* src/data.c (Fmake_local_variable, Fmake_variable_buffer_local):
76195	Signal more precise error when applied to read-only variable.
76196
761972017-11-24  Sam Steingold  <sds@gnu.org>
76198
76199	Fix last patch: ensure the return value of tags-verify-table.
76200
76201	* lisp/progmodes/etags.el (tags-verify-table): Since `(tags-table-mode)'
76202	always return nil now that it is a derived mode, call
76203	`verify-tags-table-function' explicitly.
76204
762052017-11-24  Pip Cet  <pipcet@gmail.com>
76206
76207	Use NULL for NULL rather than false
76208
76209	* src/xdisp.c (x_draw_bottom_divider): Fix type typo.
76210
762112017-11-24  Stefan Monnier  <monnier@iro.umontreal.ca>
76212
76213	* lisp/macros.el (insert-kbd-macro): Recognize kmacros reliably
76214
76215	* lisp/macros.el (name-last-kbd-macro): Make it an alias of
76216	kmacro-name-last-macro.
76217	(insert-kbd-macro): Use kmacro-keyboard-macro-p so it also works for
76218	kmacros that fail to have a `kmacro' property.
76219	(see https://emacs.stackexchange.com/questions/37065, for an example).
76220
76221	* lisp/kmacro.el: Remove redundant :group args.
76222	(kmacro-insert-counter): Simplify.
76223	(kmacro-extract-lambda): Use car/cdr-safe.
76224	(kmacro-p, kmacro-keyboard-macro-p): New functions.
76225	(kmacro-name-last-macro): Use them.
76226
762272017-11-24  Daiki Ueno  <ueno@gnu.org>
76228
76229	Remove pinentry.el
76230
76231	* lisp/epg.el (epg--start): Remove the use of pinentry.el.
76232	* lisp/net/pinentry.el: Remove (bug#27445).
76233
762342017-11-24  Jaesup Kwak  <veshboo@gmail.com>  (tiny change)
76235
76236	Avoid unnecessary xwidget_view creations
76237
76238	* src/xwidget.c (x_draw_xwidget_glyph_string): Don't create new
76239	xwidget view if we have a usable one already.
76240
762412017-11-24  Alex Branham  <branham@utexas.edu>
76242
76243	More informative error when autosave file is not available
76244
76245	* lisp/files.el (recover-file): Distinguish in error messages
76246	between autosave file not existing and not being current.
76247	(Bug#29179)
76248
762492017-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
76250
76251	* lisp/simple.el (clone-buffer): Adjust `mark-ring'
76252
762532017-11-22  Eric Abrahamsen  <eric@ericabrahamsen.net>
76254
76255	Marked groups should always be visible in *Group* buffer
76256
76257	* lisp/gnus/gnus-group.el (gnus-group-prepare-flat): Check for the
76258	  mark in these two locations.
76259	* lisp/gnus/gnus-topic.el (gnus-topic-find-groups)
76260
762612017-11-22  Sam Steingold  <sds@gnu.org>
76262
76263	Use special-mode for read-only buffers.
76264
76265	* lisp/progmodes/etags.el (tags-table-mode): Define using
76266	`define-derived-mode', inheriting from `special-mode'.
76267	Not only the buffer is now read-only, but you can bury it with "q".
76268	(select-tags-table-mode): No need to set `buffer-read-only'
76269	explicitly, `special-mode' takes care of that.
76270	* lisp/vc/log-edit.el (log-edit-show-files): Use `special-mode'
76271	instead of setting `buffer-read-only' explicitly.
76272
762732017-11-22  Sam Steingold  <sds@gnu.org>
76274
76275	Remove variable alias executing-macro, obsolete since before 19.34.
76276
762772017-11-22  Sam Steingold  <sds@gnu.org>
76278
76279	Remove *-yank-hooks aliases for -citation-hook, obsolete since 19.34.
76280
76281	* lisp/simple.el (compose-mail): Use `mail-citation-hook'
76282	instead of `mail-yank-hooks'.
76283	* lisp/mail/sendmail.el (mail-yank-hooks): Remove.
76284	(mail-yank-original, mail-yank-region): Drop `mail-yank-hooks'.
76285	* lisp/mh-e/mh-letter.el (mh-yank-hooks): Remove.
76286	(mh-insert-prefix-string): Drop `mh-yank-hooks'.
76287
762882017-11-20  Phillip Lord  <phillip.lord@russet.org.uk>
76289
76290	Fix lower case installer name
76291
76292	* admin/nt/dist-build/build-zips.sh (build_installer):
76293
762942017-11-20  Eric Abrahamsen  <eric@ericabrahamsen.net>
76295
76296	Use message instead of gnus-message in gnus-summary-current-score
76297
76298	* lisp/gnus/gnus-score.el (gnus-summary-current-score): The only point
76299	  of this function is to display the score to the user, there's no
76300	  need to do gnus-message filtering.
76301
763022017-11-20  Phillip Lord  <phillip.lord@russet.org.uk>
76303
76304	Add date to snapshot file
76305
76306	* admin/nt/dist-build/build-zips.sh: Add date to all out files.
76307	* admin/nt/dist-build/emacs.nsi: Lower case and date installer.
76308
763092017-11-20  Alan Mackenzie  <acm@muc.de>
76310
76311	read_key_sequence: correct the handling of raw_keybuf in recursive calls
76312
76313	This fixes bug #29349.
76314
76315	* src/keyboard.c (raw_keybuf_buffer, raw_keybuf_count_buffer): New variables
76316	pointed to by ...
76317	(raw_keybuf, raw_keybuf_count): Variables converted to pointers.
76318	(GROW_RAW_KEYBUF): enhance with a length argument.
76319	(command_loop_1): Initialize the above two pointers to their canonical values.
76320
76321	(read_key_sequence): In recursive calls (for menus) the function was
76322	overwriting the raw event buffer of the outer call.  Correct this by
76323	introducing a local buffer for each level of call, and setting this up to be
76324	used by the call to read_char.  Any contents of this local buffer are appended
76325	to the global buffer afterwards.
76326
763272017-11-20  Glenn Morris  <rgm@gnu.org>
76328
76329	Merge from origin/emacs-26
76330
76331	fc5b8f1 Fix Bug#29149
76332	5622b2e Merge branch 'emacs-26' of git.sv.gnu.org:/srv/git/emacs into...
76333	4da8799 (emacs-26) Fix misbehavior when drawing three-pixel high hori...
76334	1b082c8 MH-E: don't automatically download external-body parts
76335	069f978 ; * lisp/emacs-lisp/byte-run.el: Fix a typo in a comment.
76336	504a56c ; Fix last commit
76337	a34e44e ; Fix last commit
76338	a8892b4 Further fix for Bug#29291
76339	d14923b Fix divider frame params on NS (bug#29352)
76340	b2518ac Spelling fixes
76341
76342	# Conflicts:
76343	#	etc/NEWS
76344	#	test/lisp/net/tramp-tests.el
76345
763462017-11-20  Glenn Morris  <rgm@gnu.org>
76347
76348	Merge from origin/emacs-26
76349
76350	6e6bf60 Don't let delete_frame select a tooltip frame (Bug#27647)
76351	e9dd580 Filter obtrusive events in help-read-key-sequence.
76352	90075e8 Fix symlink flag in tramp-gvfs-handle-file-attributes
76353	c355529 Fix bug in tramp-handle-file-truename
76354	4c21d04 Fix a typo in doc string of electric-indent-functions-without...
76355	319c2de Avoid assertion violations in echo_area_display
76356	63c7733 ; * lisp/ido.el (ido-find-alternate-file): Doc fix.  (Bug#29278)
76357	cbd319a Fix case-folding in Occur
76358	29520b0 Fix quick-calc in C mode with hex values
76359	3e80124 Improve documentation of dired-next/prev-marked-file
76360	90add18 Prevent aborts in line-move-visual
76361	648c128 More fixes in src/.gdbinit
76362	104f3e5 Document how to enter whitespace when using grep-read-files
76363
763642017-11-20  Glenn Morris  <rgm@gnu.org>
76365
76366	Merge from origin/emacs-26
76367
76368	42c8768 Fix .gdbinit following lisp.h changes
76369	720322a ; Spelling fixes
76370	617c556 * lisp/simple.el (shell-command): Doc fixes.
76371	1faade8 Fix marker adjustment for undo (Bug#29118)
76372
763732017-11-20  Stefan Monnier  <monnier@iro.umontreal.ca>
76374
76375	* lisp/erc/erc-services.el: Use lexical-binding
76376
763772017-11-20  Olaf Rogalsky  <olaf.rogalsky@t-online.de>  (tiny change)
76378
76379	* src/keyboard.c: Make xterm-mouse clicks on mode-line work
76380
76381
76382	(read_key_sequence): Recompute first_event
76383	after replay_sequence, since it might have changed (bug#29104).
76384
763852017-11-19  Johan Bockgård  <bojohan@gnu.org>
76386
76387	copyright.el: Avoid inadvertent point motion
76388
76389	* lisp/emacs-lisp/copyright.el (copyright-update-year): Enlarge the
76390	scope of save-excursion. Reported in:
76391	https://lists.gnu.org/archive/html/emacs-devel/2017-04/msg00271.html
76392
763932017-11-19  Vibhav Pant  <vibhavp@gmail.com>
76394
76395	lisp/erc/erc-services.el: Fix arg eval order of inline functions.
76396
76397	* lisp/erc/erc-services.el (erc-nickserv-alist-sender,
76398	  erc-nickserv-alist-regexp, erc-nickserv-alist-nickserv,
76399	  erc-nickserv-alist-ident-keyword, erc-nickserv-alist-use-nick-p,
76400	  erc-nickserv-alist-ident-command,
76401	  erc-nickserv-alist-identified-regexp): Use `inline-letevals' to make
76402	  sure that `network' is evaluated first and independently of `entry'.
76403
764042017-11-18  Eric Abrahamsen  <eric@ericabrahamsen.net>
76405
76406	Further fixes to writing of object names
76407
76408	Pursuant to 1ef6d2b0e6
76409
76410	* lisp/emacs-lisp/eieio.el (object-write): Only write the name in the
76411	  comment when the comment's also present. Newline should only be
76412	  printed if the name is.
76413
764142017-11-18  Vibhav Pant  <vibhavp@gmail.com>
76415
76416	Reimplement inline functions in ERC with define-inline.
76417
76418	* lisp/erc/erc-backend.el: (erc-server-reconnect-p): Reimplement using
76419	  define-inline.
76420
76421	* lisp/erc/erc-dcc.el: (erc-dcc-unquote-filename, erc-dcc-get-parent):
76422	  Reimplement using define-inline.
76423
76424	* lisp/erc/erc-services.el: (erc-nickserv-alist-sender,
76425	  erc-nickserv-alist-regexp, erc-nickserv-alist-nickserv,
76426	  erc-nickserv-alist-ident-keyword, erc-nickserv-alist-use-nick-p,
76427	  erc-nickserv-alist-ident-command,
76428	  erc-nickserv-alist-identified-regexp): Reimplement using define-inline.
76429
76430	* lisp/erc/erc.el: (erc-get-channel-user, erc-get-server-user,
76431	  erc-add-server-user, erc-remove-server-user, erc-channel-user-owner-p,
76432	  erc-channel-user-admin-p, erc-channel-user-op-p,
76433	  erc-channel-user-halfop-p, erc-channel-user-voice-p, erc-log):
76434	  Reimplement using define-inline.
76435
764362017-11-17  Phillip Lord  <phillip.lord@russet.org.uk>
76437
76438	Rebrand Uninstaller
76439
76440	* admin/nt/dist-build/emacs.nsi: Add MUI_UNICON
76441
764422017-11-17  Phillip Lord  <phillip.lord@russet.org.uk>
76443
76444	Fix install location for windows installer
76445
764462017-11-15  Phillip Lord  <phillip.lord@russet.org.uk>
76447
76448	Rebrand Windows installer
76449
76450	 * admin/nt/dist-build/emacs.nsi: Use two icons.
76451	 * etc/images/splash.bmp,etc/images/icons/hicolor/scalable/apps/emacs.ico:
76452	   New files.
76453
764542017-11-14  Glenn Morris  <rgm@gnu.org>
76455
76456	Merge from origin/emacs-26
76457
76458	796c7f7 (origin/emacs-26) ; Fix last fix of 'mouse-drag-and-drop-region'
76459	40d41dd (emacs-26) Fix Bug#28139
76460	a5ec644 Fix Bug#29291
76461	8b900e5 Fix Bug#2928
76462	ff7bd84 Make 'mouse-drag-and-drop-region' work with 'mouse-autoselect...
76463	0491de8 * etc/PROBLEMS: Remove fixed xterm-mouse-mode problems
76464	caa39f4 Fix cookie handling (bug#29282)
76465	93304e3 Improve documentation of Edebug and macros
76466
764672017-11-13  Eric Abrahamsen  <eric@ericabrahamsen.net>
76468
76469	Fix name of gnus-summary-sort-by-mark(s)
76470
76471	* lisp/gnus/gnus-sum.el (gnus-summary-sort-by-marks): Needs the
76472	  "s", according to docs and keymap both.
76473
764742017-11-13  Paul Eggert  <eggert@cs.ucla.edu>
76475
76476	Merge from origin/emacs-26
76477
76478	79108894db Port to IBM xlc 12.01
76479	d14956099d Simplify by removing HAVE_STRUCT_ATTRIBUTE_ALIGNED
76480	b1573a97e1 Use alignas to fix GCALIGN-related bugs
76481	5d68dc9a2f Change vectorlike from struct to union
76482	6aa0a26b46 Don't enable cursor-sensor-mode in mhtml-mode
76483	2b8ef8dddf * lisp/files.el (abbreviate-file-name): Doc fix.  (Bug#29267)
76484	fe85ce1e16 Unbreak interactive run of a flymake test (bug#29267)
76485	48ad00390d Fix Bug#29225
76486	42daf83f08 CC Mode: Fix defun-open being recognized as brace-list-ope...
76487	7775c47298 Merge from Gnulib
76488	e470d16448 Pacify GCC when configured --with-x-toolkit=no
76489	49450d0951 * lisp/find-dired.el (find-grep-dired): Doc fix.  (Bug#29262)
76490	e286b3381f Fix more flymake-diag-region eob corner cases and add test...
76491
76492	# Conflicts:
76493	#	src/lisp.h
76494
764952017-11-13  Stefan Monnier  <monnier@iro.umontreal.ca>
76496
76497	* lisp/gnus/gnus-srvr.el: Avoid custom-set-variables
76498
76499	* lisp/gnus/gnus-srvr.el (gnus-server-toggle-cloud-method-server):
76500	Prefer customize-set-variable.
76501
765022017-11-11  Basil L. Contovounesios  <contovob@tcd.ie>
76503
76504	Rename Man-build-section-alist (bug#28998)
76505
76506	The defsubst Man-build-section-alist builds and returns a list of
76507	strings, so rename it to Man-build-section-list and make it a defun.
76508
76509	* lisp/man.el (Man-build-section-alist): Do it and reduce syntax.
76510	(Man-goto-page):
76511	* lisp/woman.el (woman-find-file): Use it.
76512
765132017-11-10  Eric Abrahamsen  <eric@ericabrahamsen.net>
76514
76515	Provide more control over writing of objects in object-write
76516
76517	* lisp/emacs-lisp/eieio.el (eieio-print-indentation,
76518	  eieio-print-object-name): New variables controlling whether an
76519	  object name is printed for each object, and whether an object's
76520	  contents are indented or not. Object names are obsoleted; omitting
76521	  indentation reduces the size of persistence files.
76522
765232017-11-08  Paul Eggert  <eggert@cs.ucla.edu>
76524
76525	Merge from origin/emacs-26
76526
76527	9e59de9449 Use GCALIGNED properly for GCC
76528	b9d7c90260 In f90.el, set fill-paragraph-function to a useful value
76529
76530	# Conflicts:
76531	#	src/lisp.h
76532
765332017-11-08  Paul Eggert  <eggert@cs.ucla.edu>
76534
76535	Merge from origin/emacs-26
76536
76537	6c3031399b * admin/gitmerge.el (gitmerge-resolve-unmerged): Fix doc t...
76538	98288ecaff Further workaround for faulty localtime() under macOS 10.6
76539
765402017-11-08  Paul Eggert  <eggert@cs.ucla.edu>
76541
76542	Merge from origin/emacs-26
76543
76544	255ba01148 Fix handling of nil PRED2 arg for completion-table-with-pr...
76545	949b70a7d8 ; Minor comment copyedit in window.c
76546	20f9bf30f0 Describe Lao rendering problem
76547	3d61657694 Fix docstring of arabic-shaper-ZWNJ-handling
76548	db949166ec Handle single-line comments correctly (Bug#26049)
76549	795bb233a5 * test/lisp/net/tramp-tests.el (tramp-test16-file-expand-w...
76550	ba00ea7d0d * etc/PROBLEMS: Add URL to relevant issues for xterm+evil bug
76551	4a6015811e ; In text.texi fix typo spotted by Štěpán Němec
76552	93cd8415b2 Document new treatment of 'comment-auto-fill-only-comments'
76553	ca2d94ba61 Do not load Tramp unless `tramp-mode' is non-nil
76554	709478eaa8 Prefer `customize-set-variable' in tramp.texi
76555	5d36f2227f Fix last change in hscroll_window_tree
76556	72d07d1950 Ediff: add some missing documentation
76557	18af404ef3 Support python virtualenv on w32 (Bug#24464)
76558	efd0371c23 Improve dired deletion error handling (Bug#28797)
76559	5d744e032f Don't replace user input when completion prefix is empty (...
76560	ec6cf35c5f ; Describe xt-mouse problems with Evil mode
76561	c572e1f329 Return non-nil from gnutls-available-p under GnuTLS 2.x
76562	a2cc6d74c5 Fix Flymake help-echo functions across windows (bug#29142)
76563	58bb3462ee Add tests for Flymake backends for Ruby and Perl
76564	58e742b21d Add a Flymake backend for Perl
76565	9dee764165 Add a Flymake backend for Ruby
76566	3ad712ebc9 Add a Flymake backend for Python (bug#28808)
76567	8db2b3a79b Allow "%" in Tramp host names
76568	8c50842790 ; Fix typo in test/file-organization.org
76569	00fa4449cd ; Fix typo
76570	918a2dda07 Use hybrid malloc for FreeBSD (Bug#28308)
76571	725ab635d9 Add html-, mhtml- and python-mode support to semantic symref
76572	369da28702 Improve documentation of 'window-scroll-functions'
76573	93818eed8a Fix subtle problems in tabulated-list-mode with line numbers
76574	1f1de8e872 Make gdb-non-stop-setting default to nil on MS-Windows
76575	680e8e119b Fix gdb-mi prompt after "attach PID" command
76576	ff33074546 Fix doc string of 'window-configuration-change-hook'
76577	787b75ad71 Improve documentation of window hooks
76578	d9be8704ae Fix hscroll suspension after cursor motion
76579	6f43d29d29 ; * CONTRIBUTE, admin/make-tarball.txt: Doc tweaks re 'ema...
76580	a0d30d6369 Introduce a function to CC Mode which displays the current...
76581	383abc8898 ; Fix some comment typos
76582	b02c2714c3 Fix typos in ediff-wind.el
76583	4f38bdec74 Examine tex-chktex--process in the correct buffer
76584	94b490529a * nt/INSTALL.W64: Update to current mingw64 install instru...
76585	c25113d4ac Don't resignal errors in flymake-diag-region
76586	e950f329c0 New xref-quit-and-goto-xref command bound to TAB (bug#28814)
76587	5d34e1b288 Allow split-window-sensibly to split threshold in further ...
76588	2a973edeac Honor window-switching intents in xref-find-definitions (b...
76589	78e9065e9f * lisp/emacs-lisp/generator.el (iter-do): Add a debug decl...
76590	caa63cc96c * lisp/progmodes/flymake.el (flymake-start): Fix dead buff...
76591	9f4f130b79 Fix buffer name comparison in async shell-command
76592
76593	# Conflicts:
76594	#	etc/NEWS
76595	#	lisp/vc/ediff-wind.el
76596
765972017-11-07  Stefan Monnier  <monnier@iro.umontreal.ca>
76598
76599	* lisp/net/tramp-cmds.el, lisp/allout.el: Avoid custom-set-variables
76600
76601	* lisp/net/tramp-cmds.el (tramp-change-syntax):
76602	* lisp/allout.el (allout-init): Avoid custom-set-variables.
76603
766042017-11-07  John Mastro  <john.b.mastro@gmail.com>
76605
76606	Increase DUMPED_HEAP_SIZE in w32heap.c
76607
76608	* src/w32heap.c (DUMPED_HEAP_SIZE) [_WIN64 || WIDE_EMACS_INT]: Bump
76609	up DUMPED_HEAP_SIZE to 22 MiB.  (Bug#29180)
76610
766112017-11-07  Stefan Monnier  <monnier@iro.umontreal.ca>
76612
76613	* lisp/minibuffer.el: Put completions-common-part on all common parts
76614
76615	(completion-pcm--pattern-point-idx): New function.
76616	(completion-pcm--hilit-commonality): Use it.
76617	Put completions-common-part on all the common parts.
76618
766192017-11-07  Stefan Monnier  <monnier@iro.umontreal.ca>
76620
76621	* lisp/filecache.el: Use lexical-binding.  Simplify.
76622
76623	Remove redundant :group args, use with-tmep-buffer and let
76624	completion-all-completions do its work.
76625
76626	(file-cache-minibuffer-complete): Skip `completion-hilit-commonality`
76627	since `completion-all-completions' already hilighted its output.
76628	Call our setup function directly rather than via `completion-setup-hook`.
76629	(file-cache-buffer): Remove variable.
76630	(file-cache-buffer-default-regexp): Make it a defvar.
76631	(file-cache--add-from-buffer): Rename from
76632	file-cache-add-from-file-cache-buffer and use current-buffer and
76633	match-string-no-properties.
76634	(file-cache-add-directory-using-find)
76635	(file-cache-add-directory-using-locate): Adjust accordingly and use
76636	with-temp-buffer.
76637
766382017-11-07  Chris Feng  <chris.w.feng@gmail.com>
76639
76640	Handle unread-command-events consistently (bug#23980)
76641
76642	* src/keyboard.c (read_char): Events put into `unread-command-events'
76643	with the form (t . EVENT) should always have the t stripped when read
76644	out.
76645	* test/src/keyboard-tests.el: New tests for `unread-command-events'.
76646
766472017-11-07  Sam Steingold  <sds@gnu.org>
76648
76649	Mark flymake-diagnostic-functions as save to set locally to nil.
76650
76651	* lisp/progmodes/flymake.el (flymake-diagnostic-functions): Set
76652	`safe-local-variable' property to `null'.
76653	Now one can disable flymake-mode locally in a file by setting
76654	`flymake-diagnostic-functions' to nil, see `(Emacs)File Variables'.
76655
766562017-11-06  Juri Linkov  <juri@linkov.net>
76657
76658	Override possible change of next-error-last-buffer in next-error-function
76659
76660	* lisp/simple.el (next-error, next-error-internal):
76661	Setq next-error-last-buffer after next-error-function call.
76662	(Bug#28864)
76663
766642017-11-05  Phillip Lord  <phillip.lord@russet.org.uk>
76665
76666	Add support for Windows installer build
76667
76668	* etc/images/slash.bmp:
76669	* admin/nt/dist-build/emacs.nsi: New files
76670	* admin/nt/dist-build/build-zips.sh: Support building installer
76671
766722017-11-04  Andreas Politz  <politza@hochschule-trier.de>
76673
76674	Make filecache use extended completion
76675
76676	* lisp/filecache.el (file-cache-minibuffer-complete): Use
76677	completion-try-completion and completion-all-completions.
76678
76679	* etc/NEWS: Add news entry.
76680
766812017-11-04  Eli Zaretskii  <eliz@gnu.org>
76682
76683	Allow 'make-string' callers force creation of multibyte strings
76684
76685	* src/alloc.c (Fmake_string): Accept additional argument
76686	MULTIBYTE, and produce a multibyte string if it is non-nil.
76687	(make_event_array):
76688	* src/lread.c (read0):
76689	* src/editfns.c (Ftranslate_region_internal):
76690	* src/coding.c (Fdefine_coding_system_internal):
76691	* src/cmds.c (internal_self_insert):
76692	* src/xdisp.c (build_desired_tool_bar_string)
76693	(store_mode_line_string): All C callers changed.
76694
76695	* doc/lispref/strings.texi (Creating Strings): Document the new
76696	optional argument.
76697
76698	* etc/NEWS: Mention the new optional argument.
76699
76700	* lisp/ruler-mode.el (ruler-mode-ruler): Call make-string with the
76701	3rd argument non-nil.
76702
767032017-11-04  Łukasz Jędrzejewski  <jedrzejewskiluk@gmail.com>  (tiny change)
76704
76705	Extract user from host when searching for entries in auth-source-pass
76706
76707	* lisp/auth-source-pass.el (auth-source-pass--user): New function.
76708	(auth-source-pass--find-match): Use it.  When the user is not
76709	explicitly specified and no entry is found, extract the user from
76710	the host and then search again.  (Bug#29045)
76711	* test/lisp/auth-source-pass-tests.el
76712	(auth-source-pass-find-match-matching-extracting-user-from-host):
76713	Add a new test case.
76714
767152017-11-03  Sam Steingold  <sds@gnu.org>
76716
76717	Finish the Bug#11728 work: hg & git
76718
76719	* lisp/vc/vc-git.el (vc-git--pushpull): Make `extra-args' a list.
76720	Do not set `compilation-error-regexp-alist', this is done in
76721	`vc-compilation-mode'.
76722	(vc-git-error-regexp-alist): Tweak the regexp.
76723	* lisp/vc/vc-hg.el (vc-hg-error-regexp-alist): Make non-trivial.
76724	(vc-hg--pushpull): Accept `post-processing' argument.
76725	Call them after the `command'.
76726	(vc-hg-pull): Pass the `post-processing' commands that show which
76727	are to be modified by the `update', and then run `update'.
76728
767292017-11-03  Sam Steingold  <sds@gnu.org>
76730
76731	Add colors to faces that lack them.
76732
76733	(gnus-group-news-X-empty): Add colors for X=3,4,5.
76734
767352017-11-03  Robert Pluim  <rpluim@gmail.com>
76736
76737	New function 'libxml-available-p'
76738
76739	* src/emacs.c (main): Call syms_of_xml unconditionally.
76740	* src/lisp.h: Provide syms_of_xml prototype even when
76741	HAVE_LIBXML2 is not defined.
76742	* src/xml.c (Flibxml_available_p): New function, cloned from
76743	Fgnutls_available_p.
76744	(syms_of_xml): Provide Slibxml_available_p.
76745
76746	* doc/lispref/text.texi (Parsing HTML/XML): Document libxml-available-p.
76747	(GnuTLS Cryptography, Format of GnuTLS Cryptography Inputs)
76748	(Document Object Model): Fix indentation of the first paragraph.
76749
76750	* etc/NEWS (libxml-available-p): Mention libxml-available-p.
76751
767522017-11-03  Paul Eggert  <eggert@cs.ucla.edu>
76753
76754	Merge from origin/emacs-26
76755
76756	c911b27 Change GCALIGNMENT back to an integer literal
76757
767582017-11-02  Paul Eggert  <eggert@cs.ucla.edu>
76759
76760	Simplify by assuming !_MSC_VER.
76761
76762	Emacs has not been portable to MSVC for some time (Bug#29040#57).
76763	* admin/CPP-DEFINES (_MSC_VER): Remove.
76764	* src/lisp.h (ENUM_BF, DEFUN):
76765	* src/regex.c (re_char):
76766	Simplify by assuming _MSC_VER is not defined.
76767	* src/regex.c (const_re_char): Remove.
76768	All uses replaced by re_char.
76769
767702017-11-02  Paul Eggert  <eggert@cs.ucla.edu>
76771
76772	* etc/NEWS.26: Copy from emacs-26/etc/NEWS.
76773
767742017-11-02  Paul Eggert  <eggert@cs.ucla.edu>
76775
76776	Merge from origin/emacs-26
76777
76778	a87ce5c4b4 * src/lisp.h (GCALIGNED): Clarify comment (Bug#29040).
76779	8a31e9993f ; etc/NEWS: Add cpp-message-min-time-interval.  (Bug#28961)
76780	ac0bb9a192 Improve the doc of eshell-cmpl-* custom variables (Bug#25069)
76781	36400c7dc9 Fix mouse-scrollbar offset on GNUstep and old macOS (bug#2...
76782	04bc1410c2 Merge from Gnulib
76783	6b08ad5263 Fix alignment portability problems
76784	a9f8706fa8 Fix completion of colon after CSS property (Bug#29056)
76785	9031dec527 ; * src/alloc.c (sweep_symbols): Fix last change.
76786	fdd3dcfa4e * src/alloc.c (sweep_symbols): Tweak last change
76787	27964af438 In frame parameters documentation mention desktop saving/r...
76788	1bd4e7c243 ; Fix typo in ChangeLog.3
76789	4182a60d31 Don't have frameset save the 'client' parameter (Bug#29067)
76790	9d31a97092 ; Spelling fixes
76791	460a25f212 Handle generic variables in cl-defgeneric Edebug spec
76792	dc0a25c2f9 Give a more sensible message if file-attributes fails (Bug...
76793	8453423c7c Avoid wrong value from file-attributes on Linux kernel bef...
76794	70621e2571 Fix customization of debugger-print-function (Bug#29077)
76795
76796	# Conflicts:
76797	#	etc/NEWS
76798
767992017-11-02  Paul Eggert  <eggert@cs.ucla.edu>
76800
76801	Merge from origin/emacs-26
76802
76803	460fe4a1bc ; Doc fixes
76804	41adf3281e Avoid duplicate calls to xfree for the same pointer
76805	3e7ebbe1bd Don't clobber docstrings of explicitly-defined mode hook v...
76806	9c8fe0248b Avoid fullscreen ediff control frames by default (Bug#29026)
76807	7d32176acc Fix the bug#24034 change (revno 9eb028f) causing infloop (...
76808	ee493663ba Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
76809	ca5eb0d0b7 Fix a typo in the ELisp manual
76810	d10c9479ca Fix doc and doc-strings for minibuffer window related func...
76811	18331d00da Fix "Args out of range" error in c-determine-limit.  Fixes...
76812	edde35e6f8 * lisp/progmodes/perl-mode.el: Fix electric indentation wi...
76813	056587c45f Extend mhtml submode region when in comment
76814	4c4ad80848 Fix mthml submode lighting at end of buffer
76815	557e252aa2 Remember more variables in mhtml-mode
76816	336cd0a11a ; * lisp/select.el (select-enable-primary): Add missing pe...
76817	134099bc90 ; * etc/NEWS (EUDC): Mark as not requiring documentation.
76818	1a340274bf * etc/NEWS (EUDC): Deprecate BBDB 2.x backward compatibility.
76819	4189d0ef7b Fix minibuffer window related docs and strings (Bug#28978)
76820	2ebdde6e9c Add ChkTeX flymake backend for latex-mode
76821	5b59841791 Fix doc typos
76822	82a16c547b Fix some duplicate word typos
76823	266888b1d7 * doc/lispref/commands.texi (Adjusting Point): Fix wording...
76824	00c3c6d88d Avoid segfaults in 64-bit Windows builds
76825	a8e6741066 Fix conversion of pixel coordinates to buffer position
76826	d43b486f6c Fix doc strings in desktop.el
76827	9102fb603e Add Index to ERT manual
76828	68182a4710 Make manuals and NEWS consistent
76829	451823b0e5 Don't allow (minibuffer-window-active-p nil) to return t
76830	cc8f72ca22 Clarify obsolescence message for 'whitespace-tab'
76831	50f711e7fa Fix some duplicate words typos
76832	8bd9524a7c * lisp/button.el (button-activate): Fix doc typo.
76833	0b0d91e60a * lisp/calendar/todo-mode.el (todo-toggle-mark-item): Fix ...
76834	e6b4e5ffdf Fix some doc typos
76835	e8636ac8cc Fix startup display on Cygwin
76836	3926c5ad83 * src/fileio.c (Fset_default_file_modes): Fix typo in doc ...
76837	9715317dfd * lisp/dired.el (dired-find-alternate-file): Doc fix.  (Bu...
76838	9e442a001a Improve documentation of how faces are applied to display ...
76839	1bda71ec3b Improve pixel-scroll-mode
76840	196106d37d Support Certification Authority Authorization in dns-mode.el
76841	ec08d70b4f Improve documentation of set-default-file-modes
76842
76843	# Conflicts:
76844	#	etc/NEWS
76845
768462017-11-02  Paul Eggert  <eggert@cs.ucla.edu>
76847
76848	Merge from origin/emacs-26
76849
76850	7f089aa5f6 Require seq in rmc.el
76851	53aaad1dfc Make an example code introduced in the Gnus info work (bug...
76852	7b29db222f Enable gnus-read-ephemeral-* to run multiple times (bug#29...
76853	015f0bb2d8 Port thread.c to OpenBSD ARM
76854	ad68bbd0da Fix another "wrong side of point" error in CC Mode.
76855	646e56e150 Fix Bug#28959
76856	685fd77959 Fix duplicate .o file on QNX
76857	e562356c3f Fix two js indentation problems
76858	b8cf159bbc Update documentation for windows build
76859	46540a1c7a Fix a "wrong side of point" error in CC Mode.  Fixes bug #...
76860	57ca409111 Fix autoload of flymake from elisp-mode during bootstrap (...
76861	aee0bc8775 Fix non-native fullscreen on NS (bug#28872)
76862	d6c1a9cb8a ; Fix author email address in test/lisp/url/url-tramp-test...
76863	761c630766 Fix Bug#28982
76864	628b653209 Fix windows build errors
76865	e8a06a5f9a Fix compile warning for non-w32 builds
76866	0c536a20fb Display commit in package description, if available (Bug#2...
76867	1d83257a1d Port to QNX
76868	19667f44ef * configure.ac: Tweak libcurses diagnostic.
76869	3fc05cfaec Scripts to automate windows binary distribution
76870	928a106939 Fix Edebug specs for map-let and with-maps-do
76871	46f2ee0d4c * test/lisp/net/tramp-tests.el (tramp-test41-delay-load): ...
76872	b51009d7f0 * admin/authors.el (authors-canonical-author-name): Ignore...
76873	a015db90e3 * test/lisp/progmodes/sql-tests.el (sql-tests-postgres-lis...
76874	529a9c09d3 Further work on Bug#28889
76875	c6deabaf4d Improve Tramp backward compatibility
76876	8093e82e42 Improve backward compatibility of tramp-tests.el
76877	46cdc01daa Fix some ‘window-normalize-’ prefixed functions (Bug#28947)
76878	6360611457 Port to OpenIndiana
76879	a012ec766c Don't fill keywords after Emacs Lisp docstring
76880	b7c4aa951c Refactor c-forward-token-2 with new function c-forward-ove...
76881	3aee7be62e Avoid unnecessary rounding errors in timestamps
76882	2bfa42855b Fix xdg timestamp error on 32-bit Emacs
76883	237e96bc52 Test that advice doesn't trigger bytecomp warnings (Bug#28...
76884	d719ea6ad5 Another fix for unsafe directory error message (Bug#865)
76885	b060e091c3 Handle https url for debbugs mbox (Bug#28831)
76886	9e4265ef91 Ignore string properties when saving eshell history (Bug#2...
76887	0f286ca85a Fix Bug#28889
76888
768892017-11-02  Stefan Monnier  <monnier@iro.umontreal.ca>
76890
76891	* lisp/gnus/gnus.el: Use lexical-binding and cl-lib
76892
76893	Remove unneeded use of `eval-when' for gnus-splash hack.
76894	(gnus-find-subscribed-addresses): Don't use `add-to-list' with local var.
76895	(gnus-info-buffer): Declare var.
76896	(gnus-interactive): Remove unused arg `params'.
76897	(gnus-symbolic-argument): Remove unused arg `arg`.
76898	(gnus-sloppily-equal-method-parameters): Use \' to match end of string.
76899	(gnus-short-group-name): Remove unused var `name'.
76900
769012017-11-02  Sam Steingold  <sds@gnu.org>
76902
76903	make all related faces inherit from each other
76904
76905	* lisp/gnus/gnus.el (gnus-group-A-B): Inherit from `gnus-group-A-B-empty',
76906	where "A" is "mail" and "news" and "B" is "1".."6" and "low".
76907	(gnus-summary-high-A, gnus-summary-low-A): Inherit from
76908	`gnus-summary-normal-A', where "A" is "ticked", "ancient",
76909	"undownloaded", "unread", "read".
76910
769112017-11-01  Sam Steingold  <sds@gnu.org>
76912
76913	Fix Bug#11728: show files updated by git
76914
76915	* lisp/vc/vc-git.el (vc-git--pushpull): Accept extra-args and set
76916	`compilation-error-regexp-alist' to `vc-git-error-regexp-alist'.
76917	(vc-git-pull): Pass "--stat" as `extra-args' to `vc-git--pushpull'.
76918	(vc-git-push): Pass "" as `extra-args' to `vc-git--pushpull'.
76919
769202017-11-01  Michael Heerdegen  <michael_heerdegen@web.de>
76921
76922	* lisp/emacs-lisp/thunk.el: Assert lexical-binding
76923
76924	This fixes Bug#28990.  Also add a note to the file header that
76925	creating thunks requires lexical-binding.
76926	(thunk-delay): `cl-assert' lexical-binding.
76927
769282017-11-01  Sam Steingold  <sds@gnu.org>
76929
76930	User can specify files never subject to flymake.
76931
76932	* lisp/progmodes/flymake-proc.el (flymake-proc-ignored-file-name-regexps):
76933	Add user customization option.
76934	(flymake-proc--get-file-name-mode-and-masks): Check it before
76935	`flymake-proc-allowed-file-name-masks'.
76936
769372017-10-31  Sam Steingold  <sds@gnu.org>
76938
76939	The user can now specify the time stamp format.
76940
76941	* lisp/textmodes/remember.el (remember-time-format): New user variable.
76942	(remember-append-to-file): Pass it to `format-time-string' instead of
76943	calling `current-time-string'.
76944
769452017-10-31  Sam Steingold  <sds@gnu.org>
76946
76947	Highlight CL `with-' (context) and `do-' (iteration)
76948
76949	* lisp/emacs-lisp/lisp-mode.el (lisp-cl-font-lock-keywords-2):
76950	Highlight the Common Lisp conventional names as described in
76951	http://www.cliki.net/Naming+conventions.
76952	(lisp-el-font-lock-keywords-2): Remove the already commented out
76953	code for `do-' and `with-' because Emacs Lisp does not have a similar
76954	convention.
76955
769562017-10-31  Sam Steingold  <sds@gnu.org>
76957
76958	Highlight uninterned symbols.
76959
76960	* lisp/emacs-lisp/lisp-mode.el (lisp-cl-font-lock-keywords-2):
76961	Highlight uninterned symbols, often used as string designators to
76962	avoid namespace pollution (https://stackoverflow.com/a/46981940/850781).
76963
769642017-10-30  Stefan Monnier  <monnier@iro.umontreal.ca>
76965
76966	* lisp/progmodes/ebnf2ps.el: Use lexical-binding; fix warnings
76967
76968	(ebnf-eps-executing): Declare var.
76969	(ebnf-eps-string): Clarify regexp; don't use string-as-unibyte since we're
76970	manipulating chars rather than bytes.
76971	(ebnf-tree): Move declaration before first use.
76972	(ebnf-generate-eps, ebnf-generate): Don't use dyn-var as argument.
76973	(ebnf-generate-eps): Use cl-letf and unwind-protect.
76974	(ebnf-eps-production-list): Get a ref rather than a symbol.
76975	(ebnf-generate-eps): Adjust call accordingly.
76976
769772017-10-30  Stefan Monnier  <monnier@iro.umontreal.ca>
76978
76979	* lisp/net/newst-backend.el: Use lexical scoping and fix warnings
76980
76981	(newsticker-stop, newsticker-get-all-news)
76982	(newsticker--decode-rfc822-date, newsticker--lists-intersect-p)
76983	(newsticker--update-process-ids, newsticker--cache-read)
76984	(newsticker-opml-export, newsticker--run-auto-mark-filter)
76985	(newsticker--do-run-auto-mark-filter): Use dolist.
76986	(newsticker--insert-bytes): New function, to avoid string-to-multibyte.
76987	(newsticker--get-news-by-funcall, newsticker--get-news-by-url-callback)
76988	(newsticker--image-download-by-url-callback): Use it.
76989	(newsticker--parse-rss-0.91, newsticker--parse-rss-0.92):
76990	Remove unused var `pub-date`.
76991	(newsticker--parse-generic-feed): Remove unused var `old-item`.
76992	(newsticker--parse-generic-items): Use dolist and let rather than mapc
76993	and setq.
76994	(newsticker--image-download-by-url-callback): Simplify boolean expression.
76995
769962017-10-30  viniciusjl  <viniciusjl.gnu@gmail.com>
76997
76998	Remove last entry.
76999
770002017-10-29  viniciusjl  <viniciusjl.gnu@gmail.com>
77001
77002	Email replacement.
77003
770042017-10-28  Paul Pogonyshev  <pogonyshev@gmail.com>
77005
77006	Add 'ert-quiet' variable
77007
77008	* lisp/emacs-lisp/ert.el (ert-quiet): New variable.
77009	(ert-run-tests-batch): When 'ert-quiet' is non-nil, don't
77010	print non-important information.  (Bug#29025)
77011
77012	* doc/misc/ert.texi (Running Tests in Batch Mode): Document it.
77013
77014	* etc/NEWS: Mention the new variable.
77015
770162017-10-27  Ulf Jasper  <ulf.jasper@web.de>
77017
77018	Fix documentation of `newsticker-new-item-functions' (bug#29023).
77019
77020	* lisp/net/newst-backend.el (newsticker-new-item-functions),
77021	(newsticker-new-item-functions-sample),
77022	(newsticker-download-enclosures): Fix docstring, rename
77023	variable feed to feedname (bug#29023).
77024
77025	* doc/misc/newsticker.texi (Automatic Processing)
77026	(Automatic Processing): Fix documentation of
77027	`newsticker-new-item-functions' (bug#29023).
77028
770292017-10-26  Stefan Monnier  <monnier@iro.umontreal.ca>
77030
77031	* lisp/vc/ediff-wind.el: Don't pop spurious frame in corner case
77032
77033	(ediff-setup-windows-multiframe-compare): Clarify control-flow.
77034	Postpone the initial call to ediff-skip-unsuitable-frames until we're
77035	sure it's needed to avoid creating a spurious new frame.
77036	(ediff-setup-windows, ediff-setup-windows-plain)
77037	(ediff-setup-windows-plain-merge, ediff-setup-control-frame)
77038	(ediff-setup-windows-plain-compare, ediff-setup-windows-multiframe)
77039	(ediff-setup-windows-multiframe-merge): Use with-current-buffer.
77040
770412017-10-26  Lars Ingebrigtsen  <larsi@gnus.org>
77042
77043	Fix up svg text encoding
77044
77045	* lisp/svg.el (svg--encode-text): The SVG driver doesn't like
77046	it if we use &apos; for apostrophe, so use our own encoding
77047	function instead of relying on the xml one.
77048
770492017-10-26  Anders Lindgren  <andlind@gmail.com>
77050
77051	New package, `faceup'
77052
77053	`faceup' is a framework for regression testing of font-lock
77054	keywords in ert.  It is based on a human-readable markup
77055	language.  (Bug#16063 and bug#28311).
77056
77057	* lisp/emacs-lisp/faceup.el:
77058	* test/lisp/emacs-lisp/faceup-tests/faceup-test-basics.el:
77059	* test/lisp/emacs-lisp/faceup-tests/faceup-test-files.el:
77060	* test/lisp/emacs-lisp/faceup-resources/faceup-test-mode.el:
77061	* test/lisp/emacs-lisp/faceup-resources/faceup-test-this-file-directory.el:
77062	* test/lisp/emacs-lisp/faceup-resources/files/test1.txt:
77063	* test/lisp/emacs-lisp/faceup-resources/files/test1.txt.faceup:
77064	New files.
77065
770662017-10-25  Stefan Monnier  <monnier@iro.umontreal.ca>
77067
77068	Fix misleading error during autoload (bug#28994)
77069
77070	* src/eval.c (Fautoload_do_load): Don't silence `load` errors when
77071	autoloading a macro.  If silencing load errors, also silence the
77072	subsequent check.
77073
770742017-10-25  Stefan Monnier  <monnier@iro.umontreal.ca>
77075
77076	* lisp/play/gamegrid.el: Use lexical-binding to silence warnings
77077
77078	(gamegrid-init-buffer): Silence another warning.
77079
770802017-10-24  Gemini Lasswell  <gazally@runbox.com>
77081
77082	Make Snake, Tetris and Pong adjust to display DPI
77083
77084	Replace gamegrid's constant 16x16 glyph with a generated one based
77085	on display dimensions (bug#24658).
77086	* lisp/play/gamegrid.el (gamegrid-glyph-height-mm): New variable.
77087	(gamegrid-glyph-height): Deleted.
77088	(gamegrid-xpm, gamegrid-xbm): Constants replaced with functions.
77089	(gamegrid-colorize-glyph): Use new functions instead of constants.
77090	(gamegrid-calculate-glyph-size, gamegrid-insert-xbm-bits): New
77091	functions.
77092
770932017-10-23  Glenn Morris  <rgm@gnu.org>
77094
77095	* configure.ac (AC_INIT): Use https for package url.
77096
77097	* lisp/format.el (format-alist): Use internal rot13.
77098
770992017-10-22  Eric Abrahamsen  <eric@ericabrahamsen.net>
77100
77101	Fix to 2fddfb7ce7
77102
77103	* lisp/emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
77104	  Fix bogus paren wrapping.
77105
771062017-10-22  Gemini Lasswell  <gazally@runbox.com>
77107
77108	Change Edebug's behavior-changing hooks to variables
77109
77110	* lisp/emacs-lisp/edebug.el (edebug-after-instrumentation-functions)
77111	(edebug-new-definition-functions): Deleted.
77112	(edebug-after-instrumentation-function)
77113	(edebug-new-definition-function): New variables.
77114	(edebug-behavior-alist): Update docstring.
77115	(edebug-read-and-maybe-wrap-form1, edebug-make-form-wrapper): Use new
77116	variables.
77117
77118	* lisp/emacs-lisp/testcover.el (testcover-start)
77119	(testcover-this-defun): Use `edebug-after-instrumentation-function' and
77120	`edebug-new-definition-function'.
77121	(testcover-after-instrumentation): Return passed form.
77122	(testcover-init-definition): Use argument instead of `edebug-def-name'.
77123
77124	* doc/lispref/edebug.texi (Edebug Options): Replace descriptions of
77125	`edebug-after-instrumentation-functions' and `edebug-new-definition-functions'
77126	with `edebug-after-instrumentation-function' and
77127	`edebug-new-definition-function'.
77128
771292017-10-22  Masatake YAMATO  <yamato@redhat.com>
77130
77131	Put cpp config file to ~/.emacs.d/cpp.el if possible (Bug#28685)
77132
77133	If `cpp-config-file` starts with '.', remove the '.'
77134	when putting the file to ~/.emacs.d.
77135	Suggested by Noam Postavsky <npostavs@users.sourceforge.net>
77136
77137	* lisp/progmodes/cpp.el (cpp-locate-user-emacs-file): New
77138	function wrapping `locate-user-emacs-file`.
77139	(cpp-edit-load, cpp-edit-save): Use it.
77140
771412017-10-22  Masatake YAMATO  <yamato@redhat.com>
77142
77143	Fix reading and writing cpp-config-file under home directory (Bug#28685)
77144
77145	* lisp/progmodes/cpp.el (cpp-edit-load): Load ~/.cpp.el when
77146	it is readable.
77147	(cpp-edit-save): Write to ~/.cpp.el when it is wriable.
77148
771492017-10-22  Eric Abrahamsen  <eric@ericabrahamsen.net>
77150
77151	Handle object string name in eieio-persistent-convert-list-object
77152
77153	* lisp/emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
77154	  Starting to phase out the printing of object names in
77155	  `object-write', handle either case.
77156
771572017-10-21  Glenn Morris  <rgm@gnu.org>
77158
77159	Merge from origin/emacs-26
77160
77161	888e51f220 (origin/emacs-26) Update describe-function for recent Fdoc...
77162	75bb482763 Make flymake's mouse-wheel interaction portable (Bug#28732)
77163	035d7ac7e4 Prevent eldoc from changing the mode line
77164	c9d71b31bf Fix doc strings in simple.el
77165	0d8e4f45d6 Avoid creating inconsistent buffer states in term-char-mode
77166	79d57f4b7a New input method 'usbek-cyrillic'
77167	4587d8e0ef Document 'minibuffer-with-setup-hook'
77168
77169	# Conflicts:
77170	#	etc/NEWS
77171
771722017-10-20  Paul Eggert  <eggert@cs.ucla.edu>
77173
77174	* etc/NEWS.26: Sync from emacs-26 etc/NEWS.
77175
771762017-10-20  Paul Eggert  <eggert@cs.ucla.edu>
77177
77178	Merge from origin/emacs-26
77179
77180	868eb74f91 Simplify make-progress-reporter vs float-time
77181	83db9a1bba Fix two more minor Gnus typos
77182	e655946ce0 Fix two minor Gnus typos
77183	6a00914d6d Tweak Fdocumentation's error for an undefined function
77184	7c63655e39 Tweak format of list of old files in NEWS header
77185
77186	# Conflicts:
77187	#	etc/NEWS
77188
771892017-10-20  Paul Eggert  <eggert@cs.ucla.edu>
77190
77191	Merge from origin/emacs-26
77192
77193	11bd8aa24b Fix flymake's loading of subr-x
77194	b500e06f4d Fix Bug#28896
77195	d815de017b Skip a Flymake test for old gcc versions
77196	fd3d8610b2 Make :align-to account for display-line-numbers
77197	831eafc8ae Augment Flymake API for third-party extensions
77198	ddd547fada Improve treatment of Fortran's "class default"
77199	234b1e3864 Flymake backends must check proc obsoleteness in source bu...
77200	3ea6a4d4ba Skip an rsync test in tramp-tests.el
77201	25f83fa7c5 ; Indentation fixes
77202	4d578d432d On Windows default a frame's border width to zero (Bug#28873)
77203	6f1dea5c74 Spelling fixes
77204	b8433b0954 Use pop-to-buffer-same-window instead of switch-to-buffer
77205	2f7163fb72 Fix the MSDOS build.
77206	2551d28fe8 Fix line number display after 'widen'
77207	dc8812829b Remove resizable attribute on macOS undecorated frames (bu...
77208	b970a4a52a Fix handling of `border-width' in `frameset--restore-frame...
77209	445e92658f Mention how to send CC to > 1 address in a bug report
77210	8ca6fa585a Improve format-time-string doc
77211	2e1b3522b8 Improve documentation of 'line-number-display-width'
77212	5b6e59cfdb Implement vc-default-dir-extra-headers for vc-rcs
77213	22adeca42a In NEWS give advice on use of `switch-to-buffer' (Bug#28645)
77214	2c3e6f1ddc Dont update primary selection with winner-undo
77215	b38724ab67 Work around ImageMagick bug 825
77216	20cc68e871 Document rectangle-preview option more (Bug#27974)
77217	a0b7b301dd Do not reject https://gnu.org in commit messages
77218	fb4200a875 Fix Edebug spec for cl-defun (bug#24255)
77219	db68cefe72 Fix errors in kmacro.el post-command-hook
77220	c63b344c3d Fix range-error in image-dired.el
77221	081d2187c4 Fix 'line-number-display-width' in hscrolled windows
77222	16e85456e7 Fix error in tramp-smb-handle-insert-directory
77223	613db8d35c Don't reject PBM header whitespace unnecessarily
77224	3205b12a78 Fix regression in display of PPM images
77225	1ca9ae7069 Require subr-x when compiling nnimap.el
77226	de60992053 Fix ert-test finding by symbol (Bug#28849)
77227	51615a8082 Don't remember old debugger window (Bug#17882)
77228	5980de3727 Disable python native completion on w32 (Bug#28580)
77229	616b4c5956 Let select-frame-by-name choose any frame when called from...
77230	8eb3c01dbd * lisp/dired-aux.el (dired-create-directory): Doc fix.
77231	325dfdae13 Avoid compilation warnings in optimized builds
77232	f79382819c ; * src/composite.c (Fclear_composition_cache): Fix last c...
77233	f95cd5cd70 Improve customization of arabic-shaper-ZWNJ-handling.
77234	a7f154688d Improve customization type of 'mouse-drag-and-drop-region'
77235	864734d112 ; Prefer https: to http: in GNU URLs
77236	3c78960a47 Encourage https: in commit messages
77237	def9715282 ; Cleanup of etc/NEWS
77238	4e59ecc646 Fix wording in Elisp manual's child frames section (Bug#28...
77239	eda9f5018c Another fix for C mode fontification of w32 source files
77240	05aadd8990 Fix fontification of ALIGN_STACK functions
77241	aa0c38f358 Make sure thread stack is properly aligned on MS-Windows
77242	d7038020aa Do not under-align pseudovectors
77243	ff33053012 Fix indentation bug in multi-line CSS selectors
77244	8968be822e ; * etc/NEWS: Grammar and spelling fixes
77245	716b84034d gnutls_mac_get_nonce_size has been added in gnutls 3.3
77246	55e313f7be ; * CONTRIBUTE: More suggestions for using US English.
77247	622c675648 * CONTRIBUTE: Suggest American English.
77248
77249	# Conflicts:
77250	#	etc/NEWS
77251	#	msdos/sed2v2.inp
77252
772532017-10-20  Tino Calancha  <tino.calancha@gmail.com>
77254
77255	Allow to copy/rename file into a non-existent dir
77256
77257	* lisp/dired-aux.el (dired-create-destination-dirs): New option.
77258	(dired-maybe-create-dirs): New defun.
77259	(dired-copy-file-recursive, dired-rename-file): Use it (Bug#28834).
77260	* test/lisp/dired-aux-tests.el (dired-test-bug28834): Add test.
77261	* doc/emacs/dired.texi (Operating on Files): Update manual.
77262	* etc/NEWS (Changes in Specialized Modes and Packages in Emacs 27.1)
77263	Announce this change.
77264
772652017-10-20  Paul Eggert  <eggert@cs.ucla.edu>
77266
77267	Prefer nil to (current-time) when either works
77268
77269	* doc/misc/gnus.texi (Category Syntax):
77270	* lisp/allout-widgets.el (allout-widgets-post-command-business):
77271	* lisp/cedet/ede/detect.el (ede-detect-qtest):
77272	* lisp/cedet/pulse.el (pulse-momentary-highlight-overlay)
77273	(pulse-tick):
77274	* lisp/cedet/semantic.el (bovinate):
77275	* lisp/cedet/semantic/analyze.el:
77276	(semantic-analyze-current-symbol-default, semantic-adebug-analyze):
77277	* lisp/cedet/semantic/analyze/refs.el (semantic-analyze-current-tag):
77278	* lisp/cedet/semantic/lex.el (semantic-lex-test):
77279	* lisp/cedet/semantic/symref/filter.el:
77280	(semantic-symref-test-count-hits-in-tag):
77281	* lisp/cedet/srecode/dictionary.el (srecode-adebug-dictionary):
77282	* lisp/cedet/srecode/map.el (srecode-adebug-maps):
77283	* lisp/desktop.el (desktop-create-buffer):
77284	* lisp/emacs-lisp/benchmark.el (benchmark-elapse):
77285	* lisp/emacs-lisp/elp.el (elp--make-wrapper):
77286	* lisp/epa.el (epa--show-key):
77287	* lisp/erc/erc.el (erc-lurker-cleanup, erc-lurker-p):
77288	* lisp/gnus/gnus-agent.el (gnus-agent-fetch-articles)
77289	(gnus-agent-expire-group-1, gnus-agent-store-article):
77290	* lisp/gnus/gnus-art.el (article-lapsed-string):
77291	* lisp/gnus/gnus-cloud.el (gnus-cloud-update-newsrc-data)
77292	(gnus-cloud-collect-full-newsrc):
77293	* lisp/gnus/gnus-group.el (gnus-group-timestamp-delta):
77294	* lisp/gnus/gnus-html.el (gnus-html-cache-expired):
77295	* lisp/gnus/gnus-score.el (gnus-score-load-file)
77296	(gnus-decay-scores):
77297	* lisp/gnus/nndiary.el (nndiary-expired-article-p):
77298	* lisp/gnus/nnmail.el (nnmail-expired-article-p):
77299	* lisp/gnus/nnmaildir.el (nnmaildir--scan):
77300	* lisp/gnus/score-mode.el (gnus-score-edit-insert-date):
77301	* lisp/image/gravatar.el (gravatar-cache-expired):
77302	* lisp/net/newst-backend.el (newsticker--image-get)
77303	(newsticker--cache-mark-expired):
77304	* lisp/nxml/rng-maint.el (rng-time-function):
77305	* lisp/org/org-agenda.el (org-agenda-to-appt):
77306	* lisp/org/org-clock.el (org-clock-resolve-clock)
77307	(org-clock-resolve, org-resolve-clocks-if-idle):
77308	* lisp/org/org-colview.el (org-columns-edit-value, org-columns)
77309	(org-columns-compute-all, org-agenda-columns):
77310	* lisp/org/org-element.el (org-element--cache-interrupt-p)
77311	(org-element--cache-sync):
77312	* lisp/org/org-habit.el (org-habit-get-faces)
77313	(org-habit-insert-consistency-graphs):
77314	* lisp/org/org-indent.el (org-indent-add-properties):
77315	* lisp/org/org-timer.el (org-timer-start)
77316	(org-timer-pause-or-continue, org-timer-seconds)
77317	(org-timer-show-remaining-time, org-timer-set-timer):
77318	* lisp/org/org.el (org-babel-load-file, org-current-time)
77319	(org-today, org-auto-repeat-maybe, org-read-date-analyze)
77320	(org-small-year-to-year, org-goto-calendar):
77321	* lisp/org/ox.el (org-export-insert-default-template):
77322	* lisp/time.el (emacs-uptime):
77323	* lisp/type-break.el (type-break-mode, type-break)
77324	(type-break-time-warning-schedule, type-break-check):
77325	* lisp/url/url-cache.el (url-cache-expired):
77326	* lisp/url/url.el (url-retrieve-synchronously):
77327	* test/lisp/char-fold-tests.el (char-fold--speed-test):
77328	* test/manual/cedet/semantic-ia-utest.el:
77329	(semantic-symref-test-count-hits-in-tag):
77330	* test/manual/cedet/semantic-tests.el (semantic-idle-pnf-test)
77331	(semantic-lex-test-full-depth):
77332	Use nil instead of (current-time) where either will do, as nil is
77333	a bit more efficient and should have less timing error.
77334
773352017-10-20  Stefan Monnier  <monnier@iro.umontreal.ca>
77336
77337	* lisp/emacs-lisp/debug.el: Use cl-print more systematically
77338
77339	(debugger-return-value, debugger-eval-expression, debugger--insert-locals):
77340	Use debugger--print.
77341
773422017-10-20  Stefan Monnier  <monnier@iro.umontreal.ca>
77343
77344	* lisp/emacs-lisp/eieio.el (eieio-object-name-string): De-obsolete
77345
77346	This is apparently the advertised method to use for `eieio-named' objects.
77347	Also use sxhash-eq to get a more precise default "object name".
77348	(eieio-object-set-name-string): Clarify obsolescence message.
77349
77350	* lisp/emacs-lisp/eieio-base.el (eieio-object-name-string): Delegate to
77351	the default method when applicable.
77352
773532017-10-20  Stefan Monnier  <monnier@iro.umontreal.ca>
77354
77355	* lisp/help-fns.el (describe-function-1): Fix help-fns-test-dangling-alias.
77356
773572017-10-20  Wilfred Hughes  <me@wilfred.me.uk>
77358
77359	css-mode: Don't confuse variable names with class names
77360
77361	This fixes highlighting for class names that contain --, for example:
77362
77363	.foo--bar {
77364	    display: none;
77365	}
77366
77367	* lisp/textmodes/css-mode.el (css--font-lock-keywords): Make regular
77368	  expression stricter.
77369
773702017-10-20  Tino Calancha  <tino.calancha@gmail.com>
77371
77372	ibuffer: new filter to list buffers running a process
77373
77374	* lisp/ibuf-ext.el (ibuffer-filter-by-process): Add new filter (Bug#28825).
77375	* lisp/ibuffer.el (ibuffer-mode-map): Bound it to '/E'.
77376
773772017-10-20  Tino Calancha  <tino.calancha@gmail.com>
77378
77379	Make ibuffer filters idempotent
77380
77381	* lisp/ibuf-ext.el (ibuffer-push-filter): Check if the
77382	filter is already in effect (Bug#28826).
77383	* lisp/ibuf-macs.el (define-ibuffer-filter):
77384	Report to user if the filter was already enabled.
77385
773862017-10-18  Lars Ingebrigtsen  <larsi@gnus.org>
77387
77388	* lisp/svg.el (svg--encode-text): Fix off-by-one error in previous patch.
77389
773902017-10-18  Lars Ingebrigtsen  <larsi@gnus.org>
77391
77392	(svg--encode-text): Make strings even more valid
77393
77394	* lisp/svg.el (svg--encode-text): Quote &<>, too.
77395
773962017-10-18  Lars Ingebrigtsen  <larsi@gnus.org>
77397
77398	Encode non-ASCII SVG texts
77399
77400	* lisp/svg.el (svg--encode-text): Encode non-ASCII texts.
77401
774022017-10-16  Eric Abrahamsen  <eric@ericabrahamsen.net>
77403
77404	Documentation and error-message edits re gnus-server-alist
77405
77406	* lisp/gnus/gnus.el (gnus-server-alist): Expand docstring.
77407	* lisp/gnus/gnus-srvr.el (gnus-server-kill-server,
77408	  gnus-server-edit-server): Return error messages that tell the user
77409	  what the actual problem is.
77410	* doc/misc/gnus.texi (Server Commands): Note that not all servers are
77411	  editable via the server buffer.
77412
774132017-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
77414
77415	* lisp/emacs-lisp/debug.el: Don't bail on errors inside cl-print
77416
77417	(debugger--print): New function.
77418	(debugger-insert-backtrace, debugger-setup-buffer): Use it.
77419
774202017-10-12  Thien-Thi Nguyen  <ttn@gnu.org>
77421
77422	[admin] Add some notes on US-v-UK spelling; nfc.
77423
774242017-10-12  Paul Eggert  <eggert@cs.ucla.edu>
77425
77426	Merge from origin/emacs-26
77427
77428	59b5dc60d6 Fix this-command-keys for "M-x foo" commands
77429	2f4bd2fbda Let rename-file rename dirs across filesystems
77430	413978727c Simplify Flymake user documentation
77431	6ff18c3995 * etc/NEWS: Mention the new version of Org.
77432	b78332c3c6 Don't use (format "%s" ...) for string copying (Bug#28774)
77433	078fb7f6df Make frame-list-z-order on NS match Windows behaviour (bug...
77434
77435	# Conflicts:
77436	#	etc/NEWS
77437
774382017-10-12  Paul Eggert  <eggert@cs.ucla.edu>
77439
77440	Merge from origin/emacs-26
77441
77442	05d0c0f802 ; * ChangeLog.3: ChangeLog fixes.
77443	fbabae6b24 * ChangeLog.3: Update.
77444	eab051991e Fix docstring style for 'functionp'
77445	e8a7c41b4e Format shell commands in tramp.texi
77446	0526aac4eb Unbreak the button in the Flymake diagnostics buffer again
77447	c89f001de1 Add mode map to Flymake diagnostic button
77448	f9cd8ee681 Tweak the Flymake diagnostics buffer again
77449	0e83f5f279 Simplify Flymake diagnostics buffer UX
77450	cf4a15b9b6 First stab at a Flymake diagnostics buffer
77451	e4a1556392 * etc/NEWS (Flymake): Rewrite entry.
77452	00adeb43e9 Improve the Flymake manual
77453	44c6401733 ; * etc/NEWS: Clarify the description of "---" and "+++".
77454	042b3cfbd2 Fix two Flymake bugs
77455	3dfa2ca4dc Don't log "emergencies" in the Flymake legacy backend
77456	1c2e188440 Add full documentation on new Flymake API
77457	0f7f677f82 Fix some Flymake docstrings and messages
77458	21e7075781 Make three new Flymake commands for debugging common problems
77459	c9be9a3678 ; INSTALL.REPO: Add -d to "thorough cleaning" suggestion.
77460	5d51403ceb ; Typo fixes, mostly repeated words
77461	0d004ed01a ; Spelling fixes
77462	0485aa76c9 ; * src/lread.c (syms_of_lread) <module-file-suffix>: Fix ...
77463	ba7fb37d6a * admin/authors.el (authors-renamed-files-alist): addition.
77464	14dca4a79a ; ChangeLog.3 fixes
77465	f352d0257c Fix PWD check on DOS_NT
77466	934f08f3de Fix unlikely overflows with wd length
77467	6c2b1e89ef * lisp/gnus/message.el: Improve last commit
77468	7ed7360855 Fix problems when editing raw undecoded message (Bug#28671)
77469	aca5f0072b Avoid encoding errors in message.el
77470	0c36663db5 Improve doc string and prompt of 'grep-read-files'
77471	2da83c9d36 Avoid assertion violations when line numbers are displayed
77472	5b81f65ad0 ; * lisp/emacs-lisp/rmc.el: Minor fix for copyright and li...
77473	11b37b4a9f Be lazy when starting Flymake checks
77474	36ed9a9ede Fix last change in frameset.el
77475	62e5c119af Describe how window dividers can replicate vertical border...
77476	e2150d994a Add line-number faces to the display-line-numbers group
77477	89b0023044 Increase xterm click count only within double-click-fuzz
77478	745aea2296 Change pause in fullscreen toggling for NS port (bug#28496)
77479	1cd334cd47 Handle PARENTS properly in tramp-*-handle-make-directory
77480	f1c73de47d ; Merge from Gnulib (comment changes only)
77481	7c2c117c91 Improve test for unreachable dirs
77482	2202952b83 * src/xsmfns.c (x_session_initialize): Fix memory leak.
77483	a9b72976de Merge branch 'emacs-26' of git.sv.gnu.org:/srv/git/emacs i...
77484	64baaff8c5 New option for handling ZWNJ in Arabic text rendering
77485	c194fb61c6 Make python prettify symbols into a defvar (Bug#28713)
77486	6dfc778d54 Fix fullscreen crash on macOS (bug#28496)
77487	3db0dc2168 Fix crash when closing fullscreen frame on macOS (bug#28661)
77488	bc80da5bd3 Support gio tool in Tramp
77489	349e0eb5ff Fix flymake-goto-next-error when message has %-constructs
77490	0fa353b504 * src/gnutls.c (syms_of_gnutls): Remove duplicated call to...
77491	dc6ae15a8d Move the entry about 'format' into Incompatible Lisp Changes
77492	75174a632d Fix glitches in displaying TTY menus
77493	238fbcb20e Create new Edebug spec for docstrings and use it in closures
77494	2d58d51329 Avoid byte-compilation warnings in message.el
77495
77496	# Conflicts:
77497	#	etc/NEWS
77498
774992017-10-12  Stefan Monnier  <monnier@iro.umontreal.ca>
77500
77501	* lisp/gnus/message.el (message-check-recipients): Bogus adr is a user error.
77502
77503	* test/lisp/help-fns-tests.el (help-fns-test-dangling-alias): New test.
77504
77505	* lisp/ansi-color.el (ansi-color-make-extent): Let overlays evaporate.
77506
775072017-10-10  Stefan Monnier  <monnier@iro.umontreal.ca>
77508
77509	* lisp/url/url-cookie.el: Fix warning and miscompilation
77510
77511	(url-cookie-parse-file-netscape): Remove unused var `match', fix
77512	undefined `incf' misuse.
77513
775142017-10-10  Aurelien Aptel  <aaptel@suse.com>
77515
77516	Add parser for Netscape/Mozilla cookie file format
77517
77518	* lisp/url/url-cookie.el (url-cookie-parse-file-netscape): New function.
77519
775202017-10-09  Philipp Stephani  <phst@google.com>
77521
77522	Revert "Raise an error when detecting old-style backquotes."
77523
77524	This reverts commit 9613690f6e51e2f2aa2bcbbede3e209d08cfaaad.
77525
775262017-10-09  Mark Oteiza  <mvoteiza@udel.edu>
77527
77528	Disable XTerm titles (Bug#28591)
77529
77530	* etc/NEWS: Mention it.
77531	* lisp/term/xterm.el (xterm-set-window-title): Disable it.
77532
775332017-10-08  Gemini Lasswell  <gazally@runbox.com>
77534
77535	Stop Testcover from producing spurious 1value errors
77536
77537	Fix bug#25351 by copying results of form evaluations for later
77538	comparison.
77539	* lisp/emacs-lisp/testcover.el (testcover-after): Copy the result
77540	of a form's first evaluation and compare subsequent evaluations to
77541	the copy. Improve the error message used when a form's value
77542	changes.
77543	(testcover--copy-object, testcover--copy-object1): New functions.
77544	* test/lisp/emacs-lisp/testcover-resources/testcases.el
77545	(by-value-vs-by-reference-bug-25351): Remove expected failure tag.
77546	(circular-lists-bug-24402): Add another circular list case.
77547
775482017-10-08  Gemini Lasswell  <gazally@runbox.com>
77549
77550	Rewrite Testcover's internals, fixing several bugs
77551
77552	* lisp/emacs-lisp/testcover.el: Rewrite the internals of Testcover
77553	to analyze instrumented code instead of reinstrumenting it.  Use new
77554	hooks in Edebug to collect code coverage information at runtime
77555	using Edebug's instrumentation.
77556	Includes fixes for: (bug#11307) (bug#24509) (bug#24688) (bug#24743)
77557	(bug#25316) (bug#25326).
77558	(testcover-compose-functions): Remove mapcar.
77559	(testcover-start, testcover-this-defun): Analyze code instead of
77560	reinstrumenting it. Set edebug-behavior for each definition.
77561	(testcover--read, testcover-1value, testcover-reinstrument)
77562	(testcover-reinstrument-list, testcover-reinstrument-compose):
77563	Deleted.
77564	(testcover-after-instrumentation, testcover-init-definition)
77565	(testcover-before): New functions.
77566	(testcover-enter): Change call signature to match edebug-enter.
77567	(testcover-after, testcover-mark): Add handling of 'maybe and
77568	'noreturn.
77569	(testcover-analyze-coverage, testcover-analyze-coverage-progn)
77570	(testcover-analyze-coverage-edebug-after)
77571	(testcover-analyze-coverage-wrapped-form)
77572	(testcover-analyze-coverage-wrapped-application)
77573	(testcover-analyze-coverage-compose)
77574	(testcover-analyze-coverage-backquote)
77575	(testcover-analyze-coverage-backquote-form)
77576	(testcover-coverage-combine): New functions to analyze instrumented
77577	code.
77578
77579	* lisp/emacs-lisp/gv.el: Modify edebug-after's gv-expander to
77580	instrument in the setter as well as the getter.
77581
77582	* test/lisp/emacs-lisp/testcover-tests.el
77583	(testcover-tests-run-test-case): Use `edebug-default-enter'
77584	instead of `edebug-enter' to detect Edebug invocation
77585	during tests.
77586
77587	* test/lisp/emacs-lisp/testcover-resources/testcases.el
77588	(constants-bug-25316)
77589	(customize-defcustom-bug-25326)
77590	(1-value-symbol-bug-25316)
77591	(quotes-within-backquotes-bug-25316)
77592	(backquote-1value-bug-24509)
77593	(pcase-bug-24688)
77594	(defun-in-backquote-bug-11307-and-24743)
77595	(closure-1value-bug)
77596	(backquoted-vector-bug-25316)
77597	(vector-in-macro-spec-bug-25316)
77598	(mapcar-is-not-compose): Remove expected failure tags.
77599	(function-with-edebug-spec-bug-25316): Remove expected failure tag
77600	and modify expected result.
77601	(quoted-backquote): New test.
77602
77603	* lisp/textmodes/rst.el: Remove workarounds for bugs in Testcover.
77604	(rst-testcover-defcustom): Deleted.
77605
77606	* lisp/subr.el (1value): Remove incorrect description of
77607	testcover-1value from docstring, replace with description of
77608	Testcover's treatment of 1value.
77609
776102017-10-08  Gemini Lasswell  <gazally@runbox.com>
77611
77612	Allow Edebug's instrumentation to be used for other purposes
77613
77614	* lisp/emacs-lisp/edebug.el:
77615	(edebug-after-instrumentation-functions)
77616	(edebug-new-definition-functions): New hook variables.
77617	(edebug-behavior-alist): New variable.
77618	(edebug-read-and-maybe-wrap-form): Run a hook after a form is
77619	wrapped.
77620	(edebug-make-form-wrapper): Run a hook after a definition is
77621	wrapped. Remove message for each definition.
77622	(edebug-announce-definition): New function.
77623	(edebug-enter): Rewritten to change behavior of Edebug based
77624	on symbol property `edebug-behavior' and `edebug-behavior-alist'.
77625	(edebug-default-enter): New function which does what `edebug-enter'
77626	used to do.
77627	(edebug-run-slow, edebug-run-fast): Modify edebug-behavior-alist.
77628	(edebug-before, edebug-after): Function definitions are now set by
77629	`edebug-enter'.
77630
776312017-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
77632
77633	* lisp/emacs-lisp/checkdoc.el: cl-defstruct + minor simplifications
77634
77635	(checkdoc-make-overlay, checkdoc-overlay-put, checkdoc-delete-overlay)
77636	(checkdoc-overlay-start, checkdoc-overlay-end, checkdoc-char=)
77637	(checkdoc-mode-line-update): Remove old compatibility aliases.
77638	(checkdoc, checkdoc-interactive-loop):
77639	Consolidate common code in if branches.
77640	(checkdoc-error): New struct type.
77641	(checkdoc-error-text, checkdoc-error-start, checkdoc-error-end)
77642	(checkdoc-error-unfixable): Now defined by cl-defstruct.
77643
776442017-10-08  Philipp Stephani  <phst@google.com>
77645
77646	Raise an error when detecting old-style backquotes.
77647
77648	They have been deprecated for a decade now.
77649
77650	* src/lread.c (Fload): Don't use record_unwind_protect to warn about
77651	old-style backquotes any more.  They now generate a hard error.
77652	(read1): Signal an error when detecting old-style backquotes.  Remove
77653	unused label.
77654	(syms_of_lread): Remove unused internal variable
77655	'lread--old-style-backquotes'.
77656	(load_error_old_style_backquotes): Rename from
77657	'load_warn_oldstyle_backquotes'.  Signal an error.
77658
77659	* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Remove check
77660	from byte compiler.  It isn't triggered any more.
77661
77662	* test/src/lread-tests.el (lread-tests--old-style-backquotes): Adapt
77663	unit test.
77664
77665	* test/lisp/emacs-lisp/bytecomp-tests.el
77666	(bytecomp-tests--old-style-backquotes)
77667	(bytecomp-tests-function-put): Adapt unit tests.
77668
77669	* etc/NEWS: Document change.
77670
776712017-10-08  Philipp Stephani  <phst@google.com>
77672
77673	Say that side effect-free functions don't change the matchd data
77674
77675	* lisp/help-fns.el (describe-function-1): Add note if a function is
77676	known not to change the match data.
77677
776782017-10-07  Eli Zaretskii  <eliz@gnu.org>
77679
77680	New defcustom 'tooltip-resize-echo-area'
77681
77682	* lisp/tooltip.el (tooltip-resize-echo-area): New defcustom.
77683	(tooltip-show-help-non-mode): Use it to avoid truncating the
77684	tooltip text in the echo area.  (Bug#28724)
77685
77686	* etc/NEWS: Mention 'tooltip-resize-echo-area'.
77687
776882017-10-06  Paul Eggert  <eggert@cs.ucla.edu>
77689
77690	Merge from origin/emacs-26
77691
77692	9226cf3254 Fix bug in recent styled_format change
77693	fa92f0c447 Cleanup emacs-lisp-mode's use of Flymake
77694	0d0265bf50 Fix @include directive in Flymake doc
77695	295457ae52 Move read-multiple-choice to its own library
77696	560dd9b573 * src/process.c (syms_of_process): Remove duplicated call ...
77697
776982017-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
77699
77700	Merge emacs-26
77701
777022017-10-03  Michael Albinus  <michael.albinus@gmx.de>
77703
77704	Add file name handler support for file-system-info
77705
77706	* doc/lispref/files.texi (Magic File Names): Add file-system-info.
77707
77708	* etc/NEWS: Mention get-free-disk-space working on remote systems.
77709
77710	* lisp/files.el (get-free-disk-space): Do not block on remote systems.
77711
77712	* src/w32fns.c (Ffile_system_info):
77713	* src/fileio.c (Ffile_system_info): Call file name handler if exists.
77714	(syms_of_fileio): Add Qfile_system_info.
77715
777162017-10-02  Paul Eggert  <eggert@cs.ucla.edu>
77717
77718	Merge from Gnulib
77719
77720	This incorporates:
77721	2017-10-02 fsusage: fix typo in previous change
77722	* lib/fsusage.c: Copy from Gnulib.
77723
777242017-10-01  Paul Eggert  <eggert@cs.ucla.edu>
77725
77726	Port file-system-info to non-Microsoft
77727
77728	* admin/merge-gnulib (GNULIB_MODULES): Add fsusage.
77729	* doc/emacs/files.texi (Directories): Remove documentation of
77730	now-obsolete directory-free-space-program and
77731	directory-free-space-args.
77732	* etc/NEWS: Mention change.
77733	* etc/PROBLEMS: Slow df is no longer a problem.
77734	* lib/fsusage.c, lib/fsusage.h, m4/fsusage.m4:
77735	New files, copied from Gnulib.
77736	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
77737	* lisp/dired.el (dired-free-space-program)
77738	(dired-free-space-args): These aliases are now obsolete.
77739	* lisp/files.el (directory-free-space-program)
77740	(directory-free-space-args): Now obsolete.
77741	(get-free-disk-space): Just call file-system-info instead
77742	of the now-obsolete directory-free-space-program.
77743	* nt/gnulib-cfg.mk (OMIT_GNULIB_MODULE_fsusage): New macro.
77744	* src/fileio.c: Include fsusage.h.
77745	(blocks_to_bytes, Ffile_system_info) [!DOS_NT]: New functions.
77746	(syms_of_fileio) [!DOS_NT]: Defsubr file-system-info.
77747
777482017-10-01  Paul Eggert  <eggert@cs.ucla.edu>
77749
77750	Merge from origin/emacs-26
77751
77752	5172fa02cc Prefer HTTPS to HTTP for gnu.org
77753	8cdd8b920a Merge from Gnulib
77754	60b7668b89 Keep eww buffer current when looking up CSS on MDN
77755	bd49b6f1b3 Workaround for faulty localtime() under macOS 10.6
77756	913808e224 Doc amendment for syntax-ppss.
77757	98dc91fda8 Remove incorrect NEWS entry about 'find-library'
77758	539d8626cd Remove inadvertent changes to syntax.texi in last commit.
77759	8c18dcbc78 Amend documentation for text-quoting-style becoming a user...
77760	5f76ac150a Make the value nil in text-quoting-style mean what it does...
77761	d5e4e004fa Make text-quoting-style customizable.  Introduce t and new...
77762	1ba3471b9b eshell.texi improvements
77763	7abb5c3960 Fix ns-win.el on GNUstep
77764	07ea5ef99a Fix reference style in org.texi
77765	b03b4f6d79 Improve handling of iconification of child frames (Bug#28611)
77766	ba9139c501 Revert "Don't lose arguments to eshell aliases (Bug#27954)"
77767	43fac3beae Make "unsafe directory" error message more informative (Bu...
77768	c59ddb2120 Fix slot typecheck in eieio-persistent
77769	8b2ab5014b Fix semantic-ia-fast-jump
77770	5b45e7e1c3 Bind vc-region-history
77771	f172894595 Exit macro definition on undefined keys
77772	289fe6c0d1 Reset bidi-paragraph-direction on article rendering
77773	a4f7518817 Fix url-http use of url-current-object
77774	4a755ed421 Avoid assertions in vc-hg.el on MS-Windows
77775	cb93a6ce72 Improve documentation of 'copy-sequence'
77776	200ef6f721 Minor update of ack.texi
77777	cb407d3e87 * doc/emacs/emacs.texi (Acknowledgments): Add more contrib...
77778	82b6c765ff Improve indexing of multi-file/buffer Isearch commands
77779	645ff6c702 Add CAM02 JCh and CAM02-UCS J'a'b' conversions
77780	157007b58e Fix uses of @kindex in the Emacs manual
77781	63a45e8837 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
77782	3ab2f9bbb9 Merge from gnulib
77783	cbc8324488 Prefer HTTPS to HTTP for gnu.org
77784	bbda601d1d ; Spelling fixes
77785	695cf5300b Wait for frame visibility with timeout in w32term too
77786	e1f6e3127a Bring back the busy wait after x_make_frame_visible (Bug#2...
77787	bccf635217 ; * src/gtkutil.c (xg_check_special_colors): Add another G...
77788	f428757cdb Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
77789	26d58f0c58 ; Standardize license notices
77790	73dba0f466 Fix last doc string change in simple.el
77791
777922017-10-01  Stefan Monnier  <monnier@iro.umontreal.ca>
77793
77794	* lisp/electric.el: Break recursive loading loop
77795
77796	(electric-pair-text-pairs): Declare instead of requiring elec-pair.
77797
777982017-10-01  Philipp Stephani  <phst@google.com>
77799
77800	* src/editfns.c (Fchar_after): Small optimization.
77801
778022017-10-01  Eli Zaretskii  <eliz@gnu.org>
77803
77804	Avoid compilation warning in electric.el
77805
77806	* lisp/electric.el: Require 'elec-pair' when compiling, to avoid a
77807	compiler warning.
77808
778092017-09-30  Paul Eggert  <eggert@cs.ucla.edu>
77810
77811	Make logcount act like CL on negative arg
77812
77813	Behaving like Common Lisp is less likely to lead to surprises,
77814	as it yields the same answers on 32- vs 64-bit machines.
77815	* doc/lispref/numbers.texi (Bitwise Operations):
77816	Document behavior on negative integers.
77817	* src/data.c (Flogcount):
77818	Behave like Common Lisp for negative arguments.
77819	* test/src/data-tests.el (data-tests-popcnt)
77820	(data-tests-logcount): Test negative args too.
77821
778222017-09-30  Philipp Stephani  <phst@google.com>
77823
77824	Electric quote mode: Conditionally replace " (Bug#24710)
77825
77826	* lisp/electric.el (electric-quote-replace-double): New user option.
77827	(electric-quote-post-self-insert-function): Use it.
77828
77829	* test/lisp/electric-tests.el (electric-quote-replace-double-disabled)
77830	(electric-quote-replace-double-bob)
77831	(electric-quote-replace-double-bol)
77832	(electric-quote-replace-double-after-space)
77833	(electric-quote-replace-double-after-letter)
77834	(electric-quote-replace-double-after-paren): New unit tests.
77835
77836	* doc/emacs/text.texi (Quotation Marks): Document
77837	'electric-quote-replace-double'.
77838
778392017-09-30  Paul Eggert  <eggert@cs.ucla.edu>
77840
77841	Simplify logcount implementation
77842
77843	* src/data.c (HAVE_BUILTIN_POPCOUNTLL, logcount32, logcount64):
77844	Remove.
77845	(Flogcount): Simplify by using count_one_bits.
77846
778472017-09-30  Mark Oteiza  <mvoteiza@udel.edu>
77848
77849	Add logcount (Bug#22689)
77850
77851	* doc/lispref/numbers.texi (Bitwise Operations): Add documentation.
77852	* etc/NEWS: Mention.
77853	* src/data.c (logcount32, logcount64): New functions.
77854	(logcount): New Lisp function.
77855	(syms_of_data): Declare it.
77856	* test/src/data-tests.el (data-tests-popcnt, data-tests-logcount): New
77857	test.
77858
778592017-09-29  Paul Eggert  <eggert@cs.ucla.edu>
77860
77861	Merge from origin/emacs-26
77862
77863	3ab2f9bbb9 Merge from gnulib
77864	cbc8324488 Prefer HTTPS to HTTP for gnu.org
77865	bbda601d1d ; Spelling fixes
77866	695cf5300b Wait for frame visibility with timeout in w32term too
77867	e1f6e3127a Bring back the busy wait after x_make_frame_visible (Bug#2...
77868	bccf635217 ; * src/gtkutil.c (xg_check_special_colors): Add another G...
77869	26d58f0c58 ; Standardize license notices
77870	61225964ed Revert "bug#28609: simple.el"
77871	a75ab3b3fb bug#28609: simple.el
77872	c7a21430c1 ; * etc/NEWS: Fix last change.
77873	33401b26b1 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
77874	d4b2bbdc73 Merge branch 'emacs-26' into scratch/org-mode-merge
77875	c1ac8c170f Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
77876	af130f900f Fix ert backtrace saving for non-`signal'ed errors (Bug#28...
77877	7476eeaa23 Revert "Fix build on macOS (bug#28571)"
77878	fec63089d5 Fix build on macOS (bug#28571)
77879	0f9a78e770 Add tests for `css-current-defun-name'
77880	88a0dd71f1 In w32fullscreen_hook don't add decorations to undecorated...
77881	18073beb14 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
77882	1eef11b7be Fix doc string of 'dired-listing-switches'
77883	eaefbc26d5 ; Add files missing in ab351d442d7
77884	ab351d442d Update Org to v9.1.1
77885
778862017-09-29  Paul Eggert  <eggert@cs.ucla.edu>
77887
77888	Merge from origin/emacs-26
77889
77890	a3f647c5c8 * src/editfns.c (styled_format): Fix typo in previous change.
77891	0e82fa3416 Avoid some unnecessary copying in Fformat etc.
77892
778932017-09-29  Paul Eggert  <eggert@cs.ucla.edu>
77894
77895	Merge from origin/emacs-26
77896
77897	1e5949642a ; * src/gtkutil.c (xg_create_frame_widgets): Add FIXME re....
77898	e7c8da4d05 bug#28609: simple.el
77899	827db6b559 Use a separate syntax-ppss cache for narrowed buffers
77900	a2244f417a Improve python3-compatibility of fallback completion (Bug#...
77901	79162cb0db Fix subr-x-tests when running from elc
77902	66d35ae49d * lisp/eshell/esh-util.el (eshell-condition-case): Add deb...
77903	f5e72b04d9 Make sh-indentation into an alias for sh-basic-offset (Bug...
77904	a58d0c590a Fix loading of smie-config rules (Bug#24848)
77905	3a68dec327 ; Update NEWS for the change in eldoc-message
77906	5a41dd0a1f Reset default-directory inside *xref-grep* buffer
77907	49cd561dc6 * test/lisp/tramp-tests.el (tramp-test21-file-links): Spec...
77908	b719f6b20b Loosen strict parsing requirement for desktop files
77909	c7a0c13777 * lisp/xdg.el (xdg-thumb-uri): Fix doc string.
77910	dc6b3560e5 Fix documentation of `make-frame' and related variables an...
77911	3d3778d82a Accept new `always' value for option `buffer-offer-save'
77912	638f64c40a Improve new NS scrolling variable names
77913	d93301242f Document 'replace-buffer-contents' in the manual.
77914	00e4e3e9d2 Fix undecorated frame resizing issues on NS (bug#28512)
77915	820739bbb5 ; * doc/emacs/display.texi (Display Custom): Fix wording.
77916	f2b2201594 ; Spelling and URL fixes
77917	0e143b1fc5 Documentation improvements for 'display-line-numbers'
77918	f656ccdb43 ; Fix typo
77919	d64da52d57 Fix last change in bat-mode.el
77920	908af46abd Fix restoring in GUI sessions desktop saved in TTY sessions
77921	51cbd85454 Improve syntax highlighting in bat-mode
77922	0273916618 Document the 'list-FOO' convention
77923	d24ec58540 Expose viewing conditions in CAM02-UCS metric
77924	a81d5a3d3f Revert "Set frame size to actual requested size (bug#18215)"
77925	0bf066d4b2 Add tests for Edebug
77926	68baca3ee1 Catch more messages in ert-with-message-capture
77927	28e0c410c9 ; * lisp/mouse.el (secondary-selection-exist-p): Doc fix.
77928	31e1d9ef2f Support setting region from secondary selection and vice v...
77929	047f02f00f Fix new copy-directory bug with empty dirs
77930	fbd15836af * doc/lispref/strings.texi (Formatting Strings): Improve i...
77931	f16a8d5dbd Fix 2 testsuite tests for MS-Windows
77932	965cffd89c Rename timer-list to list-timers
77933	a5fec62b51 Provide native touchpad scrolling on macOS
77934	7b3d1c6beb Fix MinGW64 build broken by recent MinGW64 import libraries
77935	c83d0c5fdf Fix crashes in 'move-point-visually' in minibuffer windows
77936	7f3d5f929d * src/emacs.c (usage_message): Don't mention 'find-file'.
77937	6845282200 Fix a minor inaccuracy in the Emacs manual
77938	74d7bb9498 Fix errors in flyspell-post-command-hook
77939	40fdbb01d0 Work on Tramp's file-truename
77940	1a01423b3c Fix bug with make-directory on MS-Windows root
77941	066efb8666 Fix log-view-diff-common when point is after last entry
77942	3f006b56cd Adapt fileio-tests--symlink-failure to Cygwin
77943	ee512e9a82 Ignore buffers whose name begins with a space in save-some...
77944	9e1b5bd92c Improve tramp-interrupt-process robustness
77945	8d4223e61b Minor Tramp doc update
77946	331d0e520f Fix gensym
77947	466df76f7d Cleanup in files-tests.el
77948	6359fe630a Remove old cl-assert calls in 'newline'
77949	059184e645 Avoid crash with C-g C-g in GC
77950	541006c536 Fix format-time-string %Z bug with negative tz
77951	679e05eeb9 message-citation-line-format %Z is now tz name
77952	4e8888d438 Use doc-view or pdf-tools on any window-system
77953	5f28f0db73 Fix bug with min and max and NaNs
77954	37b5e661d2 Fix recently-introduced copy-directory bug
77955	6bbbc38b34 Merge from Gnulib
77956	57249fb297 Fix compatibility problem in Tramp
77957	411bec82c4 Avoid GCC 7 compilation warning in eval.c
77958	34a6774daa ; Partially revert c3445aed5194
77959	3003ac0469 Adapt Tramp version.  Do not merge
77960	48d39c39e8 Search for Syntax section when viewing MDN
77961	9d101376b4 Allow smerge-keep-current to work for empty hunks
77962	13aba24add Call vc-setup-buffer in vc-git-log-{in,out}going
77963	1d599df5e0 Fix last change to textmodes/page-ext.el
77964	a726e09a9a * test/src/lcms-tests.el (lcms-cri-cam02-ucs): Skip if lcm...
77965	546413e1ac * test/src/lcms-tests.el (lcms-whitepoint): Skip if lcms2 ...
77966	96aaeaaffa ; * src/lcms.c: Minor stylistic changes in comments.
77967	c3df816585 Fix compilation warning in etags.c
77968
779692017-09-29  Philipp Stephani  <phst@google.com>
77970
77971	Revert "GTK+: Stop querying for background colors."
77972
77973	This reverts commit f6818e761eaafe095e07249180dc8f9a329f1473.
77974
779752017-09-28  Charles A. Roelli  <charles@aurox.ch>
77976
77977	Fix 'point-to-register' prompt with prefix arg
77978
77979	* lisp/register.el (point-to-register): Fix prompt when a prefix
77980	argument is given.
77981
779822017-09-28  Mark Oteiza  <mvoteiza@udel.edu>
77983
77984	Add indent spec to easy-mmode macros
77985
77986	Ideally these macros should expand to the proper code instead of
77987	relegating all the work to a function call.
77988	* lisp/emacs-lisp/easy-mmode.el (easy-mmode-defmap):
77989	(easy-mmode-define-syntax): Add indent spec.
77990
779912017-09-27  Mark Oteiza  <mvoteiza@udel.edu>
77992
77993	Mark some functions as pure
77994
77995	* lisp/emacs-lisp/byte-opt.el: Add some functions that return integral
77996	values to the builtin list of pure functions.
77997
779982017-09-27  Stefan Monnier  <monnier@iro.umontreal.ca>
77999
78000	* lisp/textmodes/page-ext.el: Misc cleanup, add RET binding
78001
78002	Use lexical-binding.
78003	Remove redundant :group args.
78004	(pages-directory-mode-map): Bind RET.
78005	(pages-buffer, pages-pos-list): Define as buffer-local.
78006	(pages-directory-map): Define as alias *before* the defvar.
78007	Mark as obsolete.
78008	(pages-buffer-original-position, pages-buffer-original-page):
78009	Move declaration to before the first use.
78010	(pages-directory): Remove unused var `linenum`.
78011	(pages-directory-goto): Add optional `event` arg and make it work when
78012	bound to mouse events.
78013	(pages-directory-goto-with-mouse): Make it an obsolete alias.
78014
780152017-09-26  Mark Oteiza  <mvoteiza@udel.edu>
78016
78017	Add MIME apps spec utilities
78018
78019	Facilitates finding associations between MIME types and desktop files
78020	that report an association with that type.  Combined with mailcap.el's
78021	MIME facilities, it should be easy to use desktop files.
78022	* lisp/xdg.el (xdg-mime-table): New variable.
78023	(xdg-mime-apps-files, xdg-mime-collect-associations, xdg-mime-apps):
78024	New functions.
78025	* test/data/xdg/mimeapps.list: New file.
78026	* test/data/xdg/mimeinfo.cache: New file.
78027	* test/lisp/xdg-tests.el (xdg-mime-associations): New test.
78028
780292017-09-26  John Wiegley  <johnw@newartisans.com>
78030
78031	lisp/simple.el: Indicate when a list of pairs is meant in a docstring
78032
780332017-09-26  Philipp Stephani  <phst@google.com>
78034
78035	Revert "Don't attempt to disable double buffering in newer GTK+ versions"
78036
78037	This reverts commit c0af83b6ccf2dab9a515dd7f52eb9d4500275ae3.
78038
780392017-09-26  Devon Sean McCullough  <Emacs-Hacker2017@jovi.net>
78040
78041	bug#28609: simple.el
78042
78043	Correct grammar; also, call a pair a pair.
78044
780452017-09-25  Paul Eggert  <eggert@cs.ucla.edu>
78046
78047	* etc/NEWS.26: Copy from emacs-26/etc/NEWS.
78048
780492017-09-25  Paul Eggert  <eggert@cs.ucla.edu>
78050
78051	Merge from origin/emacs-26
78052
78053	49cd561dc6 * test/lisp/tramp-tests.el (tramp-test21-file-links): Spec...
78054	b719f6b20b Loosen strict parsing requirement for desktop files
78055	c7a0c13777 * lisp/xdg.el (xdg-thumb-uri): Fix doc string.
78056	dc6b3560e5 Fix documentation of `make-frame' and related variables an...
78057	3d3778d82a Accept new `always' value for option `buffer-offer-save'
78058	638f64c40a Improve new NS scrolling variable names
78059	d93301242f Document 'replace-buffer-contents' in the manual.
78060	00e4e3e9d2 Fix undecorated frame resizing issues on NS (bug#28512)
78061	820739bbb5 ; * doc/emacs/display.texi (Display Custom): Fix wording.
78062	f2b2201594 ; Spelling and URL fixes
78063	0e143b1fc5 Documentation improvements for 'display-line-numbers'
78064	f656ccdb43 ; Fix typo
78065	d64da52d57 Fix last change in bat-mode.el
78066	908af46abd Fix restoring in GUI sessions desktop saved in TTY sessions
78067	51cbd85454 Improve syntax highlighting in bat-mode
78068	0273916618 Document the 'list-FOO' convention
78069	d24ec58540 Expose viewing conditions in CAM02-UCS metric
78070	a81d5a3d3f Revert "Set frame size to actual requested size (bug#18215)"
78071	0bf066d4b2 Add tests for Edebug
78072	68baca3ee1 Catch more messages in ert-with-message-capture
78073	28e0c410c9 ; * lisp/mouse.el (secondary-selection-exist-p): Doc fix.
78074	31e1d9ef2f Support setting region from secondary selection and vice v...
78075	047f02f00f Fix new copy-directory bug with empty dirs
78076	fbd15836af * doc/lispref/strings.texi (Formatting Strings): Improve i...
78077	f16a8d5dbd Fix 2 testsuite tests for MS-Windows
78078	965cffd89c Rename timer-list to list-timers
78079	a5fec62b51 Provide native touchpad scrolling on macOS
78080	7b3d1c6beb Fix MinGW64 build broken by recent MinGW64 import libraries
78081	c83d0c5fdf Fix crashes in 'move-point-visually' in minibuffer windows
78082	7f3d5f929d * src/emacs.c (usage_message): Don't mention 'find-file'.
78083	6845282200 Fix a minor inaccuracy in the Emacs manual
78084	74d7bb9498 Fix errors in flyspell-post-command-hook
78085	40fdbb01d0 Work on Tramp's file-truename
78086	1a01423b3c Fix bug with make-directory on MS-Windows root
78087	066efb8666 Fix log-view-diff-common when point is after last entry
78088	3f006b56cd Adapt fileio-tests--symlink-failure to Cygwin
78089	ee512e9a82 Ignore buffers whose name begins with a space in save-some...
78090	9e1b5bd92c Improve tramp-interrupt-process robustness
78091	8d4223e61b Minor Tramp doc update
78092	331d0e520f Fix gensym
78093	466df76f7d Cleanup in files-tests.el
78094	6359fe630a Remove old cl-assert calls in 'newline'
78095	059184e645 Avoid crash with C-g C-g in GC
78096	541006c536 Fix format-time-string %Z bug with negative tz
78097	679e05eeb9 message-citation-line-format %Z is now tz name
78098	4e8888d438 Use doc-view or pdf-tools on any window-system
78099	5f28f0db73 Fix bug with min and max and NaNs
78100	37b5e661d2 Fix recently-introduced copy-directory bug
78101	6bbbc38b34 Merge from Gnulib
78102	57249fb297 Fix compatibility problem in Tramp
78103	411bec82c4 Avoid GCC 7 compilation warning in eval.c
78104	34a6774daa ; Partially revert c3445aed5194
78105
781062017-09-25  Paul Eggert  <eggert@cs.ucla.edu>
78107
78108	Merge from origin/emacs-26
78109
78110	48d39c39e8 Search for Syntax section when viewing MDN
78111	9d101376b4 Allow smerge-keep-current to work for empty hunks
78112	13aba24add Call vc-setup-buffer in vc-git-log-{in,out}going
78113	1d599df5e0 Fix last change to textmodes/page-ext.el
78114	a726e09a9a * test/src/lcms-tests.el (lcms-cri-cam02-ucs): Skip if lcm...
78115
781162017-09-25  Paul Eggert  <eggert@cs.ucla.edu>
78117
78118	Merge from origin/emacs-26
78119
78120	96aaeaaffa ; * src/lcms.c: Minor stylistic changes in comments.
78121	c3df816585 Fix compilation warning in etags.c
78122	5490ccc5eb Add lisp variable lcms-d65-xyz
78123	dee96f4a17 * lisp/emacs-lisp/cl-macs.el (cl-letf): Fix Edebug spec (b...
78124	12e864eb30 Avoid MinGW64 compiler warnings in unexw32.c
78125	625cee5316 Start emacs-26 release branch
78126
78127	# Conflicts:
78128	#	README
78129	#	configure.ac
78130	#	msdos/sed2v2.inp
78131	#	nt/README.W32
78132
781332017-09-25  Paul Eggert  <eggert@cs.ucla.edu>
78134
78135	emacs-25 → emacs-26
78136
78137	* admin/gitmerge.el (gitmerge-default-branch): Now emacs-26.
78138
781392017-09-24  Mark Oteiza  <mvoteiza@udel.edu>
78140
78141	Expand recognized time intervals for MPC seeking
78142
78143	Now accepts [+-]H:M:S and subsets.  Also accepts some odd variations of
78144	it since the regexp is not strict.  One unpleasant caveat is that
78145	string-to-number simply returns zero on failure instead of signaling an
78146	error.  At the moment, there are cases where instead of getting
78147	a user-error, the seek may simply not go where one expects it.
78148	* lisp/mpc.el (mpc-read-seek): New function.
78149	(mpc-seek-current): Use it.
78150
781512017-09-24  Philipp Stephani  <phst@google.com>
78152
78153	Add configuration for clang-format.
78154
78155	This allows developers to auto-format the C code with clang-format.
78156	It’s not 100% accurate, but works pretty well for most of the C code.
78157
781582017-09-24  Philipp Stephani  <phst@google.com>
78159
78160	Make FILENAME argument of 'file-name-base' mandatory
78161
78162	* lisp/files.el (file-name-base): Make FILENAME argument mandatory.
78163
78164	* lisp/autoinsert.el (auto-insert-alist):
78165	* lisp/progmodes/cperl-mode.el (cperl-electric-pod):
78166	* lisp/progmodes/idlwave.el (idlwave-parse-definition):
78167	* lisp/textmodes/reftex-ref.el (reftex-replace-prefix-escapes): Fix
78168	all callers.
78169
781702017-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
78171
78172	* lisp/newcomment.el (comment-search-backward): Obey the docstring (bug#28428)
78173
781742017-09-23  Philipp Stephani  <phst@google.com>
78175
78176	Don't attempt to disable double buffering in newer GTK+ versions
78177
78178	* src/gtkutil.c (xg_create_frame_widgets): Stop calling deprecated
78179	function gtk_widget_set_double_buffered.
78180
781812017-09-23  Philipp Stephani  <phst@google.com>
78182
78183	GTK+: Stop querying for background colors.
78184
78185	* src/gtkutil.c (xg_check_special_colors): Don't call deprecated
78186	function gtk_style_context_get_background_color in newer versions of
78187	GTK+.
78188
781892017-09-23  Philipp Stephani  <phst@google.com>
78190
78191	GTK+: stop calling 'gtk_window_set_wmclass' in new versions
78192
78193	* src/gtkutil.c (xg_create_frame_widgets): Stop calling deprecated
78194	function 'gtk_window_set_wmclass' in GTK+ 3.22.
78195
781962017-09-23  Philipp Stephani  <phst@google.com>
78197
78198	GTK+: Use a style provider instead of deprecated function
78199
78200	* src/gtkutil.c (xg_set_widget_bg): Use a CSS style provider instead
78201	of the deprecated gtk_widget_override_background_color.
78202
782032017-09-20  Mark Oteiza  <mvoteiza@udel.edu>
78204
78205	Teach Emacs to set XTerm window titles
78206
78207	* lisp/term/xterm.el (terminal-init-xterm): Add initialization.
78208	(xterm--init-frame-title, xterm-set-window-title-flag):
78209	(xterm-unset-window-title-flag, xterm-set-window-title): New functions.
78210	(xterm-window-title-flag): New variable.
78211	(xterm-set-window-title): New custom variable.
78212	* etc/NEWS: Mention it.
78213
782142017-09-19  Philipp Stephani  <phst@google.com>
78215
78216	Don't call deprecated GTK function gtk_adjustment_changed
78217
78218	* src/gtkutil.c (xg_set_toolkit_scroll_bar_thumb)
78219	(xg_set_toolkit_horizontal_scroll_bar_thumb): Remove calls to
78220	deprecated function gtk_adjustment_changed.  This function has been
78221	deprecated since GTK+ 3.18.
78222
782232017-09-18  Sam Steingold  <sds@gnu.org>
78224
78225	Fix bug#28435: "all" score file is ignored
78226
78227	(gnus-score-find-bnews): Fix removing the empty suffix.
78228
782292017-09-18  Sam Steingold  <sds@gnu.org>
78230
78231	Add define-thing-chars and use it for filename.
78232
78233	(define-thing-chars): New defmacro.
78234	(filename): Define this thing using `define-thing-chars'.
78235
782362017-09-18  Philipp Stephani  <phst@google.com>
78237
78238	Revert "Implement native JSON support using Jansson"
78239
78240	This reverts commit cb99cf5a99680af7dc2c49fdf5b840d1ff4dd928.
78241
782422017-09-18  Philipp Stephani  <phst@google.com>
78243
78244	Implement native JSON support using Jansson
78245
78246	* configure.ac: New option --with-json.
78247
78248	* src/json.c (Fjson_serialize, Fjson_insert, Fjson_parse_string)
78249	(Fjson_parse_buffer): New defuns.
78250	(json_out_of_memory, json_parse_error, json_release_object)
78251	(check_string_without_embedded_nulls, json_check, lisp_to_json)
78252	(json_insert, json_insert_callback, json_to_lisp)
78253	(json_read_buffer_callback, Fjson_parse_buffer, define_error): New
78254	helper function.
78255	(syms_of_json): New file.
78256
78257	* src/lisp.h: Declaration for syms_of_json.
78258
78259	* src/emacs.c (main): Enable JSON functions.
78260
78261	* src/Makefile.in (JSON_LIBS, JSON_CFLAGS, JSON_OBJ, EMACS_CFLAGS)
78262	(base_obj, LIBES): Compile json.c if --with-json is enabled.
78263
78264	* test/src/json-tests.el (json-serialize/roundtrip)
78265	(json-serialize/object, json-parse-string/object): New unit tests.
78266
782672017-09-18  Alan Mackenzie  <acm@muc.de>
78268
78269	Fix irregularities with CC Mode fontification, particularly with "known types"
78270
78271	* lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Introduce a new
78272	optional parameter, template-class.  In "class <X = Y>", fontify "Y" as a
78273	type.
78274	(c-font-lock-single-decl): New variable template-class, set to non-nil when we
78275	have a construct like the above.  Pass this as argument to
78276	c-font-lock-declarators.
78277	(c-font-lock-cut-off-declarators): Check more rigorously that a declaration
78278	being processed starts before the function's starting position.
78279	(c-complex-decl-matchers): Remove the redundant clause which fontified "types
78280	preceded by, e.g., "struct"".
78281
78282	* lisp/progmodes/cc-langs.el (c-template-typename-kwds)
78283	(c-template-typename-key): New lang defconsts and defvar.
78284
782852017-09-17  Michael Albinus  <michael.albinus@gmx.de>
78286
78287	* lisp/net/trampver.el (customize-package-emacs-version-alist):
78288
78289	Add Tramp version integrated in Emacs 26.1.
78290
782912017-09-16  Glenn Morris  <rgm@gnu.org>
78292
78293	* test/src/lcms-tests.el (lcms-whitepoint): Skip if lcms2 not present.
78294
782952017-09-16  Eli Zaretskii  <eliz@gnu.org>
78296
78297	Increment Emacs version to 27.0.50
78298
78299	* README:
78300	* configure.ac:
78301	* nt/README.W32:
78302	* src/msdos.c (internal_terminal_init):
78303	* msdos/sed2v2.inp:
78304	* etc/refcards/ru-refcard.tex: Increment Emacs version to 27.0.50.
78305	* etc/NEWS: New file with sections for Emacs 27.1.
78306	* etc/NEWS.26: Renamed from etc/NEWS.
78307
783082019-08-29  Nicolas Petton  <nicolas@petton.fr>
78309
78310	* etc/AUTHORS: Update.
78311
783122019-08-29  Nicolas Petton  <nicolas@petton.fr>
78313
78314	* etc/NEWS: Delete temporary markup.
78315
783162019-08-29  Noam Postavsky  <npostavs@gmail.com>
78317
78318	Fix process filter documentation (Bug#13400)
78319
78320	* doc/lispref/processes.texi (Asynchronous Processes): Note that input
78321	may read when sending data as well.
78322	(Output from Processes): Note that functions which send data may also
78323	trigger reading from processes.
78324	(Input to Processes, Filter Functions): Note that filter functions may
78325	be called recursively.
78326
783272019-08-29  Tino Calancha  <tino.calancha@gmail.com>
78328
78329	Fix query-replace-regexp undo feature
78330
78331	Ensure that non-regexp strings used with `looking-at' are quoted.
78332	* lisp/replace.el (perform-replace): Quote regexp (Bug#37073).
78333	* test/lisp/replace-tests.el (replace-tests-perform-replace-regexp-flag):
78334	New variable.
78335	(replace-tests-with-undo): Use it.
78336	(query-replace-undo-bug37073): Add tests.
78337
783382019-08-29  Eli Zaretskii  <eliz@gnu.org>
78339
78340	Support the new Japanese era name
78341
78342	* admin/unidata/NormalizationTest.txt:
78343	* admin/unidata/UnicodeData.txt: Add U+32FF SQUARE ERA NAME REIWA.
78344	Do not merge to master.
78345
78346	* test/lisp/international/ucs-normalize-tests.el
78347	(ucs-normalize-tests--failing-lines-part1)
78348	(ucs-normalize-tests--failing-lines-part2): Update.  Do not
78349	merge to master.
78350
78351	* etc/NEWS: Mention the change.
78352
783532019-08-29  Eli Zaretskii  <eliz@gnu.org>
78354
78355	Fix a typo in char-width-table
78356
78357	* lisp/international/characters.el (char-width-table): Fix a
78358	typo in zero-width characters.
78359
783602019-08-29  Eli Zaretskii  <eliz@gnu.org>
78361
78362	Minor update in admin/notes/unicode
78363
78364	* admin/notes/unicode: Mention changes to be done in
78365	setup-default-fontset in fontset.el.  (Bug#14461)
78366
783672019-08-29  Noam Postavsky  <npostavs@gmail.com>
78368
78369	Fix lisp indent infloop on unfinished strings (Bug#37045)
78370
78371	* lisp/emacs-lisp/lisp-mode.el (lisp-indent-calc-next): Stop trying to
78372	skip over strings if we've hit the end of buffer.
78373	* test/lisp/emacs-lisp/lisp-mode-tests.el
78374	(lisp-indent-unfinished-string): New test.
78375
783762019-08-29  Eli Zaretskii  <eliz@gnu.org>
78377
78378	Improve commentary in composite.el
78379
78380	* lisp/composite.el (compose-gstring-for-graphic)
78381	(compose-gstring-for-terminal): Add comments that explain
78382	Unicode General Category mnemonics in human-readable terms.
78383	(Bug#14461)
78384
783852019-08-29  Eli Zaretskii  <eliz@gnu.org>
78386
78387	Fix markup in dired-x.texi
78388
78389	* doc/misc/dired-x.texi (Omitting Variables)
78390	(Local Variables, Shell Command Guessing)
78391	(Advanced Cleaning Variables, Special Marking Function): Fix
78392	markup and indexing.  (Bug#14212)
78393
783942019-08-29  Eli Zaretskii  <eliz@gnu.org>
78395
78396	* src/callproc.c (Fcall_process): Doc fix.
78397
783982019-08-29  Eli Zaretskii  <eliz@gnu.org>
78399
78400	Improve documentation of features that use the fringes
78401
78402	* doc/emacs/display.texi (Fringes): Add cross-reference to
78403	where indicate-empty-lines is described.
78404	(Useless Whitespace): Add an @anchor for a more accurate
78405	cross-reference in "Fringes".
78406
784072019-08-29  Mauro Aranda  <maurooaranda@gmail.com>
78408
78409	Fix docstrings in pong
78410
78411	* lisp/play/pong.el (pong-move-left pong-move-right): Refer to the
78412	right bats and directions of movement.  (Bug#36959)
78413
784142019-08-29  Eli Zaretskii  <eliz@gnu.org>
78415
78416	Improve doc strings of 'append-to-buffer' and friends
78417
78418	* lisp/simple.el (append-to-buffer, prepend-to-buffer)
78419	(copy-to-buffer): Doc fixes.
78420
784212019-08-29  Mauro Aranda  <maurooaranda@gmail.com>
78422
78423	Fix octave-mode ElDoc support
78424
78425	* lisp/progmodes/octave.el (octave-eldoc-function-signatures): Fix the
78426	regexp used, so no match happens when there is no defined function FN.
78427	Also, tweak the regexp to support GNU Octave 4.2.x and newer.  (Bug#36459)
78428
784292019-08-29  Eli Zaretskii  <eliz@gnu.org>
78430
78431	Avoid Groff hanging on MS-Windows when invoked by "M-x man"
78432
78433	* lisp/man.el (Man-build-man-command): On MS-Windows, redirect
78434	stdin of 'man' to the null device, to make sure Groff exits
78435	immediately after formatting the man page.
78436
784372019-08-29  Philipp Stephani  <p.stephani2@gmail.com>
78438
78439	Ignore pending_signals when checking for quits.
78440
78441	pending_signals is often set if no quit is pending.  This results in
78442	bugs in module code if the module returns but no quit is actually
78443	pending.
78444
78445	* src/emacs-module.c (module_should_quit): Use QUITP macro to check
78446	whether the caller should quit.
78447
78448	* src/eval.c: Remove obsolete comment.
78449
784502019-08-29  Basil L. Contovounesios  <contovob@tcd.ie>
78451
78452	Fix nnmail-expiry-wait docs and custom :types
78453
78454	* doc/misc/gnus.texi (Group Parameters, Expiring Mail):
78455	* lisp/gnus/gnus-cus.el (gnus-group-parameters): Clarify
78456	descriptions of nnmail-expiry, nnmail-expiry-wait, and
78457	nnmail-expiry-wait-function.
78458	* lisp/gnus/nnmail.el (nnmail-expiry-wait)
78459	(nnmail-expiry-wait-function): Clarify docstrings and fix custom
78460	:types (bug#36850).
78461
784622019-08-29  Eli Zaretskii  <eliz@gnu.org>
78463
78464	* lisp/simple.el (kill-do-not-save-duplicates): Doc fix.  (Bug#36827)
78465
784662019-08-29  Eli Zaretskii  <eliz@gnu.org>
78467
78468	Improve documentation of debugging Lisp syntax error
78469
78470	* doc/lispref/debugging.texi (Syntax Errors, Excess Open)
78471	(Excess Close): Name the commands invoked by the key
78472	sequences.  Add cross-references to appropriate sections of
78473	the Emacs manual.  (Bug#21385)
78474
78475	(cherry picked from commit faafd467a374c9398ee4668cdc173611d35693ed)
78476
784772019-08-29  Noam Postavsky  <npostavs@gmail.com>
78478
78479	Add index for "\( in strings" (Bug#25195)
78480
78481	* doc/emacs/programs.texi (Left Margin Paren): Add index for "\( in
78482	strings".
78483	* doc/lispref/positions.texi (List Motion): Add index, and cross
78484	reference.
78485
784862019-08-29  Martin Rudalics  <rudalics@gmx.at>
78487
78488	Fix doc-string of 'fit-window-to-buffer' (Bug#36848)
78489
78490	* lisp/window.el (fit-window-to-buffer): Fix doc-string.
78491
78492	Suggested by Drew Adams <drew.adams@oracle.com>
78493
784942019-08-29  Tino Calancha  <tino.calancha@gmail.com>
78495
78496	Update view-mode docstring
78497
78498	Not all the kill commands save the text in the kill ring
78499	by default (e.g. `kill-rectangle').
78500	It is more precise to just say that the kill commands save
78501	the text and do not change the buffer (Bug#36741).
78502	* lisp/view.el (view-mode): Update docstring.
78503
785042019-08-29  Noam Postavsky  <npostavs@gmail.com>
78505
78506	Fix subproc listening when setting filter to non-t (Bug#36591)
78507
78508	* src/process.c (Fset_process_filter): Call add_process_read_fd
78509	according to the state of process filter before it's updated.  This
78510	restores the correct functioning as it was before 2016-02-16 "Allow
78511	setting the filter masks later".  Inline the set_process_filter_masks
78512	call instead of fixing it that function, because it is also called
78513	from connect_network_socket, and we don't want to change the behavior
78514	of that function so close to release.
78515	* test/src/process-tests.el (set-process-filter-t): New test.
78516
785172019-08-29  Noam Postavsky  <npostavs@gmail.com>
78518
78519	* etc/NEWS.25: Belatedly announce rcirc-reconnect-delay.
78520
785212019-08-29  Noam Postavsky  <npostavs@gmail.com>
78522
78523	Mention term.el's \032 dir tracking in commentary (Bug#19524)
78524
78525	* lisp/term.el: Mention both forms of directory tracking in
78526	commentary.  Remove obsolete ChangeLog comments.  Move more relevant
78527	summary comments to the top.
78528
785292019-08-29  Stefan Kangas  <stefankangas@gmail.com>
78530
78531	Remove upload functionality of package-x from the elisp manual
78532
78533	Suggested by Stefan Monnier.
78534	Ref: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=19537#8
78535
78536	* doc/lispref/package.texi (Package Archives): Don't document
78537	package-x upload functions in the elisp manual, since they are not
78538	very commonly used.  (Bug#19537)
78539	* lisp/emacs-lisp/package-x.el (package-archive-upload-base)
78540	(package-upload-buffer, package-upload-file): Add to the doc strings
78541	any details removed from the elisp manual that would otherwise be
78542	missing.
78543
785442019-08-29  Nicolas Petton  <nicolas@petton.fr>
78545
78546	* etc/AUTHORS: Update.
78547
785482019-08-29  Basil L. Contovounesios  <contovob@tcd.ie>
78549
78550	Clarify Gravatar docs
78551
78552	For discussion, see the following thread:
78553	https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00528.html
78554	* doc/misc/gnus.texi (X-Face): Fix cross-reference.
78555	(Gravatars):
78556	* lisp/gnus/gnus-gravatar.el (gnus-gravatar-too-ugly):
78557	* lisp/image/gravatar.el (gravatar-cache-ttl, gravatar-rating)
78558	(gravatar-size): Clarify user option descriptions.
78559	(gravatar-retrieve, gravatar-retrieve-synchronously): Document
78560	return value.
78561
785622019-08-29  Alan Mackenzie  <acm@muc.de>
78563
78564	* doc/lispref/display.texi (Defining Faces): Say a face can't be undefined.
78565
785662019-08-29  Noam Postavsky  <npostavs@gmail.com>
78567
78568	Handle completely undecoded input in term (Bug#29918)
78569
78570	* lisp/term.el (term-emulate-terminal): Avoid errors if the whole
78571	decoded string is eight-bit characters.  Don't attempt to save the
78572	string for next iteration in that case.
78573	* test/lisp/term-tests.el (term-decode-partial)
78574	(term-undecodable-input): New tests.
78575
785762019-08-29  N. Jackson  <nljlistbox2@gmail.com>  (tiny change)
78577
78578	* doc/misc/forms.texi (Control File Format): Fix a doc error.
78579
78580	(Bug#36693)
78581
785822019-08-29  Basil L. Contovounesios  <contovob@tcd.ie>
78583
78584	Fix typo in package-alist docstring
78585
78586	Pointed out by Michael Heerdegen <michael_heerdegen@web.de>.
78587	* lisp/emacs-lisp/package.el (package-alist): Fix docstring
78588	grammar (bug#17403).
78589
785902019-08-29  Markus Triska  <triska@metalevel.at>
78591
78592	* doc/lispref/text.texi (Mode-Specific Indent): Fix a typo (bug#36646).
78593
785942019-08-29  Eli Zaretskii  <eliz@gnu.org>
78595
78596	Improve doc string of 'bidi-display-reordering'
78597
78598	* src/buffer.c (syms_of_buffer) <bidi-display-reordering>:
78599	Further doc fix.
78600
786012019-08-29  Stefan Kangas  <stefankangas@gmail.com>
78602
78603	Add warning to bidi-display-reordering doc string
78604
78605	This explanation was given by Eli Zaretskii on emacs-devel.
78606	For discussion, see:
78607	https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00294.html
78608
78609	* src/buffer.c (syms_of_buffer): Add warning to doc string of
78610	bidi-display-reordering to explain that it should only be used for
78611	debugging.
78612
786132019-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
78614
78615	Raise required librsvg version so as to match the current use
78616
78617	* configure.ac: Set RSVG_REQUIRED to 2.14.0 as rsvg_handle_get_dimensions
78618	needs it.
78619
786202019-08-29  Michael Albinus  <michael.albinus@gmx.de>
78621
78622	* lisp/net/tramp-sh.el (tramp-inline-compress-start-size): Set nil on w32.
78623
786242019-08-29  Stefan Monnier  <monnier@iro.umontreal.ca>
78625
78626	* lisp/progmodes/verilog-mode.el: One more ELPA Version:
78627
786282019-08-29  Stefan Monnier  <monnier@iro.umontreal.ca>
78629
78630	* lisp/svg.el, lisp/progmodes/ada-mode.el: Fix bug#36360.
78631
78632	Tell package.el their version number, for better behavior w.r.t the
78633	versions available in GNU ELPA
78634
786352019-08-29  Eli Zaretskii  <eliz@gnu.org>
78636
78637	Minor copyedit of "Font Lock" in user manual
78638
78639	* doc/emacs/display.texi (Font Lock): Make the wording about
78640	"enabling Font Lock" crystal clear.  (Bug#36529)
78641
786422019-08-29  Eli Zaretskii  <eliz@gnu.org>
78643
78644	Improve description of image descriptors
78645
78646	* doc/lispref/display.texi (Image Descriptors): More accurate
78647	description of where image files are looked up.  (Bug#36523)
78648
786492019-08-29  Eli Zaretskii  <eliz@gnu.org>
78650
78651	Improve documentation of secondary selections
78652
78653	* doc/emacs/killing.texi (Secondary Selection): Improve
78654	wording.  Mention that 'M-mouse-1' can be used to cancel
78655	secondary selections.  (Bug#36365)
78656
786572019-08-29  Eli Zaretskii  <eliz@gnu.org>
78658
78659	* src/fns.c (Fmapconcat): Doc fix.  (Bug#36418)
78660
786612019-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
78662
78663	Avoid crash inside CFCharacterSetIsLongCharacterMember (Bug#36507)
78664
78665	* src/macfont.m (macfont_supports_charset_and_languages_p)
78666	(macfont_has_char): Don't pass integers outside the Unicode codespace to
78667	CFCharacterSetIsLongCharacterMember.  Do not merge to master.
78668
786692019-08-29  Noam Postavsky  <npostavs@gmail.com>
78670
78671	Fix python.el docstring (Bug#36458)
78672
78673	* lisp/progmodes/python.el (python-shell--prompt-calculated-output-regexp):
78674	python-shell-set-prompt-regexp doesn't exist, presumably
78675	python-shell-prompt-set-calculated-regexps was meant.
78676
786772019-08-29  Eli Zaretskii  <eliz@gnu.org>
78678
78679	* lisp/hi-lock.el (hi-lock-line-face-buffer): Doc fix.  (Bug36448)
78680
786812019-08-29  Stefan Kangas  <stefankangas@gmail.com>
78682
78683	Fix typo in doc string of file-exists-p (bug#36408)
78684
78685	* src/fileio.c (Ffile_exists_p): Fix typo in doc string.
78686
786872019-08-29  Juanma Barranquero  <lekktu@gmail.com>
78688
78689	* test/lisp/url/url-file-tests.el (url-file): Fix for POSIX filenames.
78690
786912019-08-29  Stefan Kangas  <stefankangas@gmail.com>
78692
78693	Fix typo in windows.texi
78694
78695	* doc/lispref/windows.texi (Window History): Fix typo.  (Bug#36412)
78696
786972019-08-29  Basil L. Contovounesios  <contovob@tcd.ie>
78698
78699	Clarify & update (elisp) Writing Emacs Primitives
78700
78701	* doc/lispref/internals.texi (Writing Emacs Primitives): Update some
78702	of the sample code listings, fixing argument lists and parentheses.
78703	Replace ... with @dots{}.  Describe UNEVALLED special forms as
78704	taking a single argument. (bug#36392)
78705
787062019-08-29  Eli Zaretskii  <eliz@gnu.org>
78707
78708	Clarify a subtle issue in the Internals chapter of lispref
78709
78710	* doc/lispref/internals.texi (Writing Emacs Primitives):
78711	Clarify the issue with relocation of buffer or string text as
78712	side effect of Lisp evaluation.  (Bug#36392)
78713
787142019-08-29  Noam Postavsky  <npostavs@gmail.com>
78715
78716	Fix sgml-mode handling of quotes within parens (Bug#36347)
78717
78718	* lisp/textmodes/sgml-mode.el (sgml-syntax-propertize): Use
78719	syntax-ppss-table if set.  This is only needed on the release branch,
78720	on master the caller (syntax-propertize) already does this.
78721	(sgml-mode): Set syntax-ppss-table to sgml-tag-syntax-table.  This
78722	correctly classifies parens as punctuation, so they won't confuse the
78723	parser.
78724	* test/lisp/textmodes/sgml-mode-tests.el (sgml-tests--quotes-syntax):
78725	New test copied from master, with two cases added for this bug.
78726
787272019-08-29  Juanma Barranquero  <lekktu@gmail.com>
78728
78729	Rename 'make-symbolic-link' argument NEWNAME to LINKNAME
78730
78731	* src/fileio.c (Fmake_symbolic_link): Fix docstring.
78732	* doc/lispref/files.texi (Changing Files): Doc fix.
78733
787342019-08-29  Robert Pluim  <rpluim@gmail.com>
78735
78736	Check that length of data returned by sysctl is non-zero
78737
78738	The length of the data returned by sysctl can be zero, which was not
78739	checked for.  This could cause crashes, e.g. when querying
78740	non-existent processes.  (Bug#36279)
78741
78742	* src/sysdep.c (list_system_processes) [DARWIN_OS || __FreeBSD__]:
78743	(system_process_attributes) [__FreeBSD__]:
78744	(system_process_attributes) [DARWIN_OS]:
78745	* src/filelock.c (get_boot_time) [CTL_KERN && KERN_BOOTTIME]: Check
78746	  for zero length data returned by sysctl.
78747
787482019-08-29  Juanma Barranquero  <lekktu@gmail.com>
78749
78750	* test/lisp/progmodes/python-tests.el (python-virt-bin): Doc fix.
78751
787522019-08-29  Juanma Barranquero  <lekktu@gmail.com>
78753
78754	Fix Python tests depending on system-type
78755
78756	* test/lisp/progmodes/python-tests.el (python-virt-bin): New function.
78757	(python-shell-calculate-exec-path-2)
78758	(python-shell-calculate-exec-path-3)
78759	(python-shell-calculate-exec-path-4)
78760	(python-shell-with-environment-1, python-shell-with-environment-2):
78761	Use it.
78762
787632019-08-29  Juanma Barranquero  <lekktu@gmail.com>
78764
78765	Fix problem with wdired test when symlinks cannot be created.
78766
78767	* test/lisp/wdired-tests.el (wdired-test-symlink-name):
78768	Skip test if 'make-symbolic-link' fails for whatever reason;
78769	that's not what's being tested.
78770
787712019-08-29  Eli Zaretskii  <eliz@gnu.org>
78772
78773	Improve wording of documentation of click events
78774
78775	* doc/lispref/commands.texi (Click Events, Accessing Mouse):
78776	Improve and clarify wording.  (Bug#36232)
78777
787782019-08-29  Mattias Engdegård  <mattiase@acm.org>
78779
78780	Backport: Fix typo in regexp-opt example code
78781
78782	* doc/lispref/searching.texi (Regexp Functions):
78783	Fix typo in example code (Bug#34596).
78784
787852019-08-29  Stefan Kangas  <stefankangas@gmail.com>
78786
78787	Remove outdated comment in winner.el (Bug#36185)
78788
78789	* lisp/winner.el: Remove outdated comment.
78790
787912019-08-29  Michael Albinus  <michael.albinus@gmx.de>
78792
78793	Fix accidential change in tramp-tests; do not merge with master
78794
78795	* lisp/net/trampver.el: Change version to "2.3.5.26.3".
78796	(customize-package-emacs-version-alist): Add Tramp version
78797	integrated in Emacs 26.3.
78798
78799	* test/lisp/net/tramp-tests.el (tramp-test42-auto-load):
78800	Add skip for w32.
78801
788022019-08-29  Juanma Barranquero  <lekktu@gmail.com>
78803
78804	tramp-test42-auto-load: Add expected-result.
78805
78806	* test/lisp/net/tramp-tests.el (tramp-test42-auto-load):
78807	Expect a failed result if remote file access is not enabled,
78808	as it happens while doing the test on Windows.
78809
788102019-08-29  Juanma Barranquero  <lekktu@gmail.com>
78811
78812	* test/lisp/url/url-file-tests.el (url-file): Use file:///, not file://.
78813
788142019-08-29  Juanma Barranquero  <lekktu@gmail.com>
78815
78816	Fix doc of srecompile-compile-split-code (Bug#36200)
78817
78818	* lisp/cedet/srecode/compile.el (srecode-compile-split-code):
78819	Remove leftover text from docstring.
78820
788212019-08-29  Eric Abrahamsen  <eric@ericabrahamsen.net>
78822
78823	Make sure Gnus imap group names are decoded before searching
78824
78825	do not merge (fix unnecessary in Emacs 27)
78826
78827	* lisp/gnus/nnir.el (nnir-run-imap): Ensure that non-ascii group names
78828	  have been fully decoded before passing them to imap search.
78829
788302019-08-29  Eli Zaretskii  <eliz@gnu.org>
78831
78832	Remove failing test erroneously added in backport
78833
78834	* test/src/thread-tests.el (threads-test-bug33073): Remove
78835	test which cannot work on the emacs-26 branch.  Do not merge
78836	to master.  Reported by Juanma Barranquero <lekktu@gmail.com>.
78837
788382019-08-29  Juanma Barranquero  <lekktu@gmail.com>
78839
78840	* lisp/net/sieve-manage.el (sieve-manage-parse-capability): Doc fix.
78841
788422019-08-29  Nicolas Petton  <nicolas@petton.fr>
78843
78844	Bump Emacs version to 26.2.90
78845
78846	* README:
78847	* configure.ac:
78848	* msdos/sed2v2.inp:
78849	* nt/README.W32: Bump Emacs version.
78850
788512019-08-29  Nicolas Petton  <nicolas@petton.fr>
78852
78853	* etc/AUTHORS: Update.
78854
788552019-08-29  Martin Rudalics  <rudalics@gmx.at>
788562019-06-15  Martin Rudalics  <rudalics@gmx.at>
78857
78858	Fix description of 'display-buffer-in-previous-window' again (Bug#36161)
78859
78860	* lisp/window.el (display-buffer-in-previous-window): Make
78861	doc-string more explicit (Bug#36161).
78862	* doc/lispref/windows.texi (Buffer Display Action Functions):
78863	Make description of 'display-buffer-in-previous-window' more
78864	explicit.
78865	(Buffer Display Action Alists): Mention
78866	'display-buffer-in-previous-window' in description of
78867	'reusable-frames' entry.
78868
788692019-06-15  Eli Zaretskii  <eliz@gnu.org>
78870
78871	Consistently use @minus{} for negative arguments
78872
78873	* doc/emacs/mark.texi (Marking Objects):
78874	* doc/misc/gnus.texi (Selecting a Group):
78875	* doc/emacs/programs.texi (Comment Commands):
78876	* doc/emacs/killing.texi (Deletion):
78877	* doc/emacs/display.texi (Recentering):
78878	* doc/lispref/display.texi (Face Attributes):
78879	* doc/lispref/searching.texi (String Search, Regexp Search):
78880	Make the markup of "-N" use @minus{} uniformly.  (Bug#35885)
78881
788822019-06-15  Martin Rudalics  <rudalics@gmx.at>
78883
78884	Fix doc of 'display-buffer-in-previous-window' (Bug#36161)
78885
78886	* doc/lispref/windows.texi (Buffer Display Action Functions):
78887	* lisp/window.el (display-buffer-in-previous-window): Tell
78888	that 'display-buffer-in-previous-window' prefers
78889	non-selected windows (Bug#36161).
78890
788912019-06-15  Juanma Barranquero  <lekktu@gmail.com>
78892
78893	lisp/*.el: Minor docstring fixes
78894
78895	* lisp/subr.el (definition-prefixes): Reflow docstring.
78896
78897	* lisp/svg.el (svg-create): Doc fix to allow arg higlighting.
78898	(svg-gradient, svg-rectangle): Improve docstring formatting.
78899
789002019-06-15  Eli Zaretskii  <eliz@gnu.org>
78901
78902	Avoid assertion violation when comparing with main-thread
78903
78904	* src/thread.c (unmark_main_thread): New function.
78905	* src/lisp.h (unmark_main_thread): Prototype it.
78906	* src/alloc.c (garbage_collect_1): Call it after sweeping.
78907	(Bug#33073)
78908
78909	* test/src/thread-tests.el (threads-test-bug33073): New test.
78910
789112019-06-15  Andreas Schwab  <schwab@linux-m68k.org>
78912
78913	Revert "Don't mark main_thread (Bug#36155)"
78914
78915	This reverts commit 1877b7b4d79b3434379fd5a4abd85906c25df00c.
78916
789172019-06-15  Andreas Schwab  <schwab@linux-m68k.org>
78918
78919	Don't mark main_thread (Bug#36155)
78920
78921	* src/thread.c (mark_threads_callback): Don't mark main_thread.
78922
789232019-06-15  Eli Zaretskii  <eliz@gnu.org>
78924
78925	More quotation fixes (Bug#35885)
78926
78927	* doc/emacs/text.texi (Quotation Marks): Fix a typo.
78928	* doc/emacs/modes.texi (Minor Modes): Fix another case of
78929	showing quotations.
78930
789312019-06-15  Eli Zaretskii  <eliz@gnu.org>
78932
78933	Minor copyedits in efaq-w32
78934
78935	* doc/misc/efaq-w32.texi (Grep, Recursive grep): More accurate
78936	description of using 'findstr' as a poor-man's replacement for
78937	'grep'.  Reported by 范凯 <m_pupil@163.com>
78938
789392019-06-15  Eli Zaretskii  <eliz@gnu.org>
78940
78941	Tiny improvement of documentation of major mode conventions
78942
78943	* doc/lispref/modes.texi (Major Mode Conventions): More
78944	accurate advice regarding customization of 'C-M-a' by major
78945	modes.
78946
789472019-06-15  Juanma Barranquero  <lekktu@gmail.com>
78948
78949	* nt/addpm.c (main): Fix buffer overflow
78950
789512019-06-15  Eli Zaretskii  <eliz@gnu.org>
78952
78953	Resurrect display-line-number-mode in client frames
78954
78955	* lisp/linum.el (linum-on): Mention bug#35726 in a comment.
78956	* lisp/display-line-numbers.el
78957	(display-line-numbers--turn-on): Don't check for daemon.
78958	(Bug#35726)
78959
789602019-06-15  Eli Zaretskii  <eliz@gnu.org>
78961
78962	* src/fns.c (Fmapconcat): Doc fix.  (Bug#35710)
78963
789642019-06-15  Phillip Lord  <phillip.lord@russet.org.uk>
78965
78966	Fix typo
78967
78968	* nt/README.W32:
78969
789702019-06-15  Eli Zaretskii  <eliz@gnu.org>
78971
78972	* lisp/term/w32-win.el ([noname]): Bind to 'ignore'.  (Bug#36083)
78973
789742019-06-15  Eli Zaretskii  <eliz@gnu.org>
78975
78976	Fix styling of Unicode codepoints in manuals
78977
78978	* doc/lispref/nonascii.texi (Character Properties):
78979	* doc/lispref/display.texi (Glyphless Chars)
78980	(Bidirectional Display):
78981	* doc/emacs/search.texi (Lax Search):
78982	* doc/emacs/text.texi (Quotation Marks):
78983	* doc/emacs/basic.texi (Inserting Text): Canonicalize the
78984	style of "U+NNNN CHARACTER NAME".  (Bug#35885)
78985
789862019-06-15  Eli Zaretskii  <eliz@gnu.org>
78987
78988	Fix a few uses of quotes in user manual
78989
78990	* doc/emacs/text.texi (Quotation Marks):
78991	* doc/emacs/display.texi (Text Display):
78992	* doc/emacs/basic.texi (Inserting Text): Fix some more
78993	quotes.  (Bug#35885)
78994
789952019-06-15  Eli Zaretskii  <eliz@gnu.org>
78996
78997	More minor copyedits in the Emacs manual
78998
78999	* doc/emacs/basic.texi (Arguments):
79000	* doc/emacs/display.texi (Recentering, Text Display):
79001	* doc/emacs/regs.texi (Text Registers, Rectangle Registers):
79002	* doc/emacs/mark.texi (Disabled Transient Mark): Fix
79003	inaccuracies and typos.  (Bug#35885)
79004
790052019-06-15  Eli Zaretskii  <eliz@gnu.org>
79006
79007	Fix minor issues in the Emacs manual
79008
79009	* doc/emacs/search.texi (Regexp Replace, Regexps):
79010	* doc/emacs/kmacro.texi (Keyboard Macro Query)
79011	(Save Keyboard Macro): Fix inaccuracies and typos.
79012	(Bug#35885)
79013
790142019-06-15  Martin Rudalics  <rudalics@gmx.at>
79015
79016	Try to improve text on atomic windows in Elisp manual
79017
79018	* doc/lispref/windows.texi (Deleting Windows): Mention how
79019	'delete-window' and 'delete-other-windows' handle atomic
79020	windows.  Minor rewrite.
79021	(Quitting Windows): Mention how 'quit-restore-window' handles
79022	atomic windows and that it tries to avoid raising an error.
79023	(Atomic Windows): Tell how to dissolve atomic windows.
79024
790252019-06-15  Noam Postavsky  <npostavs@gmail.com>
79026
79027	Don't recommend insert-before-markers in process filters
79028
79029	See <https://lists.gnu.org/r/emacs-devel/2019-05/msg00062.html> and
79030	Bug#35334.
79031	* doc/lispref/processes.texi (Filter Functions): Go back to using
79032	plain insert in the example filter.  Add note about updating window
79033	point.
79034
790352019-06-15  Noam Postavsky  <npostavs@gmail.com>
79036
79037	Disable byte-compile-cond-use-jump-table (Bug#35770)
79038
79039	* lisp/emacs-lisp/bytecomp.el (byte-compile-cond-use-jump-table): Set
79040	to nil by default.
79041
79042	Don't merge to master, the bug is already fixed there.
79043
790442019-06-15  Noam Postavsky  <npostavs@gmail.com>
79045
79046	Allow macros autoloaded as functions during bytecomp (Bug#36022)
79047
79048	* lisp/emacs-lisp/bytecomp.el (byte-compile-callargs-warn): Don't pass
79049	symbols which don't have a known definition to
79050	byte-compile--function-signature, it fails to compile code which
79051	previously compiled successfully (for example, gnus.el until
79052	2019-06-01 "* lisp/gnus/gnus.el: Mark autoloaded macros as such" which
79053	autoloads some macros as if they were functions).
79054
790552019-06-15  Glenn Morris  <rgm@gnu.org>
79056
79057	* lisp/gnus/gnus.el: Mark autoloaded macros as such.
79058
79059	This avoids a build failure.
79060
790612019-06-15  Eli Zaretskii  <eliz@gnu.org>
79062
79063	Speed up redisplay of HELLO
79064
79065	* etc/HELLO: Set 'inhibit-compacting-font-caches' non-nil
79066	locally.  (Bug#36032)
79067
79068	* lisp/files.el: Add 'inhibit-compacting-font-caches' to the
79069	list of built-in variables for which we set up
79070	'safe-local-variable' properties.
79071
790722019-06-15  Eli Zaretskii  <eliz@gnu.org>
79073
79074	Improve documentation of 'safe-local-variable' property
79075
79076	* doc/lispref/variables.texi (File Local Variables): Document
79077	how to define 'safe-local-variable' properties for built-in
79078	variables.
79079
790802019-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
79081
79082	* lisp/emacs-lisp/package.el: Obey buffer-file-coding-system (bug#35739)
79083
79084	`url-insert-file-contents` saves in buffer-file-coding-system
79085	the coding-system used to decode the contents.  Preserve this
79086	as the contents is moved from buffer to string to buffer, and use
79087	it when saving the contents to file, so as to try and better preserve
79088	the original byte sequence.
79089
79090	(package--buffer-string, package--cs): New functions.
79091	(package--check-signature): Encode `string` if a coding-system
79092	was specified in buffer-file-coding-system.
79093	(package--download-one-archive, package-install-from-archive):
79094	Obey and preserve the buffer-file-coding-system if specified.
79095
79096	Do not merge.
79097
790982019-06-15  Noam Postavsky  <npostavs@gmail.com>
79099
79100	Warn about wrong number of args for subrs (Bug#35767)
79101
79102	* lisp/emacs-lisp/bytecomp.el (byte-compile-callargs-warn): Don't
79103	assume byte-compile-fdefinition will return non-nil.
79104	* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-warn-wrong-args)
79105	(bytecomp-warn-wrong-args-subr): New tests.
79106
791072019-06-15  Noam Postavsky  <npostavs@gmail.com>
79108
79109	Use plain symbols for eieio type descriptors (Bug#29220)
79110
79111	Since Emacs 26, eieio objects use a class record (with circular
79112	references) as the type descriptor of the object record.  This causes
79113	problems when reading back an object from a string, because the class
79114	record is not `eq' to the canonical one (which means that read objects
79115	don't satisfy the foo-p predicate).
79116	* lisp/emacs-lisp/eieio.el (make-instance): As a (partial) fix, set
79117	the record's type descriptor to a plain symbol for the type descriptor
79118	when eieio-backward-compatibility is non-nil (the default).
79119	* lisp/emacs-lisp/eieio-core.el (eieio--object-class): Call
79120	eieio--class-object on the type tag when eieio-backward-compatibility
79121	is non-nil.
79122	(eieio-object-p): Use eieio--object-class instead of
79123	eieio--object-class-tag.
79124	* test/lisp/emacs-lisp/eieio-tests/eieio-test-persist.el
79125	(eieio-test-persist-hash-and-vector)
79126	(eieio-test-persist-interior-lists): Make into functions.
79127	(eieio-persist-hash-and-vector-backward-compatibility)
79128	(eieio-persist-hash-and-vector-no-backward-compatibility)
79129	(eieio-test-persist-interior-lists-backward-compatibility)
79130	(eieio-test-persist-interior-lists-no-backward-compatibility): New
79131	tests which call them, eieio-backward-compatibility let-bound.
79132
791332019-06-15  Paul Eggert  <eggert@cs.ucla.edu>
79134
79135	Pacify GCC 9 -Wredundant-decls
79136
79137	* src/gmalloc.c (_fraghead) [!HYBRID_MALLOC]:
79138	Make it static in this case, too.  This avoids having both
79139	‘extern struct list _fraghead[];’ and
79140	‘static struct list _fraghead[BLOCKLOG];’, which
79141	GCC 9 complains about.
79142
791432019-06-15  Paul Eggert  <eggert@cs.ucla.edu>
79144
79145	Pacify librsvg 2.45.1 and later
79146
79147	* src/image.c (svg_load_image): Pacify librsvg 2.45.1 and later,
79148	and add a FIXME comment about the deprecated librsvg functions.
79149	Backport from master.
79150
791512019-06-15  Paul Eggert  <eggert@cs.ucla.edu>
79152
79153	Simplify xd_signature to pacify GCC 9
79154
79155	* src/dbusbind.c (xd_signature): Use simpler way to set up
79156	the subsignature.  This also pacifies GCC 9 on Fedora 30 x86-64.
79157	Backport from master.
79158
791592019-06-15  Paul Eggert  <eggert@cs.ucla.edu>
79160
79161	Pacify GCC when compiling unexelf.c on Fedora 30
79162
79163	* src/unexelf.c (unexec): Pacify GCC 9.
79164
791652019-06-15  Paul Eggert  <eggert@cs.ucla.edu>
79166
79167	Suppress GCC 9 “no longer supported” messages
79168
79169	* m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Remove -Wchkp.
79170	This suppresses a boatload of warnings of the form
79171	“gcc: warning: switch ‘-Wchkp’ is no longer supported”.
79172	when using GCC 9.  Do not merge to master.
79173
791742019-06-15  Stefan Kangas  <stefankangas@gmail.com>
79175
79176	Fix docstring of bookmark-get-bookmark
79177
79178	* lisp/bookmark.el (bookmark-get-bookmark): Document optional
79179	argument NOERROR. (bug#20148)
79180
791812019-06-15  Noam Postavsky  <npostavs@gmail.com>
79182
79183	Avoid infloop in read-multiple-choice (Bug#32257)
79184
79185	* lisp/emacs-lisp/rmc.el (read-multiple-choice): When `read-char'
79186	signals an error "Non-character input-event", call `read-event' to
79187	take the non-character event out of the queue.  Don't merge to master,
79188	we just use `read-event' directly there, rather than this solution
79189	which relies a particular error message.
79190
791912019-06-15  Eli Zaretskii  <eliz@gnu.org>
79192
79193	Improve documentation of decoding into a unibyte buffer
79194
79195	* doc/lispref/nonascii.texi (Explicit Encoding): Document what
79196	happens when DESTINATION of decoding is a unibyte buffer.
79197
79198	* src/coding.c (Fdecode_coding_region)
79199	(Fdecode_coding_string): Document what happens if DESTINATION
79200	is a unibyte buffer.
79201
792022019-06-15  Mauro Aranda  <maurooaranda@gmail.com>
79203
79204	Remove redundants "See" before @xref or @pxref (Bug#35793)
79205
79206	* doc/lispref/control.texi (Control Structures):
79207	* doc/lispref/modes.texi (Search-based Fontification):
79208	* doc/misc/cc-mode.texi (Filling and Line Breaking Commands)
79209	(Auto-newline Insertion, Other Special Indentations):
79210	* doc/misc/dbus.texi (Errors and Events):
79211	* doc/misc/dired-x.texi (Find File At Point):
79212	* doc/misc/eudc.texi (Display of Query Results, Inline Query Expansion):
79213	* doc/misc/gnus-faq.texi (FAQ 3-11):
79214	* doc/misc/gnus.texi (Group Parameters, Posting Styles)
79215	(Spam Package Introduction):
79216	* doc/misc/org.texi (LaTeX fragments, Previewing LaTeX fragments):
79217	* doc/misc/reftex.texi (Commands):
79218	Remove redundant "See" before cross references.
79219	* doc/lispref/functions.texi (Function Safety): Redundant "see" is in
79220	ignored text, but remove it anyway.
79221	* doc/lispref/positions.texi (Skipping Characters): Remove redundant
79222	"See" before cross references.  Change @xref to @pxref, which is
79223	more suitable when at the end of a sentence.
79224
79225	Most of the redundants "See" found by Noam Postavsky.
79226
792272019-06-15  Dario Gjorgjevski  <dario.gjorgjevski@gmail.com>
79228
79229	Fix customization type of recentf-max-saved-items
79230
79231	Change the customization type of recentf-max-saved-items to include
79232	nil, as it is an allowed value (Bug#35771).
79233	* lisp/recentf.el (recentf-max-saved-items): Change the customization
79234	type in the defcustom.
79235
792362019-06-15  Tom Levy  <tomlevy93@gmail.com>  (tiny change)
79237
79238	Fix a typo in ELisp manual
79239
79240	* doc/lispref/sequences.texi (Sequence Functions): Fix a typo.
79241	(Bug#35817)
79242
792432019-06-15  Noam Postavsky  <npostavs@gmail.com>
79244
79245	Add option to disable help completion autoloading (Bug#28607)
79246
79247	* lisp/help-fns.el (help-enable-completion-auto-load): New option.
79248	(help--symbol-completion-table): Consult it.
79249	* doc/emacs/building.texi (Lisp Libraries): Document it.
79250	* etc/NEWS: Announce it.
79251	* doc/lispref/loading.texi (Autoload by Prefix): New section.
79252	(Autoload): Reference it.
79253
792542019-06-15  Noam Postavsky  <npostavs@gmail.com>
79255
79256	Don't segfault on force-window-update of deleted window
79257
79258	* src/window.c (Fforce_window_update): Do nothing for deleted
79259	windows (Bug#35784).
79260
792612019-06-15  Mauro Aranda  <maurooaranda@gmail.com>
79262
79263	Fix typo in ELisp manual
79264
79265	* doc/lispref/variables.texi (Directory Local Variables): Fix typo in
79266	dir-locals-set-class-variables description.  (Bug#35799)
79267
792682019-06-15  Mauro Aranda  <maurooaranda@gmail.com>
79269
79270	Remove repeated function call in picture.el
79271
79272	* lisp/textmodes/picture.el (picture-mode-map):  Remove repeated
79273	define-key call.  (Bug#35772)
79274
792752019-06-15  Basil L. Contovounesios  <contovob@tcd.ie>
79276
79277	Fix Hideshow key binding typo in Emacs manual
79278
79279	* doc/emacs/programs.texi (Hideshow): Add missing function and key
79280	index entries.  Fix hs-toggle-hiding binding typo. (bug#35798)
79281
792822019-06-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
79283
79284	Backport: Fix name of gnus-summary-sort-by-mark(s)
79285
79286	* lisp/gnus/gnus-sum.el (gnus-summary-sort-by-marks): Needs the
79287	  "s", according to docs and keymap both. (bug#35765)
79288
79289	(cherry picked from commit 13248f7444630508cfc3b78a07e8d96613af11c8)
79290
792912019-06-15  Eli Zaretskii  <eliz@gnu.org>
79292
79293	Remove from docs references to obsolete MULE variables
79294
79295	* src/search.c (search_buffer): Remove obsolete text from a
79296	comment.
79297	* src/fns.c (Fstring_make_unibyte): Remove obsolete text from
79298	a doc string.
79299
793002019-06-15  Konstantin Kharlamov  <Hi-Angel@yandex.ru>
79301
79302	Do potentially destructive operations in prepare-commit-msg
79303
79304	* build-aux/git-hooks/prepare-commit-msg: If someone occasionally puts
79305	Signed-off line, it will likely get there through -s option of git.
79306	Exploit this fact to abort before a user got a chance to type commit
79307	message.  (Bug#35368)
79308
793092019-06-15  Paul Eggert  <eggert@cs.ucla.edu>
79310
79311	Backport: fix broken build on m68k
79312
79313	The GCC + valgrind fix caused the m68k build to fail (Bug#35711).
79314	Simplify string allocation a bit to make similar problems less
79315	likely in the future.
79316	* src/alloc.c (sdata, SDATA_NBYTES, SDATA_DATA) [GC_CHECK_STRING_BYTES]:
79317	Use the same implementation as with !GC_CHECK_STRING_BYTES,
79318	as the special case is no longer needed.
79319	(SDATA_ALIGN): New constant.
79320	(SDATA_SIZE): Remove this macro, replacing with ...
79321	(sdata_size): ... this new function.  All uses changed.
79322	Properly account for sizes and alignments even in the m68k case,
79323	and even if GC_CHECK_STRING_BYTES is not defined.
79324
793252019-06-15  Noam Postavsky  <npostavs@gmail.com>
79326
79327	Handle GNUTLS_E_AGAIN in emacs_gnutls_read (Bug#34341)
79328
79329	Don't merge to master, this has already been fixed there by 2019-01-15
79330	"Fix unlikely races with GnuTLS, datagrams".
79331	* src/gnutls.c (emacs_gnutls_read): Similar to emacs_gnutls_write,
79332	when gnutls_record_recv returns GNUTLS_E_AGAIN set errno to EGAIN.
79333
793342019-06-15  Neil Roberts  <bpeeluk@yahoo.co.uk>
79335
79336	Let dir locals for more specific modes override those from less
79337
79338	The list of dir local variables to apply is now sorted by the number
79339	of parent modes of the mode used as the key in the association list.
79340	That way when the variables are applied in order the variables from
79341	more specific modes will override those from less specific modes.
79342
79343	If there are directory entries in the list then they are sorted in
79344	order of name length.  The list of modes for that dir is then
79345	recursively sorted with the same mechanism.  That way variables tied
79346	to a particular subdirectory override those in a parent directory.
79347
79348	Previously the behavior didn’t seem to be well defined anyway and was
79349	dependent on the order they appeared in the file.  However this order
79350	was changed in version 26.1 and it probably also depended on the
79351	number of dir-local files that are merged.
79352
79353	Bug#33400
79354
79355	* lisp/files.el (dir-locals-get-sort-score, dir-locals-sort-variables)
79356	(dir-locals-read-from-dir): Sort the dir locals so that more precise
79357	modes and directory-specific entries have override lesser ones.
79358	* doc/emacs/custom.texi (Directory Variables): Document the priority.
79359
793602019-06-15  Eli Zaretskii  <eliz@gnu.org>
79361
79362	Improve documentation of Hexl mode
79363
79364	* doc/emacs/misc.texi (Editing Binary Files): Clarify
79365	"insertion".  Improve wording.  Add a few Hexl commands.
79366	(Bug#35580)
79367
793682019-06-15  Alan Mackenzie  <acm@muc.de>
79369
79370	Fix description of (move-to-column <n> t) when column <n> is inside a tab
79371
79372	This fixes bug #35647.  State that when indent-tabs-mode is non-nil, spaces
79373	are inserted before the tab rather than the tab being replaced by spaces.
79374
79375	* doc/lispref/text.texi (columns)
79376	* src/indent.c (move-to-column): Make the above documentation amendment.
79377
793782019-06-15  Noam Postavsky  <npostavs@gmail.com>
79379
79380	Recognize single quote attribute values in nxml and sgml (Bug#35381)
79381
79382	* lisp/textmodes/sgml-mode.el (sgml-specials): Add single quote.
79383	(sgml-syntax-propertize-rules): Handle single quote.
79384	* test/lisp/nxml/nxml-mode-tests.el (nxml-mode-font-lock-quotes): New
79385	test.
79386	* test/lisp/textmodes/sgml-mode-tests.el
79387	(sgml-delete-tag-bug-8203-should-not-delete-apostrophe): Now passes.
79388
793892019-06-15  Noam Postavsky  <npostavs@gmail.com>
79390
79391	Disable extra display of &#10; in nxml-mode (Bug#32897)
79392
79393	* lisp/nxml/nxml-mode.el (nxml-char-ref-display-extra): Don't put
79394	display for the newline, it makes the indentation look wrong.
79395
793962019-06-15  Noam Postavsky  <npostavs@gmail.com>
79397
79398	Fix nxml-get-inside (Bug#32003)
79399
79400	The change from 2016-01-16 "lisp/nxml: Use syntax-tables for comments"
79401	made nxml-get-inside return non-nil for any string or comment,
79402	including attribute strings.  This caused incorrect and therefore
79403	indentation.
79404	* lisp/nxml/nxml-rap.el: Update commentary to reflect changes to
79405	nxml-mode parsing.
79406	(nxml-get-inside): Only return non-nil when inside comments and
79407	generic strings, not normal quote-delimited strings.
79408	* test/lisp/nxml/nxml-mode-tests.el: New tests.
79409
794102019-06-15  Eli Zaretskii  <eliz@gnu.org>
79411
79412	Fix positioning client buffer as instructed by emacsclient
79413
79414	* lisp/server.el (server-switch-buffer): Let-bind
79415	switch-to-buffer-preserve-window-point to nil when switching
79416	to the client buffer, when the client requested a specific
79417	position.  (Bug#35602)
79418
794192019-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
79420
79421	* etc/package-keyring.gpg: Add the 2019 key (backport)
79422
794232019-06-15  Vitalie Spinu  <spinuvit@gmail.com>
79424
79425	Fix incorrect cloning of eieio-instance-inheritor objects (Bug#34840)
79426
79427	* lisp/emacs-lisp/eieio-base.el (clone): Unbound slots of
79428	  eieio-instance-inheritor objects as documented in the docs string
79429	  and implemented in the original eieio implementation.
79430
794312019-06-15  Vitalie Spinu  <spinuvit@gmail.com>
79432
79433	Fix cloning of eieio-named objects (Bug#22840)
79434
79435	* lisp/emacs-lisp/eieio-base.el (clone): Correctly set the name of the
79436	  cloned objects from eieio-named instances.
79437
794382019-06-15  Basil L. Contovounesios  <contovob@tcd.ie>
79439
79440	Fix ibuffer-unmark-backward synopsis (bug#35572)
79441
79442	* lisp/ibuffer.el (ibuffer-mode): Fix synopsis of
79443	ibuffer-unmark-backward along with other minor copy-edits.
79444
794452019-06-15  Noam Postavsky  <npostavs@gmail.com>
79446
79447	Clarify handling of long options (Bug#24949)
79448
79449	* doc/emacs/cmdargs.texi (Emacs Invocation): Note that space can be
79450	used instead of "=" only if an option requires an argument.
79451
794522019-06-15  Eli Zaretskii  <eliz@gnu.org>
79453
79454	Improve documentation of the daemon and emacsclient
79455
79456	* doc/emacs/misc.texi (emacsclient Options):
79457	* doc/emacs/cmdargs.texi (Initial Options): Document that
79458	using --daemon=NAME will need to specify the same NAME when
79459	invoking 'emacscilent'.  (Bug#35547)
79460
794612019-06-15  Noam Postavsky  <npostavs@gmail.com>
79462
79463	* etc/NEWS.24: Belatedly announce delete-consecutive-dups.
79464
794652019-06-15  Glenn Morris  <rgm@gnu.org>
79466
79467	* admin/update_autogen: Handle git worktree.
79468
794692019-06-15  Noam Postavsky  <npostavs@gmail.com>
79470
79471	Update process filter example (Bug#35044)
79472
79473	* doc/lispref/processes.texi (Filter Functions): Use
79474	insert-before-markers in the "ordinary" filter example, like
79475	internal-default-process-filter does.
79476
794772019-06-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
79478
79479	* src/macfont.m (macfont_shape): Use convenient LGLYPH_NEW.
79480
794812019-06-15  Noam Postavsky  <npostavs@gmail.com>
79482
79483	Recommend using font-lock-face over face (Bug#35044)
79484
79485	* doc/lispref/modes.texi (Precalculated Fontification): Explain
79486	advantages of using font-lock-face over face.
79487
794882019-06-15  Noam Postavsky  <npostavs@gmail.com>
79489
79490	Check if mouse_face_overlay was deleted (Bug#35273)
79491
79492	* src/xdisp.c (note_mouse_highlight): Check if the mouse_face_overlay
79493	actually points to a buffer, before calling
79494	mouse_face_overlay_overlaps on it.
79495
794962019-06-15  Paul Eggert  <eggert@cs.ucla.edu>
79497
79498	Port to platforms where tputs is in libtinfow
79499
79500	* configure.ac (tputs_library): Also try tinfow, ncursesw (Bug#33977).
79501
79502	(cherry picked from commit a3d52b3057c98bce581bc94912ef3ced6fad6f14)
79503
795042019-06-15  Glenn Morris  <rgm@gnu.org>
79505
79506	* admin/admin.el (set-version): Check for increase in version length,
79507	rather than a .50 version.
79508
795092019-06-15  Noam Postavsky  <npostavs@gmail.com>
79510
79511	Be more careful about indent-sexp going over eol (Bug#35286)
79512
79513	* lisp/emacs-lisp/lisp-mode.el (indent-sexp): Only go over multiple
79514	sexps if the end of line is within a sexp.
79515	* test/lisp/emacs-lisp/lisp-mode-tests.el
79516	(indent-sexp-stop-before-eol-comment)
79517	(indent-sexp-stop-before-eol-non-lisp): New tests.
79518
795192019-06-15  Basil L. Contovounesios  <contovob@tcd.ie>
79520
79521	Backport: Improve pure and side-effect-free docs
79522
79523	For discussion, see thread starting at:
79524	https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg00316.html
79525	* doc/lispref/customize.texi (Composite Types): Do not overspecify
79526	:match-alternatives predicates.
79527	* doc/lispref/eval.texi (Intro Eval): Anchor definition of "side
79528	effect" for cross-referencing...
79529	* doc/lispref/functions.texi (What Is a Function): ...from here.
79530	Define what a pure function is.
79531	* doc/lispref/internals.texi (Writing Emacs Primitives): Describe
79532	currently preferred approach to marking primitives as pure and
79533	side-effect-free.
79534	* doc/lispref/symbols.texi (Standard Properties): Expand description
79535	of pure and side-effect-free properties.
79536
79537	(cherry picked from commit 4430a9b54fca266e48d0eb8b72d83706910f10b8)
79538
795392019-06-15  Basil L. Contovounesios  <contovob@tcd.ie>
79540
79541	Backport: Avoid using obsolete indent-relative-maybe
79542
79543	* lisp/electric.el (electric-indent-functions-without-reindent):
79544	* lisp/indent.el (indent-according-to-mode): Check for
79545	indent-relative-first-indent-point in addition to its obsolete alias
79546	indent-relative-maybe.
79547	* lisp/obsolete/vi.el (vi-com-map): Use
79548	indent-relative-first-indent-point in place of its obsolete alias
79549	indent-relative-maybe.
79550
79551	(cherry picked from commit 0e468a620458fecd003c396050aa6deb722982c1)
79552
795532019-06-15  Mauro Aranda  <maurooaranda@gmail.com>
79554
79555	Avoid false positives and false negatives of Info-quoted face
79556
79557	* lisp/info.el (Info-mode-font-lock-keywords): Modify the regexp, for
79558	matching single quotes of opening single quote and closing single
79559	quote, and avoid matching text followed by a curly quote when it is
79560	not quoting. (Bug#35202)
79561
795622019-06-15  Eli Zaretskii  <eliz@gnu.org>
79563
79564	Fix markup related to quoting in Info
79565
79566	* doc/misc/sc.texi (Citations): Fix markup of '>'.
79567	* doc/misc/mh-e.texi (Speedbar): Fix markup in a @table.
79568	* doc/misc/calc.texi (Yacas Language Mode): Fix a typo.
79569	* doc/emacs/mark.texi (Setting Mark): Remove duplicate
79570	quoting.  (Bug#35202)
79571
795722019-06-15  Noam Postavsky  <npostavs@gmail.com>
79573
79574	Use pkg-config to find lcms2 CFLAGS and LIBS (Bug#30346)
79575
79576	* configure.ac: Use EMACS_CHECK_MODULES fors LCMS2 rather than
79577	AC_SEARCH_LIBS.
79578	* src/Makefile.in: Get LCMS2_LIBS and LCMS2_CFLAGS from configure,
79579	instead of just LIBLCMS2.
79580
79581	(cherry picked from commit cb3863370cbe574810f796726faa39ba0de0a429)
79582
795832019-06-15  Glenn Morris  <rgm@gnu.org>
79584
79585	Add a package: line to c-submit-bug-report.
79586
79587	* lisp/progmodes/cc-mode.el (c-submit-bug-report):
79588	Add a Package: line for mail clients that do not support X- headers.
79589
795902019-06-15  Glenn Morris  <rgm@gnu.org>
79591
79592	* admin/admin.el (set-version): Add NEWS headers for a .50 version.
79593
795942019-06-15  Eli Zaretskii  <eliz@gnu.org>
79595
79596	Backport doc improvement in ELisp manual
79597
79598	* doc/lispref/processes.texi (Accepting Output): Backport:
79599	document how do avoid race conditions while waiting for all of
79600	the process's output to arrive.
79601
796022019-06-15  Noam Postavsky  <npostavs@gmail.com>
79603
79604	Document insert-image-file's return value (Bug#32978)
79605
79606	* lisp/image-file.el (insert-image-file): Document return value.
79607
796082019-06-15  Braun Gábor  <braungb88@gmail.com>  (tiny change)
79609
79610	Autoload cua-toggle-rectangle-mark (Bug#34947)
79611
79612	* lisp/emulation/cua-base.el (cua-toggle-rectangle-mark): Autoload it.
79613	Library cua-base.el binds cua-toggle-rectangle-mark to a key in the
79614	:set function in (defcustom cua-rectangle-mark-key ...), so it should
79615	ensure that the command is defined.
79616
796172019-06-15  Noam Postavsky  <npostavs@gmail.com>
79618
79619	Tell xclip not to expect job-control under eshell (Bug#35257)
79620
79621	* lisp/eshell/esh-proc.el (eshell-needs-pipe): Add "xclip" and other
79622	programs that xclip.el (in GNU ELPA) calls with
79623	`process-connection-type' bound to nil.
79624
796252019-06-15  Basil L. Contovounesios  <contovob@tcd.ie>
79626
79627	Fix off-by-one-link error in image--set-property
79628
79629	* lisp/image.el (image--set-property): Ensure new value is set even
79630	in the unlikely case that the plist is empty.  Fix off-by-one-link
79631	error when deleting a property. (bug#35285)
79632	* test/lisp/image-tests.el: New file.
79633	(image--set-property): New test.
79634
796352019-06-15  Glenn Morris  <rgm@gnu.org>
79636
79637	* admin/admin.el (make-manuals-dist--1):
79638	Update for incompatible copy-file change re "directories".
79639
796402019-06-15  Robert Pluim  <rpluim@gmail.com>
79641
79642	Document some compilation-mode faces
79643
79644	* doc/emacs/building.texi (Compilation Mode): Describe faces
79645	available to affect appearance of compilation-mode buffers.
79646
796472019-06-15  Eli Zaretskii  <eliz@gnu.org>
79648
79649	Mention the assignment form in "Copyright Assignment"
79650
79651	* doc/emacs/trouble.texi (Copyright Assignment): Mention the
79652	copyright assignment form explicitly.  Suggested by Konstantin
79653	Kharlamov <hi-angel@yandex.ru>.
79654
796552019-06-15  Eli Zaretskii  <eliz@gnu.org>
79656
79657	Fix confusing wording in the user manual
79658
79659	* doc/emacs/maintaining.texi (VC Undo): Remove a potentially
79660	inaccurate, outdated, and/or confusing sentence.  (Bug#35290)
79661
796622019-06-15  Eli Zaretskii  <eliz@gnu.org>
79663
79664	Fix the MSDOS build when running under CWSDPMI
79665
79666	* src/msdos.c (the_only_tty_output): Define.
79667	* src/msdos.h (the_only_tty_output): Declare.
79668	* src/frame.c (make_terminal_frame) [MSDOS]:
79669	* src/dispnew.c (init_display) [MSDOS]: Set up
79670	f->output_data.tty pointer using the_only_tty_output, before
79671	dereferencing the pointer.  This prevents crashes with DPMI
79672	servers that provide NULL pointer protection.
79673
796742019-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
79675
79676	* lisp/progmodes/python.el: Be more careful about temp file removal
79677
79678	(python-shell-prompt-detect): Use unwind-protect to try and not leave
79679	file behind in case of error.
79680
796812019-06-15  Alexander Gramiak  <agrambot@gmail.com>
79682
79683	Backport: Plug memory leak in GTK x-display-monitor-attributes-list
79684
79685	* src/frame.c (free_monitors) [USE_GTK]: Define in the GTK case as
79686	well.
79687
79688	* src/xfns.c (x-display-monitor-attributes-list) [USE_GTK]: Plug
79689	memory leak. Use dupstring over xstrdup as gdk_monitor_get_model may
79690	return NULL.
79691
796922019-06-15  Alexander Gramiak  <agrambot@gmail.com>
79693
79694	Backport: * lisp/frame.el (frame--size-history): Fix infloop. (Bug#35272)
79695
796962019-06-15  Robert Pluim  <rpluim@gmail.com>
79697
79698	Downcase charset
79699
79700	RFC 2046 specifies that the charset parameter is case-insensitive.
79701
79702	* lisp/gnus/gnus-icalendar.el (gnus-icalendar-with-decoded-handle):
79703	Downcase charset.  Suggested by Christophe TROESTLER
79704	<Christophe.TROESTLER@umons.ac.be>.  (Bug#35265).
79705
797062019-06-15  Phillip Lord  <phillip.lord@russet.org.uk>
79707
79708	Update for Emacs-26
79709
79710	* nt/README.W32: Update details about packaging which changed for
79711	  Emacs-26.
79712
797132019-06-15  Eli Zaretskii  <eliz@gnu.org>
79714
79715	* doc/lispref/display.texi (Showing Images): Fix a typo.  (Bug#35240
79716
797172019-06-15  Nicolas Petton  <nicolas@petton.fr>
79718
79719	Bump Emacs version to 26.2
79720
79721	* README:
79722	* configure.ac:
79723	* msdos/sed2v2.inp:
79724	* nt/README.W32: Bump Emacs version to 26.2.
79725
797262019-06-15  Nicolas Petton  <nicolas@petton.fr>
79727
79728	* etc/HISTORY: Update for Emacs 26.2 release.
79729
79730	* etc/AUTHORS: Update.
797312019-05-25  Eric S. Raymond <esr@thyrsus.com>
79732
79733	Implement and document XDG-style startup files under ~/.config.
79734
79735	* lisp/startup.el (command-line): Allow XDG-style as well as old
79736	style paths.
79737	* doc/emacs/custom.texi: Document the above change.
79738
797392019-04-11  Eli Zaretskii  <eliz@gnu.org>
79740
79741	Improve documentation of 'read-command'
79742
79743	* src/minibuf.c (Fread_command): Document the return value
79744	when DEFAULT-VALUE is nil and the user enters nothing.
79745	* doc/lispref/minibuf.texi (High-Level Completion): Document
79746	the printed representation of a symbol whose name is empty.
79747	(Bug#3522)
79748
797492019-04-11  Eli Zaretskii  <eliz@gnu.org>
79750
79751	Fix an outdated URL in a comment
79752
79753	* src/emacs.c: Fix reference to Cocoa CoreFoundation Release
79754	Notes.  (Bug#35225)
79755
797562019-04-11  Basil L. Contovounesios  <contovob@tcd.ie>
79757
79758	Backport: Fix comment-empty-lines docstring (bug#35152)
79759
79760	* lisp/newcomment.el (comment-empty-lines): Consistently use US
79761	commas in docstring.  Fix indentation of and typo in custom :type.
79762
79763	(cherry picked from commit 690c678fb6c1fb5b2f828f9bb90782bd0b01c399)
79764
797652019-04-11  Alex Branham  <alex.branham@gmail.com>
79766
79767	Backport: Update documentation for indent-relative functions
79768
79769	* lisp/indent.el (indent-relative): Document what happens when there
79770	  is no previous nonblank line.
79771	* doc/lispref/text.texi (Relative Indent): Document
79772	  indent-relative-first-indent-point instead of obsolete
79773	  indent-relative-maybe. Fix documentation of which argument from
79774	  'indent-relative' is used.
79775
79776	Bug#34858
79777
79778	(cherry picked from commit 10cd65878c741d2a22a1f2c36c54fcad4e516f72)
79779
797802019-04-11  Noam Postavsky  <npostavs@gmail.com>
79781
79782	Update nxml-mode.texi: completion now gives xmlns="-!-"
79783
79784	* doc/misc/nxml-mode.texi (Completion): As of 2016-01-16 "* lisp/nxml:
79785	Use standard completion; it also works for company-mode", completing
79786	an attribute when there is only one candidate inserts both quotes.
79787	Update the example accordingly.
79788
797892019-04-10  Eric Abrahamsen  <eric@ericabrahamsen.net>
79790
79791	Note that choose-completion-string-functions funcs take four args
79792
79793	* lisp/simple.el (choose-completion-string-functions): Functions in
79794	  this list actually need to accept four arguments, though the fourth
79795	  should be ignored.
79796
797972019-04-10  Gemini Lasswell  <gazally@runbox.com>
79798
79799	Address name conflicts in EIEIO documentation (bug#31660)
79800
79801	* doc/misc/eieio.texi (Quick Start): Rename the class used in the
79802	example from 'record' to 'person'.
79803	(Building Classes): Advise user to check for name conflicts before
79804	naming a class.  Add a missing apostrophe.
79805	(Making New Objects): Correct grammar.  Rename the class used in the
79806	example from 'record' to 'my-class'.
79807
798082019-04-09  Mattias Engdegård  <mattiase@acm.org>
79809
79810	Clarify the TESTFN argument to `alist-get'
79811
79812	* lisp/subr.el (alist-get):
79813	Rephrase the initial text to clarify the meaning of the TESTFN argument.
79814	It's an equality predicate, not a look-up function (Bug#35206).
79815
79816	(cherry picked from commit c81465580fe262f28ce47502c00f4afcbe3b8f8d)
79817
798182019-04-08  Eli Zaretskii  <eliz@gnu.org>
79819
79820	* src/editfns.c (Fnarrow_to_region): Doc fix.  (Bug#35163)
79821
798222019-04-06  Eli Zaretskii  <eliz@gnu.org>
79823
79824	Fix doc strings of 'vc-version-diff' and 'vc-version-ediff'
79825
79826	* lisp/vc/vc.el (vc-version-diff, vc-version-ediff): Describe
79827	arguments in the doc strings.  (Bug#35019)
79828
798292019-04-06  Eli Zaretskii  <eliz@gnu.org>
79830
79831	Improve documentation of set-window-start
79832
79833	* doc/lispref/windows.texi (Window Start and End):
79834	* src/window.c (Fset_window_start): Document that reliable
79835	setting of a window start position requires to adjust point to
79836	be visible.  (Bug#34038)
79837
798382019-04-06  Eli Zaretskii  <eliz@gnu.org>
79839
79840	Improve documentation of window parameters
79841
79842	* doc/lispref/windows.texi (Cyclic Window Ordering): Describe
79843	the effect of the 'other-window' window parameter.
79844	(Window Parameters): Improve the descriptions of window
79845	parameters.  Move the detailed description of the
79846	'quit-restore' window parameter from here...
79847	(Quitting Windows): ...to here.  (Bug#35063)
79848
798492019-04-06  Eli Zaretskii  <eliz@gnu.org>
79850
79851	Improve commentary in frame.el
79852
79853	* lisp/frame.el: Improve commentary for display-* functions.
79854	(Bug#35058)
79855
798562019-04-06  Mauro Aranda  <maurooaranda@gmail.com>
79857
79858	Fix typo in a doc string
79859
79860	* lisp/autorevert.el (global-auto-revert-mode): Fix a typo.
79861	(Bug#35165)
79862
798632019-03-20  Paul Eggert  <eggert@cs.ucla.edu>
79864
79865	Say which regexp ranges should be avoided
79866
79867	* doc/lispref/searching.texi (Regexp Special): Say that
79868	regular expressions like "[a-m-z]" and "[[:alpha:]-~]" should
79869	be avoided, for the same reason that regular expressions like
79870	"+" and "*" should be avoided: POSIX says their behavior is
79871	undefined, and they are confusing anyway.  Also, explain
79872	better what happens when the bound of a range is a raw 8-bit
79873	byte; the old explanation appears to have been obsolete
79874	anyway.  Finally, say that ranges like "[\u00FF-\xFF]" that
79875	mix non-ASCII characters and raw 8-bit bytes should be
79876	avoided, since it’s not clear what they should mean.
79877
798782019-03-20  Nicolas Petton  <nicolas@petton.fr>
79879
79880	* etc/AUTHORS: Update.
79881
79882	* ; ChangeLog.3 update
79883
798842019-03-20  Eli Zaretskii  <eliz@gnu.org>
79885
79886	Improve indexing of the user manual
79887
79888	* doc/emacs/search.texi (Word Search): Improve indexing of
79889	"M-s M-w".
79890
798912019-03-19  Basil L. Contovounesios  <contovob@tcd.ie>
79892
79893	Fix url-copy-file arglist
79894
79895	* lisp/url/url-handlers.el: Silence byte-compiler.
79896	(url-copy-file): Add 6th argument following change to copy-file in
79897	2012-12-16T19:22:27+01:00!romain@orebokech.com. (bug#4410)
79898
798992019-03-19  Eli Zaretskii  <eliz@gnu.org>
79900
79901	Fix downloading updates for packages with non-ASCII descriptions
79902
79903	* lisp/emacs-lisp/package.el (package--download-one-archive):
79904	Make sure archive contents are written using UTF-8 encoding.
79905	(Bug#34909)
79906	(list-packages): Set buffer's encoding to UTF-8.
79907
799082019-03-18  Nicolas Petton  <nicolas@petton.fr>
79909
79910	* etc/NEWS: Remove temporary markers.
79911
799122019-03-15  Alan Mackenzie  <acm@muc.de>
79913
79914	* doc/misc/cc-mode.texi (Config Basics): in @itemize, @asis -> @w{}
79915
799162019-03-15  Eli Zaretskii  <eliz@gnu.org>
79917
79918	Don't clobber 'comint-input-autoexpand' in 'read-shell-command'
79919
79920	* lisp/shell.el (shell-completion-vars): Set only the
79921	buffer-local value of 'comint-input-autoexpand'.  (Bug#34815)
79922
799232019-03-13  Martin Rudalics  <rudalics@gmx.at>
79924
79925	Document restrictions when setting window margins, fringes or scroll bars
79926
79927	* src/window.c (Fset_window_margins, Fset_window_fringes)
79928	(Fset_window_scroll_bars): In doc-strings tell that a window
79929	must be large enough to accommodate fringes, sroll bars and
79930	margins of the desired size.
79931	* doc/lispref/display.texi (Fringe Size/Pos, Scroll Bars)
79932	(Display Margins): Tell that windows must be large enough to
79933	accommodate fringes, sroll bars and margins of the desired
79934	size.
79935
799362019-03-10  Eli Zaretskii  <eliz@gnu.org>
79937
79938	More improvements for 'read-buffer's doc string
79939
79940	* src/minibuf.c (Fread_buffer): Further improve the doc
79941	string.  (Bug#347694)
79942
799432019-03-10  Alan Mackenzie  <acm@muc.de>
79944
79945	* lisp/progmodes/cc-defs.el: Update c-version to 5.33.2 for Emacs 26.2
79946
799472019-03-09  Eli Zaretskii  <eliz@gnu.org>
79948
79949	* src/minibuf.c (Fread_buffer): Minor doc fixes.  (Bug#34749)
79950
799512019-03-09  Eli Zaretskii  <eliz@gnu.org>
79952
79953	Fix markup of fake keys in the ELisp manual
79954
79955	* doc/lispref/keymaps.texi (Menu Bar, Tool Bar): Fix markup of
79956	fake keys.  (Bug#34785)
79957
799582019-03-09  Eli Zaretskii  <eliz@gnu.org>
79959
79960	Avoid errors in Auto Revert mode
79961
79962	* lisp/autorevert.el (auto-revert-buffers): Cancel
79963	auto-revert-timer only if it is non-nil.  This avoids errors
79964	on first invocation of Auto-Revert mode.
79965
799662019-03-09  Michael Albinus  <michael.albinus@gmx.de>
79967
79968	Mention empty strings in file name expansion, emacs lisp reference
79969
79970	* doc/lispref/files.texi (Files, File Name Expansion):
79971	Mention also empty strings.
79972
799732019-03-08  Alan Mackenzie  <acm@muc.de>
79974
79975	cc-mode.texi: Work around makeinfo alignment bug.  Fix problem with ss index
79976
79977	* doc/misc/cc-mode.texi (top level): Using txicommandconditionals to
79978	differentiate between the C and perl versions of Texinfo, create an "ss
79979	index" unless we are both using the C Texinfo and are building the .dvi output
79980	format.
79981	(Config Basics): Work around a perl Texinfo alignment bug by writing a
79982	separate version of an item list structure for this version, simplifying it
79983	considerably.
79984
799852019-03-08  Martin Rudalics  <rudalics@gmx.at>
79986
79987	Warn against recursive invocations of 'buffer-list-update-hook' (Bug#34765)
79988
79989	* src/buffer.c (Vbuffer_list_update_hook):
79990	* doc/lispref/buffers.texi (Buffer List): Warn against
79991	recursive invocations of 'buffer-list-update-hook' (Bug#34765).
79992
799932019-03-08  Martin Rudalics  <rudalics@gmx.at>
79994
79995	Provide more details in doc-string of 'delete-windows-on' (Bug#34749)
79996
79997	* lisp/window.el (delete-windows-on): Provide more details in
79998	doc-string (Bug#34749).
79999
800002019-03-08  Eli Zaretskii  <eliz@gnu.org>
80001
80002	Improve documentation of 'delete-windows-on'
80003
80004	* doc/emacs/windows.texi (Change Window): Document
80005	'delete-windows-on'.
80006
80007	* lisp/window.el (delete-windows-on): Doc fix.  (Bug#34749)
80008
800092019-03-08  Eli Zaretskii  <eliz@gnu.org>
80010
80011	* lisp/frame.el (make-frame-command): Doc fix.  (Bug#34715)
80012
800132019-03-07  Eli Zaretskii  <eliz@gnu.org>
80014
80015	Avoid undefined behavior in gdb-mi.el
80016
80017	* lisp/progmodes/gdb-mi.el (gdb-send): Don't call match-string
80018	if this is not a control command.  (Bug#34769)
80019
800202019-03-06  Martin Rudalics  <rudalics@gmx.at>
80021
80022	* lisp/window.el (fit-frame-to-buffer): Make doc-string more accurate.
80023
800242019-03-05  Basil L. Contovounesios  <contovob@tcd.ie>
80025
80026	Minor spelling and grammar fixes (bug#34756)
80027
80028	doc/misc/cc-mode.texi (Style Variables, Customizing Indentation):
80029	doc/misc/ede.texi (Extending EDE, ede-project-placeholder)
80030	(ede-target, ede-proj-target, ede-compilation-program, ede-compiler)
80031	(ede-linker): Remove apostrophe from possessive "it's".
80032	doc/lispintro/emacs-lisp-intro.texi (Find a File):
80033	doc/misc/gnus-faq.texi (FAQ 2-2): Write "an other" as a single word.
80034	doc/misc/gnus.texi (Article Buttons):
80035	lisp/gnus/gnus-art.el (gnus-button-mid-or-mail-heuristic-alist)
80036	(gnus-button-mid-or-mail-heuristic): Write singular number of
80037	Message-IDs, rather than plural.
80038	lisp/gnus/message.el (message-user-fqdn): Capitalize initialism.
80039
800402019-03-04  Eli Zaretskii  <eliz@gnu.org>
80041
80042	Minor improvement of documentation of '(when CONDITION . SPEC)'
80043
80044	* doc/lispref/display.texi (Other Display Specs): Add a caveat
80045	to using the '(when CONDITION . SPEC)' display specs.
80046
800472019-03-02  Eli Zaretskii  <eliz@gnu.org>
80048
80049	Improve documentation of 'auto-coding-functions'
80050
80051	* doc/lispref/nonascii.texi (Default Coding Systems): Clarify
80052	that the functions in 'auto-coding-functions' are called both
80053	for decoding and for encoding.
80054
80055	* lisp/international/mule.el (auto-coding-functions): Doc fix.
80056
800572019-03-02  Eli Zaretskii  <eliz@gnu.org>
80058
80059	Fix visiting XML files with non-Unix EOL format
80060
80061	* lisp/international/mule.el (sgml-xml-auto-coding-function)
80062	(sgml-html-meta-auto-coding-function): Don't use
80063	'buffer-file-coding-system' if the buffer is unibyte.
80064	(Bug#34704)
80065
800662019-03-02  Basil L. Contovounesios  <contovob@tcd.ie>
80067
80068	Update example major mode code in Elisp manual
80069
80070	* doc/lispref/modes.texi (Example Major Modes): Update code examples
80071	to reflect current state of lisp/textmodes/text-mode.el and
80072	lisp/emacs-lisp/lisp-mode.el. (bug#34671)
80073
800742019-03-01  Eli Zaretskii  <eliz@gnu.org>
80075
80076	Fix a typo in the Calc manual
80077
80078	* doc/misc/calc.texi (Algebraic Tutorial): Fix parentheses in
80079	@example.  (Bug#34689)
80080
800812019-03-01  Eli Zaretskii  <eliz@gnu.org>
80082
80083	Minor improvement in cross-references of the ELisp manual
80084
80085	* doc/lispref/modes.texi (Minor Mode Conventions): Add
80086	cross-references to related major-mode descriptions.  (Bug#34678)
80087
800882019-03-01  Tobias Bading  <tbading@web.de>  (tiny change)
80089
80090	Fix last change on 'compilation-parse-errors'
80091
80092	* lisp/progmodes/compile.el (compilation-parse-errors): Fix
80093	previous change in this function.  (Bug#34479)
80094
800952019-02-25  Dmitry Gutov  <dgutov@yandex.ru>
80096
80097	Backport: js--re-search-backward-inner: Fix infloop
80098
80099	Fix JS indentation infloop reported in
80100	https://github.com/mooz/js2-mode/issues/513.
80101
80102	* lisp/progmodes/js.el (js--re-search-backward-inner): Account for
80103	multiline string literals.
80104	* test/manual/indent/js.js: New test example.
80105
80106	(cherry picked from commit b01a4295c2f9bb58858880e4e28b05cc8396791c)
80107
801082019-02-23  Eli Zaretskii  <eliz@gnu.org>
80109
80110	Minor improvement for docs of completion
80111
80112	* doc/lispref/minibuf.texi (Completion Commands)
80113	(Completion in Buffers, Programmed Completion): Add to text
80114	that references completion tables a cross-reference to where
80115	"completion table" is described.
80116	(Programmed Completion): Fix the description of
80117	'completion-table-dynamic'.  Add more cross-references.
80118
801192019-02-22  Ken Brown  <kbrown@cornell.edu>
80120
80121	Disable the timerfd interface on Cygwin
80122
80123	* configure.ac (emacs_cv_have_timerfd): Set to "no" on Cygwin.
80124
801252019-02-22  Eli Zaretskii  <eliz@gnu.org>
80126
80127	Fix a typo in the doc string of 'regex-opt'
80128
80129	* lisp/emacs-lisp/regexp-opt.el (regexp-opt): Fix example in
80130	the doc string.  (Bug#34596)
80131
801322019-02-21  Michael Albinus  <michael.albinus@gmx.de>
80133
80134	Document bash 5.0.0 misbehavior in tramp.texi (Bug#34192)
80135
80136	* doc/misc/tramp.texi (Frequently Asked Questions): Warn about
80137	bash 5.0.0 and HISTSIZE=0.  (Bug#34192)
80138
801392019-02-20  Nicolas Petton  <nicolas@petton.fr>
80140
80141	Bump Emacs version to 26.1.92
80142
80143	* README:
80144	* configure.ac:
80145	* msdos/sed2v2.inp:
80146	* nt/README.W32: Bump Emacs version to 26.1.92.
80147
801482019-02-20  Nicolas Petton  <nicolas@petton.fr>
80149
80150	* ; ChangeLog.3 update
80151
80152	* etc/AUTHORS: Update.
80153
801542019-02-20  Glenn Morris  <rgm@gnu.org>
80155
80156	Remove .art from the default list of ImageMagick extensions
80157
80158	It seems that .art files can be non-image files that
80159	ImageMagick mistakenly treats as extremely large images.
80160	Real .art images seem rare.
80161	* lisp/image.el (imagemagick-enabled-types): Remove ART.  (Bug#22289)
80162
801632019-02-19  Eli Zaretskii  <eliz@gnu.org>
80164
80165	Fix input after setting x-wait-for-event-timeout nil
80166
80167	* src/w32term.c (x_make_frame_visible): Call unblock_input
80168	before returning early.  (Bug#34575)
80169
801702019-02-19  Martin Rudalics  <rudalics@gmx.at>
80171
80172	Fix two warnings in eshell.texi
80173
80174	* doc/misc/eshell.texi (Built-ins, Globbing): Fix `.' or `,'
80175	must follow @xref, not `f' warnings.
80176
801772019-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
80178
80179	* lisp/minibuffer.el (completion-table-dynamic): Improve docstring
80180
801812019-02-18  David Pathakjee  <dpathakjee@gmail.com>  (tiny change)
80182
80183	* lisp/emacs-lisp/debug.el (debug-on-variable-change): Doc fix.  (Bug#34518)
80184
801852019-02-17  Eli Zaretskii  <eliz@gnu.org>
80186
80187	Fix a typo in ELisp manual
80188
80189	* doc/lispref/abbrevs.texi (Abbrev Table Properties): Fix a
80190	typo.  (Bug#34508)
80191
801922019-02-16  Paul Eggert  <eggert@cs.ucla.edu>
80193
80194	Update citations of Internet RFCs
80195
80196	For example, RFC 822 has been obsoleted by RFC 2822, which in
80197	turn has been obsoleted by RFC 5322.
80198	* doc/emacs/ack.texi, doc/lispref/os.texi:
80199	* doc/misc/emacs-mime.texi, doc/misc/gnus-coding.texi:
80200	* doc/misc/gnus.texi, doc/misc/sc.texi:
80201	* lisp/calendar/parse-time.el, lisp/gnus/gnus-cite.el:
80202	* lisp/gnus/gnus-util.el, lisp/gnus/message.el:
80203	* lisp/gnus/mm-bodies.el, lisp/gnus/nnrss.el:
80204	* lisp/mail/feedmail.el, lisp/mail/ietf-drums.el:
80205	* lisp/mail/mail-extr.el, lisp/mail/mail-utils.el:
80206	* lisp/mail/mailclient.el, lisp/mail/mailheader.el:
80207	* lisp/mail/rfc2047.el, lisp/mail/rfc822.el, lisp/mail/rmail.el:
80208	* lisp/mail/sendmail.el, lisp/mail/smtpmail.el:
80209	* lisp/mail/supercite.el, lisp/mh-e/mh-e.el:
80210	* lisp/mh-e/mh-utils.el, lisp/net/imap.el:
80211	* lisp/net/newst-backend.el, lisp/org/org-id.el:
80212	* lisp/ps-samp.el, lisp/simple.el, lisp/url/url-util.el:
80213	Update RFC citations.
80214
802152019-02-16  Eli Zaretskii  <eliz@gnu.org>
80216
80217	Fix handling of manpage references divided by hyphenation
80218
80219	* lisp/man.el (Man-reference-regexp): Accept a newline as part
80220	of a manpage name only if it's preceded by a hyphen.  (Bug#34286)
80221	(Man-translate-references): Adapt to change in
80222	'Man-reference-regexp'.
80223	(Man-default-man-entry): Support references divided between
80224	two lines by an ASCII hyphen.  This is a left-over from fixing
80225	bug#6289.
80226
802272019-02-16  Gregor Zattler  <telegraph@gmx.net>  (tiny change)
80228
80229	* doc/misc/eshell.texi: Fix some @ref's.
80230
802312019-02-16  Eli Zaretskii  <eliz@gnu.org>
80232
80233	Fix a typo in lispref/syntax.texi
80234
80235	* doc/lispref/syntax.texi (Syntax Table Internals): Fix a
80236	typo.  (Bug#34495)
80237
802382019-02-15  Victor J. Orlikowski  <vjo@duke.edu>  (tiny change)
80239
80240	Avoid errors in erc-dcc.el when erc-dcc-verbose is non-nil
80241
80242	* lisp/erc/erc-dcc.el (erc-dcc-get-filter): Don't assume STR
80243	is always a string.  Use 'buffer-name' to get the DCC file
80244	name, as buffer-file-name is not set in the process buffer.
80245
802462019-02-15  Daniel Lopez  <daniel.lopez999@gmail.com>  (tiny change)
80247
80248	Fix faces in compilation messages
80249
80250	* lisp/progmodes/compile.el (compilation-parse-errors): Don't
80251	clobber the value of TYPE inside the loop.  (Bug#34479)
80252
802532019-02-15  Gregor Zattler  <telegraph@gmx.net>
80254
80255	* doc/misc/eshell.texi (Built-ins): Fix alias description
80256
80257	Dear eamcs developers, eshells current documentation first states
80258	that alias definitions are not saved to an alias file, later that
80259	they are saved to an alias file.  I tested it and the latter is
80260	correct.
80261
80262	Please find attached a patch which fixes this.
80263
80264	Thanks for working on emacs which is really great, Gregor
80265
80266	>From 1fe51cc769ab7a30d0896fb3d6105c0561243fa7 Mon Sep 17 00:00:00 2001
80267	From: Gregor Zattler <telegraph@gmx.net>
80268	Date: Wed, 13 Feb 2019 20:19:38 +0100
80269	Subject: * doc/misc/eshell.texi (Built-ins): Fix alias description.
80270
80271	Bring description of built-in 'alias' in line with (info "(eshell) Aliases"),
80272	which describes the actual behaviur.
80273
80274	(cherry picked from commit a48099ce7ff63cda416a870766fe61f5b8ac7c2c)
80275
802762019-02-14  Katsumi Yamaoka  <yamaoka@jpl.org>
80277
80278	Work for empty MIME attachments (related to bug#34387)
80279
80280	* lisp/gnus/mm-view.el (mm-inline-text):
80281	Make undisplayer do nothing if the part is empty.
80282
80283	* lisp/gnus/mm-decode.el (mm-copy-to-buffer): Work for empty MIME part.
80284	* lisp/gnus/mml.el (mime-to-mml): Ditto.
80285
802862019-02-14  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
80287
80288	Backport: js-indent-align-list-continuation: Make variable safe
80289
80290	* lisp/progmodes/js.el (js-indent-align-list-continuation): Indicate
80291	variable is safe as a file-local variable.  This fixes the
80292	js-indent-align-list-continuation-nil test when run with make.
80293
80294	(cherry picked from commit dd319f2711f895eec87c1017b82cd9d88d9ecd0a)
80295
802962019-02-13  Eli Zaretskii  <eliz@gnu.org>
80297
80298	Avoid crashes upon C-g in nested invocations of 'read_char'
80299
80300	* src/keyboard.c (read_char, read_event_from_main_queue):
80301	Ensure the global value of getcjmp is restored when the stack
80302	is unwound by the likes of 'throw', by calling
80303	record_unwind_protect_ptr instead of restoring the value
80304	manually.  (Bug#34394)
80305	(restore_getcjmp): Argument is now 'void *', to match the
80306	signature of record_unwind_protect_ptr.
80307
80308	(cherry picked from commit 10527fca66e39d7067986904161fa33741abcd26)
80309
803102019-02-12  Stefan Monnier  <monnier@iro.umontreal.ca>
80311
80312	* src/data.c (Fmake_local_variable): Fix bug#34318
80313
80314	Revert part of ed962f2b8a.
80315
80316	* test/src/data-tests.el (data-tests-make-local-forwarded-var):
80317	Add corresponding test.
80318
803192019-02-12  Eli Zaretskii  <eliz@gnu.org>
80320
80321	Minor fixes in ELisp manual wrt syntax-table properties
80322
80323	* doc/lispref/syntax.texi (Syntax Properties): Fix reference
80324	to syntax-table properties.  (Bug#34455)
80325	(Control Parsing): Remove redundant @vindex entry.
80326
803272019-02-12  Michael Albinus  <michael.albinus@gmx.de>
80328
80329	* admin/notes/emba: New file.
80330
803312019-02-11  Eli Zaretskii  <eliz@gnu.org>
80332
80333	Fix Hunspell invocation for discovering its dictionaries
80334
80335	* lisp/textmodes/ispell.el
80336	(ispell-find-hunspell-dictionaries): Invoke Hunspell with the
80337	-a switch, to prevent it from initializing its curses UI.
80338	(Bug#34272)
80339
803402019-02-08  Eli Zaretskii  <eliz@gnu.org>
80341
80342	Minor improvements to do strings in callproc.c
80343
80344	* src/callproc.c (Fcall_process, Fcall_process_region): Minor
80345	fixes to doc strings.  Suggested by Nicholas Drozd
80346	<nicholasdrozd@gmail.com>.  (Bug#34274)
80347
803482019-02-08  Eli Zaretskii  <eliz@gnu.org>
80349
80350	Improve documentation of 'date-to-time' and 'parse-time-string'
80351
80352	* doc/lispref/os.texi (Time Parsing): Document
80353	'parse-time-string', and refer to it for the description of
80354	the argument of 'date-to-time'.
80355
80356	* lisp/calendar/time-date.el (date-to-time): Refer in the doc
80357	string to 'parse-time-string' for more information about the
80358	format of the DATE argument.  (Bug#34303)
80359
803602019-02-08  Nick Drozd  <nicholasdrozd@gmail.com>
80361
80362	Fix downloading of URLs that end in a slash
80363
80364	* lisp/net/eww.el (eww-download-callback): Fix download URL
80365	file name.  Previously this wasn't handling download URLs
80366	correctly, resulting in all downloaded pages being named
80367	"!", "!(1)", etc.  (Bug#34291)
80368
803692019-02-08  Nick Drozd  <nicholasdrozd@gmail.com>
80370
80371	* doc/misc/eww.texi (Basics): Fix eww keybindings.  (Bug#34291)
80372
803732019-02-08  Robert Pluim  <rpluim@gmail.com>
80374
80375	Fix process-thread docstring
80376
80377	* src/process.c (Fprocess_thread): Correct docstring.
80378
803792019-02-08  Eli Zaretskii  <eliz@gnu.org>
80380
80381	Fix failures of vc-find-revision with non-ASCII file names
80382
80383	* lisp/vc/vc.el (vc-find-revision): Instead of binding
80384	coding-system-for-write, make the buffer-file-coding-system of
80385	the temporary buffer be no-conversion.  This avoids the
80386	unwanted side effect of not encoding the command-line
80387	arguments of the VCS commands invoked by the backend.
80388	(Bug#34350)
80389
803902019-02-07  Eli Zaretskii  <eliz@gnu.org>
80391
80392	* doc/lispref/tips.texi (Documentation Tips): Fix quotes.  (Bug#34372)
80393
803942019-02-05  Alex Branham  <alex.branham@gmail.com>
80395
80396	Add documentation for tabulated-list functions in the elisp manual
80397
80398	* doc/lispref/modes.texi: Add documentation for
80399	  'tabulated-list-delete-entry', 'tabulated-list-get-id',
80400	  'tabulated-list-get-entry', 'tabulated-list-header-overlay-p',
80401	  'tabulated-list-put-tag', and 'tabulated-list-set-col'.
80402
80403	Bug#21074
80404
804052019-02-03  Jean-Christophe Helary  <brandelune@gmail.com>
80406
80407	Fix URL in ucs-normalize.el
80408
80409	* lisp/international/ucs-normalize.el: Fix URL of the HFS
80410	normalization reference.  (Bug#34300)
80411
804122019-02-03  Alan Mackenzie  <acm@muc.de>
80413
80414	* etc/PROBLEMS: Amend entry for profiler bug #34235 to mention kernel 4.14.97
80415
804162019-02-02  Glenn Morris  <rgm@gnu.org>
80417
80418	* make-dist: Remove references to src/stamp-h.in.
80419
80420	This file was removed two years ago in 2f89350.
80421	No need to merge to master.
80422
804232019-02-02  Paul Eggert  <eggert@cs.ucla.edu>
80424
80425	* etc/PROBLEMS: Mention profiler-report bug (Bug#34235).
80426
804272019-02-01  Eli Zaretskii  <eliz@gnu.org>
80428
80429	Correct the docs of inserting kmacro counter
80430
80431	* doc/emacs/kmacro.texi (Keyboard Macro Counter): Correct the
80432	description of the affect "C-u" has on inserting the macro
80433	counter.  Define "previous counter value".
80434
80435	* lisp/kmacro.el (kmacro-insert-counter)
80436	(kmacro-start-macro-or-insert-counter): Fix the doc strings
80437	regarding the effect of "C-u".  (Bug#34263)
80438
804392019-02-01  Nicholas Drozd  <nicholasdrozd@gmail.com>
80440
80441	* doc/misc/calc.texi (Algebraic Tutorial): Fix a typo.  (Bug#34273)
80442
804432019-02-01  Eli Zaretskii  <eliz@gnu.org>
80444
80445	Avoid errors in 'rmail-get-new-mail'
80446
80447	* lisp/mail/rmail.el (rmail-insert-inbox-text): Don't assume
80448	the Rmail protocol is always a string when calling
80449	'rmail-remote-proto-p'.  (Bug#34252)
80450
804512019-01-31  Paul Eggert  <eggert@cs.ucla.edu>
80452
80453	Fix process-contact bug with TCP connections
80454
80455	This fixes a regression from Emacs 25.3 (Bug#34134).
80456	* src/process.c (server_accept_connection):
80457	Set host correctly, fixing a bug introduced in
80458	2017-09-16T21:29:18Z!eggert@cs.ucla.edu
80459	when working around a GCC bug.
80460
804612019-01-29  Eli Zaretskii  <eliz@gnu.org>
80462
80463	Minor copyedits in last manual change
80464
80465	* doc/emacs/custom.texi (Authentication): Improve markup,
80466	indexing, and wording.
80467
804682019-01-29  Eli Zaretskii  <eliz@gnu.org>
80469
80470	Improve documentation of face numbers
80471
80472	* doc/lispref/display.texi (Face Functions): Mention where the
80473	face number is used and that it depends on the 'face' property
80474	of the face symbol.  Improve indexing.
80475
804762019-01-27  Michael Albinus  <michael.albinus@gmx.de>
80477
80478	* doc/emacs/custom.texi (Authentication): Refer to the "Help for users" node.
80479
804802019-01-26  Michael Albinus  <michael.albinus@gmx.de>
80481
80482	New node Authentication in the Emacs manual
80483
80484	* doc/emacs/custom.texi (Customization):
80485	* doc/emacs/emacs.texi (Top): Add node Authentication.
80486
804872019-01-25  Alan Mackenzie  <acm@muc.de>
80488
80489	Fix a loop in c-fl-decl-start.  This fixes bug #34186.
80490
80491	* lisp/progmodes/cc-mode.el (c-fl-decl-start) In the pair of operations
80492	c-syntactic-skip-backward and c-forward-syntactic-ws, ensure the latter
80493	doesn't come back to the position before the former, and break out of the
80494	enclosing loop if it does.
80495
804962019-01-25  Eli Zaretskii  <eliz@gnu.org>
80497
80498	Fix LaTeX output of month and day from cal-tex.el
80499
80500	* lisp/calendar/cal-tex.el (cal-tex-cursor-week-iso)
80501	(cal-tex-week-hours): Escape a lone blank, to make it through
80502	LaTeX.  (Bug#34148)
80503
805042019-01-25  Daniel Kahn Gillmor  <dkg@fifthhorseman.net>  (tiny change)
80505
80506	Avoid elisp crash for OpenPGP User IDs with no e-mail address
80507
80508	* lisp/gnus/mml-sec.el (mml-secure-check-user-id): Verify that
80509	there is an e-mail address in the current User ID before trying
80510	to downcase it.  (Bug#34121)
80511
805122019-01-25  Benjamin Riefenstahl  <b.riefenstahl@turtle-trading.net>
80513
80514	image-mode: Do not use default scaling (bug#33990)
80515
80516	* lisp/image-mode.el (image-toggle-display-image): Set :scale == 1 so
80517	that create-image does not apply additional scaling.
80518
805192019-01-25  Benjamin Riefenstahl  <b.riefenstahl@turtle-trading.net>
80520
80521	create-image: Expand documentation (bug#33990)
80522
80523	* lisp/image.el (create-image): Discuss default for :scale in the doc
80524	string.
80525
805262019-01-21  Eli Zaretskii  <eliz@gnu.org>
80527
80528	Improve documentation of 'isearch-filter-predicate'
80529
80530	* lisp/isearch.el (isearch-filter-predicate)
80531	(isearch-filter-visible): Doc fixes.  (Bug#34150)
80532
805332019-01-19  Trevor Spiteri  <tspiteri@ieee.org>  (tiny change)
80534
80535	Fix cursor column positioning on Grep hits
80536
80537	* lisp/progmodes/grep.el (grep-match-face): Move before first
80538	use, to avoid byte-compilation warning.
80539	(grep-regexp-alist): Don't quote grep-match-face.  (Bug#34068)
80540
805412019-01-18  Eli Zaretskii  <eliz@gnu.org>
80542
80543	Fix a typo in ELisp manual
80544
80545	* doc/lispref/nonascii.texi (Converting Representations): Fix
80546	inconsistency between @defun and the argument description of
80547	'byte-to-string'.  (Bug#34119)
80548
805492019-01-15  Alan Third  <alan@idiocy.org>
80550
80551	Prevent redrawing if frame is garbaged
80552
80553	* src/nsterm.m ([EmacsView viewWillDraw]): Cancel drawing if the frame
80554	has been garbaged.
80555	* src/xdisp.c (expose_window_tree, expose_frame): Remove NS only
80556	exceptions.
80557
805582019-01-14  Eli Zaretskii  <eliz@gnu.org>
80559
80560	Attempt to fix hangs on MS-Windows due to C-g
80561
80562	* src/w32uniscribe.c (uniscribe_otf_capability): Set
80563	inhibit-quit around calls to otf_features, because the latter
80564	cons Lisp data structures while we are in a critical section.
80565	* src/xdisp.c (ALLOCATE_HDC) [HAVE_NTGUI]: Set inhibit-quit.
80566	(RELEASE_HDC) [HAVE_NTGUI]: Restore inhibit-quit.
80567	(OPTIONAL_HDC, DECLARE_HDC): Remove macros, their job is now
80568	done by ALLOCATE_HDC and by a single #ifdef.
80569	(draw_glyphs): Adapt to the above changes in macros.
80570	(Bug#34059)
80571
805722019-01-13  Eli Zaretskii  <eliz@gnu.org>
80573
80574	Fix Calc graph output on MS-Windows
80575
80576	The previous code relied on "pgnuplot" executable, which is
80577	no longer provided with Gnuplot 5.x.
80578	* lisp/calc/calc.el (calc-gnuplot-name): Set to "pgnuplot" on
80579	MS-Windows only if such an executable exists.
80580	* lisp/calc/calc-graph.el (calc-graph-w32-p): New defsubst.
80581	(calc-graph-plot, calc-graph-command, calc-gnuplot-command)
80582	(calc-graph-init): Call calc-graph-w32-p wherever we need to
80583	do something special for invoking gnuplot on MS-Windows,
80584	instead of comparing against calc-gnuplot-name.
80585	(calc-graph-plot): Set the terminal to "qt" on MS-Windows when
80586	pgnuplot.exe is not available.
80587	(calc-graph-kill): Delete the temporary files only after
80588	killing the gnuplot process, otherwise the deletion might fail
80589	on MS-Windows because the files are still in use.
80590
805912019-01-13  Eli Zaretskii  <eliz@gnu.org>
80592
80593	Fix a minor mistake in ELisp manual
80594
80595	* doc/lispref/buffers.texi (Modification Time): Fix
80596	documentation of 'visited-file-modtime'.  (Bug#34055)
80597
805982019-01-12  Stephen Berman  <stephen.berman@gmx.net>
80599
80600	* etc/tutorials/TUTORIAL: Fix typo (bug#34049)
80601
806022019-01-12  Devon Sean McCullough  <Emacs-Hacker2018@jovi.net>
80603
80604	Fix UI of Buffer-menu
80605
80606	* lisp/buff-menu.el (Buffer-menu-execute): Don't remove
80607	entries of buffers whose killing the user didn't confirm.
80608	(Bug#33669)
80609
806102019-01-12  Philip K  <philip@warpmail.net>  (tiny change)
80611
80612	Reinitialize ispell-really-enchant when changing the speller
80613
80614	* lisp/textmodes/ispell.el (ispell-check-version): Reset also
80615	ispell-really-enchant.  (Bug#34019)
80616
806172019-01-07  Leo Liu  <sdl.web@gmail.com>
80618
80619	Speed up loading css-mode
80620
80621	lisp/textmodes/css-mode.el: Remove (require 'eww) which is redundant
80622	and slow.  (Bug#33939)
80623
806242019-01-07  Michael Albinus  <michael.albinus@gmx.de>
80625
80626	Adapt filenotify-tests for emba
80627
80628	* .gitlab-ci.yml (test): Add EMACS_EMBA_CI variable.
80629
80630	* test/lisp/filenotify-tests.el (file-notify-test03-events)
80631	(file-notify-test05-file-validity)
80632	(file-notify-test06-dir-validity)
80633	(file-notify-test07-many-events)
80634	(file-notify-test09-watched-file-in-watched-dir): Adapt tests for emba.
80635
806362019-01-07  Nicolas Petton  <nicolas@petton.fr>
80637
80638	Bump Emacs version to 26.1.91
80639
80640	* README:
80641	* configure.ac:
80642	* msdos/sed2v2.inp:
80643	* nt/README.W32: Bump Emacs version to 26.1.91.
80644
806452019-01-07  Nicolas Petton  <nicolas@petton.fr>
80646
80647	* etc/AUTHORS: Update.
80648
806492019-01-07  Leo Liu  <sdl.web@gmail.com>
80650
80651	* lisp/textmodes/mhtml-mode.el: Avoid loading flyspell.  (Bug#33939)
80652
806532019-01-07  Paul Eggert  <eggert@cs.ucla.edu>
80654
80655	Improve GC+Cairo workaround
80656
80657	Suggested by Eli Zaretskii (Bug#20890#31).
80658	* src/font.h (font_data_structures_may_be_ill_formed): New function.
80659	* src/ftfont.c (ftfont_close):
80660	* src/ftcrfont.c (ftcrfont_close): Use it.
80661
80662	(cherry picked from commit d02fd482fbeaf6ed551e78223b538495cb0c3541)
80663
806642019-01-07  Paul Eggert  <eggert@cs.ucla.edu>
80665
80666	Work around GC+Cairo bug
80667
80668	Workaround suggested by Robert Pluim (Bug#20890#13).
80669	* src/ftfont.c (ftfont_close) [USE_CAIRO]:
80670	Do nothing if GC is in progress.
80671
806722019-01-07  Eli Zaretskii  <eliz@gnu.org>
80673
80674	Improve commentary in font.h
80675
80676	* src/font.h (struct font, struct font_driver): Fix typos and
80677	wording in comments.  Document all driver methods.
80678
806792019-01-07  Martin Rudalics  <rudalics@gmx.at>
80680
80681	Fix definition of Qwindow_point_insertion_type (Bug#33871)
80682
80683	* src/window.c (Qwindow_point_insertion_type): Fix definition
80684	(Bug#33871).
80685
806862019-01-07  Eli Zaretskii  <eliz@gnu.org>
80687
80688	Improve documentation of 'server-name'
80689
80690	* doc/emacs/misc.texi (Emacs Server, TCP Emacs server)
80691	(emacsclient Options):
80692	* lisp/server.el (server-name):  Document the usage of
80693	'server-name' to specify the server file as an absolute file
80694	name.  Do not merge to master.  (Bug#33934)
80695
806962019-01-07  Eli Zaretskii  <eliz@gnu.org>
80697
80698	Update Unicode copyright notice
80699
80700	* admin/unidata/copyright.html: Updated version from the
80701	Unicode Consortium's site.
80702
807032019-01-07  Michael Albinus  <michael.albinus@gmx.de>
80704
80705	Handle quoted file names in filenotify.el
80706
80707	* lisp/filenotify.el (file-notify-add-watch): Do not save
80708	quoted file names in `file-notify-descriptors'.
80709
80710	* test/lisp/files-tests.el
80711	(files-file-name-non-special-notify-handlers): Do not expect
80712	to fail.
80713
807142019-01-07  Paul Eggert  <eggert@cs.ucla.edu>
80715
80716	Fix copyright years by hand
80717
80718	These are dates that admin/update-copyright did not update, or
80719	updated incorrectly.
80720
807212019-01-07  Paul Eggert  <eggert@cs.ucla.edu>
80722
80723	Update copyright year to 2019
80724
80725	Run 'TZ=UTC0 admin/update-copyright $(git ls-files)'.
80726
807272019-01-07  Eli Zaretskii  <eliz@gnu.org>
80728
80729	* doc/man/emacs.1.in: Fix value of default frame height.  (Bug#33921)
80730
807312019-01-07  Martin Rudalics  <rudalics@gmx.at>
80732
80733	In user manual fix value of default frame height (Bug#33921)
80734
80735	* doc/emacs/cmdargs.texi (Window Size X): Fix value of default
80736	frame height (Bug#33921).
80737
807382019-01-07  Eli Zaretskii  <eliz@gnu.org>
80739
80740	Improve documentation of 'file-local-name' and related APIs
80741
80742	* doc/lispref/files.texi (Unique File Names)
80743	(Magic File Names, File Name Expansion): Improve documentation
80744	of the "local part" of a remote file name.
80745	* doc/lispref/processes.texi (Synchronous Processes)
80746	(Asynchronous Processes): State explicitly that program and
80747	file names passed to functions that start remote processes
80748	need to be relative or obtained by 'file-local-name'.
80749
80750	* lisp/files.el (file-local-name):
80751	* lisp/simple.el (start-file-process, process-file): Improve
80752	the documentation of the "local part" of a remote file name,
80753	and its use in APIs that start remote processes.
80754
807552019-01-07  Michael Albinus  <michael.albinus@gmx.de>
80756
80757	Fix Bug#31704.  Do not merge
80758
80759	* lisp/net/tramp.el (tramp-eshell-directory-change):
80760	Use `path-separator' as it does eshell.  (Bug#31704)
80761
807622019-01-07  Michael Albinus  <michael.albinus@gmx.de>
80763
80764	Fix Bug#31704.  Do not merge
80765
80766	* lisp/eshell/esh-proc.el (eshell-gather-process-output): Do not
80767	let `expand-file-name' prefix remote file names with MS Windows
80768	volume letter.
80769
80770	* lisp/net/tramp.el (tramp-eshell-directory-change):
80771	Use `path-separator' as it does eshell.  (Bug#31704)
80772
807732019-01-07  Eli Zaretskii  <eliz@gnu.org>
80774
80775	* lisp/files.el (cd): Fix last change.  (Bug#33791)
80776
807772019-01-07  Eli Zaretskii  <eliz@gnu.org>
80778
80779	Fix remote directories in Eshell on MS-Windows
80780
80781	* lisp/files.el (cd): Support remote directory names on
80782	MS-Windows.  (Bug#33791)
80783
807842019-01-07  Drew Adams  <drew.adams@oracle.com>
80785
80786	Fix :type 'group' in defcustom
80787
80788	* lisp/wid-edit.el (group): Fix the :format spec.  (Bug#33566)
80789
807902019-01-07  Alan Third  <alan@idiocy.org>
80791
80792	Fix NS fringe bitmap drawing bug (bug#33864)
80793
80794	* src/nsterm.m (ns_draw_fringe_bitmap): Check the rectangle to clear
80795	correctly.
80796
807972019-01-07  Eli Zaretskii  <eliz@gnu.org>
80798
80799	Fix commentary in dispnew.c
80800
80801	* src/dispnew.c (buffer_posn_from_coords): Fix inaccuracies in
80802	the commentary.
80803
808042019-01-07  Paul Eggert  <eggert@cs.ucla.edu>
80805
80806	Improve accept-process-process doc
80807
80808	* doc/lispref/processes.texi (Accepting Output):
80809	* src/process.c (Faccept_process_output):
80810	Document that (accept-process-output P) can return non-nil
80811	even after P has exited, and that it can return nil even if P
80812	is still running (Bug#33839).
80813
808142019-01-07  Stephen Leake  <stephen_leake@stephe-leake.org>
80815
80816	Fix a simple bug in display-buffer-use-some-frame
80817
80818	* lisp/window.el (display-buffer-use-some-frame): Simplify the
80819	predicate, fix TYPE arg to window--display-buffer.
80820
808212019-01-07  Michael Albinus  <michael.albinus@gmx.de>
80822
80823	Clarify thread switching while waiting for process output
80824
80825	* doc/lispref/threads.texi (Threads): Clarify, that thread
80826	switching happens when waiting for process output from
80827	asynchronous processes.
80828
808292019-01-07  Charles A. Roelli  <charles@aurox.ch>
80830
80831	Improve process doc. with respect to handling of large input (Bug#33191)
80832
80833	* src/process.c (Fprocess_send_region, Fprocess_send_string):
80834	Document that process input longer than the process input
80835	buffer may be split into bunches.  Remove an outdated
80836	reference to a 500 character split boundary.
80837	* doc/lispref/processes.texi (Asynchronous Processes): Remove
80838	mention of "stray character injections" in PTY processes.  See
80839	also the comment about ICANON in src/sysdep.c, function
80840	child_setup_tty.
80841
808422019-01-07  Terrence Brannon  <metaperl@gmail.com>
80843
80844	Minor copyedits in landmark.el
80845
80846	* lisp/obsolete/landmark.el: Fix author's email and commentary.
80847
808482019-01-07  Alan Mackenzie  <acm@muc.de>
80849
80850	Check result from c-backward-token-2 to avoid infinite loop
80851
80852	This fixes bug #33784.
80853
80854	* lisp/progmodes/cc-fonts.el (c-get-fontification-context): While moving back
80855	over enclosing parentheses, check that c-backward-token-2 actually moves.
80856
808572019-01-07  Paul Eggert  <eggert@cs.ucla.edu>
80858
80859	cl-make-random-state was not copying its arg
80860
80861	Problem reported by Xu Chunyang (Bug#33731).
80862	* lisp/emacs-lisp/cl-extra.el (cl-make-random-state):
80863	Use copy-sequence, not copy-tree, so that the record is copied.
80864	* test/lisp/emacs-lisp/cl-extra-tests.el:
80865	(cl-extra-test-cl-make-random-state): New test.
80866
808672019-01-07  Glenn Morris  <rgm@gnu.org>
80868
80869	Skip a vc-bzr test if run as root
80870
80871	* test/lisp/vc/vc-bzr-tests.el (vc-bzr-test-faulty-bzr-autoloads):
80872	Skip this test when run as root.  This works around a race
80873	condition in root-specific code in vc-mode-line when deleting a file.
80874
808752019-01-07  Chris Feng  <chris.w.feng@gmail.com>
80876
80877	Backport: Handle unread-command-events consistently (bug#23980)
80878
80879	* src/keyboard.c (read_char): Events put into `unread-command-events'
80880	with the form (t . EVENT) should always have the t stripped when read
80881	out.
80882	* test/src/keyboard-tests.el: New tests for `unread-command-events'.
80883
80884	(cherry picked from commit 1f3f4b1296613b8cdc0632a68fde86e86ddad866)
80885
808862019-01-07  Glenn Morris  <rgm@gnu.org>
80887
80888	Restrict downcasing in elisp xref tests (bug#25534)
80889
80890	The tests happen to not fail at the moment because find-library-name
80891	now has an extra feature, find-library--from-load-history, which
80892	happens to do a case-insensitive regexp match; but still it seems
80893	better not to rely on this.
80894
80895	* test/lisp/progmodes/elisp-mode-tests.el (xref--case-insensitive):
80896	New variable.
80897	(xref-elisp-test-run, emacs-test-dir): Only downcase if the
80898	filesystem seems to be case-insensitive.
80899
809002019-01-07  Rob Browning  <rlb@defaultvalue.org>
80901
80902	Avoid test failures if directory name looks like a regexp
80903
80904	Taken from <https://sources.debian.org/patches/emacs/1:26.1+1-1>
80905	* test/lisp/ibuffer-tests.el (ibuffer-filter-inclusion-3):
80906	* test/lisp/net/tramp-tests.el (tramp-test42-remote-load-path):
80907	Regexp-quote file names to avoid failures with directory names
80908	of the form "build/emacs-i87jK3/emacs-26.1+1/...".
80909
809102019-01-07  Michael Albinus  <michael.albinus@gmx.de>
80911
80912	Fix Bug#33524
80913
80914	* lisp/progmodes/flymake-proc.el
80915	(flymake-proc-create-temp-with-folder-structure):
80916	Unquote file-name.  (Bug#33524)
80917
809182019-01-07  Glenn Morris  <rgm@gnu.org>
80919
80920	* doc/lispintro/emacs-lisp-intro.texi (Finding More): Fix xref.
80921
809222019-01-07  Paul Eggert  <eggert@cs.ucla.edu>
80923
80924	More porting to GCC 8 of --enable-gcc-warnings
80925
80926	Backport from master.
80927	I ran into this when building Emacs 26 with GCC 8 on Fedora 29 x86.
80928	* lwlib/lwlib-Xaw.h (xaw_update_one_value, xaw_popup_menu):
80929	* lwlib/lwlib-Xlw.h (xlw_update_one_value, xlw_pop_instance):
80930	* lwlib/lwlib.h (lw_allow_resizing, lw_set_main_areas) [!USE_MOTIF]:
80931	No longer const.
80932	* src/emacs-module.c: Ignore -Wcast-function-type.
80933
809342019-01-07  Glenn Morris  <rgm@gnu.org>
80935
80936	Fix an epg test for recent GnuPG versions (bug#33439)
80937
80938	* test/lisp/epg-tests.el (epg-decrypt-1):
80939	Tell recent GnuPG (e.g. 2.2.11) not to worry about missing MDC.
80940
809412019-01-07  Robert Pluim  <rpluim@gmail.com>
80942
80943	Document font structure layout constraints
80944
80945	This has to be the same as in src/ftcrfont.c and src/ftfont.c
80946
80947	* src/xftfont.c (struct xftfont_info): Document layout constraints.
80948
809492019-01-07  Robert Pluim  <rpluim@gmail.com>
80950
80951	Document font structure layout constraints
80952
80953	The layout of the initial members of ftcrfont_info must match
80954	ftfont_info
80955
80956	* src/ftcrfont.c (struct ftcrfont_info): Likewise.
80957
80958	* src/ftfont.c (struct ftfont_info): Document layout constraints.
80959
809602019-01-07  Eli Zaretskii  <eliz@gnu.org>
80961
80962	Fix display of line numbers in empty lines beyond EOB
80963
80964	* src/xdisp.c (maybe_produce_line_number): When the current
80965	line is at EOB, use the 'line-number-current-line' face only
80966	on that single line, but not on the rest of empty lines beyond
80967	EOB.  (Bug#33732)
80968
809692019-01-07  Eli Zaretskii  <eliz@gnu.org>
80970
80971	Fix redisplay when a window's scroll bar or fringes are changed
80972
80973	* src/window.c (set_window_fringes, set_window_scroll_bars):
80974	Set windows_or_buffers_changed flag to cause immediate
80975	thorough redisplay of a window when scroll bars or fringes are
80976	changed.  (Bug#33694)
80977
809782019-01-07  Martin Rudalics  <rudalics@gmx.at>
80979
80980	Tiny markup fix in Elisp manual
80981
80982	* doc/lispref/lists.texi (Building Lists): Use '@var' instead
80983	of '@code' for argument.
80984
809852019-01-07  Alan Mackenzie  <acm@muc.de>
80986
80987	CC Mode: stop extra parens on expression causing false fontification as type
80988
80989	* lisp/progmodes/cc-fonts.el (c-get-fontification-context): recognize
80990	arithmetic operator followed by several open parentheses, not just one, as not
80991	being an argument list.
80992
809932019-01-07  Ari Roponen  <ari.roponen@gmail.com>
80994
80995	Fix cairo scrolling for side-by-side windows
80996
80997	Backport: Fixes Bug#33442.
80998
80999	* src/xterm.c (x_scroll_run) [USE_CAIRO]: Fix scrolling for
81000	side-by-side split windows.  (Bug#31288)
81001
81002	(cherry picked from commit 6e362a32bc9d21f73a0f29ca6f45481edeea6f29)
81003
810042019-01-07  Alan Mackenzie  <acm@muc.de>
81005
81006	CC Mode: stop wrongly recognizing "func(a * 9)" as "pointer to type a"
81007
81008	* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): When testing for an
81009	identifier after "a *", on failure additionally check for a digit, setting a
81010	new flag variable got-number if one is found.  In the test for CASE 18, check
81011	this flag.
81012
810132019-01-07  Stefan Monnier  <monnier@iro.umontreal.ca>
81014
81015	* lisp/emacs-lisp/cursor-sensor.el: Add motivation
81016
810172019-01-07  Raimon Grau  <raimonster@gmail.com>
81018
81019	Guard occur against an undefined orig-line
81020
81021	* lisp/replace.el (occur-engine): Avoid inserting the current line if
81022	orig-line is nil.  This happens, for example, when reverting an occur
81023	buffer with `list-matching-lines-jump-to-current-line' set to t.
81024	(Bug#33476)
81025
810262019-01-07  Eli Zaretskii  <eliz@gnu.org>
81027
81028	Indexing followup to recent changes
81029
81030	* doc/lispref/text.texi (Special Properties): Index
81031	'cursor-sensor-inhibit'.  (Bug#33664)
81032
810332019-01-07  Stefan Monnier  <monnier@iro.umontreal.ca>
81034
81035	Improve documentation of cursor-sensor.el (bug#33664)
81036
81037	* doc/lispref/text.texi (Special Properties): Mention cursor-sensor-inhibit.
81038	* lisp/emacs-lisp/cursor-sensor.el (Commentary): Add cursor-sensor-mode.
81039	(cursor-sensor-inhibit): Add docstring.
81040
810412019-01-07  Stefan Monnier  <monnier@iro.umontreal.ca>
81042
81043	* doc/lispref/commands.texi (Adjusting Point): Bug#33662
81044
81045	Tweak text to clarify intangibility.
81046
810472019-01-07  Michael Albinus  <michael.albinus@gmx.de>
81048
81049	Tramp multi-hop methods must be inline
81050
81051	* doc/misc/tramp.texi (Ad-hoc multi-hops): Involved methods must
81052	be inline methods.
81053
810542019-01-07  Ari Roponen  <ari.roponen@gmail.com>
81055
81056	Fix scaling problem in Cairo builds
81057
81058	* src/xterm.c (x_begin_cr_clip) [USE_GTK]:
81059	(x_update_begin) [USE_CAIRO && USE_GTK]: Support scaling.
81060	(Bug#33442)
81061
810622019-01-07  Juri Linkov  <juri@linkov.net>
81063
81064	* lisp/simple.el (next-line-or-history-element): Use current-column
81065
81066	in all position calculations.
81067	(previous-line-or-history-element): Idem.  (Bug#33640)
81068
810692019-01-07  Martin Rudalics  <rudalics@gmx.at>
81070
81071	A few further fixes of window internals description
81072
81073	* doc/lispref/internals.texi (Window Internals): Add a few
81074	more items and clarify description of some others.
81075
810762019-01-07  Eli Zaretskii  <eliz@gnu.org>
81077
81078	Revert "Revert "Fix infloop in GC mark_kboards""
81079
81080	This reverts commit c418c85617babbe7b63730fefb71e2c87a0141af.
81081	This reinstates the original fix, as it had nothing to do
81082	with the behavior reported in bug#33571, which seems to be
81083	the expected behavior.
81084
810852019-01-07  Eli Zaretskii  <eliz@gnu.org>
81086
81087	Revert "Fix infloop in GC mark_kboards"
81088
81089	This reverts commit af914fc26db273d8788e7efa57c569f0f778d037,
81090	since it caused unintended adverse effects on echoing of keys.
81091	(Bug#33571)
81092
810932019-01-07  Glenn Morris  <rgm@gnu.org>
81094
81095	* lisp/emacs-lisp/subr-x.el (if-let, when-let): Doc fix: active voice.
81096
810972019-01-07  Paul Eggert  <eggert@cs.ucla.edu>
81098
81099	Fix infloop in GC mark_kboards
81100
81101	Do not merge to master, as I have a more systematic fix there.
81102	* src/keyboard.c (mark_kboards): Fix infloop (Bug#33547).
81103
811042019-01-07  Alan Third  <alan@idiocy.org>
81105
81106	Fix macOS run-time feature check
81107
81108	* src/nsterm.m (x_set_parent_frame) [NS_IMPL_COCOA]: Fix run-time
81109	feature check.
81110
811112019-01-07  Stefan Monnier  <monnier@iro.umontreal.ca>
81112
81113	* etc/NEWS-*: Fix capitalization of "Emacs"
81114
811152019-01-07  Eli Zaretskii  <eliz@gnu.org>
81116
81117	Fix "M-x man" when there's no 'man' program on PATH
81118
81119	* lisp/man.el (Man-bgproc-sentinel): Make sure the process
81120	buffer is not read-only when inserting a message into it.
81121	(Bug#33510)
81122
811232019-01-07  Paul Eggert  <eggert@cs.ucla.edu>
81124
81125	Fix core dump in dbus-message-internal
81126
81127	Backport from master.
81128	* src/dbusbind.c (Fdbus_message_internal):
81129	Don’t go past array end (Bug#33530).
81130
811312019-01-07  Michael Albinus  <michael.albinus@gmx.de>
81132
81133	* doc/misc/dbus.texi (Type Conversion): Fix typo.  (Bug#33551)
81134
811352019-01-07  Eli Zaretskii  <eliz@gnu.org>
81136
81137	Improve documentation of gdb-mi.el
81138
81139	* lisp/progmodes/gdb-mi.el (gdb-show-changed-values)
81140	(gdb-max-children): Doc fixes.
81141
81142	* doc/emacs/building.texi (Source Buffers, Stack Buffer)
81143	(GDB User Interface Layout): Mention some additional
81144	customizable variables.  (Bug#33548)
81145
811462019-01-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
81147
81148	LDAP: Set process-connection-type to t on Darwin
81149
81150	* lisp/net/ldap.el (ldap-search-internal): Set
81151	process-connection-type to t on Darwin.  Do not merge to
81152	master.  (Bug#33050)
81153
811542019-01-07  Eli Zaretskii  <eliz@gnu.org>
81155
81156	Fix a typo in a doc string
81157
81158	* lisp/emacs-lisp/map-ynp.el (read-answer-short): Fix typo.
81159	(Bug#33528)
81160
811612019-01-07  Eli Zaretskii  <eliz@gnu.org>
81162
81163	Minor markup fix in frames.texi
81164
81165	* doc/lispref/frames.texi (Frame Layout): Fix markup of @table
81166	entries.  (Bug#33531)
81167
811682019-01-07  Glenn Morris  <rgm@gnu.org>
81169
81170	* lisp/net/trampver.el (customize-package-emacs-version-alist):
81171	Add 2.3.3.
81172
81173	* lisp/mh-e/mh-e.el (customize-package-emacs-version-alist): Additions.
81174
811752019-01-07  Glenn Morris  <rgm@gnu.org>
81176
81177	* lisp/emacs-lisp/map-ynp.el (map-y-or-n-p): Pass format to message.
81178
811792019-01-07  Robert Pluim  <rpluim@gmail.com>
81180
81181	Don't call xwidget functions until GTK has been initialized
81182
81183	Follow up fix to Bug#33294.
81184
81185	* src/gtkutil.c: Define xg_gtk_initialized.
81186	(xg_initialize): Set it when GTK has finished initializing.
81187
81188	* src/gtkutil.h: Declare xg_gtk_initialized.
81189
81190	* src/xwidget.c (Fmake_xwidget): Error out if GTK has not been
81191	initialized.
81192	(xwidget_init_view): Likewise.
81193
811942019-01-07  Eli Zaretskii  <eliz@gnu.org>
81195
81196	Improve documentation of Ediff wordwise commands
81197
81198	* lisp/vc/ediff.el (ediff-windows-wordwise)
81199	(ediff-windows-linewise, ediff-regions-wordwise): Update and
81200	clarify the doc strings.
81201
81202	* doc/misc/ediff.texi (Major Entry Points): Update and clarify
81203	the documentation of 'ediff-windows-wordwise' and
81204	'ediff-regions-wordwise'.  See the discussion starting at
81205	https://lists.gnu.org/archive/html/help-gnu-emacs/2018-11/msg00197.html
81206	for the details.
81207
812082019-01-07  Eli Zaretskii  <eliz@gnu.org>
81209
81210	Support Hunspell 1.7.0 in ispell.el
81211
81212	* lisp/textmodes/ispell.el
81213	(ispell-find-hunspell-dictionaries): Invoke Hunspell with an
81214	additional command-line argument, to work around a misfeature
81215	in Hunspell 1.7.0 that prevents it from reporting the loaded
81216	dictionary.  (Bug#33493)
81217
812182019-01-07  Eli Zaretskii  <eliz@gnu.org>
81219
81220	Avoid clearing echo-area message by auto-save-visited-file-name
81221
81222	* lisp/emacs-lisp/map-ynp.el (map-y-or-n-p): Record the
81223	previous echo-area message, if any, and restore it before
81224	exiting.  (Bug#33490)
81225
812262019-01-07  Alan Third  <alan@idiocy.org>
81227
81228	Set tooltip text color (bug#33452)
81229
81230
81231	* src/nsmenu.m: ([EmacsTooltip init]): Set text color to black.
81232
812332019-01-07  Alan Third  <alan@idiocy.org>
81234
81235	Fix more drawing bugs in NS port (bug#32932)
81236
81237	* src/nsterm.m (ns_row_rect): New function.
81238	(ns_clip_to_row): Remove function.
81239	(ns_copy_bits): Fix mistake.
81240	(ns_shift_glyphs_for_insert): Mark the frame as dirty instead of
81241	directly copying.
81242	(ns_draw_fringe_bitmap): Stop using ns_clip_to_row.
81243	(ns_draw_window_cursor): Stop using ns_clip_to_row and perform a
81244	display when not in redisplay.
81245	(ns_update_window_begin): Remove redundant code that never executes.
81246	([EmacsView drawRect:]): Show the rectangle being exposed in NSTRACE.
81247	* src/xdisp.c (expose_window_tree) [HAVE_NS]:
81248	(expose_frame) [HAVE_NS]: Redraw even if the frame is garbaged.
81249
812502019-01-07  Alan Mackenzie  <acm@muc.de>
81251
81252	Fix bug #33416, where typing a ) in a comment at EOB caused a loop (CC Mode).
81253
81254	* lisp/progmodes/cc-mode.el (c-fl-decl-start): A c-forward-syntactic-ws leaves
81255	point inside whitespace when moving over a comment at EOB which has no
81256	terminating LF.  Check this possibility and correct for it.
81257
812582019-01-07  Ulrich Müller  <ulm@gentoo.org>
81259
81260	Update the calc units table
81261
81262	On 2018-11-16, the 26th meeting of the General Conference on Weights
81263	and Measures (CGPM) has redefined the International System of Units by
81264	adopting fixed values for the Planck constant, the elementary charge,
81265	the Boltzmann constant, and the Avogadro constant:
81266	https://www.bipm.org/utils/en/pdf/CGPM/Draft-Resolution-A-EN.pdf
81267
81268	* lisp/calc/calc-units.el (math-standard-units): Update according
81269	to redefinition of the SI in 2018.  (Bug#33412)
81270
812712019-01-07  Eli Zaretskii  <eliz@gnu.org>
81272
81273	Improve indexing in the ELisp manual
81274
81275	* doc/lispref/control.texi (Control Structures, Sequencing)
81276	(Conditionals, Iteration, Catch and Throw, Handling Errors)
81277	(Cleanups):
81278	* doc/lispref/eval.texi (Self-Evaluating Forms)
81279	(Symbol Forms, Function Forms, Macro Forms, Special Forms)
81280	(Quoting, Backquote): Add index entries that begin with
81281	"forms".  (Bug#33440)
81282
812832019-01-07  Eli Zaretskii  <eliz@gnu.org>
81284
81285	More Symbola-related extensions for default fontset
81286
81287	* lisp/international/fontset.el (setup-default-fontset): Add
81288	few more blocks of symbols and punctuation supported by	latest
81289	Symbola.
81290
812912019-01-07  Eli Zaretskii  <eliz@gnu.org>
81292
81293	Better support for display of U+1F900..U+1F9FF block
81294
81295	* lisp/international/fontset.el (setup-default-fontset): Add
81296	the [#x1F900..#x1F9FF] block to those supported by Symbola.
81297
812982019-01-07  Eli Zaretskii  <eliz@gnu.org>
81299
81300	Improve documentation of 'edit-abbrevs-mode'
81301
81302	* lisp/abbrev.el (edit-abbrevs-mode): Refer to 'edit-abbrevs'
81303	for more detailed usage information.  (Bug#33443)
81304	(edit-abbrevs): Doc fix.
81305
813062019-01-07  Eli Zaretskii  <eliz@gnu.org>
81307
81308	Improve documentation of 'dired-do-compress'
81309
81310	* lisp/dired-aux.el (dired-do-compress): Describe in the doc
81311	string the effect on directories and on compressed archive.
81312	(Bug#33450)
81313
813142019-01-07  Eli Zaretskii  <eliz@gnu.org>
81315
81316	Improve doc string and display of 'describe-character'
81317
81318	* lisp/descr-text.el (describe-char): Explain how does the
81319	function obtain the various data about the character.  Don't
81320	display "preferred" before "charset": it tends to confuse
81321	people.
81322
813232019-01-07  Eli Zaretskii  <eliz@gnu.org>
81324
81325	* etc/NEWS: Clarify what 'Z' does in Dired.  (Bug#33450)
81326
813272019-01-07  Eli Zaretskii  <eliz@gnu.org>
81328
81329	Update the docs of object internals
81330
81331	* doc/lispref/internals.texi (Buffer Internals)
81332	(Window Internals, Process Internals): Update the descriptions
81333	of Lisp objects.
81334
813352019-01-07  Stephen Berman  <stephen.berman@gmx.net>
81336
81337	Fix two Edebug defcustoms (bug#33428)
81338
81339	* lisp/emacs-lisp/edebug.el (edebug-print-length)
81340	(edebug-print-level): Fix customization type to allow setting
81341	the documented valid value nil via the Customize interface.
81342
813432019-01-07  Michael Albinus  <michael.albinus@gmx.de>
81344
81345	Fix Bug#33141
81346
81347	* lisp/net/tramp.el (tramp-make-tramp-file-name): Avoid check for
81348	empty method with simplified `tramp-syntax'.  (Bug#33141)
81349
813502019-01-07  Eli Zaretskii  <eliz@gnu.org>
81351
81352	Improve documentation of the window tree
81353
81354	* doc/lispref/windows.texi (Windows and Frames): More accurate
81355	wording regarding the relation of a mini-window to its frame's
81356	window tree.
81357
81358	* src/window.h (struct window): Improve commentary to some
81359	fields.
81360
813612019-01-07  Eli Zaretskii  <eliz@gnu.org>
81362
81363	Fix window scrolling on TTY frames when there's no mode line
81364
81365	* src/window.c (window_internal_height): Remove tests for
81366	next, prev, and parent pointers, as they are unrelated to
81367	whether a window has a mode line.  (Bug#33363)
81368
813692019-01-07  Eli Zaretskii  <eliz@gnu.org>
81370
81371	Fix decoding XML files encoded in ISO-8859
81372
81373	* lisp/international/mule.el (sgml-xml-auto-coding-function):
81374	Avoid signaling an error from coding-system-equal when the XML
81375	encoding tag specifies an encoding whose type is 'charset'.
81376	(Bug#33429)
81377
813782019-01-07  Nicolas Petton  <nicolas@petton.fr>
81379
81380	* etc/AUTHORS: Update.
81381
813822018-11-18  Martin Rudalics  <rudalics@gmx.at>
81383
81384	Fix description of some window hooks
81385
81386	* doc/lispref/windows.texi (Window Hooks): Remove text that
81387	warns against using 'save-window-excursion' while running
81388	'window-size-change-functions', it's no more relevant.
81389	Clarify description of 'window-configuration-change-hook'.
81390
813912018-11-18  Gary Fredericks  <fredericksgary@gmail.com>  (tiny change)
81392
81393	Run 'window--adjust-process-windows' when frame size changes (Bug#32720)
81394
81395	* lisp/window.el (window-size-change-functions): Run
81396	'window--adjust-process-windows' from
81397	'window-size-change-functions' too (Bug#32720, "another issue"
81398	in Bug#33230).
81399
814002018-11-16  Eli Zaretskii  <eliz@gnu.org>
81401
81402	Avoid errors in zone.el when there's overlay at EOB
81403
81404	* lisp/play/zone.el (zone): Make sure the window-end position
81405	is calculated accurately, to avoid errors from
81406	buffer-substring.  (Bug#33384)
81407
814082018-11-16  Eli Zaretskii  <eliz@gnu.org>
81409
81410	Document Emacs 26 behavior of Dired's 'Z' on directories
81411
81412	* doc/emacs/dired.texi (Operating on Files): Document behavior
81413	of 'Z' on directories.
81414
81415	* etc/NEWS: Belatedly announce the new behavior of Dired's 'Z'
81416	on directory names and on .tar.gz archives.
81417
814182018-11-15  Eli Zaretskii  <eliz@gnu.org>
81419
81420	Fix a typo in the Emacs manual
81421
81422	* doc/emacs/rmail.texi (Rmail Deletion): Fix a typo.
81423	Reported by Jorge P. de Morais Neto <jorge+list@disroot.org>
81424	in emacs-manual-bugs@gnu.org
81425
814262018-11-15  Paul Eggert  <eggert@cs.ucla.edu>
81427
81428	Fix tempfile creation when byte compiling
81429
81430	This improves on the recent fix for master failing to build
81431	on FreeBSD.  Suggested by Stefan Monnier in:
81432	https://lists.gnu.org/r/emacs-devel/2018-01/msg00600.html
81433	* lisp/emacs-lisp/bytecomp.el (byte-compile-file):
81434	Put tempfile next to the target file, as was the original intent.
81435
81436	(cherry picked from commit 64c846738617d1d037eac0cefb6586c04317b0a1)
81437
814382018-11-14  Markus Triska  <triska@metalevel.at>
81439
81440	Small documentation correction.
81441
81442	* doc/lispref/windows.texi (Textual Scrolling): In the description of
81443	scroll-up-aggressively, refer to scroll-down-aggressively instead of
81444	a recursive reference to scroll-up-aggressively.  (Bug#33369)
81445
814462018-11-14  Eli Zaretskii  <eliz@gnu.org>
81447
81448	* src/coding.c (Fcheck_coding_systems_region): Doc fix.  (Bug#33372)
81449
814502018-11-14  Michael Albinus  <michael.albinus@gmx.de>
81451
81452	Fix Bug#33364
81453
81454	* lisp/net/tramp.el (tramp-parse-sconfig-group): Support also
81455	"Host host1 host2 ..." syntax.  (Bug#33364)
81456
814572018-11-13  Michael Albinus  <michael.albinus@gmx.de>
81458
81459	* test/README: Explain $REMOTE_TEMPORARY_FILE_DIRECTORY.
81460
814612018-11-12  Glenn Morris  <rgm@gnu.org>
81462
81463	Avoid kill-emacs-hook errors hanging batch mode
81464
81465	* src/emacs.c (Fkill_emacs): Prevent errors from kill-emacs-hook
81466	hanging Emacs in batch mode.  (Bug#29955)
81467
81468	(cherry picked from commit 109da684c5124e22505917fe0255ca66f2a6bfc9)
81469
814702018-11-12  Nicolas Petton  <nicolas@petton.fr>
81471
81472	Bump Emacs version to 26.1.90
81473
81474	* README:
81475	* configure.ac:
81476	* msdos/sed2v2.inp:
81477	* nt/README.W32: Bump Emacs version to 26.1.90.
81478
814792018-11-12  Nicolas Petton  <nicolas@petton.fr>
81480
81481	* etc/AUTHORS: Update.
81482
814832018-11-12  Paul Eggert  <eggert@cs.ucla.edu>
81484
81485	Work around dumping bug on GNU/Linux ppc64le
81486
81487	Problem reported by Thomas Fitzsimmons (Bug#33174).
81488	Do not merge to master, as we have a better fix there.
81489	* src/Makefile.in (emacs$(EXEEXT)):
81490	(bootstrap-emacs$(EXEEXT)):
81491	Unset EMACS_HEAP_EXEC before invoking temacs.
81492
814932018-11-11  Eli Zaretskii  <eliz@gnu.org>
81494
81495	* lisp/files.el (write-file): Clarify the doc string.  (Bug#33339)
81496
814972018-11-11  Simen Heggestøyl  <simenheg@gmail.com>
81498
81499	Fix typos in midnight.el
81500
81501	* lisp/midnight.el (clean-buffer-list-delay-general)
81502	(clean-buffer-list-kill-regexps)
81503	(clean-buffer-list-kill-buffer-names): Fix docstring typos.
81504
815052018-11-10  Eli Zaretskii  <eliz@gnu.org>
81506
81507	Improve documentation of 'move-file-to-trash'
81508
81509	* doc/emacs/files.texi (Misc File Ops): Index
81510	move-file-to-trash.  State that the way to restore trashed
81511	files is system-dependent.
81512
815132018-11-09  Stefan Monnier  <monnier@iro.umontreal.ca>
81514
81515	* src/data.c (Ftype_of): xwidget objects are possible! (bug#33294)
81516
81517	(syms_of_data): Define Qwidget here.
81518	* src/xwidget.c (syms_of_xwidget): Instead of here.
81519
815202018-11-09  Eli Zaretskii  <eliz@gnu.org>
81521
81522	Improve documentation of Diff mode
81523
81524	* doc/emacs/files.texi (Diff Mode): Document the effect of
81525	prefix argument on the Diff mode's commands.  Document
81526	'diff-jump-to-old-file'.
81527
815282018-11-09  Noam Postavsky  <npostavs@gmail.com>
81529
81530	Note that lex bound lambda forms are not self-quoting (Bug#33199)
81531
81532	* doc/lispref/functions.texi (Anonymous Functions):
81533	* lisp/subr.el (lambda): Note that under lexical binding a lambda form
81534	yields a closure object (Bug#33199).
81535
815362018-11-08  Martin Rudalics  <rudalics@gmx.at>
81537
81538	Rewrite buffer display related doc-strings and doc
81539
81540	* lisp/window.el (display-buffer-overriding-action)
81541	(display-buffer-alist, display-buffer-base-action)
81542	(display-buffer-fallback-action, display-buffer-assq-regexp)
81543	(display-buffer): Rewrite doc-strings using suggestions by
81544	Alan Mackenzie <acm@muc.de>.
81545	(display-buffer-use-some-frame): Adjust doc-string and
81546	reformat code.
81547	* doc/lispref/windows.texi (Buffer Display Action Alists):
81548	Make docs on 'window-height', 'window-width' and
81549	'preserve-size' entries more accurate.
81550
815512018-11-06  Eli Zaretskii  <eliz@gnu.org>
81552
81553	Fix call to GlobalMemoryStatusEx in w32.c
81554
81555	* src/w32.c (system_process_attributes): Initialize the size
81556	of the data structure passed to GlobalMemoryStatusEx,
81557	otherwise it fails.
81558
815592018-11-04  Eli Zaretskii  <eliz@gnu.org>
81560
81561	Improve recent changes in documentation of window handling
81562
81563	* doc/lispref/windows.texi (Displaying Buffers)
81564	(Choosing Window, Buffer Display Action Functions)
81565	(Buffer Display Action Alists, Choosing Window Options)
81566	(Precedence of Action Functions, The Zen of Buffer Display):
81567	Fix wording, punctuation, and markup.  Remove redundant
81568	cross-references.
81569
81570	* doc/emacs/windows.texi (Window Choice, Temporary Displays):
81571	Fix wording and punctuation.
81572
815732018-11-04  Martin Rudalics  <rudalics@gmx.at>
81574
81575	Rewrite documentation of buffer display
81576
81577	* doc/emacs/windows.texi (Window Choice): Rewrite, replacing
81578	references to older buffer display options with references to
81579	and examples of buffer display actions.
81580	(Temporary Displays): Rewrite display of *Completions*
81581	example.
81582
81583	* doc/lispref/elisp.texi (Top): New Windows section
81584	'Displaying Buffers'.
81585	* doc/lispref/frames.texi (Child Frames): Adjust cross
81586	reference.
81587	* doc/lispref/windows.texi (Windows): New section 'Displaying
81588	Buffers'.  Move sections 'Choosing Window', 'Display Action
81589	Functions' and 'Choosing Window Options' there and adjust
81590	namings.  Preferably write 'Buffer Display Action' instead of
81591	'Display Action'.  More consistently use @w{} to make key
81592	binding specifications unsplittable.
81593	(Displaying Buffers): New section.
81594	(Choosing Window): Make it a subsection of 'Displaying
81595	Buffers'.  More explicitly describe how 'display-buffer'
81596	compiles its list of action functions and the action alist.
81597	(Buffer Display Action Functions): Rename from 'Display Action
81598	Functions', make it a subsection of 'Displaying Buffers' and
81599	rewrite it.  Elide more detailed descriptions of action alist
81600	entries; these are now in the new section 'Buffer Display
81601	Action Functions'.  Remove example.
81602	(Buffer Display Action Alists): New subsection of 'Displaying
81603	Buffers' giving a comprehensive description of recognized
81604	action alist entries with appropriate indexing.  Contents were
81605	partially moved here from the old 'Display Action Functions'
81606	section.
81607	(Choosing Window Options): Make it a subsection of 'Displaying
81608	Buffers'.  Add examples of how to rewrite old buffer display
81609	options with the help of buffer display actions.
81610	(Precedence of Action Functions): New subsection of
81611	'Displaying Buffers' explaining the execution order of action
81612	functions with the help of a detailed example.
81613	(The Zen of Buffer Display): New subsection of 'Displaying
81614	Buffers' supplying guidelines on how to write and use buffer
81615	display actions with examples.
81616	(Side Windows, Displaying Buffers in Side Windows)
81617	(Frame Layouts with Side Windows, Atomic Windows): Update
81618	references to the 'Displaying Buffers' subsections.
81619
816202018-11-03  Eli Zaretskii  <eliz@gnu.org>
81621
81622	Improve documentation of destructuring-binding macros
81623
81624	* lisp/emacs-lisp/pcase.el (pcase-dolist, pcase-let)
81625	(pcase-let*): Improve the doc strings.
81626
81627	* doc/lispref/sequences.texi (Sequence Functions): Improve
81628	wording and rename arguments of seq-let to be more
81629	descriptive.  Add a cross-reference to "Destructuring with
81630	pcase Patterns".
81631	* doc/lispref/control.texi (Pattern-Matching Conditional):
81632	Improve wording and the menu.
81633	(pcase Macro): Incorporate patch suggested by Paul Eggert
81634	<eggert@cs.ucla.edu>.  Reformat text.
81635	(Destructuring with pcase Patterns): Rename from
81636	"Destructuring patterns", and improve wording and indexing.
81637
816382018-11-03  Eli Zaretskii  <eliz@gnu.org>
81639
81640	Avoid byte compilation warning in rcirc.el
81641
81642	* lisp/net/rcirc.el (rcirc-prompt-start-marker): Move
81643	definition before 1st use to avoild byte-compiler warning.
81644
816452018-11-03  Basil L. Contovounesios  <contovob@tcd.ie>
81646
81647	Avoid race in rcirc process filter (bug#33145)
81648
81649	* lisp/net/rcirc.el (rcirc-filter): Clear rcirc-process-output
81650	before processing its constituent lines.  Otherwise, if rcirc-filter
81651	runs again before the last rcirc-process-server-response is
81652	finished, the contents of rcirc-process-output could be duplicated.
81653
816542018-11-03  Jordan Wilson  <jordan.t.wilson@gmx.com>  (tiny change)
81655
81656	Avoid file-name errors when viewing PDF from Gnus
81657
81658	* lisp/doc-view.el (doc-view-mode): Run the output file name
81659	through 'convert-standard-filename', to avoid problems with
81660	characters that are not allowed in file names on some
81661	systems.  (Bug#32989)
81662
816632018-11-02  Eli Zaretskii  <eliz@gnu.org>
81664
81665	Avoid crashes with remapped default face in Org mode
81666
81667	* src/xfaces.c (face_at_buffer_position): Look up BASE_FACE_ID
81668	anew if it is not in the frame's face cache.  This avoids
81669	crashes when Org mode sets up for a new major mode in embedded
81670	code fragment, and the default face is remapped.  (Bug#33222)
81671
816722018-11-01  Eric Abrahamsen  <eric@ericabrahamsen.net>
81673
81674	Doc fix for checkdoc-continue
81675
81676	* lisp/emacs-lisp/checkdoc.el (checkdoc-continue): There is no second
81677	  optional argument, and the function always starts from point.
81678
816792018-11-01  Eli Zaretskii  <eliz@gnu.org>
81680
81681	Fix a typo in autoload.el
81682
81683	* lisp/emacs-lisp/autoload.el (update-directory-autoloads):
81684	Remove stray backslashes.  (Bug#33231)
81685
816862018-10-31  Stefan Monnier  <monnier@iro.umontreal.ca>
81687
81688	* doc/lispref/control.texi (Destructuring patterns): New subsection.
81689
816902018-10-31  Gemini Lasswell  <gazally@runbox.com>
81691
81692	Add regression test for Bug#33014
81693
81694	Backport from master.
81695	* test/src/eval-tests.el:
81696	(eval-tests-byte-code-being-evaluated-is-protected-from-gc): New test.
81697	(eval-tests-33014-var): New variable.
81698	(eval-tests-33014-func, eval-tests-33014-redefine): New functions.
81699
817002018-10-31  Paul Eggert  <eggert@cs.ucla.edu>
81701
81702	Refer to bytecode constant vectors (Bug#33014)
81703
81704	Backport from master.
81705	* src/bytecode.c (exec_byte_code): Save VECTOR into stack slot
81706	so that it survives GC.  The stack slot was otherwise unused,
81707	so this doesn’t cost us memory, only a store insn.
81708
817092018-10-30  Stefan Monnier  <monnier@iro.umontreal.ca>
81710
81711	* lisp/emacs-lisp/pcase.el: Improve docstrings.
81712
817132018-10-30  Eli Zaretskii  <eliz@gnu.org>
81714
81715	* lisp/emacs-lisp/rx.el (rx): Fix typo in doc string.  (Bug#33205)
81716
817172018-10-30  Eli Zaretskii  <eliz@gnu.org>
81718
81719	Improve doc string of 'call-process'
81720
81721	* src/callproc.c (Fcall_process): Clarify DESTINATION in the
81722	doc string.
81723
817242018-10-30  Eli Zaretskii  <eliz@gnu.org>
81725
81726	Document that generic functions cannot be commands
81727
81728	* doc/lispref/commands.texi (Defining Commands):
81729	* doc/lispref/functions.texi (Generic Functions): Document
81730	that generic functions cannot be turned into commands.
81731	(Bug#33170)
81732
817332018-10-28  Charles A. Roelli  <charles@aurox.ch>
81734
81735	* lisp/mail/rmailsum.el (rmail-summary-output): Add lost word to doc.
81736
817372018-10-28  Charles A. Roelli  <charles@aurox.ch>
81738
81739	Add index entries for more isearch commands/bindings (Bug#32990)
81740
81741	* doc/emacs/search.texi (Basic Isearch): Index isearch-exit,
81742	isearch-abort, isearch-cancel, isearch-repeat-forward,
81743	isearch-repeat-backward and their bindings.
81744	(Repeat Isearch): Index isearch-ring-advance,
81745	isearch-ring-retreat and isearch-edit-string.
81746	(Special Isearch): Index isearch-quote-char,
81747	isearch-char-by-name and their bindings.  Index
81748	isearch-query-replace and isearch-query-replace-regexp, and
81749	the latter's binding.  Explain what
81750	isearch-query-replace-regexp does.  Index isearch-complete.
81751	(Word Search): Index isearch-toggle-word.
81752
817532018-10-27  Noam Postavsky  <npostavs@gmail.com>
81754
81755	* lisp/simple.el (filter-buffer-substring): Clarify doc (Bug#33179).
81756
817572018-10-27  Eli Zaretskii  <eliz@gnu.org>
81758
81759	Fix recent change in lispref/processes.texi.
81760
81761	* doc/lispref/processes.texi (Asynchronous Processes): Clarify
81762	wording.  Suggested by Thomas Fitzsimmons <fitzsim@fitzsim.org>.
81763	(Bug#33050)
81764
817652018-10-27  Eli Zaretskii  <eliz@gnu.org>
81766
81767	* lisp/simple.el (region-extract-function): Doc fix.  (Bug#33167)
81768
81769	* lisp/simple.el (region-bounds): Doc fix.  (Bug#33168)
81770
817712018-10-27  Eli Zaretskii  <eliz@gnu.org>
81772
81773	Improve documentation of 'process-connection-type'
81774
81775	* doc/lispref/processes.texi (Asynchronous Processes): Clarify
81776	better when it is advisable to use pipes for communicating
81777	with subprocesses.  (Bug#33050)
81778
817792018-10-27  Pierre Téchoueyres  <pierre.techoueyres@free.fr>
81780
81781	Unify prompt for gnupg passphrase between GNU/Linux and MS-Windows.
81782
81783	* lisp/epg.el (epg--start): Use 'raw-text' for coding system instead
81784	of 'binary', in order to avoid spurious carriage return on Microsoft
81785	Windows and MS-DOS when prompting for a password.  (Bug#33040)
81786
817872018-10-27  Eli Zaretskii  <eliz@gnu.org>
81788
81789	Doc fix of 'gnus-fetch-old-headers'
81790
81791	* lisp/gnus/gnus-sum.el (gnus-fetch-old-headers): Avoid
81792	treating 'some' and 'invisible' as symbols that need to be
81793	hyperlinked.  Reported by Robert Pluim <rpluim@gmail.com>.
81794	(Bug#33090)
81795
817962018-10-27  Eric Abrahamsen  <eric@ericabrahamsen.net>
81797
81798	Deactivate incorrect hyperlinking in gnus-build-sparse-threads doc
81799
81800	* lisp/gnus/gnus-sum.el (gnus-build-sparse-threads): Add the word
81801	"symbol" so it doesn't link to the `some' function.  (Bug#33090)
81802
818032018-10-27  Eli Zaretskii  <eliz@gnu.org>
81804
81805	Minor copyedits in cmdargs.texi
81806
81807	* doc/emacs/cmdargs.texi (Initial Options): Document '-nsl'.
81808	Add a cross-reference to "Writing Dynamic Modules".
81809
818102018-10-27  Eli Zaretskii  <eliz@gnu.org>
81811
81812	Improve documentation of X resource loading
81813
81814	* doc/emacs/cmdargs.texi (Initial Options):
81815	* doc/emacs/frames.texi (Frame Parameters):
81816	* doc/emacs/xresources.texi (Resources): Document the
81817	'--no-x-resources' command-line option and the fact that X
81818	resources override .emacs settings of frame parameters.
81819	(Bug#32975)
81820
818212018-10-27  Michael Albinus  <michael.albinus@gmx.de>
81822
81823	* lisp/net/tramp-sh.el (tramp-inline-compress-commands):
81824
81825	Suppress warnings about obsolete environment variable GZIP.
81826
818272018-10-25  Noam Postavsky  <npostavs@gmail.com>
81828
81829	Don't error when indenting malformed Lisp (Bug#30891)
81830
81831	* lisp/emacs-lisp/lisp-mode.el (lisp-indent-calc-next): If we run out
81832	of indent stack, reset the parse state.
81833
818342018-10-25  Charles A. Roelli  <charles@aurox.ch>
81835
81836	Improve 'isearch-delete-char' documentation (Bug#32990)
81837
81838	* doc/emacs/search.texi (Basic Isearch): Index
81839	'isearch-delete-char', its keybinding and the isearch "input
81840	item" concept, and define the latter.
81841	(Error in Isearch): Clarify the different uses of DEL and
81842	C-M-w during isearch.
81843
81844	* lisp/isearch.el (isearch-delete-char): Correct its
81845	documentation and link to the Info node '(emacs)Basic Isearch'
81846	which explains less technically how this function works in
81847	everyday usage.
81848
818492018-10-25  Alan Third  <alan@idiocy.org>
81850
81851	Improve XPM load failure message (bug#33126)
81852
81853	* src/image.c (xpm_load_image): Only XPM3 is supported, so make that
81854	explicit.
81855
818562018-10-25  Eli Zaretskii  <eliz@gnu.org>
81857
81858	Avoid infloop in CPerl mode fontification
81859
81860	* lisp/progmodes/cperl-mode.el
81861	(cperl-font-lock-fontify-region-function): Stop the loop at
81862	EOB, to avoid inflooping there.  (Bug#33114)
81863
818642018-10-25  Andreas Schwab  <schwab@suse.de>
81865
81866	Fix minibuffer-help-form for lexical binding
81867
81868	* lisp/simple.el (set-variable): Substitute var into
81869	minibuffer-help-form.
81870	* lisp/cus-edit.el (custom-prompt-variable): Likewise.
81871
818722018-10-24  Alan Third  <alan@idiocy.org>
81873
81874	Fix some NS drawing issues (bug#32932)
81875
81876	* src/nsterm.m (ns_clip_to_rect):
81877	(ns_reset_clipping): Remove gsaved variable and associated code.
81878	(ns_flush_display): Remove function.
81879	(ns_copy_bits): use translateRectsNeedingDisplayInRect:by: to copy any
81880	pending drawing actions along with the image.
81881	([EmacsView windowWillResize:toSize:]): Remove unneeded call.
81882	([EmacsView drawRect:]): Remove redundant call to ns_clear_frame_area,
81883	and optimize the exposed rectangles.
81884	(ns_draw_window_cursor): Remove unneeded disabling of screen updates.
81885
818862018-10-24  Katsumi Yamaoka  <yamaoka@jpl.org>
81887
81888	* lisp/gnus/mm-util.el (mm-decompress-buffer): Fix split-string args.
81889
818902018-10-24  Noam Postavsky  <npostavs@gmail.com>
81891
81892	* doc/misc/calc.texi (Summary): The +/- key is 'p', not 'P'.
81893
818942018-10-23  Robert Pluim  <rpluim@gmail.com>
81895
81896	Correct typo in GNU ELPA url
81897
81898	* doc/misc/efaq.texi (Packages that do not come with Emacs):
81899	Correct typo in GNU ELPA url (Bug#33072).  Change other url
81900	references to use https scheme.
81901
819022018-10-22  Eli Zaretskii  <eliz@gnu.org>
81903
81904	* doc/misc/dired-x.texi (Omitting Variables): Fix wording. (Bug#33112)
81905
819062018-10-20  Michael Heerdegen  <michael_heerdegen@web.de>
81907
81908	Fix help-form binding in dired-create-files
81909
81910	This fixes Bug#32630: since "dired-aux" moved to lexical binding mode,
81911	the free variable TO in the constructed HELP-FORM got out of scope of
81912	the surrounding 'let'.
81913
81914	* lisp/dired-aux.el (dired-create-files): Make the binding of
81915	HELP-FORM a string.
81916
819172018-10-20  Eli Zaretskii  <eliz@gnu.org>
81918
81919	Fix a pasto in a Gnus doc string
81920
81921	* lisp/gnus/gnus-art.el (gnus-article-treat-fold-newsgroups):
81922	Doc string fix.  (Bug#33081)
81923
819242018-10-19  Mauro Aranda  <maurooaranda@gmail.com>  (tiny change)
81925
81926	Update revert-buffer documentation
81927
81928	* doc/emacs/files.texi (Reverting): Document that revert-buffer
81929	does keep undo history.  (Bug#33084)
81930
819312018-10-18  Juri Linkov  <juri@linkov.net>
81932
81933	* lisp/mail/smtpmail.el (smtpmail-send-queued-mail): Load file with .el suffix.
81934
81935	For the case when load-prefer-newer is t, ensure loading the right file
81936	by explicitly adding the .el suffix.  Use the same variable names
81937	as in the function smtpmail-send-it.  (Bug#33055)
81938
819392018-10-16  Glenn Morris  <rgm@gnu.org>
81940
81941	Tweak Makefile emacs-module.h handling
81942
81943	* Makefile.in (install-arch-indep, uninstall): Respect DESTDIR.
81944	Handle whitespace.  Remove non-portable mkdir argument.
81945
81946	(cherry picked from commit c1d0dbd6ca92cb221024382b19654e4fbf1d1ed3)
81947
819482018-10-16  Philipp Stephani  <phst@google.com>
81949
81950	Install emacs-module.h (Bug#31929)
81951
81952	* Makefile.in (includedir): New variable.
81953	(install-arch-indep): Install emacs-module.h.
81954	(uninstall): Uninstall emacs-module.h.
81955
81956	(cherry picked from commit 00ea749f2af44bff6ea8c1259477fbf0ead8a306)
81957
819582018-10-15  Alan Mackenzie  <acm@muc.de>
81959
81960	Clarify documentation of fractional vertical scrolling and some doc strings
81961
81962	* doc/lispref/windows.texi (vertical scrolling): Clarify the meaning of
81963	vertical scrolling by referring to tall screen lines, images, and the display
81964	action.  Clarify an ambiguous English tense.
81965
81966	* src/window.c (window-vscroll, set-window-vscroll): Amend doc strings to
81967	refer to display.
81968
819692018-10-15  Charles A. Roelli  <charles@aurox.ch>
81970
81971	* lisp/isearch.el (isearch-cmds): Recall absent isearch--state slot.
81972
819732018-10-14  Alan Mackenzie  <acm@muc.de>
81974
81975	doc/lispref/edebug.texi (Specification List) Remove obstrusive blank line
81976
819772018-10-14  Eli Zaretskii  <eliz@gnu.org>
81978
81979	Fix wording in module API documentation
81980
81981	* doc/lispref/internals.texi (Module Functions): Fix confusing
81982	wording.  Reported by Basil L. Contovounesios <contovob@tcd.ie>.
81983
819842018-10-13  Eli Zaretskii  <eliz@gnu.org>
81985
81986	Fix redisplay of glyphless characters
81987
81988	* src/conf_post.h (bool_bf): Use 'unsigned int' in the MinGW
81989	builds.  Suggested by Tom Tromey <tom@tromey.com>.  (Bug#33017)
81990	* src/dispnew.c (scrolling_window): Update commentary
81991	regarding xwidget builds.
81992
819932018-10-13  Robert Pluim  <rpluim@gmail.com>
81994
81995	Update --without-toolkit-scroll-bars doc
81996
81997	* configure.ac (--without-toolkit-scroll-bars): Update list of
81998	affected toolkits.
81999
820002018-10-13  Robert Pluim  <rpluim@gmail.com>
82001
82002	Call GTK functions only on GTK scrollbars
82003
82004	* src/gtkutil.c (xg_set_background_color) [USE_TOOLKIT_SCROLL_BARS]:
82005	Don't call GTK functions on non-GTK scrollbars (Bug#32975).
82006
820072018-10-13  Eli Zaretskii  <eliz@gnu.org>
82008
82009	Update the description of startup in ELisp manual
82010
82011	* doc/lispref/os.texi (Startup Summary): Remove stale
82012	reference to window-system-initialization-alist.  Reported by
82013	Zhang Haijun <ccsmile2008@outlook.com>.
82014
820152018-10-13  Eli Zaretskii  <eliz@gnu.org>
82016
82017	Use the 'line-number' face for line-number fields past EOB
82018
82019	* src/xdisp.c (get_phys_cursor_geometry): Treat rows at and
82020	beyond ZV specially.  Don't let the cursor exceed the
82021	vertical dimensions of the row.
82022	(maybe_produce_line_number): Use the 'line-number' face
82023	instead of 'default' for blank fields beyond ZV.  Don't update
82024	the IT metrics when displaying blank line-number fields beyond
82025	ZV.  (Bug#32337)
82026
820272018-10-12  Alan Third  <alan@idiocy.org>
82028
82029	Ensure NS frame is redrawn correctly  after scroll
82030
82031	* src/nsterm.m (ns_copy_bits): Set needsDisplay so the previous cursor
82032	position is redrawn.
82033
820342018-10-12  Alex Branham  <alex.branham@gmail.com>
82035
82036	Avoid byte-compiler warning in em-rebind.el
82037
82038	* lisp/eshell/em-rebind.el (eshell-delete-backward-char): Use
82039	'delete-char' instead of delete-backward-char.  (Bug#32945)
82040
820412018-10-12  Eli Zaretskii  <eliz@gnu.org>
82042
82043	Improve indexing of 'C-SPC C-SPC'
82044
82045	* doc/emacs/mark.texi (Disabled Transient Mark): Fix
82046	indexing.  (Bug#32959)
82047
820482018-10-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
82049
82050	Fix bug with precious entries in Gnus registry
82051
82052	* lisp/registry.el (registry-collect-prune-candidates): This `cdr' was
82053	  an error: it meant that the last key in the precious list, would be
82054	  considered a nil. Since the precious list only contains the symbol
82055	  'mark by default, marks were never considered precious.
82056	* doc/misc/gnus.texi (Store arbitrary data): Fix typo: "marks" should
82057	  be "mark".
82058
820592018-10-11  Eli Zaretskii  <eliz@gnu.org>
82060
82061	Document in the ELisp manual how to write loadable modules
82062
82063	* doc/lispref/internals.texi (Writing Dynamic Modules)
82064	(Module Initialization, Module Functions, Module Values)
82065	(Module Misc, Module Nonlocal): New nodes.
82066	* doc/lispref/loading.texi (Dynamic Modules): Add
82067	cross-reference to the new node.
82068	* doc/lispref/internals.texi (GNU Emacs Internals):
82069	* doc/lispref/elisp.texi (Top): Update menus for the new nodes.
82070
820712018-10-11  Tino Calancha  <tino.calancha@gmail.com>
82072
82073	dired-do-shell-command: Notify users after abort the command
82074
82075	* lisp/dired-aux.el (dired-do-shell-command):  Notify users that
82076	the command have aborted when they answer 'n' to the prompt (Bug#32969).
82077
820782018-10-11  Michael Albinus  <michael.albinus@gmx.de>
82079
82080	Adapt Tramp version.  Do not merge with master
82081
82082	* lisp/net/trampver.el: Change version to "2.3.5.26.2".
82083	(customize-package-emacs-version-alist): Add Tramp version
82084	integrated in Emacs 26.2.
82085
820862018-10-10  Alan Third  <alan@idiocy.org>
82087
82088	Fix Apple Script permissions error
82089
82090	* nextstep/templates/Info.plist.in: Add NSAppleEventsUsageDescription
82091	message to enable AppleEvents usage.
82092
820932018-10-10  Mauro Aranda  <maurooaranda@gmail.com>  (tiny change)
82094
82095	Fix typo in 'timerp' documentation
82096
82097	* doc/lispref/os.texi (Timers): Fix typo in 'timerp' documentation.
82098	(Bug#32999)
82099
821002018-10-08  Charles A. Roelli  <charles@aurox.ch>
82101
82102	* doc/emacs/mark.texi (Mark): Index "(de)activating the mark".
82103
82104	(Bug#32956)
82105
821062018-10-08  Scott Corley  <scott@scorley.com>  (tiny change)
82107
82108	Fix overflow lockup with frames > 255 lines
82109
82110	Backport from master.
82111	* src/scroll.c (struct matrix_elt): Change unsigned char fields to
82112	int to handle frames with more than 255 lines (Bug#32951).
82113
821142018-10-07  Eli Zaretskii  <eliz@gnu.org>
82115
82116	Avoid assertion violations in nonsensical calls to 'signal'
82117
82118	* src/eval.c (Fsignal): If both arguments are nil, replace the
82119	first one with 'error', to avoid assertion violations further
82120	down the line.  (Bug#32961)
82121
821222018-10-06  Charles A. Roelli  <charles@aurox.ch>
82123
82124	* lisp/simple.el (transient-mark-mode): Correct documentation.  (Bug#32956)
82125
821262018-10-06  Eli Zaretskii  <eliz@gnu.org>
82127
82128	Update the locale and language database
82129
82130	* lisp/international/mule-cmds.el (locale-language-names):
82131	Update the list of supported locales.  Use existing language
82132	names where available.
82133
821342018-10-05  Eli Zaretskii  <eliz@gnu.org>
82135
82136	Fix a typo in a doc string.
82137
82138	* lisp/window.el (display-buffer-alist): Fix a typo in a doc string.
82139	Reported by Michael Heerdegen <michael_heerdegen@web.de>.
82140
821412018-10-05  Katsumi Yamaoka  <yamaoka@jpl.org>
82142
82143	Make nneething allow CRLF-encoded files (bug#32940)
82144
82145	* lisp/gnus/nneething.el (nneething-request-article):
82146	Bind coding system to raw-text instead of binary when reading a file,
82147	that may be CRLF-encoded (bug#32940).
82148
821492018-10-04  Eric Abrahamsen  <eric@ericabrahamsen.net>
82150
82151	Further fix to eieio-persistent
82152
82153	* lisp/emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
82154	  Make handling of hash tables and vectors recursive. This is
82155	  necessary because the write process, in `eieio-override-prin1' is
82156	  also recursive. With any luck, this will be the last fix of its
82157	  kind. If that's true, cherry-pick to Emacs 26.2 later on.
82158
821592018-10-04  Eli Zaretskii  <eliz@gnu.org>
82160
82161	Avoid ridiculously high stack limit requests on macOS
82162
82163	* src/emacs.c (main): Avoid wraparound in subtraction of
82164	rlim_t values, in case rlim_t is an unsigned type.  (Bug#32338)
82165
821662018-10-03  Charles A. Roelli  <charles@aurox.ch>
82167
82168	Improve documentation of 'read-hide-char'
82169
82170	* src/minibuf.c (syms_of_minibuf) <Vread_hide_char>: Clarify
82171	documentation and mention where else the variable is used.
82172	* doc/lispref/minibuf.texi (Reading a Password): Add an index
82173	entry for 'read-hide-char'.
82174
821752018-10-03  Alan Mackenzie  <acm@muc.de>
82176
82177	In follow mode, prevent the cursor resting on a partially displayed line
82178
82179	Don't merge to master.  This fixes bug #32848
82180
82181	* lisp/follow.el (follow-adjust-window): If point ends up in a partially
82182	displayed line in a left hand or middle window, move it one line
82183	forward, to
82184	prevent unwanted scrolling should make-cursor-line-fully-visible be
82185	non-nil.
82186
821872018-10-03  Alan Mackenzie  <acm@muc.de>
82188
82189	Revert "Temporary workaround for bug #32848 for branch emacs-26"
82190
82191	This reverts commit 6650751ce73413d05599df07a9c5bc70744260f3.
82192
821932018-10-03  Alan Mackenzie  <acm@muc.de>
82194
82195	Revert "* etc/NEWS: Note setting make-cursor-line-fully-visible to nil in follow-mode"
82196
82197	This reverts commit f3c8f4bde2de2b9d42c44f5e44f34c427bebdc58.
82198
821992018-10-03  Alan Mackenzie  <acm@muc.de>
82200
82201	* etc/NEWS: Note setting make-cursor-line-fully-visible to nil in follow-mode
82202
82203	Also re-insert the "temporary note" explaining --- and +++.
82204
822052018-10-03  Noam Postavsky  <npostavs@gmail.com>
82206
82207	Fix note about interactive advice (Bug#32905)
82208
82209	* doc/lispref/functions.texi (Core Advising Primitives): Add missing
82210	':', and finish the sentence fragment.
82211
822122018-10-01  Michael Albinus  <michael.albinus@gmx.de>
82213
82214	Comple fix for Bug#32550
82215
82216	* lisp/net/tramp.el (tramp-rfn-eshadow-update-overlay):
82217	Use `save-excursion'.  This completes the fix of Bug#32550.
82218
822192018-10-01  Eli Zaretskii  <eliz@gnu.org>
82220
82221	* lisp/savehist.el (savehist-mode): Doc fix.  (Bug#32889)
82222
822232018-09-30  Nicolas Goaziou  <mail@nicolasgoaziou.fr>
82224
82225	Org manual: Rewrite the Org Mobile section
82226
82227	* doc/misc/org.texi (Org Mobile): Rewritten from "MobileOrg" section.
82228	Remove all references to non-free software.
82229	Moved into "Miscellaneous", much like Org Crypt library. No longer an
82230	appendix.
82231	(Footnotes): Remove a reference to "MobileOrg".
82232	(Bug#32722)
82233
822342018-09-30  Alan Mackenzie  <acm@muc.de>
82235
82236	Temporary workaround for bug #32848 for branch emacs-26
82237
82238	Do not merge with master.
82239
82240	* lisp/follow.el (follow-mode): Set make-cursor-line-fully-visible to nil
82241	buffer locally whilst follow-mode is active.
82242
822432018-09-29  Tino Calancha  <tino.calancha@gmail.com>
82244
82245	Improve cl-do, cl-do* docstrings
82246
82247	* lisp/emacs-lisp/cl-macs.el(cl-do, cl-do*):
82248	Improve docstring (Bug#32803).
82249
822502018-09-29  Eli Zaretskii  <eliz@gnu.org>
82251
82252	Avoid returning early in 'while-no-input' due to subprocesses
82253
82254	* src/keyboard.c (kbd_buffer_store_buffered_event): Support
82255	also the internal buffer-switch events.
82256	(syms_of_keyboard) <Qbuffer_switch>: New DEFSYM.
82257
82258	* lisp/subr.el (while-no-input-ignore-events): Ignore
82259	'buffer-switch' events.  Reported by Michael Heerdegen
82260	<michael_heerdegen@web.de>.
82261
82262	* etc/NEWS: Mention the change in behavior of 'while-no-input'
82263
822642018-09-29  John Shahid  <jvshahid@gmail.com>
82265
82266	Cleanup when opening a new terminal fails. (Bug#32794)
82267
82268	* src/term.c (init_tty): Call delete_terminal_internal if emacs_open
82269	fail.
82270	* src/terminal.c (delete_terminal): Move some code into
82271	delete_terminal_internal and call it.
82272	(delete_terminal_internal): New function.
82273	* src/termhooks.h: Prototype for delete_terminal_internal.
82274
822752018-09-28  Alan Third  <alan@idiocy.org>
82276
82277	Fix deprecation warning
82278
82279	* src/nsterm.m (ns_term_init): Use writeToFile or writeToURL as
82280	required.
82281
822822018-09-28  Alan Third  <alan@idiocy.org>
82283
82284	Make all NS drawing be done from drawRect
82285
82286	See bug#31904 and bug#32812.
82287
82288	* src/nsterm.m (ns_update_begin): Don't lock focus, only clip if there
82289	is already a view focused.
82290	(ns_update_end): Don't mess with view focusing any more.
82291	(ns_focus): Only clip drawing if there is already a focused view,
82292	otherwise mark area dirty for later drawing.  Renamed ns_clip_to_rect.
82293	All callers changed.
82294	(ns_unfocus): Don't unfocus the view any more.  Renamed
82295	ns_reset_clipping. All callers changed.
82296	(ns_clip_to_row): Update to match ns_clip_to_rect.
82297	(ns_clear_frame):
82298	(ns_clear_frame_area):
82299	(ns_draw_fringe_bitmap):
82300	(ns_draw_window_cursor):
82301	(ns_draw_vertical_window_border):
82302	(ns_draw_window_divider):
82303	(ns_dumpglyphs_stretch):
82304	(ns_draw_glyph_string): Only draw if ns_focus or ns_clip_to_row
82305	return YES.
82306	(ns_copy_bits): Remove superfluous calls to ns_(un)focus.
82307	(ns_flush_display): New function.
82308
823092018-09-28  Michael Albinus  <michael.albinus@gmx.de>
82310
82311	Fix Bug#32828
82312
82313	* lisp/net/dbus.el (dbus-init-bus): Return number of connections,
82314	as promised by the docstring.  (Bug#32828)
82315
823162018-09-28  Noam Postavsky  <npostavs@gmail.com>
82317
82318	* lisp/net/shr.el (shr-copy-url): Fix docstring.
82319
823202018-09-27  Eli Zaretskii  <eliz@gnu.org>
82321
82322	Fix typos in documentation
82323
82324	* doc/misc/vhdl-mode.texi (Custom Indentation Functions):
82325	* doc/misc/url.texi (Customization):
82326	* doc/misc/tramp.texi (Overview):
82327	* doc/misc/srecode.texi (Developing Template Functions):
82328	* doc/misc/sieve.texi (Sieve Mode):
82329	* doc/misc/reftex.texi (Options - Creating Citations):
82330	* doc/misc/org.texi (Cooperation, Conflicts):
82331	* doc/misc/gnus.texi (Misc Group Stuff):
82332	* doc/misc/eshell.texi (Bugs and ideas):
82333	* doc/misc/calc.texi (Summary):
82334	* doc/man/emacsclient.1:
82335	* doc/lispref/os.texi (Security Considerations):
82336	* doc/lispref/control.texi (pcase Macro):
82337	* CONTRIBUTE: Fix typos.  Reported by Mak Kolybabi
82338	<mak@kolybabi.com>  (Bug#32853)
82339
823402018-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
82341
82342	* doc/emacs/kmacro.texi (Basic Keyboard Macro): Mention old bindings
82343
82344	According to Apple gospel, function keys are partly going the way of the dodo
82345	so F3/F4 can, like in the good old days, be hard to reach for some users.
82346
823472018-09-24  Eli Zaretskii  <eliz@gnu.org>
82348
82349	Improve docs of functions/variables related to 'display-buffer'
82350
82351	* lisp/window.el (display-buffer, pop-to-buffer-same-window)
82352	(display-buffer-same-window, display-buffer-in-side-window)
82353	(same-window-p, display-buffer-overriding-action)
82354	(display-buffer-base-action)
82355	(display-buffer--same-window-action)
82356	(display-buffer--other-frame-action)
82357	(with-current-buffer-window, with-displayed-buffer-window)
82358	(display-buffer-alist, display-buffer-assq-regexp)
82359	(display-buffer-other-frame): Clarify and improve the doc
82360	strings.  (Bug#32798)
82361
823622018-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
82363
82364	* lisp/mouse.el (tear-off-window): Fix non-mouse use (bug#32799)
82365
823662018-09-22  Eli Zaretskii  <eliz@gnu.org>
82367
82368	Improve documentation of directory-local variables
82369
82370	* lisp/files.el (hack-local-variables, normal-mode)
82371	(after-find-file, find-file-hook): Mention directory-local
82372	variables in the doc strings.  Suggested by Marcin Borkowski
82373	<mbork@mbork.pl>.
82374
82375	* doc/emacs/custom.texi (File Variables, Directory Variables):
82376	Clarify that directory-local variables are overridden by
82377	file-local ones.
82378
823792018-09-22  Eli Zaretskii  <eliz@gnu.org>
82380
82381	Don't use obsolete variable 'save-place' in documentation
82382
82383	* doc/lispref/customize.texi (Variable Definitions): Replace
82384	example of saveplace defcustom with a fictitious one, which
82385	will not bit-rot with time.  (Bug#32741)
82386
823872018-09-22  Mark A. Hershberger  <mah@everybody.org>
82388
82389	Use save-place-mode instead of save-place
82390
82391	* lisp/menu-bar.el (menu-bar-options-save, menu-bar-options-menu):
82392	* lisp/saveplace.el (save-place-to-alist, save-places-to-alist)
82393	(save-place-find-file-hook, save-place-dired-hook): Use
82394	save-place-mode instead of the obsolete save-place.
82395
823962018-09-20  Eli Zaretskii  <eliz@gnu.org>
82397
82398	More accurate docs for 'text-char-description'
82399
82400	* src/keymap.c (Ftext_char_description):
82401	* doc/lispref/help.texi (Describing Characters): More accurate
82402	description of 'text-char-description'.  Remove incorrect
82403	examples from the ELisp manual.  (Bug#32743)
82404
824052018-09-20  Noam Postavsky  <npostavs@gmail.com>
82406
82407	Document synchronous behavior of eshell/make (Bug#32513)
82408
82409	* doc/misc/eshell.texi (Built-ins):
82410	* lisp/eshell/em-unix.el (eshell/make): Mention that it falls back to
82411	the external 'make' command when called synchronously.
82412
824132018-09-20  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
82414
82415	Fix bs-show with wide characters (Bug#17822)
82416
82417	* lisp/bs.el (bs--insert-one-entry, bs-show-in-buffer): Use
82418	string-width instead of length.
82419
824202018-09-19  Eli Zaretskii  <eliz@gnu.org>
82421
82422	Improve Custom menu labels for 2 options
82423
82424	* lisp/dired.el (dired-use-ls-dired):
82425	* lisp/progmodes/xref.el (xref-prompt-for-identifier): Improve
82426	the doc string and the defcustom menu/tags text.  (Bug#32756)
82427
824282018-09-19  Eli Zaretskii  <eliz@gnu.org>
82429
82430	Improve wording of last change in dired-x.texi
82431
82432	* doc/misc/dired-x.texi (Shell Command Guessing): Clarify
82433	wording in description of 'dired-guess-shell-alist-user'.
82434	Avoid passive tense.  (Bug#32733)
82435
824362018-09-18  Eli Zaretskii  <eliz@gnu.org>
82437
82438	Fix GnuTLS test suite with GnuTLS versions 3.4.x
82439
82440	* src/gnutls.c (gnutls_cipher_get_tag_size): Make it return
82441	zero only for versions of GnuTLS < 3.2.2, where
82442	gnutls_cipher_get_tag_size was introduced.  This fixes the
82443	GnuTLS test suite, which assumes that any cipher whose tag
82444	size is non-zero is AEAD-capable, and doesn't test such ciphers
82445	if AEAD is not available, i.e. for GnuTLS < 3.5.1.  (Bug#32446)
82446
824472018-09-17  Noam Postavsky  <npostavs@gmail.com>
82448
82449	Fix build with gnutls versions 3.0 to 3.2 (Bug#32446)
82450
82451	We previously used functions available only in 3.2+ for all 3.x
82452	versions.
82453	* src/gnutls.c [GNUTLS_VERSION_NUMBER < 0x030501]: Replace calls to
82454	gnutls_cipher_get_tag_size with 0.
82455	[GNUTLS_VERSION_NUMBER < 0x030200]: Alias gnutls_cipher_get_iv_size
82456	to gnutls_cipher_get_block_size, gnutls_digest_list to
82457	gnutls_mac_list, and gnutls_digest_get_name to gnutls_mac_get_name.
82458	[WINDOWSNT]: Adjust DLL function definitions and declarations
82459	accordingly.
82460
824612018-09-17  Eli Zaretskii  <eliz@gnu.org>
82462
82463	Fix the Bubbles game on TTY frames
82464
82465	* lisp/play/bubbles.el (bubbles--col-offset)
82466	(bubbles--row-offset): Doc fixes.
82467	(bubbles--compute-offsets): Conflate the GUI and TTY code into
82468	a single common version.  Set the offsets to simple numbers,
82469	not to lists.
82470	(bubbles--initialize, bubbles--show-scores): Wrap offset
82471	values in a list, so that they are interpreted as pixel
82472	values, not as units of character width.  This fixes the game
82473	on TTY frames.  (Bug#32744)
82474
824752018-09-17  Allen Li  <darkfeline@felesatra.moe>
82476
82477	Add choice to reshow certificate information (Bug#31877)
82478
82479	In various situations, the window displaying the certificate
82480	information can be hidden (such as if the user accidentally presses ?,
82481	which causes the read-multiple-choice help window to replace it).
82482	Instead of leaving the user to make a choice blindly, add a choice to
82483	reshow the certification information.
82484
82485	* lisp/net/nsm.el (nsm-query-user): Add reshow choice.
82486
824872018-09-16  Glenn Morris  <rgm@gnu.org>
82488
82489	* src/alloc.c (Fbool_vector, Flist, Fvector): Doc tweak.
82490
82491	Use a simpler, consistent form.
82492
824932018-09-15  Alan Mackenzie  <acm@muc.de>
82494
82495	* src/alloc.c (vector): Fix grammatical error in doc string: "are" -> "is".
82496
824972018-09-15  Eli Zaretskii  <eliz@gnu.org>
82498
82499	Avoid adverse side effects of fixing bug#21824
82500
82501	* test/src/buffer-tests.el
82502	(overlay-modification-hooks-deleted-overlay): New test.
82503
82504	* src/buffer.c (report_overlay_modification): Don't bypass all
82505	the overlay-modification hooks; instead, invoke each function
82506	only if the buffer associated with the overlay is the current
82507	buffer.  (Bug#30823)
82508
825092018-09-15  Eli Zaretskii  <eliz@gnu.org>
82510
82511	Document changes called out in NEWS
82512
82513	* doc/lispref/lists.texi (Association Lists): Document
82514	'assoc-delete-all'.
82515	* doc/lispref/minibuf.texi (Minibuffers): Adapt menu.
82516	(Multiple Queries): Document 'read-answer'.
82517
82518	* etc/NEWS: Reflect the above documentation in the respective
82519	entries.
82520
825212018-09-14  Glenn Morris  <rgm@gnu.org>
82522
82523	Tiny doc updates re yum/dnf etc
82524
82525	* INSTALL: Mention dnf and Debian unversioned emacs package.
82526	* doc/misc/efaq.texi (Installing Emacs): Mention dnf.
82527
825282018-09-14  Leo Liu  <sdl.web@gmail.com>
82529
82530	Remove unused variable
82531
82532	* lisp/progmodes/prolog.el (prolog-hungry-delete-key-flag): Remove.
82533
825342018-09-14  Leo Liu  <sdl.web@gmail.com>
82535
82536	Fix (thing-at-point 'list) regression (Bug#31772)
82537
82538	* lisp/thingatpt.el (thing-at-point-bounds-of-list-at-point): Revert
82539	  to pre 26.1 behavior.  Return whole sexp at point if no enclosing
82540	  list.
82541	  (list-at-point): New optional arg to ignore comments and strings.
82542
82543	* test/lisp/thingatpt-tests.el
82544	  (thing-at-point-bounds-of-list-at-point): Fix and augment tests.
82545
825462018-09-14  Robert Pluim  <rpluim@gmail.com>
82547
82548	Clarify meaning of '*'
82549
82550	* doc/misc/dired-x.texi (Shell Command Guessing): Clarify meaning
82551	of '*'. (Bug#32733)
82552
825532018-09-12  Paul Eggert  <eggert@cs.ucla.edu>
82554
82555	* etc/PROBLEMS: Document Ubuntu 16.04 issue.
82556
825572018-09-12  Alex Branham  <alex.branham@gmail.com>  (tiny change)
82558
82559	Increase default value for imenu-auto-rescan-maxout
82560
82561	* lisp/imenu.el (imenu-auto-rescan-maxout): Increase default value to
82562	  600000.  (Bug#18426)
82563	* doc/emacs/programs.texi (imenu-auto-rescan-maxout): Add
82564	  documentation for imenu-auto-rescan-maxout.
82565
825662018-09-11  Eli Zaretskii  <eliz@gnu.org>
82567
82568	Improve recent change to ELisp manual
82569
82570	* doc/lispref/commands.texi (Keyboard Events): Add index entry
82571	for "character event".  (Bug#32562)
82572
825732018-09-11  Eli Zaretskii  <eliz@gnu.org>
82574
82575	* doc/lispref/display.texi (SVG Images): Improve wording.
82576
82577	* doc/lispref/display.texi (SVG Images): Fix a typo.  (Bug#32690)
82578
825792018-09-10  Eli Zaretskii  <eliz@gnu.org>
82580
82581	Clarify completion text in the ELisp manual
82582
82583	* doc/lispref/minibuf.texi (Programmed Completion): Clarify
82584	text.  Suggested by Stefan Monnier <monnier@iro.umontreal.ca>.
82585
825862018-09-10  Eli Zaretskii  <eliz@gnu.org>
82587
82588	Fix handling of abbreviated control command in gdb-mi.el
82589
82590	* lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp):
82591	Support unambiguous abbreviations of commands.  (Bug#32576)
82592
825932018-09-10  Eli Zaretskii  <eliz@gnu.org>
82594
82595	Clarify documentation of functions reading character events
82596
82597	* doc/lispref/help.texi (Describing Characters):
82598	* doc/lispref/commands.texi (Keyboard Events)
82599	(Reading One Event, Classifying Events): Make the distinction
82600	between characters and character events more explicit.
82601
82602	* src/keymap.c (Ftext_char_description)
82603	(Fsingle_key_description):
82604	* src/lread.c (Fread_char, Fread_char_exclusive): Doc fixes,
82605	to make a clear distinction between a character input event
82606	and a character code.  (Bug#32562)
82607
826082018-09-07  Eli Zaretskii  <eliz@gnu.org>
82609
82610	Record :version for built-in variables while dumping
82611
82612	* lisp/cus-start.el (standard): Record the ':version; of the
82613	symbols when dumping, so that 'describe-variable' could tell
82614	which built-in variables were added/changed in recent
82615	versions.
82616
826172018-09-07  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
82618
82619	* src/process.c (connect_network_socket): Fix memory leak.  (Bug#32604)
82620
826212018-09-05  Glenn Morris  <rgm@gnu.org>
82622
82623	* Makefile.in (appdatadir): Use the non-obsolete location "metainfo".
82624
826252018-09-04  Stefan Monnier  <monnier@iro.umontreal.ca>
82626
82627	Better fix for bug#32550
82628
82629	* lisp/rfn-eshadow.el (rfn-eshadow-overlay): Give it a global default.
82630
82631	* lisp/net/tramp.el (rfn-eshadow-overlay): Declare it as dynamically scoped.
82632	(tramp-rfn-eshadow-update-overlay): Revert the corresponding part of
82633	last change.
82634
826352018-09-04  Michael Albinus  <michael.albinus@gmx.de>
82636
82637	Fix Bug#32550
82638
82639	* lisp/net/tramp.el (tramp-rfn-eshadow-setup-minibuffer): Do not
82640	use `symbol-value'.
82641	(tramp-rfn-eshadow-update-overlay): Do not use `symbol-value'.  Do
82642	not let-bind `rfn-eshadow-overlay', assign it directly (due to
82643	lexical binding).  (Bug#32550)
82644
826452018-09-04  Martin Rudalics  <rudalics@gmx.at>
82646
82647	Don't call XGetGeometry for frames without outer X window (Bug#32615)
82648
82649	* src/xfns.c (frame_geometry): Don't call XGetGeometry when
82650	FRAME has no outer X window; return nil instead.  (Bug#32615)
82651
826522018-09-03  Paul Eggert  <eggert@cs.ucla.edu>
82653
82654	* lisp/calculator.el: Fix doc typo.
82655
826562018-09-03  Glenn Morris  <rgm@gnu.org>
82657
82658	Standardize calc bug reporting instructions
82659
82660	* doc/misc/calc.texi (Reporting Bugs): Use standard commands.
82661	* lisp/calc/calc-misc.el (report-calc-bug, calc-report-bug):
82662	* lisp/calc/calc.el (calc-bug-address): Change to be
82663	obsolete aliases for standard Emacs bug reporting items.
82664
826652018-08-31  Michael Albinus  <michael.albinus@gmx.de>
82666
82667	Rename thread-alive-p to thread-live-p
82668
82669	* doc/lispref/threads.texi (Basic Thread Functions): Use thread-live-p.
82670
82671	* etc/NEWS: 'thread-alive-p' has been renamed to 'thread-live-p'.
82672
82673	* src/thread.c (thread_live_p): Rename from thread_alive_p.  Adapt
82674	all callees.
82675	(Fthread_live_p): Rename from Fthread_alive_p.
82676	(syms_of_threads): Make thread-alive-p an alias of thread-live-p.
82677
82678	* test/src/thread-tests.el (all): Replace `thread-alive-p' by
82679	`thread-live-p'.
82680	(threads-live): Rename from `threads-alive'.
82681
826822018-08-30  Miciah Masters  <miciah.masters@gmail.com>  (tiny change)
82683
82684	rcirc: Document /reconnect as a built-in command (Bug#29656)
82685
82686	The change "New command rcirc-cmd-reconnect" from 2014-04-09 (shipped
82687	in Emacs 25.1) added a /reconnect command to rcirc but did not
82688	document it and did not delete the example /reconnect command
82689	definition in the manual.
82690	* doc/misc/rcirc.texi (rcirc commands): Document the built-in /reconnect
82691	command.
82692	(Hacking and Tweaking): Delete example reconnect command.
82693
826942018-08-30  Noam Postavsky  <npostavs@gmail.com>
82695
82696	* test/lisp/calc/calc-tests.el (calc-imaginary-i): New test.
82697
826982018-08-28  Glenn Morris  <rgm@gnu.org>
82699
82700	admin.el: respect environment settings for makeinfo etc
82701
82702	* admin/admin.el (manual-makeinfo, manual-texi2pdf, manual-texi2dvi):
82703	New variables.
82704	(manual-html-mono, manual-html-node, manual-pdf, manual-ps): Use them.
82705
827062018-08-28  Glenn Morris  <rgm@gnu.org>
82707
82708	* etc/PROBLEMS: New entry about GTK+ 3 crash with some X servers.
82709
827102018-08-28  Noam Postavsky  <npostavs@gmail.com>
82711
82712	Index profiler commands in elisp manual
82713
82714	* doc/lispref/debugging.texi (Profiling): Add index entries for
82715	profiler-start, profiler-report, profiler-stop.
82716
827172018-08-28  Noam Postavsky  <npostavs@gmail.com>
82718
82719	Fix math-imaginary-i check
82720
82721	Reported by Bastian Erdnüß at
82722	<https://lists.gnu.org/archive/html/emacs-devel/2018-08/msg00300.html>.
82723	* lisp/calc/calc-cplx.el (math-imaginary-i): Check for a value
82724	of (polar 1 <quarter-circle>).
82725
827262018-08-28  Eli Zaretskii  <eliz@gnu.org>
82727
82728	Avoid infinite hscrolling loops when line numbers are displayed
82729
82730	* src/xdisp.c (maybe_produce_line_number): Don't produce line
82731	numbers if we don't have enough screen estate.  (Bug#32351)
82732
827332018-08-28  Eli Zaretskii  <eliz@gnu.org>
82734
82735	Avoid crashes in malformed defvar
82736
82737	* src/eval.c (Fdefvar): Don't call XSYMBOL on something that
82738	might not be a symbol.  This avoids crashes due to malformed
82739	'defvar' forms.  (Bug#32552)
82740
827412018-08-28  Glenn Morris  <rgm@gnu.org>
82742
82743	* configure.ac (emacs_config_features): Add GLIB, XDBE, XIM.
82744
82745	* configure.ac: Doc fixes related to --with-xim.
82746
827472018-08-28  Glenn Morris  <rgm@gnu.org>
82748
82749	Small checkdoc quoting fix (bug#32546)
82750
82751	* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
82752	Fix quoting thinko.
82753
827542018-08-26  Sergey Vinokurov  <serg.foo@gmail.com>
82755
82756	Fix detection of freed emacs_values (Bug#32479)
82757
82758	* src/emacs-module.c (module_free_global_ref): Compare a value to be
82759	freed with all entries of the list.
82760
82761	* test/data/emacs-module/mod-test.c (Fmod_test_globref_free): New
82762	function.
82763	(emacs_module_init): Make it accessible from Lisp.
82764	* test/src/emacs-module-tests.el (mod-test-globref-free-test): New
82765	test which uses it.
82766
827672018-08-25  Eli Zaretskii  <eliz@gnu.org>
82768
82769	Avoid crashes with very wide TTY frames on MS-Windows
82770
82771	* src/w32console.c <glyph_base>: Reduce the number of elements
82772	to 80.
82773	<glyphs, glyphs_len>: New static variables.
82774	(w32con_clear_end_of_line): If the line is wider than the
82775	current size of the "empty row" in 'glyphs', reallocate
82776	'glyphs' to support the full width of the frame.  This
82777	avoids segfaults when the frame is wider than 256 columns.
82778	(Bug#32445)
82779
827802018-08-25  Wenjamin Petrenko  <wenjamin.petrenko@yandex.ru>  (tiny change)
82781
82782	Prevent `modify-file-local-variable-prop-line' from adding extra ';'
82783
82784	* lisp/files-x.el (modify-file-local-variable-prop-line): Handle
82785	whitespace when checking if there's already a ';' before the
82786	variable (Bug#23294).
82787
827882018-08-24  Glenn Morris  <rgm@gnu.org>
82789
82790	Update GNOME bugtracker URLs
82791
82792	* configure.ac, admin/notes/multi-tty, etc/PROBLEMS:
82793	* src/emacs.c (main):
82794	* src/xterm.c (x_connection_closed): Update GNOME bugtracker URLs.
82795
827962018-08-23  Eli Zaretskii  <eliz@gnu.org>
82797
82798	Clarify in the Emacs manual that ChangeLog files are not used
82799
82800	* doc/emacs/trouble.texi (Sending Patches): Use "commit log"
82801	instead of "change log", to avoid the interpretation that we
82802	are talking about literal ChangeLog files.  (Bug#32359)
82803
828042018-08-21  Eli Zaretskii  <eliz@gnu.org>
82805
82806	Recognize codepage 65001 as a valid encoding
82807
82808	* lisp/international/mule-conf.el (cp65001): Define it as an
82809	alias for UTF-8.
82810
828112018-08-18  Eli Zaretskii  <eliz@gnu.org>
82812
82813	Avoid compilation warning in nt/addpm.c
82814
82815	* nt/addpm.c [!MINGW_W64]: Undefine _WIN32_IE before
82816	redefining it, to avoid compilation warnings.
82817
828182018-08-17  Basil L. Contovounesios  <contovob@tcd.ie>
82819
82820	Fix duplicate custom group names in bibtex.el
82821
82822	* lisp/textmodes/bibtex.el (bibtex-BibTeX-entry-alist):
82823	Change :group from BibTeX to bibtex.  (bug#32436)
82824
828252018-08-17  Eli Zaretskii  <eliz@gnu.org>
82826
82827	Fix outdated text in the Calc manual
82828
82829	* doc/misc/calc.texi (Internals): Don't advertise
82830	'calc-extensions' which no longer exists.  Reported by Francis
82831	Wright <francis.j.wright@gmail.com>.
82832
828332018-08-13  Paul Eggert  <eggert@cs.ucla.edu>
82834
82835	Port better to x86 -fexcess-precision=fast
82836
82837	Problem reported by Eli Zaretskii in:
82838	https://lists.gnu.org/r/emacs-devel/2018-08/msg00380.html
82839	* src/data.c (arithcompare): Work around incompatibility
82840	between gcc -fexcess-precision=fast and the C standard on x86,
82841	by capturing the results of floating-point comparisons before
82842	the excess precision spontaneously decays.  Although this fix
82843	might not work in general, it does work here and is probably
82844	good enough for the platforms we care about.
82845
82846	(cherry picked from commit a84cef90957f2379cc0df6bd908317fc441971ce)
82847
828482018-08-13  Paul Eggert  <eggert@cs.ucla.edu>
82849
82850	Add comment about floating point test
82851
82852	* test/src/data-tests.el (data-tests--float-greater-than-fixnums):
82853	New constant.
82854	(data-tests-=, data-tests-<, data-tests->, data-tests-<=)
82855	(data-tests->=, data-tests-min): Use it.
82856
828572018-08-13  Tino Calancha  <tino.calancha@gmail.com>
82858
82859	Ibuffer: Add toggle ibuffer-do-toggle-lock
82860
82861	Toggle the locked status in marked buffers or the buffer
82862	at point (Bug#32421).
82863	* lisp/ibuffer.el (ibuffer-do-toggle-lock): New command.
82864	(ibuffer-mode-map): Bind it to 'L'.
82865	(ibuffer-mode-operate-map): Add entries for
82866	`ibuffer-do-toggle-read-only' and `ibuffer-do-toggle-lock'.
82867	* etc/NEWS (Changes in Specialized Modes and Packages in Emacs 26.2):
82868	Announce the change.
82869
828702018-08-13  Tino Calancha  <tino.calancha@gmail.com>
82871
82872	Ibuffer: Detect correctly the buffers running a process
82873
82874	* lisp/ibuffer.el (filename-and-process): Store the process buffer
82875	as a text property; check for such property to detect a buffer
82876	with a process (Bug#32420).
82877
828782018-08-12  Michael Albinus  <michael.albinus@gmx.de>
82879
82880	Backport fix for Bug#32226
82881
82882	* test/lisp/shadowfile-tests.el: Set Tramp variables for hydra.
82883	(shadow-test06-literal-groups, shadow-test07-regexp-groups)
82884	(shadow-test08-shadow-todo, shadow-test09-shadow-copy-files):
82885	Use `set-visited-file-name' instead of setting the value in
82886	`buffer-file-name' directly.
82887	(shadow-test08-shadow-todo, shadow-test09-shadow-copy-files):
82888	Test for writable temporary directory.  Suppress errors in
82889	cleanup.  (Bug#32226)
82890
828912018-08-12  Yuri D'Elia  <wavexx@thregr.org>
82892
82893	Do not consider external packages to be removable (Bug#27822)
82894
82895	Packages which are not directly user-installed shouldn't be autoremoved,
82896	since they can be setup through a different path (via
82897	`package-directory-list') where we have no authority over.
82898	* lisp/emacs-lisp/package.el (package--user-installed-p): New
82899	function.
82900	(package--removable-packages): Use it.
82901
829022018-08-11  Paul Eggert  <eggert@cs.ucla.edu>
82903
82904	* src/alloc.c: Remove obsolete comments.
82905
829062018-08-11  Eli Zaretskii  <eliz@gnu.org>
82907
82908	Better support utf-8-with-signature and utf-8-hfs in HTML
82909
82910	* lisp/international/mule.el (sgml-html-meta-auto-coding-function):
82911	Support UTF-8 with BOM and utf-8-hfs as variants of UTF-8, and
82912	obey the buffer's encoding if it is one of these variants, instead
82913	of re-encoding in UTF-8 proper.  (Bug#20623)
82914
829152018-08-11  Eli Zaretskii  <eliz@gnu.org>
82916
82917	Don't use -Wabi compiler option
82918
82919	* configure.ac: Add -Wabi to the list of disabled warning
82920	options.  For the details, see
82921	http://lists.gnu.org/archive/html/emacs-devel/2018-08/msg00123.html.
82922
829232018-08-10  Filipp Gunbin  <fgunbin@fastmail.fm>
82924
82925	Fix bugs in `auth-source-netrc-parse-one'.
82926
82927	* lisp/auth-source.el (auth-source-netrc-parse-one): Ensure that match
82928	  data is not overwritten in `auth-source-netrc-parse-next-interesting'.
82929	  Ensure that blanks are skipped before and after going over comments
82930	  and eols.
82931	* test/lisp/auth-source-tests.el (auth-source-test-netrc-parse-one): New test.
82932
82933	(cherry picked from commit 60ff8101449eea3a5ca4961299501efd83d011bd)
82934
829352018-08-09  Eli Zaretskii  <eliz@gnu.org>
82936
82937	Fix copying text properties by 'format'
82938
82939	* src/editfns.c (styled_format): Add the spec beginning index
82940	to the info recorded for each format spec, and use it to
82941	detect the case that a format spec and its text property end
82942	where the next spec with another property begins.  (Bug#32404)
82943
82944	* test/src/editfns-tests.el (format-properties): Add tests for
82945	bug#32404.
82946
829472018-08-09  Alexander Gramiak  <agrambot@gmail.com>
82948
82949	Improve error messages regarding initial-buffer-choice (Bug#29098)
82950
82951	* lisp/startup.el (command-line-1) <initial-buffer-choice>: Make the
82952	messages conform to Emacs conventions, and show the invalid return
82953	value in the message.
82954
829552018-08-09  Glenn Morris  <rgm@gnu.org>
82956
82957	* test/lisp/wdired-tests.el (wdired-test-unfinished-edit-01): Fix typo.
82958
829592018-08-09  Lars Ingebrigtsen  <larsi@gnus.org>
82960
82961	Make async :family 'local failures fail correctly again
82962
82963	* src/fileio.c (get_file_errno_data): Refactor out into its own
82964	function so that we can reuse the error handling from an async
82965	context (bug#31901).
82966
82967	* src/process.c (connect_network_socket): When an async :family
82968	'local client fails (with a file error, for instance), mark the
82969	process as failed.
82970
82971	(cherry picked from commit 92ba34d89ac4f5b5bbb818e1c39a3cc12a405790)
82972
829732018-08-09  Noam Postavsky  <npostavs@gmail.com>
82974
82975	Fix emacsclient check for term.el buffer (Bug#21041)
82976
82977	* lib-src/emacsclient.c (find_tty): Check for any TERM value with
82978	prefix of "eterm", not just "eterm" itself.  Also check for ",term:"
82979	in INSIDE_EMACS value.
82980
829812018-08-08  Eli Zaretskii  <eliz@gnu.org>
82982
82983	Improve documentation of 'set-fontset-font'
82984
82985	* doc/lispref/display.texi (Fontsets): Fix description of
82986	'set-fontset-font'.
82987	* src/fontset.c (Fset_fontset_font): Doc fix.  (Bug#32401)
82988
829892018-08-07  Eli Zaretskii  <eliz@gnu.org>
82990
82991	Improve documentation of M-?
82992
82993	* doc/emacs/maintaining.texi (Identifier Search):
82994	* lisp/progmodes/xref.el (xref-find-references): Improve
82995	documentation of xref-find-references and
82996	xref-prompt-for-identifier.  (Bug#32389)
82997
829982018-08-07  Ivan Shmakov  <ivan@siamics.net>
82999
83000	Reinterpret Esperanto characters in iso-transl as iso-8859-3.
83001
83002	* lisp/international/iso-transl.el (iso-transl-language-alist):
83003	Reinterpret Esperanto characters as iso-8859-3 (were: iso-8859-1).
83004	(Bug#32371)
83005
830062018-08-07  Eli Zaretskii  <eliz@gnu.org>
83007
83008	Fix Flyspell mode when several languages are mixed in a buffer
83009
83010	* lisp/textmodes/flyspell.el (flyspell-external-point-words):
83011	Handle "misspelled" words that actually belong to a language
83012	unsupported by the current dictionary.  (Bug#32280)  Fix the test
83013	for Ispell the program.
83014
830152018-08-04  Juri Linkov  <juri@linkov.net>
83016
83017	New function read-answer (Bug#31782)
83018
83019	* lisp/emacs-lisp/map-ynp.el (read-answer-short): New defcustom.
83020	(read-answer): New function.
83021	* lisp/subr.el (assoc-delete-all): New function.
83022	* etc/NEWS: Announce them.
83023
83024	* lisp/dired.el (dired-delete-file): Use read-answer.
83025	(dired--yes-no-all-quit-help): Remove function.
83026	(dired-delete-help): Remove defconst.
83027
83028	(backported from master, "New function read-answer (bug#30073)" and
83029	"Respect non-saved value of `read-short-answer' (Bug#31782)")
83030
830312018-08-02  Eli Zaretskii  <eliz@gnu.org>
83032
83033	Avoid assertion violations in maybe_produce_line_number
83034
83035	* src/xdisp.c (redisplay_window): Make sure desired_matrix is
83036	cleared before calling try_window.  This is important when
83037	display-line-numbers is non-nil, because line-number display code
83038	assumes each glyph row is completely cleared when it is called to
83039	produce a line number.  (Bug#32358)
83040
830412018-08-02  Eli Zaretskii  <eliz@gnu.org>
83042
83043	Avoid assertion violations in set_text_properties_1
83044
83045	* src/textprop.c (set_text_properties): If the call to
83046	modify_text_properties modifies the interval tree as side effect,
83047	recalculate the correct interval for START and END.  (Bug#32265)
83048
830492018-07-31  Stephen Berman  <stephen.berman@gmx.net>
83050
83051	Fix wdired test failure when byte compiled (bug#32318)
83052
83053	* test/lisp/wdired-tests.el: Require wdired.  Defvar dired-query
83054	to silence byte-compiler.
83055
830562018-07-30  Stephen Berman  <stephen.berman@gmx.net>
83057
83058	* test/lisp/wdired-tests.el (wdired-test-symlink-name): New test.
83059
830602018-07-29  Raimon Grau  <raimonster@gmail.com>
83061
83062	Fix url's thing-at-point beginning-op (Bug#32028)
83063
83064	* lisp/thingatpt.el (url): Fix beginning-op making.
83065
830662018-07-29  Eli Zaretskii  <eliz@gnu.org>
83067
83068	Fix last change in 'char_width'
83069
83070	* src/character.c (char_width): Make sure variable C is always
83071	initialized.  (Bug#32276)
83072
830732018-07-29  Stephen Berman  <stephen.berman@gmx.net>
83074
83075	Add initial tests for wdired.el
83076
83077	* test/lisp/wdired-tests.el: New file.
83078
830792018-07-28  Stephen Berman  <stephen.berman@gmx.net>
83080
83081	Fix use of non-nil wdired-use-interactive-rename
83082
83083	This is a fairly minimal fix for the release branch; a more
83084	comprehensive fix is on master, so do not merge this to master.
83085
83086	* lisp/wdired.el (wdired-search-and-rename): Remove dired-filename
83087	text property in order to find new filename when it only partially
83088	replaces old filename (bug#32173).  If user quits before renaming
83089	succeeds, restore the dired-filename text property.
83090
830912018-07-28  Eli Zaretskii  <eliz@gnu.org>
83092
83093	Fix compilation with mingw.org's MinGW 5.x headers
83094
830952018-07-28  Eli Zaretskii  <eliz@gnu.org>
83096
83097	Update the list of special forms in the ELisp manual
83098
83099	* doc/lispref/eval.texi (Special Forms):
83100	* doc/lispref/frames.texi (Mouse Tracking): 'track-mouse' is
83101	nowadays a macro.  (Bug#32284)
83102
831032018-07-28  Noam Postavsky  <npostavs@gmail.com>
83104
83105	Don't fail to indent-sexp before a full sexp (Bug#31984)
83106
83107	* lisp/emacs-lisp/lisp-mode.el (indent-sexp): Only signal error if the
83108	initial forward-sexp fails.  Suppress scan-error forn any of the
83109	forward-sexp calls after that.
83110	* test/lisp/emacs-lisp/lisp-mode-tests.el (indent-sexp-cant-go): New
83111	test.
83112
831132018-07-27  Eli Zaretskii  <eliz@gnu.org>
83114
83115	Fix calls to modifications hooks in replace-buffer-contents
83116
83117	* src/editfns.c (Freplace_buffer_contents): Call the modification
83118	hooks on the entire region where replacements could have taken
83119	place.  The previous attempts of being more accurate just
83120	introduced bugs.  (Bug#32278)
83121
831222018-07-27  Eli Zaretskii  <eliz@gnu.org>
83123
83124	* src/character.c (char_width): Support glyphs with faces.  (Bug#32276)
83125
831262018-07-27  Eli Zaretskii  <eliz@gnu.org>
83127
83128	Display raw bytes as belonging to 'eight-bit' charset
83129
83130	* lisp/descr-text.el (describe-char):
83131	* lisp/simple.el (what-cursor-position): Display characters in the
83132	range #x3FFF80..#x3FFF9F as belonging to charset 'eight-bit', not
83133	'tis620-2533'.
83134	* lisp/international/mule-diag.el (describe-character-set):
83135	Improve description of :supplementary-p.
83136
831372018-07-26  Eli Zaretskii  <eliz@gnu.org>
83138
83139	Fix inaccurate text in the user manual
83140
83141	* doc/emacs/mule.texi (International Chars): Correct inaccurate
83142	description of raw bytes display by "C-x =".
83143
831442018-07-26  Michael Albinus  <michael.albinus@gmx.de>
83145
83146	Copyedits in tramp.texi, improved example with bash's readline
83147
83148	* doc/misc/tramp.texi (all): Unify some wordings.
83149	(Frequently Asked Questions): Update example with bash's readline.
83150
831512018-07-25  Michael Albinus  <michael.albinus@gmx.de>
83152
83153	Minor Tramp doc update
83154
83155	* doc/misc/tramp.texi (Frequently Asked Questions): Disable bash's
83156	INPUTRC.
83157
831582018-07-25  Michael Albinus  <michael.albinus@gmx.de>
83159
83160	File Shadowing is not available on MS Windows
83161
83162	* doc/emacs/files.texi (File Shadowing): File Shadowing is not
83163	available on MS Windows.
83164
83165	* test/lisp/shadowfile-tests.el (shadow-test00-clusters)
83166	(shadow-test01-sites, shadow-test02-files)
83167	(shadow-test03-expand-cluster-in-file-name)
83168	(shadow-test04-contract-file-name, shadow-test05-file-match)
83169	(shadow-test06-literal-groups, shadow-test07-regexp-groups)
83170	(shadow-test08-shadow-todo, shadow-test09-shadow-copy-files):
83171	Skip under MS Windows.
83172
831732018-07-24  Noam Postavsky  <npostavs@gmail.com>
83174
83175	Let bookmark-jump override window-point (Bug#31751)
83176
83177	* lisp/bookmark.el (bookmark-jump): Use pop-to-buffer-same-window
83178	instead of switch-to-buffer, the latter obeys
83179	switch-to-buffer-preserve-window-point and so loses the bookmark's
83180	point.
83181
831822018-07-23  Noam Postavsky  <npostavs@gmail.com>
83183
83184	Omit keymap from subword-mode docstring (Bug#32212)
83185
83186	* lisp/progmodes/subword.el (subword-mode): Remove listing of
83187	subword-mode-map bindings, since it is empty as of 2014-03-23 "Merge
83188	capitalized-words-mode and subword-mode".
83189
831902018-07-23  Tino Calancha  <tino.calancha@gmail.com>
83191	    Noam Postavsky  <npostavs@gmail.com>
83192
83193	Prevent line-mode term from showing user passwords
83194
83195	For buffers whose mode derive from comint-mode, the user password is
83196	read from the minibuffer and it's hidden.  A buffer in term-mode and
83197	line submode, instead shows the passwords.  Make buffers in line
83198	term-mode to hide passwords too (Bug#30190).
83199
83200	* lisp/term.el (term-send-invisible): Prefer the more robust
83201	`read-passwd' instead of `term-read-noecho'.
83202	(term-watch-for-password-prompt): New function.
83203	(term-emulate-terminal): Call it each time we receive non-escape
83204	sequence output.
83205
832062018-07-22  Jonathan Kyle Mitchell  <kyle@jonathanmitchell.org>
83207
83208	Check for special filenames in eshell (Bug#30724)
83209
83210	* lisp/eshell/esh-cmd.el (eshell-lisp-command): Check for "~"
83211	in lisp commands with the eshell-filename-arguments property
83212	(Bug#30724).
83213
83214	* lisp/eshell/em-dirs.el (eshell/cd, eshell/pushd, eshell/popd):
83215	* lisp/eshell/em-ls.el (eshell/ls):
83216	* lisp/eshell/em-unix.el (eshell/rm, eshell/mkdir, eshell/rmdir)
83217	(eshell/mv, eshell/cp, eshell/ln, eshell/cat, eshell/du, eshell/diff):
83218	* lisp/eshell/esh-ext.el (eshell/addpath): Add
83219	eshell-filename-arguments to symbol plist.
83220
832212018-07-22  Noam Postavsky  <npostavs@gmail.com>
83222
83223	Fix indent-sexp of #s(...) (Bug#31984)
83224
83225	* lisp/emacs-lisp/lisp-mode.el (indent-sexp): Look for a sexp that
83226	ends after the current line.
83227	* test/lisp/emacs-lisp/lisp-mode-tests.el (indent-sexp-go): New test.
83228
832292018-07-22  Noam Postavsky  <npostavs@gmail.com>
83230
83231	Add save-match-data to abbreviate-file-name (Bug#32201)
83232
83233	* lisp/files.el (abbreviate-file-name): Save match-data around
83234	expand-file-name; it is not guaranteed to preserve match-data, and may
83235	well do so depending on what file handlers and hooks are in effect.
83236
832372018-07-21  Eli Zaretskii  <eliz@gnu.org>
83238
83239	Fix last change in editfns.c
83240
83241	* src/editfns.c (Freplace_buffer_contents): Fix last change: always
83242	call buffer modification hooks, even if nothing was deleted/inserted.
83243	(bug#32237)
83244
832452018-07-21  Eli Zaretskii  <eliz@gnu.org>
83246
83247	Fix calls to buffer modification hooks from replace-buffer-contents
83248
83249	* src/editfns.c (Freplace_buffer_contents): Don't call buffer
83250	modification hooks if nothing was deleted/inserted.  (Bug#32237)
83251
832522018-07-21  Michael Albinus  <michael.albinus@gmx.de>
83253
83254	Fix Bug#32226
83255
83256	* lisp/shadowfile.el (shadow-site-name, shadow-name-site):
83257	Use "[-.[:word:]]+" as hostname regexp.  (Bug#32226)
83258
83259	* test/lisp/shadowfile-tests.el (shadow-test06-literal-groups)
83260	(shadow-test07-regexp-groups, shadow-test08-shadow-todo)
83261	(shadow-test09-shadow-copy-files): Skip if needed.
83262
832632018-07-21  Eli Zaretskii  <eliz@gnu.org>
83264
83265	Improve doc strings of several variables in keyboard.c
83266
83267	* src/keyboard.c (syms_of_keyboard) <debug-on-event>
83268	<attempt-stack-overflow-recovery>
83269	<attempt-orderly-shutdown-on-fatal-signal>: Make sure the first
83270	sentence of the doc string fits on a single line.
83271
832722018-07-20  Michael Albinus  <michael.albinus@gmx.de>
83273
83274	Fix (Bug#32218).  Do not merge with master
83275
83276	* doc/misc/trampver.texi:
83277	* lisp/net/trampver.el: Change version to "2.3.4.26.2".
83278	(customize-package-emacs-version-alist): Add Tramp version
83279	integrated in Emacs 26.2.
83280
83281	* lisp/net/tramp.el (tramp-handle-file-truename):
83282	* lisp/net/tramp-adb.el (tramp-adb-handle-file-truename):
83283	* lisp/net/tramp-sh.el (tramp-sh-handle-file-truename): Fix problem
83284	with trailing slash.  (Bug#32218)
83285
83286	* test/lisp/net/tramp-tests.el (tramp-test21-file-links):
83287	Remove `tramp--test-emacs27-p' check.
83288
832892018-07-20  Eli Zaretskii  <eliz@gnu.org>
83290
83291	Improve documentation of 'pcase-defmacro rx'
83292
83293	* lisp/emacs-lisp/rx.el (rx): Clarify and improve the doc string.
83294	For the details, see the discussion starting at
83295	http://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00399.html.
83296
832972018-07-19  Eli Zaretskii  <eliz@gnu.org>
83298
83299	Fix TTY colors breakage by 'clear-face-cache'
83300
83301	Without examining the right frame, 'tty-color-24bit' was erroneously
83302	treating a GUI frame as a 24-bit TTY frame.
83303	* lisp/term/tty-colors.el (tty-color-24bit): Accept optional
83304	argument DISPLAY and pass it to display-color-cells.  Doc fix.
83305	(tty-color-define, tty-color-desc): Pass the FRAME argument to
83306	tty-color-24bit.  (Bug#32072)
83307
833082018-07-18  Michael Albinus  <michael.albinus@gmx.de>
83309
83310	* admin/MAINTAINERS: Add files maintained by me (Michael Albinus).
83311
833122018-07-18  Michael Albinus  <michael.albinus@gmx.de>
83313
83314	Adapt shadowfile.el for Tramp  (Bug#4526, Bug#4846)
83315
83316	* etc/NEWS: Mention changes in shadowfile.el.
83317
83318	* lisp/shadowfile.el (top): Require 'tramp instead of 'ange-ftp.
83319	(shadow-cluster): New defstruct.
83320	(shadow-make-cluster, shadow-cluster-name, shadow-cluster-primary)
83321	(shadow-cluster-regexp, shadow-get-user)
83322	(shadow-parse-fullname): Remove.
83323	(shadow-info-file, shadow-todo-file, shadow-system-name)
83324	(shadow-homedir, shadow-regexp-superquote, shadow-suffix)
83325	(shadow-set-cluster, shadow-get-cluster, shadow-site-name)
83326	(shadow-name-site, shadow-site-primary, shadow-site-cluster)
83327	(shadow-read-site, shadow-parse-name, shadow-make-fullname)
83328	(shadow-replace-name-component, shadow-local-file)
83329	(shadow-expand-cluster-in-file-name, shadow-contract-file-name)
83330	(shadow-same-site, shadow-file-match, shadow-define-cluster)
83331	(shadow-define-literal-group, shadow-define-regexp-group)
83332	(shadow-make-group, shadow-shadows-of-1, shadow-read-files)
83333	(shadow-write-info-file, shadow-write-todo-file)
83334	(shadow-initialize): Adapt variables and functions.
83335
83336	* test/lisp/shadowfile-tests.el: New file.
83337
833382018-07-18  Noam Postavsky  <npostavs@gmail.com>
83339
83340	Fix auth-source-delete (Bug#26184)
83341
83342	* lisp/auth-source.el (auth-source-delete): Fix `auth-source-search'
83343	call.
83344	* test/lisp/auth-source-tests.el (auth-source-delete): New test.
83345
833462018-07-17  Eli Zaretskii  <eliz@gnu.org>
83347
83348	Avoid assertion violations in gnutls.c
83349
83350	* src/gnutls.c (Fgnutls_hash_digest, gnutls_symmetric)
83351	(Fgnutls_hash_mac): Check CONSP before invoking XCDR.  (Bug#32187)
83352	Report values of invalid arguments when signaling an error.
83353
833542018-07-14  Eli Zaretskii  <eliz@gnu.org>
83355
83356	Don't use a literal "C-u" in ispell.el  help message text
83357
83358	* lisp/textmodes/ispell.el (ispell-command-loop): Use
83359	"\\[universal-argument]" instead of a literal "C-u".  (Bug#32142)
83360
833612018-07-14  Eli Zaretskii  <eliz@gnu.org>
83362
83363	Improve documentation of 'seqp'
83364
83365	* doc/lispref/sequences.texi (Sequence Functions): Add text to
83366	explain the relation between 'seqp' and 'sequencep'.  (Bug#32125)
83367
833682018-07-14  Eli Zaretskii  <eliz@gnu.org>
83369
83370	Clarify usage and dependencies between several Flyspell features
83371
83372	* lisp/textmodes/flyspell.el (flyspell-region)
83373	(flyspell-small-region, flyspell-persistent-highlight):
83374	Documentation improvements.  (Bug#32142)
83375
833762018-07-13  Michael Albinus  <michael.albinus@gmx.de>
83377
83378	Use consistent function names in thread-tests.el
83379
83380	* test/src/thread-tests.el (threads-call-error, threads-custom)
83381	(threads-errors, threads-sticky-point, threads-signal-early):
83382	Rename, using naming convention to prefix with "threads-".
83383
833842018-07-13  Michael Albinus  <michael.albinus@gmx.de>
83385
83386	Fix format error in Faccept_process_output
83387
83388	* src/process.c (Faccept_process_output): Do not use format spec
83389	"%p", it isn't valid for error().
83390
833912018-07-13  Paul Eggert  <eggert@cs.ucla.edu>
83392
83393	Lessen stack consumption in recursive read1
83394
83395	* src/lread.c (read1): Shrink local buffer size from
83396	MAX_ALLOCA to 128 (Bug#31995).
83397
833982018-07-13  Noam Postavsky  <npostavs@gmail.com>
83399
83400	Match w32 paths in grep sans --null hits (Bug#32051)
83401
83402	* lisp/progmodes/grep.el (grep-regexp-alist): Add an optional part to
83403	match paths starting with C: (other drive letters).
83404	* test/lisp/progmodes/compile-tests.el
83405	(compile-tests--grep-regexp-testcases)
83406	(compile-tests--grep-regexp-tricky-testcases)
83407	(compile-test-grep-regexps): New tests.
83408	(compile--test-error-line): Return `compilation-message'.
83409
834102018-07-13  Noam Postavsky  <npostavs@gmail.com>
83411
83412	Fix previous make-network-process change
83413
83414	* src/process.c (Fmake_network_process): On 2018-07-09 "Explicitly
83415	reject :server and :nowait (Bug#31903)", the sense of the SERVER check
83416	was accidentally reversed so that we ended up looking for the wrong
83417	ADDRESS.  Reported by T.V Raman in
83418	<https://lists.gnu.org/archive/html/emacs-devel/2018-07/msg00437.html>.
83419
834202018-07-12  Eli Zaretskii  <eliz@gnu.org>
83421
83422	Another documentation improvement in flyspell.el
83423
83424	* lisp/textmodes/flyspell.el (flyspell-persistent-highlight): Doc
83425	fix.
83426
834272018-07-12  Eli Zaretskii  <eliz@gnu.org>
83428
83429	Improve documentation of Flyspell
83430
83431	For the background, see
83432	http://lists.gnu.org/archive/html/help-gnu-emacs/2018-07/msg00099.html.
83433
83434	* doc/emacs/fixit.texi (Spelling): Add a couple of caveats.
83435	* lisp/textmodes/flyspell.el: Update commentary.
83436
834372018-07-12  Michael Albinus  <michael.albinus@gmx.de>
83438
83439	Provide feature 'threads
83440
83441	* src/thread.c (syms_of_threads): Provide feature "threads".
83442
83443	* test/src/thread-tests.el (top): Declare the functions.
83444	(all): Use (featurep 'threads) check.
83445
834462018-07-11  Miciah Masters  <miciah.masters@gmail.com>  (tiny change)
83447
83448	Save the server alias on reconnect (Bug#29657)
83449
83450	rcirc does not retain the server alias on reconnect.  As a result, rcirc
83451	fails to re-use server and channel buffers when an alias is used.  Further
83452	problems may ensue when aliases are used to differentiate multiple
83453	connections to the same host, for example when using a single IRC bouncer
83454	or proxy to connect to multiple IRC networks.
83455
83456	Save the server alias when connecting to a server so that reconnect will
83457	retain the alias.
83458	* lisp/net/rcirc.el (rcirc-connect): Include server-alias when setting
83459	rcirc-connection-info.
83460
834612018-07-11  Basil L. Contovounesios  <contovob@tcd.ie>
83462
83463	Refer to "proper lists" instead of "true lists"
83464
83465	* doc/lispref/lists.texi (Cons Cells, Building Lists):
83466	* doc/lispref/sequences.texi (Vector Functions): Use the more
83467	popular term "proper", rather than "true", to qualify nil-terminated
83468	lists.
83469
83470	For discussion, see the following emacs-devel subthreads:
83471	https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00112.html
83472	https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00138.html
83473
834742018-07-10  John Shahid  <jvshahid@gmail.com>
83475
83476	Avoid turning on the global-minor-mode recursively
83477
83478	* lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode): Clear
83479	the buffer-list inside MODE-enable-in-buffers to avoid enabling the
83480	mode recursively.  (Bug#31793)
83481
834822018-07-10  Michael Albinus  <michael.albinus@gmx.de>
83483
83484	Fix Bug#32085
83485
83486	* doc/misc/tramp.texi (GVFS based methods): `dav' and `davs' do
83487	not support paths in the volume name.  (Bug#32085)
83488
834892018-07-10  Noam Postavsky  <npostavs@gmail.com>
83490
83491	Stop using indent-line-to in lisp-indent-line (Bug#32014)
83492
83493	This is partial revert of "Remove ignored argument from
83494	lisp-indent-line", because `indent-line-to' doesn't respect field
83495	boundaries.
83496	* lisp/emacs-lisp/lisp-mode.el (lisp-indent-line): Use delete-region
83497	and indent-to instead of `indent-line-to'.
83498	* test/lisp/emacs-lisp/lisp-mode-tests.el
83499	(lisp-indent-with-read-only-field): Expect to pass.
83500
83501	Don't merge to master, we will fix indent-line-to there instead.
83502
835032018-07-10  Noam Postavsky  <npostavs@gmail.com>
83504
83505	Explicitly reject :server and :nowait (Bug#31903)
83506
83507	* src/process.c (Fmake_network_process): Explicitly check for and
83508	signal an error when passed both :server and :nowait non-nil.  In
83509	Emacs 25, :nowait would be ignored in this case, but as of Emacs 26.1
83510	this gives an error, albeit an unclear one.  Also remove obsolete
83511	comment regarding configurations lacking non-blocking mode, the
83512	corresponding code was removed in 2012-11-17 "Assume POSIX 1003.1-1988
83513	or later for fcntl.h."
83514
835152018-07-09  Michael Albinus  <michael.albinus@gmx.de>
83516
83517	Fix Bug#32090
83518
83519	* lisp/files-x.el (connection-local-normalize-criteria): Do not
83520	use PROPERTIES anymore.
83521	(connection-local-get-profiles): Rewrite, in order to accept any
83522	property as optional.  (Bug#32090)
83523	(connection-local-set-profiles):
83524	Adapt ´connection-local-normalize-criteria' call.
83525
83526	* test/lisp/files-x-tests.el
83527	(files-x-test-connection-local-set-profiles)
83528	(files-x-test-hack-connection-local-variables-apply): Extend tests.
83529
835302018-07-08  Paul Eggert  <eggert@cs.ucla.edu>
83531
83532	Fix floating point exceptions on Alpha (Bug#32086)
83533
83534	Backport from master.
83535	* admin/merge-gnulib (GNULIB_MODULES): Add fpieee.
83536	* m4/fpieee.m4: New file, copied from Gnulib.
83537	* m4/gnulib-comp.m4: Regenerate.
83538
835392018-07-08  Paul Eggert  <eggert@cs.ucla.edu>
83540
83541	Fix bootstrap infloop in GNU/Linux alpha
83542
83543	* src/emacs.c (main): Do not re-exec if EMACS_HEAP_EXEC
83544	is already set (Bug#32083).
83545
835462018-07-08  Eli Zaretskii  <eliz@gnu.org>
83547
83548	Minor fix of a recent documentation change
83549
83550	* lisp/net/gnutls.el (gnutls-algorithm-priority): Clarify the doc
83551	string.
83552
835532018-07-08  Lars Ingebrigtsen  <larsi@gnus.org>
83554
83555	Mention the NSM in the gnutls variable doc strings
83556
83557	* lisp/net/gnutls.el (gnutls-algorithm-priority): Mention the Network
83558	Security Manager here since this variable is an obvious place
83559	for people concerned about network security to look.
83560	(gnutls-verify-error): Ditto.
83561	(gnutls-min-prime-bits): Ditto.
83562
835632018-07-08  Michael Albinus  <michael.albinus@gmx.de>
83564
83565	Remove test code from last commit
83566
835672018-07-08  Michael Albinus  <michael.albinus@gmx.de>
83568
83569	Fix Bug#32084
83570
83571	* test/lisp/net/dbus-tests.el (dbus-test02-register-service-own-bus):
83572	Unset $DISPLAY when calling dbus-launch, in order to avoid
83573	possible X11 authentication errors.  (Bug#32084)
83574
835752018-07-07  Basil L. Contovounesios  <contovob@tcd.ie>
83576
83577	Fix (length NON-SEQUENCE) documentation
83578
83579	Suggested by Eli Zaretskii <eliz@gnu.org> in the following threads:
83580	https://lists.gnu.org/archive/html/emacs-devel/2018-07/msg00171.html
83581	https://lists.gnu.org/archive/html/emacs-devel/2018-07/msg00206.html
83582
83583	* doc/lispref/sequences.texi (Sequence Functions): Mention that
83584	'length' signals a 'wrong-type-argument' also when given a
83585	non-sequencep argument.
83586
835872018-07-07  Eli Zaretskii  <eliz@gnu.org>
83588
83589	Fix bug #11732
83590
83591	* src/w32fns.c (w32_wnd_proc): Fix handling of Windows input
83592	methods.  (Bug#11732)
83593
835942018-07-07  Eli Zaretskii  <eliz@gnu.org>
83595
83596	Improve documentation of 'emacs-lock-mode'
83597
83598	* lisp/emacs-lock.el (emacs-lock-mode): Mention in the doc string
83599	the special handling of some major modes due to
83600	'emacs-lock-unlockable-modes'.
83601
836022018-07-07  Eli Zaretskii  <eliz@gnu.org>
83603
83604	* lisp/imenu.el (imenu-generic-expression): Doc fix.  (Bug#32016)
83605
836062018-07-07  Eli Zaretskii  <eliz@gnu.org>
83607
83608	Improve indexing of 'eval-defun' in ELisp manual
83609
83610	* doc/lispref/display.texi (Defining Faces):
83611	* doc/lispref/debugging.texi (Explicit Debug):
83612	* doc/lispref/customize.texi (Variable Definitions):
83613	* doc/lispref/variables.texi (Defining Variables): Add index
83614	entries for 'eval-defun'.  (Bug#32066)
83615
836162018-07-06  Paul Eggert  <eggert@cs.ucla.edu>
83617
83618	Fix (length CIRCULAR) documentation
83619
83620	* doc/lispref/sequences.texi (Sequence Functions):
83621	Correct documentation of what (length X) does when
83622	X is a circular list.
83623
836242018-07-06  Michael Albinus  <michael.albinus@gmx.de>
83625
83626	Tramp editorials
83627
83628	* doc/misc/tramp.texi (Android shell setup): Mention Termux.
83629
83630	* lisp/net/tramp-sh.el (tramp-remote-process-environment):
83631	Use proper spelling "Tramp" in docstring.
83632
836332018-07-06  Eli Zaretskii  <eliz@gnu.org>
83634
83635	Clarify and improve doc strings of 'eval-last-sexp' and friends
83636
83637	* lisp/simple.el (eval-expression, eval-expression-print-format):
83638	* lisp/progmodes/elisp-mode.el (eval-last-sexp): Doc fixes.
83639	(Bug#32064)
83640
836412018-07-06  Glenn Morris  <rgm@gnu.org>
83642
83643	Automate upload of Emacs manuals to gnu.org
83644
83645	* admin/make-manuals, admin/upload-manuals: New scripts.
83646	* admin/admin.el (make-manuals, make-manuals-dist): Handle batch mode.
83647	* admin/make-tarball.txt: Update web-page details.
83648
836492018-07-05  Mike Kupfer  <mkupfer@alum.berkeley.edu>
83650
83651	Fix MH-E mail composition with GNU Mailutils (SF#485)
83652
83653	* lisp/mh-e/mh-comp.el (mh-bare-components): Recursively delete
83654	the temporary folder.
83655
836562018-07-03  Eli Zaretskii  <eliz@gnu.org>
83657
83658	Speed up 'replace-buffer-contents' some more
83659
83660	* src/editfns.c (EXTRA_CONTEXT_FIELDS): New members beg_a and beg_b.
83661	(Freplace_buffer_contents): Set up ctx.beg_a and ctx.beg_b.
83662	(buffer_chars_equal): Use ctx->beg_a and ctx->beg_b instead of
83663	calling BUF_BEGV, which is expensive.  This speeds up the recipe
83664	in bug#31888 by 30%.
83665
836662018-07-03  Glenn Morris  <rgm@gnu.org>
83667
83668	* doc/emacs/docstyle.texi: Avoid messing up the html output.
83669
83670	Previously the @hyphenation commands somehow caused the <head>
83671	section to go missing, with makeinfo 4.13 at least.
83672
836732018-07-01  Paul Eggert  <eggert@cs.ucla.edu>
83674
83675	* etc/HISTORY: Cite Brinkhoff on early history.
83676
836772018-07-01  Martin Rudalics  <rudalics@gmx.at>
83678
83679	Document internal use of 'above-suspended' z-group frame parameter
83680
83681	* src/w32fns.c (w32_dialog_in_progress, x_set_z_group):
83682	* src/xterm.c (x_set_z_group): Clarify the internal use of
83683	'above-suspended' when setting a frame's 'z-group' parameter.
83684
836852018-06-30  Gemini Lasswell  <gazally@runbox.com>
83686
83687	Increase max-lisp-eval-depth adjustment while in debugger (bug#31919)
83688
83689	* src/eval.c (call_debugger): Increase the amount of extra Lisp
83690	evaluation depth given to the debugger to allow it to call cl-print.
83691	* lisp/emacs-lisp/debug.el (debugger-setup-buffer): Add a comment
83692	to suggest updating call_debugger when changing print-level.
83693
836942018-06-30  Eli Zaretskii  <eliz@gnu.org>
83695
83696	Improve on last change in replace-buffer-contents
83697
83698	* src/editfns.c (Freplace_buffer_contents): Call modification
83699	hooks only for the actual region where changes are made.
83700	(Bug#31888)
83701
837022018-06-30  Eli Zaretskii  <eliz@gnu.org>
83703
83704	Fix a factual error in Introduction to Emacs Lisp
83705
83706	* doc/lispintro/emacs-lisp-intro.texi (Buffer Names): Update the
83707	key that exits the splash screen.  (Bug#32019)
83708
837092018-06-30  Eli Zaretskii  <eliz@gnu.org>
83710
83711	Minor improvements in documentation of imenu.el
83712
83713	* lisp/imenu.el (imenu-generic-skip-comments-and-strings)
83714	(imenu--generic-function): Doc fixes.  (Bug#31962)
83715
837162018-06-30  Eli Zaretskii  <eliz@gnu.org>
83717
83718	Avoid errors with recentering in 'skeleton-insert'
83719
83720	* lisp/skeleton.el (skeleton-insert): Don't recenter if we are
83721	running in a buffer other than the one displayed in the selected
83722	window.  (Bug#31950)
83723
837242018-06-29  Paul Eggert  <eggert@cs.ucla.edu>
83725
83726	* src/lisp.h: Omit obsolete comment re bytecode stack.
83727
837282018-06-29  Eli Zaretskii  <eliz@gnu.org>
83729
83730	Speed up replace-buffer-contents
83731
83732	* src/editfns.c (EXTRA_CONTEXT_FIELDS): Add a_unibyte and
83733	b_unibyte members.
83734	(rbc_quitcounter): New static variable.
83735	(Freplace_buffer_contents): Initialize a_unibyte, b_unibyte, and
83736	rbc_quitcounter.  Inhibit modification hooks if they were not
83737	already inhibited.  Use rarely_quit to allow user to quit, to
83738	avoid calling maybe_quit too frequently (which hurts performance).
83739	Remove redundant assertions (which hurt performance too much).
83740	Call signal_after_change and update_compositions after all the
83741	changes are done.
83742	(buffer_chars_equal): Remove redundant assertions (which hurt
83743	performance).  Avoid using BUF_FETCH_CHAR_AS_MULTIBYTE, which
83744	hurts performance by referencing Lisp symbols; instead, use
83745	lower-level macros with explicit tests to select which macro to
83746	use.  (Bug#31888)
83747
837482018-06-27  Dmitry Gutov  <dgutov@yandex.ru>
83749
83750	Remove extra process call from vc-git-find-file-hook
83751
83752	* lisp/vc/vc-git.el (vc-git-find-file-hook): Resolve FIXMEs.
83753
837542018-06-27  Dmitry Gutov  <dgutov@yandex.ru>
83755
83756	Speed up vc-git-dir-status-files
83757
83758	* lisp/vc/vc-git.el (vc-git-dir-status-goto-stage): Call 'git
83759	ls-files -u' for the ls-files-conflict stage
83760	(https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00885.html).
83761
837622018-06-27  Eli Zaretskii  <eliz@gnu.org>
83763
83764	Avoid compiler warning using coding.h
83765
83766	* src/coding.h: Add INLINE_HEADER_BEGIN..INLINE_HEADER_END, since
83767	this header now has an extern INLINE function.
83768
837692018-06-27  Michael Albinus  <michael.albinus@gmx.de>
83770
83771	Sync with Tramp 2.3.4.  Do not merge with master
83772
83773	* doc/misc/trampver.texi:
83774	* lisp/net/trampver.el: Change version to "2.3.4".
83775
83776	* lisp/net/tramp-smb.el (tramp-smb-handle-delete-directory):
83777	Check, that the directory has been removed indeed.
83778
83779	* test/lisp/net/tramp-tests.el (tramp-test21-file-links): Adapt test.
83780	(tramp--test-emacs25-p): New defun.
83781	(tramp-test34-vc-registered): Use it.
83782
837832018-06-27  Martin Rudalics  <rudalics@gmx.at>
83784
83785	* src/xdisp.c (Vmouse_autoselect_window): Clarify doc-string (Bug#31975)
83786
837872018-06-26  Noam Postavsky  <npostavs@gmail.com>
83788
83789	Detect a non-list package archive content properly (Bug#22311)
83790
83791	* lisp/emacs-lisp/package.el (package--download-one-archive): Use
83792	`read' instead of `read-from-string'; the latter always returns a
83793	cons, so the `listp' check on its return value doesn't make sense.  It
83794	was changed from `read' to `read-from-string' in 2015-04-01 "*
83795	emacs-lisp/package.el: Implement asynchronous refreshing", but that
83796	change was not needed because `read' works fine on strings as well as
83797	buffers.
83798
837992018-06-25  Christophe Junke  <junke.christophe@gmail.com>  (tiny change)
83800
83801	Add ido-fallback special variable (Bug#31707)
83802
83803	Before ido.el switch to lexical-binding, it was possible for other
83804	packages to modify the 'fallback' variables declared inside
83805	'ido-file-internal' and 'ido-buffer-internal'.
83806	* lisp/ido.el (ido-fallback): New variable.
83807	(ido-buffer-internal, ido-file-internal): Reset ido-fallback to nil
83808	before prompting user.  Use ido-fallback when ido-exit is 'fallback'.
83809	(ido-fallback-command): Add optional FALLBACK-COMMAND argument.
83810
838112018-06-25  Karl Fogel  <kfogel@red-bean.com>
83812
83813	Tighten a cross-reference in documentation
83814
83815	* doc/lispref/internals.texi (Writing Emacs Primitives): Switch to
83816	  a simple parenthetical cross-reference, following up to my
83817	  commit 9a53b6d426 of 2018-06-24.
83818
83819	See discussion:
83820
83821	  https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00826.html
83822	  From: Eli Zaretskii
83823	  Subject: Re: [Emacs-diffs] \
83824	           emacs-26 9a53b6d: Say how to override a primitive interactive spec
83825	  To: Karl Fogel
83826	  CC: Stefan Monnier, Emacs Devel
83827	  Date: Mon, 25 Jun 2018 17:41:53 +0300
83828	  Message-Id: <83r2kvrkr2.fsf@gnu.org>
83829
838302018-06-25  Michael Albinus  <michael.albinus@gmx.de>
83831
83832	Fix last change in tramp-sh.el
83833
83834	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-directly):
83835	Use "-R" rather than "-r" for recursive copy of directories.
83836
838372018-06-24  Paul Eggert  <eggert@cs.ucla.edu>
83838
83839	Revert previous patch; comment was OK after all.
83840
838412018-06-24  Paul Eggert  <eggert@cs.ucla.edu>
83842
83843	Fix lead comment for count_trailing_zero_bits
83844
83845	* src/data.c (count_trailing_zero_bits): Fix comment to match code.
83846
838472018-06-24  Noam Postavsky  <npostavs@gmail.com>
83848
83849	* lisp/emacs-lisp/regexp-opt.el (regexp-opt): Fix docstring quotes.
83850
838512018-06-24  Simen Heggestøyl  <simenheg@gmail.com>
83852
83853	Make a minor update to the CSS mode docstring
83854
83855	* lisp/textmodes/css-mode.el (css-mode): Mention 'fill-paragraph'.
83856
838572018-06-24  Karl Fogel  <kfogel@red-bean.com>
83858
83859	Say how to override a primitive interactive spec
83860
83861	* doc/lispref/internals.texi (Writing Emacs Primitives): Mention that
83862	  the `interactive-form' property can be used to override a primitive
83863	  interactive specification, and refer to the detailed documentation
83864	  for setting that property.
83865
83866	From this thread on Emacs Devel:
83867
83868	  https://lists.gnu.org/archive/html/emacs-devel/2018-03/msg00923.html
83869	  From: Eli Zaretskii
83870	  To: Karl Fogel
83871	  CC: Juri Linkov, Emacs Devel
83872	  Subject: Re: [Emacs-diffs] \
83873	           master b88e7c8: Make transpose-regions interactive (Bug#30343)
83874	  Date: Thu, 29 Mar 2018 14:38:15 +0300
83875	  Message-Id: <834lkzdsd4.fsf@gnu.org>
83876
838772018-06-24  Michael Albinus  <michael.albinus@gmx.de>
83878
83879	Fix Bug#31941
83880
83881	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file): In case of
83882	FILENAME being a directory, check whether `copy-directory' could
83883	be avoided.  Suggested by Stephen Nutt <stnutt@gmail.com>.  (Bug#31941)
83884	(tramp-do-copy-or-rename-file-directly): Call "cp" with "-r".
83885
838862018-06-23  Leo Liu  <sdl.web@gmail.com>
83887
83888	Fix previous change in minibuffer-default-add-dired-shell-commands
83889
83890	The mailcap minibuffer completion used dynamic binding.  Locally set
83891	a dynamic variable.
83892	* lisp/dired-aux.el (minibuffer-default-add-dired-shell-commands):
83893	Store list of files in 'minibuffer-completion-table'.  (Bug#31794)
83894
838952018-06-23  Eli Zaretskii  <eliz@gnu.org>
83896
83897	* src/editfns.c (Fformat): Make %x easier to spot in doc string.  (Bug#31945)
83898
838992018-06-23  Eli Zaretskii  <eliz@gnu.org>
83900
83901	Improve responsiveness while in 'replace-buffer-contents'
83902
83903	* src/editfns.c (buffer_chars_equal): Avoid calling
83904	buf_charpos_to_bytepos when the buffer is plain-ASCII.
83905	Suggested by Milan Stanojević <mstanojevic@janestreet.com>.
83906	Call maybe_quit to improve responsiveness.
83907	(Freplace_buffer_contents): Call maybe_quit.  Warn in the doc
83908	string that the function could be slow.  (Bug#31888)
83909
839102018-06-23  Eli Zaretskii  <eliz@gnu.org>
83911
83912	Improve documentation of 'server-start' and friends
83913
83914	* lisp/server.el (server-start, server-running-p): Document how to
83915	reliably check that the current Emacs process started the server.
83916	(Bug#31859)
83917
839182018-06-23  Eli Zaretskii  <eliz@gnu.org>
83919
83920	Clarify wording about functions' argument lists
83921
83922	* doc/lispref/functions.texi (Argument List): Clarify the
83923	wording.  (Bug#31872)
83924
839252018-06-23  Eli Zaretskii  <eliz@gnu.org>
83926
83927	* lisp/doc-view.el: Fix typos in the commentary.  (Bug#31937)
83928
839292018-06-22  Eli Zaretskii  <eliz@gnu.org>
83930
83931	Fix a typo in emacs-lisp-intro.texi
83932
83933	* doc/lispintro/emacs-lisp-intro.texi (kill-ring-yank-pointer):
83934	Add a missing quote.  Reported by Jean-Christophe Helary
83935	<brandelune@gmail.com> in emacs-devel.
83936
839372018-06-22  Paul Eggert  <eggert@cs.ucla.edu>
83938
83939	Fix doc typo: missing double-quote
83940
839412018-06-22  Eli Zaretskii  <eliz@gnu.org>
83942
83943	Avoid segfaults in replace-buffer-contents with large buffers
83944
83945	* src/editfns.c (Freplace_buffer_contents): Don't release
83946	malloc'ed memory as long as we are using it.  (Bug#31888)
83947
839482018-06-22  Robert Pluim  <rpluim@gmail.com>
83949
83950	Adjust for scaling for mode-line popup menus (Bug#31880)
83951
83952	* src/xmenu.c (menu_position_func) [HAVE_GTK3]: Take scaling
83953	into account when calculating screen size.
83954
839552018-06-21  Simen Heggestøyl  <simenheg@gmail.com>
83956
83957	Change name of `seqp' argument (Bug#26411)
83958
83959	* lisp/emacs-lisp/seq.el (seqp): Change argument name.
83960
83961	* doc/lispref/sequences.texi: Update the documentation for seqp.
83962
839632018-06-20  Noam Postavsky  <npostavs@gmail.com>
83964
83965	Change index of ";" to better reflect it's usage (Bug#31623)
83966
83967	* doc/lispref/objects.texi (Comments): "; for commenting" fits better
83968	with the following text about how a semicolon begins a comment.  Also
83969	mention that only unescaped semicolons start a comment.
83970
839712018-06-20  Tak Kunihiro  <tkk@misasa.okayama-u.ac.jp>
83972
83973	Fix bug of 'mouse-drag-and-drop-region' to detect edges of region (Bug#31905)
83974
83975	* lisp/mouse.el (mouse-drag-and-drop-region): Detect both the
83976	beginning and the end of character of region during dragging
83977	text.
83978
839792018-06-19  Noam Postavsky  <npostavs@gmail.com>
83980
83981	Fix #'fun handling inside `labels' (Bug#31792)
83982
83983	* lisp/emacs-lisp/cl.el (labels): Apply the equivalent of the
83984	cl-labels change from 2015-01-16 "* lisp/emacs-lisp/cl-macs.el: Fix
83985	last change".
83986	* test/lisp/emacs-lisp/cl-tests.el (labels-function-quoting): New
83987	test.
83988	* lisp/emacs-lisp/cl-macs.el (cl-flet, cl-labels): Improve docstring,
83989	link to relevant manual page.
83990	* doc/misc/cl.texi (Function Bindings): Don't imply that function
83991	cells of symbols are modified by cl-flet.  Don't claim that cl-flet or
83992	cl-labels affect references of the form (quote FUNC).
83993
839942018-06-18  Eli Zaretskii  <eliz@gnu.org>
83995
83996	Fix vertical-motion with 'visual' line-number display
83997
83998	* src/indent.c (Fvertical_motion): Don't exempt 'visual' sty;e of
83999	line-number display from X coordinate adjustments.  (Bug#31875)
84000
840012018-06-17  Alan Third  <alan@idiocy.org>
84002
84003	Handle NSAttributedString inputs (bug#29837)
84004
84005
84006	* src/nsterm.m (EmacsView::insertText): Handle NSAttributedString.
84007
840082018-06-17  Philipp Stephani  <phst@google.com>
84009
84010	Allow inserting non-BMP characters
84011
84012	* src/coding.h (UTF_16_HIGH_SURROGATE_P, UTF_16_LOW_SURROGATE_P): Move
84013	from coding.c and document.
84014	(surrogates_to_codepoint): New function.
84015
84016	* src/nsterm.m (insertText:): Properly handle surrogate pairs.
84017
84018	(cherry picked from commit 703ac3ea1c1ce381f385469a0e88bc29d3fe83c2)
84019
840202018-06-17  Aaron Jensen  <aaronjensen@gmail.com>
84021
84022	Prevent errant scroll on mouse click (Bug#31546)
84023
84024	* src/nsterm.m (ns_mouse_position): Use correct frame when determining
84025	  mouse position.
84026	* lisp/mouse.el (mouse-drag-track): Only account for mode-line height
84027	  if `mode-line-format' is non-nil.
84028
840292018-06-17  Eli Zaretskii  <eliz@gnu.org>
84030
84031	Minor documentation fix
84032
84033	* doc/lispref/windows.texi (Window Start and End): Improve
84034	documentation and indexing of window-end.
84035
840362018-06-16  Eli Zaretskii  <eliz@gnu.org>
84037
84038	* lisp/window.el (window-toggle-side-windows): Doc fix.  (Bug#31858)
84039
840402018-06-16  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
84041
84042	Fix byte compilation of (eq foo 'default)
84043
84044	Backport from master.
84045	Do not use the symbol ‘default’ as a special marker.
84046	Instead, use a value that cannot appear in the program,
84047	improving on a patch proposed by Robert Cochran (Bug#31718#14).
84048	* lisp/emacs-lisp/bytecomp.el (byte-compile--default-val):
84049	New constant.
84050	(byte-compile-cond-jump-table-info)
84051	(byte-compile-cond-jump-table): Use it instead of 'default.
84052	* test/lisp/emacs-lisp/bytecomp-tests.el:
84053	(byte-opt-testsuite-arith-data): Add a test for the bug.
84054
840552018-06-16  Michael Albinus  <michael.albinus@gmx.de>
84056
84057	Fix Bug#31846.  Do not merge with master
84058
84059	* lisp/net/secrets.el (secrets-search-items)
84060	(secrets-create-item): Fix format of :dict-entry values.  (Bug#31846)
84061
840622018-06-16  Eli Zaretskii  <eliz@gnu.org>
84063
84064	Fix documentation of ':propertize' in mode-line-format
84065
84066	* doc/lispref/modes.texi (Mode Line Data): Make the description of
84067	':propertize' more accurate.  (Bug#26291)
84068
840692018-06-15  Eli Zaretskii  <eliz@gnu.org>
84070
84071	Reject invalid 5-byte sequences when detecting UTF-8 encoding
84072
84073	* src/coding.c (detect_coding_utf_8): Reject multibyte sequences
84074	whose leading byte is greater than MAX_MULTIBYTE_LEADING_CODE.
84075	(Bug#31829)
84076	* src/character.h (MAX_MULTIBYTE_LEADING_CODE): Add commentary
84077	about the connection between the value of this macro and MAX_CHAR.
84078
840792018-06-15  Eli Zaretskii  <eliz@gnu.org>
84080
84081	Fix 'replace-buffer-contents' in multibyte buffers
84082
84083	* src/editfns.c (buffer_chars_equal): Pass a byte position to
84084	BUF_FETCH_CHAR_AS_MULTIBYTE, not a character position.
84085	(Bug#31837)
84086
84087	* test/src/editfns-tests.el (replace-buffer-contents-bug31837):
84088	New test.
84089
840902018-06-15  Robert Pluim  <rpluim@gmail.com>
84091
84092	Update etc/NEWS for mail-source-movemail-program change
84093
84094	* etc/NEWS: Describe change in how we search for
84095	mail-source-movemail-program.
84096
840972018-06-15  Robert Pluim  <rpluim@gmail.com>
84098
84099	Improve movemail default
84100
84101	* lisp/gnus/mail-source.el (mail-source-movemail-program):
84102	Change default to "movemail".
84103	(mail-source-movemail): Pass just mail-source-movemail-program to
84104	call-process instead of fully specifying it relative to
84105	exec-directory.  Ensures that we will find Mailutils movemail if
84106	it is installed.  (Bug#31737)
84107
841082018-06-15  Eli Zaretskii  <eliz@gnu.org>
84109
84110	Delete description of deleted Customize functions
84111
84112	* doc/lispref/customize.texi (Variable Definitions): Remove the
84113	description of 'custom-initialize-safe-set' and
84114	'custom-initialize-safe-default', which were deleted in Emacs
84115	23.2, and replace with the description of
84116	'custom-initialize-delay'.
84117
841182018-06-14  Noam Postavsky  <npostavs@gmail.com>
84119
84120	Keep vc-print-log from putting point at buffer end (Bug#31764)
84121
84122	* lisp/vc/vc.el (vc-print-log-internal): Use `save-excursion' around
84123	`vc-print-log-setup-buttons'.
84124
841252018-06-14  Paul Eggert  <eggert@cs.ucla.edu>
84126
84127	Don’t set EMACS=t if Bash is 4.4 or newer
84128
84129	(Backport from master.)
84130	(Thanks to Stefan Monnier for improvements to this patch.)
84131	* lisp/term.el (term--bash-needs-EMACS-status): New var.
84132	(term--bash-needs-EMACSp): New function.
84133	(term-exec-1): Use it instead of always setting EMACS.
84134
841352018-06-14  Eli Zaretskii  <eliz@gnu.org>
84136
84137	Improve commentary in info.el
84138
84139	* lisp/info.el: Explain in commentary why some commands start with
84140	"info-" and others with "Info-".  See also
84141	http://lists.gnu.org/archive/html/emacs-devel/2017-11/msg00482.html.
84142
841432018-06-13  Michael Albinus  <michael.albinus@gmx.de>
84144
84145	Fix wording in tramp.texi
84146
84147	* doc/misc/tramp.texi (Frequently Asked Questions):
84148	Fix wording for abbreviations.
84149
841502018-06-13  Michael Albinus  <michael.albinus@gmx.de>
84151
84152	* doc/misc/tramp.texi (Remote shell setup): Fix typo.
84153
841542018-06-12  Sam Steingold  <sds@gnu.org>
84155
84156	Finish the Bug#11728 work: hg & git
84157
84158	* lisp/vc/vc-git.el (vc-git--pushpull): Make `extra-args' a list.
84159	Do not set `compilation-error-regexp-alist', this is done in
84160	`vc-compilation-mode'.
84161	(vc-git-error-regexp-alist): Tweak the regexp.
84162	* lisp/vc/vc-hg.el (vc-hg-error-regexp-alist): Make non-trivial.
84163	(vc-hg--pushpull): Accept `post-processing' argument.
84164	Call them after the `command'.
84165	(vc-hg-pull): Pass the `post-processing' commands that show which
84166	are to be modified by the `update', and then run `update'.
84167
841682018-06-12  Sam Steingold  <sds@gnu.org>
84169
84170	Fix Bug#11728: show files updated by git
84171
84172	* lisp/vc/vc-git.el (vc-git--pushpull): Accept extra-args and set
84173	`compilation-error-regexp-alist' to `vc-git-error-regexp-alist'.
84174	(vc-git-pull): Pass "--stat" as `extra-args' to `vc-git--pushpull'.
84175	(vc-git-push): Pass "" as `extra-args' to `vc-git--pushpull'.
84176
841772018-06-12  Noam Postavsky  <npostavs@gmail.com>
84178
84179	Make 'tags' targets respect --with-silent-rules (Bug#31744)
84180
84181	* lwlib/Makefile.in (TAGS):
84182	* lisp/Makefile.in (TAGS):
84183	* src/Makefile.in (TAGS): Use AM_V_GEN and AM_V_at.
84184	* src/Makefile.in: Note that TAGS are generated in build dir.
84185
841862018-06-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
84187	    Noam Postavsky  <npostavs@gmail.com>
84188
84189	soap-client: Add byte-code compatibility function (Bug#31742)
84190
84191	* lisp/net/soap-client.el: Bump version to 3.1.4.
84192	(soap-type-of): New function.
84193	(soap-resolve-references, soap-decode-type)
84194	(soap-encode-attributes, soap-encode-value): Replace aref
84195	calls with calls to soap-type-of.
84196
84197	* lisp/net/soap-inspect.el (soap-sample-value, soap-inspect):
84198	Replace aref calls with calls to soap-type-of.
84199
84200
84201	Backport: (cherry picked from commit
84202	1feb2e221349f26ec26bc684e0cce2acecbed3ca)
84203
842042018-06-11  Eli Zaretskii  <eliz@gnu.org>
84205
84206	* doc/lispref/files.texi (Unique File Names): Fix a typo.  (Bug#31784)
84207
842082018-06-10  Noam Postavsky  <npostavs@gmail.com>
84209
84210	Fix term.el cursor movement at bottom margin (Bug#31690)
84211
84212	* lisp/term.el (term-handle-ansi-escape) <\E[B cud>: Allow moving the
84213	cursor to the bottom margin line, rather than stopping one line
84214	before.
84215
842162018-06-10  Reuben Thomas  <rrt@sc3d.org>
84217
84218	Call enchant-lsmod correctly when Enchant is installed with a suffix
84219
84220	* lisp/textmodes/ispell.el (ispell--call-enchant-lsmod): Cope with a
84221	version suffix on the binary name, so enchant-2 is converted to
84222	enchant-lsmod-2, not enchant-2-lsmod.  (Bug#31761)
84223
84224	(cherry picked from commit a402d9aacbecf4bf0b9afde592a3b90c71f96832)
84225
842262018-06-09  Eli Zaretskii  <eliz@gnu.org>
84227
84228	Enlarge DUMPED_HEAP_SIZE for 64-bit Windows builds
84229
84230	* src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 23MB.  Reported by
84231	Andy Moreton <andrewjmoreton@gmail.com>.
84232
842332018-06-09  Eli Zaretskii  <eliz@gnu.org>
84234
84235	Update Unicode data files to version 11.0.0 of Unicode
84236
84237	* admin/unidata/UnicodeData.txt:
84238	* admin/unidata/SpecialCasing.txt:
84239	* admin/unidata/NormalizationTest.txt:
84240	* admin/unidata/copyright.html:
84241	* admin/unidata/BidiMirroring.txt:
84242	* admin/unidata/BidiBrackets.txt: Import from Unicode 11.0.
84243	* admin/notes/unicode: Update the URL for OTF script tags.
84244
84245	* lisp/international/mule-cmds.el (ucs-names): Update unused ranges.
84246	* lisp/international/fontset.el (script-representative-chars): Add
84247	hanifi-rohingya, old-sogdian, sogdian, dogra, gunjala-gondi,
84248	makasar, and medefaidrin.
84249	(otf-script-alist): Add old-hungarian.
84250	* lisp/international/characters.el (tbl): Add syntax entries for
84251	Supplemental Mathematical Operators, Miscellaneous Symbols and
84252	Arrows, and Supplemental Punctuation.
84253	Update the list of wide characters.
84254
84255	* test/lisp/international/ucs-normalize-tests.el
84256	(ucs-normalize-tests--failing-lines-part2): Update to match
84257	admin/unidata/NormalizationTest.txt.
84258
84259	* doc/lispref/nonascii.texi (Character Properties): Update the
84260	reference to the Unicode Standard.
84261	* doc/misc/efaq.texi (New in Emacs 26):
84262	* etc/NEWS: Mention compatibility with Unicode 11.0.
84263
842642018-06-09  Eli Zaretskii  <eliz@gnu.org>
84265
84266	* etc/NEWS: Belatedly call out vc-hg changes in v26.1.  (Bug#31759)
84267
842682018-06-09  Eli Zaretskii  <eliz@gnu.org>
84269
84270	Clarify the documentation of 'dired-recursive-deletes'
84271
84272	* doc/emacs/dired.texi (Dired Deletion): Clarify text regarding
84273	recursive deletion of non-empty directories.  (Bug#31529)
84274
842752018-06-08  Eli Zaretskii  <eliz@gnu.org>
84276
84277	Clarify doc string of 'update-glyphless-char-display'
84278
84279	* lisp/international/characters.el
84280	(update-glyphless-char-display): Doc fix.  (Bug#31730)
84281
842822018-06-08  Eli Zaretskii  <eliz@gnu.org>
84283
84284	Clarify subtle issues with 'eq' in byte-compiled code
84285
84286	* doc/lispref/objects.texi (Equality Predicates): Explain why
84287	byte-compiled code might compare literal objects with identical
84288	contents as 'eq'.  (Bug#31688)
84289
842902018-06-07  Gemini Lasswell  <gazally@runbox.com>
84291
84292	Make cl-print respect print-quoted (bug#31649)
84293
84294	* lisp/emacs-lisp/cl-print.el (cl-print-object) <cons>: Observe
84295	print-quoted when printing quote and its relatives.  Add printing of
84296	'function' as #'.
84297
842982018-06-07  Martin Rudalics  <rudalics@gmx.at>
84299
84300	Fix unexpected jumps of window-point in 'set-window-configuration' (Bug#31695)
84301
84302	* src/window.c (Fset_window_configuration): Prevent that the
84303	fix for Bug#12208 affects restoration of window points when
84304	using separate minibuffer frames (Bug#31695).
84305
843062018-06-06  Nicolas Petton  <nicolas@petton.fr>
84307
84308	* etc/emacs.appdata.xml: Update Emacs screenshot.
84309
843102018-06-06  Eli Zaretskii  <eliz@gnu.org>
84311
84312	Fix cursor movement by 'next-logical-line' after 'next-line'
84313
84314	* src/indent.c (Fvertical_motion): Adjust TO_X when line-numbers
84315	are being displayed.  Remove unneeded "correction" of TO_X at the
84316	goal line.
84317
84318	* lisp/simple.el (last--line-number-width): Remove unneeded
84319	variable.
84320	(line-move-visual): Account for line-number display width by
84321	adjusting the pixel X coordinate that gets converted into
84322	canonical columns passed to vertical-motion, instead of adjusting
84323	temporary-goal-column (which then affects next commands, including
84324	next-logical-line).  (Bug#31723)
84325
843262018-06-05  Allen Li  <darkfeline@felesatra.moe>
84327
84328	Fix prompt in bookmark.el (Bug#24726)
84329
84330	* lisp/bookmark.el (bookmark-set-internal): Conform to the standard
84331	default prompt format (per `minibuffer-electric-default-mode') which
84332	does not use a colon.
84333
843342018-06-05  Basil L. Contovounesios  <contovob@tcd.ie>
84335
84336	Improve documentation of 'empty' whitespace-style
84337
84338	* doc/emacs/display.texi (Useless Whitespace): Clarify that the
84339	'empty' whitespace-style option highlights empty lines only at
84340	BOB/EOB, as per the docstring of whitespace-style. (bug#31713)
84341
843422018-06-05  Paul Eggert  <eggert@cs.ucla.edu>
84343
84344	Port FC_COLOR change to older fontconfig
84345
84346	Problem reported by John ff in:
84347	https://lists.gnu.org/r/emacs-devel/2018-04/msg00058.html
84348	* src/ftfont.c (ftfont_spec_pattern) [!FC_COLOR]:
84349	Don’t use FC_COLOR on older fontconfigs that don’t have it.
84350
843512018-06-05  Robert Pluim  <rpluim@gmail.com>
84352
84353	Ignore color fonts when using Xft
84354
84355	* src/font.c (syms_of_font): New configuration variable
84356	xft-ignore-color-fonts, default t.
84357	* src/ftfont.c (ftfont_spec_pattern): Tell fontconfig to ignore
84358	color fonts if xft-ignore-color-fonts is t.  (Bug#30874, Bug#30045)
84359	* etc/NEWS: Document xft-ignore-color-fonts.
84360
843612018-06-04  Noam Postavsky  <npostavs@gmail.com>
84362
84363	Fix comint-get-old-input-default for output field case (Bug#25028)
84364
84365	* lisp/comint.el (comint-get-old-input-default): Don't return whole
84366	field when point was on an output field.
84367
843682018-06-04  Eli Zaretskii  <eliz@gnu.org>
84369
84370	Prevent infloop in 'delete-trailing-whitespace'
84371
84372	* lisp/simple.el (delete-trailing-whitespace): Avoid inflooping
84373	when some region of trailing whitespace is unmodifiable.
84374	(Bug#31557)
84375
843762018-06-04  Gemini Lasswell  <gazally@runbox.com>
84377
84378	Make cl-print respect print-level and print-length (bug#31559)
84379
84380	* lisp/emacs-lisp/cl-print.el (cl-print--depth): New variable.
84381	(cl-print-object) <cons>: Print ellipsis if printing depth greater
84382	than 'print-level' or length of list greater than 'print-length'.
84383	(cl-print-object) <vector>: Truncate printing with ellipsis if
84384	vector is longer than 'print-length'.
84385	(cl-print-object) <cl-structure-object>: Truncate printing with
84386	ellipsis if structure has more slots than 'print-length'.
84387	(cl-print-object) <:around>: Bind 'cl-print--depth'.
84388	* test/lisp/emacs-lisp/cl-print-tests.el
84389	(cl-print-tests-3, cl-print-tests-4): New tests.
84390
84391	(cherry picked from commit 0f48d18fd2a30f29cc3592a835d2a2254c9b0afb)
84392
843932018-06-03  Phil Sainty  <psainty@orcon.net.nz>
84394
84395	Fix remote-host directory tracking for shells in `term' buffers
84396
84397	* lisp/term.el (term-handle-ansi-terminal-messages): Use an explicit
84398	tramp method when constructing the tramp path for a non-local host,
84399	as this is now mandatory.  "-" is a pseudo-method for the user's
84400	`tramp-default-method'.  (Bug#31355)
84401
84402	Specify the remote username explicitly in all cases, as
84403	`tramp-default-user' and `tramp-default-user-alist' could cause the
84404	previous logic to fail.
84405
84406	Minor related improvements to the commentary.
84407
844082018-06-03  Eli Zaretskii  <eliz@gnu.org>
84409
84410	Update doc string of 'rx'
84411
84412	* lisp/emacs-lisp/rx.el (rx): Update the description of some
84413	character classes.
84414
844152018-06-03  Stefan Monnier  <monnier@iro.umontreal.ca>
84416
84417	Fix bug#30846, along with misc cleanups found along the way
84418
84419	* test/src/data-tests.el (data-tests-kill-all-local-variables): New test.
84420
84421	* src/buffer.c (swap_out_buffer_local_variables): Remove.
84422	Fuse the body of its loop into that of reset_buffer_local_variables.
84423	(Fkill_buffer, Fkill_all_local_variables): Don't call it any more.
84424	(reset_buffer_local_variables): Make sure the buffer's local binding
84425	is swapped out before removing it from the alist (bug#30846).
84426	Call watchers before actually killing the var.
84427
84428	* src/data.c (Fmake_local_variable): Simplify.
84429	Use swap_in_global_binding to swap out any local binding, instead of
84430	a mix of find_symbol_value followed by messing with where&found.
84431	Don't call swap_in_symval_forwarding since the currently swapped
84432	binding is never one we've modified.
84433	(Fkill_local_variable): Use swap_in_global_binding rather than messing
84434	with where&found to try and trick find_symbol_value into doing the same.
84435
84436	* src/alloc.c (mark_localized_symbol): 'where' can't be a frame any more.
84437
84438	(cherry picked from commit 3ddff080341580eb6fc18d907181e9cc2301f62d)
84439
844402018-06-03  Jay Kamat  <jaygkamat@gmail.com>
84441
84442	esh-opt.el: Fix improper parsing of first argument (Bug#28323)
84443
84444	Examples of broken behavior:
84445
84446	    sudo -u root whoami
84447	    Outputs: -u
84448	    ls -I '*.txt' /dev/null
84449	    Errors with: *.txt: No such file or directory
84450
84451	* lisp/eshell/esh-opt.el (eshell--process-args): Refactor usage of
84452	args to eshell--args, as we rely on modifications from
84453	eshell--process-option and vice versa.  These modifications were not
84454	being propogated in the (if (= ai 0)) case, since popping the first
84455	element of a list doesn't destructively modify the underlying list
84456	object.
84457
84458	(cherry picked from commit 92a8230e49a65be48442ee95cf50c90514e48f99)
84459
844602018-06-03  Noam Postavsky  <npostavs@gmail.com>
84461
84462	* lisp/epa.el (epa-decrypt-file): Apply epa-pinentry-mode (Bug#30363).
84463
84464	(cherry picked from commit 217202c084232f36d4fa0fead0f3aca21396d074)
84465
844662018-06-03  Noam Postavsky  <npostavs@gmail.com>
84467
84468	Fix cl-print for circular sublists (Bug#31146)
84469
84470	* lisp/emacs-lisp/cl-print.el (cl-print-object) <cons>: Push each
84471	element of list being printed onto cl-print--currently-printing.
84472	* test/lisp/emacs-lisp/cl-print-tests.el (cl-print-circle-2): New
84473	test.
84474
84475	(cherry picked from commit b8aa7ecf54c9b164a59f1b0e9f9fe90531dadd20)
84476
844772018-06-03  Lars Ingebrigtsen  <larsi@gnus.org>
84478
84479	Revert "Make mail-extract-address-components return the user name more"
84480
84481	This reverts commit 8b50ae8b2284b5652c2843a9d0d076f4f657be28.
84482
84483	According to tests in bug#27656 by OGAWA Hirofumi, this patch
84484	led to wrong results when binding
84485
84486	(dolist (addr '("Rasmus <rasmus@gmx.us>" "Rasmus <mbox@gmx.us>"))
84487	  (dolist (ignore-single '(t nil))
84488	    (dolist (ignore-same '(t nil))
84489	      (let ((mail-extr-ignore-single-names ignore-single)
84490		    (mail-extr-ignore-realname-equals-mailbox-name ignore-same))
84491		(message "%s" (mail-extract-address-components addr))))))
84492
84493	in combination.
84494
84495	(cherry picked from commit a3a9d5434d56f8736cc47e379a1d011d4c779b7c)
84496
844972018-06-03  Paul Eggert  <eggert@cs.ucla.edu>
84498
84499	Centralize Bug#30931 fix
84500
84501	* src/marker.c (detach_marker): New function.
84502	* src/editfns.c (save_restriction_restore):
84503	* src/insdel.c (signal_before_change): Use it.
84504
84505	(cherry picked from commit 6f66a43d7ad6cada2b7dbb6d07efe36be1dc7ecb)
84506
845072018-06-03  Noam Postavsky  <npostavs@gmail.com>
84508
84509	Fix another case of freed markers in the undo-list (Bug#30931)
84510
84511	* src/alloc.c (free_marker): Remove.
84512	* src/editfns.c (save_restriction_restore):
84513	* src/insdel.c (signal_before_change): Detach the markers from the
84514	buffer when we're done with them instead of calling free_marker on
84515	them.
84516	* test/src/editfns-tests.el (delete-region-undo-markers-1)
84517	(delete-region-undo-markers-2): New tests.
84518
84519	(cherry picked from commit 96b8747d5c5d747af13fd84d8fe0308ef2a0ea7a)
84520
845212018-06-03  Paul Eggert  <eggert@cs.ucla.edu>
84522
84523	Fix CHECK_ALLOCATED_AND_LIVE abort during GC
84524
84525	* src/editfns.c (save_restriction_restore):
84526	Wait for the GC to free the temporary markers (Bug#30931).
84527
84528	(cherry picked from commit 670f2ffae718046c0fb37313965a51c040ed096f)
84529
845302018-06-03  Noam Postavsky  <npostavs@gmail.com>
84531
84532	Don't wait for visible frames to become visible
84533
84534	For discussion, see thread starting at
84535	https://lists.gnu.org/archive/html/emacs-devel/2018-03/msg00807.html.
84536	* src/xterm.c (x_make_frame_visible): Check FRAME_VISIBLE_P before
84537	calling x_wait_for_event.
84538
84539	(cherry picked from commits 2a192e21cf3b04b7f830b4971c1508c611e13a3c
84540	and 00c1f771f2a51ffa675ec5a07ea330f2605cd302)
84541
845422018-06-03  Tino Calancha  <tino.calancha@gmail.com>
84543
84544	query-replace undo: Handle when user edits the replacement string
84545
84546	* lisp/replace.el (perform-replace): Update the replacement string
84547	after the user edit it (Fix Bug#31538).
84548
84549	* test/lisp/replace-tests.el (query-replace-undo-bug31538): New test.
84550
84551	Backport: (cherry picked from commits
84552	ea133e04f49afa7928e49a3ac4a85b47f6f13f01
84553	and
84554	7dcfdf5b14325ae7996f272f14c72810d7c84944)
84555
845562018-06-03  Tino Calancha  <tino.calancha@gmail.com>
84557
84558	Backport: Fix corner case in query-replace-regexp undo
84559
84560	This commit fixes Bug#31492.
84561	* lisp/replace.el (replace-match-maybe-edit): Preserve match data.
84562
84563	* test/lisp/replace-tests.el (query-replace-undo-bug31492): Add test.
84564
84565	(cherry picked from commit bab73230d1be1fe394b7269c1365ef6fb1a5d9b3)
84566
845672018-06-03  Tino Calancha  <tino.calancha@gmail.com>
84568
84569	Backport: Preserve case in query-replace undo
84570
84571	If the user query and replaces 'foo' with 'BAR', then
84572	undo must comeback to 'foo', not to 'FOO' (Bug#31073).
84573	* lisp/replace.el (perform-replace): Bind nocasify to non-nil
84574	value during undo/undo-all actions.
84575	* test/lisp/replace-tests.el (query-replace-undo-bug31073): Add test.
84576
84577	(cherry picked from commit 32dc0cb1b5ae895d237c7118ccaeb084715934fd)
84578
845792018-06-02  Alan Third  <alan@idiocy.org>
84580
84581	Set accessibility subroles for child frame (bug#31324)
84582
84583
84584	* src/nsterm.m (x_set_parent_frame): Set subrole depending on whether
84585	frame is a child or not.
84586
845872018-06-02  Alan Third  <alan@idiocy.org>
84588
84589	Fix redefinition of child frames on NS
84590
84591	* src/nsterm.m (x_set_parent_frame): If the NSWindow has an existing
84592	parent frame, remove it.
84593
845942018-06-02  Eli Zaretskii  <eliz@gnu.org>
84595
84596	Improve ELisp documentation of 'clone-indirect-buffer'
84597
84598	* doc/lispref/buffers.texi (Indirect Buffers): Be more explicit
84599	about the value of DISPLAY-FLAG in interactive usage.  (Bug#31648)
84600
846012018-06-02  Eli Zaretskii  <eliz@gnu.org>
84602
84603	Improve documentation of 'inhibit-message'
84604
84605	* src/xdisp.c (syms_of_xdisp) <inhibit-message>: Warn against
84606	setting it non-nil globally.  (Bug#31627)
84607
846082018-06-02  Eli Zaretskii  <eliz@gnu.org>
84609
84610	Improve documentation of comment styles
84611
84612	* doc/lispref/syntax.texi (Syntax Flags): Define the "a" style.
84613	(Bug#31624)
84614
846152018-06-02  Eli Zaretskii  <eliz@gnu.org>
84616
84617	Documentation improvements in newcomment.el
84618
84619	* lisp/newcomment.el (uncomment-region)
84620	(uncomment-region-default): Doc fixes.  (Bug#31615)
84621
846222018-06-02  Eli Zaretskii  <eliz@gnu.org>
84623
84624	Imp[rove documentation of 'with-silent-modifications'
84625
84626	* doc/lispref/buffers.texi (Buffer Modification): Document
84627	'with-silent-modifications'.  (Bug#31613)
84628	* doc/lispref/text.texi (Changing Properties): Add a
84629	cross-reference to "Buffer Modification".  Improve wording.
84630
846312018-06-02  Eli Zaretskii  <eliz@gnu.org>
84632
84633	Fix decoding of directories when "~" includes non-ASCII chars
84634
84635	* src/fileio.c (Fexpand_file_name): Don't build multibyte strings
84636	from unibyte non-ASCII strings when NAME and DEFAULT_DIRECTORY
84637	have different multibyteness, as this adds bytes to the byte
84638	sequence, and in some situations, e.g., when the home directory
84639	includes non-ASCII characters, can fail file APIs.  (Bug#30755)
84640
84641	* lisp/startup.el (normal-top-level): Make sure default-directory
84642	is set to a multibyte string when decoded on MS-Windows.
84643
84644	(cherry picked from commit 3aab8626ba5080bb04d0fdae52d99c850a842a52)
84645
846462018-06-02  Eli Zaretskii  <eliz@gnu.org>
84647
84648	Don't remove highlight of misspelled word on pdict save
84649
84650	* lisp/textmodes/ispell.el (ispell-pdict-save): Don't restart
84651	flyspell-mode, as bug#11963, which this was supposed to fix, is
84652	fixed better by ispell-command-loop, when the user types 'i' or
84653	'a'.  Restarting Flyspell mode when the personal dictionary is
84654	saved caused bug#31372 as side effect.
84655	(ispell-command-loop): Test 'flyspell-mode', not whether
84656	flyspell-unhighlight-at is fboundp, to determine whether Flyspell
84657	mode is turned on in the current buffer.
84658	(flyspell-unhighlight-at): Add declare-function form for it.
84659
84660	(cherry picked from commit 91e582a31ada28fab5ae55bdbf959a9d30796587)
84661
846622018-06-02  Ari Roponen  <ari.roponen@gmail.com>
84663
84664	Fix some problems in the Cairo build
84665
84666	* src/xterm.c (x_begin_cr_clip): Create image surface.
84667	(x_update_end) [USE_CAIRO]: Remove GTK3-specific code.
84668	(x_scroll_run) [USE_CAIRO]: Implement scrolling.
84669	* src/image.c (lookup_rgb_color) [USE_CAIRO]: Support Cairo.
84670	(jpeg_load_body) [USE_CAIRO]: Support Cairo.  Use USE_CAIRO
84671	instead of CAIRO for #ifdef's.
84672	(imagemagick_load_image) [USE_CAIRO]: Support Cairo.
84673	(Bug#31288)
84674
84675	(cherry picked from commit 2d0eff42b8f1122e00f948759ed01a3be1a8c3fc)
84676
846772018-06-02  Eli Zaretskii  <eliz@gnu.org>
84678
84679	Avoid infloops in font_open_entity
84680
84681	* src/font.c (font_open_entity): Fail after 15 iterations through
84682	the loop that looks for a font whose average_width and height are
84683	both positive.  This avoids infinite loops for fonts that, e.g.,
84684	report average_width of zero for any possible size we try.
84685	(Bug#31316)
84686
84687	(cherry picked from commit e2879c1f837059335af89022b2a9ac9bc861e96d)
84688
846892018-06-02  Eli Zaretskii  <eliz@gnu.org>
84690
84691	Fix encoding of characters when using GB18030 fonts
84692
84693	* lisp/international/fontset.el (font-encoding-alist): Fix the
84694	GB18030 entry to encode characters correctly when passing them to
84695	the xfont back-end.  (Bug#31315)  See also
84696	http://lists.gnu.org/archive/html/emacs-devel/2008-01/msg00754.html.
84697
84698	(cherry picked from commit bbe2cadc544e63e9378350621887f8fb9bbcc236)
84699
847002018-06-02  Eli Zaretskii  <eliz@gnu.org>
84701
84702	Fix C-p and C-n when wrap-prefix is too wide
84703
84704	* src/xdisp.c (move_it_in_display_line_to): Avoid looping in
84705	previous/next-line when wrap-prefix is set to a too-wide
84706	stretch of whitespace.  (Bug#30432)
84707
84708	(cherry picked from commit 842b3d7412eaed6b2c9f90c3361abb4932ec0b1d)
84709
847102018-06-02  Eli Zaretskii  <eliz@gnu.org>
84711
84712	Avoid redisplay problems with too wide wrap-prefix
84713
84714	* src/xdisp.c (display_line): Avoid looping in redisplay when
84715	wrap-prefix is set to a too-wide stretch of whitespace.
84716	(Bug#30432)
84717
84718	(cherry picked from commit 2a1fe08307402d6217d073f8ab7737750d253dd4)
84719
847202018-06-02  Eli Zaretskii  <eliz@gnu.org>
84721
84722	Fix 'posn-at-point' when line numbers are displayed
84723
84724	* src/xdisp.c (pos_visible_p): For the leftmost glyph, adjust the X
84725	coordinate due to line-number display.  (Bug#30834)
84726
84727	(cherry picked from commit 4a20174d7949028f66b18a92a75d6b74194242a8)
84728
847292018-06-02  Eli Zaretskii  <eliz@gnu.org>
84730
84731	Another followup to fixing 'window-text-pixel-width'
84732
84733	* src/xdisp.c (Fwindow_text_pixel_size): Adjust the return value
84734	when we stop one buffer position short of TO.  (Bug#30746)
84735
84736	(cherry picked from commit 33cba5405c724566673cf023513bfb1faa963bea)
84737
847382018-06-02  Eli Zaretskii  <eliz@gnu.org>
84739
84740	Fix mouse-set-point when line numbers are displayed
84741
84742	* src/xdisp.c (move_it_to): Initialize the line_number_produced_p
84743	flag before iterating on a new line.  (Bug#30818)
84744
84745	(cherry picked from commit 5c585b8b994aad4e6844f8eed80bdfbb396e91bf)
84746
847472018-06-02  Eli Zaretskii  <eliz@gnu.org>
84748
84749	* src/xdisp.c (Fwindow_text_pixel_size): Fix last change.
84750
84751	(cherry picked from commit 06911714ef66ea81380b1eda75a9f7cfbc9e0b65)
84752
847532018-06-02  Eli Zaretskii  <eliz@gnu.org>
84754
84755	Fix 'window-text-pixel-size' when display properties are around
84756
84757	* src/xdisp.c (Fwindow_text_pixel_size): Correct the result when
84758	there's a display property at the  TO position, and the call to
84759	move_it_to overshoots.  (Bug#30746)
84760
84761	(cherry picked from commit 50e2c0fb5180a757d8d533518f68837ffe5909be)
84762
847632018-06-02  Eli Zaretskii  <eliz@gnu.org>
84764
84765	Fix display of TABs in hscrolled windows with line numbers
84766
84767	* src/dispextern.h (struct it): New members tab_offset and
84768	line_number_produced_p.
84769	* src/xdisp.c (display_line): Don't set row->x to a negative value
84770	if line numbers are being displayed.  (Bug#30582)
84771	Reset the line_number_produced_p flag before laying out the glyph
84772	row.
84773	(x_produce_glyphs): Use the line_number_produced_p flag to decide
84774	whether to offset the X coordinate due to line-number display.
84775	Use the tab_offset member to restore the original TAB width for
84776	alignment purposes.
84777	(move_it_in_display_line_to): Don't produce line numbers when moving
84778	in hscrolled window to the left of first_visible_x.
84779	(maybe_produce_line_number): Set the line_number_produced_p flag.
84780	(Bug#30584)
84781	* src/term.c (produce_glyphs): Correct TAB width only when
84782	line_number_produced_p flag is set.
84783
84784	(cherry picked from commit 1ac190553886ff20817d3dd218464e2fc6f9e42a)
84785
847862018-06-02  Matthias Dahl  <matthias.dahl@binary-island.eu>
84787
84788	Fix wait_reading_process_output wait_proc hang
84789
84790	* src/process.c (read_process_output): Track bytes read from
84791	a process.
84792	(wait_reading_process_output): If called recursively through
84793	timers and/or process filters via accept-process-output, it is
84794	possible that the output of wait_proc has already been read by
84795	one of those recursive calls, leaving the original call hanging
84796	forever if no further output arrives through that fd and no
84797	timeout has been set.  Fix that by using the process read
84798	accounting to keep track of how many bytes have been read and
84799	use that as a condition to break out of the infinite loop and
84800	return to the caller as well as to calculate the proper return
84801	value (if a wait_proc is given that is).
84802
84803	* src/process.h (struct Lisp_Process): Add nbytes_read to track
84804	bytes read from a process.
84805
84806	(cherry picked from commit 4ba32858d61eee16f17b51aca01c15211a0912f8)
84807
848082018-06-02  Eli Zaretskii  <eliz@gnu.org>
84809
84810	Fix posn-at-point in Flycheck buffers
84811
84812	* src/dispnew.c (buffer_posn_from_coords): Improve commentary.
84813
84814	* src/xdisp.c (move_it_in_display_line_to): Don't exit the loop
84815	under truncate-lines if the glyph at TO_CHARPOS was not yet
84816	produced.  This avoids bailing out too early when we are at
84817	TO_CHARPOS, but didn't yet produce glyphs for that buffer
84818	position, because the last call to PRODUCE_GLYPHS at this position
84819	was for an object other than the buffer.  For further details, see
84820	http://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00537.html.
84821
84822	(cherry picked from commit c0154ac7c3423f68d8f3a2e85a756c9759219039)
84823
848242018-06-02  Martin Rudalics  <rudalics@gmx.at>
84825
84826	* etc/PROBLEMS: Document stickyness problem with FVWM (Bug#31650)
84827
848282018-06-01  Eli Zaretskii  <eliz@gnu.org>
84829
84830	Update Emacs Lisp Intro to match current behavior
84831
84832	* doc/lispintro/emacs-lisp-intro.texi (Wrong Type of Argument)
84833	(debug, debug-on-entry, Void Function, Void Variable): Update the
84834	*Backtrace* buffer display to current Emacs.  (Bug#31654)
84835
848362018-06-01  Robert Pluim  <rpluim@gmail.com>
84837
84838	Fix previous commit
84839
84840	* doc/emacs/files.texi (Interlocking): Two spaces at end of sentence
84841
848422018-06-01  Ville Skyttä  <ville.skytta@iki.fi>  (tiny change)
84843
84844	Fix typos in several manuals (Bug#31610)
84845
848462018-06-01  Robert Pluim  <rpluim@gmail.com>
84847
84848	Add detailed documentation about lock files
84849
84850	* doc/emacs/files.texi (Interlocking): Point user at detailed
84851	file locking description in lisp reference manual.  Add index
84852	entry for '.#' to improve disoverability of information about locking.
84853
84854	* doc/lispref/files.texi (File Locks): Describe in detail what
84855	the form of the lock file is.  Add index entry for '.#' to
84856	improve disoverability of information about locking.
84857
84858	* src/filelock.c (create-lockfiles): Add cross reference to
84859	file locking in user manual and to 'lock-buffer'.  Add string
84860	'.#' to help users find the doc string.
84861
848622018-06-01  Eli Zaretskii  <eliz@gnu.org>
84863
84864	Add commentary for subtle aspect of frame.el
84865
84866	* lisp/frame.el: Explain why we use symbol-function when adding
84867	watchers for certain variables that need to trigger redisplay.
84868
848692018-06-01  Eli Zaretskii  <eliz@gnu.org>
84870
84871	Improve documentation of 'directory-files-and-attributes'
84872
84873	* doc/lispref/files.texi (Contents of Directories): Fix inaccurate
84874	description of the return value of directory-files-and-attributes.
84875
84876	* src/dired.c (Fdirectory_files_and_attributes): Describe the
84877	function's value in more detail.
84878
848792018-05-30  Katsumi Yamaoka  <yamaoka@jpl.org>
84880
84881	* lisp/gnus/message.el (message-remove-header): Don't remove things
84882	not looking like header (bug#31651).
84883
848842018-05-30  Eli Zaretskii  <eliz@gnu.org>
84885
84886	Adapt hexl-mode to native line-number display
84887
84888	* lisp/hexl.el (hexl-mode-ruler): When display-line-numbers is in
84889	effect, adjust offsets and columns to account for the line-number
84890	display.  (Bug#31595)
84891
848922018-05-30  Michael Albinus  <michael.albinus@gmx.de>
84893
84894	Fix example in Tramp manual
84895
84896	* doc/misc/tramp.texi (Frequently Asked Questions): Fix wording
84897	for the zsh example.
84898
848992018-05-29  Robert Pluim  <rpluim@gmail.com>
84900
84901	Handle case where Xft is found but not XRender
84902
84903	* configure.ac (XFT_LIBS): Ensure that HAVE_XFT is no if
84904	XRender is not found.  (Bug#31634)
84905
849062018-05-29  Michael Albinus  <michael.albinus@gmx.de>
84907
84908	* doc/misc/tramp.texi (Frequently Asked Questions): Adapt zsh example.
84909
849102018-05-29  Damien Cassou  <damien@cassou.me>
84911
84912	Improve read-multiple-choice docstring (Bug#31628)
84913
84914	* lisp/emacs-lisp/rmc.el (read-multiple-choice): Improve docstring.
84915
849162018-05-29  Michael Albinus  <michael.albinus@gmx.de>
84917
84918	* doc/misc/tramp.texi (All): Use @code instead of @option for user options.
84919
849202018-05-29  Michael Albinus  <michael.albinus@gmx.de>
84921
84922	Fix Bug#31605
84923
84924	* doc/misc/tramp.texi (All): Add @vindex entries for
84925	environment variables.
84926	(Remote shell setup): New items `tramp-terminal-type' and
84927	"Determining a Tramp session".
84928	(Frequently Asked Questions): Adapt zsh example.  (Bug#31605)
84929
849302018-05-29  Michael Albinus  <michael.albinus@gmx.de>
84931
84932	Sync with Tramp 2.3.4-pre
84933
84934	* doc/misc/trampver.texi: Change version to "2.3.4-pre
84935
84936	* lisp/net/tramp.el (tramp-mode, tramp-verbose)
84937	(tramp-backup-directory-alist, tramp-auto-save-directory)
84938	(tramp-encoding-shell, tramp-encoding-command-switch)
84939	(tramp-encoding-command-interactive, tramp-default-method)
84940	(tramp-default-method-alist, tramp-default-user)
84941	(tramp-default-user-alist, tramp-default-host)
84942	(tramp-default-host-alist, tramp-default-proxies-alist)
84943	(tramp-save-ad-hoc-proxies, tramp-restricted-shell-hosts-alist)
84944	(tramp-local-end-of-line, tramp-rsh-end-of-line)
84945	(tramp-login-prompt-regexp, tramp-shell-prompt-pattern)
84946	(tramp-password-prompt-regexp, tramp-wrong-passwd-regexp)
84947	(tramp-yesno-prompt-regexp, tramp-yn-prompt-regexp)
84948	(tramp-terminal-prompt-regexp)
84949	(tramp-operation-not-permitted-regexp, tramp-copy-failed-regexp)
84950	(tramp-process-alive-regexp, tramp-chunksize)
84951	(tramp-process-connection-type, tramp-connection-timeout)
84952	(tramp-connection-min-time-diff)
84953	(tramp-completion-reread-directory-timeout):
84954	* lisp/net/tramp-adb.el (tramp-adb-program)
84955	(tramp-adb-connect-if-not-connected, tramp-adb-prompt):
84956	* lisp/net/tramp-cache.el (tramp-connection-properties)
84957	(tramp-persistency-file-name):
84958	* lisp/net/tramp-gvfs.el (tramp-gvfs-methods)
84959	(tramp-gvfs-zeroconf-domain, tramp-bluez-discover-devices-timeout):
84960	* lisp/net/tramp-sh.el (tramp-inline-compress-start-size)
84961	(tramp-copy-size-limit, tramp-terminal-type)
84962	(tramp-histfile-override, tramp-use-ssh-controlmaster-options)
84963	(tramp-remote-path, tramp-remote-process-environment)
84964	(tramp-sh-extra-args):
84965	* lisp/net/tramp-smb.el (tramp-smb-program, tramp-smb-acl-program)
84966	(tramp-smb-conf, tramp-smb-winexe-program)
84967	(tramp-smb-winexe-shell-command)
84968	(tramp-smb-winexe-shell-command-switch):
84969	Dont't require 'tramp.  (Bug#31558)
84970
84971	* lisp/net/tramp.el (tramp-accept-process-output):
84972	* lisp/net/tramp-adb.el (tramp-adb-handle-start-file-process):
84973	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
84974	(tramp-sh-handle-start-file-process):
84975	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
84976	(tramp-smb-handle-file-acl, tramp-smb-handle-process-file)
84977	(tramp-smb-handle-set-file-acl)
84978	(tramp-smb-handle-start-file-process): Suppress timers.
84979
84980	* lisp/net/tramp-adb.el (tramp-adb-handle-write-region):
84981	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
84982	* lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
84983	* lisp/net/tramp-smb.el (tramp-smb-handle-write-region):
84984	Write proper message.
84985
84986	* lisp/net/tramp-cmds.el (tramp-change-syntax):
84987	Use `customize-set-variable'.
84988
84989	* lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
84990	Ensure proper EOL handling for Darwin.
84991	(tramp-find-inline-compress): Improve command quoting for w32.
84992	Reported by Chris Zheng <chriszheng99@gmail.com>.
84993	(tramp-open-connection-setup-interactive-shell): Wrap both echo
84994	calls in parentheses, in order to avoid double prompt.
84995
84996	* lisp/net/tramp-smb.el (tramp-smb-errors):
84997	Add "NT_STATUS_RESOURCE_NAME_NOT_FOUND".
84998
84999	* lisp/net/tramp.el (tramp-default-user-alist)
85000	(tramp-default-host-alist): Fix docstring.
85001	(tramp-dissect-file-name): Adapt docstring.  (Bug#30904)
85002	(tramp-make-tramp-file-name): Check, that method is
85003	not empty.  (Bug#30038)
85004	(tramp-message-show-message): Change default.
85005
85006	* lisp/net/trampver.el: Change version to "2.3.4-pre".
85007
85008	* test/lisp/net/tramp-tests.el (ert-x): Require it.
85009	(tramp-test10-write-region): Extend test.
85010	(tramp--test-emacs27-p, tramp--test-windows-nt): New defuns.
85011	(tramp-test11-copy-file, tramp-test12-rename-file)
85012	(tramp-test21-file-links, tramp-test24-file-acl)
85013	(tramp-test25-file-selinux, tramp--test-check-files): Use them.
85014	(tramp-test21-file-links): Do not call `make-symbolic-link' on w32.
85015	Fix file name quoting test.
85016	(tramp-test32-environment-variables-and-port-numbers):
85017	Adapt check for systems which do not support "echo -n".  (Bug#29712)
85018	(tramp-test36-find-backup-file-name): Call also
85019	`convert-standard-filename' due to w32.
85020	(tramp-test41-asynchronous-requests):
85021	Use $REMOTE_PARALLEL_PROCESSES.  Flush cache prior file operations.
85022	(tramp-test42-auto-load, tramp-test42-delay-load)
85023	(tramp-test42-recursive-load, tramp-test42-remote-load-path):
85024	Quote command due to w32.
85025
850262018-05-28  Eli Zaretskii  <eliz@gnu.org>
85027
85028	Bump Emacs version to 26.1.50
85029
85030	* msdos/sed2v2.inp:
85031	* nt/README.W32:
85032	* configure.ac:
85033	* README: Bump Emacs version to 26.1.50.
85034
850352018-05-27  Thien-Thi Nguyen  <ttn@gnu.org>
85036
85037	Mention pcase as a fifth conditional form
85038
85039	* doc/lispref/control.texi (Conditionals): ...here,
85040	in first para, w/ xref to "Pattern-Matching Conditional".
85041
850422018-05-27  Thien-Thi Nguyen  <ttn@gnu.org>
85043
85044	Overhaul pcase documentation
85045
85046	Suggested by Drew Adams (Bug#31311).
85047
85048	* doc/lispref/control.texi (Control Structures):
85049	Add "Pattern-Matching Conditional" to menu, before "Iteration".
85050	(Conditionals): Delete menu.
85051	(Pattern matching case statement): Delete node/subsection,
85052	by actually moving, renaming, and overhauling it to...
85053	(Pattern-Matching Conditional): ...new node/section.
85054	(pcase Macro): New node/subsection.
85055	(Extending pcase): Likewise.
85056	(Backquote Patterns): Likewise.
85057	* doc/lispref/elisp.texi (Top) In @detailmenu, add
85058	"Pattern-Matching Conditional" under "Control Structures"
85059	section and delete "Conditionals" section.
85060	* lisp/emacs-lisp/pcase.el (pcase): Rewrite docstring.
85061	(pcase-defmacro \` (qpat) ...): Likewise.
85062
850632018-05-27  Thien-Thi Nguyen  <ttn@gnu.org>
85064
85065	Use EXPVAL in docstrings of patterns defined using pcase-defmacro
85066
85067	Suggested by Drew Adams (Bug#31311).
85068
85069	* lisp/emacs-lisp/cl-macs.el (cl-struct): ...here.
85070	* lisp/emacs-lisp/eieio.el (eieio): Likewise.
85071	* lisp/emacs-lisp/radix-tree.el (radix-tree-leaf): Likewise.
85072	* lisp/emacs-lisp/rx.el (rx): Likewise.
85073
850742018-05-27  Thien-Thi Nguyen  <ttn@gnu.org>
85075
85076	Introduce EXPVAL for pcase, pcase-defmacro docstrings
85077
85078	Suggested by Drew Adams (Bug#31311).
85079
85080	* lisp/emacs-lisp/pcase.el (pcase): Use EXPVAL in
85081	docstring to stand for the result of evaluating EXP.
85082	(pcase-defmacro): Add (fn ...) form in docstring
85083	that includes [DOC], and the EXPVAL convention.
85084
850852018-05-27  Thien-Thi Nguyen  <ttn@gnu.org>
85086
85087	Ensure pcase doc shows `QPAT first among extensions
85088
85089	* lisp/emacs-lisp/pcase.el (pcase--make-docstring):
85090	Split extensions display into two phases, collection
85091	and display, separated by a reordering step that
85092	ensures backquote is the first.
85093
850942018-05-25  Nicolas Petton  <nicolas@petton.fr>
85095
85096	* etc/HISTORY: Update for Emacs 26.1 release.
85097
85098	* etc/AUTHORS: Update.
85099
851002018-05-25  Noam Postavsky  <npostavs@gmail.com>
85101
85102	Note caveat for backward regexp searching in docstring (Bug#31584)
85103
85104	* src/search.c (Fre_search_backward): Emphasize that backwards
85105	searches may give shorter than expected matches.
85106	* doc/lispref/searching.texi (Regexp Search): Add an anchor for
85107	re-search-backward to reference.
85108
851092018-05-25  Eli Zaretskii  <eliz@gnu.org>
85110
85111	Update backtrace in Emacs Lisp Intro
85112
85113	* doc/lispintro/emacs-lisp-intro.texi (Making Errors): Update the
85114	backtrace to match Emacs 26.  (Bug#31589)
85115
851162018-05-24  Roland Winkler  <winkler@gnu.org>
85117
85118	Move window-point in bibtex-search-entry
85119
85120	* lisp/textmodes/bibtex.el (bibtex-search-entry): Move window-point
85121	to record found.
85122
851232018-05-24  Eli Zaretskii  <eliz@gnu.org>
85124
85125	More fixes of Intro to Emacs Lisp
85126
85127	* doc/lispintro/emacs-lisp-intro.texi (Finding More): Tell the
85128	reader how to invoke 'M-.' without a tags table.  Add a
85129	cross-reference to the Emacs manual for when a tags table does
85130	need to be created.
85131	(append save-excursion): Rephrase a confusing sentence.
85132	(Bug#31578)
85133
851342018-05-24  Eli Zaretskii  <eliz@gnu.org>
85135
85136	Add a footnote to Emacs Lisp Intro
85137
85138	* doc/lispintro/emacs-lisp-intro.texi (Run a Program): Describe
85139	the detailed output of integer value evaluation in a footnote, to
85140	prevent confusion.  (Bug#31579)
85141
851422018-05-24  Eli Zaretskii  <eliz@gnu.org>
85143
85144	* lisp/help.el (with-help-window): Doc fix.  (Bug#31574)
85145
851462018-05-23  Eli Zaretskii  <eliz@gnu.org>
85147
85148	Fix some cross-references in emacs-lisp-intro.texi
85149
85150	* doc/lispintro/emacs-lisp-intro.texi (List Processing)
85151	(Determining the Element, graph-body-print): Fix cross-references
85152	to subsections that don't exist in the printed version of the
85153	manual.  (Bug#31567)
85154
851552018-05-23  Eli Zaretskii  <eliz@gnu.org>
85156
85157	Minor copyedits in Emacs manual in macos.texi
85158
85159	* doc/emacs/macos.texi (Mac / GNUstep Basics)
85160	(Mac / GNUstep Events): Fix markup and capitalization.
85161	(Bug#31568)
85162
851632018-05-23  Noam Postavsky  <npostavs@gmail.com>
85164
85165	Clarify when to use advice-add vs add-function
85166
85167	* lisp/emacs-lisp/nadvice.el (add-function): Note in docstring that
85168	advice-add should be used for named functions.
85169
851702018-05-22  Eli Zaretskii  <eliz@gnu.org>
85171
85172	Minor formatting tweak in the Emacs manual
85173
85174	* doc/emacs/custom.texi (Directory Variables): Don't have 2
85175	footnotes back to back, it looks bad in HTML.  (Bug#31555)
85176
851772018-05-22  Eli Zaretskii  <eliz@gnu.org>
85178
85179	Update comments in Intro to Emacs Lisp
85180
85181	* doc/lispintro/emacs-lisp-intro.texi: Explain in the comments
85182	what are roman page numbers in Preface about.  (Bug#31541)
85183
851842018-05-21  Noam Postavsky  <npostavs@gmail.com>
85185
85186	* etc/NEWS: Mention change in `edebug-prin1-to-string'.
85187
851882018-05-21  Eli Zaretskii  <eliz@gnu.org>
85189
85190	Another attempt to fix sql.el
85191
85192	* lisp/progmodes/sql.el (sql-product-interactive): Fix calculation
85193	of the SQL buffer name.  (Bug#31446)
85194
851952018-05-21  Eli Zaretskii  <eliz@gnu.org>
85196
85197	Update binding of 'M-.' in Intro to Emacs Lisp
85198
85199	* doc/lispintro/emacs-lisp-intro.texi (On Reading this Text)
85200	(Finding More, Buffer Related Review, Buffer Exercises)
85201	(Find a File, Conclusion): 'M-.' is now bound to
85202	'xref-find-definitions'.  (Bug#31542)
85203
852042018-05-21  Eli Zaretskii  <eliz@gnu.org>
85205
85206	Fix a typo in last change in sql.el
85207
85208	* lisp/progmodes/sql.el (sql-product-interactive): Use 'null',
85209	not 'zerop'.  (Bug#31446)
85210
852112018-05-20  Eli Zaretskii  <eliz@gnu.org>
85212
85213	Fix capitalization of mail headers
85214
85215	* doc/emacs/sending.texi (Mail Format, Mail Headers)
85216	(Mail Aliases, Header Editing): Use consistent capitalization of
85217	CC, BCC, and FCC.  (Bug#31532)
85218
852192018-05-20  Eli Zaretskii  <eliz@gnu.org>
85220
85221	Fix buffer names in sql.el
85222
85223	* lisp/progmodes/sql.el (sql-product-interactive): Fix the way the
85224	buffer name is determined by prefix arg.  (Bug#31446)
85225
852262018-05-20  Eli Zaretskii  <eliz@gnu.org>
85227
85228	Minor fixes in the Emacs manual
85229
85230	* doc/emacs/misc.texi (Gnus Group Buffer): Fix a typo.  (Bug#31534)
85231	(Single Shell): Rephrase an unclear sentence.  (Bug#31535)
85232	(Remote Host): Use @command where appropriate.  (Bug#31536)
85233
852342018-05-19  Eli Zaretskii  <eliz@gnu.org>
85235
85236	Fix a typo in rmail.texi
85237
85238	* doc/emacs/rmail.texi (Rmail Summary Edit): Add markup to 'nil'.
85239	(Bug#31533)
85240
852412018-05-18  Paul Eggert  <eggert@cs.ucla.edu>
85242
85243	* etc/PROBLEMS: Document Bug#31305.
85244
852452018-05-18  Lars Ingebrigtsen  <larsi@gnus.org>
85246
85247	(gnus-blocked-images): Clarify privacy implications
85248
85249	* lisp/gnus/gnus-art.el (gnus-blocked-images): Clarify the privacy
85250	implication of altering the value of this variable.
85251
85252	(cherry picked from commit f4d9fd3dd45f767eca33fbf1beee40da790fa74e)
85253
852542018-05-18  Eli Zaretskii  <eliz@gnu.org>
85255
85256	Fix a typo in describing input methods
85257
85258	* lisp/help-mode.el (help-make-xrefs): Fix a typo.  (Bug#31448)
85259
852602018-05-14  Eli Zaretskii  <eliz@gnu.org>
85261
85262	Clarify the mode-line indicators in CC Mode
85263
85264	* doc/emacs/programs.texi (Electric C): Explain '*' and '/' in the
85265	CC Mode mode-line.  (Bug31445)
85266
852672018-05-12  João Távora  <joaotavora@gmail.com>
85268
85269	Fix filesystem littering by Flymake's legacy backend
85270
85271	The Flymake legacy "proc" backend, which is active by default will try
85272	to syntax-check foo.c/foo.cpp and many other types of files, but on
85273	failing to find a suitable Makefile target, will fail.  There's
85274	nothing wrong with that except that it used to leave behind the
85275	foo_flymake.c and foo_flymake.cpp auxiliary files behind, littering
85276	the filesystem.
85277
85278	* lisp/progmodes/flymake-proc.el (flymake-proc-legacy-flymake):
85279	Call init-function inside of the unwind-protect.
85280
852812018-05-12  Paul Eggert  <eggert@cs.ucla.edu>
85282
85283	* doc/emacs/help.texi: Fix paren typo.
85284
852852018-05-11  Eli Zaretskii  <eliz@gnu.org>
85286
85287	More minor changes in shell-related nodes of Emacs manual
85288
85289	* doc/emacs/misc.texi (Interactive Shell): Clarify how the window
85290	that displays "*shell*" is selected.
85291	(Shell Prompts): Fix a typo.  Reported by Jorge
85292	<jorge+list@disroot.org> in emacs-manual-bugs.
85293
852942018-05-11  Eli Zaretskii  <eliz@gnu.org>
85295
85296	Fix inaccuracies in "Shell Ring" node of Emacs manual
85297
85298	* doc/emacs/misc.texi (Shell Ring): Don't mention 'M-s' and don't
85299	insist on Shell history commands being "jsut like" similar
85300	commands that operate on minibuffer history.  Reported by Jorge
85301	<jorge+list@disroot.org> in emacs-manual-bugs.
85302
853032018-05-11  Eli Zaretskii  <eliz@gnu.org>
85304
85305	Improve documentation of kmacro commands and variables.
85306
85307	* lisp/kmacro.el (kmacro-start-macro-or-insert-counter)
85308	(kmacro-counter, kmacro-set-format, kmacro-set-counter)
85309	(kmacro-add-counter, kmacro-counter-format)
85310	(kmacro-insert-counter): Clarify and improve the doc strings.
85311	(Bug#31243)
85312
853132018-05-11  Noam Postavsky  <npostavs@gmail.com>
85314
85315	* doc/man/emacs.1.in: Document --fg-daemon and --bg-daemon.
85316
853172018-05-08  Noam Postavsky  <npostavs@gmail.com>
85318
85319	Don't check non-X frames for z order (Bug#31373)
85320
85321	* src/xfns.c (x_frame_list_z_order): Only use frames with
85322	`output_method' set to `output_x_window'.
85323
853242018-05-07  Alan Third  <alan@idiocy.org>
85325
85326	Check NSWindow is actually a frame
85327
85328	* src/nsfns.m (Fns_frame_list_z_order): Check NSWindow is an instance
85329	of EmacsView before treating it as one.
85330
853312018-05-06  Xu Chunyang  <mail@xuchunyang.me>
85332
85333	Fix gud-statement for pdb
85334
85335	* lisp/progmodes/gud.el (pdb): Fix the gud-print implementation.
85336	(Bug#31363)
85337
853382018-05-04  Eli Zaretskii  <eliz@gnu.org>
85339
85340	Document 'custom-group'
85341
85342	* doc/lispref/customize.texi (Group Definitions): Document the
85343	'custom-group' property.
85344
853452018-05-04  Eli Zaretskii  <eliz@gnu.org>
85346
85347	A minor addition to etc/DEBUG
85348
85349	* etc/DEBUG: Add a note for macOS users who get error messages
85350	when trying to run GDB.
85351
853522018-05-04  Daniel Pittman  <slippycheeze@google.com>  (tiny change)
85353
85354	Avoid errors in ispell.el when Enchant returns empty extra chars
85355
85356	* lisp/textmodes/ispell.el (ispell--get-extra-word-characters):
85357	Handle the case of empty extra characters returned by the
85358	Enchant '-lsmod' command. (Bug#31344)
85359
853602018-05-04  Eli Zaretskii  <eliz@gnu.org>
85361
85362	Make 'ispell-initialize-spellchecker-hook' work again
85363
85364	* lisp/textmodes/ispell.el (ispell-base-dicts-override-alist):
85365	Defvar it to allow dynamic binding.  (Bug#31341)
85366
853672018-05-04  Noam Postavsky  <npostavs@gmail.com>
85368
85369	Handle selected_window change in prepare_menu_bars (Bug#31312)
85370
85371	* src/xdisp.c (redisplay_internal): Check selected_window after
85372	calling prepare_menu_bars, since it can call lisp hooks.
85373
853742018-05-03  Eli Zaretskii  <eliz@gnu.org>
85375
85376	Fix report-emacs-bug via mailclient on MS-Windows
85377
85378	* lisp/net/browse-url.el (browse-url-default-windows-browser):
85379	On MS-Windows, call url-unhex-string only for file:// URLs.
85380	(Bug#31351)
85381
853822018-05-02  Paul Eggert  <eggert@cs.ucla.edu>
85383
85384	Port collation tests to glibc 2.27
85385
85386	* test/src/fns-tests.el (fns-tests-collate-strings)
85387	(fns-tests-collate-sort): Don’t make unportable assumptions
85388	about how en_US.UTF-8 collation works.  These assumptions
85389	are not true on Fedora 28, which ships with glibc 2.27.
85390
853912018-05-01  Paul Eggert  <eggert@cs.ucla.edu>
85392
85393	Port --enable-gcc-warnings to GCC 8
85394
85395	Backport from master.
85396	* lib-src/emacsclient.c (fail):
85397	Do not dereference a null pointer.
85398	* src/frame.c (delete_frame):
85399	Add a decl with UNINIT to work around GCC bug 85563.
85400	* src/menu.h (finish_menu_items):
85401	Do not use attribute const.
85402	* src/regex.c (analyze_first): Use FALLTHROUGH, not a comment.
85403
854042018-04-30  Paul Eggert  <eggert@cs.ucla.edu>
85405
85406	Advise CFLAGS= operand, not in environment, when configuring
85407
85408	Backport from master.
85409
854102018-04-28  Eli Zaretskii  <eliz@gnu.org>
85411
85412	Update the Emacs FAQ
85413
85414	* doc/misc/efaq.texi (Latest version of Emacs): Update versions.
85415	(New in Emacs 26): New node.
85416
85417	* admin/release-process: Mention the FAQ update as part of the
85418	release.
85419
854202018-04-28  Eli Zaretskii  <eliz@gnu.org>
85421
85422	* etc/DEBUG: Minor copyedits.
85423
854242018-04-26  Alan Third  <alan@idiocy.org>
85425
85426	Clarify wording of NS drag n drop documentation
85427
85428	* doc/emacs/macos.texi (Mac / GNUstep Events): Clarify wording of
85429	ns-drag-n-drop description.
85430
854312018-04-25  Basil L. Contovounesios  <contovob@tcd.ie>
85432
85433	Improve kill-related documentation (bug#31209)
85434
85435	* doc/lispref/text.texi (Low-Level Kill Ring): Fix typo under
85436	current-kill.  Mention interprogram-paste-function under kill-new
85437	and kill-append.
85438	* lisp/simple.el (save-interprogram-paste-before-kill, kill-new)
85439	(kill-append-merge-undo, kill-append): Touch-up docstrings.
85440
854412018-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
85442
85443	* lisp/simple.el (region-extract-function): Don't hide the 'nil' case.
85444
854452018-04-22  Karl Otness  <karl@karlotness.com>  (tiny change)
85446
85447	Fix pre- and post-command-hook errors in term.el
85448
85449	Before this patch, after the terminal process dies the command
85450	hooks added in term-mode's char mode would produce errors.
85451	This fix removes these hooks when the process dies.
85452	* lisp/term.el (term-handle-exit): Remove pre-command-hook and
85453	post-command-hook because the process is dead.  (Bug#31236)
85454
854552018-04-22  Charles A. Roelli  <charles@aurox.ch>
85456
85457	* doc/lispref/display.texi (Glyphless Chars): Fix grammar.
85458
854592018-04-21  Alan Third  <alan@idiocy.org>
85460
85461	Fix macOS drag n drop event documentation
85462
85463	* doc/emacs/macos.texi (Mac / GNUstep Customization): Remove
85464	references to color panel.
85465	(Mac / GNUstep Events): Remove ns-drag-file, and add ns-drag-n-drop.
85466
854672018-04-20  Eli Zaretskii  <eliz@gnu.org>
85468
85469	Update the documentation of 'perform-replace'
85470
85471	* doc/lispref/searching.texi (Search and Replace): Update the
85472	documentation of 'perform-replace'.
85473
854742018-04-20  Martin Rudalics  <rudalics@gmx.at>
85475
85476	* etc/NEWS: Another fix for the last change (noted by Juri Linkov)
85477
854782018-04-19  Eli Zaretskii  <eliz@gnu.org>
85479
85480	Fix use of @key in Texinfo manuals
85481
85482	* doc/misc/efaq-w32.texi (Location of init file):
85483	* doc/misc/org.texi (Editing source code, Export settings)
85484	(Closing items, Drawers, Structure editing):
85485	* doc/misc/gnus.texi (Spam and Ham Processors, Terminology):
85486	* doc/misc/calc.texi (Keypad Functions Menu, Keypad Binary Menu)
85487	(Keypad Vectors Menu, Keypad Main Menu, Basic Arithmetic)
85488	(Symbolic Mode):
85489	* doc/misc/sc.texi (Electric References):
85490	* doc/misc/info.texi (Help-^L):
85491	* doc/misc/reftex.texi (Reference Styles):
85492	* doc/misc/idlwave.texi (Troubleshooting, Examining Variables)
85493	(Lesson III---User Catalog, Using the Shell):
85494	* doc/misc/eshell.texi (Bugs and ideas):
85495	* doc/misc/ada-mode.texi (Automatic Casing):
85496	* doc/misc/ediff.texi (Selective Browsing):
85497	* doc/misc/vip.texi (Customizing Constants):
85498	* doc/misc/pcl-cvs.texi (Selected files):
85499	* doc/misc/efaq.texi (Replying to the sender of a message)
85500	(Basic keys, No Meta key, Matching parentheses)
85501	(Origin of the term Emacs, Installing Texinfo documentation)
85502	(Learning how to do something, Emacs manual, Extended commands):
85503	* doc/misc/viper.texi (Rudimentary Changes):
85504	* doc/misc/tramp.texi (Frequently Asked Questions):
85505	* doc/emacs/kmacro.texi (Basic Keyboard Macro):
85506	* doc/emacs/frames.texi (Frame Commands):
85507	* doc/emacs/msdos.texi (Windows Keyboard):
85508	* doc/emacs/search.texi (Query Replace):
85509	* doc/lispintro/emacs-lisp-intro.texi (Keybindings)
85510	(Note for Novices):
85511	* doc/lispref/tips.texi (Key Binding Conventions): Fix use of
85512	@key.  For the details, see
85513	http://lists.gnu.org/archive/html/emacs-devel/2018-04/msg00390.html.
85514
855152018-04-19  Eli Zaretskii  <eliz@gnu.org>
85516
85517	Improve documentation of actual arglist
85518
85519	* doc/lispref/functions.texi (Function Documentation): Advise
85520	against using '(fn ARGLIST)' method of advertising a calling
85521	convention when the old calling convention is deprecated.
85522	(Bug#31191)
85523
855242018-04-18  Noam Postavsky  <npostavs@gmail.com>
85525
85526	Don't assume term-current-row cache is valid (Bug#31193)
85527
85528	* lisp/term.el (term-down): Call `term-current-row' instead of
85529	directly accessing the variable `term-current-row.  Following a resize
85530	of the terminal's window, `term-current-row' is reset to nil, so it is
85531	not safe to assume it is a number.
85532
855332018-04-17  Eli Zaretskii  <eliz@gnu.org>
85534
85535	Fix flyspell-auto-correct-previous-word broken by recent change
85536
85537	* lisp/textmodes/flyspell.el (flyspell-auto-correct-word): Keep
85538	flyspell-auto-correct-region also when repeatedly invoking
85539	flyspell-auto-correct-previous-word.  (Bug#31188)
85540
855412018-04-17  Eli Zaretskii  <eliz@gnu.org>
85542
85543	* test/src/lread-tests.el (lread-test-bug-31186): New test.
85544
855452018-04-17  Andreas Schwab  <schwab@suse.de>
85546
85547	Fix undefined behavior while looking for lexical-binding file
85548	variable (bug 31186).
85549
85550	* src/lread.c (lisp_file_lexically_bound_p): Reset
85551	beg_end_state before reading variable or value.
85552
855532018-04-15  Eli Zaretskii  <eliz@gnu.org>
85554
85555	Minor wording improvement in "Bookmarks"
85556
85557	* doc/emacs/regs.texi (Bookmarks): Improve wording.  Suggested by
85558	"Siraphob (Ben) Phipathananunth" <siraben@disroot.org>.
85559
855602018-04-14  Eli Zaretskii  <eliz@gnu.org>
85561
85562	Fix building etc/DOC in the MSDOS port
85563
85564	* msdos/sed1v2.inp (lisp.mk): Fix escaping in Sed commands.
85565
855662018-04-14  Eli Zaretskii  <eliz@gnu.org>
85567
85568	* lisp/select.el (gui-get-selection): Doc fix.
85569
855702018-04-13  Alan Mackenzie  <acm@muc.de>
85571
85572	Complete documentation of syntax flags by adding `c'
85573
85574	* doc/lispref/syntax.texi ("Syntax Table Internals"): Add entry for `c'
85575	as `(1 lsh 23)'.
85576
855772018-04-13  Eli Zaretskii  <eliz@gnu.org>
85578
85579	Fix typos and minor wording issues in ELisp manual
85580
85581	* doc/lispref/internals.texi (Writing Emacs Primitives):
85582	* doc/lispref/display.texi (Temporary Displays): Fix typos.
85583	* doc/lispref/text.texi (Filling, Changing Properties)
85584	(Transposition): Clarify and fix typos.
85585	* doc/lispref/positions.texi (Screen Lines): Improve wording.
85586	* doc/lispref/modes.texi (Minor Mode Conventions)
85587	(Font Lock Multiline): Fix typos.
85588	* doc/lispref/variables.texi (Dynamic Binding Tips): Fix a
85589	cross-reference.  Fix a typo.
85590	* doc/lispref/sequences.texi (Sequence Functions): Fix typos.
85591	(Bug#31143)
85592
855932018-04-13  Eli Zaretskii  <eliz@gnu.org>
85594
85595	Avoid segfault in processes of type 'pipe'
85596
85597	* src/process.c (Fmake_pipe_process): Set up the decoding and
85598	encoding buffers.  For the details, see
85599	http://lists.gnu.org/archive/html/emacs-devel/2018-04/msg00295.html.
85600
856012018-04-13  Robert Pluim  <rpluim@gmail.com>
85602
85603	Remove repetitions in documentation strings
85604
85605	* lisp/bindings.el (right-word): Remove repetition
85606	(left-word): Likewise.
85607
85608	* lisp/image-mode.el (image-mode-as-hex): Likewise.
85609
85610	* lisp/cedet/semantic/tag-ls.el (semantic-tag-similar-p): Likewise.
85611
85612	* lisp/textmodes/reftex-vars.el (reftex-view-crossref-extra): Likewise
85613
856142018-04-12  Eli Zaretskii  <eliz@gnu.org>
85615
85616	* lisp/image.el (image-load-path): Doc fix.
85617
856182018-04-09  Nicolas Petton  <nicolas@petton.fr>
85619
85620	* etc/AUTHORS: Regenerate.
85621
856222018-04-09  Charles A. Roelli  <charles@aurox.ch>
85623
85624	* lisp/files.el (kept-new-versions): Improve documentation string.
85625
856262018-04-09  Eli Zaretskii  <eliz@gnu.org>
85627
85628	Fix a minor mistake in the ELisp manual
85629
85630	* doc/lispref/files.texi (Reading from Files): Fix copy/paste
85631	mistake.  (Bug#31107)
85632
856332018-04-06  Eli Zaretskii  <eliz@gnu.org>
85634
85635	* lisp/files.el (find-file-literally): Doc fix.
85636
856372018-04-05  Eli Zaretskii  <eliz@gnu.org>
85638
85639	Fix typos in doc strings
85640
85641	* lisp/simple.el (undo-auto--boundary-timer)
85642	(undo-auto--boundary-ensure-timer): Fix typos in doc strings.
85643
856442018-04-05  Nicolas Petton  <nicolas@petton.fr>
85645
85646	Bump Emacs version to 26.1
85647
85648	* README:
85649	* configure.ac:
85650	* msdos/sed2v2.inp:
85651	* nt/README.W32: Bump Emacs version to 26.1.
85652
856532018-04-05  Stefan Monnier  <monnier@iro.umontreal.ca>
85654
85655	* lisp/emacs-lisp/inline.el: Clarify apparent typos
85656
856572018-04-04  Ted Zlatanov  <tzz@lifelogs.com>
85658
85659	Allow sexp customization type in auth-sources
85660
85661	* lisp/auth-source.el (auth-sources): Allow sexp customization type.
85662	Update the :version tag.
85663
85664	(cherry picked from commit 447da5b0d49b7aa14fa5d6969015770fdf9b9f92)
85665
856662018-04-03  Nicolas Petton  <nicolas@petton.fr>
85667
85668	* etc/NEWS: Remove temporary markup.
85669
85670	* etc/AUTHORS: Update.
85671
85672	* ChangeLog.3: Update.
85673
856742018-04-03  Michael Albinus  <michael.albinus@gmx.de>
85675
85676	Fix Bug#31022
85677
85678	* lisp/cus-start.el (temporary-file-directory): Suppress file name
85679	handlers when calling `shell-command-to-string'.  (Bug#31022)
85680
856812018-04-03  Paul Eggert  <eggert@cs.ucla.edu>
85682
85683	Update "Calendrical Calculations" cites
85684
85685	* lisp/calendar/calendar.el: Update citations to the book
85686	"Calendrical Calculations" and its predecessors.
85687
856882018-04-02  Noam Postavsky  <npostavs@gmail.com>
85689
85690	Fix term.el rendering following a window resize (Bug#30544)
85691
85692	* lisp/term.el (term-reset-size): Reset cached row and column values
85693	before changing point.
85694
856952018-04-02  Philipp Stephani  <phst@google.com>
85696
85697	* lisp/files.el (auto-save-visited-mode): Don't prompt for filenames.
85698
856992018-04-01  Philipp Stephani  <phst@google.com>
85700
85701	Quote a few backticks in docstrings.
85702
85703	* lisp/emacs-lisp/macroexp.el (macroexp-progn, macroexp-let*)
85704	(macroexp-if): Quote backtick in docstrings.
85705
857062018-04-01  Eli Zaretskii  <eliz@gnu.org>
85707
85708	Minor copyedits of completion-at-point-functions documentation
85709
85710	* lisp/minibuffer.el (completion-at-point-functions):
85711	* doc/lispref/minibuf.texi (Completion in Buffers): Fix wording
85712	and filling.
85713
85714	(cherry picked from commit a8ddd05d7d32946b892b9faaba6c9736ed2ad847)
85715
857162018-04-01  Stefan Monnier  <monnier@iro.umontreal.ca>
85717
85718	(completion-at-point-functions): Improve doc
85719
85720	(cherry picked from commit b56c56f203f8b066dd71e6ae6a254121b3ac3f08)
85721
857222018-04-01  Eli Zaretskii  <eliz@gnu.org>
85723
85724	* lisp/net/shr.el (shr-browse-url): Doc fix.  (Bug#30957)
85725
857262018-03-31  Hong Xu  <hong@topbug.net>
85727
85728	Mention `key-description' as inverse of `kbd' (Bug#30942)
85729
85730	* lisp/subr.el (kbd): Add `key-description' as inverse of `kbd' in the
85731	doc.
85732
857332018-03-31  Noam Postavsky  <npostavs@gmail.com>
85734
85735	Document return value of pcase (Bug#30425)
85736
85737	* doc/lispref/control.texi (Pattern matching case statement):
85738	* lisp/emacs-lisp/pcase.el (pcase): State that pcase returns nil if no
85739	patterns match.
85740	(pcase-exhaustive): State that an error is signaled if no patterns
85741	match.
85742
857432018-03-31  Paul Eggert  <eggert@cs.ucla.edu>
85744
85745	* doc/emacs/macos.texi: Tweak grammar and capitalization.
85746
857472018-03-31  Richard Stallman  <rms@gnu.org>
85748
85749	Distinguish free from non-free OSes
85750
857512018-03-28  Glenn Morris  <rgm@gnu.org>
85752
85753	* doc/emacs/misc.texi (Amusements): Avoid non-printing character.
85754
857552018-03-28  Glenn Morris  <rgm@gnu.org>
85756
85757	Fix xrefs in pdf Emacs manual
85758
85759	* doc/emacs/fortran-xtra.texi (ForIndent Cont, ForIndent Num)
85760	(Fortran Columns):
85761	* doc/emacs/picture-xtra.texi (Rectangles in Picture):
85762	Fix recent changes that neglected the splitting of the pdf manuals.
85763
857642018-03-28  Michael Albinus  <michael.albinus@gmx.de>
85765
85766	* doc/misc/org.texi (Installation): Fix clone commands.
85767
857682018-03-27  Rasmus  <rasmus@gmx.us>
85769
85770	Update Org to v9.1.9
85771
85772	Please note this is a bugfix release. See etc/ORG-NEWS for details.
85773
857742018-03-27  Michael Heerdegen  <michael_heerdegen@web.de>
85775
85776	De-obsolete `if-let' and `when-let'
85777
85778	For the following release it is planned to make `if-let*' and
85779	`when-let*' aliases for `if-let' and `when-let'.  For now we revert
85780	declaring `if-let' and `when-let' obsolete and tweak the docstrings.
85781
85782	* lisp/emacs-lisp/subr-x.el (if-let*, when-let*): Make docstrings
85783	refer to those of `if-let' and `when-let'.
85784	(if-let, when-let): De-obsolete.  Rewrite documentation.
85785
857862018-03-26  Glenn Morris  <rgm@gnu.org>
85787
85788	* lisp/htmlfontify.el (hfy-begin-span-handler): Doc fix.
85789
857902018-03-26  Eli Zaretskii  <eliz@gnu.org>
85791
85792	* doc/lispref/functions.texi (Defining Functions): Improve indexing.
85793
857942018-03-25  Aaron Jensen  <aaronjensen@gmail.com>
85795
85796	Fix crash after frame is freed on macOS (bug#30800)
85797
85798	* src/nsterm.m (x_free_frame_resources): Clear represented_frame.
85799	(bug#30800)
85800
858012018-03-25  Michael Albinus  <michael.albinus@gmx.de>
85802
85803	More manual editing
85804
85805	* doc/emacs/basic.texi:
85806	* doc/emacs/calendar.texi:
85807	* doc/emacs/display.texi:
85808	* doc/emacs/mini.texi:
85809	* doc/emacs/misc.texi:
85810	* doc/emacs/picture-xtra.texi:
85811	* doc/misc/info.texi: Prefer <PageDown> and <PageUp> over
85812	<next> and <prior>.  Add missing @kindex entries.
85813
85814	* doc/emacs/custom.texi (Function Keys): Fix and add missing
85815	key symbols.
85816
858172018-03-25  Michael Albinus  <michael.albinus@gmx.de>
85818
85819	Minor manual changes changes
85820
85821	* doc/emacs/misc.texi (FFAP): Complete commands.
85822	(Amusements): Add some @cindex entries.  Add "M-x butterfly".
85823
858242018-03-24  Glenn Morris  <rgm@gnu.org>
85825
85826	* lisp/calculator.el (calculator-paste-decimals): Add version.
85827
858282018-03-23  Eli Zaretskii  <eliz@gnu.org>
85829
85830	More proofreading of the Emacs manual
85831
85832	* doc/emacs/trouble.texi (DEL Does Not Delete): Improve wording.
85833	(Screen Garbled): Mention the command name.
85834	(Bug Criteria): Mention that problems in packages should first be
85835	reported to the respective maintainers.
85836	(Checklist): Fix wording.
85837	(Contributing, Copyright Assignment): Minor copyedits.
85838	* doc/emacs/misc.texi (Amusements): Remove Landmark.
85839	* doc/emacs/picture-xtra.texi (Tabs in Picture): Improve wording.
85840	(Rectangles in Picture): Add a cross-reference to "Registers".
85841	* doc/emacs/misc.texi (Gnus Group Buffer, Gnus Summary Buffer):
85842	Mention command names in parentheses.
85843	(Gnus Summary Buffer): Document "M-r".
85844	(Network Security): Document that current NSM works with TLS
85845	encryption.  Fix markup.
85846	(Document View): Improve wording and fix a typo.
85847	(DocView Conversion): Rephrase description of
85848	doc-view-cache-directory.
85849	(Single Shell): Mention variables that control when shell output
85850	appears in the echo area.
85851	(Shell Mode): Improve wording.
85852	(Shell Prompts): Fix a typo.
85853	(Shell Ring, Term Mode): Mention command names.
85854	(History References): Add a cross-reference to "Rebinding".
85855	(Remote Host): Mention SSH.
85856	(TCP Emacs server): Improve wording.
85857	(emacsclient Options): Minor improvements.
85858	(PostScript): Fix wording.
85859	(PostScript Variables): Mention that ps-font-size could be a cons.
85860	(Sorting): Minor improvements.  Suggested by Michael Albinus
85861	<michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org
85862
858632018-03-23  Noam Postavsky  <npostavs@gmail.com>
85864
85865	* src/lisp.h (struct Lisp_Buffer_Local_Value): Update commentary.
85866
85867	* doc/emacs/trouble.texi: Fix location of `emacs-version' index.
85868
858692018-03-23  Noam Postavsky  <npostavs@gmail.com>
85870
85871	Explain more about (defvar foo) form (Bug#18059)
85872
85873	* doc/lispref/variables.texi (Defining Variables)
85874	(Using Lexical Binding):
85875	* doc/lispref/compile.texi (Compiler Errors): Emphasize that omitting
85876	VALUE for `defvar' marks the variable special only locally.
85877	* doc/lispref/variables.texi (Using Lexical Binding): Add example of
85878	using `defvar' without VALUE.
85879
858802018-03-22  Charles A. Roelli  <charles@aurox.ch>
85881
85882	* doc/lispref/buffers.texi (Buffer List): Fix grammar.
85883
85884	* doc/lispref/anti.texi (Antinews): Fix grammar.
85885
858862018-03-22  Glenn Morris  <rgm@gnu.org>
85887
85888	* lisp/org/ob-lisp.el (org-babel-lisp-eval-fn): Tweak type.
85889
85890	Avoids type mismatch when relevant library is not present/loaded.
85891
858922018-03-22  Glenn Morris  <rgm@gnu.org>
85893
85894	sql.el defcustom fixes
85895
85896	* lisp/progmodes/sql.el (sql-login-params): Update.
85897	Avoids type mismatch with postgres and sqlite login params.
85898	(sql-postgres-login-params): Bump version.
85899
859002018-03-22  Eli Zaretskii  <eliz@gnu.org>
85901
85902	Document DEFUN attributes
85903
85904	* doc/lispref/internals.texi (Writing Emacs Primitives): Document
85905	specification of function attributes in DEFUN.
85906
859072018-03-22  Nicolas Petton  <nicolas@petton.fr>
85908
85909	* etc/NEWS: Add an entry for auth-source-pass.
85910
859112018-03-22  Eli Zaretskii  <eliz@gnu.org>
85912
85913	Fix the MSDOS build
85914
85915	* msdos/sed2v2.inp (HAVE_SBRK): Define to 1.
85916
859172018-03-22  Eric Abrahamsen  <eric@ericabrahamsen.net>
85918
85919	Improve warning and error messages
85920
85921	* lisp/emacs-lisp/eieio-base.el (eieio-persistent-read,
85922	  (eieio-persistent-validate/fix-slot-value): Indicate exactly what
85923	  went wrong.
85924
859252018-03-22  Eric Abrahamsen  <eric@ericabrahamsen.net>
85926
85927	Adjust eieio persistence tests for expected failure
85928
85929	* test/lisp/emacs-lisp/eieio-tests/eieio-test-persist.el
85930	 (eieio-test-persist-hash-and-vector,
85931	  eieio-test-persist-interior-lists): Persistence does not currently
85932	 handle deeply-nested objects. Expect current failures, and mark for
85933	 future fixes.
85934
859352018-03-22  Eric Abrahamsen  <eric@ericabrahamsen.net>
85936
85937	Let eieio-persistent-read read what object-write has written
85938
85939	* lisp/emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
85940	  `object-write' may quote lists inside hash tables and vectors, so
85941	  unquote those lists here.
85942
85943	This patch allows the eieio-persistent write/restore process to
85944	perform a clean round trip. It only handles a very specific and
85945	limited range of object structures, but at least the write and read
85946	procedures match.
85947
859482018-03-22  Eric Abrahamsen  <eric@ericabrahamsen.net>
85949
85950	Handle possible classtype values in eieio-persistent-read
85951
85952	* lisp/emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
85953	  The function `eieio-persistent-slot-type-is-class-p' could return
85954	  either a single class, or a list of classes.
85955
859562018-03-22  Pierre Téchoueyres  <pierre.techoueyres@free.fr>
85957
85958	Add new tests for eieio persistence
85959
85960	* test/lisp/emacs-lisp/eieio-tests/eieio-test-persist.el:
85961	  (hash-equal): New comparison test for hash-tables.
85962	  (persist-test-save-and-compare): Use test for hash-tables.
85963	  (eieio-test-persist-hash-and-vector,
85964	  eieio-test-persist-interior-lists): New tests.
85965
859662018-03-22  Glenn Morris  <rgm@gnu.org>
85967
85968	* lisp/gnus/gnus-cloud.el (gnus-cloud-synced-files): Fix doc & type.
85969
85970	* lisp/ibuf-ext.el (ibuffer-never-search-content-mode): Fix type.
85971
859722018-03-21  Glenn Morris  <rgm@gnu.org>
85973
85974	* doc/lispref/windows.texi (Selecting Windows): Fix a typo.
85975
859762018-03-21  Charles A. Roelli  <charles@aurox.ch>
85977
85978	* doc/lispref/internals.texi (Writing Emacs Primitives): Fix grammar.
85979
859802018-03-21  Alan Mackenzie  <acm@muc.de>
85981
85982	Firm up documentation of generalized variables
85983
85984	* doc/lispref/variables.texi (Generalized Variables)
85985	(Setting Generalized Variables): Define a generalized variable as something
85986	setf can write to.  Remove the insinuation that hackers have poor memories.
85987	State explicitly that the list of GVs given is complete.  Remove the
85988	suggestion that `setf' has superseded, or is in the process of superseding,
85989	`setq'.  Make minor corrections to the English.
85990
859912018-03-21  Eli Zaretskii  <eliz@gnu.org>
85992
85993	Improve documentation of Auto-Revert mode
85994
85995	* doc/emacs/files.texi (Reverting): Mention that Aut-Revert
85996	applies to Dired buffers as well.  Suggested by Michael Albinus
85997	<michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
85998
859992018-03-21  Eli Zaretskii  <eliz@gnu.org>
86000
86001	Improvements in dired.texi
86002
86003	* doc/emacs/dired.texi (Dired): Mention that Dired works with
86004	remote directories.
86005	(Dired Enter): ls-lisp is used on some remote systems as well.
86006	(Dired Navigation): Mention and index the command names.
86007	(Dired Deletion): Document the 'always' value of
86008	dired-recursive-deletes.  Mention the alternative deletion method.
86009	(Marks vs Flags): Fix spelling of Auto-Revert mode.  Document what
86010	marking does on a subdirectory header line.
86011	(Operating on Files): Document that 'Z' uses gzip or compress.
86012	(Comparison in Dired): Mention ediff-files.
86013	(Misc Dired Features): Fix a typo.  Suggested by Michael Albinus
86014	<michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
86015
860162018-03-21  Noam Postavsky  <npostavs@gmail.com>
86017
86018	Revert "Support all perl variable declarators and prefixes"
86019
86020	It highlights normal variable names in perl programs (Bug#30812).
86021	* lisp/progmodes/perl-mode.el (perl-imenu-generic-expression)
86022	(perl-font-lock-keywords-2): Restore values prior to Bug#27613 fix.
86023
86024	Don't merge to master, we will fix Bug#27613 properly there (it's too
86025	close to release to do that on emacs-26).
86026
860272018-03-20  Paul Eggert  <eggert@cs.ucla.edu>
86028
86029	Port to 32-bit sparc64
86030
86031	Backport from master.
86032	Problem reported by Ulrich Mueller; fix suggested by Eli Zaretskii
86033	and Andreas Schwab (Bug#30855).
86034	* src/alloc.c (mark_memory): Call mark_maybe_object only on
86035	pointers that are properly aligned for Lisp_Object.
86036
860372018-03-20  Robert Pluim  <rpluim@gmail.com>
86038
86039	Correct Info link markup
86040
86041	* lisp/gnus/gnus-agent.el (gnus-agent-auto-agentize-methods):
86042	Correct markup for Info link.
86043	* src/minibuf.c (Fcompleting_read): Likewise.
86044
860452018-03-20  Nick Helm  <nick@tenpoint.co.nz>
86046
86047	Improve documentation of 'with-help-window'
86048
86049	* doc/lispref/help.texi (Help Functions): Change variable name
86050	to 'buffer-or-name'.
86051
86052	* lisp/help.el (with-help-window): Change variable name to
86053	'buffer-or-name' and rewrite the doc string, adding reference
86054	to 'help-window-setup'.  (Bug#30792)
86055
860562018-03-20  Eli Zaretskii  <eliz@gnu.org>
86057
86058	Minor improvements in building.texi
86059
86060	* doc/emacs/building.texi (Compilation Shell): Mention that this
86061	section is for local compilation buffers.
86062	(Compilation, Compilation Mode): Mention that 'g' is bound to
86063	'recompile' in compilation buffers.
86064	(Grep Searching): Add a cross-reference to "Compilation Mode".
86065	Suggested by Michael Albinus <michael.albinus@gmx.de> in
86066	emacs-manual-bugs@gnu.org.
86067
860682018-03-20  Alex Branham  <branham@utexas.edu>
86069
86070	* lisp/textmodes/bibtex.el (bibtex-mark-entry): activate mark
86071
860722018-03-19  Eli Zaretskii  <eliz@gnu.org>
86073
86074	* doc/emacs/building.texi (Starting GUD): Mention 'guiler'.
86075
860762018-03-19  Eli Zaretskii  <eliz@gnu.org>
86077
86078	Yet more proofreading of the Emacs manual
86079
86080	* doc/emacs/building.texi (Compilation, Grep Searching)
86081	(Debuggers, GUD Customization, Source Buffers)
86082	(Breakpoints Buffer, Threads Buffer): Minor fixes and updates.
86083	Suggested by Michael Albinus <michael.albinus@gmx.de> in
86084	emacs-manual-bugs@gnu.org.
86085
860862018-03-19  Paul Eggert  <eggert@cs.ucla.edu>
86087
86088	* doc/emacs/rmail.texi: Fix broken link.
86089
860902018-03-19  Paul Eggert  <eggert@cs.ucla.edu>
86091
86092	Fix recently-added POP doc glitch
86093
86094	* doc/emacs/rmail.texi (Remote Mailboxes):
86095	POP3 → POP, when talking about POP in general.
86096
860972018-03-19  Eli Zaretskii  <eliz@gnu.org>
86098
86099	More proofreading of the Emacs manual
86100
86101	* doc/emacs/macos.texi (Mac / GNUstep Basics): Fix typos.  Improve
86102	indexing.
86103	(Mac / GNUstep Basics, Mac / GNUstep Customization)
86104	(Mac / GNUstep Events): Improve indexing.
86105
86106	* doc/emacs/rmail.texi (Rmail): Mention Gnus.
86107	(Rmail Basics, Rmail Scrolling): Improve cross-references and
86108	indexing.
86109	(Rmail Motion): Minor improvements.
86110	(Rmail Inbox): Remove outdated text about Babyl format.
86111	(Rmail Files): Formatting changes.  Comment out
86112	set-rmail-inbox-list in the table of commands, as it is commented
86113	out in the text that follows.
86114	(Rmail Output, Rmail Labels, Rmail Reply, Rmail Make Summary):
86115	Minor copyedits.
86116	(Rmail Summary Edit): Document
86117	rmail-summary-scroll-between-messages.
86118	(Rmail Editing): Improve indexing.
86119	(Movemail): Fix typos.
86120	(Remote Mailboxes): Use "POP3" rather than "POP".
86121
861222018-03-19  Simen Heggestøyl  <simenheg@gmail.com>
86123
86124	Fix typo in the Emacs manual's VC chapter
86125
86126	* doc/emacs/maintaining.texi (VC Directory Buffer): Fix a typo.
86127
861282018-03-19  Basil L. Contovounesios  <contovob@tcd.ie>
86129
86130	Pass json-readtable-error data as a list (bug#30489)
86131
86132	* lisp/json.el (json-readtable-dispatch): Fix error data.
86133	* test/lisp/json-tests.el (test-json-read): Check error data is a
86134	list.
86135
861362018-03-17  Noam Postavsky  <npostavs@gmail.com>
86137
86138	Improve word motion docs (Bug#30815)
86139
86140	* doc/lispref/positions.texi (Word Motion): Fix reference to
86141	`char-script-table'.
86142	* lisp/simple.el (backward-word):
86143	* src/syntax.c (forward-word): Mention `char-script-table' and add
86144	link to the 'Word Motion' manual section.
86145
861462018-03-15  Michael Albinus  <michael.albinus@gmx.de>
86147
86148	Replace "carriage-return" by "carriage return" in manuals
86149
86150	* doc/emacs/msdos.texi:
86151	* doc/emacs/mule.texi:
86152	* doc/emacs/screen.texi:
86153	* doc/lispref/nonascii.texi:
86154	* doc/misc/calc.texi: Replace "carriage-return" by "carriage
86155	return".  Suggested by Richard Stallman <rms@gnu.org> in
86156	emacs-manual-bugs@gnu.org.
86157
861582018-03-15  Eli Zaretskii  <eliz@gnu.org>
86159
86160	Minor copyedits in mule.texi
86161
86162	* doc/emacs/mule.texi (Recognize Coding, Fontsets): Minor changes
86163	in wording.  Suggested by Richard Stallman <rms@gnu.org> in
86164	emacs-manual-bugs@gnu.org.
86165
861662018-03-14  Eli Zaretskii  <eliz@gnu.org>
86167
86168	Fix problems caused by fontconfig-2.13.0
86169
86170	* src/xterm.c (x_term_init): Call fixup_locale after
86171	xg_initialize, to countermand the call to setlocale in some
86172	versions of fontconfig.  (Bug#30788)
86173
861742018-03-13  Glenn Morris  <rgm@gnu.org>
86175
86176	Fix some allout.el aliases
86177
86178	* lisp/allout.el (allout-passphrase-verifier-string)
86179	(allout-passphrase-hint-string): Fix alias.
86180
861812018-03-13  Glenn Morris  <rgm@gnu.org>
86182
86183	* lisp/progmodes/ada-mode.el (ada-clean-buffer-before-saving): Doc fix.
86184
861852018-03-13  Glenn Morris  <rgm@gnu.org>
86186
86187	Doc fixes re obsolete items
86188
86189	* doc/emacs/mini.texi (Completion Commands): Small update re mouse.
86190	* doc/misc/htmlfontify.texi (Customization): Replace obsolete alias.
86191
861922018-03-13  Glenn Morris  <rgm@gnu.org>
86193
86194	Replace an obsolete alias in tpu-mapper
86195
86196	* lisp/obsolete/tpu-mapper.el (tpu-map-key, tpu-mapper):
86197	Replace obsolete alias.
86198
861992018-03-13  Glenn Morris  <rgm@gnu.org>
86200
86201	Doc fixes re obsolete items
86202
86203	* doc/emacs/maintaining.texi (VC Undo):
86204	* doc/misc/efaq-w32.texi (Font names): Replace obsolete aliases.
86205	* doc/misc/url.texi (Customization):
86206	Don't mention url-temporary-directory, it essentially does nothing.
86207	* lisp/hilit-chg.el
86208	(highlight-changes-global-changes-existing-buffers): Doc fix.
86209
862102018-03-13  Eli Zaretskii  <eliz@gnu.org>
86211
86212	Minor changes in mule.texi
86213
86214	* doc/emacs/mule.texi (International, Coding Systems)
86215	(Bidirectional Editing): Minor wording changes and typo fixes.
86216	Suggested by Michael Albinus <michael.albinus@gmx.de> in
86217	emacs-manual-bugs@gnu.org.
86218
862192018-03-13  Eli Zaretskii  <eliz@gnu.org>
86220
86221	Avoid assertion violation under visual-order-cursor-movement
86222
86223	* src/xdisp.c (Fmove_point_visually): Don't let point exceed the
86224	BEGV..ZV range.  Signal Beginning of buffer error when there's a
86225	before-string at BEGV.  (Bug#30787)
86226
862272018-03-13  Glenn Morris  <rgm@gnu.org>
86228
86229	Stop mentioning options.el in doc
86230
86231	* doc/misc/calc.texi (Customizing Embedded Mode):
86232	Remove mentions of the obsolete (since 22.1) options.el.
86233	* lisp/progmodes/meta-mode.el: Comment fix.
86234
862352018-03-12  Charles A. Roelli  <charles@aurox.ch>
86236
86237	* lisp/vc/vc-dir.el (vc-dir-unmark): Fix documentation.
86238
862392018-03-12  Eli Zaretskii  <eliz@gnu.org>
86240
86241	* lisp/minibuffer.el (completion-cycle-threshold): Doc fix.
86242
862432018-03-12  Eli Zaretskii  <eliz@gnu.org>
86244
86245	Fix last change in Xref documentation
86246
86247	* doc/emacs/maintaining.texi (Looking Up Identifiers): More
86248	accurate wording for the description of xref-etags-mode.
86249
862502018-03-11  Eli Zaretskii  <eliz@gnu.org>
86251
86252	More changes in the Emacs manual
86253
86254	* doc/emacs/text.texi (Words, Foldout, Table Conversion): Clarify
86255	text.  Reported by Gijs Hillenius <gijs@hillenius.net> in
86256	emacs-manual-bugs@gnu.org.
86257
86258	* doc/emacs/msdos.texi (Windows Keyboard):
86259	* doc/emacs/msdos-xtra.texi (MS-DOS Keyboard):
86260	* doc/emacs/macos.texi (Mac / GNUstep Basics):
86261	* doc/emacs/glossary.texi (Glossary):
86262	* doc/emacs/custom.texi (Function Keys, Init Syntax):
86263	* doc/emacs/commands.texi (User Input):
86264	* doc/emacs/basic.texi (Arguments): Fix capitalization of "Meta".
86265	* doc/emacs/msdos.texi (Windows Keyboard):
86266	* doc/emacs/dired.texi (Dired Updating):
86267	* doc/emacs/custom.texi (Init Rebinding): Fix misuses of @key.
86268	Suggested by Richard Stallman <rms@gnu.org>.
86269
862702018-03-11  Eli Zaretskii  <eliz@gnu.org>
86271
86272	Improve documentation of Xref
86273
86274	* doc/emacs/maintaining.texi (Looking Up Identifiers): Document
86275	xref-etags-mode.
86276
862772018-03-11  Paul Eggert  <eggert@cs.ucla.edu>
86278
86279	Fix create_process bug breaking eudc-expand-inline
86280
86281	Problem reported by Thomas Fitzsimmons (Bug#30762).
86282	* src/process.c (create_process) [HAVE_PTYS]:
86283	Call setsid even if !PTY_FLAG.
86284
862852018-03-10  Noam Postavsky  <npostavs@gmail.com>
86286
86287	Clarify that nil doesn't match itself as a cl-case clause (Bug#30749)
86288
86289	* lisp/emacs-lisp/cl-macs.el (cl-case): Mention that the ATOM
86290	=> (ATOM) short form is only for non-nil ATOMs.
86291
862922018-03-10  Charles A. Roelli  <charles@aurox.ch>
86293
86294	Improve SVG documentation
86295
86296	* doc/lispref/display.texi (ImageMagick Images): Remove an
86297	outdated comment that references a fixed bug.
86298	(SVG Images): Fix grammar, and call functions functions (there are
86299	no commands in lisp/svg.el).
86300
863012018-03-10  Eli Zaretskii  <eliz@gnu.org>
86302
86303	Document the "URL" keyword in library headers
86304
86305	* doc/lispref/tips.texi (Library Headers): "URL" is an alias for
86306	"Homepage".  Suggested by Peter Oliver <p.d.oliver@mavit.org.uk>.
86307	(Bug#30571)
86308
863092018-03-09  Glenn Morris  <rgm@gnu.org>
86310
86311	* test/lisp/international/mule-tests.el:
86312	Avoid local variables confusion.
86313
863142018-03-09  Bill Wohler  <wohler@newt.com>
86315
86316	Add missing findex entries for recently removed kindex entries
86317
86318	* doc/misc/mh-e.texi:
86319
86320	(cherry picked from commit a56a3fc6849b89a71c9a00afcb088021ccbe94e5)
86321
863222018-03-09  Glenn Morris  <rgm@gnu.org>
86323
86324	Replace the obsolete process-kill-without-query in documentation
86325
86326	* lisp/comint.el (comint-exec-hook):
86327	* lisp/term.el (term-exec-hook):
86328	* lisp/eshell/esh-proc.el (eshell-exec-hook):
86329	Doc fixes re the obsolete process-kill-without-query.
86330
863312018-03-08  Michael Albinus  <michael.albinus@gmx.de>
86332
86333	Minor change in the manual
86334
86335	* doc/emacs/display.texi (Useless Whitespace):
86336	Don't upcase "TAB" and "SPC" when alluding to characters.
86337
863382018-03-08  Eli Zaretskii  <eliz@gnu.org>
86339
86340	More minor changes in the manual
86341
86342	* doc/emacs/display.texi (Useless Whitespace): Don't upcase "TAB"
86343	and "SPC" when alluding to characters.  Suggested by Richard
86344	Stallman <rms@gnu.org>.
86345
86346	* doc/emacs/buffers.texi (Misc Buffer): Clarify what "read-only"
86347	means for buffers.
86348	(Buffers): Define and describe "buffer contents".  Suggested by
86349	Richard Stallman <rms@gnu.org>.  (Bug#30685)
86350
863512018-03-07  Glenn Morris  <rgm@gnu.org>
86352
86353	Replace some obsolete aliases in code
86354
86355	* lisp/net/eudc-bob.el (eudc-bob-mail-keymap):
86356	* lisp/textmodes/reftex-toc.el (reftex-make-separate-toc-frame):
86357	Replace obsolete aliases.
86358
863592018-03-07  Glenn Morris  <rgm@gnu.org>
86360
86361	Replace some obsolete aliases in documentation
86362
86363	* doc/misc/efaq-w32.texi (Incoming mail with Rmail):
86364	* doc/misc/speedbar.texi (Major Display Modes):
86365	* lisp/mh-e/mh-folder.el (mh-restore-desktop-buffer):
86366	Doc fixes re obsolete aliases.
86367
863682018-03-07  Eli Zaretskii  <eliz@gnu.org>
86369
86370	Minor improvements in manuals
86371
86372	* doc/lispref/variables.texi (Local Variables): Make more clear
86373	that local bindings of 'let' are in effect only within the body.
86374	Suggested by Marcin Borkowski <mbork@mbork.pl>, see
86375	http://lists.gnu.org/archive/html/emacs-devel/2018-03/msg00217.html
86376	for the details.
86377
86378	* doc/emacs/programs.texi (Matching): Fix a typo.  Reported by
86379	Alex Branham <alex.branham@gmail.com> in emacs-manual-bugs@gnu.org.
86380	Improve indexing.
86381
863822018-03-07  Eli Zaretskii  <eliz@gnu.org>
86383
86384	Minor copyedits in display.texi
86385
86386	* doc/emacs/display.texi (Highlight Interactively)
86387	(Useless Whitespace, Line Truncation, Visual Line Mode): Minor
86388	changes of wording and typo corrections.  Suggested by Michael
86389	Albinus <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
86390
863912018-03-07  Glenn Morris  <rgm@gnu.org>
86392
86393	Remove some unused spam.el variables
86394
86395	* lisp/gnus/spam.el (spam-ifile-path, spam-ifile-database-path)
86396	(spam-bogofilter-path, spam-bsfilter-path)
86397	(spam-spamassassin-path, spam-sa-learn-path):
86398	Remove variables that are described as obsolete, but are
86399	really completely unused, and have been for years.
86400
864012018-03-07  Glenn Morris  <rgm@gnu.org>
86402
86403	Replace some obsolete aliases in code
86404
86405	* lisp/emulation/viper.el (viper-set-hooks):
86406	* lisp/epa-hook.el (auto-encryption-mode):
86407	* lisp/term/pc-win.el (set-frame-font): Replace obsolete aliases.
86408	* lisp/net/quickurl.el (quickurl--assoc-function): New.
86409	(quickurl-assoc-function): Use it.
86410
864112018-03-07  Glenn Morris  <rgm@gnu.org>
86412
86413	Replace some obsolete aliases in documentation
86414
86415	* doc/emacs/text.texi (Nroff Mode):
86416	* doc/misc/efaq.texi (How to add fonts):
86417	* lisp/gnus/nnheader.el (nnheader-insert-file-contents):
86418	* lisp/progmodes/pascal.el (pascal-outline-mode):
86419	Doc fixes re obsolete aliases.
86420
864212018-03-06  Glenn Morris  <rgm@gnu.org>
86422
86423	Obsolete eshell-cmpl-suffix-list
86424
86425	* lisp/eshell/em-cmpl.el (eshell-cmpl-suffix-list):
86426	Make obsolete, to match pcomplete-suffix-list.
86427
864282018-03-06  Eli Zaretskii  <eliz@gnu.org>
86429
86430	More minor changes in the Glossary of the Emacs manual
86431
86432	* doc/emacs/glossary.texi (Glossary): Improve cross-references for
86433	modifier keys.  Fix typos.  Suggested by Gijs Hillenius
86434	<gijs@hillenius.net> in emacs-manual-bugs@gnu.org.
86435
864362018-03-06  Michael Heerdegen  <michael_heerdegen@web.de>
86437
86438	Revert last commit
86439
86440	This reverts commit af4697faa1f5b643f63a9ea61aa205a4c1432e23.  It's
86441	too late for this to be in the release.
86442
864432018-03-06  Michael Heerdegen  <michael_heerdegen@web.de>
86444
86445	Define if-let* and derivatives as aliases for if-let etc
86446
86447	This commit reverts declaring `if-let' and `when-let' obsolete in
86448	favor of the new `if-let*' and `when-let*' versions because of the
86449	compiler warning mess (Bug#30039).  Instead we make foo-let* aliases
86450	for foo-let.  The old single-tuple variable spec case is still
86451	supported for backward compatibility.
86452	* lisp/emacs-lisp/subr-x.el (if-let, when-let): Don't declare
86453	obsolete.  Tweak edebug specs.
86454	(and-let): Renamed from `and-let*' for compatibility with the names
86455	`if-let' and `when-let'.
86456	(if-let*, when-let*, and-let*): Define as aliases for `if-let',
86457	`when-let' and `and-let'.
86458	* test/lisp/emacs-lisp/subr-x-tests.el (if-let-single-tuple-case-test)
86459	(when-let-single-tuple-case-test): New tests for the single-binding
86460	tuple case.
86461	In the whole file, prefer the names without "*".
86462
864632018-03-05  Eli Zaretskii  <eliz@gnu.org>
86464
86465	Minor fix in Emacs manual's Glossary
86466
86467	* doc/emacs/glossary.texi (Glossary): Fix outdated text about
86468	primary selection.  Reported by Gijs Hillenius
86469	<gijs@hillenius.net> in emacs-manual-bugs@gnu.org.
86470
864712018-03-03  Juri Linkov  <juri@linkov.net>
86472
86473	* lisp/progmodes/grep.el (zrgrep):
86474
86475	Let-bind grep-use-null-filename-separator to nil (bug#30559).
86476
864772018-03-03  Eli Zaretskii  <eliz@gnu.org>
86478
86479	Minor copyedits in doc/emacs/text.texi
86480
86481	* doc/emacs/text.texi (TeX Mode): Use @code for command markup.
86482	(HTML Mode): Add a note about "C-x C-v" binding in HTML mode.
86483
864842018-03-03  Eli Zaretskii  <eliz@gnu.org>
86485
86486	Remove outdated comment in syntax.el
86487
86488	* lisp/emacs-lisp/syntax.el (syntax-ppss-toplevel-pos): Remove
86489	outdated comment.  (Bug#30617)
86490
864912018-03-03  Eli Zaretskii  <eliz@gnu.org>
86492
86493	Prevent Flyspell from changing unrelated words
86494
86495	* lisp/textmodes/flyspell.el (flyspell-auto-correct-word): Avoid
86496	using stale cached data from previous invocations of this command.
86497	(Bug#30462)
86498
864992018-03-03  Eli Zaretskii  <eliz@gnu.org>
86500
86501	Avoid errors in flymake in builds --without-x
86502
86503	* lisp/progmodes/flymake.el: Require 'mwheel'.  (Bug#28732)
86504
865052018-03-03  Eli Zaretskii  <eliz@gnu.org>
86506
86507	More improvements of the Emacs manual
86508
86509	* doc/emacs/rmail.texi (Rmail Reply, Rmail Sorting): Improve
86510	wording.  Suggested by Daniel Chakraborty
86511	<danielmchakraborty@gmail.com>.
86512
86513	* doc/emacs/glossary.texi (Glossary): Add cross-references.
86514	Improve and clarify wording.  Suggested by Gijs Hillenius
86515	<gijs@hillenius.net> in emacs-manual-bugs@gnu.org.
86516
86517	* doc/emacs/text.texi (Org Authoring): Add more supported formats
86518	to the list.
86519	(TeX Print): Improve wording.  Slightly rearrange stuff.
86520	(TeX Misc): Mention doctex-mode-hook.
86521	(Two-Column): Minor rearrangement of text.  Suggested by Michael
86522	Albinus <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
86523
86524	* doc/emacs/misc.texi (Saving Emacs Sessions):
86525	* doc/emacs/programs.texi (Program Modes): Remove redundant text
86526	and index entries.
86527
865282018-03-03  Dmitry Gutov  <dgutov@yandex.ru>
86529
86530	Backport: xref--next-error-function: Move xref's window point
86531
86532	* lisp/progmodes/xref.el (xref--next-error-function): Move
86533	xref's window point if it's visible.  When we don't do that,
86534	navigation can start looping after a while.
86535
86536	(cherry picked from commit 108ce84432d597f92637ea74bd0a094224d157de)
86537
865382018-03-02  Glenn Morris  <rgm@gnu.org>
86539
86540	mwheel minor consistency fix
86541
86542	* lisp/mwheel.el (mwheel-scroll-left-function)
86543	(mwheel-scroll-right-function):
86544	Change from defcustom to defvar, for consistency with pre-existing.
86545
865462018-03-02  Eli Zaretskii  <eliz@gnu.org>
86547
86548	* src/window.c (Frecenter): Improve commentary.
86549
865502018-03-02  Eli Zaretskii  <eliz@gnu.org>
86551
86552	Fix downloading non-text files in EWW
86553
86554	* lisp/net/eww.el (eww-download-callback): Bind
86555	coding-system-for-read to 'no-conversion', to avoid any code- or
86556	EOL-conversions in downloaded files.  (Bug#30664)
86557
865582018-03-02  Tak Kunihiro  <tkk@misasa.okayama-u.ac.jp>
86559
86560	Rename some mwheel options, for consistency
86561
86562	* lisp/mwheel.el (mouse-wheel-tilt-scroll)
86563	(mouse-wheel-flip-direction): Rename from mwheel-tilt-scroll-p,
86564	mwheel-flip-direction.
86565	(mwheel-scroll): Update for option renaming.
86566	* doc/emacs/frames.texi (Mouse Commands):
86567	Update for option renaming.
86568
865692018-03-01  Glenn Morris  <rgm@gnu.org>
86570
86571	* lisp/vc/add-log.el (add-change-log-entry): Replace obsolete alias.
86572
865732018-03-01  Eli Zaretskii  <eliz@gnu.org>
86574
86575	Improve the Emacs manual
86576
86577	* doc/emacs/xresources.texi (Table of Resources): Mention that
86578	some resources are ignored by toolkit builds.
86579	* doc/emacs/custom.texi (Key Bindings): Improve indexing.
86580	(Bug#30530)
86581
865822018-03-01  Eli Zaretskii  <eliz@gnu.org>
86583
86584	* lisp/dired-aux.el (dired-do-create-files): Doc fix.  (Bug#30634)
86585
865862018-03-01  Michael Albinus  <michael.albinus@gmx.de>
86587
86588	Further improvements on manuals
86589
86590	* doc/emacs/xresources.texi:
86591	* doc/lispref/display.texi:
86592	* doc/lispref/keymaps.texi:
86593	* doc/misc/dbus.texi:
86594	* doc/misc/efaq-w32.texi: Use "GTK+" where applicable.
86595
86596	* doc/emacs/xresources.texi (Resources): Mention several use
86597	of "-xrm".
86598	(Table of Resources) [verticalScrollBars]: Add reference to Scroll Bars.
86599
866002018-03-01  Paul Eggert  <eggert@cs.ucla.edu>
86601
86602	Require a larger stack size for threads on macOS (bug#30364)
86603
86604	* src/systhread.c (sys_thread_create)
86605	[THREADS_ENABLED && HAVE_PTHREAD && DARWIN_OS]:
86606	Require at least 8MB stack size for x64 and 4MB for x86 on macOS.
86607	Do not merge to master.
86608
866092018-02-28  Glenn Morris  <rgm@gnu.org>
86610
86611	* doc/lispref/streams.texi (Output Variables): Fix previous.
86612
866132018-02-28  Michael Albinus  <michael.albinus@gmx.de>
86614
86615	Use "GTK+" where applicable in the manual
86616
86617	* doc/emacs/display.texi (Standard Faces, Standard Faces):
86618	* doc/emacs/emacs.texi (Top):
86619	* doc/emacs/files.texi (Visiting):
86620	* doc/emacs/frames.texi (Scroll Bars):
86621	* doc/emacs/xresources.texi: Use "GTK+" where applicable.
86622
866232018-02-28  Paul Eggert  <eggert@cs.ucla.edu>
86624
86625	Document print-escape-control-characters
86626
86627	* doc/lispref/streams.texi, etc/NEWS: Add doc.
86628
866292018-02-27  Eli Zaretskii  <eliz@gnu.org>
86630
86631	* doc/emacs/killing.texi (Rectangles): Don't use @key for characters.
86632
866332018-02-27  Glenn Morris  <rgm@gnu.org>
86634
86635	* lisp/emulation/viper.el: Unbreak it.
86636
86637	Since 2017-03-19, M-x viper failed with function void cl-member-if.
86638	Perhaps it isn't used much.
86639
866402018-02-27  Eli Zaretskii  <eliz@gnu.org>
86641
86642	More fixes in the Emacs manual
86643
86644	* doc/emacs/xresources.texi (Table of Resources, Lucid Resources):
86645	Sort the resources.
86646	(Lucid Resources): Add cross-references.
86647	(GTK Resource Basics): Fix wording.
86648	(GTK styles): Add empty lines in a @table.  Suggested by Michael
86649	Albinus <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
86650
866512018-02-27  Eli Zaretskii  <eliz@gnu.org>
86652
86653	Avoid aborts in 'md5'
86654
86655	* src/fns.c (extract_data_from_object): Don't crash if called with
86656	an invalid object.  (Bug#30627)
86657
866582018-02-26  Michael Albinus  <michael.albinus@gmx.de>
86659
86660	Mark keys consistently in manuals
86661
86662	* doc/emacs/killing.texi:
86663	* doc/lispintro/emacs-lisp-intro.texi:
86664	* doc/misc/calc.texi:
86665	* doc/misc/cc-mode.texi:
86666	* doc/misc/dired-x.texi:
86667	* doc/misc/ede.texi:
86668	* doc/misc/edt.texi:
86669	* doc/misc/efaq.texi:
86670	* doc/misc/erc.texi:
86671	* doc/misc/eshell.texi:
86672	* doc/misc/gnus-faq.texi:
86673	* doc/misc/gnus-news.texi:
86674	* doc/misc/idlwave.texi:
86675	* doc/misc/ido.texi:
86676	* doc/misc/mairix-el.texi:
86677	* doc/misc/message.texi:
86678	* doc/misc/mh-e.texi:
86679	* doc/misc/newsticker.texi:
86680	* doc/misc/org.texi:
86681	* doc/misc/pcl-cvs.texi:
86682	* doc/misc/ses.texi:
86683	* doc/misc/sieve.texi:
86684	* doc/misc/smtpmail.texi:
86685	* doc/misc/speedbar.texi:
86686	* doc/misc/srecode.texi:
86687	* doc/misc/vhdl-mode.texi:
86688	* doc/misc/vip.texi:
86689	* doc/misc/viper.texi: Mark keys consistently.
86690
866912018-02-26  Michael Albinus  <michael.albinus@gmx.de>
86692
86693	Remove @key{} markups from @kindex entries in manuals
86694
86695	* doc/emacs/basic.texi:
86696	* doc/emacs/buffers.texi:
86697	* doc/emacs/building.texi:
86698	* doc/emacs/calendar.texi:
86699	* doc/emacs/custom.texi:
86700	* doc/emacs/dired.texi:
86701	* doc/emacs/display.texi:
86702	* doc/emacs/files.texi:
86703	* doc/emacs/frames.texi:
86704	* doc/emacs/help.texi:
86705	* doc/emacs/indent.texi:
86706	* doc/emacs/killing.texi:
86707	* doc/emacs/kmacro.texi:
86708	* doc/emacs/mark.texi:
86709	* doc/emacs/mini.texi:
86710	* doc/emacs/misc.texi:
86711	* doc/emacs/modes.texi:
86712	* doc/emacs/msdos-xtra.texi:
86713	* doc/emacs/msdos.texi:
86714	* doc/emacs/mule.texi:
86715	* doc/emacs/picture-xtra.texi:
86716	* doc/emacs/programs.texi:
86717	* doc/emacs/regs.texi:
86718	* doc/emacs/rmail.texi:
86719	* doc/emacs/screen.texi:
86720	* doc/emacs/search.texi:
86721	* doc/emacs/sending.texi:
86722	* doc/emacs/text.texi:
86723	* doc/emacs/trouble.texi:
86724	* doc/misc/calc.texi:
86725	* doc/misc/cc-mode.texi:
86726	* doc/misc/ediff.texi:
86727	* doc/misc/ert.texi:
86728	* doc/misc/eww.texi:
86729	* doc/misc/forms.texi:
86730	* doc/misc/gnus.texi:
86731	* doc/misc/idlwave.texi:
86732	* doc/misc/info.texi:
86733	* doc/misc/message.texi:
86734	* doc/misc/mh-e.texi:
86735	* doc/misc/newsticker.texi:
86736	* doc/misc/org.texi:
86737	* doc/misc/pcl-cvs.texi:
86738	* doc/misc/rcirc.texi:
86739	* doc/misc/reftex.texi:
86740	* doc/misc/sc.texi:
86741	* doc/misc/sieve.texi:
86742	* doc/misc/vhdl-mode.texi:
86743	* doc/misc/vip.texi:
86744	* doc/misc/viper.texi:
86745	* doc/misc/woman.texi: Remove @key{} markups from @kindex entries.
86746
867472018-02-25  Eli Zaretskii  <eliz@gnu.org>
86748
86749	* doc/emacs/display.texi (Standard Faces): Fix markup of index entry.
86750
867512018-02-25  Michael Albinus  <michael.albinus@gmx.de>
86752
86753	Fix @kindex entries in manuals
86754
86755	* doc/emacs/basic.texi:
86756	* doc/emacs/buffers.texi:
86757	* doc/emacs/building.texi:
86758	* doc/emacs/calendar.texi:
86759	* doc/emacs/custom.texi:
86760	* doc/emacs/dired.texi:
86761	* doc/emacs/display.texi:
86762	* doc/emacs/files.texi:
86763	* doc/emacs/frames.texi:
86764	* doc/emacs/help.texi:
86765	* doc/emacs/indent.texi:
86766	* doc/emacs/killing.texi:
86767	* doc/emacs/kmacro.texi:
86768	* doc/emacs/mark.texi:
86769	* doc/emacs/mini.texi:
86770	* doc/emacs/misc.texi:
86771	* doc/emacs/modes.texi:
86772	* doc/emacs/msdos-xtra.texi:
86773	* doc/emacs/msdos.texi:
86774	* doc/emacs/mule.texi:
86775	* doc/emacs/picture-xtra.texi:
86776	* doc/emacs/programs.texi:
86777	* doc/emacs/regs.texi:
86778	* doc/emacs/rmail.texi:
86779	* doc/emacs/screen.texi:
86780	* doc/emacs/search.texi:
86781	* doc/emacs/sending.texi:
86782	* doc/emacs/text.texi:
86783	* doc/emacs/trouble.texi:
86784	* doc/lispref/files.texi:
86785	* doc/misc/calc.texi:
86786	* doc/misc/cc-mode.texi:
86787	* doc/misc/ediff.texi:
86788	* doc/misc/epa.texi:
86789	* doc/misc/ert.texi:
86790	* doc/misc/eww.texi:
86791	* doc/misc/forms.texi:
86792	* doc/misc/gnus.texi:
86793	* doc/misc/info.texi:
86794	* doc/misc/mairix-el.texi:
86795	* doc/misc/message.texi:
86796	* doc/misc/mh-e.texi:
86797	* doc/misc/newsticker.texi:
86798	* doc/misc/org.texi:
86799	* doc/misc/pcl-cvs.texi:
86800	* doc/misc/rcirc.texi:
86801	* doc/misc/sc.texi:
86802	* doc/misc/sieve.texi:
86803	* doc/misc/vhdl-mode.texi:
86804	* doc/misc/vip.texi:
86805	* doc/misc/viper.texi:
86806	* doc/misc/woman.texi: Fix @kindex entries.  Mark keys consistently.
86807
868082018-02-24  Michael Albinus  <michael.albinus@gmx.de>
86809
86810	Fix @cindex entries in manuals
86811
86812	* doc/emacs/custom.texi:
86813	* doc/emacs/dired.texi:
86814	* doc/emacs/display.texi:
86815	* doc/emacs/files.texi:
86816	* doc/emacs/frames.texi:
86817	* doc/emacs/killing.texi:
86818	* doc/emacs/maintaining.texi:
86819	* doc/emacs/misc.texi:
86820	* doc/emacs/msdos-xtra.texi:
86821	* doc/emacs/msdos.texi:
86822	* doc/emacs/search.texi:
86823	* doc/emacs/text.texi:
86824	* doc/emacs/trouble.texi:
86825	* doc/lispintro/emacs-lisp-intro.texi:
86826	* doc/lispref/strings.texi:
86827	* doc/lispref/text.texi:
86828	* doc/misc/cc-mode.texi:
86829	* doc/misc/efaq.texi:
86830	* doc/misc/eieio.texi:
86831	* doc/misc/emacs-mime.texi:
86832	* doc/misc/gnus.texi:
86833	* doc/misc/htmlfontify.texi:
86834	* doc/misc/idlwave.texi:
86835	* doc/misc/message.texi:
86836	* doc/misc/mh-e.texi:
86837	* doc/misc/sem-user.texi:
86838	* doc/misc/ses.texi:
86839	* doc/misc/tramp.texi:
86840	* doc/misc/vhdl-mode.texi: Fix @cindex entries.
86841
868422018-02-24  Michael Albinus  <michael.albinus@gmx.de>
86843
86844	Fix @cindex entries in org.texi
86845
86846	* doc/misc/org.texi: Fix @cindex entries.  Use consistently
86847	@code{} for keywords.
86848
868492018-02-24  Eli Zaretskii  <eliz@gnu.org>
86850
86851	Document reserved keys
86852
86853	* doc/emacs/custom.texi (Key Bindings): Mention keys reserved for
86854	users.  (Bug#30530)
86855
868562018-02-24  Michael Albinus  <michael.albinus@gmx.de>
86857
86858	* doc/misc/ebrowse.texi: Use @key{} for keys.
86859
868602018-02-24  Eli Zaretskii  <eliz@gnu.org>
86861
86862	* src/keyboard.c (syms_of_keyboard): Doc fix.  (Bug#30588)
86863
868642018-02-24  Eli Zaretskii  <eliz@gnu.org>
86865
86866	Improve documentation of X resources
86867
86868	* doc/emacs/xresources.texi (Table of Resources): Add menu-related
86869	resources.  Add cross-references to "GTK Resources".
86870
868712018-02-23  Glenn Morris  <rgm@gnu.org>
86872
86873	* lisp/international/mule.el (keyboard-coding-system): Doc fix.
86874
86875	Since multi-tty, this is always set.
86876
868772018-02-23  Paul Eggert  <eggert@cs.ucla.edu>
86878
86879	Minor doc fixes, mostly for timestamp issues
86880
868812018-02-23  Eli Zaretskii  <eliz@gnu.org>
86882
86883	* doc/emacs/mini.texi (Completion Styles): Improve indexing.
86884
868852018-02-23  Michael Albinus  <michael.albinus@gmx.de>
86886
86887	Fix @findex and @vindex entries in manuals
86888
86889	* doc/emacs/building.texi:
86890	* doc/emacs/calendar.texi:
86891	* doc/emacs/cmdargs.texi:
86892	* doc/emacs/mini.texi:
86893	* doc/emacs/misc.texi:
86894	* doc/emacs/trouble.texi:
86895	* doc/emacs/windows.texi:
86896	* doc/lispintro/emacs-lisp-intro.texi:
86897	* doc/lispref/edebug.texi:
86898	* doc/lispref/frames.texi:
86899	* doc/lispref/os.texi:
86900	* doc/lispref/windows.texi:
86901	* doc/misc/cc-mode.texi:
86902	* doc/misc/dired-x.texi:
86903	* doc/misc/ediff.texi:
86904	* doc/misc/mh-e.texi:
86905	* doc/misc/pcl-cvs.texi:
86906	* doc/misc/reftex.texi:
86907	* doc/misc/sc.texi:
86908	* doc/misc/vhdl-mode.texi:
86909	* doc/misc/viper.texi: Fix @findex and @vindex entries.
86910
869112018-02-22  Alan Mackenzie  <acm@muc.de>
86912
86913	Document, in the Elisp manual, how to get a character's raw syntax descriptor
86914
86915	* doc/lispref/syntax.texi (Syntax Table internals): mention the use of `aref'
86916	to get a character's raw syntax descriptor.
86917
869182018-02-22  Eli Zaretskii  <eliz@gnu.org>
86919
86920	Improvements in the Emacs manual
86921
86922	* doc/emacs/custom.texi (Customization Groups)
86923	(Changing a Variable, Browsing Custom, Customizing Faces): Fix
86924	markup of keys.
86925	(Changing a Variable, Saving Customizations): Update the
86926	description of buttons in the Custom buffer.
86927	(Face Customization): More accurate description.
86928	(Specific Customization, Examining, Locals): Add blank lines in
86929	the @table.  Reported by Michael Albinus <michael.albinus@gmx.de>
86930	in emacs-manual-bugs@gnu.org.
86931
869322018-02-22  Glenn Morris  <rgm@gnu.org>
86933
86934	Tiny doc/misc markup fixes
86935
86936	* doc/misc/ediff.texi (Patch and Diff Programs):
86937	* doc/misc/viper.texi (File and Buffer Handling): Fix markup typos.
86938
869392018-02-22  Martin Rudalics  <rudalics@gmx.at>
86940
86941	Skip mouse-face overlap check when mouse-face is hidden (Bug#30519)
86942
86943	* src/xdisp.c (note_mouse_highlight): Skip check whether
86944	mouse-face highlighting overlay overlaps other mouse-face
86945	overlays when mouse-face highlighting is hidden (Bug#30519).
86946
869472018-02-22  Eli Zaretskii  <eliz@gnu.org>
86948
86949	Fix capitalization of "Mail-Followup-To"
86950
86951	* doc/emacs/sending.texi (Header Editing, Mail Headers):
86952	Standardize on "Mail-Followup-To" as the capitalization.
86953
869542018-02-21  Juri Linkov  <juri@linkov.net>
86955
86956	* lisp/progmodes/grep.el (grep-compute-defaults):
86957
86958	Add grep-use-null-filename-separator to grep-host-defaults-alist.
86959	(Bug#30559)
86960
869612018-02-21  Charles A. Roelli  <charles@aurox.ch>
86962
86963	Semantic manual fixes
86964
86965	* doc/misc/semantic.texi (Tools): Fix wording and grammar, and
86966	remove a reference to "document-vars.el" which, in the Emacs
86967	repository, is part of lisp/cedet/srecode/document.el.
86968
869692018-02-21  Eli Zaretskii  <eliz@gnu.org>
86970
86971	More improvements in the Emacs manual
86972
86973	* doc/emacs/help.texi (Misc Help):
86974	* doc/emacs/m-x.texi (M-x):
86975	* doc/emacs/mini.texi (Minibuffer File, Repetition): Prevent
86976	breaking of command sequences between lines.  Reported by Wojciech
86977	Politarczyk <w.politarczyk@gmail.com> in emacs-manual-bugs@gnu.org.
86978
86979	* doc/emacs/sending.texi (Header Editing): Fix capitalization.
86980
869812018-02-21  tino calancha  <tino.calancha@gmail.com>
86982
86983	* doc/misc/viper.texi (File and Buffer Handling): Add missing '@'
86984
869852018-02-21  Eli Zaretskii  <eliz@gnu.org>
86986
86987	Fix documentation of 'x-underline-at-descent-line'
86988
86989	* doc/emacs/display.texi (Display Custom):
86990	* src/nsterm.m (syms_of_nsterm):
86991	* src/xterm.c (syms_of_xterm):
86992	* src/w32term.c (syms_of_w32term): Mention the effect of
86993	'line-spacing' on the underline position.  (Bug#30553)
86994
869952018-02-21  Glenn Morris  <rgm@gnu.org>
86996
86997	* lisp/textmodes/flyspell.el (flyspell-get-word): Doc fix.
86998
869992018-02-20  Robert Pluim  <rpluim@gmail.com>
87000
87001	Correct variable markup in manuals
87002
87003	* doc/lispref/minibuf.texi (Completion in Buffers): Fix markup.
87004	* doc/lispref/text.texi (Filling): Likewise.
87005	* doc/misc/dired-x.texi (Advanced Mark Commands): Likewise.
87006	* doc/misc/epa.texi (Encrypting/decrypting gpg files): Likewise.
87007	(Encrypting/decrypting gpg files): Likewise.
87008	* doc/misc/tramp.texi (External methods): Likewise.
87009	(Default Method): Likewise.
87010	* doc/misc/viper.texi (Editing in Insert State): Likewise.
87011	(File and Buffer Handling): Likewise.
87012	* doc/misc/gnus.texi (Mail Source Customization): Likewise.
87013	* doc/misc/url.texi (Customization): Likewise.  Note obsolete
87014	status of url-temporary-directory.
87015
870162018-02-20  Eli Zaretskii  <eliz@gnu.org>
87017
87018	Improve the "Sending Mail" chapter of Emacs manual
87019
87020	* doc/emacs/sending.texi (Mail Format, Header Editing)
87021	(Mail Aliases): Fix capitalization of mail headers.
87022	(Mail Aliases): Use ~/.mailrc consistently.
87023	(Mail Misc): More accurate description of disposition.  Suggested
87024	by Michael Albinus <michael.albinus@gmx.de> in
87025	emacs-manual-bugs@gnu.org.
87026
870272018-02-20  Eli Zaretskii  <eliz@gnu.org>
87028
87029	Fix documentation of 'flyspell-auto-correct-word'
87030
87031	* lisp/textmodes/flyspell.el (flyspell-get-word): Elaborate in the
87032	doc string on how the function looks for the word to spell-check.
87033	(flyspell-word, flyspell-auto-correct-word): Refer to
87034	'flyspell-get-word' for details about finding the word.
87035	(Bug#30462)
87036
870372018-02-19  Robert Pluim  <rpluim@gmail.com>
87038
87039	* doc/emacs/misc.texi (Saving Emacs Sessions): Fix markup.
87040
870412018-02-19  Eli Zaretskii  <eliz@gnu.org>
87042
87043	More changes in the Emacs manuals
87044
87045	* doc/emacs/custom.texi (Customization Groups, Browsing Custom)
87046	(Custom Themes, Keymaps, Prefix Keymaps, Modifier Keys)
87047	(Function Keys, Named ASCII Chars, Mouse Buttons, Init Examples):
87048	Fix punctuation.  Suggested by Stefan Kamphausen
87049	<stefan.kamphausen@acrolinx.com> in emacs-manual-bugs@gnu.org.
87050
87051	* doc/emacs/basic.texi (Arguments, Repeating): Avoid breaking
87052	commands between lines.  Reported by Wojciech Politarczyk
87053	<w.politarczyk@gmail.com> in emacs-manual-bugs@gnu.org.
87054
87055	* doc/emacs/custom.texi (Init Rebinding): Move index entries about
87056	rebinding keys from "Init File".  (Bug#30528)
87057
870582018-02-18  Eli Zaretskii  <eliz@gnu.org>
87059
87060	More fixes in the Emacs manual
87061
87062	* doc/emacs/abbrevs.texi (Defining Abbrevs, Expanding Abbrevs)
87063	(Editing Abbrevs, Saving Abbrevs): Insert blank lines between
87064	@item's.
87065	(Expanding Abbrevs): Add 'unexpand-abbrev' to the list of
87066	commands.  Suggested by Michael Albinus <michael.albinus@gmx.de>
87067	in emacs-manual-bugs@gnu.org.
87068
870692018-02-18  Eli Zaretskii  <eliz@gnu.org>
87070
87071	* src/data.c (Faref): Fix a typo in the doc string.  (Bug#30510)
87072
870732018-02-18  Michael Albinus  <michael.albinus@gmx.de>
87074
87075	Minor edit in tramp.texi
87076
87077	* doc/misc/tramp.texi (Remote shell setup, Windows setup hints):
87078	Improve @cindex entries.
87079
870802018-02-17  Eli Zaretskii  <eliz@gnu.org>
87081
87082	More improvements in the Emacs manual
87083
87084	* doc/emacs/maintaining.texi (Xref Commands, Identifier Search)
87085	(List Identifiers): Insert blank lines between @item's in a
87086	@table.
87087	(Etags Regexps): More accurate description of escape sequences.
87088	(Select Tags Table): Prefer "~/emacs.d/init.el" to "~/.emacs".
87089	Suggested by Michael Albinus <michael.albinus@gmx.de> in
87090	emacs-manual-bugs@gnu.org.
87091
870922018-02-17  Eli Zaretskii  <eliz@gnu.org>
87093
87094	Improve documentation of 'electric-pair-mode'
87095
87096	* lisp/elec-pair.el (electric-pair-mode):
87097	* doc/emacs/programs.texi (Matching): Document the operation of
87098	electric-pair-mode when there's an active region.  (Bug#30502)
87099
871002018-02-17  Charles A. Roelli  <charles@aurox.ch>
87101
87102	lisp/vc/: documentation fixes
87103
87104	* lisp/vc/vc.el (vc-region-history): Clarify documentation.
87105	* lisp/vc/add-log.el (change-log-get-method-definition):
87106	Indent documentation.
87107
871082018-02-17  Robert Pluim  <rpluim@gmail.com>
87109
87110	Document 'desktop-files-not-to-save'
87111
87112	* doc/emacs/misc.texi (Saving Emacs Sessions): Add description
87113	of 'desktop-files-not-to-save'.
87114
87115	* lisp/desktop.el (desktop-files-not-to-save): Explain that
87116	the default value excludes buffers visiting remote files.
87117
871182018-02-17  Eli Zaretskii  <eliz@gnu.org>
87119
87120	Improve documentation of Profiling features
87121
87122	* doc/lispref/debugging.texi (Profiling): Improve the description
87123	of elp.el.  Improve wording of the rest of the section.  (Bug#30491)
87124
87125	* lisp/emacs-lisp/elp.el (elp-instrument-list): Make the
87126	interactive invocation work.  Doc fix.
87127
871282018-02-17  Eli Zaretskii  <eliz@gnu.org>
87129
87130	Improve indexing of "performance" in ELisp manual
87131
87132	* doc/lispref/debugging.texi (Profiling):
87133	* doc/lispref/edebug.texi (Coverage Testing): Improve indexing of
87134	features useful for performance analysis.  (Bug#30490)
87135
871362018-02-17  Eli Zaretskii  <eliz@gnu.org>
87137
87138	Minor change in Emacs manual's VC chapter
87139
87140	* doc/emacs/maintaining.texi (Log Buffer): Mention the "Summary"
87141	header.  Suggested by Michael Albinus <michael.albinus@gmx.de> in
87142	emacs-manual-bugs@gnu.org.
87143
871442018-02-17  Noam Postavsky  <npostavs@gmail.com>
87145
87146	Avoid memory corruption with specpdl overflow + edebug (Bug#30481)
87147
87148	If grow_specpdl fails due to outgrowing max_specpdl_size, it will
87149	signal an error *before* growing the specpdl array.  Therefore, when
87150	handling the signal, specpdl_ptr points past the end of the specpdl
87151	array and any further use of specpdl before unwinding (e.g., if
87152	edebug binds signal-hook-function) will cause memory corruption.
87153	* src/eval.c (signal_or_quit): Don't call `signal-hook-function' if
87154	the specpdl_ptr is already past the end of the specpdl array.
87155	* test/src/eval-tests.el (eval-tests--exceed-specbind-limit)
87156	(eval-exceed-specbind-with-signal-hook): New test & helper function.
87157
871582018-02-17  Noam Postavsky  <npostavs@gmail.com>
87159
87160	Document comment-fill-column in the manual (Bug#11636)
87161
87162	* doc/emacs/programs.texi (Comment Commands)
87163	(Options for Comments): Mention comment-fill-column.
87164
871652018-02-17  Glenn Morris  <rgm@gnu.org>
87166
87167	* doc/emacs/dired.texi (Marks vs Flags): Copyedits.
87168
871692018-02-16  Eli Zaretskii  <eliz@gnu.org>
87170
87171	More fixes for the Emacs manual
87172
87173	* doc/emacs/vc1-xtra.texi (Customizing VC): Update the list of
87174	backends.
87175	* doc/emacs/maintaining.texi (Version Control): Add SRC to the
87176	list of VCS.  Remove the description of vc-state-refresh.
87177	(Version Control Systems): Update the description of CVS.
87178	(VC Change Log): Amend the list of VCS that don't support
87179	vc0print-root-log.
87180	(VCS Changesets, VCS Repositories, Advanced C-x v v)
87181	(VC Change Log): Mention SRC with RCS where appropriate.
87182	(VC Directory Commands): More accurate description of
87183	vc-dir-hide-up-to-date.  Suggested by Michael Albinus
87184	<michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
87185
871862018-02-16  Robert Cochran  <robert@cochranmail.com>
87187
87188	Make 'byte-compile-error-on-warn' a safe file variable
87189
87190	* lisp/emacs-lisp/bytecomp.el (byte-compile-error-on-warn): Mark
87191	as a safe local variable for boolean values.
87192
871932018-02-16  Eli Zaretskii  <eliz@gnu.org>
87194
87195	Fix the doc string of flyspell-auto-correct-word
87196
87197	* lisp/textmodes/flyspell.el (flyspell-auto-correct-word): Doc
87198	fix.  (Bug#30462)
87199
872002018-02-16  Eli Zaretskii  <eliz@gnu.org>
87201
87202	Improve the MS-Windows appendix of the Emacs manual
87203
87204	* doc/emacs/msdos.texi (Windows Startup): Describe the pinned
87205	shortcuts for starting Emacs.
87206	(Text and Binary): Minor wording changes.
87207	(Windows Files): Mention 'read-file-name-completion-ignore-case'.
87208	(ls in Lisp): Update the list of supported 'ls' switches.
87209	Document 'ls-lisp-use-string-collate' and
87210	'ls-lisp-UCA-like-collation'.
87211	(Windows HOME): Mention warnings displayed at startup when
87212	deprecated locations of HOME and/or deprecated names for init
87213	files are used.
87214	(Windows Keyboard): Mention delete-selection-mode.
87215
872162018-02-16  Eli Zaretskii  <eliz@gnu.org>
87217
87218	Fix 'vc-git--program-version'
87219
87220	* lisp/vc/vc-git.el (vc-git--program-version): Fix the function to
87221	work with Git for Windows.
87222
872232018-02-16  Eli Zaretskii  <eliz@gnu.org>
87224
87225	Fix typos and wording in the Emacs manual
87226
87227	* doc/emacs/dired.texi (Marks vs Flags, Hiding Subdirectories):
87228	* doc/emacs/maintaining.texi (Tag Syntax):
87229	* doc/emacs/building.texi (Commands of GUD, Threads Buffer)
87230	(Lisp Libraries):
87231	* doc/emacs/windows.texi (Temporary Displays): Fix typos.
87232	* doc/emacs/files.texi (Backup Copying): Fix wording.  Reported by
87233	Stefan Kamphausen <stefan.kamphausen@acrolinx.com> in
87234	emacs-manual-bugs@gnu.org.
87235
872362018-02-16  Michael Albinus  <michael.albinus@gmx.de>
87237
87238	* doc/emacs/programs.texi (Semantic): Order programming languages.
87239
872402018-02-15  Eli Zaretskii  <eliz@gnu.org>
87241
87242	More improvements for the Emacs manual
87243
87244	* doc/emacs/programs.texi (Basic Indent, Comment Commands): Fix
87245	typos.
87246	* doc/emacs/text.texi (TeX Print, HTML Mode, Enriched Faces): Fix
87247	typos.
87248	* doc/emacs/help.texi (Help Files): Improve @uref usage.  Reported
87249	by Stefan Kamphausen <stefan.kamphausen@acrolinx.com> in
87250	emacs-manual-bugs@gnu.org.
87251
87252	* doc/emacs/fortran-xtra.texi (ForIndent Commands): Fix a typo.
87253	(ForIndent Commands, Fortran Columns): Add empty lines between
87254	@items in a @table.
87255	(ForIndent Cont, ForIndent Num, Fortran Columns): Mention
87256	'column-number-indicator-zero-based'.
87257	(ForIndent Vars): Fix a typo.
87258	(Fortran Comments): Fix punctuation.
87259	(ForIndent Cont, Fortran Autofill): Fix markup of keyboard input.
87260	* doc/emacs/programs.texi (Comments): Fix a typo.
87261	(Comment Commands): More accurate description of the commands.
87262	(Options for Comments): Don't mention "hook".
87263	(Man Page): Prefer "M-x man" if available.
87264	(Hideshow): Fix the command key sequence.
87265	(Semantic): Update supported languages.
87266	(Semantic, Hungry Delete, Other C Commands): Fix markup of
87267	commands.
87268	(Misc for Programs): Fix a typo.
87269	(Electric C, Hungry Delete): More accurate description of
87270	mode-line lighters of CC submodes.
87271	(Asm Mode): Add empty lines between @items in a @table.
87272	* doc/emacs/programs.texi (Program Modes): Add a few more modes.
87273	Reported by Michael Albinus <michael.albinus@gmx.de> in
87274	emacs-manual-bugs@gnu.org.
87275
87276	* doc/emacs/msdos.texi (Windows Misc): A minor rewording.
87277	Suggested by Isaac Carter <icarter1391@gmail.com> in
87278	emacs-manual-bugs@gnu.org.
87279
872802018-02-14  Eli Zaretskii  <eliz@gnu.org>
87281
87282	Minor wording change in Emacs manual
87283
87284	* doc/emacs/killing.texi (Accumulating Text): Fix spelling.
87285	Reported by lyr3 <lyr3@protonmail.com> in
87286	emacs-manual-bugs@gnu.org.
87287
872882018-02-14  Eli Zaretskii  <eliz@gnu.org>
87289
87290	Another set of changes for the manual
87291
87292	* doc/emacs/programs.texi (Program Indent): Add a cross-reference
87293	to elisp's description of 'pp'.
87294	(Program Modes): Add a few more programming modes.  Add index
87295	entries.
87296	(Basic Indent, Multi-line Indent, C Indent, Comment Commands)
87297	(Manipulating Comments): Fix markup of keyboard commands.
87298	* doc/emacs/search.texi (Regexps): Add an example with non-ASCII
87299	characters.  Suggested by Michael Albinus <michael.albinus@gmx.de>
87300	in emacs-manual-bugs@gnu.org.
87301
87302	* doc/lispref/display.texi (Display Tables): Fix the description
87303	of the 5th extra slot of the display table.  (Bug#13473)
87304
87305	* doc/emacs/regs.texi (Registers): Simplify wording.
87306
87307	* doc/emacs/custom.texi (Init Non-ASCII): Remove outdated text
87308	about perils of encoded keyboard input.
87309
873102018-02-14  Michael Albinus  <michael.albinus@gmx.de>
87311
87312	Improvements on tramp.texi
87313
87314	* doc/misc/tramp.texi: Use Tramp version in title.  Further
87315	improvements on user option indexing.  Finish command examples
87316	with @key{RET} where appropriate.
87317	(Remote processes): Use 'M-&' for invocation of async shell.
87318	(Frequently Asked Questions): Add example with simplified syntax.
87319
873202018-02-13  Paul Eggert  <eggert@cs.ucla.edu>
87321
87322	Tramp minor doc fixes
87323
87324	* doc/misc/tramp.texi (Remote processes): Spelling fix and minor
87325	wording improvement.
87326
873272018-02-13  Eli Zaretskii  <eliz@gnu.org>
87328
87329	More changes in the Emacs manual
87330
87331	* doc/emacs/search.texi (Regexp Backslash): Say that
87332	symbol-constituent characters are determined by the syntax table.
87333	(Lax Search): Fix example of case-insensitive search.  Fix a
87334	typo.
87335	(Unconditional Replace): Improve wording.
87336	(Regexp Replace): More consistent wording.  Reported by Michael
87337	Albinus <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
87338
87339	* doc/emacs/msdos.texi (Windows HOME): Avoid enumerating all the
87340	Windows versions.  Reported by Isaac Carter
87341	<icarter1391@gmail.com> in emacs-manual-bugs@gnu.org.
87342
873432018-02-13  Andreas Schwab  <schwab@suse.de>
87344
87345	* lisp/vc/vc.el (vc-deduce-backend): Use ignore-errors.
87346
873472018-02-13  Andreas Schwab  <schwab@suse.de>
87348
87349	Don't signal error in vc-deduce-backend
87350
87351	* lisp/vc/vc.el (vc-deduce-backend): Return nil if
87352	vc-responsible-backend signals an error.
87353
873542018-02-13  Michael Albinus  <michael.albinus@gmx.de>
87355
87356	* doc/misc/tramp.texi: Index more user options.
87357
873582018-02-13  Eli Zaretskii  <eliz@gnu.org>
87359
87360	Minor change in the Emacs manual
87361
87362	* doc/emacs/building.texi (Lisp Libraries): Explain why nil in
87363	load-path is not a good idea.  Suggested by James Yoo
87364	<james.yoo@gmail.com> in emacs-manual-bugs@gnu.org.
87365
873662018-02-13  Eli Zaretskii  <eliz@gnu.org>
87367
87368	NEWS update about 'string-trim'
87369
87370	* etc/NEWS: Mention changes in string-trim family of functions.
87371	(Bug#30442)
87372
873732018-02-13  Noam Postavsky  <npostavs@gmail.com>
87374
87375	Clarify TRAMP process-environment interaction (Bug#30419)
87376
87377	* doc/misc/tramp.texi (Remote processes): Index the
87378	tramp-remote-process-environment description.  Clarify the effects of
87379	let-binding process-environment and the motivation for that behavior.
87380
873812018-02-12  Juri Linkov  <juri@linkov.net>
87382
87383	* lisp/progmodes/grep.el (grep-num-matches-found): New variable.
87384
87385	(grep-mode-line-matches): New defconst.
87386	(grep-mode-font-lock-keywords): Update the regexp for “Grep finished”
87387	to include the number of matches found.
87388	(grep-process-setup): Set grep-num-matches-found to 0.
87389	(grep-exit-message): New function with body moved from lambda
87390	in grep-process-setup.  Use grep-num-matches-found to return
87391	the number of matches found.
87392	(grep-filter): Increment grep-num-matches-found.
87393	(grep-mode): Set compilation-mode-line-errors to grep-mode-line-matches.
87394	(Bug#30397, bug#14017)
87395
873962018-02-12  Eli Zaretskii  <eliz@gnu.org>
87397
87398	Avoid aborts in cm.c due to too small TTY frame
87399
87400	* src/frame.c (frame_windows_min_size): Limit TTY frames to a
87401	minimum height large enough to allow for a menu bar, the mode
87402	line, one text line and one echo-area line.  This avoids aborts in
87403	cm.c:cmcheckmagic.  (Bug#30320)
87404
874052018-02-12  Eli Zaretskii  <eliz@gnu.org>
87406
87407	Another set of improvements in the Emacs manual
87408
87409	* doc/emacs/msdos-xtra.texi (MS-DOS Keyboard):
87410	* doc/emacs/msdos.texi (Windows Keyboard):
87411	* doc/emacs/mark.texi (Using Region):
87412	* doc/emacs/frames.texi (Menu Mouse Clicks):
87413	* doc/emacs/macos.texi (Mac / GNUstep Basics): Fix spelling of
87414	keys.  Reported by Michael Albinus <michael.albinus@gmx.de> in
87415	emacs-manual-bugs@gnu.org.
87416
87417	* doc/emacs/glossary.texi (Glossary): Document that "c.f." is a
87418	misspelling.  Reported by Robert Pluim <rpluim@gmail.com>.
87419	Various minor wording improvements.  Suggested by Toon Claes
87420	<toon@iotcl.com> in emacs-manual-bugs@gnu.org.
87421	More minor changes.  Suggested by Michael Albinus
87422	<michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
87423
87424	* doc/emacs/cmdargs.texi (Title X): Improve wording.
87425
87426	* doc/emacs/building.texi (Grep Searching, Compilation): Avoid
87427	passive tense.
87428
87429	* doc/emacs/basic.texi (Moving Point): Move the description of the
87430	bidi-related effects of the arrow keys from here ...
87431	* doc/emacs/mule.texi (Bidirectional Editing): ... to here.
87432	Explain the behavior of arrow keys between paragraphs.
87433
874342018-02-12  Michael Albinus  <michael.albinus@gmx.de>
87435
87436	Fix help in mode-line-mode-menu
87437
87438	* lisp/bindings.el (mode-line-mode-menu) [auto-revert-tail-mode]:
87439	Fix help string.
87440
874412018-02-11  Eli Zaretskii  <eliz@gnu.org>
87442
87443	Improve documentation of desktop restoring
87444
87445	* doc/emacs/misc.texi (Saving Emacs Sessions): Document
87446	'desktop-auto-save-timeout', 'desktop-load-locked-desktop', and
87447	how to restore desktop in daemon mode.  (Bug#30421)
87448
874492018-02-11  Eli Zaretskii  <eliz@gnu.org>
87450
87451	Improve the Emacs manual's chapter "Frames"
87452
87453	* doc/emacs/frames.texi (Creating Frames): Add a cross-reference
87454	to where frame visibility is described.
87455	(Word and Line Mouse): Clarify wording.
87456	(Scroll Bars): Qualify scroll-bar behavior.  Reported by Dmitry
87457	Gutov <dgutov@yandex.ru> in emacs-manual-bugs@gnu.org.
87458
874592018-02-10  Andreas Schwab  <schwab@linux-m68k.org>
87460
87461	Fix unbound mm-uu-entry in mm-uu
87462
87463	* lisp/gnus/mm-uu.el (mm-uu-dissect): Rename entry to mm-uu-entry.
87464
874652018-02-10  Eli Zaretskii  <eliz@gnu.org>
87466
87467	Improve Emacs user manual in fixit.texi
87468
87469	* doc/emacs/fixit.texi (Undo): Clarify inaccurate description of
87470	repeated undo.
87471	(Transpose): Describe explicitly what happens at EOL.
87472	(Spelling): Use "spell-checking" consistently.  Clarify wording.
87473	Suggested by Toon Claes <toon@iotcl.com> in
87474	emacs-manual-bugs@gnu.org.
87475
874762018-02-10  Eli Zaretskii  <eliz@gnu.org>
87477
87478	Another minor change in the manual
87479
87480	* doc/emacs/glossary.texi (Glossary): Add popular Latin
87481	abbreviations, such as "e.g.".
87482
874832018-02-10  Eli Zaretskii  <eliz@gnu.org>
87484
87485	More minor changes in the Emacs manual
87486
87487	* doc/emacs/xresources.texi (GTK resources):
87488	* doc/emacs/trouble.texi (Contributing):
87489	* doc/emacs/frames.texi (Fonts): Use HTTPS URLs instead of HTTP.
87490
87491	* doc/emacs/docstyle.texi: Add a few @hyphenation directives,
87492	based on reports in emacs-manual-bugs@gnu.org about incorrect
87493	hyphenation.
87494
874952018-02-10  Eli Zaretskii  <eliz@gnu.org>
87496
87497	Avoid printing garbled error message from image.el
87498
87499	* lisp/image.el (image--get-imagemagick-and-warn): Don't use
87500	apostrophe in the error message, as that message is shown from a
87501	unibyte buffer, and will run afoul of the default style of showing
87502	quote characters.  (Bug#30405)
87503
875042018-02-09  Eli Zaretskii  <eliz@gnu.org>
87505
87506	Doc string fix in latin-alt.el
87507
87508	* lisp/leim/quail/latin-alt.el ("dutch"): Doc fix.  Reported by
87509	Robert Pluim <rpluim@gmail.com>.
87510
875112018-02-09  Eli Zaretskii  <eliz@gnu.org>
87512
87513	Minor improvements in package.texi
87514
87515	* doc/emacs/package.texi (Package Menu): Minor wording change.
87516	(Package Installation): Use HTTPS.  A better @xref to GnuPG
87517	manual.  Suggested by Michael Albinus <michael.albinus@gmx.de> in
87518	emacs-manual-bugs@gnu.org.
87519
875202018-02-09  Eli Zaretskii  <eliz@gnu.org>
87521
87522	Minor improvement in Emacs user manual
87523
87524	* doc/emacs/files.texi (Directories): Document that
87525	'directory-free-space-program' and 'directory-free-space-args' are
87526	only for local filesystems.  Suggested by Michael Albinus
87527	<michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
87528
875292018-02-09  Michael Albinus  <michael.albinus@gmx.de>
87530
87531	* doc/lispref/anti.texi (Antinews): Replace 25.2 with 25.3.
87532
875332018-02-09  Eli Zaretskii  <eliz@gnu.org>
87534
87535	Improve documentation of mini-window resizing
87536
87537	* doc/lispref/minibuf.texi (Minibuffer Windows): Mention
87538	'message-truncate-lines' for preventing resizing of minibuffer
87539	windows.  (Bug#19045)
87540	(Minibuffer Misc): Remove redundant description of
87541	'max-mini-window-height'.
87542	* doc/lispref/display.texi (Echo Area Customization): Adjust
87543	cross-reference.
87544
875452018-02-09  Eli Zaretskii  <eliz@gnu.org>
87546
87547	More changes in the Emacs manual
87548
87549	* doc/emacs/fixit.texi (Undo): Mention 'revert-buffer'.
87550	(Fixing Case): Fix punctuation.
87551	(Spelling): Fix a typo.  Suggested by Toon Claes <toon@iotcl.com>
87552	in emacs-manual-bugs@gnu.org.
87553
87554	* doc/emacs/modes.texi (Major Modes): Break a long sentence into
87555	2.  Reported by Stefan Kamphausen <stefan.kamphausen@acrolinx.com>
87556	in emacs-manual-bugs@gnu.org.
87557
87558	* doc/emacs/indent.texi (Just Spaces): Yet another minor
87559	rewording.
87560
87561	* doc/emacs/building.texi (Watch Expressions): Improve wording.
87562	(Multithreaded Debugging): Spell "tool bar" as 2 words.  Reported
87563	by Alberto Sartori <alberto.sartori@sissa.it> in
87564	emacs-manual-bugs@gnu.org.
87565	(Grep Searching): Mention the effect of
87566	'compilation-mode-line-errors'.  (Bug#30397)
87567
87568	* doc/emacs/basic.texi (Moving Point): Minor reformatting and
87569	rewording of what <LEFT> and <RIGHT> do.
87570
875712018-02-09  Noam Postavsky  <npostavs@gmail.com>
87572
87573	Clarify that text-quoting-style doesn't affect *Info* (Bug#24519)
87574
87575	* src/doc.c (syms_of_doc) <text-quoting-style>: Clarify that info
87576	manual display is unaffected.
87577
875782018-02-09  Noam Postavsky  <npostavs@gmail.com>
87579
87580	Mention that shell quoting of % on w32 may fail (Bug#19350)
87581
87582	* doc/lispref/os.texi (Security Considerations): Mention that quoting
87583	of '%' assumes no '^' in variable names.
87584	* test/lisp/subr-tests.el (shell-quote-argument-%-on-w32): New test,
87585	demonstrating what doesn't work.
87586
875872018-02-09  Noam Postavsky  <npostavs@gmail.com>
87588
87589	Fix --no-build-details for w32 and macOS
87590
87591	* src/w32term.c (w32_initialize_display_info): Handle nil system-name.
87592	* lisp/term/ns-win.el (window-system-initialization): Don't pass nil
87593	to `x-open-connection'.
87594
875952018-02-09  Paul Eggert  <eggert@cs.ucla.edu>
87596
87597	* doc/lispref/anti.texi (Antinews): Add some more antinews.
87598
875992018-02-08  Paul Eggert  <eggert@cs.ucla.edu>
87600
87601	Fix crashes when run with --no-build-details
87602
87603	* src/xrdb.c (get_environ_db):
87604	* src/xterm.c (same_x_server, x_term_init):
87605	Don’t assume Fsystem_name returns a string.
87606
876072018-02-08  Eli Zaretskii  <eliz@gnu.org>
87608
87609	More changes for the manual
87610
87611	* doc/emacs/anti.texi (Antinews): Replace 25.2 with 25.3.
87612	Reported by Michael Albinus <michael.albinus@gmx.de> in
87613	emacs-manual-bugs@gnu.org.
87614
87615	* doc/emacs/custom.texi (Function Keys): Improve wording.
87616	Suggested by clemens.radermacher@posteo.de in
87617	emacs-manual-bugs@gnu.org.
87618
87619	* doc/emacs/misc.texi (History References): Improve punctuation.
87620	(Terminal emulator): Fix a typo.
87621	(Term Mode): Remove redundant repeated text.
87622	(Invoking emacsclient): Improve wording.  Suggested by Alberto
87623	Sartori <alberto.sartori@sissa.it> in emacs-manual-bugs@gnu.org.
87624
87625	* doc/emacs/files.texi (Visiting): Fix last change.
87626
876272018-02-08  Noam Postavsky  <npostavs@gmail.com>
87628
87629	Doc fixes for process functions (Bug#30349)
87630
87631	* doc/lispref/processes.texi (Asynchronous Processes): Explain what
87632	the 'stopped' state means for a pipe process.
87633	* src/process.c (Fmake_process, Fmake_pipe_process)
87634	(Fmake_serial_process, Fmake_network_process):
87635	* lisp/subr.el (start-process):
87636	* lisp/net/tls.el (open-tls-stream):
87637	* lisp/net/starttls.el (starttls-open-stream):
87638	* lisp/net/gnutls.el (open-gnutls-stream): Remove meaningless phrase
87639	"specify an output stream" phrase from docstring.
87640
876412018-02-07  Basil L. Contovounesios  <contovob@tcd.ie>
87642
87643	Fix shr and CSS 4 color maps
87644
87645	* lisp/net/shr-color.el (shr-color-html-colors-alist): Fix typos.
87646	Add RebeccaPurple.
87647	* lisp/textmodes/css-mode.el (css--color-map): Add fuchsia-magenta
87648	and aqua-cyan aliases.
87649	* test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
87650	Bump color count.
87651
876522018-02-07  Eli Zaretskii  <eliz@gnu.org>
87653
87654	Yet another round of improvements in the manual
87655
87656	* doc/emacs/misc.texi (Document View): Improve wording.  Reported
87657	by lyr3 <lyr3@protonmail.com> in emacs-manual-bugs@gnu.org.
87658
87659	* doc/emacs/files.texi (Recover): Fix a typo.  Reported by Jorge
87660	<jorge+list@disroot.org> in emacs-manual-bugs@gnu.org.
87661
87662	* doc/emacs/anti.texi (Antinews): Fix typos.  Reported by Justin
87663	Heyes-Jones <justinhj@gmail.com> in emacs-manual-bugs@gnu.org.
87664
87665	* doc/emacs/mini.texi (Basic Minibuffer): Clarify wording.
87666	Reported by Vivishek Sudhir <vivishek.sudhir@gmail.com> in
87667	emacs-manual-bugs@gnu.org.
87668
87669	* doc/emacs/cmdargs.texi (MS-Windows Registry): Improve wording
87670	regarding registry keys.
87671
87672	* doc/emacs/macos.texi (Mac OS / GNUstep): Sayu "NeXT Inc."
87673	Reported by Cena Mayo <cenazoic@gmail.com> in
87674	emacs-manual-bugs@gnu.org.
87675
87676	* doc/emacs/screen.texi (Screen): More accurate wording.
87677	Suggested by Miloš Polakovič <milos@alphamail.org> in
87678	emacs-manual-bugs@gnu.org.
87679
87680	* doc/emacs/indent.texi (Just Spaces): Minor wording change.
87681	Suggested by David Bonnafous <dbonnafo@gmail.com> in
87682	emacs-manual-bugs@gnu.org.
87683
87684	* doc/emacs/text.texi (TeX Mode, TeX Editing): Improve and
87685	simplify wording.  Suggested by root@vxid.pw <root@vxid.pw> in
87686	emacs-manual-bugs@gnu.org.
87687
87688	* doc/emacs/cmdargs.texi (Window Size X): Minor wording change.
87689
87690	* doc/emacs/display.texi (Highlight Interactively): Fill text.
87691	(Optional Mode Line): Fix typos.  Suggested by Alberto Sartori
87692	<alberto.sartori@sissa.it> in emacs-manual-bugs@gnu.org.
87693
87694	* doc/emacs/building.texi (Debugger Operation): Clarify wording.
87695
87696	* doc/emacs/files.texi (Directories, Comparing Files, Diff Mode)
87697	(Remote Files, File Names, Visiting, Backup Deletion)
87698	(Customize Save, Interlocking): Improve wording and accuracy of
87699	the text.
87700	* doc/emacs/maintaining.texi (VC With A Merging VCS): Don't say
87701	"his".
87702	* doc/emacs/arevert-xtra.texi (Auto Reverting Dired): Minor
87703	wording changes.
87704	(Supporting additional buffers): Moved to ...
87705	* doc/lispref/backups.texi (Reverting): ... here.
87706	* doc/emacs/emacs.texi (Top): Remove "Supporting additional
87707	buffers" from master menu.
87708	* doc/emacs/files.texi (Reverting): Mention use of file
87709	notifications.  Suggested by Michael Albinus
87710	<michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
87711
87712	* doc/emacs/rmail.texi (Rmail Motion): Clarify what '-' does to
87713	'M-s'.  Suggested by Arthur Milchior <arthur@milchior.fr> in
87714	emacs-manual-bugs@gnu.org.
87715
87716	* doc/emacs/cmdargs.texi (Initial Options): Capitalize "Emacs".
87717	(Action Arguments): Fix a typo.
87718	(Emacs Invocation): Replace em-dash with a comma.  Suggested by
87719	Justin Heyes-Jones <justinhj@gmail.com> in
87720	emacs-manual-bugs@gnu.org.
87721
87722	* doc/emacs/m-x.texi (M-x): Add an example.  Suggested by Alberto
87723	Sartori <alberto.sartori@sissa.it> in emacs-manual-bugs@gnu.org.
87724
87725	* doc/emacs/calendar.texi (Calendar/Diary, Calendar Unit Motion):
87726	Minor wording changes.
87727
877282018-02-04  Juri Linkov  <juri@linkov.net>
87729
87730	* lisp/vc/vc-git.el (vc-git-print-log): Restrict file scope to a single file
87731
87732	when vc-git-print-log-follow is non-nil (bug#19045).
87733	(vc-git-print-log-follow): Doc fix.
87734
87735	* etc/NEWS: Mention 'vc-git-print-log-follow'.
87736
877372018-02-04  Michael Albinus  <michael.albinus@gmx.de>
87738
87739	* doc/emacs/misc.texi (Interactive Shell): Refer to node "Minibuffer File"
87740
87741	for hints how to type remote file names effectively.
87742
877432018-02-04  Eli Zaretskii  <eliz@gnu.org>
87744
87745	Yet another round of fixing the Emacs manual
87746
87747	* doc/emacs/cmdargs.texi (Action Arguments): Rearrange text
87748	describing what happens when Emacs is invoked with several file
87749	arguments.  Suggested by Grant Rettke <gcr@wisdomandwonder.com> in
87750	emacs-manual-bugs@gnu.org.
87751
87752	* doc/emacs/xresources.texi (GTK styles):
87753	* doc/emacs/mini.texi (Passwords):
87754	* doc/emacs/frames.texi (Scroll Bars): Use "cannot" instead of
87755	"can not".
87756
87757	* doc/emacs/macos.texi (Mac / GNUstep Basics): Clarify the effect
87758	of ns-right-alternate-modifier when its value is 'none'.
87759	Suggested by Wanderson Ferreira <iagwanderson@gmail.com> in
87760	emacs-manual-bugs@gnu.org.
87761
87762	* doc/emacs/calendar.texi (Importing Diary, Appointments): Now
87763	sub-sections of Diary.
87764	* doc/emacs/emacs.texi (Top):
87765	* doc/emacs/calendar.texi (Diary): Adjust menus to the above
87766	change.  Suggested by Isaac Carter <icarter1391@gmail.com> in
87767	emacs-manual-bugs@gnu.org.
87768
87769	* doc/emacs/anti.texi (Antinews): Fix grammar.
87770
877712018-02-04  Alan Mackenzie  <acm@muc.de>
87772
87773	* etc/NEWS: Expunge the solecism "allow(s)" + infinitive
87774
877752018-02-04  Martin Rudalics  <rudalics@gmx.at>
87776
87777	Two minor fixes in Antinews
87778
87779	* doc/emacs/anti.texi (Antinews): Two minor fixes.
87780
877812018-02-03  Juri Linkov  <juri@linkov.net>
87782
87783	* etc/NEWS: Rename image-dired-thumb-job-limit
87784
87785	to image-dired-queue-active-limit (bug#30279)
87786
877872018-02-03  Basil L. Contovounesios  <contovob@tcd.ie>
87788
87789	* lisp/simple.el (async-shell-command, shell-command): Fix grammar
87790
877912018-02-03  Basil L. Contovounesios  <contovob@tcd.ie>
87792
87793	Fix deferred display of async shell-command buffers
87794
87795	* lisp/simple.el (shell-command): Display async shell buffer on
87796	process output for every, not just first, command invocation.  Check
87797	buffer liveness, not name, before displaying. (bug#30213, bug#30280)
87798
877992018-02-03  Eli Zaretskii  <eliz@gnu.org>
87800
87801	Mention remote file name completion in Emacs manual
87802
87803	* doc/emacs/mini.texi (Minibuffer File): Describe the behavior of
87804	"//" with remote file names.  (Bug#29149)
87805
878062018-02-03  Eli Zaretskii  <eliz@gnu.org>
87807
87808	Yest another round of manual copyedits
87809
87810	* doc/emacs/fixit.texi (Transpose, Spelling): Minor stylistic
87811	changes.  Suggested by myq larson <myqlarson@gmail.com> in
87812	emacs-manual-bugs@gnu.org.
87813
87814	* doc/emacs/calendar.texi (Appointments, Time Intervals): Mention
87815	relevant Org features.  Suggested by Alex Branham
87816	<alex.branham@gmail.com> in emacs-manual-bugs@gnu.org.
87817
87818	* doc/emacs/dired.texi (Operating on Files)
87819	(Shell Commands in Dired, Image-Dired): Minor stylistic edits.
87820	Suggested by Francis Wright <f.j.wright@live.co.uk> in
87821	emacs-manual-bugs@gnu.org.
87822
87823	* doc/emacs/commands.texi (User Input): Explain "C-M-a".
87824	Suggested by Martin Luethi <martin.luethi@geo.uzh.ch> in
87825	emacs-manual-bugs@gnu.org.
87826
878272018-02-03  Eli Zaretskii  <eliz@gnu.org>
87828
87829	Update xdisp.c commentary
87830
87831	* src/xdisp.c: Update commentary regarding "asynchronous" entry
87832	into redisplay.  (Bug#30182)
87833
878342018-02-03  Michael Albinus  <michael.albinus@gmx.de>
87835
87836	Fix Bug#30324
87837
87838	* lisp/net/rlogin.el (rlogin, rlogin-directory-tracking-mode):
87839	Adapt to changed remote file name syntax.  (Bug#30324)
87840
878412018-02-03  Glenn Morris  <rgm@gnu.org>
87842
87843	Recognize Org as builtin package (bug#30310)
87844
87845	* lisp/org/org.el: Add Version header so detected as builtin package.
87846	* test/lisp/org/org-tests.el: New file.
87847
878482018-02-02  Eli Zaretskii  <eliz@gnu.org>
87849
87850	Another round of manual fixups
87851
87852	* doc/emacs/killing.texi (Killing by Lines): Clarify wording.
87853	Reported by David Bonnafous <dbonnafo@gmail.com> in
87854	emacs-manual-bugs@gnu.org.
87855
87856	* doc/emacs/windows.texi (Other Window): Improve wording.
87857	Reported by Rasmus Sjostrom <ras.sjostrom@gmail.com> in
87858	emacs-manual-bugs@gnu.org.
87859
87860	* doc/emacs/display.texi (Display Custom): Mention that line
87861	numbers are not displayed in the minibuffer and tooltips.
87862
87863	* doc/emacs/mini.texi (Basic Minibuffer): Improve wording.
87864	* doc/emacs/regs.texi (Registers): More comma removal.  Suggested
87865	by "root@vxid.pw root@vxid.pw" <root@vxid.pw> in
87866	emacs-manual-bugs@gnu.org.
87867
87868	* doc/emacs/display.texi (Auto Scrolling): Fix a typo.  Reported
87869	by Kevin Foley <kfoley15@gmail.com> in emacs-manual-bugs@gnu.org.
87870
87871	* doc/emacs/display.texi (Scrolling): Fix grammar.
87872	(Horizontal Scrolling): Mention reasonable limits for hscroll-step
87873	float values.  Suggested by Jerome Truong <jerometruong@gmail.com>
87874	in emacs-manual-bugs@gnu.org.
87875
87876	* doc/emacs/mini.texi (Minibuffer Edit): Add a missing comma.
87877	* doc/emacs/basic.texi (Position Info, Arguments, Repeating):
87878	Remove redundant commas.  Suggested by oldgaro
87879	<oldgaro@protonmail.com> in emacs-manual-bugs@gnu.org.
87880
87881	* doc/emacs/kmacro.texi (Save Keyboard Macro): Clarify wording.
87882	Suggested by clemens.radermacher@posteo.de in
87883	emacs-manual-bugs@gnu.org.
87884
87885	* doc/emacs/building.texi (Compilation Mode): Improve and simplify
87886	wording.  Suggested by drone <yoorobot@gmail.com> in
87887	emacs-manual-bugs@gnu.org.
87888
87889	* doc/emacs/dired.texi (Dired Enter): Clarify wording.
87890	(Dired Deletion): Fix a typo.
87891	(Marks vs Flags): Mention that M-DEL in Dired asks for the mark
87892	character.  Fix typos.
87893	* doc/emacs/basic.texi (Moving Point, Erasing, Basic Undo)
87894	(Arguments): Some additional information about keys.  Reported by
87895	Francis Wright <f.j.wright@live.co.uk> in
87896	emacs-manual-bugs@gnu.org.
87897
878982018-02-02  Basil L. Contovounesios  <contovob@tcd.ie>  (tiny change)
87899
87900	* doc/lispref/customize.texi (Custom Themes): Clarify .el preference.
87901
87902
87903	https://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00824.html.
87904
879052018-02-02  Eli Zaretskii  <eliz@gnu.org>
87906
87907	* doc/emacs/entering.texi (Entering Emacs): Another wording fix.
87908
879092018-02-02  Noam Postavsky  <npostavs@gmail.com>
87910
87911	* doc/lispref/functions.texi (Inline Functions): Fix typo (Bug#30238).
87912
87913	* lisp/imenu.el (imenu-generic-expression): Rephrase doc (Bug#30294).
87914
879152018-02-01  Eli Zaretskii  <eliz@gnu.org>
87916
87917	Fix last change of @key markup
87918
87919	* doc/lispref/display.texi (Specified Space):
87920	* doc/emacs/programs.texi (C Modes):
87921	* doc/emacs/killing.texi (Rectangles):
87922	* doc/emacs/emacs.texi (Top):
87923	* doc/emacs/display.texi (Useless Whitespace): Don't use @key
87924	markup for characters and commands, only for keys.
87925
879262018-02-01  Eli Zaretskii  <eliz@gnu.org>
87927
87928	* doc/emacs/entering.texi (Entering Emacs): Fix markup.
87929
879302018-02-01  Michael Albinus  <michael.albinus@gmx.de>
87931
87932	Revert a1bbc49015 (Bug#30243), do not merge
87933
87934	* lisp/files.el:
87935	* test/lisp/net/tramp-tests.el: Revert a1bbc49015.  (Bug#30243)
87936
879372018-01-31  Michael Albinus  <michael.albinus@gmx.de>
87938
87939	Use @key{} where it is missing in the manuals
87940
879412018-01-31  Eli Zaretskii  <eliz@gnu.org>
87942
87943	Another round of manual fixes from proofreading
87944
87945	* doc/emacs/search.texi (Incremental Search)
87946	(Nonincremental Search): Mention the menu bar and fix typos.
87947	Reported by David Bonnafous <dbonnafo@gmail.com> in
87948	emacs-manual-bugs@gnu.org.
87949	* doc/emacs/building.texi (Compilation): Improve wording.
87950	Suggested by drone <yoorobot@gmail.com> in
87951	emacs-manual-bugs@gnu.org.
87952	* doc/emacs/kmacro.texi (Basic Keyboard Macro): Clarify text.
87953	Suggested by Robert Pluim <rpluim@gmail.com> in
87954	emacs-manual-bugs@gnu.org.
87955	* doc/emacs/display.texi (Highlight Interactively, Fringes):
87956	Improve wording.  Suggested by Justin Heyes-Jones
87957	<justinhj@gmail.com> in emacs-manual-bugs@gnu.org.
87958	* doc/emacs/commands.texi (User Input, Commands): Add missing
87959	commas.
87960	* doc/emacs/screen.texi (Menu Bar): Mention keyboard keys to
87961	navigate menus.  Suggested by oldgaro <oldgaro@protonmail.com> in
87962	emacs-manual-bugs@gnu.org.
87963	* doc/emacs/search.texi (Not Exiting Isearch): Fix a typo.
87964	Reported by "Kocken, I.J. (Ilja)" <I.J.Kocken@uu.nl> in
87965	emacs-manual-bugs@gnu.org.
87966	* doc/emacs/basic.texi (Inserting Text): Mention one more label of
87967	RET.  Suggested by Francis Wright <f.j.wright@live.co.uk> in
87968	emacs-manual-bugs@gnu.org.
87969	* doc/emacs/text.texi (Paragraphs): Clarify text.  Reported by
87970	Marcin Borkowski <mbork@mbork.pl> in emacs-manual-bugs@gnu.org.
87971	* doc/emacs/maintaining.texi (Introduction to VC)
87972	(Why Version Control?, VCS Merging): Fix typos and section
87973	capitalization.  Suggested by "R. P. Dillon"
87974	<rpdillon@killring.org> in emacs-manual-bugs@gnu.org.
87975	* doc/emacs/modes.texi (Major Modes, Choosing Modes): Fix typos.
87976	Reported by clemens.radermacher@posteo.de in
87977	emacs-manual-bugs@gnu.org.
87978
879792018-01-31  Eli Zaretskii  <eliz@gnu.org>
87980
87981	* doc/emacs/entering.texi (Entering Emacs): Fix last change.
87982
879832018-01-31  Martin Rudalics  <rudalics@gmx.at>
87984
87985	Document 'window-at-side-p' in the Elisp manual
87986
87987	* doc/lispref/windows.texi (Windows and Frames): Document
87988	'window-at-side-p'.
87989
879902018-01-31  Noam Postavsky  <npostavs@gmail.com>
87991
87992	Document external-debugging-output in the Elisp Manual (Bug#24051)
87993
87994	* doc/lispref/streams.texi (Output Streams): List
87995	external-debugging-output.
87996	* src/print.c (Fexternal_debugging_output): Quote `print' in
87997	docstring.
87998
879992018-01-31  Noam Postavsky  <npostavs@gmail.com>
88000
88001	Fix scroll-margin docstring (Bug#13791)
88002
88003	* src/xdisp.c (syms_of_xdisp) <scroll-margin>: Explain that entering
88004	the margin may trigger any sort of auto scrolling, not recentering
88005	specifically.
88006
880072018-01-31  Noam Postavsky  <npostavs@gmail.com>
88008
88009	Clarify that `ansi-term' is almost the same as `term' (Bug#18106)
88010
88011	* lisp/term.el (ansi-term): Clarify that it's almost the same as `term'.
88012
880132018-01-31  Noam Postavsky  <npostavs@gmail.com>
88014
88015	Update manual description of locate-file (Bug#23650)
88016
88017	* doc/lispref/files.texi (Locating Files): Add example of predicate
88018	when searching for a directory.
88019
880202018-01-31  Noam Postavsky  <npostavs@gmail.com>
88021
88022	Clarify effect of print-gensym (Bug#27776)
88023
88024	* src/print.c (syms_of_print) <print-gensym>: Clarify that use of #N#
88025	and #N= constructs depends on the value of `print-circle'.
88026
880272018-01-31  Noam Postavsky  <npostavs@gmail.com>
88028
88029	* lisp/custom.el (defcustom): Fix docstring (Bug#27891).
88030
880312018-01-31  Noam Postavsky  <npostavs@gmail.com>
88032
88033	Define cl-type-definition button type as needed (Bug#28899)
88034
88035	* lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor): Require
88036	`cl-extra' before using the `cl-type-definition' button type.
88037
880382018-01-31  Noam Postavsky  <npostavs@gmail.com>
88039
88040	Emphasize that GPG passphrase caching is temporary (Bug#29907)
88041
88042	* doc/misc/epa.texi (Caching Passphrases): Clarify that caching is
88043	temporary.
88044	(GnuPG version compatibility): Fix typo.
88045
880462018-01-30  Alan Mackenzie  <acm@muc.de>
88047
88048	Fix @examples in cc-mode.info, where lines were getting glued together.
88049
88050	This happened because of false @c's in macro lines.
88051
88052	* doc/misc/cc-mode.texi (Line-up Functions): Remove the unneeded @c from
88053	macros sssTBasicOffset, sssTsssTBasicOffset, and hereFn.
88054
880552018-01-30  Eli Zaretskii  <eliz@gnu.org>
88056
88057	Minor change in "Mode Line" section of Emacs manual
88058
88059	* doc/emacs/screen.texi (Mode Line): Mention tooltips shown when
88060	hovering the mouse over the mode line.  Suggested by Eduardo
88061	Mercovich <eduardo@mercovich.net> in emacs-manual-bugs@gnu.org.
88062
880632018-01-30  Eli Zaretskii  <eliz@gnu.org>
88064
88065	More fixes in the Emacs manual
88066
88067	* doc/emacs/screen.texi (Mode Line): Fix markup and
88068	cross-references.
88069	(Menu Bar): Correct inaccurate description.
88070	* doc/emacs/macos.texi (Mac OS / GNUstep, Mac / GNUstep Events):
88071	* doc/emacs/frames.texi (Scroll Bars):
88072	* doc/emacs/emacs.texi (Top):
88073	* doc/emacs/ack.texi (Acknowledgments): Fix spelling of "macOS".
88074	* doc/emacs/misc.texi (Invoking emacsclient)
88075	(emacsclient Options): Fix markup of 'emacsclient'.  Suggested by
88076	Michael Albinus <michael.albinus@gmx.de> in
88077	emacs-manual-bugs@gnu.org.
88078
880792018-01-30  Eli Zaretskii  <eliz@gnu.org>
88080
88081	Minor copyedits in "Distribution" chapter of the Emacs manual
88082
88083	* doc/emacs/emacs.texi (Distrib): Minor wording changes.
88084	Suggested by oldgaro <oldgaro@protonmail.com> in
88085	emacs-manual-bugs@gnu.org.
88086
880872018-01-30  Eli Zaretskii  <eliz@gnu.org>
88088
88089	Minor copyedits in "Entering" chapter of Emacs manual.
88090
88091	* doc/emacs/entering.texi (Entering Emacs): Add a cross-reference
88092	to MS-Windows startup procedures.  Clarify wording.  Suggested by
88093	Francis Wright <f.j.wright@live.co.uk> in emacs-manual-bugs@gnu.org.
88094
880952018-01-30  Eli Zaretskii  <eliz@gnu.org>
88096
88097	Minor wording change in the Emacs manual
88098
88099	* doc/emacs/screen.texi (Screen): Minor wording change.  Suggested
88100	by Wesley Ellis <ellisgen@gmail.com> in emacs-manual-bugs@gnu.org.
88101
881022018-01-30  Eli Zaretskii  <eliz@gnu.org>
88103
88104	Fix a typo in the Emacs manual
88105
88106	* doc/emacs/custom.texi (Customization Groups): Fix a typo.
88107	Reported by Jonathan Kyle Mitchell <kyle@jonathanmitchell.org> in
88108	emacs-manual-bugs@gnu.org.
88109
881102018-01-30  Eli Zaretskii  <eliz@gnu.org>
88111
88112	Improve the "Basic" chapter of the Emacs manual
88113
88114	* doc/emacs/basic.texi (Inserting Text): De-confuse text.
88115	(Position Info): Add a cross-reference to where
88116	display-line-numbers-mode is described.  Reported by Joshua
88117	Branson <jbranso@fastmail.com> in emacs-manual-bugs@gnu.org.
88118
881192018-01-30  Eli Zaretskii  <eliz@gnu.org>
88120
88121	Resurrect lost text in lispref
88122
88123	* doc/lispref/files.texi (File Attributes): Resurrect
88124	inadvertently lost text.
88125
881262018-01-30  Philipp Stephani  <phst@google.com>
88127
88128	* lisp/emacs-lisp/rx.el (rx): Fix the definition of 'blank'.
88129
881302018-01-29  Paul Eggert  <eggert@cs.ucla.edu>
88131
88132	Proofread os.texi and files.texi
88133
881342018-01-29  Eli Zaretskii  <eliz@gnu.org>
88135
88136	Minor improvements in the "International" chapter of Emacs manual
88137
88138	* doc/emacs/mule.texi (File Name Coding): Stop enumerating all the
88139	versions of MS-Windows.
88140	(Modifying Fontsets, Unibyte Mode, Bidirectional Editing): Improve
88141	wording.  Reported by Francis Wright <f.j.wright@live.co.uk> in
88142	emacs-manual-bugs@gnu.org.
88143
881442018-01-29  Eli Zaretskii  <eliz@gnu.org>
88145
88146	Minor improvement in "Text" chapter of Emacs manual
88147
88148	* doc/emacs/text.texi (Words): Improve wording.  Reported by
88149	Marcin Borkowski <mbork@mbork.pl> in
88150	http://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00784.html.
88151
881522018-01-28  Martin Rudalics  <rudalics@gmx.at>
88153
88154	Fix some issues in the emacs/lispref manuals
88155
88156	* doc/emacs/basic.texi (Continuation Lines):
88157	* doc/emacs/building.texi (GDB User Interface Layout):
88158	* doc/emacs/dired.texi (Misc Dired Features):
88159	* doc/emacs/maintaining.texi (Identifier Search):
88160	* doc/emacs/mark.texi (Using Region):
88161	* doc/emacs/misc.texi (Document View, DocView Conversion):
88162	* doc/emacs/modes.texi (Major Modes):
88163	* doc/emacs/mule.texi (Input Methods, Unibyte Mode):
88164	* doc/emacs/sending.texi (Mail Methods): Replace @code by
88165	@kbd.
88166	* doc/emacs/frames.texi (Text-Only Mouse):
88167	* doc/lispref/maps.texi (Standard Keymaps): Replace @kbd by
88168	@key.
88169	* doc/lispref/compile.texi (Compiler Errors): Write
88170	non-@code{nil} instead of non-nil.
88171	* doc/lispref/debugging.texi (Internals of Debugger):
88172	'backtrace' is not a command.  'debugger-stack-frame-as-list'
88173	is an option.
88174	* doc/lispref/display.texi (Size of Displayed Text):
88175	'window-lines-pixel-dimensions' has a last argument 'left'.
88176	* doc/lispref/display.texi (Attribute Functions):
88177	'set-face-underline' and 'set-face-inverse-video' are
88178	commands.
88179	(Tooltips): 'tooltip-frame-parameters' is an option.
88180	(Bidirectional Display): 'bidi-paragraph-direction' is an
88181	option.
88182	* doc/lispref/frames.texi (Cursor Parameters): 'cursor-type'
88183	is an option.
88184	(Input Focus): Argument FRAME of 'x-focus-frame' is not
88185	optional.
88186	(Child Frames): Both arguments of 'frame-ancestor-p' are
88187	non-optional.  'iconify-child-frame' is an option.
88188	* doc/lispref/os.texi (Killing Emacs):
88189	'kill-emacs-query-functions' is an option.
88190	* doc/lispref/windows.texi (Mouse Window Auto-selection):
88191	'mouse-autoselect-window' is an option.
88192
881932018-01-28  Eli Zaretskii  <eliz@gnu.org>
88194
88195	Fix multiple spaces in Emacs manual
88196
88197	* doc/emacs/search.texi (Lax Search): Fix multiple consecutive
88198	spaces in printed manual.
88199
882002018-01-28  Eli Zaretskii  <eliz@gnu.org>
88201
88202	* lisp/files.el (save-some-buffers): Doc fix.  (Bug#30215)
88203
882042018-01-28  Eli Zaretskii  <eliz@gnu.org>
88205
88206	Adjudicate comments to "International" chapter of Emacs manual
88207
88208	* doc/emacs/mule.texi (International Chars)
88209	(Language Environments, Input Methods, Defining Fontsets)
88210	(Modifying Fontsets): Minor wording changes and typo fixes.
88211	Reported by Francis Wright <f.j.wright@live.co.uk> in
88212	emacs-manual-bugs@gnu.org.
88213
882142018-01-28  Noam Postavsky  <npostavs@gmail.com>
88215
88216	Revert "Signal error for symbol names with strange quotes (Bug#2967)"
88217
88218	That commit did not make the corresponding change to printing, thus
88219	breaking the (eq (read (prin1-to-string SYM)) SYM) invariant for those
88220	symbols.  It's too late in the release cycle to change printing
88221	behavior, therefore revert the reader change.
88222
88223	Don't merge to master, the print function will be updated there (see
88224	"Fix round tripping of read->print for symbols with strange quotes").
88225
882262018-01-27  Alan Mackenzie  <acm@muc.de>
88227
88228	Allow read-passwd to hide characters inserted by C-y.  (Security fix.)
88229
88230	This fixes bug #30186.  The with-silent-modifications was there to prevent
88231	records of text property manipulations being put into buffer-undo-list.  These
88232	had been causing a significant slowdown in CC Mode with C-_ after a large
88233	C-y.  This CC Mode problem has since been solved by a different workaround.
88234
88235	* lisp/subr.el (remove-yank-excluded-properties): Remove the invocation of
88236	with-silent-modifications around the text property manipulations.
88237
882382018-01-27  Eli Zaretskii  <eliz@gnu.org>
88239
88240	* etc/PROBLEMS: Document issues with double-buffering.  (Bug#30088)
88241
882422018-01-27  Charles A. Roelli  <charles@aurox.ch>
88243
88244	* lisp/window.el (window-largest-empty-rectangle): Fix grammar.
88245
882462018-01-27  Eli Zaretskii  <eliz@gnu.org>
88247
88248	Minor changes in the Emacs manual
88249
88250	* doc/emacs/search.texi (Search Customizations): Minor wording
88251	change.
88252	* doc/emacs/files.texi (Customize Save): Add a cross-reference
88253	for batch mode.
88254
882552018-01-27  Eli Zaretskii  <eliz@gnu.org>
88256
88257	Improve the "Files" chapter of the Emacs manual
88258
88259	* doc/emacs/files.texi (File Shadowing): Rearrange text to explain
88260	the notion of shadowing before describing the commands.  Suggested
88261	by Will Korteland <emacs-devel@korte.land> in
88262	emacs-manual-bugs@gnu.org.
88263
882642018-01-27  Eli Zaretskii  <eliz@gnu.org>
88265
88266	Improve the "Search" chapter of the Emacs manual
88267
88268	* doc/emacs/search.texi (Regexps, Regexp Backslash): Improve and
88269	clarify wording.
88270	(Search Customizations): Fix a typo.  Reported by Will Korteland
88271	<emacs-devel@korte.land> in emacs-manual-bugs@gnu.org.
88272
882732018-01-27  Eli Zaretskii  <eliz@gnu.org>
88274
88275	* src/indent.c (Findent_to): Doc fix.  (Bug#30260)
88276
882772018-01-27  Eli Zaretskii  <eliz@gnu.org>
88278
88279	Improve documentation of 'edebug-defun'
88280
88281	* doc/lispref/edebug.texi (Instrumenting): Document a workaround
88282	for a failure to instrument due to unknown macros.  (Bug#30243)
88283	(Bug#10577)
88284
882852018-01-27  Eli Zaretskii  <eliz@gnu.org>
88286
88287	Mention crashes due to Noto Serif Kannada fonts
88288
88289	* etc/PROBLEMS: Mention crashes due to Noto Serif Kannada fonts,
88290	and the respective workarounds.  (Bug#30193)
88291
882922018-01-27  Noam Postavsky  <npostavs@gmail.com>
88293
88294	* doc/lispref/searching.texi: Document regexp repetition limit.
88295
88296	* src/syntax.c (char-syntax): Warn about ignoring text properties (Bug#22765).
88297
882982018-01-27  Noam Postavsky  <npostavs@gmail.com>
88299
88300	Load mm-util as needed for url-file and url-data (Bug#30258)
88301
88302	* lisp/url/url-file.el (url-file):
88303	* lisp/url/url-misc.el (url-data): Require `mm-util' before calling
88304	`mm-disable-multibyte'.
88305	* test/lisp/url/url-file-resources/file.txt:
88306	* test/lisp/url/url-file-tests.el:
88307	* test/lisp/url/url-misc-tests.el: New tests.
88308
883092018-01-26  Eli Zaretskii  <eliz@gnu.org>
88310
88311	Another minor copyedit in the manual's "Scroll Bars"
88312
88313	* doc/emacs/frames.texi (Scroll Bars): Mention that up/down and
88314	left/right buttons may be absent from the toolkit scroll bars.
88315	Reported by Robert Pluim <rpluim@gmail.com> in
88316	emacs-manual-bugs@gnu.org.
88317
883182018-01-26  Eli Zaretskii  <eliz@gnu.org>
88319
88320	Minor fix in documentation of 'equal'
88321
88322	* doc/lispref/objects.texi (Equality Predicates): Correct the
88323	conditions for equality of unibyte and multibyte strings.
88324	(Bug#30218)
88325
883262018-01-26  Eli Zaretskii  <eliz@gnu.org>
88327
88328	* lisp/dired-x.el (dired-guess-shell-alist-user): Doc fix.  (Bug#30192)
88329
883302018-01-26  Eli Zaretskii  <eliz@gnu.org>
88331
88332	Minor rewording in Emacs manual's "Help Mode" node
88333
88334	* doc/emacs/help.texi (Help Mode): Minor rewording of description
88335	of 'help-follow-symbol'.  Suggested by Richard Stallman
88336	<rms@gnu.org> in emacs-manual-bugs@gnu.org.
88337
883382018-01-26  Eli Zaretskii  <eliz@gnu.org>
88339
88340	Fixes for Emacs manual in frames.texi
88341
88342	* doc/emacs/frames.texi (Scroll Bars, Mouse Commands)
88343	(Window Dividers): Minor clarifications and spelling/markup
88344	changes.  Suggested by Robert Pluim <rpluim@gmail.com> in
88345	emacs-manual-bugs@gnu.org.
88346
883472018-01-24  Glenn Morris  <rgm@gnu.org>
88348
88349	* doc/misc/cl.texi (Efficiency Concerns): Fix 2012-10-27 typo.
88350
883512018-01-24  Robert Pluim  <rpluim@gmail.com>
88352
88353	Fix a few issues with latest GTK scaling changes
88354
88355	* src/xfns.c (Fx_display_monitor_attributes_list): Call
88356	gdk_screen_get_monitor_scale_factor only for GTK versions
88357	3.10..3.21.
88358	* src/xterm.c (x_set_offset): Call xg_get_scale for GTK only.
88359
883602018-01-24  Robert Pluim  <rpluim@gmail.com>
88361
88362	Use scaled coordinates when calling into GTK
88363
88364	This is part two of a two part fix for the GTK scaling
88365	problems.  See the thread starting at
88366	http://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00372.html
88367	for an explanation of why it has been added to Emacs 26.
88368
88369	* src/gtkutil.c (xg_set_geometry): Scale down the coordinates that we
88370	pass to gtk_window_move and to gtk_window_parse_geometry.
88371	* src/xterm.c (x_set_offset): Likewise.
88372
883732018-01-24  Robert Pluim  <rpluim@gmail.com>
88374
88375	Scale monitor dimensions obtained from GTK
88376
88377	This is part one of a two part fix for the GTK scaling
88378	problems.  See the thread starting at
88379	http://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00372.html
88380	for an explanation of why it has been added to Emacs 26.
88381
88382	* src/xfns.c (Fx_display_monitor_attributes_list): Take scaling factor
88383	into account when using GTK to query the monitor dimensions, which
88384	allows frameset-restore to position frames correctly.
88385
883862018-01-22  Rasmus  <rasmus@gmx.us>
88387
88388	Update Org to v9.1.6
88389
88390	Please note this is a bugfix release. See etc/ORG-NEWS for details.
88391
883922018-01-22  Aaron Jensen  <aaronjensen@gmail.com>
88393
88394	Use text-pixels values only when saving framesets (Bug#30141)
88395
88396	* lisp/frameset.el (frameset-persistent-filter-alist): Specify
88397	that text-pixels values are by default only saved by framesets
88398	so the parameter is not set when restoring (Bug#30141).
88399
884002018-01-21  Eli Zaretskii  <eliz@gnu.org>
88401
88402	Minor improvement in section "Pages" of the usere manual
88403
88404	* doc/emacs/text.texi (Pages): Improve wording.  Suggested by Will
88405	Korteland <emacs-devel@korte.land> in emacs-manual-bugs@gnu.org.
88406
884072018-01-21  Eli Zaretskii  <eliz@gnu.org>
88408
88409	Minor improvements in user manual
88410
88411	* doc/emacs/trouble.texi (Emergency Escape, Contributing): Clarify
88412	text.  Suggested by Jonathan Kyle Mitchell <kyle@jonathanmitchell.org>
88413	in emacs-manual-bugs@gnu.org
88414
884152018-01-21  Eli Zaretskii  <eliz@gnu.org>
88416
88417	Improve the "Mark" chapter of the user manual
88418
88419	* doc/emacs/mark.texi (Setting Mark, Marking Objects): Improve and
88420	clarify wording.  Suggested by John Cummings <john@rootabega.net>
88421	in emacs-manual-bugs@gnu.org.
88422
884232018-01-21  Eli Zaretskii  <eliz@gnu.org>
88424
88425	Improve the "Buffers" chapter of the user manual
88426
88427	* doc/emacs/buffers.texi (Several Buffers): Correct description of
88428	prefix arguments.  Clarify "bury".
88429	(Buffer Menus): Clarify wording.  Reported by John Cummings
88430	<john@rootabega.net> in emacs-manual-bugs@gnu.org.
88431
884322018-01-21  tino calancha  <tino.calancha@gmail.com>
88433
88434	* lisp/term.el (term-send-input): Fix text duplication in docstring
88435
884362018-01-20  Eli Zaretskii  <eliz@gnu.org>
88437
88438	Improve "Buffers" in the user manual
88439
88440	Suggested by John Cummings <john@rootabega.net> in
88441	emacs-manual-bugs@gnu.org:
88442	* doc/emacs/buffers.texi (Select Buffer): Add cross-references to
88443	"Windows" and "Frames".
88444	(Misc Buffer, Kill Buffer): Use BUFFER consistently in commands
88445	that accept buffer names.
88446	(Select Buffer): Improve description of "M-g M-g".  Improve
88447	wording.
88448	(Misc Buffer, Kill Buffer): Improve wording.
88449	(Kill Buffer): Fix the response required by kill-some-buffers.
88450	Mention customizable options that control what clean-buffer-list
88451	does.
88452	(Several Buffers): More detail about
88453	'Buffer-menu-unmark-all-buffers'.
88454
884552018-01-20  Eli Zaretskii  <eliz@gnu.org>
88456
88457	Don't mention 'vc-stay-local' in the user manual
88458
88459	* doc/emacs/vc1-xtra.texi (CVS Options):
88460	* doc/emacs/maintaining.texi (VC Directory Buffer): Remove
88461	references to 'vc-stay-local', which no longer exists.
88462	(Bug#30138)
88463
884642018-01-20  Eli Zaretskii  <eliz@gnu.org>
88465
88466	Fix a typo in calendar.texi
88467
88468	* doc/emacs/calendar.texi (Writing Calendar Files): Capitalize
88469	"Filofax".  Reported by Will Korteland <emacs-devel@korte.land>
88470	in emacs-manual-bugs@gnu.org.
88471
884722018-01-20  Eli Zaretskii  <eliz@gnu.org>
88473
88474	Minor improvement in wording of the Emacs manual
88475
88476	* doc/emacs/killing.texi (CUA Bindings): Improve wording.
88477	Suggested by Will Korteland <emacs-devel@korte.land> in
88478	emacs-manual-bugs@gnu.org.
88479
884802018-01-20  Eli Zaretskii  <eliz@gnu.org>
88481
88482	Revert "Fix tempfile creation when byte compiling"
88483
88484	This reverts commit 4fd446e9f65e5531b18d4a0c5e08a6eeabc292d8:
88485	* lisp/emacs-lisp/bytecomp.el (byte-compile-file):
88486	Put tempfile next to the target file, as was the original intent.
88487
884882018-01-19  Paul Eggert  <eggert@cs.ucla.edu>
88489
88490	Fix tempfile creation when byte compiling
88491
88492	This improves on the recent fix for master failing to build
88493	on FreeBSD.  Suggested by Stefan Monnier in:
88494	https://lists.gnu.org/r/emacs-devel/2018-01/msg00600.html
88495	* lisp/emacs-lisp/bytecomp.el (byte-compile-file):
88496	Put tempfile next to the target file, as was the original intent.
88497
884982018-01-19  Eli Zaretskii  <eliz@gnu.org>
88499
88500	Improve the Emacs manual as suggested in emacs-manual-bugs
88501
88502	* doc/emacs/killing.texi (Deletion and Killing): Add
88503	cross-reference to "Kill Ring".
88504	* doc/emacs/help.texi (Help Mode, Package Keywords): Improve
88505	wording.  Suggested by Will Korteland <emacs-devel@korte.land> in
88506	emacs-manual-bugs@gnu.org.
88507
885082018-01-19  Stefan Monnier  <monnier@iro.umontreal.ca>
88509
88510	* lisp/emacs-lisp/bytecomp.el: Tweak last change
88511
88512	(byte-compile-file): Move comment closer to the code it describes.
88513
885142018-01-19  Eli Zaretskii  <eliz@gnu.org>
88515
88516	Unbreak building Emacs on FreeBSD
88517
88518	* lisp/emacs-lisp/bytecomp.el (byte-compile-file): Don't create
88519	the temporary file under temporary-file-directory if the file
88520	being compiled is specified by an absolute file name.  This avoids
88521	problems with ACL copying from temporary-file-directory on
88522	FreeBSD.  For the details, see
88523	http://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00513.html.
88524
885252018-01-19  Eli Zaretskii  <eliz@gnu.org>
88526
88527	Don't unnecessarily use non-ASCII characters in C sources
88528
88529	* src/xwidget.c (webkit_javascript_finished_cb):
88530	* src/gtkutil.c (xg_check_special_colors):
88531	* src/emacs-module.c (module_make_string):
88532	* src/alloc.c (SET_STACK_TOP_ADDRESS): Don't use non-ASCII quote
88533	characters.
88534
885352018-01-19  Eli Zaretskii  <eliz@gnu.org>
88536
88537	Portability fixes in emacs-module-tests
88538
88539	* test/Makefile.in (abs_top_srcdir): Add variable, needed by
88540	CPPFLAGS.
88541	* test/data/emacs-module/mod-test.c: Include <limits.h>.
88542	(pT, pZ, T_TYPE, Z_TYPE): Compatibility macros, for systems that
88543	don't support %td and %zu format specs.
88544	(emacs_module_init): Use compatibility macros to make the error
88545	messages print meaningful values (and avoid compiler warnings).
88546
885472018-01-19  Noam Postavsky  <npostavs@gmail.com>
88548
88549	Add tests for term.el
88550
88551	* lisp/term.el (term-mode): Add `name' attribute to
88552	window-adjust-process-window-size-function value, so that it can be
88553	removed easily by tests.
88554	* test/lisp/term-tests.el: New tests.
88555
885562018-01-19  Callum Cameron  <cjcameron7@gmail.com>  (tiny change)
88557
88558	Handle split AnSiT messages for term.el (Bug#17231)
88559
88560	Check to see if there is an incomplete command at the end of
88561	term-emulate-terminal's input string, and, if so, save it so the whole
88562	command can be processed when the next string arrives.
88563	* lisp/term.el (term-partial-ansi-terminal-message): New variable.
88564	(term-mode): Make it buffer local.
88565	(term-handle-ansi-terminal-messages): Prepend it to the received
88566	message, and set it if a partial message was received.
88567
88568
88569	Do not merge to master, it will be solved differently there, see
88570	"Switch term.el to lexical binding, and clean up code a bit".
88571
885722018-01-19  Glenn Morris  <rgm@gnu.org>
88573
88574	* configure.ac (emacs_config_features): Add threads.
88575
885762018-01-18  Noam Postavsky  <npostavs@gmail.com>
88577
88578	Handle case-insensitive filenames for load-path shadows (Bug#5845)
88579
88580	* lisp/emacs-lisp/shadow.el (load-path-shadows-find): Check for
88581	shadowing with case-insensitive matching for files of case-insensitive
88582	directories (as determined by `file-name-case-insensitive-p').
88583	* test/lisp/emacs-lisp/shadow-tests.el: New test.
88584	* test/lisp/emacs-lisp/shadow-resources/p1/foo.el:
88585	* test/lisp/emacs-lisp/shadow-resources/p2/FOO.el: New test files.
88586
885872018-01-18  Alan Mackenzie  <acm@muc.de>
88588
88589	CC Mode: stop distinguishing brace blocks from defun blocks by content.
88590
88591	Don't merge to master; this is a quick fix for the emacs-26 branch.  This is
88592	essentially a reversion of the patch from 2017-11-10 which attempted to handle
88593	C99's compound literals.
88594
88595	The bug here was triggered when a defun block contained a declaration ending
88596	in a comma, yet without a semicolon.
88597
88598	* lisp/progmodes/cc-engine.el (c-guess-basic-syntax): At the CASE 9 test,
88599	remove from the `or' form the test of a block's contents.
88600
886012018-01-17  Philipp Stephani  <phst@google.com>
88602
88603	Use recommended long options syntax in man page
88604
88605	* doc/man/emacs.1.in: Specify equals sign for long options, as
88606	recommended in the manual.
88607
886082018-01-17  Glenn Morris  <rgm@gnu.org>
88609
88610	An overdue update of GNUstep emacs.tiff
88611
88612	* nextstep/GNUstep/Emacs.base/Resources/emacs.tiff:
88613	Update to the Emacs 25 icon.
88614	Converted from hicolor/scalable/apps/emacs.svg using Gimp.
88615	* nextstep/GNUstep/Emacs.base/Resources/README: Update.
88616
886172018-01-17  Glenn Morris  <rgm@gnu.org>
88618
88619	Add some test skip conditions
88620
88621	* test/lisp/vc/vc-bzr-tests.el (vc-bzr-test-bug9726)
88622	(vc-bzr-test-bug9781): Skip if bzr is faulty.
88623	* test/src/thread-tests.el: Skip if not compiled with threads.
88624
886252018-01-17  Lars Ingebrigtsen  <larsi@gnus.org>
88626
88627	Add documentation to ecomplete.el
88628
88629	* lisp/ecomplete.el: Add doc strings and document the format.
88630
886312018-01-17  Glenn Morris  <rgm@gnu.org>
88632
88633	* admin/authors.el (authors-aliases): Tighten more entries.
88634
886352018-01-17  Glenn Morris  <rgm@gnu.org>
88636
88637	Small startup fix for current-load-list
88638
88639	* lisp/startup.el (command-line):
88640	Avoid current-load-list being non-nil after startup ends.
88641
886422018-01-17  Glenn Morris  <rgm@gnu.org>
88643
88644	authors-aliases is based on regexps, not literals
88645
88646	* admin/authors.el (authors-aliases): Replace overly-broad entries.
88647
886482018-01-15  Charles A. Roelli  <charles@aurox.ch>
88649
88650	Remove incorrect documentation in comint.el
88651
88652	* lisp/comint.el (comint-interrupt-subjob, comint-kill-subjob)
88653	(comint-quit-subjob, comint-stop-subjob): Remove incorrect
88654	documentation.  (Bug#30079)
88655
886562018-01-15  Glenn Morris  <rgm@gnu.org>
88657
88658	An overdue update of src/emacs-icon.h
88659
88660	* src/emacs-icon.h: Update to the Emacs 25 icon.  (Bug#30047)
88661	Converted from hicolor/scalable/apps/emacs.svg using Gimp.
88662
886632018-01-14  Eli Zaretskii  <eliz@gnu.org>
88664
88665	Minor copyedit in ELisp manual
88666
88667	* doc/lispref/variables.texi (File Local Variables): Improve
88668	wording of last change.
88669
886702018-01-14  Shuguang Sun  <shuguang@gmail.com>
88671
88672	Fix Bug#29149 in dired-aux.el
88673
88674	* lisp/dired-aux.el (dired-shell-stuff-it): Handle remote
88675	commands on w32 properly.  (Bug#29149)
88676
886772018-01-14  Michael Albinus  <michael.albinus@gmx.de>
88678
88679	Fix Bug#29149 in shell.el
88680
88681	* lisp/shell.el (shell): Change order of `file-local-name' and
88682	`expand-file-name' calls.  Otherwise, the local file name
88683	would be extended by a drive letter, even when it is a remote
88684	file, seen from w32.  (Bug#29149)
88685
886862018-01-13  Stefan Monnier  <monnier@iro.umontreal.ca>
88687
88688	* doc/lispref/variables.texi (File Local Variables): Fix last change
88689
886902018-01-13  Nicolas Petton  <nicolas@petton.fr>
88691
88692	* ChangeLog.3: Update
88693
88694	Update etc/AUTHORS
88695
886962018-01-13  Nicolas Petton  <nicolas@petton.fr>
88697
88698	Fix an entry in authors-aliases
88699
88700	* admin/authors.el (authors-aliases): Replace regexp from "Max", which
88701	is too broad, to an email address ("mu@magi.net.ru").
88702
887032018-01-13  Eli Zaretskii  <eliz@gnu.org>
88704
88705	Mention trace.el facilities in the ELisp manual
88706
88707	* doc/lispref/debugging.texi (Debugging): Mention the trace.el
88708	library.
88709
887102018-01-13  Eli Zaretskii  <eliz@gnu.org>
88711
88712	Improve documentation of safe values of variables
88713
88714	* doc/lispref/variables.texi (File Local Variables): Mention the
88715	autoload cookie as a means of defining safe values for variables.
88716	See http://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00261.html
88717	for the details.
88718	* doc/lispref/compile.texi (Compiler Errors): Document
88719	'byte-compile-error-on-warn'.
88720
887212018-01-13  Eli Zaretskii  <eliz@gnu.org>
88722
88723	Improve the Emacs manual's "Misc" node
88724
88725	* doc/emacs/misc.texi (Gnus): A more descriptive section name.
88726	(Invoking emacsclient): Mention how to avoid errors when there's
88727	no Emacs server.
88728	(EWW, Embedded WebKit Widgets): Now subsections under
88729	"Hyperlinking and Web Navigation Features".
88730	(Amusements): Add "games" to the section name.  Suggested by Alex
88731	Branham <alex.branham@gmail.com> in emacs-manual-bugs@gnu.org.
88732
88733	* doc/emacs/emacs.texi (Top): Adjust the top-level menus to the
88734	above changes.
88735
88736	* doc/lispref/os.texi (Security Considerations): Fix typos.
88737
887382018-01-13  Martin Rudalics  <rudalics@gmx.at>
88739
88740	In nsterm.m use FRAME_NS_P instead of FRAME_X_P (Bug#30019)
88741
88742	* src/nsterm.m (x_set_parent_frame): Call FRAME_NS_P instead
88743	of FRAME_X_P (Bug#30019).
88744
887452018-01-12  Nicolas Petton  <nicolas@petton.fr>
88746
88747	Bump Emacs version to 26.0.91
88748
88749	* README:
88750	* configure.ac:
88751	* msdos/sed2v2.inp:
88752	* nt/README.W32: Bump Emacs version.
88753
887542018-01-12  Nicolas Petton  <nicolas@petton.fr>
88755
88756	* ChangeLog.3: Update
88757
887582018-01-12  Nicolas Petton  <nicolas@petton.fr>
88759
88760	Update authors
88761
88762	* admin/authors.el (authors-aliases, authors-valid-file-names): Additions.
88763	* etc/AUTHORS: Update AUTHORS file.
88764
887652018-01-12  Katsumi Yamaoka  <yamaoka@jpl.org>
88766
88767	* lisp/gnus/message.el (message-do-auto-fill): Prevent do-auto-fill from
88768	adding extra citation mark (bug#29767, but it is a different bug).
88769
887702018-01-11  Eli Zaretskii  <eliz@gnu.org>
88771
88772	Improve documentation of etags
88773
88774	* doc/emacs/maintaining.texi (Tag Syntax, Create Tags Table):
88775	Improve documentation of etags options and of source language
88776	detection.
88777
887782018-01-11  Eli Zaretskii  <eliz@gnu.org>
88779
88780	Teach etags new interpreters for some languages
88781
88782	* lib-src/etags.c (Erlang_interpreters, Lua_interpreters)
88783	(Prolog_interpreters, Python_interpreters, Ruby_interpreters): New
88784	static variables.
88785	(lang_names): Use them to set interpreters for Erlang, Lua,
88786	Prolog, Python, and Ruby.
88787	(find_entries): Support "/usr/bin/env FOO" form of specifying an
88788	interpreter.
88789
88790	* test/manual/etags/perl-src/htlmify-cystic: Modify the has-bang
88791	line to test the "env FOO" interpreter spec.  (Bug#30075)
88792	* test/manual/etags/ETAGS.good_1:
88793	* test/manual/etags/ETAGS.good_2:
88794	* test/manual/etags/ETAGS.good_3:
88795	* test/manual/etags/ETAGS.good_4:
88796	* test/manual/etags/ETAGS.good_5:
88797	* test/manual/etags/ETAGS.good_6: Adapt to latest changes in test
88798	files.
88799
888002018-01-11  Stefan Monnier  <monnier@iro.umontreal.ca>
88801
88802	* lisp/emacs-lisp/generator.el (iter-defun): Add 'doc-string' prop.
88803
88804	* lisp/emacs-lisp/syntax.el (syntax-propertize): Fix bug#29767
88805
888062018-01-10  Charles A. Roelli  <charles@aurox.ch>
88807
88808	Improve documentation of fill-separate-heterogeneous-words-with-space
88809
88810	* lisp/textmodes/fill.el
88811	(fill-separate-heterogeneous-words-with-space): Fix grammar.
88812
888132018-01-10  Eli Zaretskii  <eliz@gnu.org>
88814
88815	Fix documentation of some x-* functions
88816
88817	* lisp/term/pc-win.el (x-display-pixel-width)
88818	(x-display-pixel-height, x-display-planes)
88819	(x-display-color-cells, x-server-max-request-size)
88820	(x-server-vendor, x-server-version, x-display-screens)
88821	(x-display-mm-height, x-display-mm-width)
88822	(x-display-backing-store, x-display-visual-class): Provide doc
88823	strings, so that 'makedoc' produces non-empty documentation in
88824	etc/DOC for these functions.  (Bug#30068)
88825
888262018-01-10  Philipp Stephani  <phst@google.com>
88827
88828	Inherit query-on-exit flag to stderr process (Bug#30031)
88829
88830	* src/process.c (Fmake_process): Have the pipe process honor the
88831	parent's query-on-exit flag.
88832
88833	* test/src/process-tests.el (make-process/noquery-stderr): New test.
88834
888352018-01-10  Michael Albinus  <michael.albinus@gmx.de>
88836
88837	Fix Bug#30057
88838
88839	* test/lisp/filenotify-tests.el (file-notify--test-tmpdir): New defvar.
88840	(file-notify--test-cleanup, file-notify--test-make-temp-name)
88841	(file-notify-test01-add-watch, file-notify-test03-events)
88842	(file-notify-test05-file-validity)
88843	(file-notify-test09-watched-file-in-watched-dir)
88844	(file-notify-test10-sufficient-resources): Use it.  (Bug#30057)
88845
888462018-01-10  Glenn Morris  <rgm@gnu.org>
88847
88848	Tag some unstable tests, and skip by default (bug#24503)
88849
88850	* Makefile.in (check-all): New phony target.
88851	* test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE):
88852	Also skip unstable tests.
88853	(SELECTOR_ALL): New variable.
88854	(check-all): New phony target.
88855	* test/lisp/emacs-lisp/eieio-tests/eieio-test-methodinvoke.el
88856	(eieio-test-method-order-list-6):
88857	* test/lisp/emacs-lisp/eieio-tests/eieio-tests.el
88858	(eieio-test-37-obsolete-name-in-constructor):
88859	Mark as unstable rather than skipping on hydra.nixos.org.
88860
888612018-01-10  Paul Eggert  <eggert@cs.ucla.edu>
88862
88863	Merge from Gnulib
88864
88865	This incorporates:
88866	2018-01-05 maint: Add encoding marker for Emacs to non-ASCII sources
88867	2018-01-04 update-copyright: Handle use of ©
88868	2018-01-04 pthread_sigmask: Avoid compilation error on mingw
88869	2018-01-02 stat-time: silence -Wunused-parameter regression
88870	* build-aux/config.guess, build-aux/config.sub:
88871	* build-aux/update-copyright, doc/misc/texinfo.tex, lib/gnulib.mk.in:
88872	* lib/md5.c, lib/md5.h, lib/sha1.c, lib/sha1.h, lib/sha256.c:
88873	* lib/sha256.h, lib/sha512.c, lib/sha512.h, lib/signal.in.h:
88874	* lib/stat-time.h: Copy from Gnulib, or regenerate.
88875
888762018-01-09  Glenn Morris  <rgm@gnu.org>
88877
88878	* lisp/epg.el (epg-start-sign): Replace obsolete functions.
88879
888802018-01-09  Glenn Morris  <rgm@gnu.org>
88881
88882	Small fix for erc-logging-enabled
88883
88884	* lisp/erc/erc-log.el (erc-logging-enabled):
88885	Respect buffer-locality of erc-enable-logging variable.
88886
888872018-01-09  Glenn Morris  <rgm@gnu.org>
88888
88889	Quieten semantic normal usage
88890
88891	* lisp/cedet/semantic/lex.el (semantic-flex): Mark obsolete at
88892	compile time in the normal way, not at run-time.  (Bug#30035)
88893
888942018-01-08  Eli Zaretskii  <eliz@gnu.org>
88895
88896	Avoid irrelevant hyperlink in doc string of 'epa-pinentry-mode'
88897
88898	* lisp/epa.el (epa-pinentry-mode): Doc fix.  (Bug#30025)
88899
889002018-01-08  Michael Albinus  <michael.albinus@gmx.de>
88901
88902	* doc/misc/tramp.texi (Remote processes): Mention gdb restrictions with I/O.
88903
889042018-01-08  Noam Postavsky  <npostavs@gmail.com>
88905
88906	Query background for gnome terminal version 3.22 (Bug#29716)
88907
88908	* lisp/term/xterm.el (xterm--version-handler): Use
88909	xterm--report-background-handler for terminals reporting minor version
88910	4000 and above.
88911
889122018-01-07  Tak Kunihiro  <tkk@misasa.okayama-u.ac.jp>
88913
88914	Make pixel-wise scrolling less laggy
88915
88916	* lisp/pixel-scroll.el (pixel-dead-time, pixel-last-scroll-time):
88917	New variables.
88918	(pixel-scroll-up, pixel-scroll-down): Invoke 'scroll-up' or
88919	'scroll-down' when called within 'pixel-dead-time'.  (Bug#29737)
88920
889212018-01-07  Alan Third  <alan@idiocy.org>
88922
88923	Fix child frame placement issues (bug#29953)
88924
88925	* src/nsterm.h (NS_PARENT_WINDOW_LEFT_POS):
88926	(NS_PARENT_WINDOW_TOP_POS): Get the parent frame through the frame
88927	struct as invisible child windows are detached from their parents in
88928	NS.
88929	* src/nsterm.m (x_set_offset): Offscreen frames have `nil' screen
88930	value, so handle that gracefully.  Child frames with negative left and
88931	top should be positioned relative to the bottom right of the parent
88932	frame.
88933
889342018-01-06  Alan Mackenzie  <acm@muc.de>
88935
88936	Describe the precise interaction of complex primitives with the change hooks
88937
88938	* doc/lispref/text.texi (Change Hooks): Document that most buffer changing
88939	primitives call before- and after-change-functions in balanced pairs, but that
88940	some complex primitives call b-c-f once, and a-c-f zero, one, or several
88941	times.
88942
889432018-01-06  Eli Zaretskii  <eliz@gnu.org>
88944
88945	Fix valgrind report in call-interactively
88946
88947	* src/callint.c (Fcall_interactively): Don't try to access more
88948	bytes than are available in the interactive spec.  (Bug#30004)
88949
889502018-01-06  Eli Zaretskii  <eliz@gnu.org>
88951
88952	* src/editfns.c (Fsave_excursion): Doc fix.  (Bug#30001)
88953
889542018-01-06  Alan Mackenzie  <acm@muc.de>
88955
88956	Fix mark-defun when there's no spaces between successive defuns.
88957
88958	The problem was a parse-partial-sexp call which tried to use the STOPBEFORE
88959	argument to detect non-syntactic WS.  This fails on a "}", which does not
88960	begin a sexp.
88961
88962	* lisp/emacs-lisp/lisp.el (beginning-of-defun--in-emptyish-line-p): Enhance to
88963	handle BOL being in a string.
88964	(beginning-of-defun-comments): Call the above function in place of the call
88965	to parse-partial-sexp.
88966
889672018-01-06  Eli Zaretskii  <eliz@gnu.org>
88968
88969	Fix Dired display and operations on file names with raw bytes
88970
88971	* src/coding.c (decode_coding): When flushing remaining raw bytes
88972	from multibyte text, copy 2-byte forms of eight-bit-*
88973	characters as single characters, not as 2 raw bytes.  (Bug#29189)
88974
889752018-01-05  Eli Zaretskii  <eliz@gnu.org>
88976
88977	Improve documentation of 'gdb-many-windows'
88978
88979	* doc/emacs/building.texi (GDB User Interface Layout): Add advice
88980	for using a separate frame for 'gdb-many-windows'.
88981
889822018-01-05  Eli Zaretskii  <eliz@gnu.org>
88983
88984	Fix failures in smerge-mode on MS-Windows
88985
88986	* lisp/vc/smerge-mode.el (smerge--refine-chopup-region): Use
88987	utf-8-emacs-unix, not emacs-internal, to make the forced EOL
88988	convention explicit.
88989	(smerge-refine-regions): Use utf-8-emacs instead of
88990	emacs-internal, to allow decoding of non-Unix EOL conventions.
88991	(Bug#29916)
88992
889932018-01-04  Stephen Leake  <stephen_leake@stephe-leake.org>
88994
88995	Fix description of 'struct' generic function specializer
88996	Backport:
88997
88998	* doc/lispref/functions.texi (Generic Functions): Fix description of
88999	'struct' specializer; it must be the named struct or a child, not a
89000	parent.
89001
89002	(cherry picked from commit b6add8c7cfc6d36f9dd8ad99be06bd8ab41cc6f8)
89003
890042018-01-04  Charles A. Roelli  <charles@aurox.ch>
89005
89006	* etc/DEBUG (Getting control to the debugger): Fix grammar.
89007
890082018-01-03  Stefan Monnier  <monnier@iro.umontreal.ca>
89009
89010	* lisp/vc/vc.el (vc-region-history): log-view-vc-fileset holds a list!
89011
890122018-01-03  Noam Postavsky  <npostavs@gmail.com>
89013
89014	Don't bind dframe events on load (Bug#29599)
89015
89016	* lisp/dframe.el (dframe-setup-hook): New hook.
89017	(dframe-set-special-events): New function, containing previous
89018	top-level key binding code.
89019	(top-level): Add it to dframe-setup-hook.
89020	(dframe-frame-mode): Run the hook.
89021
890222018-01-02  Eli Zaretskii  <eliz@gnu.org>
89023
89024	* lisp/textmodes/picture.el (picture-mode-exit): Doc fix.  (Bug#29949)
89025
89026	* lisp/textmodes/picture.el (picture-open-line): Doc fix.  (Bug#29948)
89027
890282018-01-01  Eli Zaretskii  <eliz@gnu.org>
89029
89030	Fix description of 'emacs-internal'
89031
89032	* doc/lispref/nonascii.texi (Coding System Basics): Correct
89033	inaccuracy in description of 'emacs-internal'.  (Bug#29916)
89034
890352018-01-01  Eli Zaretskii  <eliz@gnu.org>
89036
89037	Update PROBLEMS with selection-related issues
89038
89039	* etc/PROBLEMS: Update the entry about large selections and
89040	klipper.  (Bug#29661)
89041
890422018-01-01  Ross Donaldson  <gastove@gmail.com>  (tiny change)
89043
89044	New customization variable for python-mode indentation (Bug#28475)
89045
89046	* lisp/progmodes/python.el (python-indent-def-block-scale): New variable.
89047	(python-indent--calculate-indentation): Let it control how many indent
89048	levels are inserted for multi-line function signatures.
89049
890502018-01-01  Alan Third  <alan@idiocy.org>
89051
89052	Fix menu keyboard shortcuts on macOS (Bug#29595)
89053
89054	* src/nsmenu.m (addItemWithWidgetValue)[NS_IMPL_COCOA]: It looks like
89055	macOS 10.13 no longer ignores long modifier strings, so explicitly use
89056	an empty string.
89057
890582018-01-01  Paul Eggert  <eggert@cs.ucla.edu>
89059
89060	Fix copyright years by hand
89061
89062	These are dates that admin/update-copyright did not update, or
89063	updated incorrectly.
89064
890652018-01-01  Paul Eggert  <eggert@cs.ucla.edu>
89066
89067	Update copyright year to 2018
89068
89069	Run admin/update-copyright.
89070
890712018-01-01  Paul Eggert  <eggert@cs.ucla.edu>
89072
89073	Merge from Gnulib
89074
89075	This incorporates:
89076	2018-01-01 maint: Run 'make update-copyright'
89077	2017-12-29 Add cross-compilation results for GNU/Hurd.
89078	2017-12-12 explicit_bzero: port to macOS + Clang 9.0.0
89079
890802017-12-31  Gemini Lasswell  <gazally@runbox.com>
89081
89082	Don't add empty keyboard macro to macro ring (Bug#24992)
89083
89084	* lisp/kmacro.el (kmacro-end-call-mouse): Don't save a newly defined
89085	macro if it is empty.
89086
89087	* test/lisp/kmacro-tests.el (kmacro-tests-end-and-call-macro-mouse):
89088	Remove expected failure tag.
89089
890902017-12-31  Eli Zaretskii  <eliz@gnu.org>
89091
89092	Allow customization of decoding of "man" command
89093
89094	* lisp/man.el (Man-coding-system): New defcustom.
89095	(Man-start-calling): Use it, and also pay attention to user
89096	overriding coding-system-for-read.  (Bug#29872)
89097
890982017-12-31  Daiki Ueno  <ueno@gnu.org>
89099
89100	* etc/NEWS: Add security consideration note on passphrase input
89101
891022017-12-29  Eli Zaretskii  <eliz@gnu.org>
89103
89104	Fix subtle problem with scroll-down when scroll-margin is nonzero
89105
89106	* src/window.c (window_scroll_pixel_based): Account for
89107	scroll-margin when scrolling down, i.e. moving window-start
89108	towards the beginning of the buffer.  Reported by zhang cc
89109	<ccsmile2008@outlook.com> in
89110	http://lists.gnu.org/archive/html/emacs-devel/2017-12/msg00894.html.
89111
891122017-12-29  Eli Zaretskii  <eliz@gnu.org>
89113
89114	Fix problems with indexing in User manual
89115
89116	* doc/emacs/basic.texi (Continuation Lines, Inserting Text)
89117	(Moving Point):
89118	* doc/emacs/help.texi (Help Echo, Package Keywords, Help Mode):
89119	* doc/emacs/trouble.texi (Quitting):
89120	* doc/emacs/mark.texi (Setting Mark, Disabled Transient Mark):
89121	* doc/emacs/custom.texi (Modifier Keys, Init Examples)
89122	(Creating Custom Themes):
89123	* doc/emacs/programs.texi (Program Modes, Expressions, Hideshow)
89124	(Basic Indent, Info Lookup, Symbol Completion):
89125	* doc/emacs/screen.texi (Echo Area):
89126	* doc/emacs/xresources.texi (Table of Resources, GTK Names in Emacs):
89127	* doc/emacs/display.texi (Line Truncation, Cursor Display):
89128	* doc/emacs/files.texi (File Names, Backup, File Archives):
89129	* doc/emacs/dired.texi (Operating on Files, Dired Enter):
89130	* doc/emacs/commands.texi (User Input):
89131	* doc/emacs/mule.texi (International, Unibyte Mode)
89132	(International Chars):
89133	* doc/emacs/vc1-xtra.texi (RCS and SCCS, Version Headers)
89134	(CVS Options):
89135	* doc/emacs/modes.texi (Major Modes, Minor Modes):
89136	* doc/emacs/indent.texi (Just Spaces):
89137	* doc/emacs/frames.texi (Mouse Avoidance, Mode Line Mouse)
89138	(Frame Commands):
89139	* doc/emacs/cmdargs.texi (Initial Options):
89140	* doc/emacs/abbrevs.texi (Dabbrev Customization):
89141	* doc/emacs/mini.texi (Completion Example, Completion Commands):
89142	* doc/emacs/calendar.texi (Writing Calendar Files, Calendar Unit Motion)
89143	(From Other Calendar):
89144	* doc/emacs/regs.texi (Text Registers, Bookmarks):
89145	* doc/emacs/buffers.texi (Several Buffers, Select Buffer):
89146	* doc/emacs/maintaining.texi (Xref Commands):
89147	* doc/emacs/windows.texi (Pop Up Window):
89148	* doc/emacs/text.texi (Text, Org Mode):
89149	* doc/emacs/killing.texi (Other Kill Commands):
89150	* doc/emacs/misc.texi (Document View, Gnus Group Buffer)
89151	(Gnus Summary Buffer, Shell Mode):
89152	* doc/emacs/cal-xtra.texi (Sexp Diary Entries): Remove or reword
89153	redundant identical index entries.
89154	* doc/emacs/custom.texi (Mouse Buttons)
89155	* doc/emacs/files.texi (Reverting): Fix hyphenation.
89156	* doc/emacs/emacs.texi (Top): Improve wording of Index menu items.
89157	* doc/emacs/files.texi (File Conveniences):
89158	* doc/emacs/programs.texi (MixedCase Words): Make entries that
89159	belong to Concept Index be indexed with @cindex.  (Bug#29888)
89160
891612017-12-29  Alan Mackenzie  <acm@muc.de>
89162
89163	* lisp/help.el (describe-key): Only (copy-sequence elt) when elt is a list.
89164
891652017-12-28  Stefan Monnier  <monnier@iro.umontreal.ca>
89166
89167	* src/buffer.c (Frestore_buffer_modified_p): Fix bug#29846
89168
89169	Don't mess with the lock file when inhibit_modification_hooks is set,
89170	just like we do in prepare_to_modify_buffer_1.
89171
891722017-12-28  Eli Zaretskii  <eliz@gnu.org>
89173
89174	Improve documentation of 'inhibit-modification-hooks' and friends
89175
89176	* src/buffer.c (Fset_buffer_modified_p)
89177	(Frestore_buffer_modified_p): Doc fixes.
89178	* src/insdel.c (syms_of_insdel) <inhibit-modification-hooks>:
89179	Document in the doc string that this variable also inhibits file
89180	locks and active region handling.  (Bug#29846)
89181
891822017-12-28  David Pathakjee  <dpathakjee@gmail.com>  (tiny change)
89183
89184	Fix doc string of 'enable-recursive-minibuffers'
89185
89186	* src/minibuf.c (syms_of_minibuf) <enable-recursive-minibuffers>:
89187	Doc fix.  (Bug#29873)
89188
891892017-12-27  Eli Zaretskii  <eliz@gnu.org>
89190
89191	Fix documentation of delsel and of killing text
89192
89193	* doc/emacs/killing.texi (Appending Kills): Make sure the text
89194	with 2 spaces is not broken between 2 lines.
89195	* doc/emacs/mark.texi (Using Region): Remove the sentence about
89196	delsel mode that describes behavior which exists even without
89197	delsel mode turned on.  Suggested by Petteri Hintsanen
89198	<petterih@iki.fi> in emacs-manual-bugs@gnu.org.
89199
89200	* lisp/delsel.el (delete-selection-mode): Doc fix.
89201
892022017-12-27  Glenn Morris  <rgm@gnu.org>
89203
89204	* doc/lispref/strings.texi (Case Conversion):
89205	Use a TeX font that support ligatures.
89206
892072017-12-27  Charles A. Roelli  <charles@aurox.ch>
89208
89209	* doc/misc/speedbar.texi (Top): Fix grammar.
89210
89211	* lisp/subr.el (with-silent-modifications): Doc fixes.
89212
892132017-12-26  Eli Zaretskii  <eliz@gnu.org>
89214
89215	Fix curved quotes in printed manual
89216
89217	* doc/emacs/text.texi (Quotation Marks): Fix curved quote
89218	characters in the printed version of the manual.
89219
892202017-12-25  Paul Eggert  <eggert@cs.ucla.edu>
89221
89222	Say that "gnus-cloud" is a parody name
89223
892242017-12-25  Eli Zaretskii  <eliz@gnu.org>
89225
89226	More improvements for text.texi
89227
89228	* doc/emacs/text.texi (Outline Motion): Avoid unneeded
89229	repetition.  Suggested by Petteri Hintsanen <petterih@iki.fi> in
89230	emacs-manual-bugs@gnu.org.
89231
892322017-12-24  Eli Zaretskii  <eliz@gnu.org>
89233
89234	Adjudicate review comments for the "Text" chapter of user manual
89235
89236	* doc/emacs/text.texi (Text): Rearrange text for clarity.  Add
89237	cross-reference to the Org manual.  Make the cross-reference to
89238	Outline Mode appear in online manuals as well (the conditional was
89239	a forgotten remnant from time immemoriam).
89240	(Paragraphs): Add a note that 'paragraph-start' and
89241	'paragraph-separate' should not be anchored.
89242	(Auto Fill): Remove redundant text.  Suggested by Petteri
89243	Hintsanen <petterih@iki.fi> in emacs-manual-bugs@gnu.org.
89244
892452017-12-24  Andreas Schwab  <schwab@linux-m68k.org>
89246
89247	* lisp/url/url-http.el
89248	(url-http-wait-for-headers-change-function): Change message to
89249	url-http-debug.
89250
892512017-12-24  Alan Mackenzie  <acm@muc.de>
89252
89253	In C-h k <mouse-n>, alert user to existence of any matching down-mouse-event
89254
89255	, and instruct her to hold the mouse button to display its documentation.
89256
89257	* lisp/help.el (help-downify-mouse-event-type): New function.
89258	(help-read-key-sequence, describe-key): handle double-click-time being nil or
89259	t.
89260	(describe-key): Print out instructions for displaying documentation of
89261	matching mouse down key sequence command when such exists.
89262
892632017-12-23  Andreas Schwab  <schwab@linux-m68k.org>
89264
89265	* net/eww.el (eww): Handle URLs without host part.
89266
892672017-12-23  Alan Mackenzie  <acm@muc.de>
89268
89269	Make C-h c/k S-mouse-1 display message for mouse-appearance-menu, etc.
89270
89271	Currently, C-h c/k for S-mouse-1 reports that S-mouse-1 is unbound, ignoring
89272	that S-down-mouse-1 is bound.  We fix this by reporting on the "latest" mouse
89273	event of a sequence which is bound.
89274
89275	* lisp/help.el (help-read-key-sequence): Save all encountered mouse events in
89276	a list.  Return the latest one which has a binding.
89277
892782017-12-23  Eli Zaretskii  <eliz@gnu.org>
89279
89280	Avoid crashes when ':eval' deletes our frame
89281
89282	* src/xdisp.c (display_mode_element): Signal an error if
89283	':eval' somehow deletes the frame whose window we are
89284	redisplaying. (Bug#29726)
89285
892862017-12-23  Tak Kunihiro  <tkk@misasa.okayama-u.ac.jp>
89287
89288	Fix scrolling up in pixel-scroll.el
89289
89290	* lisp/pixel-scroll.el (pixel-scroll-up): Do not try to move cursor
89291	down when EOB is shown at the top.  This function is reverted to
89292	commit 1bda71ec3b11eeb4d06c3da094a3cb21bac18d5c. (bug#29737)
89293
892942017-12-23  Eli Zaretskii  <eliz@gnu.org>
89295
89296	Fix problems with ligatures in PDF version of ELisp manual
89297
89298	* doc/lispref/strings.texi (Case Conversion): Avoid problems with
89299	ligatures in printed versions of the manual.  (Bug#29818)
89300
893012017-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>
89302
89303	(elisp-flymake-byte-compile): Handle killed buffer in sentinel
89304
89305	* lisp/progmodes/elisp-mode.el (elisp-flymake-byte-compile):
89306	Don't burp if the source-buffer has been killed.
89307
893082017-12-22  Glenn Morris  <rgm@gnu.org>
89309
89310	Avoid some overfull lines in PDF lispref
89311
89312	* doc/lispref/commands.texi (Reading One Event):
89313	* doc/lispref/display.texi (SVG Images):
89314	* doc/lispref/frames.texi (Size Parameters):
89315	* doc/lispref/syntax.texi (Categories):
89316	* doc/lispref/windows.texi (Frame Layouts with Side Windows):
89317	Avoid overfull lines.
89318
893192017-12-22  Glenn Morris  <rgm@gnu.org>
89320
89321	Avoid some overfull lines in PDF manual
89322
89323	* doc/emacs/display.texi (Display Custom):
89324	* doc/emacs/search.texi (Other Repeating Search):
89325	* doc/emacs/text.texi (Quotation Marks): Avoid overfull lines.
89326
893272017-12-22  Glenn Morris  <rgm@gnu.org>
89328
89329	* doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
89330	Fix ref.
89331
893322017-12-22  Eli Zaretskii  <eliz@gnu.org>
89333
89334	* lisp/emacs-lisp/inline.el (define-inline): Add a doc string.
89335
893362017-12-22  Eli Zaretskii  <eliz@gnu.org>
89337
89338	Fix doc string of 'footnote-style-alist'
89339
89340	* lisp/mail/footnote.el (footnote-style-alist): Remove a reference
89341	to non-existing files from doc string.  (Bug#29759)
89342
893432017-12-22  Eli Zaretskii  <eliz@gnu.org>
89344
89345	Improve documentation of selecting windows
89346
89347	* doc/lispref/windows.texi (Basic Windows, Selecting Windows):
89348	Clarify what selecting a window means for keyboard input, and that
89349	input focus may need to be considered when selecting windows on
89350	other frames.  See
89351	http://lists.gnu.org/archive/html/emacs-devel/2017-12/msg00372.html
89352	for more details.
89353
893542017-12-22  Eli Zaretskii  <eliz@gnu.org>
89355
89356	Improve documentation of records
89357
89358	* doc/lispref/Makefile.in (srcs): Add the forgotten records.texi.
89359	* doc/lispref/records.texi (Records): Recommend that record type
89360	names use package-naming conventions.
89361
89362	* etc/NEWS: Add the naming convention recommendation for record
89363	types.
89364
893652017-12-22  Eli Zaretskii  <eliz@gnu.org>
89366
89367	* etc/NEWS: Mention the removal of pinentry.el.  (Bug#27445)
89368
893692017-12-22  Eli Zaretskii  <eliz@gnu.org>
89370
89371	Fix interactive spec of 'semantic-ia-show-variants'
89372
89373	* lisp/cedet/semantic/ia.el (semantic-ia-show-variants): Fix the
89374	interactive spec to match the function's expectations.  (Bug#29770)
89375
893762017-12-22  Eli Zaretskii  <eliz@gnu.org>
89377
89378	Fix documentation of 'mouse-drag-and-drop-region' and friends
89379
89380	* doc/emacs/frames.texi (Drag and Drop): Index
89381	'mouse-drag-and-drop-region-cut-when-buffers-differ',
89382	'mouse-drag-and-drop-region-show-tooltip', and
89383	'mouse-drag-and-drop-region-show-cursor'.
89384
89385	* etc/NEWS: Fix the format of the related entries.
89386
893872017-12-22  Eli Zaretskii  <eliz@gnu.org>
89388
89389	Improve detection of speller version in ispell.el
89390
89391	* lisp/textmodes/ispell.el (ispell-check-version): Accept more
89392	general forms of version numbers for Aspell, Hunspell, and
89393	Enchant, to include various beta and prereleases.  (Bug#29801)
89394
893952017-12-22  Tak Kunihiro  <tkk@misasa.okayama-u.ac.jp>
89396
89397	Document 'mouse-drag-and-drop-region' options and mention them in NEWS
89398
89399	* doc/emacs/frames.texi (Drag and Drop):
89400	* etc/NEWS (times): Document options for
89401	'mouse-drag-and-drop-region' and mention them in NEWS.
89402
894032017-12-22  Martin Rudalics  <rudalics@gmx.at>
89404
89405	Fix uses of 'nil' and 'non-nil' in manuals and a few more minor issues
89406
89407	* doc/emacs/building.texi (Grep Searching): Fix doc of
89408	'grep-save-buffers'.
89409	(Drag and Drop): Reorder paragraphs.  Fix doc of
89410	'mouse-drag-and-drop-region'.
89411	* doc/emacs/frames.texi (Word and Line Mouse):
89412	* doc/emacs/search.texi (Other Repeating Search):
89413	* doc/lispref/compile.texi (Compilation Functions):
89414	* doc/lispref/files.texi (Directory Names):
89415	* doc/lispref/functions.texi (Advising Named Functions):
89416	* doc/lispref/keymaps.texi (Controlling Active Maps):
89417	* doc/lispref/lists.texi (Association Lists):
89418	* doc/lispref/windows.texi (Quitting Windows): Fix uses of
89419	'non-nil' and 'nil'.
89420
894212017-12-21  Philipp Stephani  <phst@google.com>
89422
89423	Document that mode commands should be idempotent.
89424
89425	* doc/lispref/modes.texi (Major Mode Conventions, Minor Mode
89426	Conventions): Document that the mode commands should be idempotent.
89427
894282017-12-21  Alan Mackenzie  <acm@muc.de>
89429
89430	Fontify a CPP construct correctly when a comment follows without spaces
89431
89432	Do this by removing a broken optimization in the state cache which put
89433	category text properties on a character between the end of the CPP construct
89434	and the beginning of the comment.  This can't work when there's no such
89435	character.
89436
89437	* lisp/progmodes/cc-defs.el (c-cpp-delimiter, c-set-cpp-delimiters)
89438	(c-clear-cpp-delimiters, c-comment-out-cpps, c-with-cpps-commented-out)
89439	(c-with-all-but-one-cpps-commented-out): Remove.
89440
89441	* lisp/progmodes/cc-engine.el (c-no-comment-end-of-macro): Return the comment
89442	start position rather than one character before it.
89443	(c-invalidate-state-cache, c-parse-state): Remove the invocations of
89444	c-with-all-but-one-cpps-commented-out and c-with-cpps-commented-out.
89445
89446	* lisp/progmodes/cc-mode.el (c-neutralize-syntax-in-and-mark-CPP): Rename to
89447	c-neutralize-syntax-in-CPP and remove the bits which applied category
89448	properties.
89449
89450	* lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Incorporate the
89451	new name of the function c-neutralize-syntax-in-CPP.
89452
894532017-12-21  Eli Zaretskii  <eliz@gnu.org>
89454
89455	Prevent infloop in redisplay on TTY frames
89456
89457	* src/xdisp.c (extend_face_to_end_of_line): Avoid infloop when
89458	filling up display margins with the default face's background.
89459	(Bug#29789)
89460
894612017-12-21  Alan Mackenzie  <acm@muc.de>
89462
89463	Fix loss of documentation face in certain CC Mode doc comment situations
89464
89465	* lisp/progmodes/cc-fonts.el (c-font-lock-doc-comments): Take into account
89466	the possibility of font-lock-comment-delimiter-face.  Test rigorously for
89467	"/**" (etc.) being itself inside a literal, rather than just depending on the
89468	face of the previous character.
89469
894702017-12-21  Daiki Ueno  <ueno@gnu.org>
89471
89472	Remove pinentry.el
89473
89474	* lisp/epg.el (epg--start): Remove the use of pinentry.el.
89475	* lisp/net/pinentry.el: Remove (bug#27445).
89476
894772017-12-21  Ted Zlatanov  <tzz@lifelogs.com>
89478
89479	Special-case %DUMBFW for GnuTLS between 3.2.5 and 3.5.1
89480
89481	* src/gnutls.c: Introduce HAVE_GNUTLS_EXT__DUMBFW for GnuTLS >= 3.2.5.
89482	(Fgnutls_available_p): Use it.
89483
894842017-12-21  Andy Moreton  <andrewjmoreton@gmail.com>
89485
89486	Work around GnuTLS version issues with %DUMBFW (tiny change)
89487
89488	* src/gnutls.c: Introduce HAVE_GNUTLS_EXT_GET_NAME and use it.
89489	(init_gnutls_functions): Use it.
89490	(Fgnutls_available_p): Use it (Bug#25061). Fix Vlibrary_cache bug.
89491
894922017-12-20  Dmitry Gutov  <dgutov@yandex.ru>
89493
89494	Merge branch 'widen-less' into emacs-26
89495
894962017-12-20  Glenn Morris  <rgm@gnu.org>
89497
89498	* lisp/erc/erc.el (erc-shorten-server-name): Silence compiler warning.
89499
895002017-12-20  Glenn Morris  <rgm@gnu.org>
89501
89502	Fix some more aliases to user options
89503
89504	* lisp/cus-edit.el (custom-mode-hook):
89505	* lisp/erc/erc.el (erc-default-coding-system):
89506	* lisp/progmodes/python.el (python-indent, python-guess-indent)
89507	(python-shell-virtualenv-path)
89508	(python-shell-completion-module-string-code)
89509	(python-shell-completion-pdb-string-code, python-use-skeletons):
89510	Define aliases to user options before the options are defined.
89511
895122017-12-20  Glenn Morris  <rgm@gnu.org>
89513
89514	Fix some flymake aliases
89515
89516	* lisp/progmodes/flymake-proc.el (flymake-xml-program)
89517	(flymake-compilation-prevents-syntax-check, flymake-master-file-dirs)
89518	(flymake-master-file-count-limit, flymake-allowed-file-name-masks):
89519	* lisp/progmodes/flymake.el (flymake-start-syntax-check-on-find-file):
89520	Define aliases to user options before the options are defined.
89521
895222017-12-20  Glenn Morris  <rgm@gnu.org>
89523
89524	Unbreak a fileio test on non-Mac OS X systems
89525
89526	* test/src/fileio-tests.el (fileio-tests--symlink-failure):
89527	Don't use an undefined coding system.
89528
895292017-12-20  Robert Pluim  <rpluim@gmail.com>
89530
89531	Fix updating scrollbar sizes when scaling is in effect
89532
89533	* src/gtkutil.c (xg_update_scrollbar_pos): Update width of
89534	scrollbar when scaling is in effect.
89535	(xg_update_horizontal_scrollbar_pos): Update scrollbar size
89536	when scaling is in effect.
89537
895382017-12-20  Dmitry Gutov  <dgutov@yandex.ru>
89539
89540	Widen in indent-for-tab-command in the normal case, too
89541
89542	Fixing this obvious omission.
89543	* lisp/indent.el (indent--funcall-widened): New function.
89544	(indent-for-tab-command): Use it.
89545
895462017-12-19  Ted Zlatanov  <tzz@lifelogs.com>
89547
89548	Collect GnuTLS extensions and use them to set %DUMBFW if supported
89549
89550	* lisp/net/gnutls.el (gnutls-boot-parameters): Use it to set %DUMBFW
89551	only when it's supported as "ClientHello Padding" (Bug#25061).
89552
89553	* src/gnutls.c (Fgnutls_available_p): Get extension names and
89554	put them in the GnuTLS capabilities, using a hard-coded limit
89555	of 100 since GnuTLS MAX_EXT_TYPES is not exported.
89556
895572017-12-18  Stefan Monnier  <monnier@iro.umontreal.ca>
89558
89559	* test/lisp/emacs-lisp/derived-tests.el: Fix copy&paste leftovers
89560
895612017-12-18  Stefan Monnier  <monnier@iro.umontreal.ca>
89562
89563	* lisp/subr.el (delayed-after-hook-functions): Rename from ...-forms
89564
89565	(run-mode-hooks): `funcall` the functions instead of `eval`ing the forms.
89566	* lisp/emacs-lisp/derived.el (define-derived-mode): Push functions
89567	rather than forms (bug#29679).
89568
895692017-12-18  Katsumi Yamaoka  <yamaoka@jpl.org>
89570
89571	* lisp/net/shr.el (shr-string-pixel-width): Return pixel-width,
89572	not position (bug#29734).
89573
895742017-12-18  Dmitry Gutov  <dgutov@yandex.ru>
89575
89576	Replace the mention of c-indent-defun with js-indent-line
89577
89578	* doc/lispref/text.texi (Mode-Specific Indent):
89579	Avoid mentioning c-indent-defun in the context of multi-mode
89580	indentation.
89581
895822017-12-17  Charles A. Roelli  <charles@aurox.ch>
89583
89584	python.el doc fixes
89585
89586	* lisp/progmodes/python.el (python-shell-accept-process-output):
89587	(python-shell-comint-end-of-output-p):
89588	(python-shell-first-prompt-hook):
89589	(python-info-beginning-of-backslash): Doc fixes.
89590
895912017-12-17  Tak Kunihiro  <tkk@misasa.okayama-u.ac.jp>
89592
89593	Make 'mouse-drag-and-drop-region' more robust and customizable
89594
89595	* lisp/mouse.el
89596	(mouse-drag-and-drop-region-cut-when-buffers-differ): New option
89597	to permit 'mouse-drag-and-drop-region' to cut text also when source
89598	and destination buffers differ.
89599	(mouse-drag-and-drop-region-show-tooltip): New option to toggle
89600	display of tooltip during mouse dragging on graphic displays.
89601	(mouse-drag-and-drop-region-show-cursor): New option to toggle
89602	moving point with mouse cursor during mouse dragging of region.
89603	(mouse-drag-and-drop-region): New face to highlight original
89604	text while dragging.
89605	(mouse-drag-and-drop-region): Make use of new options and face.
89606	Ignore errors during tracking.
89607
896082017-12-17  Oscar Fuentes  <ofv@wanadoo.es>
89609
89610	Backport: Don't compare arguments that can be nil (Bug#28039)
89611
89612	copy-region-as-kill can be called passing nil as `beg' and
89613	`end'. Magit does that, which caused an error when this advice was in
89614	effect.
89615
89616	* lisp/ses.el (ses--advice-copy-region-as-kill): avoid comparison
89617	  unless `beg' and `end' are non-nil.
89618
896192017-12-17  Noam Postavsky  <npostavs@gmail.com>
89620
89621	Don't mess up syntax-ppss cache in electric-pair (Bug#29710)
89622
89623	In Emacs 25 and above, calling `scan-sexps', `parse-partial-sexp', or
89624	similar may update the syntax-ppss cache if
89625	`parse-sexp-lookup-properties' is non-nil.  Therefore, when calling
89626	any of these functions with a different than normal syntax-table, the
89627	cache must be cleaned afterwards.
89628	* lisp/elec-pair.el (electric-pair--with-uncached-syntax): New macro.
89629	(electric-pair--syntax-ppss, electric-pair--balance-info): Use it.
89630
896312017-12-17  Glenn Morris  <rgm@gnu.org>
89632
89633	* etc/emacs.appdata.xml: Update file format.
89634
896352017-12-16  Alan Third  <alan@idiocy.org>
89636
89637	Use utf-8-hfs-unix on macOS (Bug#29712)
89638
89639	This is a quick fix for the Emacs 26 release. Do not merge to master.
89640
89641	* test/src/fileio-tests.el (fileio-tests--symlink-failure): Override
89642	file-name-coding-system to utf-8-hfs-unix to prevent test failure.
89643
896442017-12-16  Alan Mackenzie  <acm@muc.de>
89645
89646	* lisp/progmodes/cc-defs.el (c-version): Update to 5.33.1.
89647
896482017-12-16  Michael Albinus  <michael.albinus@gmx.de>
89649
89650	Improve fix for Bug#29712
89651
89652	* test/lisp/net/tramp-tests.el
89653	(tramp-test32-environment-variables-and-port-numbers):
89654	Adapt check for systems which do not support "echo -n".  (Bug#29712)
89655
896562017-12-16  Eli Zaretskii  <eliz@gnu.org>
89657
89658	* doc/lispref/sequences.texi (Sequence Functions): Improve indexing.
89659
896602017-12-16  Eli Zaretskii  <eliz@gnu.org>
89661
89662	Avoid reordering of output in 'shr-insert-document'
89663
89664	* lisp/net/shr.el (shr-string-pixel-width): Preserve point across
89665	shr-pixel-column invocations.  (Bug#29734)
89666
896672017-12-16  Eli Zaretskii  <eliz@gnu.org>
89668
89669	Improve documentation of 'invisible-p'
89670
89671	* doc/lispref/display.texi (Invisible Text): Document the return
89672	value of 'invisible-p'.
89673
89674	* src/xdisp.c (Finvisible_p): Rename the argument POS.  Doc fix.
89675	(Bug#29721)
89676
896772017-12-16  Martin Rudalics  <rudalics@gmx.at>
89678
89679	Remove one more check that Vframe_list is non-nil
89680
89681	* src/dispnew.c (check_glyph_memory): Remove no-longer-needed
89682	check that Vframe_list is non-nil, as FOR_EACH_FRAME no longer
89683	assumes that.
89684
896852017-12-16  Simen Heggestøyl  <simenheg@gmail.com>
89686
89687	Fix off-by-one error in 'css--hex-color'
89688
89689	* lisp/textmodes/css-mode.el (css--hex-color): Fix off-by-one error.
89690
89691	* test/lisp/textmodes/css-mode-tests.el (css-test-hex-color): New test
89692	for 'css--hex-color'.
89693
896942017-12-16  Aaron Jensen  <aaronjensen@gmail.com>
89695
89696	Save and restore text-pixel height and width of frames (Bug#28442)
89697
89698	* lisp/frameset.el (frameset--record-relationships): Record
89699	text-pixel-height and text-pixel-width of frame.
89700	(frameset--restore-frame): Restore text-pixel-height and
89701	text-pixel-width of frame if available.  (Bug#28442)
89702
897032017-12-16  Noam Postavsky  <npostavs@gmail.com>
89704
89705	Partially revert "Mention new strictness for &optional, &rest..."
89706
89707	The changes to cl argument parsing are not backwards compatible, and
89708	cause inconvenience when writing macros (e.g., instead of doing '&aux
89709	,@auxargs', some more complicated conditionals would be required).
89710	The `cl-defstruct' macro makes use of this convenience when defining
89711	empty structs (Bug#29728).
89712	* lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
89713	(cl--do-&aux, cl--do-arglist): Undo strict checking of &rest, &key,
89714	and &aux.
89715	* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-bad-arglist): Remove
89716	test.
89717
897182017-12-15  Glenn Morris  <rgm@gnu.org>
89719
89720	* lisp/vc/smerge-mode.el (smerge-refine): Respect font-lock-mode.
89721
89722	* lisp/vc/smerge-mode.el (smerge-refine): Replace obsolete alias.
89723
897242017-12-15  Paul Eggert  <eggert@cs.ucla.edu>
89725
89726	FOR_EACH_FRAME no longer assumes frame-list
89727
89728	This cleans up a recent fix related to Bug#29661.
89729	Suggested by Stefan Monnier in:
89730	https://lists.gnu.org/r/emacs-devel/2017-12/msg00544.html
89731	* src/frame.c (next_frame, prev_frame, delete_frame):
89732	Restore debugging checks that Vframe_list is non-nil,
89733	as FOR_EACH_FRAME no longer has these checks.
89734	(delete_frame): Remove no-longer-needed checks that Vframe_list is
89735	non-nil, as FOR_EACH_FRAME no longer assumes that.
89736	* src/frame.h (FOR_EACH_FRAME): Do not assume Vframe_list is non-nil.
89737
897382017-12-15  Eli Zaretskii  <eliz@gnu.org>
89739
89740	* src/font.c (Ffont_info): Doc fix.  (Bug#29682)
89741
897422017-12-15  Basil L. Contovounesios  <contovob@tcd.ie>
89743
89744	Modernise message.el face spec syntax
89745
89746	* lisp/gnus/message.el (message-header-to, message-header-cc)
89747	(message-header-subject, message-header-newsgroups)
89748	(message-header-other, message-header-name, message-header-xheader)
89749	(message-separator, message-cited-text, message-mml):
89750	Use (DISPLAY . PLIST) face spec syntax as recommended in
89751	`(elisp) Defining Faces'.  (Bug#29405)
89752
897532017-12-15  Basil L. Contovounesios  <contovob@tcd.ie>
89754
89755	Update message.el obsolete face aliases
89756
89757	* lisp/gnus/message.el: (message-header-to, message-header-cc)
89758	(message-header-subject, message-header-newsgroups)
89759	(message-header-other, message-header-name, message-header-xheader)
89760	(message-separator, message-cited-text, message-mml):
89761	Use define-obsolete-face-alias.  (Bug#29405)
89762
897632017-12-15  Eli Zaretskii  <eliz@gnu.org>
89764
89765	Improve documentation of TERM environment variable
89766
89767	* doc/emacs/trouble.texi (Checklist):
89768	* doc/emacs/building.texi (Compilation Shell):
89769	* doc/emacs/misc.texi (Shell Options): Improve indexing of TERM.
89770	* doc/emacs/building.texi (Compilation Shell): Mention
89771	'comint-terminfo-terminal' in conjunction with the TERM value.
89772
897732017-12-15  Allen Li  <darkfeline@felesatra.moe>
89774
89775	Add option to configure comint TERM
89776
89777	* lisp/comint.el (comint-terminfo-terminal): New defcustom.
89778	(comint-term-environment): New function for setting terminal options
89779	(comint-exec-1): Use comint-term-environment.  (Bug#29583)
89780	* lisp/progmodes/compile.el (compilation-start): Use comint-term-environment.
89781
89782	* etc/NEWS:
89783	* doc/emacs/misc.texi (Shell Options): Document the new option.
89784
897852017-12-15  Eli Zaretskii  <eliz@gnu.org>
89786
89787	Better support utf-8-with-signature and utf-8-hfs in XML/HTML
89788
89789	* lisp/international/mule.el (sgml-xml-auto-coding-function):
89790	Support UTF-8 with BOM and utf-8-hfs as variants of UTF-8, and
89791	obey the buffer's encoding if it is one of these variants, instead
89792	of re-encoding in UTF-8 proper.  (Bug#20623)
89793
897942017-12-15  Eli Zaretskii  <eliz@gnu.org>
89795
89796	* lisp/menu-bar.el (menu-bar-mode): Doc fix.
89797
897982017-12-15  Michael Albinus  <michael.albinus@gmx.de>
89799
89800	Fix Bug#29712 in tramp-tests.el
89801
89802	* test/lisp/net/tramp-tests.el
89803	(tramp-test32-environment-variables-and-port-numbers):
89804	Skip for macOS.  (Bug#29712)
89805
898062017-12-15  Martin Rudalics  <rudalics@gmx.at>
89807
89808	Don't run FOR_EACH_FRAME when there's no frame left (Bug#29961)
89809
89810	This does not fix Bug#29961 but avoids that Emacs segfaults when
89811	trying to shut down because it lost connection to the X server.
89812
89813	* src/dispnew.c (check_glyph_memory):
89814	* src/frame.c (delete_frame): Don't run FOR_EACH_FRAME when
89815	there's no frame left (Bug#29961).
89816
898172017-12-15  Glenn Morris  <rgm@gnu.org>
89818
89819	* lisp/textmodes/tex-mode.el: Ensure uncompiled file is loadable.
89820
898212017-12-15  Ted Zlatanov  <tzz@lifelogs.com>
89822
89823	Remember password change for IMAP in Gnus (Bug#29692)
89824
89825	Reported by Trey Jackson <trey_jackson@mentor.com>.
89826
89827	* lisp/gnus/mail-source.el (mail-source-fetch-imap): Check
89828	`mail-source-password-cache' for password.
89829
898302017-12-15  Ted Zlatanov  <tzz@lifelogs.com>
89831
89832	Add %DUMBFW to the default GnuTLS priority strings
89833
89834	* lisp/net/gnutls.el (gnutls-boot-parameters): Add %DUMBFW to
89835	the default priority strings (Bug#25061).
89836
89837	* etc/NEWS: Mention it.
89838
89839	* doc/misc/emacs-gnutls.texi (Help For Users): Point to the
89840	GnuTLS priority string documentation URL.
89841
898422017-12-15  Glenn Morris  <rgm@gnu.org>
89843
89844	Small fixes prompted by make check-declare
89845
89846	* lisp/frame.el (x-focus-frame): Update declaration.
89847	(ns-mouse-absolute-pixel-position): Fix declaration.
89848	* lisp/vc/diff-mode.el (diff-refine-hunk):
89849	Use smerge-refine-regions rather than obsolete alias.
89850	(smerge-refine-subst): Remove declaration, no longer relevant.
89851
898522017-12-15  Glenn Morris  <rgm@gnu.org>
89853
89854	Fix some custom groups
89855
89856	* lisp/vc/vc-hooks.el (vc-faces): Rename from vc-state-faces.
89857	* lisp/vc/cvs-status.el (cvs-status): Unused, remove.
89858
898592017-12-14  Alan Mackenzie  <acm@muc.de>
89860
89861	Fix fontification of first declaration within a C++ lambda form.
89862
89863	* lisp/progmodes/cc-engine.el (c-looking-at-or-maybe-in-bracelist): Cease
89864	spuriously recognizing the braces of a lambda form as a brace list when there
89865	is an "=" preceding the introductory brackets.
89866
898672017-12-14  Charles A. Roelli  <charles@aurox.ch>
89868
89869	* src/data.c (Fadd_variable_watcher): Doc fix.
89870
898712017-12-14  Alan Mackenzie  <acm@muc.de>
89872
89873	Fix misfontification of C++ member initialization list after "throw"
89874
89875	* lisp/progmodes/cc-engine.el (c-forward-type): Stop recognizing a "type"
89876	starting with "throw", by using c-opt-type-modifier-prefix-key.
89877
89878	* lisp/progmodes/cc-langs.el (c-type-modifier-prefix-kwds): New lang const
89879	which, in C++, doesn't contain "throw", otherwise like c-type-modifier-kwds.
89880	(c-opt-type-modifier-prefix-key): New lang const and var, a regexp matching
89881	any keyword in the previous lang const.
89882
898832017-12-14  Dmitry Gutov  <dgutov@yandex.ru>
89884
89885	Consolidate 'widen' calls
89886
89887	* lisp/progmodes/prog-mode.el (prog-indentation-context):
89888	Un-document all elements but the first.
89889	(prog-widen): Remove.
89890	(http://lists.gnu.org/archive/html/emacs-devel/2017-12/msg00321.html)
89891
89892	* doc/lispref/text.texi (Mode-Specific Indent): Update.
89893
89894	* lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
89895	Don't call widen.
89896
89897	* lisp/progmodes/python.el
89898	(python-indent-guess-indent-offset)
89899	(python-info-current-defun): Replace prog-widen with widen;
89900	these functions are not called during indentation.
89901	(python-indent-context)
89902	(python-indent--calculate-indentation)
89903	(python-info-dedenter-opening-block-message)
89904	(python-info-line-ends-backslash-p)
89905	(python-info-beginning-of-backslash)
89906	(python-info-continuation-line-p)
89907	(python-info-current-defun): Remove 'widen' calls.
89908
89909	* lisp/indent.el (indent-according-to-mode)
89910	(indent-for-tab-command, indent-region): Move them here.
89911
89912	* lisp/textmodes/mhtml-mode.el (mhtml-indent-line):
89913	Bind prog-indentation-context to one-element list.
89914
899152017-12-14  Martin Rudalics  <rudalics@gmx.at>
89916
89917	Fix doc-string of Fbuffer_list
89918
89919	* src/buffer.c (Fbuffer_list): Fix doc-string.
89920
899212017-12-14  Basil L. Contovounesios  <contovob@tcd.ie>
89922
89923	Don't raise an extraneous frame (bug#29696)
89924
89925	* lisp/gnus/gnus-art.el (gnus-article-read-summary-keys): Lookup
89926	summary buffer keys from article buffer without affecting window
89927	configuration (bug#29696).
89928
899292017-12-13  Noam Postavsky  <npostavs@gmail.com>
89930
89931	Mention new strictness for &optional, &rest in arglists (Bug#29165)
89932
89933	* etc/NEWS: Explain that '&optional' not followed by a variable is now
89934	an error.
89935	* lisp/emacs-lisp/cl-macs.el (cl--transform-lambda, cl--do-&aux)
89936	(cl--do-arglist): Also reject '&optional', '&rest', or '&aux' not
89937	followed by a variable for consistency.
89938	* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-bad-arglist): New
89939	test.
89940
899412017-12-13  Alan Mackenzie  <acm@muc.de>
89942
89943	Don't misfontify "foo ()" inside C++ initialization parentheses as a type
89944
89945	Also recognize and handle function names introduced by "extern" inside a
89946	function.
89947
89948	* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Add a new element to
89949	the result list which is t when our declaration is, or is to be treated as,
89950	being at top level.
89951
89952	* lisp/progmodes/cc-fonts.el (c-get-fontification-context): Detect being
89953	inside a C++ uniform initialization and return (not-decl nil) for this case.
89954	(c-font-lock-declarations): Use the new element 4 of the result of
89955	c-forward-decl-or-cast-1.
89956
89957	* lisp/progmodes/cc-langs.el (c-make-top-level-kwds, c-make-top-level-key):
89958	New lang consts/vars.
89959
899602017-12-13  Glenn Morris  <rgm@gnu.org>
89961
89962	Fixes for defcustoms, prompted by cus-test-opts
89963
89964	* lisp/files.el (save-some-buffers-default-predicate):
89965	* lisp/time.el (display-time-world-list):
89966	* lisp/gnus/gnus-art.el (gnus-article-show-cursor):
89967	* lisp/progmodes/cc-vars.el (c-noise-macro-with-parens-names):
89968	* lisp/progmodes/verilog-mode.el (verilog-auto-wire-type):
89969	* lisp/textmodes/less-css-mode.el (less-css-output-directory)
89970	(less-css-output-file-name, less-css-input-file-name):
89971	* lisp/vc/emerge.el (emerge-metachars):
89972	* lisp/vc/vc-hg.el (vc-hg-symbolic-revision-styles):
89973	Fix :types.
89974	* lisp/net/newst-backend.el (newsticker-url-list-defaults): Fix url.
89975
899762017-12-13  Glenn Morris  <rgm@gnu.org>
89977
89978	* lisp/net/newst-backend.el (newsticker--raw-url-list-defaults):
89979	Update.
89980
89981	* lisp/htmlfontify.el (hfy-which-etags): Fix it.
89982
899832017-12-13  Glenn Morris  <rgm@gnu.org>
89984
89985	Add missing :version tags revealed by cusver-check
89986
89987	* lisp/comint.el (comint-move-point-for-matching-input):
89988	* lisp/epa.el (epa-replace-original-text):
89989	* lisp/image-dired.el (image-dired-cmd-optipng-program)
89990	(image-dired-cmd-optipng-options):
89991	* lisp/emacs-lisp/bytecomp.el (byte-compile-cond-use-jump-table):
89992	* lisp/gnus/gnus-cloud.el (gnus-cloud-storage-method)
89993	(gnus-cloud-interactive):
89994	* lisp/net/mailcap.el (mailcap-user-mime-data):
89995	* lisp/progmodes/cc-vars.el (c-asymmetry-fontification-flag)
89996	(c-noise-macro-names, c-noise-macro-with-parens-names):
89997	* lisp/progmodes/flymake.el (flymake-start-on-flymake-mode)
89998	(flymake-wrap-around):
89999	* lisp/progmodes/grep.el (grep-use-null-filename-separator):
90000	* lisp/progmodes/js.el (js-indent-align-list-continuation):
90001	* lisp/progmodes/perl-mode.el (perl-flymake-command):
90002	* lisp/progmodes/python.el (python-flymake-command)
90003	(python-flymake-command-output-pattern, python-flymake-msg-alist):
90004	* lisp/progmodes/ruby-mode.el (ruby-flymake-use-rubocop-if-available)
90005	(ruby-rubocop-config):
90006	* lisp/textmodes/less-css-mode.el (less-css):
90007	* lisp/textmodes/tex-mode.el (tex-chktex-program)
90008	(tex-chktex-extra-flags): Add missing :version tags.
90009
900102017-12-13  Glenn Morris  <rgm@gnu.org>
90011
90012	Escape column-zero doc parens
90013
90014	* lisp/htmlfontify.el (hfy-display-class):
90015	* lisp/calendar/icalendar.el (icalendar--do-create-ical-alarm):
90016	* lisp/net/shr.el (shr-external-rendering-functions):
90017	* lisp/progmodes/cc-vars.el (c-asymmetry-fontification-flag):
90018	* lisp/textmodes/tildify.el (tildify-tildify):
90019	Escape column-zero doc parens.  A shame bug#21871 remains unfixed.
90020
900212017-12-12  Alan Third  <alan@idiocy.org>
90022
90023	Remove ObjC blocks (Bug#23753)
90024
90025	* src/macfont.m (macfont_get_glyph_for_character):
90026	(mac_font_get_glyphs_for_variants): Inline Objective-C blocks.
90027
90028	(cherry picked from commit 4590f1d768adbb2120a2b02c614f7ed3b21a4a3e)
90029
900302017-12-12  Eli Zaretskii  <eliz@gnu.org>
90031
90032	Import the latest IVD_Sequences.txt
90033
90034	* admin/unidata/IVD_Sequences.txt: New version from
90035	http://www.unicode.org/ivd/, the 2017-12-12 version of the Unicode
90036	Ideographic Variation Database.
90037
90038	* src/macuvs.h: Regenerated.
90039
900402017-12-11  Max  <mu@magi.net.ru>  (tiny change)
90041
90042	Fix dired-do-compress when tar doesn't default to stdin (Bug#29094)
90043
90044	* lisp/dired-aux.el (dired-compress-file-suffixes): Use argument '-f-'
90045	to write to stdout rather than relying on the default (the choice of
90046	default is decided when compiling tar, BSD systems usually set it to a
90047	tape drive).  Drop '-v', since the output is not used anywhere.
90048
900492017-12-11  Noam Postavsky  <npostavs@gmail.com>
90050
90051	Suppress warnings during elisp completion macroexpansion
90052
90053	Errors are already suppressed, therefore it is logical to suppress
90054	warnings as well.  Some macros (e.g., use-package) may produce
90055	warnings when given the `elisp--witness--lisp' symbol.
90056	* lisp/progmodes/elisp-mode.el (elisp--local-variables): Let-bind
90057	warning-minimum-log-level to :emergency.
90058
900592017-12-11  Chunyang Xu  <xuchunyang.me@gmail.com>
90060
90061	* lisp/progmodes/verilog-mode.el (verilog-mode): Fix typo (Bug#24410).
90062
900632017-12-11  Michael Albinus  <michael.albinus@gmx.de>
90064
90065	Make tramp-interrupt-process more robust
90066
90067	* lisp/net/tramp.el (tramp-interrupt-process): Fall back to
90068	the default implementation if there's no success.
90069
900702017-12-11  Katsumi Yamaoka  <yamaoka@jpl.org>
90071
90072	Make quail-input-method work when inhibit-read-only is non-nil (bug#29504)
90073
90074	* lisp/international/quail.el (quail-input-method): Work not only
90075	when buffer-read-only is nil but also when inhibit-read-only is non-nil
90076	(bug#29504).
90077
900782017-12-10  Eli Zaretskii  <eliz@gnu.org>
90079
90080	Fix 'fontset-name-p'
90081
90082	* lisp/international/fontset.el (fontset-name-p): Make the
90083	function work with full fontset names and fontset alias names.
90084
900852017-12-10  Eli Zaretskii  <eliz@gnu.org>
90086
90087	Fix fontset documentation inconsistencies for bug#29630
90088
90089	* doc/lispref/display.texi (Face Attributes): Don't document
90090	:family as accepting a fontset.  Document that :font accepts a
90091	fontset.
90092
90093	* lisp/faces.el (set-face-attribute): Doc fix.
90094
900952017-12-10  Martin Rudalics  <rudalics@gmx.at>
90096
90097	Remove sentence from child frames section in Elisp manual
90098
90099	* doc/lispref/frames.texi (Child Frames): Remove one sentence.
90100	Suggested by Bob Weiner <rsw@gnu.org>.
90101
901022017-12-10  Eli Zaretskii  <eliz@gnu.org>
90103
90104	Avoid crashes in 'font-at' after 'set-fontset-font'
90105
90106	* src/fontset.c (free_realized_fontsets): Call
90107	recompute_basic_faces, so that the basic faces are available to
90108	any Lisp that calls this function, e.g. via set-fontset-font.
90109	(Bug#29632)
90110
901112017-12-10  Ted Zlatanov  <tzz@lifelogs.com>
90112
90113	* lisp/files-x.el (connection-local-set-profile-variables): Fix docstring.
90114
901152017-12-09  Ted Zlatanov  <tzz@lifelogs.com>
90116
90117	Add /etc/ssl/cert.pem to gnutls-trustfiles for macOS
90118
90119	Problem reported by Mark Ferlatte (Bug#28603).
90120	* lisp/net/gnutls.el (gnutls-trustfiles): Add /etc/ssl/cert.pem for macOS.
90121
901222017-12-09  Eli Zaretskii  <eliz@gnu.org>
90123
90124	Fix tool-tip display when display margins are non-zero by default
90125
90126	* src/buffer.h (bset_left_margin_cols, bset_right_margin_cols):
90127	New inline functions.
90128	* src/xfns.c (Fx_show_tip):
90129	* src/w32fns.c (Fx_show_tip): Force display margins of the tip
90130	buffer to zero, as it will be displayed in a pseudo-window, which
90131	doesn't support display margins.  (Bug#29627)
90132
901332017-12-09  Eric Abrahamsen  <eric@ericabrahamsen.net>
90134
90135	Handle hash tables and vectors when reading/writing EIEIO objects
90136
90137	* lisp/emacs-lisp/eieio.el (eieio-override-prin1): EIEIO objects
90138	  printed with `prin1' can no longer be read with `read'. Make sure
90139	  they are printed with object-write instead, even when they're inside
90140	  hash tables and vectors.
90141	* lisp/emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
90142	  Check for written representations of objects inside hash tables and
90143	  vectors, and reconstruct them.
90144
901452017-12-09  Eli Zaretskii  <eliz@gnu.org>
90146
90147	Improve interactive debugging commands in xdisp.c
90148
90149	* src/xdisp.c (Fdump_glyph_row, Fdump_tool_bar_row): Allow to
90150	specify ROW via prefix argument.  Fix the doc strings.
90151
901522017-12-09  Eli Zaretskii  <eliz@gnu.org>
90153
90154	Fix calculation of continuation_pixel_width in display engine
90155
90156	* src/xdisp.c (display_line): Remove incorrect increment of
90157	it->continuation_pixel_width when word-wrap is used.  (Bug#29594)
90158
901592017-12-09  Eli Zaretskii  <eliz@gnu.org>
90160
90161	Improve documentation of 'save-abbrevs'.
90162
90163	* doc/emacs/abbrevs.texi (Saving Abbrevs): Document the 'silently'
90164	value of 'save-abbrevs'.  Suggested by Alex Branham
90165	<alex.branham@gmail.com> in emacs-manual-bugs@gnu.org.
90166
901672017-12-09  Eli Zaretskii  <eliz@gnu.org>
90168
90169	Improve documentation of Dired
90170
90171	* doc/emacs/dired.texi (Dired): Mention that the Dired buffer can
90172	be made modifiable in Wdired.  Suggested by Alex Branham
90173	<alex.branham@gmail.com> in emacs-manual-bugs@gnu.org.
90174
901752017-12-09  Eli Zaretskii  <eliz@gnu.org>
90176
90177	* lisp/bookmark.el (bookmark-alist): Doc fix.  (Bug#29551)
90178
901792017-12-08  Michael Albinus  <michael.albinus@gmx.de>
90180
90181	Minor Tramp fixes
90182
90183	* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
90184	Fix a bug when renaming.
90185
90186	* test/lisp/net/tramp-tests.el (tramp-test21-file-links): Extend test.
90187	(tramp-test42-delay-load, tramp-test42-remote-load-path):
90188	Skip unless Emacs >= 26.
90189
901902017-12-08  Glenn Morris  <rgm@gnu.org>
90191
90192	* lisp/help-mode.el (help-function-def):
90193	Allow help-make-xrefs to call with one argument.  (Bug#29611)
90194
901952017-12-07  Martin Rudalics  <rudalics@gmx.at>
90196
90197	Fix doc-string of 'display-buffer-in-side-window'
90198
90199	* lisp/window.el (display-buffer-in-side-window): In doc-string
90200	clarify why the window returned gets dedicated to its buffer.
90201
902022017-12-06  Michael Albinus  <michael.albinus@gmx.de>
90203
90204	Fix Bug#29579
90205
90206	* lisp/files.el (file-name-non-special):
90207	Inhibit `file-name-handler-alist' only for some operations.
90208	Add missing operations.  (Bug#29579)
90209
90210	* lisp/net/tramp-compat.el (tramp-compat-file-name-quote):
90211	Do not quote if it is quoted already.
90212
90213	* lisp/net/tramp-smb.el (tramp-smb-handle-insert-directory):
90214	Use `copy-tree' but `copy-sequence'.
90215
90216	* lisp/net/tramp.el (tramp-handle-file-truename): Handle several
90217	trailing slashes correctly.
90218
90219	* test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
90220	(tramp-test12-rename-file, tramp-test24-file-acl)
90221	(tramp-test25-file-selinux, tramp--test-check-files):
90222	Handle also quoted file names.
90223	(tramp-test21-file-links): Fix file name quoting test.
90224	(tramp-test24-file-acl): Be more robust for "smb" method.
90225	(tramp-test35-make-auto-save-file-name): Enable hidden test cases.
90226
902272017-12-06  Rasmus  <rasmus@gmx.us>
90228
90229	Backport: Update Org to v9.1.4
90230
90231	Please note this is a bugfix release. See etc/ORG-NEWS for details.
90232
90233	(cherry picked from commit 567b5efe1f338c10c574758fb968915c5c34c909)
90234
902352017-12-06  Martin Rudalics  <rudalics@gmx.at>
90236
90237	In windows.texi mention special splitting behavior of side and atomic windows
90238
90239	* doc/lispref/windows.texi (Splitting Windows): Add note about
90240	and links to side and atomic windows.
90241
902422017-12-05  Katsumi Yamaoka  <yamaoka@jpl.org>
90243
90244	* lisp/gnus/gnus-group.el (gnus-group-mode-map):
90245	Bind [follow-link] to mouse-face, not 'mouse-face (bug#29538).
90246
902472017-12-04  Eli Zaretskii  <eliz@gnu.org>
90248
90249	Avoid compilation warning in xterm.c
90250
90251	* src/xterm.c (x_draw_underwave): Move the declaration of
90252	'thickness' to the non-USE_CAIRO branch, to avoid compiler
90253	warning.  (Bug#29567)
90254
902552017-12-04  Eli Zaretskii  <eliz@gnu.org>
90256
90257	* README: Document all the top-level directories.  (Bug#29558)
90258
902592017-12-04  Glenn Morris  <rgm@gnu.org>
90260
90261	Don't enable erc modules on simply loading erc.el
90262
90263	* lisp/erc/erc.el (erc-modules): Use default :initialize.  (Bug#29417)
90264
902652017-12-03  Lars Ingebrigtsen  <larsi@gnus.org>
90266
90267	Allow shr to use data: URLs without encoding
90268
90269	* lisp/net/shr.el (shr-image-from-data): Don't bug out on
90270	image data: URLs that have no base64 encoding like
90271	(shr-image-from-data
90272	"text/html,%3Ch1%3EHello%2C%20World!%3C%2Fh1%3E").
90273
902742017-12-03  E. Choroba  <choroba@matfyz.cz>  (tiny change)
90275
90276	Don't add newlines in minibuffer history
90277
90278	* lisp/simple.el (next-line-or-history-element): Bind
90279	next-line-add-newlines to nil.  (Bug#29529)
90280
902812017-12-03  Syohei YOSHIDA  <syohex@gmail.com>
90282
90283	modhelp.py: Support Python 3 (Bug#24954)
90284
90285	* modules/modhelp.py: 'print' statement was removed in Python
90286	3.  'print' function should be used instead of 'print' statement.
90287
902882017-12-03  Noam Postavsky  <npostavs@gmail.com>
90289
90290	Use forward slashes for python w32 config example (Bug#21656)
90291
90292	* lisp/progmodes/python.el: Use forward slashes for Windows path
90293	example, it doesn't require doubling of slashes which reduces chances
90294	of confusion.
90295
902962017-12-03  Paul Eggert  <eggert@cs.ucla.edu>
90297
90298	Fix bug in i18n/l10n optimization
90299
90300	This fixes a off-by-one buffer overrun bug introduced in
90301	2017-06-04T15:39:37Z!eggert@cs.ucla.edu.  Problem uncovered by an
90302	experimental version of Emacs built with -fcheck-pointer-bounds
90303	and running on Intel MPX hardware.
90304	* src/editfns.c (styled_format): Avoid overrunning internal buffers.
90305
903062017-12-02  Noam Postavsky  <npostavs@gmail.com>
90307
90308	Let autoload-compute-prefix be set file-locally (Bug#29471)
90309
90310	* lisp/emacs-lisp/autoload.el (autoload-compute-prefixes): Mark
90311	boolean values as safe.
90312
903132017-12-02  Noam Postavsky  <npostavs@gmail.com>
90314
90315	Improve edit-kbd-macro prompting in case of remapped keys (Bug#29399)
90316
90317	* lisp/edmacro.el (edit-kbd-macro): Use substitute-command-keys to
90318	present the current bindings in the prompt.  Check the
90319	non-remapped binding of the entered key sequence as well.
90320
903212017-12-02  Lele Gaifax  <lele@metapensiero.it>
90322
90323	Add tests on electric-indentation and Python multiline strings (Bug#29305)
90324
90325	* test/lisp/progmodes/python-tests.el
90326	(python-indent-electric-comma-inside-multiline-string,
90327	python-indent-electric-comma-after-multiline-string): New tests.
90328
903292017-12-02  Noam Postavsky  <npostavs@gmail.com>
90330
90331	Disable electric indent for python strings (Bug#29305)
90332
90333	* lisp/progmodes/python.el (python-indent-post-self-insert-function):
90334	Do nothing when point or beginning of line is in string.
90335
903362017-12-02  Yuuki Harano  <masm-emacs@masm11.ddo.jp>  (tiny change)
90337
90338	Fix buffer overflow in fontname conversion (Bug#29523)
90339
90340	* src/nsterm.m (ns_xlfd_to_fontname): Fix sscanf format.
90341
903422017-12-02  Eli Zaretskii  <eliz@gnu.org>
90343
90344	Fix byte compilation of files with leading directories
90345
90346	* lisp/emacs-lisp/bytecomp.el (byte-compile-file): Pass basename
90347	of target-file to make-temp-file, in case target-file includes a
90348	leading directory that might not exist under TMPDIR.  See
90349	http://lists.gnu.org/archive/html/emacs-devel/2017-11/msg00680.html
90350	for the details.
90351
903522017-12-02  Michael Albinus  <michael.albinus@gmx.de>
90353
90354	* lisp/files.el (make-backup-file-name-1): Fix scoping error.
90355
903562017-12-02  Michael Albinus  <michael.albinus@gmx.de>
90357
90358	Revert Tramp commit from 2017-11-20
90359
90360	* lisp/net/tramp.el (tramp-drop-volume-letter)
90361	(tramp-handle-find-backup-file-name): Revert change from
90362	2017-11-20.  Emacs' `make-backup-file-name-1' handles this
90363	case now.
90364
903652017-12-02  Eli Zaretskii  <eliz@gnu.org>
90366
90367	Improve documentation of buffer-list commands and features
90368
90369	* doc/emacs/buffers.texi (List Buffers): Add a cross-reference to
90370	"Several Buffers", to establish a relation between the two
90371	sections.
90372	(Buffer Menus): Expand on customizability of alternative buffer
90373	menu offered by bs.el.  Mention IBuffer.
90374	Suggested by Alex Branham <alex.branham@gmail.com> in
90375	emacs-manual-bugs@gnu.org.
90376
903772017-12-02  Eli Zaretskii  <eliz@gnu.org>
90378
90379	Fix backing up remote files in local directories on MS-Windows
90380
90381	* lisp/files.el (make-backup-file-name-1): Support remote file
90382	names correctly when they are backed up into a local directory on
90383	MS-Windows and MS-DOS.  (Bug#29440)
90384
903852017-12-02  Glenn Morris  <rgm@gnu.org>
90386
90387	* doc/emacs/mule.texi (Output Coding): Clarify sendmail coding.
90388
903892017-12-01  John Wiegley  <johnw@newartisans.com>
90390
90391	Revert "Fix backing up remote files in local directories on MS-Windows"
90392
90393	This reverts commit 8c8b6732882248df4ca3b687e0a4b4e5e4ab3777.
90394
903952017-12-01  Eli Zaretskii  <eliz@gnu.org>
90396
90397	Fix a typo in ELisp manual
90398
90399	* doc/lispref/sequences.texi (Sequence Functions): Fix the example
90400	of using 'seq-uniq'.  (Bug#29524)
90401
904022017-12-01  Eli Zaretskii  <eliz@gnu.org>
90403
90404	* lisp/composite.el (find-composition): Fix a typo in the doc string.
90405
904062017-12-01  Eli Zaretskii  <eliz@gnu.org>
90407
90408	Fix backing up remote files in local directories on MS-Windows
90409
90410	* lisp/files.el (make-backup-file-name-1): Support remote file
90411	names correctly when they are backed up into a local directory on
90412	MS-Windows and MS-DOS.  (Bug#29440)
90413
904142017-12-01  Tak Kunihiro  <tkk@misasa.okayama-u.ac.jp>
90415
90416	Fix vertical cursor motion in pixel-scroll.el
90417
90418	* lisp/pixel-scroll.el (pixel-scroll-up): Move cursor down
90419	regardless of whether EOB is shown at the top.
90420	(pixel-scroll-down) Move cursor up regardless of whether BOB
90421	is shown at the top.  (Bug#29374)
90422
904232017-12-01  Basil L. Contovounesios  <contovob@tcd.ie>
90424
90425	Fix typos in doc strings of message.el
90426
90427	* lisp/gnus/message.el (message-header-to)
90428	(message-header-subject, message-header-newsgroups)
90429	(message-header-other): Fix typos in doc strings.  (Bug#29405)
90430
904312017-12-01  Eli Zaretskii  <eliz@gnu.org>
90432
90433	Fix a typo in the Emacs manual
90434
90435	* doc/emacs/abbrevs.texi (Abbrev Concepts): Fix a typo.  Reported
90436	by clemens.radermacher@posteo.de in emacs-manual-bugs@gnu.org.
90437
904382017-12-01  Eli Zaretskii  <eliz@gnu.org>
90439
90440	Improve the documentation of 'table-insert-sequence'
90441
90442	* doc/emacs/text.texi (Table Misc): Fix the description of
90443	'table-insert-sequence'.  Reported by jack <jackh@gmx.co.uk> in
90444	emacs-manual-bugs@gnu.org.
90445
904462017-12-01  Paul Eggert  <eggert@cs.ucla.edu>
90447
90448	Port better to QNX
90449
90450	Problem reported by Elad Lahav on emacs-devel.
90451	* configure.ac: On QNX, default CC to qcc (a GCC wrapper),
90452	and default LDFLAGS to -N2MB so that the initial stack size
90453	is not too small.  Also, fix misspelling of ‘qnxnto’.
90454
904552017-11-30  Michael Albinus  <michael.albinus@gmx.de>
90456
90457	Make tramp-test42-auto-load more robust
90458
90459	* test/lisp/net/tramp-tests.el (tramp-test42-auto-load):
90460	Make it more robust.  Don't skip.
90461
904622017-11-30  Eli Zaretskii  <eliz@gnu.org>
90463
90464	Avoid assertions in find-composition
90465
90466	* src/font.c (font_range): If called with STRING non-nil and FACE
90467	a NULL pointer, compute face by calling face_at_string_position.
90468	(Bug#29506)
90469
90470	* lisp/composite.el (find-composition): Doc fix.
90471
904722017-11-29  Glenn Morris  <rgm@gnu.org>
90473
90474	Restore obsolete method of changing byte-compile-dest-file
90475
90476	* lisp/emacs-lisp/bytecomp.el (byte-compile-dest-file):
90477	Restore seven-year obsolete feature that was removed for six months,
90478	since automake uses it.
90479
904802017-11-29  Michael Albinus  <michael.albinus@gmx.de>
90481
90482	Some minor Tramp corrections
90483
90484	* lisp/net/tramp.el (tramp-handle-directory-file-name):
90485	Handle several trailing slashes correctly.
90486	(tramp-handle-file-selinux-context): New defun.
90487
90488	* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
90489	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
90490	* lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
90491	Use `tramp-handle-file-selinux-context'.
90492
90493	* test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
90494	Extend test.
90495	(tramp-test17-insert-directory): Make check more robust.
90496	(tramp-test42-auto-load): Combine several let forms.
90497	(tramp-test42-delay-load, tramp-test42-recursive-load)
90498	(tramp-test42-remote-load-path, tramp-test43-unload): Rename.
90499
905002017-11-29  Tino Calancha  <tino.calancha@gmail.com>
90501
90502	* doc/misc/url.texi (http/https): Fix typo
90503
905042017-11-29  Glenn Morris  <rgm@gnu.org>
90505
90506	Remove some bogus definition-prefixes from loaddefs
90507
90508	* lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
90509	Don't register a definition prefix from define-erc-module,
90510	which adds an erc- prefix to its argument.
90511
905122017-11-28  Robert Pluim  <rpluim@gmail.com>
90513
90514	Shell-quote wildcards when invoking 'vc-git-grep'
90515
90516	* lisp/vc/vc-git.el (vc-git-grep): Apply shell quoting to
90517	filename wildcards to ensure globbing is done by git rather
90518	than the shell.  (Bug#29303)
90519
905202017-11-28  Kaushal Modi  <kaushal.modi@gmail.com>
90521
90522	Update documentation of '.dir-locals-2.el'
90523
90524	See https://lists.gnu.org/r/emacs-devel/2017-11/msg00649.html
90525	for more details.
90526	* lisp/files.el (dir-locals-file-2): Remove unused constant.
90527	* lisp/files.el (dir-locals-file): Mention ".dir-locals-2.el" in
90528	the doc string.
90529	* doc/lispref/variables.texi (Directory Local Variables): Mention
90530	".dir-locals-2.el".
90531	* etc/NEWS: Replace `dir-locals-file-2' mention with
90532	`dir-locals-file'.
90533
905342017-11-27  Noam Postavsky  <npostavs@gmail.com>
90535
90536	* src/w32heap.c (DUMPED_HEAP_SIZE) [_WIN64]: Bump to 22 MiB.
90537
905382017-11-27  Glenn Morris  <rgm@gnu.org>
90539
90540	A few small doc fixes for bytecomp.el
90541
90542	* lisp/emacs-lisp/bytecomp.el (emacs-lisp-file-regexp)
90543	(byte-compile-dest-file-function, byte-compile-dest-file): Doc fixes.
90544
905452017-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
90546
90547	* src/lread.c (syms_of_lread): Fix thinko in commit b1573a97e17b5
90548
905492017-11-27  Glenn Morris  <rgm@gnu.org>
90550
90551	* lisp/tree-widget.el (tree-widget-end-guide): Escape it.  (Bug#27797)
90552
905532017-11-27  Eli Zaretskii  <eliz@gnu.org>
90554
90555	Fix ELisp "Warning Tips"
90556
90557	* doc/lispref/tips.texi (Warning Tips): Clarify when to use
90558	'require' wrapped by 'eval-when-compile'.  (Bug#29462)
90559
905602017-11-27  Michael Albinus  <michael.albinus@gmx.de>
90561
90562	Fix Bug#29163
90563
90564	* lisp/net/tramp.el (tramp-autoload-file-name-regexp):
90565	Do not use "\\'" in regexp.  (Bug#29163)
90566	(top) Do not run (tramp-register-autoload-file-name-handlers)
90567	when loading tramp.el.
90568
90569	* test/lisp/net/tramp-tests.el (tramp--test-mock-p): New defun.
90570	(tramp-test32-environment-variables-and-port-numbers)
90571	(tramp-test41-asynchronous-requests): Use it.
90572	(tramp-test42-auto-load): New test.
90573	(tramp-test43-recursive-load, tramp-test44-remote-load-path)
90574	(tramp-test45-delay-load, tramp-test46-unload): Rename.
90575
905762017-11-27  Paul Eggert  <eggert@union>
90577
90578	Harden exec_byte_code against redefining 'error'
90579
90580	Problem discovered by configuring with --enable-gcc-warnings on
90581	Ubuntu 17.10 x86-64 with gcc (Ubuntu 7.2.0-8ubuntu3).
90582	* src/bytecode.c (exec_byte_code): Call the C error function
90583	instead of the Lisp one, so that the Emacs interpreter does not go
90584	haywire if the user redefines the Lisp error function.
90585
905862017-11-27  Gemini Lasswell  <gazally@runbox.com>
90587
90588	Fix Edebug specs for if-let* and and-let* (Bug#29236)
90589
90590	* test/lisp/emacs-lisp/subr-x-tests.el (if-let*, if-let):
90591	Change Edebug spec to cause Edebug to instrument tests the
90592	results of which are not bound to symbols (the (VALUEFORM)
90593	case).
90594	(and-let*): Change Edebug spec to allow empty body.
90595
90596	*test/lisp/emacs-lisp/subr-x-tests.el:
90597	(subr-x-and-let*-test-group-1): Add missing quote to erroneous
90598	form so Edebug will work on this test.
90599
906002017-11-26  Gemini Lasswell  <gazally@runbox.com>
90601
90602	Fix Edebug's handling of dotted specs (bug#6415)
90603
90604	* lisp/emacs-lisp/cl-macs.el (cl-destructuring-bind): Use
90605	cl-macro-list1 instead of cl-macro-list in Edebug spec.
90606
90607	* lisp/emacs-lisp/edebug.el (edebug-after-dotted-spec): Delete
90608	unused variable.
90609	(edebug-dotted-spec): Add docstring.
90610	(edebug-match-specs): Allow &optional and &rest specs to
90611	match nothing at the tail of a dotted form. Handle matches of
90612	dotted form tails which return non-lists.
90613
90614	* test/lisp/emacs-lisp/edebug-tests.el (edebug-tests-dotted-forms):
90615	New test.
90616
90617	* test/lisp/emacs-lisp/edebug-resources/edebug-test-code.el:
90618	(edebug-test-code-use-destructuring-bind): New function.
90619
906202017-11-26  Eli Zaretskii  <eliz@gnu.org>
90621
90622	Improve documentation of "constant" symbols
90623
90624	* src/font.c (syms_of_font) <font-weight-table, font-slant-table>
90625	<font-width-table>:
90626	* src/data.c (syms_of_data) <most-positive-fixnum>
90627	<most-negative-fixnum>:
90628	* src/buffer.c (syms_of_buffer) <enable-multibyte-characters>:
90629	Mention in the doc strings that these variables are read-only.
90630
90631	* doc/lispref/variables.texi (Creating Buffer-Local): Document
90632	that making a constant variable buffer-local signals an error.
90633	* doc/lispref/variables.texi (Constant Variables):
90634	* doc/lispref/errors.texi (Standard Errors): More accurate and
90635	up-to-date documentation of which symbols cannot be assigned
90636	values.
90637
906382017-11-26  Paul Eggert  <eggert@cs.ucla.edu>
90639
90640	maint: shorten https://lists.gnu.org/archive/html/... links
90641
906422017-11-26  Paul Eggert  <eggert@cs.ucla.edu>
90643
90644	Merge from Gnulib
90645
90646	This incorporates:
90647	2017-11-23 stat: work around Solaris bug with tv_nsec < 0
90648	2017-11-12 maint: shorten https://lists.gnu.org/archive/html/... links
90649	* build-aux/config.sub, doc/misc/texinfo.tex, lib/allocator.h:
90650	* lib/fstatat.c, lib/intprops.h, lib/lstat.c, lib/signal.in.h:
90651	* lib/stat-time.h, lib/stdio-impl.h, lib/stdio.in.h:
90652	* lib/timespec.h, m4/alloca.m4, m4/extern-inline.m4:
90653	* m4/faccessat.m4, m4/fstatat.m4, m4/gnulib-common.m4:
90654	* m4/lstat.m4, m4/std-gnu11.m4, m4/sys_types_h.m4:
90655	* m4/vararrays.m4:
90656	Copy from Gnulib.
90657
906582017-11-26  Paul Eggert  <eggert@cs.ucla.edu>
90659
90660	Work around GCC bug 80776 on Fedora 27 x86
90661
90662	* src/buffer.c (Fgenerate_new_buffer_name): Pacify GCC 7.2.1
90663	20170915 (Red Hat 7.2.1-2) on i686 with -Wformat-overflow -O2 by
90664	using XINT rather than XFASTINT and by adding an eassume.  This
90665	works around GCC bug 80776.
90666
906672017-11-25  Paul Eggert  <eggert@cs.ucla.edu>
90668
90669	Tweak copy-file, rename-file doc
90670
90671	* src/fileio.c (Fcopy_file, Frename_file): Tweak the recent change
90672	slightly, as NEWNAME is treated as a directory name depending only
90673	on the contents of the NEWNAME string, and independently of
90674	whether NEWNAME names a directory (i.e., whether the directory
90675	exists) (Bug#29362).
90676
906772017-11-25  Tom Tromey  <tom@tromey.com>
90678
90679	Change font-lock-extend-region-multiline handling in mhtml-mode
90680
90681	Bug#29159
90682	* lisp/textmodes/mhtml-mode.el (mhtml-mode): Remove
90683	font-lock-extend-region-multiline from
90684	font-lock-extend-region-functions.
90685	(mhtml--extend-font-lock-region): Call font-lock-extend-region-multiline.
90686
906872017-11-25  Michael Albinus  <michael.albinus@gmx.de>
90688
90689	Minor cleanup in tramp-gvfs-handle-file-local-copy
90690
90691	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-local-copy):
90692	Move error message up.
90693
906942017-11-25  Michael Albinus  <michael.albinus@gmx.de>
90695
90696	Add test for Bug#29423 in Tramp.
90697
90698	* test/lisp/net/tramp-tests.el (tramp-test17-insert-directory):
90699	Add test for Bug#29423.
90700
907012017-11-25  Eli Zaretskii  <eliz@gnu.org>
90702
90703	Avoid jumbled order in HTML rendered by shr.el
90704
90705	* lisp/net/shr.el (shr-render-td): Preserve point, as
90706	shr-render-td-1 might move it as a side effect of
90707	save-window-excursion.  (Bug#29348)
90708
907092017-11-25  Eli Zaretskii  <eliz@gnu.org>
90710
90711	Make sure 'dired-filename' property is always put by ls-lisp
90712
90713	* lisp/ls-lisp.el (ls-lisp-classify): Do not put the
90714	'dired-filename' text property on the file name here...
90715	(ls-lisp-classify-file): ...put it here instead.  (Bug#29423)
90716
907172017-11-24  Eli Zaretskii  <eliz@gnu.org>
90718
90719	A better solution for bug#29347
90720
90721	* src/thread.c (really_call_select): Don't try to take the global
90722	lock if the same thread is already holding it.  (Bug#29347)
90723
907242017-11-24  Eli Zaretskii  <eliz@gnu.org>
90725
90726	Avoid a hang after C-g while sit-for on a Unix TTY
90727
90728	* src/thread.c (acquire_global_lock): Don't try to take the global
90729	lock if the same thread is already holding it.  (Bug#29347)
90730
907312017-11-24  Eli Zaretskii  <eliz@gnu.org>
90732
90733	Improve the doc string of 'list-packages'
90734
90735	* lisp/emacs-lisp/package.el (list-packages): Describe in the doc
90736	string the columns shown by the command.  (Bug#29420)
90737
907382017-11-24  Eli Zaretskii  <eliz@gnu.org>
90739
90740	Improve discoverability of 'defvar' for suppressing warnings
90741
90742	* doc/lispref/compile.texi (Compiler Errors): Add index entries.
90743	* doc/lispref/variables.texi (Defining Variables): Mention that
90744	defvar with no value is used for suppressing compiler warnings.
90745	(Bug#29400)
90746
907472017-11-24  Eli Zaretskii  <eliz@gnu.org>
90748
90749	Improve discoverability of 'read-buffer-completion-ignore-case'
90750
90751	* lisp/window.el (switch-to-buffer)
90752	(switch-to-buffer-other-window, switch-to-buffer-other-frame):
90753	Mention 'read-buffer' in the doc string.  (Bug#29389)
90754
90755	* doc/emacs/buffers.texi (Select Buffer): Add a cross-reference to
90756	where 'read-buffer-completion-ignore-case' is documented.
90757
907582017-11-24  Eli Zaretskii  <eliz@gnu.org>
90759
90760	Improve documentation of self-insert-uses-region-functions
90761
90762	* lisp/simple.el (self-insert-uses-region-functions): Clarify the
90763	doc string.
90764	* lisp/delsel.el (delete-selection-uses-region-p): Mention
90765	'self-insert-command' in the doc string.  (Bug#29373)
90766
90767	* doc/lispref/text.texi (Commands for Insertion): Mention
90768	'self-insert-uses-region-functions'.
90769	* doc/lispref/modes.texi (Keymaps and Minor Modes): Add a
90770	cross-reference to "Commands for Insertion".
90771
907722017-11-24  Eli Zaretskii  <eliz@gnu.org>
90773
90774	Reflect changes in copy-file and rename-file in doc strings
90775
90776	* src/fileio.c (Fcopy_file, Frename_file): Mention in the doc
90777	strings that directory names must end in a slash.  (Bug#29362)
90778
907792017-11-24  Eli Zaretskii  <eliz@gnu.org>
90780
90781	* lisp/progmodes/cc-vars.el (c-offsets-alist): Doc fix.  (Bug#29407)
90782
907832017-11-24  Eli Zaretskii  <eliz@gnu.org>
90784
90785	Reorder type predicates in ELisp manual
90786
90787	* doc/lispref/objects.texi (Type Predicates): Restore alphabetical
90788	order of listed predicates.  (Bug#29411)
90789
907902017-11-23  Eli Zaretskii  <eliz@gnu.org>
90791
90792	Fix backward scrolling in buffers with header-line
90793
90794	* src/window.c (window_scroll_pixel_based): Account for the
90795	header-line when comparing Y coordinate with the last_visible_y.
90796	(Bug#29325)
90797
907982017-11-22  Glenn Morris  <rgm@gnu.org>
90799
90800	* lisp/bindings.el (buffer-file-coding-system):
90801	Add explicit permanent-local mark.
90802
90803	* src/fns.c (syms_of_fns) <overriding-plist-environment>: Doc fix.
90804
908052017-11-22  Alan Third  <alan@idiocy.org>
90806
90807	Fix incorrect interaction of drag/drop and double click (bug#29121)
90808
90809	* src/nsterm.m (EmacsView::performDragOperation): Drag and drop
90810	doesn't use ns-input-file.
90811
908122017-11-22  Glenn Morris  <rgm@gnu.org>
90813
90814	* lisp/menu-bar.el (menu-bar-options-save):
90815	Add display-line-numbers-type.
90816
90817	* lisp/menu-bar.el (menu-bar-options-save):
90818	Add global-display-line-numbers-mode.  (Bug#28396)
90819
90820	* lisp/follow.el (follow-mode): Restore mode line lighter.  (Bug#28495)
90821
908222017-11-22  Dmitry Gutov  <dgutov@yandex.ru>
90823
90824	Extract the common part of ruby-flymake-simple and ruby-flymake-rubocop
90825
90826	* lisp/progmodes/ruby-mode.el (ruby-flymake-simple)
90827	(ruby-flymake-rubocop):
90828	Extract the common part as ruby-flymake--helper.
90829	(ruby--rubocop-flymake-proc): Remove.  Use the first proc
90830	variable instead.
90831
908322017-11-22  Dmitry Gutov  <dgutov@yandex.ru>
90833
90834	Add Rubocop Flymake backend
90835
90836	* lisp/progmodes/ruby-mode.el (ruby-flymake-command):
90837	Inline the value.  There are no known substitutes.
90838	(ruby-flymake): Rename to `ruby-flymake-simple' and simplify
90839	the docstring.
90840	(ruby-flymake-use-rubocop-if-available): New option.
90841	(ruby--rubocop-flymake-proc): New variable.
90842	(ruby-rubocop-config): New option.
90843	(ruby-flymake-rubocop, ruby-flymake-auto): New functions.
90844	(ruby-mode): Use `ruby-flymake-auto'.
90845
908462017-11-21  Noam Postavsky  <npostavs@gmail.com>
90847
90848	Update nt/INSTALL.W64 (Bug#28601)
90849
90850	* nt/INSTALL.W64 (Download and install MinGW-w64 and MSYS2): Move
90851	suggestion about modifying PATH to...
90852	(Test Emacs): ... here.
90853	(Run configure): Remove the unnecessary setting of PKG_CONFIG_PATH.
90854	(Troubleshooting): New section, includes suggestion to check
90855	PKG_CONFIG_PATH.
90856
908572017-11-21  Charles A. Roelli  <charles@aurox.ch>
90858
90859	Remove incorrect NEWS item about VC state indicator (Bug#28817)
90860
90861	* etc/NEWS (VC and related modes): Remove news item about the VC
90862	state indicator.  This should have been done with commit 7882dc6
90863	of 2016-03-06 'Revert "Use colors in the VC mode lines"'.
90864
908652017-11-21  Glenn Morris  <rgm@gnu.org>
90866
90867	* lisp/emacs-lisp/byte-run.el (defsubst): Doc fix.
90868
908692017-11-21  Alan Mackenzie  <acm@muc.de>
90870
90871	Make c-defun-name analyze more thoroughly a function type which is a struct
90872
90873	This fixes bug #29293.
90874
90875	* lisp/progmodes/cc-cmds.el (c-defun-name): When a struct (etc.) type is
90876	encountered, check whether it is the return type of a function rather than a
90877	declaration of the struct itself.  Similarly adapt the cond arm which deals
90878	with functions properly to recognize struct return types.
90879
908802017-11-21  Glenn Morris  <rgm@gnu.org>
90881
90882	Avoid bogus abbreviated file names if HOME changes
90883
90884	* lisp/files.el (abbreviate-file-name):
90885	If HOME changes, ignore `abbreviated-home-dir'.  (Bug#19657#20)
90886	* test/lisp/files-tests.el (files-test-abbreviated-home-dir): New.
90887
908882017-11-21  Glenn Morris  <rgm@gnu.org>
90889
90890	* lisp/emacs-lisp/byte-run.el (inline): Give it a doc.
90891
908922017-11-21  Jay Kamat  <jaygkamat@gmail.com>  (tiny change)
90893
90894	Fix erc keep-place module with new defaults (Bug#29111)
90895
90896	* lisp/erc/erc-goodies.el (erc-keep-place): Allow erc
90897	keep-place to continue working with
90898	switch-to-buffer-preserve-window-point set to t, the new default.
90899
909002017-11-20  Alan Third  <alan@idiocy.org>
90901
90902	Add window divider faces to NS (bug#29353)
90903
90904	* src/nsterm.m (ns_draw_window_divider): Use
90905	window-divider-first-pixel and window-divider-last-pixel faces.
90906
909072017-11-20  Stefan Monnier  <monnier@iro.umontreal.ca>
90908
90909	* src/keyboard.c: Undo last change, meant for master only
90910
909112017-11-20  Michael Albinus  <michael.albinus@gmx.de>
90912
90913	Fix Bug#29149
90914
90915	* lisp/net/tramp.el (tramp-drop-volume-letter): Handle also
90916	backup file names.
90917	(tramp-handle-find-backup-file-name):
90918	Call `tramp-drop-volume-letter' on the results.  (Bug#29149)
90919
909202017-11-20  Martin Rudalics  <rudalics@gmx.at>
90921
90922	Fix misbehavior when drawing three-pixel high horizontal dividers (Bug#29353)
90923
90924	* src/xterm.c (x_draw_window_divider):
90925	* src/w32term.c (w32_draw_window_divider): Fix misbehavior when
90926	drawing three-pixel high horizontal dividers (Bug#29353).
90927
90928	The misbehavior was noted by Keith David Bershatsky and analyzed by Alan
90929	Third.
90930
909312017-11-19  Mike Kupfer  <mkupfer@alum.berkeley.edu>
90932
90933	MH-E: don't automatically download external-body parts
90934
90935	* lisp/mh-e/mh-mime.el (mh-mime-display-single): Use
90936	mm-automatic-display-p to verify that a part should be
90937	displayed before doing the inline checks (SF#475).
90938
909392017-11-19  Michael Albinus  <michael.albinus@gmx.de>
90940
90941	Further fix for Bug#29291
90942
90943	* test/lisp/net/tramp-tests.el (tramp-test24-file-acl):
90944	Check for local ACL support.  (Bug#29291)
90945
909462017-11-19  Alan Third  <alan@idiocy.org>
90947
90948	Fix divider frame params on NS (bug#29352)
90949
90950	* src/nsfns.m (Fx_create_frame): Set right-divider-width and
90951	bottom-divider-width parameters.
90952
909532017-11-19  Paul Eggert  <eggert@cs.ucla.edu>
90954
90955	Spelling fixes
90956
90957	* lisp/help-fns.el (help-fns--analyze-function):
90958	Rename from help-fns--analyse-function.
90959	All uses changed.
90960
909612017-11-19  Olaf Rogalsky  <olaf.rogalsky@t-online.de>
90962
90963	* src/keyboard.c: Make xterm-mouse clicks on mode-line work
90964
90965	(read_key_sequence): Recompute first_event
90966	after replay_sequence, since it might have changed (bug#29104).
90967
909682017-11-18  Martin Rudalics  <rudalics@gmx.at>
90969
90970	Don't let delete_frame select a tooltip frame (Bug#27647)
90971
90972	* src/frame.c (delete_frame): Don't select a tooltip
90973	frame. (Bug#27647)
90974
909752017-11-18  Alan Mackenzie  <acm@muc.de>
90976
90977	Filter obtrusive events in help-read-key-sequence.
90978
90979	This fixes most of bug #29272.
90980
90981	* lisp/help.el (help-read-key-sequence): After a mouse event, pause for 0.01s,
90982	discarding any events (such as <help-echo>) received in this time, before
90983	polling for the double-click (etc.) events which may follow.  This fixes the
90984	infinite loop which occurred whwn <help-echo> events triggered a sit-for
90985	whilst handling menu events.
90986
909872017-11-18  Michael Albinus  <michael.albinus@gmx.de>
90988
90989	Fix symlink flag in tramp-gvfs-handle-file-attributes
90990
90991	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
90992	Set proper symlink file mode flag.
90993
909942017-11-18  Michael Albinus  <michael.albinus@gmx.de>
90995
90996	Fix bug in tramp-handle-file-truename
90997
90998	* lisp/net/tramp.el (tramp-handle-file-truename): Expand localname.
90999
91000	* test/lisp/net/tramp-tests.el (tramp-test21-file-links): Check also
91001	relative symbolic links.
91002
910032017-11-18  Eli Zaretskii  <eliz@gnu.org>
91004
91005	Fix a typo in doc string of electric-indent-functions-without-reindent
91006
91007	* lisp/electric.el (electric-indent-functions-without-reindent):
91008	Doc fix.  (Bug#29304)
91009
910102017-11-18  Eli Zaretskii  <eliz@gnu.org>
91011
91012	Avoid assertion violations in echo_area_display
91013
91014	* src/xdisp.c (echo_area_display): Don't try redisplaying the echo
91015	area if the selected-frame's mini-window is nil.  (Bug#27647)
91016
910172017-11-18  Eli Zaretskii  <eliz@gnu.org>
91018
91019	Fix case-folding in Occur
91020
91021	* lisp/replace.el (occur-engine): Bind case-fold-search in each
91022	buffer we search.  (Bug#29254)
91023
910242017-11-18  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
91025
91026	Fix quick-calc in C mode with hex values
91027
91028	* lisp/calc/calc-aent.el (math-read-token): Make sure the match
91029	against "0[xX][0-9a-fA-F]+" is found at math-exp-pos.  See
91030	http://lists.gnu.org/archive/html/emacs-devel/2017-11/msg00174.html
91031	for the details.
91032
910332017-11-18  Eli Zaretskii  <eliz@gnu.org>
91034
91035	Improve documentation of dired-next/prev-marked-file
91036
91037	* lisp/dired.el (dired-next-marked-file, dired-prev-marked-file):
91038	Doc fixes.  (Bug#29340)
91039
910402017-11-17  Eli Zaretskii  <eliz@gnu.org>
91041
91042	Prevent aborts in line-move-visual
91043
91044	* src/indent.c (line_number_display_width): Avoid assertion
91045	violations in init_iterator when the window's buffer was
91046	temporarily switched without updating window-start.  (Bug#29326)
91047
910482017-11-17  Eli Zaretskii  <eliz@gnu.org>
91049
91050	More fixes in src/.gdbinit
91051
91052	* src/.gdbinit (pwinx): Update to match 'struct window'.
91053	(pcursorx): Use "." instead of "->" because the argument is a
91054	struct, not a pointer.
91055
910562017-11-17  Robert Pluim  <rpluim@gmail.com>
91057
91058	Document how to enter whitespace when using grep-read-files
91059
91060	* lisp/progmodes/grep.el (lgrep, rgrep, grep-read-files): Explain
91061	how to enter whitespace when using grep-read-files.  (Bug#29303)
91062	* lisp/progmodes/project.el (project-find-regexp): Likewise.
91063	* lisp/vc/vc-git.el (vc-git-grep): Likewise.
91064
910652017-11-17  Eli Zaretskii  <eliz@gnu.org>
91066
91067	Fix .gdbinit following lisp.h changes
91068
91069	* src/.gdbinit (xsymname, pwinx, pgx, xbuffer, xcar, xcdr, xlist)
91070	(xprintstr): Adapt to latest changes in Lisp object C structures.
91071	(Bug#29332)
91072
910732017-11-15  Charles A. Roelli  <charles@aurox.ch>
91074
91075	* lisp/simple.el (shell-command): Doc fixes.
91076
910772017-11-15  Noam Postavsky  <npostavs@gmail.com>
91078
91079	Fix marker adjustment for undo (Bug#29118)
91080
91081	* lisp/simple.el (primitive-undo): Compare marker against absolute
91082	value of POS, because the sign of POS is irrelevant to markers.
91083
910842017-11-14  Daniel Pittman  <slippycheeze@google.com>
91085
91086	Fix Bug#28139
91087
91088	* lisp/net/tramp-sh.el: Set TERM and INSIDE_EMACS environment earlier.
91089	(tramp-remote-process-environment): Remove TERM and INSIDE_EMACS.
91090	(tramp-remote-process-environment): Document their special handling.
91091	(tramp-open-shell): Set TERM and INSIDE_EMACS prior to starting the
91092	initial remote shell, so that it is also aware of the environment
91093	in which it is operating.  (Bug#28139)
91094
910952017-11-14  Michael Albinus  <michael.albinus@gmx.de>
91096
91097	Fix Bug#29291
91098
91099	* test/lisp/net/tramp-tests.el (tramp-test24-file-acl):
91100	Preserve permissions when copying.  (Bug#29291)
91101
911022017-11-14  Michael Albinus  <michael.albinus@gmx.de>
91103
91104	Fix Bug#2928
91105
91106	* test/lisp/net/tramp-tests.el (tramp-test25-file-selinux):
91107	Enhance test.  (Bug#29287)
91108	(tramp-test44-delay-load): Fix for older Emacsen.
91109
911102017-11-14  Martin Rudalics  <rudalics@gmx.at>
91111
91112	Make 'mouse-drag-and-drop-region' work with 'mouse-autoselect-window' non-nil
91113
91114	* lisp/mouse.el (mouse-drag-and-drop-region): Ignore
91115	'select-window' events to make it work with
91116	'mouse-autoselect-window'.
91117
911182017-11-14  Alexander Gramiak  <agrambot@gmail.com>
91119
91120	* etc/PROBLEMS: Remove fixed xterm-mouse-mode problems
91121
91122	See: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=29143#26
91123
911242017-11-14  Katsumi Yamaoka  <yamaoka@jpl.org>
91125
91126	Fix cookie handling (bug#29282)
91127
91128	* lisp/url/url-cookie.el (url-cookie-handle-set-cookie):
91129	Regard a Set-Cookie header as it contains a single cookie;
91130	prefer Max-Age to Expires and convert it to Expires;
91131	remove support for old time string styles (bug#29282).
91132
911332017-11-13  Gemini Lasswell  <gazally@runbox.com>
91134
91135	Improve documentation of Edebug and macros
91136
91137	* doc/lispref/edebug.texi (Instrumenting Macro Calls): Improve
91138	discussion of when it might be necessary to find and evaluate macro
91139	specifications before instrumenting.
91140	(Specification List): Clarify what "defining form" means to Edebug
91141	and when 'def-form' or 'def-body' should be used instead of 'form'
91142	or 'body'.
91143
911442017-11-13  Paul Eggert  <eggert@cs.ucla.edu>
91145
91146	Port to IBM xlc 12.01
91147
91148	Work around a compiler bug by using a separate enum for alignment.
91149	* src/alloc.c (roundup_size): Declare in a separate enum.
91150
911512017-11-13  Paul Eggert  <eggert@cs.ucla.edu>
91152
91153	Simplify by removing HAVE_STRUCT_ATTRIBUTE_ALIGNED
91154
91155	* configure.ac (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Remove.  No longer
91156	needed, since we no longer rely on __attribute__ ((aligned (8))).
91157	All uses removed.
91158	* src/emacs-module.c (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Remove.
91159	(lisp_to_value): Simplify now that we no longer need to worry
91160	whether HAVE_STRUCT_ATTRIBUTE_ALIGNED is false.
91161
911622017-11-13  Paul Eggert  <eggert@cs.ucla.edu>
91163
91164	Use alignas to fix GCALIGN-related bugs
91165
91166	Use alignas and unions to specify alignments of objects needing
91167	addresses that are at least a multiple of GCALIGNMENT.  Using
91168	these standard C facilities should be safer than relying on ad hoc
91169	and poorly-understood features like GCC’s __attribute__
91170	((aligned (N))), the root cause for recent porting bugs like
91171	Bug#29040.  The alignas macro was standardized by C11 and Gnulib
91172	supports alignas for pre-C11 platforms.  I have tested this on Sun
91173	Studio 12 sparc (2007) and GCC 4.4.7 x86-64 (2012) as well as on
91174	more recent platforms like GCC 7.2.1 (2017) on Fedora 26 (both
91175	x86-64 and x86).
91176	* lib-src/make-docfile.c (close_emacs_globals): lispsym is now
91177	just an array of struct Lisp_Symbol, since struct Lisp_Symbol is
91178	now properly aligned.  All uses changed.
91179	* src/alloc.c (NEXT_FREE_LISP_STRING): Just use the new u.next
91180	member; this is simpler and safer than casting a pointer that
91181	might not be aligned properly.
91182	(aligned_Lisp_Symbol): Remove.  No longer needed, now that struct
91183	Lisp_Symbol is aligned properly.  All uses replaced with struct
91184	Lisp_Symbol.
91185	* src/lisp.h (GCALIGNED): Remove, as it does not work as expected:
91186	it can cause the natural alignment to be ignored.  All uses
91187	replaced by unions with a ‘char alignas (GCALIGNMENT)’ member as
91188	described below.
91189	(struct Lisp_Symbol, struct Lisp_Cons, struct Lisp_String):
91190	Change definition from ‘struct TAG { MEMBERS };’ to
91191	‘struct TAG { union { struct { MEMBERS } s; char alignas
91192	(GCALIGNMENT) gcaligned; } u; };’.  This guarantees ‘struct TAG’
91193	to have an alignment that at least max (GCALIGNMENT, N) where N is
91194	its old alignment.  All uses like ‘PTR->MEMBER’ changed to
91195	‘PTR->u.s.MEMBER’; these uses were supposed to be mostly private
91196	anyway.  Verify that the resulting ‘struct TAG’ is properly
91197	aligned for Emacs.
91198	(union vectorlike_header): New member ‘gcaligned’ to guarantee
91199	that this type, and its containing types like ‘struct Lisp_Subr’,
91200	‘struct buffer’ and ‘struct thread_state’, are all properly
91201	aligned for Emacs.
91202	(struct Lisp_String): New union member ‘next’, for the benefit
91203	of NEXT_FREE_LISP_STRING.
91204	(union Aligned_Cons, union Aligned_String): Remove.  All uses
91205	replaced by struct Lisp_Cons and struct Lisp_String, since they
91206	are now properly aligned.
91207	(USE_STACK_CONS, USE_STACK_STRING): Simplify now that we can
91208	assume struct Lisp_Cons and struct Lisp_String are properly
91209	aligned.
91210
912112017-11-13  Paul Eggert  <eggert@cs.ucla.edu>
91212
91213	Change vectorlike from struct to union
91214
91215	* src/lisp.h (vectorlike_headed): Change from struct to union.
91216	All uses changed.  Since it has only one member, this does not
91217	change semantics.  This is designed to simplify future changes
91218	needed to fix bugs like Bug#29040.  All uses changed.
91219
912202017-11-12  Tom Tromey  <tom@tromey.com>
91221
91222	Don't enable cursor-sensor-mode in mhtml-mode
91223
91224	* lisp/textmodes/mhtml-mode.el (mhtml--last-submode): Update doc
91225	string.
91226	(mhtml-mode): Don't call cursor-sensor-mode.
91227
912282017-11-12  Eli Zaretskii  <eliz@gnu.org>
91229
91230	* lisp/files.el (abbreviate-file-name): Doc fix.  (Bug#29267)
91231
912322017-11-12  João Távora  <joaotavora@gmail.com>
91233
91234	Unbreak interactive run of a flymake test (bug#29267)
91235
91236	See https://debbugs.gnu.org/cgi/bugreport.cgi?bug=19657#20 for the
91237	technique used here.
91238
91239	* test/lisp/progmodes/flymake-tests.el (ruby-backend):
91240	Let-bind abbreviated-home-dir.
91241
912422017-11-12  Michael Albinus  <michael.albinus@gmx.de>
91243
91244	Fix Bug#29225
91245
91246	* src/fileio.c (Fset_file_acl): Report error only when
91247	acl_errno_valid returns true.  (Bug#29225)
91248
91249	* test/lisp/net/tramp-tests.el (tramp-test24-file-acl)
91250	(tramp-test25-file-selinux): New tests.
91251	(tramp-test26-file-name-completion, tramp-test27-load)
91252	(tramp-test28-process-file, tramp-test29-start-file-process)
91253	(tramp-test30-interrupt-process, tramp-test31-shell-command)
91254	(tramp-test32-environment-variables)
91255	(tramp-test32-environment-variables-and-port-numbers)
91256	(tramp-test33-explicit-shell-file-name)
91257	(tramp-test34-vc-registered)
91258	(tramp-test35-make-auto-save-file-name)
91259	(tramp-test36-find-backup-file-name)
91260	(tramp-test37-make-nearby-temp-file)
91261	(tramp-test38-special-characters)
91262	(tramp-test38-special-characters-with-stat)
91263	(tramp-test38-special-characters-with-perl)
91264	(tramp-test38-special-characters-with-ls, tramp-test39-utf8)
91265	(tramp-test39-utf8-with-stat, tramp-test39-utf8-with-perl)
91266	(tramp-test39-utf8-with-ls, tramp-test40-file-system-info)
91267	(tramp-test41-asynchronous-requests)
91268	(tramp-test42-recursive-load, tramp-test43-remote-load-path)
91269	(tramp-test44-delay-load, tramp-test45-unload): Rename.
91270
912712017-11-12  Alan Mackenzie  <acm@muc.de>
91272
91273	CC Mode: Fix defun-open being recognized as brace-list-open at EOB.
91274
91275	* lisp/progmodes/cc-engine.el (c-looking-at-statement-block): Add handling
91276	for an open brace at EOB and nested braces inside an unclosed brace block.
91277
912782017-11-12  Paul Eggert  <eggert@cs.ucla.edu>
91279
91280	Merge from Gnulib
91281
91282	This incorporates:
91283	2017-11-11 faccessat: port to macOS (Bug#29231)
91284	2017-11-05 fstatat: pacify GCC on unusual platform
91285	* build-aux/config.guess, build-aux/config.sub:
91286	* doc/misc/texinfo.tex, lib/faccessat.c, lib/fstatat.c:
91287	* lib/unistd.in.h, m4/faccessat.m4, m4/unistd_h.m4:
91288	Copy from Gnulib.
91289	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
91290
912912017-11-12  Paul Eggert  <eggert@cs.ucla.edu>
91292
91293	Pacify GCC when configured --with-x-toolkit=no
91294
91295	Without these changes, Emacs does not build on Fedora 26 x86-64
91296	when configured --with-x-toolkit=no --enable-gcc-warnings.
91297	* oldXMenu/Activate.c (XMenuActivate): Add FALLTHROUGH.
91298	* src/xterm.c (x_dispatch_event): Define only if
91299	USE_X_TOOLKIT || USE_MOTIF || USE_GTK.
91300
913012017-11-12  Eli Zaretskii  <eliz@gnu.org>
91302
91303	* lisp/find-dired.el (find-grep-dired): Doc fix.  (Bug#29262)
91304
913052017-11-12  João Távora  <joaotavora@gmail.com>
91306
91307	Fix more flymake-diag-region eob corner cases and add tests (bug#29201)
91308
91309	* lisp/progmodes/flymake.el (flymake-diag-region): Correct
91310	more eob corner cases.
91311
91312	* test/lisp/progmodes/flymake-tests.el
91313	(eob-region-and-trailing-newline): New test.
91314
913152017-11-11  Basil L. Contovounesios  <contovob@tcd.ie>
91316
91317	Keep Man sections in natural order (bug#28998)
91318
91319	* lisp/man.el (Man-build-section-alist): Reverse sections.
91320
913212017-11-11  Stefan Monnier  <monnier@iro.umontreal.ca>
91322
91323	* lisp/minibuffer.el: Install a workaround for bug#16274
91324
91325	* lisp/minibuffer.el (completion--nth-completion): Avoid signaling an
91326	error when `md` is applied to another table.
91327
913282017-11-11  Eli Zaretskii  <eliz@gnu.org>
91329
91330	Fix comparisons with tip_frame in GTK builds
91331
91332	* src/xterm.c (x_update_begin, x_new_font):
91333	* src/xfns.c (Fx_display_monitor_attributes_list):
91334	* src/frame.c (Fframe_list) [USE_GTK]: Don't consider tip_frame a
91335	tooltip frame unless its 'tooltip' parameter is non-nil.  (Bug#26747)
91336
913372017-11-11  Eli Zaretskii  <eliz@gnu.org>
91338
91339	Improve the documentation of M-n for entering file names
91340
91341	* lisp/files.el (find-file, find-file-other-window)
91342	(find-file-other-frame): Mention file-name-at-point-functions in
91343	the doc string.  Reported by Florian Weimer <fw@deneb.enyo.de> in
91344	http://lists.gnu.org/archive/html/emacs-devel/2017-11/msg00224.html.
91345
91346	* doc/emacs/mini.texi (Minibuffer History): Document
91347	file-name-at-point-functions and its effect on M-n when typing
91348	file names in the minibuffer.
91349	* doc/emacs/files.texi (File Names):
91350	* doc/emacs/mini.texi (Minibuffer File): Add a cross-reference to
91351	"Minibuffer History", where special features of M-n regarding
91352	files are described.
91353
913542017-11-11  Eli Zaretskii  <eliz@gnu.org>
91355
91356	Fix desktop auto-save timer when linum-mode is used
91357
91358	* lisp/desktop.el (desktop-read): Use toplevel value of
91359	window-configuration-change-hook when deciding whether desktop
91360	auto-saving is enabled.  Suggested by Peter Neidhardt
91361	<pe.neidhardt@googlemail.com>.  (Bug#28945)
91362
913632017-11-11  Olaf Rogalsky  <olaf.rogalsky@t-online.de>
91364
91365	Fix "C-h k" in xterm-mouse-mode
91366
91367	* lisp/help.el (help-read-key-sequence): Support "C-h k" for
91368	xterm-mouse-mode by calling read-key-sequence-vector instead of
91369	read-event.  (Bug#29150)
91370
913712017-11-11  Paul Eggert  <eggert@cs.ucla.edu>
91372
91373	Fix off-by-1 bug in --enable-checking=stringbytes
91374
91375	Evidently nobody builds Emacs with --enable-checking=all,
91376	which is no surprise as it is so slow as to be unusable nowadays.
91377	Perhaps we should remove the slowest checks, or move them into
91378	another category, or speed them up, or something.
91379	* src/alloc.c (SDATA_SIZE) [GC_CHECK_STRING_BYTES]: Fix off-by-one
91380	error in size calculation, which caused a failure when
91381	--enable-checking=stringbytes was used.  I introduced this bug in
91382	2016-09-08T01:08:45!eggert@cs.ucla.edu "Port flexible array
91383	members to GCC + valgrind".
91384
913852017-11-10  Alan Mackenzie  <acm@muc.de>
91386
91387	Correct the indentation of C99's compound literals.
91388
91389	* lisp/progmodes/cc-engine.el (c-looking-at-statement-block): Amend so that
91390	if there is only syntactic whitespace in a brace block, it is regarded as a
91391	statement block.  Also, if there is no semicolon or comma delimiter, treat as
91392	a statement block when there is a keyword.
91393	(c-guess-basic-syntax): CASE 9 test: Regard a brace as starting a brace block
91394	when its contents indicate a brace block.
91395
913962017-11-10  Eli Zaretskii  <eliz@gnu.org>
91397
91398	Improve the doc string of 'dired-isearch-filter-filenames'
91399
91400	* lisp/dired-aux.el (dired-isearch-filter-filenames): Doc fix.
91401	(Bug#29215)
91402
914032017-11-10  Eli Zaretskii  <eliz@gnu.org>
91404
91405	* lisp/isearch.el (search-invisible): Doc fix.  (Bug#29222)
91406
914072017-11-10  Eli Zaretskii  <eliz@gnu.org>
91408
91409	Fix display of line numbers in GTK builds
91410
91411	* src/xdisp.c (should_produce_line_number) [USE_GTK]: Make sure
91412	tip_frame is indeed a tooltip frame, before disabling line numbers
91413	on it.  (Bug#27647)
91414
91415	* src/dispextern.h (tip_frame): Add commentary describing the
91416	kludgey usage of this variable in GTK builds.
91417
914182017-11-10  João Távora  <joaotavora@gmail.com>
91419
91420	Fix previous change to flymake-diag-region (bug#29174)
91421
91422	* lisp/progmodes/flymake.el (flymake-diag-region):
91423	Pass line and col to commit.
91424
914252017-11-09  João Távora  <joaotavora@gmail.com>
91426
91427	flymake-diag-region really returns nil if region is invalid (bug#29174)
91428
91429	Reported by Lele Gaifax <lele@metapensiero.it>.
91430
91431	* lisp/progmodes/flymake.el (flymake-diag-region): Really
91432	return nil if the region is invalid.
91433
914342017-11-09  João Távora  <joaotavora@gmail.com>
91435
91436	Flymake correctly highlights whole last line if eob (bug#29201)
91437
91438	If a line/column pair indicates an end-of-buffer position, flymake
91439	should behave like the case where the last line of the buffer is
91440	referenced without a column indication.  This behavior is currently
91441	to highlight the whole last line.
91442
91443	* lisp/progmodes/flymake.el (flymake-diag-region): Correct
91444	conditions of fallback to the fallback-eol local function.
91445
914462017-11-09  João Távora  <joaotavora@gmail.com>
91447
91448	Protect Flymake checkdoc backend against checkdoc errors (bug#29176)
91449
91450	The function checkdoc-current-buffer may error if there are unbalanced
91451	parens, for example, but this shouldn't disable the
91452	elisp-flymake-checkdoc backend.
91453
91454	* lisp/progmodes/elisp-mode.el (elisp-flymake-checkdoc): Use
91455	ignore-errors.
91456
914572017-11-09  João Távora  <joaotavora@gmail.com>
91458
91459	Sort entries of the Flymake diagnostics buffer (bug#29175)
91460
91461	Reported by Lele Gaifax <lele@metapensiero.it>.
91462
91463	* lisp/progmodes/flymake.el
91464	(flymake--diagnostics-buffer-entries): Sort results of flymake-diagnostics.
91465
914662017-11-09  Alan Mackenzie  <acm@muc.de>
91467
91468	Correctly indent C++14 brace lists which are a second argument to a function.
91469
91470	In particular, don't indent contained brace lists in "staircase" fashion.
91471	This fixes bug #28623.
91472
91473	* lisp/progmodes/cc-engine.el (c-looking-at-or-maybe-in-bracelist): When
91474	testing for being enclosed in parens, recognize also a brace directly
91475	following a comma, as well as a brace being the first thing inside the paren.
91476	Enhance the return value, by indicating when we're directly inside an open
91477	paren.
91478	(c-inside-bracelist-p): Add an extra argument ACCEPT-IN-PARAM which indicates
91479	whether we will accept a bracelist directly inside an open parenthesis.
91480	Simplify the manipulation of PAREN-STATE by dispensing with variable LIM and
91481	using c-pull-open-brace.  Enhance the return value, respecting the new argument.
91482	(c-guess-basic-syntax): Save a copy of the initial parse-state in the new
91483	variable STATE-CACHE.  Use this variable in place of C-STATE-CACHE throughout
91484	the function.  At CASE 7B, call c-inside-bracelist-p with extra argument nil.
91485	At CASE 9, call that function with extra argument t.
91486
914872017-11-09  Eli Zaretskii  <eliz@gnu.org>
91488
91489	Fix redisplay of overlay-arrows on GUI frames
91490
91491	* src/xdisp.c (try_window_reusing_current_matrix)
91492	(try_cursor_movement): Disallow these optimizations if the buffer
91493	has overlay arrow(s) shown on the fringe(s).  (Bug#29198)
91494
914952017-11-09  João Távora  <joaotavora@gmail.com>
91496
91497	Protect Flymake tests against older Ruby and Perl (bug#29187)
91498
91499	* test/lisp/progmodes/flymake-tests.el (perl-backend): Search
91500	for the error from the bottom.
91501	(ruby-backend): Protect against situation of bug#29187
91502
915032017-11-09  Paul Eggert  <eggert@cs.ucla.edu>
91504
91505	Fix URL cookie expiration bug
91506
91507	Problem reported by Damien Cassou (Bug#29223).
91508	* lisp/url/url-cookie.el (url-cookie-expired-p):
91509	Fix typo in previous change, which caused unexpired cookies
91510	to be treated as expired and vice versa.
91511
915122017-11-09  Paul Eggert  <eggert@cs.ucla.edu>
91513
91514	Use GCALIGNED properly for GCC
91515
91516	Apparently GCC requires that ‘__attribute__ ((aligned (8)))’ must
91517	immediately follow the ‘struct’ keyword when aligning a structure.
91518	The attribute silently does not work if it follows a tag after the
91519	‘struct’ keyword.  Who knew?  Anyway, this patch is designed to
91520	fix a SIGSEGV problem reported by John Mastro (Bug#29183).
91521	* lib-src/make-docfile.c (close_emacs_globals):
91522	* src/buffer.c (buffer_defaults, buffer_local_symbols):
91523	* src/lisp.h (DEFUN):
91524	* src/thread.c (main_thread):
91525	Put 'GCALIGNED' immediately after 'struct'.
91526
915272017-11-09  Glenn Morris  <rgm@gnu.org>
91528
91529	In f90.el, set fill-paragraph-function to a useful value
91530
91531	* lisp/progmodes/f90.el (f90-mode-map) <menu>: Add fill-paragraph.
91532	(f90-mode): Set fill-paragraph-function.
91533	(f90-fill-paragraph): New command.
91534
915352017-11-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
91536
91537	Fix to 2fddfb7ce7
91538
91539	* lisp/emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
91540	  Fix bogus paren wrapping.
91541
915422017-11-08  Glenn Morris  <rgm@gnu.org>
91543
91544	* admin/gitmerge.el (gitmerge-resolve-unmerged): Fix doc typo.
91545
915462017-11-08  Charles A. Roelli  <charles@aurox.ch>
91547
91548	Further workaround for faulty localtime() under macOS 10.6
91549
91550	* lisp/org/org-clock.el (org-clock--oldest-date): Fix an issue
91551	when compiling on macOS 10.6 with a western time zone (a
91552	continuation of Bug#27736).  In particular, see:
91553
91554	https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27736#74
91555
91556	and the first commit that attempted to work around this problem,
91557	"Workaround for faulty localtime() under macOS 10.6", bd49b6f1 of
91558	2017-09-30.
91559
915602017-11-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
91561
91562	Handle object string name in eieio-persistent-convert-list-object
91563
91564	* lisp/emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
91565	  Starting to phase out the printing of object names in
91566	  `object-write', handle either case.
91567
915682017-11-08  Ryan C. Thompson  <rct@thompsonclan.org>
91569
91570	Fix handling of nil PRED2 arg for completion-table-with-predicate
91571
91572	* lisp/minibuffer.el (completion-table-with-predicate): Don't act as
91573	if strict is non-nil when pred2 is nil (Bug#27841).
91574	* test/lisp/minibuffer-tests.el
91575	(completion-table-with-predicate-test): Add a test for Bug#27841.
91576
915772017-11-07  K. Handa  <handa@gnu.org>
91578
91579	Describe Lao rendering problem
91580
91581	* etc/PROBLEMS: Describe a workaround for the problem of Lao rendering
91582	by OpenTyype font.
91583
915842017-11-07  K. Handa  <handa@gnu.org>
91585
91586	Fix docstring of arabic-shaper-ZWNJ-handling
91587
91588	* lisp/language/misc-lang.el (arabic-shaper-ZWNJ-handling): Adjusted
91589	the doctstring for addition of :set (bug#28312).
91590
915912017-11-07  Antonin Houska  <ah@melesmeles.cz>  (tiny change)
91592
91593	Handle single-line comments correctly (Bug#26049)
91594
91595	* lisp/newcomment.el (comment-region-internal): Previously, the
91596	comment text had to contain at least one line break character for the
91597	ending extra line to be added.  Make the behavior more consistent by
91598	looking for end of line instead.
91599	(comment-region-internal): Remove trailing white space from the
91600	comment's initial line.
91601
916022017-11-07  Glenn Morris  <rgm@gnu.org>
91603
91604	* test/lisp/net/tramp-tests.el (tramp-test16-file-expand-wildcards):
91605	Clean up properly.
91606
916072017-11-06  Stefan Monnier  <monnier@iro.umontreal.ca>
91608
91609	* etc/PROBLEMS: Add URL to relevant issues for xterm+evil bug
91610
916112017-11-06  Martin Rudalics  <rudalics@gmx.at>
91612
91613	Document new treatment of 'comment-auto-fill-only-comments'
91614
91615	* doc/lispref/text.texi (Auto Filling): Add reference to Emacs
91616	manual.  Add description of 'comment-auto-fill-only-comments'.
91617	* etc/NEWS: Mention new treatment of
91618	'comment-auto-fill-only-comments'.
91619
916202017-11-05  Michael Albinus  <michael.albinus@gmx.de>
91621
91622	Do not load Tramp unless `tramp-mode' is non-nil
91623
91624	* lisp/net/tramp.el (tramp-autoload-file-name-handler): Load Tramp only if
91625	`tramp-mode' is non-nil.
91626	(tramp-unload-file-name-handlers): Unload also
91627	`tramp-autoload-file-name-handler'.
91628
91629	* test/lisp/net/tramp-tests.el (tramp-test42-delay-load): Extend test.
91630
916312017-11-05  Michael Albinus  <michael.albinus@gmx.de>
91632
91633	Prefer `customize-set-variable' in tramp.texi
91634
91635	* doc/misc/tramp.texi (Configuration, Default Method, Default User)
91636	(Default Host, Remote shell setup, Auto-save and Backup)
91637	(Ad-hoc multi-hops, Frequently Asked Questions):
91638	Prefer `customize-set-variable' over `custom-set-variables'.
91639
916402017-11-05  Eli Zaretskii  <eliz@gnu.org>
91641
91642	Fix last change in hscroll_window_tree
91643
91644	* src/xdisp.c (hscroll_window_tree): When hscroll suspension is
91645	being disabled, set the frame's garbaged flag less eagerly.
91646	(Bug#29002)
91647
916482017-11-05  Philipp Stephani  <phst@google.com>
91649
91650	Ediff: add some missing documentation
91651
91652	* lisp/vc/ediff.el (ediff-files, ediff-files3, ediff-buffers)
91653	(ediff-buffers3, ediff-merge-directories)
91654	(ediff-merge-directories-with-ancestor)
91655	(ediff-merge-directory-revisions)
91656	(ediff-merge-directory-revisions-with-ancestor)
91657	(ediff-windows-wordwise, ediff-windows-linewise)
91658	(ediff-regions-wordwise, ediff-regions-linewise)
91659	(ediff-merge-files, ediff-merge-files-with-ancestor)
91660	(ediff-merge-buffers, ediff-merge-buffers-with-ancestor)
91661	(ediff-merge-revisions, ediff-merge-revisions-with-ancestor)
91662	(ediff-patch-file, ediff-revision): Document missing arguments.
91663	(ediff-patch-buffer, ediff-revision): Add second space after
91664	period.
91665	(ediff-files-command, ediff3-files-command, ediff-merge-command)
91666	(ediff-merge-with-ancestor-command, ediff-directories-command)
91667	(ediff-directories3-command, ediff-merge-directories-command): Add
91668	documentation for the command line functions.
91669
916702017-11-05  Justin Timmons  <justinmtimmons@gmail.com>  (tiny change)
91671
91672	Support python virtualenv on w32 (Bug#24464)
91673
91674	According to the virtualenv docs only POSIX systems follow the
91675	structure "/path/to/venv/bin/", while windows systems use
91676	"/path/to/venv/Scripts" for the location of the binary files, most
91677	importantly including the python interpreter (see:
91678	https://virtualenv.pypa.io/en/stable/userguide/#windows-notes).
91679	* lisp/progmodes/python.el (python-shell-calculate-exec-path): Use the
91680	"/path/to/venv/Scripts" for `windows-nt' machines.
91681
916822017-11-05  Noam Postavsky  <npostavs@gmail.com>
91683
91684	Improve dired deletion error handling (Bug#28797)
91685
91686	* lisp/dired.el (dired-internal-do-deletions): Use
91687	`error-message-string' to produce a human readable error message.
91688
916892017-11-05  Noam Postavsky  <npostavs@gmail.com>
91690
91691	Don't replace user input when completion prefix is empty (Bug#18951)
91692
91693	* lisp/pcomplete.el (pcomplete-parse-arguments): Only replace user
91694	input if we produced a non-empty common completion stub.
91695
916962017-11-05  Eli Zaretskii  <eliz@gnu.org>
91697
91698	Return non-nil from gnutls-available-p under GnuTLS 2.x
91699
91700	* doc/misc/emacs-gnutls.texi (Help For Users): Update the
91701	documentation of 'gnutls-available-p'.
91702
91703	* etc/NEWS (GnuTLS): Mention the change in the value returned by
91704	'gnutls-available-p'.
91705
91706	* src/gnutls.c (Fgnutls_available_p): Return non-nil when GnuTLS
91707	2.x is available.  (Bug#29147)
91708
917092017-11-05  João Távora  <joaotavora@gmail.com>
91710
91711	Fix Flymake help-echo functions across windows (bug#29142)
91712
91713	* lisp/progmodes/flymake.el (flymake--highlight-line): Use
91714	with-selected-window.
91715	(flymake-goto-next-error): Call help-echo with a window and an
91716	overlay.
91717
917182017-11-05  João Távora  <joaotavora@gmail.com>
91719
91720	Add tests for Flymake backends for Ruby and Perl
91721
91722	* test/lisp/progmodes/flymake-tests.el (perl-backend)
91723	(ruby-backend): New tests.
91724	(warning-predicate-rx-perl, warning-predicate-function-perl):
91725	Delete tests.
91726
91727	* test/lisp/progmodes/flymake-resources/test.pl: Include an
91728	error the test file.
91729
91730	* test/lisp/progmodes/flymake-resources/test.rb: file.
91731
917322017-11-05  João Távora  <joaotavora@gmail.com>
91733
91734	Add a Flymake backend for Perl
91735
91736	Define a simple backend in perl-mode.el, which cperl-mode.el also
91737	uses.
91738
91739	* lisp/progmodes/cperl-mode.el (cperl-mode): Add to
91740	flymake-diagnostic-functions.
91741
91742	* lisp/progmodes/flymake-proc.el
91743	(flymake-proc-allowed-file-name-masks): Disable legacy backend
91744	for perl files.
91745
91746	* lisp/progmodes/perl-mode.el (perl-flymake-command): New
91747	defcustom.
91748	(perl--flymake-proc): New buffer-local variable.
91749	(perl-flymake): New function.
91750	(perl-mode): Add to flymake-diagnostic-functions.
91751
917522017-11-05  João Távora  <joaotavora@gmail.com>
91753
91754	Add a Flymake backend for Ruby
91755
91756	* lisp/progmodes/ruby-mode.el (ruby-flymake-command): New
91757	defcustom.
91758	(ruby--flymake-proc): New buffer-local variable.
91759	(ruby-flymake): New function.
91760	(ruby-mode): Add flymake-diagnostic-functions.
91761
917622017-11-05  Lele Gaifax  <lele@metapensiero.it>
91763
91764	Add a Flymake backend for Python (bug#28808)
91765
91766	Implement new Flymake backend with related customizable settings.
91767
91768	* lisp/progmodes/python.el (python-flymake-command)
91769	(python-flymake-command-output-pattern)
91770	(python-flymake-msg-alist): New defcustom.
91771	(python--flymake-parse-output): New function, able to parse
91772	python-flymake-command output accordingly to
91773	python-flymake-command-output-pattern.
91774	(python-flymake): New function implementing the backend
91775	interface using python--flymake-parse-output for the real
91776	work.
91777	(python-mode): Add python-flymake to flymake-diagnostic-functions.
91778
917792017-11-05  Michael Albinus  <michael.albinus@gmx.de>
91780
91781	Allow "%" in Tramp host names
91782
91783	* lisp/net/tramp-gvfs.el (tramp-gvfs-url-file-name): Hexify also host.
91784
91785	* lisp/net/tramp.el (tramp-host-regexp): Allow "%" in host names.
91786
917872017-11-04  Noam Postavsky  <npostavs@users.sourceforge.net>
91788
91789	Use hybrid malloc for FreeBSD (Bug#28308)
91790
91791	FreeBSD aarch64 does not provide sbrk, so gmalloc cannot be used; when
91792	using system malloc dumping does not work correctly (allocated data is
91793	invalid after dumping).
91794	* configure.ac: Set hybrid_malloc for freebsd.
91795	* src/gmalloc.c (gdefault_morecore) [!HAVE_SBRK]: Don't call sbrk.
91796
917972017-11-04  Charles A. Roelli  <charles@aurox.ch>
91798
91799	Add html-, mhtml- and python-mode support to semantic symref
91800
91801	* lisp/cedet/semantic/symref/grep.el
91802	(semantic-symref-filepattern-alist): Fix the entry for
91803	'html-mode', which used a regexp-like syntax where only glob
91804	syntax is permitted.  As a result, 'xref-find-references' (M-?)
91805	can now find references in HTML files.  Also duplicate the same
91806	entry for the sake of 'mhtml-mode', and add a new one for
91807	'python-mode'.
91808	(semantic-symref-derive-find-filepatterns): In the documentation,
91809	clarify that returned patterns must follow the glob syntax.  Fix
91810	an 'if' test that always evaluates to nil.
91811	(semantic-symref-tool-grep):
91812	(semantic-symref-perform-search): Fix typos.
91813
918142017-11-04  Eli Zaretskii  <eliz@gnu.org>
91815
91816	Improve documentation of 'window-scroll-functions'
91817
91818	* doc/lispref/windows.texi (Window Hooks): Clarify the values of
91819	arguments of 'window-scroll-functions' functions.
91820
91821	* src/xdisp.c (syms_of_xdisp) <window-scroll-functions>: Doc fix.
91822
918232017-11-04  Eli Zaretskii  <eliz@gnu.org>
91824
91825	Fix subtle problems in tabulated-list-mode with line numbers
91826
91827	* lisp/emacs-lisp/tabulated-list.el
91828	(tabulated-list-watch-line-number-width): Call
91829	tabulated-list-init-header instead of tabulated-list-revert.
91830	(tabulated-list-window-scroll-function): New function.
91831	(tabulated-list-mode): Put 'tabulated-list-window-scroll-function'
91832	on the buffer-local 'window-scroll-functions' list.
91833
918342017-11-04  Eli Zaretskii  <eliz@gnu.org>
91835
91836	Make gdb-non-stop-setting default to nil on MS-Windows
91837
91838	* lisp/progmodes/gdb-mi.el (gdb-non-stop-setting): Now nil on
91839	MS-Windows.
91840
918412017-11-04  Mike Gulick  <mike.gulick@mathworks.com>  (tiny change)
91842
91843	Fix gdb-mi prompt after "attach PID" command
91844
91845	* lisp/progmodes/gdb-mi.el (gdbmi-bnf-console-stream-output): Set
91846	gdb-first-done-or-error non-nil.  (Bug#29020)
91847
918482017-11-04  Eli Zaretskii  <eliz@gnu.org>
91849
91850	Fix doc string of 'window-configuration-change-hook'
91851
91852	* src/window.c (syms_of_window) <window-configuration-change-hook>:
91853	Doc fix.  (Bug#29049)
91854
918552017-11-04  Eli Zaretskii  <eliz@gnu.org>
91856
91857	Improve documentation of window hooks
91858
91859	* doc/lispref/windows.texi (Window Hooks): Fix the description of
91860	window-configuration-change-hook.  (Bug#29049)
91861	<run-window-scroll-functions, run-window-configuration-change-hook>:
91862	Document these functions.
91863
918642017-11-04  Eli Zaretskii  <eliz@gnu.org>
91865
91866	Fix hscroll suspension after cursor motion
91867
91868	* src/xdisp.c (hscroll_window_tree): Trigger a thorough redisplay
91869	of the window when temporary suspension of hscrolling is
91870	disabled.  (Bug#29002)
91871
918722017-11-03  Alan Mackenzie  <acm@muc.de>
91873
91874	Introduce a function to CC Mode which displays the current function name
91875
91876	Remove an erroneous interactive specification from two functions.
91877
91878	* lisp/progmodes/cc-cmds.el (c-display-defun-name): New command.
91879	(c-defun-name, c-cpp-define-name): Remove interactive specification.
91880
91881	* lisp/progmodes/cc-mode.el (c-mode-base-map): Add binding C-c C-z for the new
91882	command.
91883
91884	* doc/misc/cc-mode.texi (Other Commands): Add documentation for the new
91885	command.
91886
918872017-11-03  Eli Zaretskii  <eliz@gnu.org>
91888
91889	Fix typos in ediff-wind.el
91890
91891	* lisp/vc/ediff-wind.el (ediff-setup-windows-multiframe-merge):
91892	Fix typos in commentary.  (Bug#29138)
91893
918942017-11-03  João Távora  <joaotavora@gmail.com>
91895
91896	Examine tex-chktex--process in the correct buffer
91897
91898	As in other Flymake backends, the process sentinel might run in
91899	arbitrary buffers where this variable's value doesn't make sense.
91900
91901	For a way to trigger a problem due to this, see discussion starting in
91902	https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00645.html
91903
91904	* lisp/textmodes/tex-mode.el (tex-chktex): Use
91905	with-current-buffer.
91906
919072017-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
91908
91909	* nt/INSTALL.W64: Update to current mingw64 install instructions
91910
919112017-11-03  João Távora  <joaotavora@gmail.com>
91912
91913	Don't resignal errors in flymake-diag-region
91914
91915	* lisp/progmodes/flymake.el (flymake-diag-region): Use
91916	flymake-log instead of flymake-error.
91917
919182017-11-03  João Távora  <joaotavora@gmail.com>
91919
91920	New xref-quit-and-goto-xref command bound to TAB (bug#28814)
91921
91922	This is like xref-goto-xref, but quits the *xref* window just before
91923	the user jump to ref.
91924
91925	* lisp/progmodes/xref.el (xref--show-location): Handle 'quit
91926	value for SELECT.
91927	(xref-goto-xref): Take optional QUIT arg.
91928	(xref-quit-and-goto-xref): New command.
91929	(xref--xref-buffer-mode-map): Bind "Q" and "TAB" to
91930	xref-quit-and-goto-xref.
91931
91932	* doc/emacs/maintaining.texi (Xref Commands): Describe new bindings in
91933	*xref*.
91934
91935	* etc/NEWS (Xref): Describe new binding.
91936
919372017-11-03  João Távora  <joaotavora@gmail.com>
91938
91939	Allow split-window-sensibly to split threshold in further edge case
91940
91941	As a fallback, and to avoid creating a frame, split-window-sensibly
91942	would previously disregard split-height-threshold if the window to be
91943	split is the frame's root window.
91944
91945	This change generalizes that: it disregards the threshold if the
91946	window to be split is the frame's only _usable_ window (it is either
91947	the only one, as before, or all the other windows are dedicated to
91948	some buffer and thus cannot be touched).
91949
91950	This is required for the fix to bug#28814.
91951
91952	* lisp/window.el (split-height-threshold): Adjust doc to match
91953	split-window-sensibly.
91954	(split-window-sensibly): Also disregard threshold if all other
91955	windows are dedicated.
91956
919572017-11-03  João Távora  <joaotavora@gmail.com>
91958
91959	Honor window-switching intents in xref-find-definitions (bug#28814)
91960
91961	When there is more than one xref to jump to, and an *xref* window
91962	appears to help the user choose, the original intent to open a
91963	definition in another window or frame is remembered when the choice to
91964	go to or show a reference is finally made.
91965
91966	* lisp/progmodes/xref.el (xref--show-pos-in-buf): Rewrite.
91967	(xref--original-window-intent): New variable.
91968	(xref--original-window): Rename from xref--window and move up
91969	here for clarity.
91970	(xref--show-pos-in-buf): Rewrite.  Don't take SELECT arg here.
91971	(xref--show-location): Handle window selection decision here.
91972	(xref--window): Rename to xref--original-window.
91973	(xref-show-location-at-point): Don't attempt window management here.
91974	(xref--show-xrefs): Ensure display-action intent is saved.
91975
919762017-11-03  Paul Pogonyshev  <pogonyshev@gmail.com>
91977
91978	* lisp/emacs-lisp/generator.el (iter-do): Add a debug declaration.
91979
919802017-11-03  Stefan Monnier  <monnier@iro.umontreal.ca>
91981
91982	* lisp/progmodes/flymake.el (flymake-start): Fix dead buffer case
91983
91984	Don't try to flymake-start within a buffer that doesn't exist any more.
91985
919862017-11-03  Basil L. Contovounesios  <contovob@tcd.ie>
91987
91988	Fix buffer name comparison in async shell-command
91989
91990	* lisp/simple.el (shell-command): Keep track of output-buffer
91991	by its name, not by its object.  (Bug#28997)
91992
919932017-11-03  Paul Eggert  <eggert@cs.ucla.edu>
91994
91995	Change GCALIGNMENT back to an integer literal
91996
91997	* src/lisp.h (GCALIGNMENT): Change it back to a macro
91998	that expands to a literal integer constant, for older GCC.
91999	I had mistakenly thought that only MSVC had the problem.
92000	Problem repored by Eli Zaretskii (Bug#29040#69).
92001
920022017-11-03  Paul Eggert  <eggert@cs.ucla.edu>
92003
92004	* src/lisp.h (GCALIGNED): Clarify comment (Bug#29040).
92005
920062017-11-03  Hong Xu  <hong@topbug.net>
92007
92008	Improve the doc of eshell-cmpl-* custom variables (Bug#25069)
92009
92010	* lisp/eshell/em-cmpl.el (eshell-cmpl--custom-variable-docstring): New
92011	function to generate the docstring for custom variables derived from
92012	pcomplete-* variables.
92013	(eshell-cmpl-file-ignore, eshell-cmpl-dir-ignore)
92014	(eshell-cmpl-ignore-case, eshell-cmpl-autolist)
92015	(eshell-cmpl-suffix-list, eshell-cmpl-recexact)
92016	(eshell-cmpl-man-function, eshell-cmpl-compare-entry-function)
92017	(eshell-cmpl-expand-before-complete, eshell-cmpl-cycle-completions)
92018	(eshell-cmpl-cycle-cutoff-length, eshell-cmpl-restore-window-delay)
92019	(eshell-command-completion-function, eshell-cmpl-command-name-function)
92020	(eshell-default-completion-function, eshell-cmpl-use-paring): Use it
92021	to set the docstring.
92022
920232017-11-02  Alan Third  <alan@idiocy.org>
92024
92025	Fix mouse-scrollbar offset on GNUstep and old macOS (bug#29053)
92026
92027	* src/nsterm.m (EmacsScroller::mouseDown,
92028	EmacsScroller::mouseDragged): Take scroller buttons into account when
92029	calculating scroller knob position.
92030
920312017-11-02  Paul Eggert  <eggert@cs.ucla.edu>
92032
92033	Merge from Gnulib
92034
92035	This incorporates:
92036	2017-10-29 timespec: prefer ‘assume’ to ‘assure’
92037	2017-10-27 timespec.h: use "assure" to avoid a spurious warning
92038	2017-10-09 getopt-posix: Fix build failure if ac_cv_header_getopt_h=no
92039	* build-aux/config.guess, build-aux/config.sub:
92040	* lib/timespec.h, lib/unistd.in.h:
92041	Copy from Gnulib.
92042
920432017-11-02  Paul Eggert  <eggert@cs.ucla.edu>
92044
92045	Fix alignment portability problems
92046
92047	Do not assume that the natural alignment of Lisp objects is a
92048	multiple of GCALIGNMENT.  This improves on the portability of the
92049	recent fix for Bug#29040.
92050	* lib-src/make-docfile.c (close_emacs_globals):
92051	* src/buffer.c (buffer_defaults, buffer_local_symbols):
92052	* src/lisp.h (DEFUN):
92053	* src/thread.c (main_thread):
92054	Use GCALIGNED, not alignas (GCALIGNMENT).
92055	* src/alloc.c (COMMON_MULTIPLE):
92056	Move back here from lisp.h, since it is no longer used elsewhere.
92057	* src/lisp.h (GCALIGNMENT): No longer a macro, since we need not
92058	worry about MSVC.  Omit no-longer-needed consistency check.
92059	* src/thread.c (THREAD_ALIGNMENT): Remove.
92060
920612017-11-02  Simen Heggestøyl  <simenheg@gmail.com>
92062
92063	Fix completion of colon after CSS property (Bug#29056)
92064
92065	* lisp/textmodes/css-mode.el (css-completion-at-point): Don't insert
92066	": ;" after completing a CSS property unless the rest of the line is
92067	empty.
92068
920692017-11-02  Stefan Monnier  <monnier@iro.umontreal.ca>
92070
92071	* src/alloc.c (sweep_symbols): Tweak last change
92072
92073	Avoid the double-free without the extra check.  Add an explanatory comment.
92074
920752017-11-02  Martin Rudalics  <rudalics@gmx.at>
92076
92077	In frame parameters documentation mention desktop saving/restoring
92078
92079	* doc/lispref/frames.texi (Frame Parameters): Mention that
92080	applications have to care about which parameters they want to
92081	get saved and restored by the desktop library.
92082
920832017-11-02  Martin Rudalics  <rudalics@gmx.at>
92084
92085	Don't have frameset save the 'client' parameter (Bug#29067)
92086
92087	* lisp/frameset.el (frameset-persistent-filter-alist): Never
92088	save 'client' parameter (Bug#29067).
92089
920902017-11-02  Gemini Lasswell  <gazally@runbox.com>
92091
92092	Handle generic variables in cl-defgeneric Edebug spec
92093
92094	*lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Fix Edebug spec to
92095	match (setf name) and replace incorrect cl-lambda-list with listp
92096	(Bug#27747).
92097
920982017-11-02  Noam Postavsky  <npostavs@gmail.com>
92099
92100	Give a more sensible message if file-attributes fails (Bug#29070)
92101
92102	* lisp/server.el (server-ensure-safe-dir): Don't claim the directory
92103	is a file if we fail to get anything from `file-attributes'.
92104
921052017-11-01  Andreas Schwab  <schwab@linux-m68k.org>
92106
92107	Avoid wrong value from file-attributes on Linux kernel before 3.6
92108
92109	* src/dired.c (file_attributes): Handle unsupported fstat on O_PATH
92110	descriptors.  (bug#29070)
92111
921122017-11-01  Noam Postavsky  <npostavs@gmail.com>
92113
92114	Fix customization of debugger-print-function (Bug#29077)
92115
92116	* lisp/emacs-lisp/debug.el (debugger-print-function): The :options
92117	keyword has no effect for :type 'function, use :type '(choice ...)
92118	instead.
92119
921202017-10-31  Eli Zaretskii  <eliz@gnu.org>
92121
92122	Avoid duplicate calls to xfree for the same pointer
92123
92124	* src/alloc.c (sweep_symbols): Avoid freeing an already freed
92125	pointer to a symbol's buffer-local value.  (Bug#29066)
92126
921272017-10-31  Phil Sainty  <psainty@orcon.net.nz>
92128
92129	Don't clobber docstrings of explicitly-defined mode hook variables
92130
92131	* lisp/emacs-lisp/derived.el (define-derived-mode):
92132	* lisp/emacs-lisp/easy-mmode.el (define-minor-mode): When defining the
92133	mode hook variable, do not clobber pre-existing docstrings.
92134
921352017-10-31  Martin Rudalics  <rudalics@gmx.at>
92136
92137	Avoid fullscreen ediff control frames by default (Bug#29026)
92138
92139	* lisp/vc/ediff-wind.el (ediff-control-frame-parameters):
92140	Add parameter to avoid fullscreen control frames (Bug#29026).
92141
921422017-10-31  Katsumi Yamaoka  <yamaoka@jpl.org>
92143
92144	Fix the bug#24034 change (revno 9eb028f) causing infloop (bug#29047)
92145
92146	* lisp/net/shr.el (shr-fill-line): Copy only face and image-displayer
92147	properties to gaps (bug#29047).
92148
921492017-10-30  Eli Zaretskii  <eliz@gnu.org>
92150
92151	Fix a typo in the ELisp manual
92152
92153	* doc/lispref/functions.texi (Obsolete Functions): Fix a typo.
92154	(Bug#29068)
92155
921562017-10-30  Martin Rudalics  <rudalics@gmx.at>
92157
92158	Fix doc and doc-strings for minibuffer window related functions (Bug#28978)
92159
92160	These fixes were suggested by Drew Adams.
92161
92162	* src/window.c (Fminibuffer_selected_window): Disambiguate
92163	doc-string.
92164	* doc/lispref/minibuf.texi (Intro to Minibuffers)
92165	(Minibuffer Windows, Recursive Mini, Minibuffer Misc):  Avoid
92166	the term "currently active minibuffer window".  Disambiguate
92167	documentation of `minibuffer-selected-window'.
92168
921692017-10-30  Alan Mackenzie  <acm@muc.de>
92170
92171	Fix "Args out of range" error in c-determine-limit.  Fixes bug #28598.
92172
92173	* lisp/progmodes/cc-engine.el (c-determine-limit-get-base): If the candidate
92174	position for BASE is below point-min, scan forward to the end of the current
92175	literal.
92176	(c-determine-limit): Add an extra arm to the final cond form, testing for BASE
92177	being at point-min.
92178
921792017-10-30  Stefan Monnier  <monnier@iro.umontreal.ca>
92180
92181	* lisp/progmodes/perl-mode.el: Fix electric indentation with RET
92182
92183	(perl-electric-noindent-p): The `eolp' check should not apply to RET.
92184	Reported in https://emacs.stackexchange.com/questions/36337.
92185
921862017-10-29  Tom Tromey  <tom@tromey.com>
92187
92188	Extend mhtml submode region when in comment
92189
92190	* lisp/textmodes/mhtml-mode.el (mhtml-syntax-propertize): Extend
92191	submode when start happens to be in a comment.
92192
921932017-10-29  Tom Tromey  <tom@tromey.com>
92194
92195	Fix mthml submode lighting at end of buffer
92196
92197	* lisp/textmodes/mhtml-mode.el (mhtml--submode-lighter): Handle end of
92198	buffer correctly.
92199
922002017-10-29  Tom Tromey  <tom@tromey.com>
92201
92202	Remember more variables in mhtml-mode
92203
92204	* lisp/textmodes/mhtml-mode.el (mhtml--crucial-variable-prefix): Add
92205	"completion-" and "major-mode".
92206	(mhtml--variable-prefix): Remove "major-mode".
92207
922082017-10-29  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
92209
92210	* etc/NEWS (EUDC): Deprecate BBDB 2.x backward compatibility.
92211
922122017-10-29  Martin Rudalics  <rudalics@gmx.at>
92213
92214	Fix minibuffer window related docs and strings (Bug#28978)
92215
92216	* src/frame.c (Vdefault_minibuffer_frame): Fix doc-string.
92217	* src/window.c (Fminibuffer_selected_window): Fix doc-string.
92218	* doc/lispref/frames.texi (Buffer Parameters): Rewrite
92219	description of `minibuffer' parameter.
92220	* doc/lispref/minibuf.texi (Minibuffer Windows): Reorder
92221	entries and partly rewrite section.
92222	(Minibuffer Misc): Clarify description of
92223	`minibuffer-selected-window'.
92224	* etc/NEWS: Mention new semantics of 'minibuffer' frame
92225	parameter.
92226
922272017-10-29  Mark Oteiza  <mvoteiza@udel.edu>
92228
92229	Add ChkTeX flymake backend for latex-mode
92230
92231	* lisp/textmodes/tex-mode.el (tex-flymake): New custom group.
92232	(tex-chktex-program, tex-chktex-extra-flags): New custom variables.
92233	(latex-mode): Add backend to flymake-diagnostic-functions.
92234	(tex-chktex--process): New variable.
92235	(tex-chktex-command, tex-chktex): New functions.
92236
922372017-10-29  Glenn Morris  <rgm@gnu.org>
92238
92239	Fix doc typos
92240
92241	* lisp/simple.el (line-move-ignore-invisible):
92242	* lisp/sort.el (sort-regexp-fields):
92243	* lisp/cedet/ede.el (project-add-file):
92244	* lisp/gnus/message.el (message-bogus-recipient-p):
92245	* lisp/international/mule.el (define-coding-system):
92246	* lisp/progmodes/ebrowse.el (ebrowse-member-buffer-object-menu):
92247	* lisp/progmodes/xscheme.el (xscheme-allow-output-p)
92248	(scheme-interaction-mode, scheme-debugger-mode)
92249	(xscheme-yank-pop, xscheme-yank-push): Doc fixes.
92250
922512017-10-29  Glenn Morris  <rgm@gnu.org>
92252
92253	Fix some duplicate word typos
92254
92255	* doc/misc/ede.texi (ede-target):
92256	* doc/misc/flymake.texi (Using Flymake):
92257	* doc/misc/gnus.texi (The namazu Engine): Fix typos.
92258
922592017-10-28  Eli Zaretskii  <eliz@gnu.org>
92260
92261	* doc/lispref/commands.texi (Adjusting Point): Fix wording. (Bug#29042)
92262
922632017-10-28  Eli Zaretskii  <eliz@gnu.org>
92264
92265	Avoid segfaults in 64-bit Windows builds
92266
92267	* src/lisp.h (COMMON_MULTIPLE): Move here from alloc.c.
92268	* src/thread.c (THREAD_ALIGNMENT): New macro.
92269	(main_thread): Use THREAD_ALIGNMENT to align propertly.  (Bug#29040)
92270
922712017-10-28  Eli Zaretskii  <eliz@gnu.org>
92272
92273	Fix conversion of pixel coordinates to buffer position
92274
92275	* src/dispnew.c (buffer_posn_from_coords): Adapt to
92276	auto-hscroll-mode == current-line.
92277
922782017-10-28  Eli Zaretskii  <eliz@gnu.org>
92279
92280	Fix doc strings in desktop.el
92281
92282	* lisp/desktop.el (desktop-auto-save-timeout)
92283	(desktop-auto-save-set-timer): Doc fixes.  (Bug#28945)
92284
922852017-10-28  Eli Zaretskii  <eliz@gnu.org>
92286
92287	Add Index to ERT manual
92288
92289	* doc/misc/ert.texi: Add @syncodeindex directives.
92290	(Index): New node.
92291	(Top): Add Index to the top-level menus.
92292	Add index entries to all nodes.
92293
922942017-10-28  Eli Zaretskii  <eliz@gnu.org>
92295
92296	Make manuals and NEWS consistent
92297
92298	* etc/NEWS: Fix markings on several entries, and rearrange others
92299	as needed.
92300
92301	* doc/emacs/programs.texi (Hideshow): Document the new
92302	outline-like bindings.
92303	* doc/emacs/search.texi (Query Replace): Document 'u' and 'U'.
92304
923052017-10-28  Martin Rudalics  <rudalics@gmx.at>
92306
92307	Don't allow (minibuffer-window-active-p nil) to return t
92308
92309	* lisp/window.el (minibuffer-window-active-p): Return t
92310	only if WINDOW is a live window.
92311
923122017-10-28  Eli Zaretskii  <eliz@gnu.org>
92313
92314	Clarify obsolescence message for 'whitespace-tab'
92315
92316	* lisp/whitespace.el (whitespace-tab): Make the obsolescence
92317	message more clear about the replacement.
92318
923192017-10-28  Glenn Morris  <rgm@gnu.org>
92320
92321	Fix some duplicate words typos
92322
92323	* lisp/erc/erc.el (erc-hide-current-message-p):
92324	* lisp/progmodes/flymake-proc.el (flymake-proc-diagnostic-type-pred):
92325	* doc/lispref/display.texi (Bidirectional Display, Delayed Warnings):
92326	* doc/lispref/functions.texi (Defining Functions):
92327	* doc/lispref/os.texi (Terminal-Specific):
92328	* doc/misc/sem-user.texi (Analyzer Debug):
92329	* doc/misc/srecode.texi (Special Variables): Fix typos.
92330
923312017-10-28  Glenn Morris  <rgm@gnu.org>
92332
92333	* lisp/button.el (button-activate): Fix doc typo.
92334
92335	* lisp/calendar/todo-mode.el (todo-toggle-mark-item): Fix doc typo.
92336
923372017-10-28  Glenn Morris  <rgm@gnu.org>
92338
92339	Fix some doc typos
92340
92341	* lisp/calendar/todo-mode.el (todo-next-item)
92342	(todo-previous-item, todo-toggle-item-header):
92343	* lisp/window.el (move-to-window-group-line):
92344	* src/editfns.c (Fformat):
92345	* test/lisp/calendar/todo-mode-tests.el (todo-test-move-item05):
92346	Fix doc typos.
92347
923482017-10-27  Ken Brown  <kbrown@cornell.edu>
92349
92350	Fix startup display on Cygwin
92351
92352	* src/xterm.c (x_make_frame_visible) [CYGWIN]: Restore code that
92353	forces input to be read.  (Bug#24091)
92354
923552017-10-27  Eli Zaretskii  <eliz@gnu.org>
92356
92357	* src/fileio.c (Fset_default_file_modes): Fix typo in doc string.
92358
92359	* lisp/dired.el (dired-find-alternate-file): Doc fix.  (Bug#28963)
92360
923612017-10-27  Eli Zaretskii  <eliz@gnu.org>
92362
92363	Improve documentation of how faces are applied to display stings
92364
92365	* doc/lispref/display.texi (Displaying Faces): Describe how the
92366	faces of the "underlying" text affect overlay and display strings.
92367	(Display Margins): Add a cross-reference to "Displaying Faces".
92368
923692017-10-27  Tak Kunihiro  <tkk@misasa.okayama-u.ac.jp>
92370
92371	Improve pixel-scroll-mode
92372
92373	Scroll vertically by number of pixels returned by
92374	'frame-char-height' with or without horizontally scrolled.
92375	(Bug#28922)
92376
92377	* lisp/pixel-scroll.el (pixel-resolution-fine-flag): When t, scroll
92378	by number of pixels returned by 'frame-char-height'.
92379	(pixel-scroll-up): Scroll by 'frame-char-height'. Fix algorithm to
92380	move cursor to avoid unexpected jump.
92381	(pixel-scroll-down): Scroll by 'frame-char-height'.
92382	(pixel-bob-at-top-p): Consider number of pixels that is about to
92383	scroll.
92384	(pixel-posn-y-at-point): Consider existence of an overlay string.
92385	Return nil when horizontally scrolled.
92386	(pixel-point-at-top-p): Consider number of pixels that is about to
92387	scroll. Use different algorithm when horizontally scrolled.
92388	(pixel-point-at-bottom-p): Consider number of pixels that is about
92389	to scroll. Return nil when horizontally scrolled.
92390	(pixel-scroll-pixel-down): Move cursor when horizontally scrolled.
92391	(pixel--whistlestop-line-up): Change cosmetics and move cursor when
92392	horizontally scrolled.
92393	(pixel-line-height): Call 'pixel-visual-line-height' instead of
92394	'line-pixel-height'.
92395	(pixel-visual-line-height): New function to return height in pixels
92396	of text line where cursor is with or without horizontally scrolled,
92397	considering response of display engine.
92398	(pixel-visible-pos-in-window): New function to return position of
92399	a char shown on text line where cursor is on screen with or without
92400	horizontally scrolled.
92401
924022017-10-27  Daniel Lublin  <daniel@lublin.se>  (tiny change)
92403
92404	Support Certification Authority Authorization in dns-mode.el
92405
92406	* lisp/textmodes/dns-mode.el (dns-mode-types): Add "CAA".
92407	(Bug#28911)
92408
924092017-10-27  Eli Zaretskii  <eliz@gnu.org>
92410
92411	Improve documentation of set-default-file-modes
92412
92413	* src/fileio.c (Fset_default_file_modes): Doc fix.  (Bug#28875)
92414
92415	* doc/lispref/files.texi (Changing Files): Clarify how the bits in
92416	the argument of set-default-file-modes are used for setting file
92417	permissions.
92418
924192017-10-27  Ulf Jasper  <ulf.jasper@web.de>
92420
92421	Fix documentation of `newsticker-new-item-functions' (bug#29023).
92422
92423	* lisp/net/newst-backend.el (newsticker-new-item-functions),
92424	(newsticker-new-item-functions-sample),
92425	(newsticker-download-enclosures): Fix docstring, rename
92426	variable feed to feedname (bug#29023).
92427
92428	* doc/misc/newsticker.texi (Automatic Processing)
92429	(Automatic Processing): Fix documentation of
92430	`newsticker-new-item-functions' (bug#29023).
92431
924322017-10-27  Tino Calancha  <tino.calancha@gmail.com>
92433
92434	Require seq in rmc.el
92435
92436	* lisp/emacs-lisp/rmc.el: Require seq (Bug#28975).
92437	* test/lisp/emacs-lisp/rmc-tests.el (test-read-multiple-choice): Add test.
92438
924392017-10-27  Katsumi Yamaoka  <yamaoka@jpl.org>
92440
92441	Make an example code introduced in the Gnus info work (bug#29008)
92442
92443	You can find it in the bottom of (info "(gnus)Foreign Groups").
92444	NOTE: this change is worth being merged to the trunk.
92445
92446	* lisp/gnus/gnus-group.el (gnus-read-ephemeral-emacs-bug-group):
92447	Allow a string for bug# (bug#29008).
92448
924492017-10-27  Katsumi Yamaoka  <yamaoka@jpl.org>
92450
92451	Enable gnus-read-ephemeral-* to run multiple times (bug#29008)
92452
92453	NOTE: *DO NOT* merge this change to the trunk.
92454
92455	* lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group)
92456	(gnus-read-ephemeral-bug-group): Make it work for any number of times
92457	for the case `url-automatic-caching' is set (bug#29008).
92458
924592017-10-27  Paul Eggert  <eggert@cs.ucla.edu>
92460
92461	Port thread.c to OpenBSD ARM
92462
92463	Problem reported by Jeremie Courreges-Anglas (Bug#29005).
92464	* src/thread.c (main_thread): Align to GCALIGNMENT.
92465
924662017-10-26  Alan Mackenzie  <acm@muc.de>
92467
92468	Fix another "wrong side of point" error in CC Mode.
92469
92470	This fixes (a follow-up to) bug #28850.
92471	A internal generated form for scanning text to fontify had a LIMIT parameter.
92472	It also locally bound LIMIT to a value possibly beyond the original LIMIT,
92473	allowing point to move beyond the original LIMIT, and to create the wrong side
92474	error.  Fix it by checking point is not beyond LIMIT in the outer context
92475	before using it.
92476
92477	* lisp/progmodes/cc-fonts.el (c-make-font-lock-search-form): Add a new
92478	parameter CHECK-POINT which, when non-nil, directs the function to generate a
92479	check on point.
92480	(c-make-font-lock-context-search-function): Invoke the above function with new
92481	argument value t.
92482
924832017-10-26  Michael Albinus  <michael.albinus@gmx.de>
92484
92485	Fix Bug#28959
92486
92487	* lisp/net/tramp.el (tramp-handle-find-backup-file-name):
92488	Use `tramp-tramp-file-p' rather than `tramp-file-name-p'.  Add
92489	hop to backup file name.  (Bug#28959)
92490
92491	* test/lisp/net/tramp-tests.el (tramp-test34-find-backup-file-name):
92492	New test.
92493	(tramp-test35-make-nearby-temp-file)
92494	(tramp-test36-special-characters)
92495	(tramp-test36-special-characters-with-stat)
92496	(tramp-test36-special-characters-with-perl)
92497	(tramp-test36-special-characters-with-ls, tramp-test37-utf8)
92498	(tramp-test37-utf8-with-stat, tramp-test37-utf8-with-perl)
92499	(tramp-test37-utf8-with-ls, tramp-test38-file-system-info)
92500	(tramp-test39-asynchronous-requests)
92501	(tramp-test40-recursive-load, tramp-test41-remote-load-path)
92502	(tramp-test42-delay-load, tramp-test43-unload): Rename.
92503
925042017-10-26  Paul Eggert  <eggert@cs.ucla.edu>
92505
92506	Fix duplicate .o file on QNX
92507
92508	* configure.ac (CYGWIN_OBJ): Leave empty on QNX.
92509	Problem reported by Elad Lahav in:
92510	https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00750.html
92511
925122017-10-26  Dmitry Gutov  <dgutov@yandex.ru>
92513
92514	Fix two js indentation problems
92515
92516	Fix intentation problems reported in
92517	https://github.com/mooz/js2-mode/issues/463.
92518	* lisp/progmodes/js.el (js--continued-expression-p):
92519	Check syntax state after /.
92520	(js--multi-line-declaration-indentation):
92521	Check syntax state before "const".
92522
925232017-10-25  Phillip Lord  <phillip.lord@russet.org.uk>
92524
92525	Update documentation for windows build
92526
92527	* admin/nt/dist-build/README-scripts: New File.
92528
925292017-10-25  Alan Mackenzie  <acm@muc.de>
92530
92531	Fix a "wrong side of point" error in CC Mode.  Fixes bug #28850.
92532
92533	The cause was a scanning over a bracket pair taking us beyond the supplied
92534	LIMIT parameter in c-forward-declarator.
92535
92536	* lisp/progmodes/cc-engine.el (c-forward-declarator): Add three checks (<
92537	(point) limit) whilst dealing with tokens after the declared identifier.
92538
92539	* lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Don't supply a LIMIT
92540	argument to `c-forward-declarator' (twice), since we want to fontify up till
92541	the end of a declarator, not an arbitrary jit-lock chunk end.
92542
925432017-10-25  Stefan Monnier  <monnier@iro.umontreal.ca>
92544
92545	Fix autoload of flymake from elisp-mode during bootstrap (bug#28994)
92546
92547	* lisp/loadup.el: add `progmodes` to load-path so we can find flymake.el.
92548	* lisp/kmacro.el: Require `replace` since we use query-replace-map.
92549	* lisp/replace.el: Require `text-mode` since we use text-mode-map.
92550
925512017-10-25  Alan Third  <alan@idiocy.org>
92552
92553	Fix non-native fullscreen on NS (bug#28872)
92554
92555	* src/nsterm.m (EmacsView::updateFrameSize): Handle case where
92556	FRAME_TOOLBAR_HEIGHT returns a negative number.  Force WM to set size
92557	of frame.
92558
925592017-10-25  Michael Albinus  <michael.albinus@gmx.de>
92560
92561	Fix Bug#28982
92562
92563	* admin/MAINTAINERS: Add test/lisp/url/url-tramp-tests.el.
92564
92565	* lisp/url/url-tramp.el (url-tramp-convert-url-to-tramp)
92566	(url-tramp-convert-tramp-to-url): Adapt to recent Tramp changes.
92567
92568	* test/lisp/url/url-tramp-tests.el: New file.  (Bug#28982)
92569
925702017-10-25  Phillip Lord  <phillip.lord@russet.org.uk>
92571
92572	Fix windows build errors
92573
92574	* admin/nt/dist-build/build-zips.sh: Correct name of zip file, build
92575	  64 bit first
92576
925772017-10-25  Noam Postavsky  <npostavs@gmail.com>
92578
92579	Fix compile warning for non-w32 builds
92580
92581	Since 2017-07-25 "ls-lisp: Add an unload function and enable lexical
92582	binding", the non-w32 builds would treat the undeclared
92583	w32-collate-ignore-punctuation variable as lexical.
92584	* lisp/ls-lisp.el (top-level): Declare it as a dynamic variable.
92585
925862017-10-25  David Glasser  <glasser@davidglasser.net>  (tiny change)
92587
92588	Display commit in package description, if available (Bug#28637)
92589
92590	MELPA includes a :commit field in its
92591	packages (https://github.com/melpa/package-build/pull/6).  You can use
92592	this to tell if MELPA has processed a recently-merged change.  This
92593	commit adds that metadata to the package description buffer.
92594
92595	* lisp/emacs-lisp/package.el: Display commit in package description.
92596
925972017-10-24  Paul Eggert  <eggert@cs.ucla.edu>
92598
92599	Port to QNX
92600
92601	Simplified version of a patch proposed by Elad Lahav in:
92602	https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00716.html
92603	which is based on a previous patch I proposed in:
92604	https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00707.html
92605	* configure.ac (opsys, CFLAGS, LIBS_SYSTEM, hybrid_malloc)
92606	(system_alloc, FIRST_PTY_LETTER, CYGWIN_OBJ):
92607	Set appropriately for QNX.
92608	* src/unexelf.c [__QNX__]: Include <sys/elf.h> instead of <elf.h>.
92609	(unexec): Check for sbrk failure, and fall back on old BSS end.
92610
926112017-10-24  Paul Eggert  <eggert@cs.ucla.edu>
92612
92613	* configure.ac: Tweak libcurses diagnostic.
92614
926152017-10-24  Phillip Lord  <phillip.lord@russet.org.uk>
92616
92617	Scripts to automate windows binary distribution
92618
92619	* admin/nt/dist-build/README-windows-binaries,
92620	  admin/nt/dist-build/build-dep-zips.py,
92621	  admin/nt/dist-build/build-zips.sh: New Files
92622
926232017-10-24  Gemini Lasswell  <gazally@runbox.com>
92624
92625	Fix Edebug specs for map-let and with-maps-do
92626
92627	* lisp/emacs-lisp/map.el (map-let): Fix Edebug spec (bug#24777).
92628	* test/lisp/emacs-lisp/map-tests.el (with-maps-do): Fix Edebug spec.
92629
926302017-10-24  Michael Albinus  <michael.albinus@gmx.de>
92631
92632	* test/lisp/net/tramp-tests.el (tramp-test41-delay-load): New test.
92633
92634	(tramp-test42-unload): Rename.
92635
926362017-10-24  Glenn Morris  <rgm@gnu.org>
92637
92638	* admin/authors.el (authors-canonical-author-name):
92639	Ignore name issues in "lax" ChangeLogs.
92640
92641	* test/lisp/progmodes/sql-tests.el
92642	(sql-tests-postgres-list-databases-error): Silence compiler.
92643
926442017-10-23  Michael Albinus  <michael.albinus@gmx.de>
92645
92646	Further work on Bug#28889
92647
92648	* lisp/net/tramp.el (tramp-set-syntax): New defun.
92649	(tramp-syntax): Use it.  Change :package-version.  (Bug#28889)
92650
926512017-10-23  Michael Albinus  <michael.albinus@gmx.de>
92652
92653	Improve Tramp backward compatibility
92654
92655	* lisp/net/tramp-compat.el (tramp-compat-tramp-file-name-slots):
92656	New defmacro.
92657	* lisp/net/tramp.el (with-parsed-tramp-file-name): Use it.
92658
926592017-10-23  Michael Albinus  <michael.albinus@gmx.de>
92660
92661	Improve backward compatibility of tramp-tests.el
92662
92663	* test/lisp/net/tramp-tests.el (tramp--test-emacs26-p): Fix docstring.
92664	(tramp-test41-unload): Skip unless Emacs >= 26.
92665
926662017-10-23  Martin Rudalics  <rudalics@gmx.at>
92667
92668	Fix some ‘window-normalize-’ prefixed functions (Bug#28947)
92669
92670	* lisp/window.el (window-normalize-buffer): Fix case where
92671	BUFFER-OR-NAME is a string specifying a dead buffer.  Fix
92672	doc-string (Bug#28947).
92673	(window-normalize-frame, window-normalize-window): Fix
92674	doc-strings (Bug#28947).
92675
926762017-10-23  Paul Eggert  <eggert@cs.ucla.edu>
92677
92678	Port to OpenIndiana
92679
92680	Problem reported by Nelson H. F. Beebe (Bug#28893).
92681	Also see Bug#23748, Bug#9736, and Bug#5735.
92682	* configure.ac (tputs_library): Prefer libcurses to libtermcap,
92683	since OpenIndiana libtermcap lacks tparm.
92684
926852017-10-22  Alexander Gramiak  <agrambot@gmail.com>
92686
92687	Don't fill keywords after Emacs Lisp docstring
92688
92689	This approach does mean that keywords that have spaces before them
92690	inside of docstrings aren't filled, but I think this is should be fine
92691	until Bug#28937 is fixed.
92692
92693	* lisp/emacs-lisp/lisp-mode.el (lisp-fill-paragraph): Add a colon to
92694	paragraph-start unconditionally, but require that it follows at least
92695	one space.  (Bug#24622)
92696	* test/lisp/emacs-lisp/lisp-tests.el: New tests for Bug#24622 and
92697	Bug#7751.
92698
926992017-10-22  Alan Mackenzie  <acm@muc.de>
92700
92701	Refactor c-forward-token-2 with new function c-forward-over-token-and-ws.
92702
92703	Use the new function directly in several places where c-forward-token-2
92704	wouldn't move over the last token in the buffer.  This caused an infinite loop
92705	in c-restore-<>-properties.
92706
92707	* lisp/progmodes/cc-engine.el (c-forward-over-token-and-ws): New function,
92708	extracted from c-forward-token-2.
92709	(c-forward-token-2): Refactor, calling the new function.
92710	(c-restore-<>-properties): Fix infinite loop.
92711	(c-forward-<>-arglist-recur, c-in-knr-argdecl)
92712	(c-looking-at-or-maybe-in-bracelist): Call the new function directly in place
92713	of c-forward-token-2.
92714
92715	* lisp/progmodes/cc-cmds.el (c-defun-name) Call the new function directly in
92716	place of c-forward-token-2.
92717
92718	* lisp/progmodes/cc-fonts.el (c-font-lock-enclosing-decls): Call the new
92719	function directly in place of c-forward-token-2.
92720
927212017-10-22  Paul Eggert  <eggert@cs.ucla.edu>
92722
92723	Avoid unnecessary rounding errors in timestamps
92724
92725	Avoid the rounding errors of float-time when it’s easy.  E.g.,
92726	replace (< (float-time a) (float-time b)) with (time-less-p a b).
92727	* lisp/desktop.el (desktop-save):
92728	* lisp/ecomplete.el (ecomplete-add-item):
92729	* lisp/epg.el (epg-wait-for-completion):
92730	* lisp/files.el (dir-locals-find-file, dir-locals-read-from-dir):
92731	* lisp/image-dired.el (image-dired-get-thumbnail-image)
92732	(image-dired-create-thumb-1):
92733	* lisp/info.el (info-insert-file-contents):
92734	* lisp/ls-lisp.el (ls-lisp-format-time):
92735	* lisp/net/ange-ftp.el (ange-ftp-file-newer-than-file-p)
92736	(ange-ftp-verify-visited-file-modtime):
92737	* lisp/net/rcirc.el (rcirc-ctcp-sender-PING):
92738	* lisp/textmodes/remember.el (remember-store-in-mailbox):
92739	* lisp/url/url-cookie.el (url-cookie-expired-p):
92740	Bypass float-time to avoid rounding errors.
92741
92742	* lisp/files.el (dir-locals-find-file):
92743
927442017-10-22  Paul Eggert  <eggert@cs.ucla.edu>
92745
92746	Fix xdg timestamp error on 32-bit Emacs
92747
92748	* lisp/xdg.el (xdg-thumb-mtime): Return an Emacs timestamp,
92749	not an integer.  This avoids signaling an error on 32-bit
92750	Emacs, where timestamps typically do not fit into fixnums
92751	(Bug#28921).
92752
927532017-10-22  John Williams  <jrw@pobox.com>  (tiny change)
92754
92755	Test that advice doesn't trigger bytecomp warnings (Bug#28803)
92756
92757	* test/lisp/emacs-lisp/bytecomp-tests.el
92758	(bytecomp-tests--test-no-warnings-with-advice): New test.
92759
927602017-10-21  Noam Postavsky  <npostavs@gmail.com>
92761
92762	Another fix for unsafe directory error message (Bug#865)
92763
92764	* lisp/server.el (server-ensure-safe-dir): Put file owner's uid, not
92765	current user's for the wrong owner case.  Show expanded file name in
92766	error message.
92767
927682017-10-21  Noam Postavsky  <npostavs@gmail.com>
92769
92770	Handle https url for debbugs mbox (Bug#28831)
92771
92772	In 2017-09-13 "Prefer HTTPS to FTP and HTTP in documentation",
92773	gnus-bug-group-download-format-alist was updated to use https for the
92774	debbugs.gnu.org mbox links, but gnus-read-ephemeral-bug-group assumed
92775	http links.
92776	* lisp/gnus/gnus-group.el (gnus-read-ephemeral-bug-group): Use
92777	url-parse functions to get the host name, instead of ad-hoc regexps.
92778
927792017-10-21  Noam Postavsky  <npostavs@gmail.com>
92780
92781	Ignore string properties when saving eshell history (Bug#28700)
92782
92783	* lisp/eshell/em-hist.el (eshell-write-history): Remove properties
92784	before inserting history strings.
92785	(eshell-read-history): Remove obsolete comment.
92786	* test/lisp/eshell/em-hist-tests.el (eshell-write-readonly-history):
92787	New test.
92788
927892017-10-21  Michael Albinus  <michael.albinus@gmx.de>
92790
92791	Fix Bug#28889
92792
92793	* lisp/net/tramp.el: Change autoload cookie to tramp-autoload cookie.
92794	(tramp-completion-file-name-regexp-default)
92795	(tramp-completion-file-name-handler-alist)
92796	(tramp-completion-file-name-handler): Remove autoload cookie.
92797	(tramp-initial-completion-file-name-regexp): Remove.
92798	(tramp-autoload-file-name-regexp): New defconst.
92799	(tramp-register-autoload-file-name-handlers): Use it.
92800	(with-parsed-tramp-file-name): Adapt docstring.  Compute
92801	`tramp-file-name' slots.  (Bug#28889)
92802
928032017-10-21  Glenn Morris  <rgm@gnu.org>
92804
92805	Update describe-function for recent Fdocumentation change
92806
92807	* lisp/help-fns.el (describe-function-1):
92808	Handle Fdocumentation returning either void or invalid.
92809
928102017-10-21  Charles A. Roelli  <charles@aurox.ch>
92811
92812	Make flymake's mouse-wheel interaction portable (Bug#28732)
92813
92814	* lisp/progmodes/flymake.el (flymake--mode-line-format): Bind
92815	'mouse-wheel-down-event' and 'mouse-wheel-up-event' instead of
92816	'mouse-4' and 'mouse-5'.  Update the tooltip text accordingly, and
92817	remove a stray newline in it.
92818
928192017-10-21  Nick Helm  <nick@tenpoint.co.nz>
92820
92821	Prevent eldoc from changing the mode line
92822
92823	* lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message): Don't
92824	change the mode line if it is not displayed.  (Bug#28697)
92825
928262017-10-21  Eli Zaretskii  <eliz@gnu.org>
92827
92828	Fix doc strings in simple.el
92829
92830	* lisp/simple.el (shell-command-saved-pos)
92831	(region-extract-function, region-bounds): Doc fixes.  (Bug#28609)
92832
928332017-10-21  Phil Sainty  <psainty@orcon.net.nz>
92834
92835	Avoid creating inconsistent buffer states in term-char-mode
92836
92837	* lisp/term.el (term-mode, term-char-mode, term-line-mode)
92838	(term-emulate-terminal): Make buffer read-only in 'term-char-mode',
92839	except for the process filter's output.  Use 'read-only-mode-hook' to
92840	track and restore the user-set state of 'buffer-read-only' for
92841	'term-line-mode'.  (Bug#24837)
92842	(term-char-mode-buffer-read-only): New user option.
92843	(term-line-mode-buffer-read-only): New buffer-local variable.
92844	(term-line-mode-buffer-read-only-update): New function.
92845	(term-char-mode, term-line-mode): Use 'term-set-goto-process-mark'
92846	in pre-command-hook, and 'term-goto-process-mark-maybe' in
92847	post-command-hook to counter-act unexpected changes to point when
92848	using 'term-char-mode'.
92849	(term-char-mode-point-at-process-mark): New user option.
92850	(term-goto-process-mark): New buffer-local variable.
92851	(term-set-goto-process-mark): New function.
92852	(term-goto-process-mark-maybe): New function.
92853	(term-process-mark): New function.
92854
92855	* etc/NEWS: Mention the new behavior and user options.
92856
928572017-10-21  Bahodir Mansurov  <bahodir@mansurov.org>  (tiny change)
92858
92859	New input method 'usbek-cyrillic'
92860
92861	* lisp/leim/quail/cyrillic.el (uzbek-cyrillic): New input method.
92862	(Bug#28848)
92863
92864	* etc/NEWS: Mention the new input method.
92865
928662017-10-21  Eli Zaretskii  <eliz@gnu.org>
92867
92868	Document 'minibuffer-with-setup-hook'
92869
92870	* doc/lispref/minibuf.texi (Minibuffer Misc): Document
92871	minibuffer-with-setup-hook.  (Bug#28877)
92872
928732017-10-21  Paul Eggert  <eggert@cs.ucla.edu>
92874
92875	Simplify make-progress-reporter vs float-time
92876
92877	* lisp/subr.el (make-progress-reporter): Remove no-longer-needed
92878	doc and code for the case where float-time is not supported,
92879	since float-time is always present now.
92880
928812017-10-21  Paul Eggert  <eggert@cs.ucla.edu>
92882
92883	Fix two more minor Gnus typos
92884
92885	* lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
92886	The old code had two minor bugs: first, it multiplied by 1/65536
92887	instead of by 1/86400.  Second, it called current-time twice and
92888	glued part of the two results together, resulting in a race.
92889	Fix both bugs by simplifying the code and using
92890	time-to-number-of-days.
92891
928922017-10-21  Paul Eggert  <eggert@cs.ucla.edu>
92893
92894	Fix two minor Gnus typos
92895
92896	* lisp/gnus/gnus-sum.el (gnus-summary-import-article):
92897	Remove unused local, and fix use of local that was never assigned to.
92898
928992017-10-21  Glenn Morris  <rgm@gnu.org>
92900
92901	Tweak Fdocumentation's error for an undefined function
92902
92903	* src/doc.c (Fdocumentation): Restore the pre-25 behavior
92904	of signaling a void-function error for an undefined function.
92905	This seems cleaner than Emacs 25's "invalid-function: nil" error,
92906	which was (probably) an unintended consequence of changes to
92907	Findirect_function.
92908
929092017-10-21  Glenn Morris  <rgm@gnu.org>
92910
92911	Tweak format of list of old files in NEWS header
92912
92913	* etc/NEWS: Stop list of old NEWS files growing without limit.
92914	* admin/admin.el (set-version): Handle either NEWS header format.
92915
929162017-10-20  Stefan Monnier  <monnier@iro.umontreal.ca>
92917
92918	* lisp/help-fns.el (describe-function-1):
92919	Fix help-fns-test-dangling-alias.  (Bug#28918)
92920
92921	(cherry picked from commit e1d42f8f4a945669ff8b5159a569cb4b18f56e18)
92922
929232017-10-20  Glenn Morris  <rgm@gnu.org>
92924
92925	Fix flymake's loading of subr-x
92926
92927	* lisp/progmodes/flymake.el, test/lisp/progmodes/flymake-tests.el:
92928	No need to load subr-x at run-time.
92929
929302017-10-20  Michael Albinus  <michael.albinus@gmx.de>
92931
92932	Fix Bug#28896
92933
92934	* lisp/net/tramp-adb.el (tramp-adb-handle-rename-file):
92935	* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
92936	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file): Handle FILENAME
92937	being a directory.  (Bug#28896)
92938
92939	* test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
92940	(tramp-test12-rename-file): Test also FILENAME being a directory.
92941
929422017-10-20  João Távora  <joaotavora@gmail.com>
92943
92944	Skip a Flymake test for old gcc versions
92945
92946	Fixes: 28906
92947
92948	* test/lisp/progmodes/flymake-tests.el
92949	(different-diagnostic-types): Skip this test for gcc versions
92950	< 5.
92951
929522017-10-20  Eli Zaretskii  <eliz@gnu.org>
92953
92954	Make :align-to account for display-line-numbers
92955
92956	These changes also update the various bundled packages to use
92957	new feature, and better support customizations of the line-number
92958	face.
92959	* src/xdisp.c (calc_pixel_width_or_height): Improve commentary.
92960	Make :align-to count from the end of the line-number display when
92961	the offset or the width form reference that of the text area.
92962	(Bug#28855)
92963
92964	* src/indent.c (Fline_number_display_width): Implement support for
92965	the PIXELWISE argument being 'columns'.  Update the doc string.
92966	(syms_of_indent): New symbol 'columns'.
92967
92968	* lisp/ruler-mode.el (ruler-mode-window-col, ruler-mode-ruler):
92969	Call line-number-display-width with last argument 'columns'.
92970
92971	* lisp/proced.el (proced-header-line): Call
92972	line-number-display-width with 2nd arg 'columns', which also fixes
92973	a problem when display-line-numbers is nil.
92974
92975	* lisp/emacs-lisp/tabulated-list.el
92976	(tabulated-list-line-number-width): Call line-number-display-width
92977	with 2nd arg 'columns.
92978	(tabulated-list-entry-lnum-width): Remove unneeded defvar.
92979	(tabulated-list-print, tabulated-list-print-entry): No need to
92980	account for the value of tabulated-list-entry-lnum-width.
92981	(tabulated-list--current-lnum-width): New defvar.
92982	(tabulated-list-watch-line-number-width): New function.
92983	(tabulated-list-mode): Bind tabulated-list--current-lnum-width
92984	locally, and set up tabulated-list-watch-line-number-width as
92985	pre-redisplay-functions hook.
92986
92987	* doc/lispref/display.texi (Size of Displayed Text): Document the
92988	'columns' value of the PIXELWISE argument.
92989	(Pixel Specification): Update and improve the documentation of the
92990	supported forms.
92991
929922017-10-20  João Távora  <joaotavora@gmail.com>
92993
92994	Augment Flymake API for third-party extensions
92995
92996	See
92997	https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00619.html
92998
92999	* doc/misc/flymake.texi (Flymake error types): Rewrite
93000	example.
93001	(Flymake utility functions): Augment with new API.
93002
93003	* lisp/progmodes/flymake.el (flymake-diagnostics): New function.
93004	(flymake--diag-accessor): New helper macro.
93005	(flymake-diagnostic-buffer, flymake-diagnostic-text)
93006	(flymake-diagnostic-beg, flymake-diagnostic-end)
93007	(flymake-diagnostic-backend): Accessors for diagnostic objects.
93008	(flymake--overlays): Use flymake-diagnostic property.
93009	(flymake--highlight-line): Simplify.  Only set
93010	flymake-diagnostic property.
93011	(flymake--handle-report, flymake-goto-next-error): Use
93012	flymake-diagnostic property.
93013	(flymake-show-diagnostic): Use diagnostic object.
93014	(flymake--diagnostics-buffer-entries): Use
93015	flymake-diagnostics.
93016
930172017-10-20  Glenn Morris  <rgm@gnu.org>
93018
93019	Improve treatment of Fortran's "class default"
93020
93021	* lisp/progmodes/f90.el (f90-start-block-re, f90-no-block-limit):
93022	Handle "class default".  (Bug#28786)
93023	* test/automated/f90.el (f90-test-bug25039): Add "class default".
93024
930252017-10-20  João Távora  <joaotavora@gmail.com>
93026
93027	Flymake backends must check proc obsoleteness in source buffer
93028
93029	Flymake backends that rely on sentinels running asynchronously and
93030	checking buffer-local variables that hold running processes should
93031	check for obsoleteness in the correct buffers, otherwise a (harmless)
93032	warning might be triggered.
93033
93034	* doc/misc/flymake.texi (An annotated example backend):
93035	Check buffer-local proc in the current buffer.
93036
93037	* lisp/progmodes/elisp-mode.el (elisp-flymake-byte-compile):
93038	Check buffer-local proc in the current buffer.
93039
930402017-10-19  Michael Albinus  <michael.albinus@gmx.de>
93041
93042	Skip an rsync test in tramp-tests.el
93043
93044	* test/lisp/net/tramp-tests.el (tramp-test17-dired-with-wildcards):
93045	Skip for "rsync".
93046
930472017-10-19  Martin Rudalics  <rudalics@gmx.at>
93048
93049	On Windows default a frame's border width to zero (Bug#28873)
93050
93051	* src/w32fns.c (Fx_create_frame): Default `border-width' to zero
93052	as everywhere else, see Bug#28873.
93053
930542017-10-19  Paul Eggert  <eggert@cs.ucla.edu>
93055
93056	Spelling fixes
93057
93058	* lisp/cedet/semantic/analyze/refs.el:
93059	(semantic-analyze-proto-impl-toggle): Fix recently-introduced
93060	misspelling of pop-to-buffer-same-window.
93061
930622017-10-19  Bastian Beischer  <bastian.beischer@gmail.com>  (tiny change)
93063
93064	Use pop-to-buffer-same-window instead of switch-to-buffer
93065
93066	* lisp/cedet/semantic/decorate/include.el
93067	(semantic-decoration-include-visit):
93068	Use pop-to-buffer-same-window instead of switch-to-buffer
93069	(bug#28645).
93070
93071	* lisp/cedet/semantic/analyze/refs.el
93072	(semantic-analyze-proto-impl-toggle): Same.
93073
93074	* lisp/cedet/semantic/senator.el (senator-go-to-up-reference):
93075	Same.
93076
93077	* lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-visit):
93078	Same.
93079
93080	* lisp/cedet/semantic/complete.el (semantic-complete-jump):
93081	Same.
93082
930832017-10-18  Eli Zaretskii  <eliz@gnu.org>
93084
93085	Fix the MSDOS build.
93086
93087	* msdos/sed1v2.inp (GETADDRINFO_A_LIBS, LIBLCMS2, XDBE_LIBS)
93088	(XDBE_FLAGS, HYBRID_MALLOC, LIBSYSTEMD_CFLAGS)
93089	(LIBSYSTEMD_LIBS): Edit to empty.
93090	(LIBRESOLV, DEPFLAGS, MKDEPDIR, YMF_PASS_LDFLAGS)
93091	(PRE_EDIT_LDFLAGS, POST_EDIT_LDFLAGS): Remove editing.
93092	Remove editing of lines that are no longer present in
93093	src/Makefile.in.
93094	* msdos/sed2v2.inp (NEED_MKTIME_INTERNAL)
93095	(NEED_MKTIME_WORKING): Define to 1.
93096	(HAVE_STRUCT_DIRENT_D_TYPE): Define to 1 for
93097	DJGPP >= 2.05.
93098	(HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 1.
93099	Define PACKAGE_VERSION, not VERSION.
93100	(FLEXIBLE_ARRAY_MEMBER): Define to empty.
93101	(HAVE_DECL_*_UNLOCKED): Define to 0.
93102	(HAVE___BUILTIN_FRAME_ADDRESS): Define to 1.
93103	(PENDING_*): Don't define, as Gnulib no longer supports that.
93104	Instead, define _IOERR as it is in libc/file.h.
93105	* msdos/sed3v2.inp: Use $(CURDIR) instead of $(shell cd) to
93106	determine the current directory.
93107	(UPDATE_MANIFEST, UTILITIES): Don't edit.
93108	* msdos/sedlisp.inp (FIND_DELETE): Edit to "-delete".
93109	* msdos/sedlibmk.inp (AUTO_DEPEND): Define to yes.
93110	(HYBRID_MALLOC): Edit to empty.
93111	(am__cd): Don't edit.
93112	(../config.status): Replaces $(top_builddir)/config.status.
93113	Define OMIT_GNULIB_MODULE_foo = true for modules not built for
93114	MS-DOS.  Convert GL_GENERATE_xxx_H_TRUE and
93115	GL_GENERATE_xxx_H_FALSE into values of GL_GENERATE_xxx_H.
93116	* msdos/mainmake.v2 (src): Use 'compile-one-process', and make
93117	the command line shorter to fit into 126-char limit of
93118	command.com.
93119	* config.bat: Generate src/deps/*.d files.  Rename more files
93120	like djtar on plain DOS would.
93121	Don't rename src/dir.h: it is long gone.  Edit
93122	lib/gnulib.mk.in using the same scripts as for
93123	lib/Makefile.in.
93124	* msdos/depfiles.bat: Create *.d files, not *.Po.
93125
93126	* src/thread.c (Fmake_thread) [!THREADS_ENABLED]: Improve the
93127	error message.
93128	* src/thread.h [MSDOS]: Include <signal.h>.
93129	* src/sysselect.h (select) [MSDOS]: Undefine, to avoid
93130	compilation errors.
93131	* src/sysdep.c (block_interrupt_signal, restore_signal_mask):
93132	Expose to MSDOS build.
93133	* src/process.c (update_processes_for_thread_death)
93134	[!subprocess]: No-op implementation.
93135	[HAVE_SETRLIMIT]: Move inclusion of sys/resource.h and
93136	declaration of nofile_limit outside "#ifdef subprocesses", as
93137	it's needed for MSDOS.
93138	* src/msdos.c (faccessat): Declare fullname[].
93139	* src/msdos.h (ENOTSUP): Define to be identical to ENOSYS.
93140	Include termhooks.h.
93141	* src/conf_post.h [WINDOWSNT]: Include ms-w32.h only on
93142	WINDOWSNT, not DOS_NT.
93143
93144	* admin/admin.el (set-version): Set version on PACKAGE_VERSION.
93145
931462017-10-18  Eli Zaretskii  <eliz@gnu.org>
93147
93148	Fix line number display after 'widen'
93149
93150	* src/xdisp.c (maybe_produce_line_number): Don't use data cached
93151	by line-number-mode on the first redisplay after the buffer is
93152	widened.  (Bug#28879)
93153
931542017-10-18  Alan Third  <alan@idiocy.org>
93155
93156	Remove resizable attribute on macOS undecorated frames (bug#28512)
93157
93158	* src/nsterm.m (FRAME_DECORATED_FLAGS): Remove Cocoa specific #define.
93159	(initFrameFromEmacs): Remove Cocoa specific window style attributes.
93160
931612017-10-18  Martin Rudalics  <rudalics@gmx.at>
93162
93163	Fix handling of `border-width' in `frameset--restore-frame' (Bug#28873)
93164
93165	* lisp/frameset.el (frameset--restore-frame): Don't process
93166	`border-width' parameter via ‘modify-frame-parameters’
93167	(Bug#28873).
93168
931692017-10-18  Tino Calancha  <tino.calancha@gmail.com>
93170
93171	Mention how to send CC to > 1 address in a bug report
93172
93173	* admin/notes/bugtracker (* More detailed information):
93174	mention how to CC to more than 1 address (Bug#28833).
93175
931762017-10-18  Paul Eggert  <eggert@cs.ucla.edu>
93177
93178	Improve format-time-string doc
93179
93180	* doc/lispref/os.texi (Time Parsing): Fix some errors in the
93181	documentation for format-time-string.  Document ^, #, %s, and %z
93182	with colons.  Say that unrecognized sequences are output as-is.
93183	* src/editfns.c (Fformat_time_string): %S can stand for 60.
93184	Also mention unrecognized sequences.
93185
931862017-10-17  Eli Zaretskii  <eliz@gnu.org>
93187
93188	Improve documentation of 'line-number-display-width'
93189
93190	* doc/lispref/display.texi (Size of Displayed Text): Document the
93191	additional 2 columns used for line-number display.
93192
93193	* src/indent.c (Fline_number_display_width): Doc fix.  (Bug#28248)
93194
931952017-10-17  İ. Göktuğ Kayaalp  <self@gkayaalp.com>
93196
93197	Implement vc-default-dir-extra-headers for vc-rcs
93198
93199	Add a do-nothing implementation for vc-rcs to suppress the message which
93200	the default function adds to the vc-dir buffer (Bug#28570).
93201	* lisp/vc/vc-rcs.el (vc-rcs-dir-extra-headers): New function.
93202
932032017-10-17  Martin Rudalics  <rudalics@gmx.at>
93204
93205	In NEWS give advice on use of `switch-to-buffer' (Bug#28645)
93206
93207	* etc/NEWS: Mention that applications should prefer
93208	`pop-to-buffer-same-window' to `switch-to-buffer'.  (Bug#28645)
93209
932102017-10-17  Tino Calancha  <tino.calancha@gmail.com>
93211	    Noam Postavsky  <npostavs@gmail.com>
93212
93213	Dont update primary selection with winner-undo
93214
93215	* lisp/winner.el (winner-set):
93216	Dont update primary selection when select-enable-primary
93217	is non-nil (Bug#28631).
93218
932192017-10-17  Paul Eggert  <eggert@cs.ucla.edu>
93220
93221	Work around ImageMagick bug 825
93222
93223	This should fix several bugs reported recently against Emacs
93224	(Bug#28518, Bug#28626, Bug#28632, Bug#28633, Bug#28770).
93225	* src/image.c (imagemagick_load_image):
93226	Do not call MagickWandTerminus.
93227
932282017-10-17  Noam Postavsky  <npostavs@gmail.com>
93229
93230	Document rectangle-preview option more (Bug#27974)
93231
93232	* lisp/rect.el (string-rectangle):
93233	* etc/NEWS.25: Mention `rectangle-preview'.
93234
932352017-10-17  Paul Eggert  <eggert@cs.ucla.edu>
93236
93237	Do not reject https://gnu.org in commit messages
93238
93239	* build-aux/git-hooks/commit-msg: Do not reject commit messages
93240	containing http: or ftp: URLs to gnu.org or fsf.org.  Instead,
93241	rewrite the messages to use https: URLs.
93242
932432017-10-16  Gemini Lasswell  <gazally@runbox.com>
93244
93245	Fix Edebug spec for cl-defun (bug#24255)
93246
93247	* lisp/emacs-lisp/cl-macs.el: Modify the Edebug spec for
93248	`cl-lambda-list' to support destructuring argument lists.
93249	(cl-defun, cl-defmacro): Fix spelling errors in docstrings.
93250	* lisp/textmodes/rst.el: Remove alternate version of Edebug
93251	specs for `cl-lambda-list' and `cl-type-spec'.
93252
932532017-10-16  Eli Zaretskii  <eliz@gnu.org>
93254
93255	Fix errors in kmacro.el post-command-hook
93256
93257	* lisp/kmacro.el (kmacro-step-edit-active): Initialize to nil to
93258	avoid 'void-variable' errors.  (Bug#28818)
93259	* test/lisp/kmacro-tests.el
93260	(kmacro-tests-step-edit-cleans-up-hook): Now succeeds.  (Bug#18708)
93261
932622017-10-16  Eli Zaretskii  <eliz@gnu.org>
93263
93264	Fix range-error in image-dired.el
93265
93266	* lisp/image-dired.el (image-dired-create-thumb-1): Avoid
93267	overflowing an Emacs integer on 32-bit hosts.  (Bug#28809)
93268
932692017-10-16  Eli Zaretskii  <eliz@gnu.org>
93270
93271	Fix 'line-number-display-width' in hscrolled windows
93272
93273	* src/indent.c (line_number_display_width): Make sure a line
93274	number is generated even when the first line of the window is
93275	completely hscrolled out of view.  (Bug#28854)
93276
932772017-10-16  Michael Albinus  <michael.albinus@gmx.de>
93278
93279	Fix error in tramp-smb-handle-insert-directory
93280
93281	* lisp/net/tramp-smb.el (tramp-smb-handle-insert-directory):
93282	Insert size information only when FULL-DIRECTORY-P is non-nil.
93283
932842017-10-16  Andy Moreton  <andrewjmoreton@gmail.com>
93285
93286	Don't reject PBM header whitespace unnecessarily
93287
93288	* lisp/image.el (image-type-header-regexps):
93289	Allow two or more CRs or LFs in initial whitespace sequences.  See:
93290	http://netpbm.sourceforge.net/doc/pbm.html
93291
932922017-10-16  Paul Eggert  <eggert@cs.ucla.edu>
93293
93294	Fix regression in display of PPM images
93295
93296	Problem reported by Roland Winkler (Bug#28824#35).
93297	Based on a patch proposed by Andy Moreton (Bug#28824#38).
93298	* src/image.c (pbm_scan_index): New function.
93299	(pbm_load): Use it to decode raw data correctly when its top bit
93300	is set.
93301
933022017-10-16  Eric Abrahamsen  <eric@ericabrahamsen.net>
93303
93304	Require subr-x when compiling nnimap.el
93305
93306	* lisp/gnus/nnimap.el (require): For the when-let* macro.
93307
933082017-10-15  Noam Postavsky  <npostavs@gmail.com>
93309
93310	Fix ert-test finding by symbol (Bug#28849)
93311
93312	In 2017-07-28 "* lisp/subr.el (define-symbol-prop): New function", the
93313	symbol used for ert tests in load-history was changed from
93314	`ert-deftest' to `ert--test', but a couple of other places were not
93315	updated accordingly.
93316	* lisp/emacs-lisp/ert.el (ert-find-test-other-window): Pass
93317	`ert--test' as the TYPE to `find-function-do-it'.
93318	(top-level): Use `ert--test' as the key to the
93319	`find-function-regexp-alist' entry.
93320
933212017-10-15  Noam Postavsky  <npostavs@gmail.com>
93322
93323	Don't remember old debugger window (Bug#17882)
93324
93325	* lisp/emacs-lisp/debug.el (debug): Unset debugger-previous-window
93326	when `debugger-will-be-back' is nil.
93327
933282017-10-15  Noam Postavsky  <npostavs@gmail.com>
93329
93330	Disable python native completion on w32 (Bug#28580)
93331
93332	* lisp/progmodes/python.el
93333	(python-shell-completion-native-disabled-interpreters): For windows-nt
93334	systems, put an empty string to match interpreters.
93335
933362017-10-15  Noam Postavsky  <npostavs@gmail.com>
93337
93338	Let select-frame-by-name choose any frame when called from lisp (Bug#25521)
93339
93340	* lisp/frame.el (select-frame-by-name): Choose from the whole list of
93341	frames in the non-interactive part, if not found on the current
93342	display.
93343
933442017-10-15  Eli Zaretskii  <eliz@gnu.org>
93345
93346	* lisp/dired-aux.el (dired-create-directory): Doc fix.
93347
933482017-10-15  Eli Zaretskii  <eliz@gnu.org>
93349
93350	Avoid compilation warnings in optimized builds
93351
93352	* src/process.c (Fmake_network_process):
93353	* src/image.c (xbm_scan, gif_load):
93354	* src/fileio.c (Frename_file):
93355	* src/data.c (Fmake_local_variable):
93356	* src/buffer.c (fix_start_end_in_overlays):
93357	* lib-src/etags.c (process_file_name): Mark variables with UNINIT
93358	to avoid compiler warnings in optimized builds.
93359
933602017-10-15  K. Handa  <handa@gnu.org>
93361
93362	Improve customization of arabic-shaper-ZWNJ-handling.
93363
93364	Make the effect of customizing arabic-shaper-ZWNJ-handling appear
93365	immediately.
93366	* lisp/language/misc-lang.el (arabic-shaper-ZWNJ-handling): Add :set
93367	value.
93368	* src/composite.c (Fclear_composition_cache): New function.
93369	(syms_of_composite): Defsubr it.
93370
933712017-10-15  Charles A. Roelli  <charles@aurox.ch>
93372
93373	Improve customization type of 'mouse-drag-and-drop-region'
93374
93375	* lisp/mouse.el (mouse-drag-and-drop-region): Provide a more
93376	precise customization type.
93377
933782017-10-15  Paul Eggert  <eggert@day>
93379
93380	Encourage https: in commit messages
93381
93382	* CONTRIBUTE: Prefer https: when citing.
93383	* build-aux/git-hooks/commit-msg:
93384	Diagnose http: and ftp: URLs to FSF or GNU hosts.
93385
933862017-10-14  Martin Rudalics  <rudalics@gmx.at>
93387
93388	Fix wording in Elisp manual's child frames section (Bug#28819)
93389
93390	* doc/lispref/frames.texi (Child Frames): Fix wording (Bug#28819).
93391
933922017-10-14  Eli Zaretskii  <eliz@gnu.org>
93393
93394	Another fix for C mode fontification of w32 source files
93395
93396	* .dir-locals.el (c-mode) <c-noise-macro-names>: Add
93397	"CALLBACK", to correctly fontify functions with this attribute.
93398
933992017-10-14  Eli Zaretskii  <eliz@gnu.org>
93400
93401	Fix fontification of ALIGN_STACK functions
93402
93403	* .dir-locals.el (c-mode) <c-noise-macro-names>: Add
93404	"ALIGN_STACK", to correctly fontify functions with this attribute.
93405
934062017-10-14  Eli Zaretskii  <eliz@gnu.org>
93407
93408	Make sure thread stack is properly aligned on MS-Windows
93409
93410	* src/systhread.c: Include w32term.h instead of windows.h.
93411	(w32_beginthread_wrapper): Add ALIGN_STACK attribute, to ensure
93412	the thread's stack is correctly aligned.
93413	* src/w32term.h (ALIGN_STACK): Update commentary.
93414
934152017-10-14  Paul Eggert  <eggert@cs.ucla.edu>
93416
93417	Do not under-align pseudovectors
93418
93419	Problem reported by Fabrice Popineau in:
93420	https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00357.html
93421	Also see diagnosis by Eli Zaretskii in:
93422	https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00476.html
93423	* src/alloc.c (vector_alignment):
93424	Now a multiple of alignof (max_align_t).
93425
934262017-10-13  Simen Heggestøyl  <simenheg@gmail.com>
93427
93428	Fix indentation bug in multi-line CSS selectors
93429
93430	* lisp/textmodes/css-mode.el (css--colon-inside-selector-p): Fix
93431	indentation of multi-line CSS selectors that include both a
93432	pseudo-class and parenthesis.
93433
93434	* test/manual/indent/css-mode.css: Add test for the above change.
93435
934362017-10-13  Andreas Schwab  <schwab@linux-m68k.org>
93437
93438	gnutls_mac_get_nonce_size has been added in gnutls 3.3
93439
93440	* src/gnutls.c (HAVE_GNUTLS_MAC_GET_NONCE_SIZE)
93441	[GNUTLS_VERSION_NUMBER >= 0x030300]: Define.
93442	(gnutls_mac_get_nonce_size): Depend on
93443	HAVE_GNUTLS_MAC_GET_NONCE_SIZE.
93444	(Fgnutls_macs): Use 0 for :mac-algorithm-noncesize if
93445	!HAVE_GNUTLS_MAC_GET_NONCE_SIZE.
93446
934472017-10-13  Paul Eggert  <eggert@cs.ucla.edu>
93448
93449	* CONTRIBUTE: Suggest American English.
93450
934512017-10-12  Eli Zaretskii  <eliz@gnu.org>
93452
93453	Fix this-command-keys for "M-x foo" commands
93454
93455	* src/keyboard.c (Fset__this_command_keys): Don't assume KEYS is a
93456	unibyte string.  (Bug#28798)
93457
934582017-10-12  Paul Eggert  <eggert@cs.ucla.edu>
93459
93460	Let rename-file rename dirs across filesystems
93461
93462	Problem diagnosed by Andreas Schwab (Bug#28792#65).
93463	This fixes a bug that I introduced in
93464	2017-09-10T22:39:24@eggert@cs.ucla.edu
93465	"Fix race with rename-file etc. with dir NEWNAME".
93466	* src/fileio.c (Frename_file): Copy a source directory across
93467	file system boundaries even if its name does not end in slash.
93468
934692017-10-12  João Távora  <joaotavora@gmail.com>
93470
93471	Simplify Flymake user documentation
93472
93473	Fix some confusing parts of Flymake user documentation, like a
93474	repeated listing of situations leading to a syntax check.
93475	Documentation is now divided into three chapters only: "Using
93476	Flymake", "Extending Flymake", and a chapter for the legacy backend.
93477
93478	Obsolete mention of "errors" and "lines" is replaced by
93479	"diagnostics/problems" and "regions" where appropriate.
93480
93481	* doc/misc/flymake.texi (Overview of Flymake): Delete chapter.
93482	(Using Flymake): Merge with chapter "Overview of Flymake".
93483	(Installing Flymake): Delete chapter.
93484	(Flymake mode, Running the syntax check)
93485	(Navigating to error lines): Delete sections.
93486	(Syntax check statuses): Review and augment with x-references.
93487	(Backend exceptions): Mention shortcut in menu.
93488
93489	* lisp/progmodes/flymake.el (flymake-menu): Tweak minor mode
93490	menu to not speak of "errors".
93491	(flymake-goto-next-error, flymake-goto-prev-error): Fix
93492	wording.
93493
934942017-10-12  Eli Zaretskii  <eliz@gnu.org>
93495
93496	* etc/NEWS: Mention the new version of Org.
93497
934982017-10-12  Noam Postavsky  <npostavs@gmail.com>
93499
93500	Don't use (format "%s" ...) for string copying (Bug#28774)
93501
93502	As of 2017-10-04 'Speed up (format "%s" STRING) and the like', (format
93503	"%s" STRING) no longer produces a new string.
93504	* lisp/ido.el (ido-completions): Use `copy-sequence' to make a new
93505	string, so that we can add text properties to (copies of) symbol
93506	names.
93507
935082017-10-11  Alan Third  <alan@idiocy.org>
93509
93510	Make frame-list-z-order on NS match Windows behavior (bug#28788)
93511
93512	* src/nsfns.m (Fns_frame_list_z_order): If terminal isn't a frame,
93513	ignore it rather than returning nil.
93514
935152017-10-11  Nicolas Petton  <nicolas@petton.fr>
93516
93517	Bump Emacs version to 26.0.90
93518
93519	* README:
93520	* configure.ac:
93521	* msdos/sed2v2.inp:
93522	* nt/README.W32: Bump Emacs version.
93523
935242017-10-11  Nicolas Petton  <nicolas@petton.fr>
93525
93526	Update authors.el
93527
93528	* admin/authors.el (authors-valid-file-names)
93529	(authors-renamed-files-alist): Additions.
93530
935312017-10-11  Nicolas Petton  <nicolas@petton.fr>
93532
93533	* admin/authors.el (authors-aliases): Additions.
93534
93535	* ChangeLog.3: Update.
93536
935372017-10-11  Radon Rosborough  <radon.neon@gmail.com>
93538
93539	Fix docstring style for 'functionp'
93540
93541	* src/eval.c (functionp): Make docstring start with verb.
93542	(Bug#28781)
93543
935442017-10-11  Michael Albinus  <michael.albinus@gmx.de>
93545
93546	Format shell commands in tramp.texi
93547
93548	* doc/misc/tramp.texi (Obtaining Tramp, Remote shell setup):
93549	Format shell commands better.
93550
935512017-10-10  João Távora  <joaotavora@gmail.com>
93552
93553	Unbreak the button in the Flymake diagnostics buffer again
93554
93555	Adding the 'keymap' property enabled RET but broke the mouse-action.
93556
93557	* lisp/progmodes/flymake.el
93558	(flymake--diagnostics-buffer-entries): Use 'action' instead of 'keymap'.
93559
935602017-10-10  Mark Oteiza  <mvoteiza@udel.edu>
93561
93562	Add mode map to Flymake diagnostic button
93563
93564	* lisp/progmodes/flymake.el (flymake--diagnostics-buffer-entries): Add
93565	keymap propery.
93566
935672017-10-10  João Távora  <joaotavora@gmail.com>
93568
93569	Tweak the Flymake diagnostics buffer again
93570
93571	* lisp/progmodes/flymake.el
93572	(flymake-diagnostics-buffer-mode-map): Don't bind [mouse-1].
93573	(flymake-show-diagnostic): Rename from
93574	flymake-show-diagnostic-at-point.  Really use another window.
93575	(flymake-goto-diagnostic): Rename from
93576	flymake-goto-diagnostic-at-point.
93577	(flymake--diagnostics-buffer-entries): Use a button just for
93578	the message bit.
93579
935802017-10-10  Mark Oteiza  <mvoteiza@udel.edu>
93581
93582	Simplify Flymake diagnostics buffer UX
93583
93584	Don't create text-buttons unnecessarily, just bind RET and SPC in the
93585	diagnostics buffer to a command that figures out which diagnostic it
93586	was invoked on.
93587
93588	* lisp/progmodes/flymake.el
93589	(flymake--diagnostics-buffer-mode-keymap): Renamed from
93590	flymake--diagnostics-buffer-button-keymap.
93591	(flymake-show-diagnostic-at-point): Don't take a button.
93592	(flymake-goto-diagnostic-at-point): Don't pass button to
93593	flymake-show-diagnostic-at-point.
93594	(flymake--diagnostics-buffer-entries): Simplify.
93595
935962017-10-10  João Távora  <joaotavora@gmail.com>
93597
93598	First stab at a Flymake diagnostics buffer
93599
93600	The diagnostics buffer summarizes the diagnostics of a buffer in a
93601	tabulated list and is permanently updated after each Flymake check.
93602
93603	* lisp/progmodes/flymake.el (flymake--handle-report): Call
93604	flymake-show-diagnostics-buffer under certain conditions.
93605	(flymake-menu, flymake--diagnostics-buffer-source)
93606	(flymake--diagnostics-buffer-button-keymap)
93607	(flymake-show-diagnostic-at-point)
93608	(flymake-goto-diagnostic-at-point)
93609	(flymake--diagnostics-buffer-entries)
93610	(flymake-diagnostics-buffer-mode)
93611	(flymake--diagnostics-buffer-name)
93612	(flymake-show-diagnostics-buffer): New definitions.
93613
936142017-10-10  João Távora  <joaotavora@gmail.com>
93615
93616	* etc/NEWS (Flymake): Rewrite entry.
93617
936182017-10-10  Eli Zaretskii  <eliz@gnu.org>
93619
93620	Improve the Flymake manual
93621
93622	* doc/misc/flymake.texi: Add a 'coding' cookie.  Add a
93623	@syncodeindex directive for @vindex.  Use 2 spaces between
93624	sentences.  Lower-case @cindex entries.
93625	(Overview of Flymake): Fix use of @itemize and @pxref.  Fix
93626	punctuation and markup.
93627	(Backend exceptions): Use @emph instead of @dfn.  Add more
93628	indexing.
93629	(Customizable variables, Extending Flymake): Improve wording.
93630	(Flymake error types): Fix usage of @itemize.  Improve wording.
93631	(Backend functions): Fix punctuation.  Fix markup.  Add a
93632	cross-reference to ELisp manual.
93633	(Flymake utility functions): Add a cross-reference to ELisp manual.
93634	(An annotated example backend): Fix punctuation and typos.
93635	(Flymake mode, Running the syntax check)
93636	(Navigating to error lines, Backend exceptions)
93637	(Customizable variables, Flymake error types, Backend functions)
93638	(Flymake utility functions, Proc customization variables)
93639	(Locating a master file, Locating the buildfile)
93640	(Starting the syntax check process, Parsing the output)
93641	(Interaction with other modes): Fix indexing.  Add index entries
93642	for functions, variables, and concepts.
93643
936442017-10-10  João Távora  <joaotavora@gmail.com>
93645
93646	Fix two Flymake bugs
93647
93648	* lisp/progmodes/flymake.el (define-fringe-bitmap): Protect
93649	against --without-x.
93650	(flymake--mode-line-format): Ensure mode-line's mouse-4 and mouse-5 work
93651	in their own windows.
93652
936532017-10-10  João Távora  <joaotavora@gmail.com>
93654
93655	Don't log "emergencies" in the Flymake legacy backend
93656
93657	* lisp/progmodes/flymake-proc.el (flymake-proc--panic)
93658	(flymake-proc-legacy-flymake): Don't log "emergencies"
93659
936602017-10-10  João Távora  <joaotavora@gmail.com>
93661
93662	Add full documentation on new Flymake API
93663
93664	Also, as a minor addition to this API, set flymake-text
93665	on the diagnostic overlay.  This enables a good example in
93666	the section "Customization Flymake annotations".
93667
93668	* doc/misc/flymake.texi (Overview of Flymake)
93669	(Syntax check statuses): Rework.
93670	(Backend exceptions): Rename from "Troubleshooting"
93671	(Customizable variables): Add flymake-start-on-flymake-mode. Rework.
93672	(Extending Flymake): Write chapter.
93673	(Customizing Flymake annotations, Flymake backends)
93674	(Flymake utility functions, An annotated example backend):
93675	New sections and subsections
93676
93677	* lisp/progmodes/flymake.el (flymake-diagnostic-functions)
93678	(flymake-diagnostic-types-alist): Rework docstring.
93679	(flymake--highlight-line): Set and use flymake-text property in overlay.
93680	(flymake-goto-next-error, flymake-goto-prev-error): Fix funny quotes.
93681
936822017-10-10  João Távora  <joaotavora@gmail.com>
93683
93684	Fix some Flymake docstrings and messages
93685
93686	* lisp/progmodes/flymake.el
93687	(flymake-start-on-flymake-mode): fix typo.
93688	(flymake-mode): Add docstring.
93689	(flymake-mode-line-format): Fix help-echo indications. mouse-2
93690	describes flymake-mode.
93691
936922017-10-10  João Távora  <joaotavora@gmail.com>
93693
93694	Make three new Flymake commands for debugging common problems
93695
93696	* lisp/progmodes/flymake.el (flymake-running-backends)
93697	(flymake-disabled-backends)
93698	(flymake-reporting-backends): Make interactive.
93699	(flymake--collect): Take optional arg.
93700
937012017-10-09  Nicolas Petton  <nicolas@petton.fr>
93702
93703	* admin/authors.el (authors-renamed-files-alist): addition.
93704
937052017-10-09  Paul Eggert  <eggert@cs.ucla.edu>
93706
93707	Fix PWD check on DOS_NT
93708
93709	* src/sysdep.c (get_current_dir_name_or_unreachable):
93710	Do not consider a file name like "a:b" to be absolute on DOS_NT.
93711
937122017-10-09  Paul Eggert  <eggert@cs.ucla.edu>
93713
93714	Fix unlikely overflows with wd length
93715
93716	* src/sysdep.c (get_current_dir_name_or_unreachable):
93717	Avoid integer overflow if working directory name is absurdly long.
93718	When allocating memory for getcwd, do not exceed MAXPATHLEN.
93719
937202017-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
93721
93722	* lisp/gnus/message.el: Improve last commit
93723
93724	(message-clone-locals): Don't mistakenly match other variables whose
93725	name happens to include "message-default-charset".
93726
937272017-10-09  Ken Olum  <kdo@cosmos.phy.tufts.edu>
93728
93729	Fix problems when editing raw undecoded message (Bug#28671)
93730
93731	* lisp/mail/rmailedit.el (rmail-cease-edit): If rmail-old-mime-state
93732	is set, meaning that we are editing the raw message, do not
93733	encode it again.  Delete old body after, not before, inserting
93734	new, to avoid moving marker at beginning of next message.
93735
937362017-10-09  Eli Zaretskii  <eliz@gnu.org>
93737
93738	Avoid encoding errors in message.el
93739
93740	* lisp/gnus/message.el (message-clone-locals): Don't clone
93741	message-default-charset.  (Bug#25645)
93742
937432017-10-09  Eli Zaretskii  <eliz@gnu.org>
93744
93745	Improve doc string and prompt of 'grep-read-files'
93746
93747	* lisp/progmodes/grep.el (grep-read-files): Clarify in the doc
93748	string and in the prompt that shell wildcards can be used.
93749	Suggested by Allen Li <vianchielfaura@gmail.com>.  (Bug#28615)
93750
937512017-10-09  Eli Zaretskii  <eliz@gnu.org>
93752
93753	Avoid assertion violations when line numbers are displayed
93754
93755	* src/xdisp.c (redisplay_window): Clear the window's desired glyph
93756	matrix before calling try_window with the same starting	point.
93757	This avoids assertion violations when switching from a buffer
93758	without line numbers to a buffer with line numbers.  (Bug28710)
93759
937602017-10-09  João Távora  <joaotavora@gmail.com>
93761
93762	Be lazy when starting Flymake checks
93763
93764	Don't start the check immediately if the buffer is not being
93765	displayed.  Wait until it is, using window-configuration-change-hook.
93766
93767	This enables the user to batch-enable flymake-mode on many buffers and
93768	not have that operation exhaust system resources for checking each
93769	one.  Likewise, an editing or save operation in a currently
93770	non-displayed buffer does not immediately start a check.
93771
93772	* lisp/progmodes/flymake.el (flymake-start-on-flymake-mode):
93773	Rename from flymake-start-syntax-check-on-find-file.
93774	(flymake-start-syntax-check-on-find-file): Obsolete alias for
93775	flymake-start-on-flymake-mode.
93776	(flymake-start): Redesign.  Affect the global post-command-hook
93777	and local window-configuraiton-change-hook.
93778	(flymake--schedule-timer-maybe)
93779	(flymake-after-change-function, flymake-after-save-hook): Pass
93780	t to flymake-start.
93781
93782	* test/lisp/progmodes/flymake-tests.el (flymake-tests--call-with-fixture)
93783	(dummy-backends, recurrent-backend): Start flymake check
93784	explicitly and immediately.
93785
937862017-10-09  Eli Zaretskii  <eliz@gnu.org>
93787
93788	Fix last change in frameset.el
93789
93790	* lisp/frameset.el (frameset-filter-font-param): Fix a thinko in
93791	filtering the 'font' parameter.  (Bug#17352)
93792
937932017-10-09  Martin Rudalics  <rudalics@gmx.at>
93794
93795	Describe how window dividers can replicate vertical borders (Bug#27830)
93796
93797	* doc/emacs/frames.texi (Scroll Bars): Describe how window
93798	dividers can be used to replicate vertical borders when scroll
93799	bars are disabled (Bug#27830).
93800	* doc/emacs/frames.texi (Window Dividers): Mention their use
93801	in replicating vertical borders.
93802
938032017-10-09  Alexander Gramiak  <agrambot@gmail.com>
93804
93805	Add line-number faces to the display-line-numbers group
93806
93807	See https://lists.gnu.org/r/emacs-devel/2017-10/msg00151.html
93808	and its resulting thread.
93809
93810	* lisp/display-line-numbers.el (display-line-numbers): Add to the
93811	convenience group.
93812	* lisp/faces.el (line-number):
93813	(line-number-current-line): Add to the display-line-numbers group.
93814
938152017-10-09  Alexander Gramiak  <agrambot@gmail.com>
93816
93817	Increase xterm click count only within double-click-fuzz
93818
93819	* lisp/xt-mouse.el (xterm-mouse-event): Save the last click's position
93820	and check it against the current click's position.  (Bug#28658)
93821
938222017-10-08  Alan Third  <alan@idiocy.org>
93823
93824	Change pause in fullscreen toggling for NS port (bug#28496)
93825
93826	* lisp/frame.el (toggle-frame-fullscreen): Replace sit-for with
93827	sleep-for, and reduce time.
93828
938292017-10-08  Michael Albinus  <michael.albinus@gmx.de>
93830
93831	Handle PARENTS properly in tramp-*-handle-make-directory
93832
93833	* lisp/net/tramp-adb.el (tramp-adb-handle-make-directory):
93834	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-make-directory):
93835	Handle PARENTS properly.
93836
93837	* test/lisp/net/tramp-tests.el (tramp-test13-make-directory):
93838	Extend test.
93839
938402017-10-08  Paul Eggert  <eggert@cs.ucla.edu>
93841
93842	Improve test for unreachable dirs
93843
93844	* src/sysdep.c (get_current_dir_name_or_unreachable):
93845	New function, with most of the old contents of
93846	emacs_get_current_dir_name.
93847	(emacs_get_current_dir_name): Use it.  Use a simpler
93848	test for unreachable directory strings, and also apply
93849	it to getcwd etc. (Bug#27871)
93850
938512017-10-08  Paul Eggert  <eggert@cs.ucla.edu>
93852
93853	* src/xsmfns.c (x_session_initialize): Fix memory leak.
93854
938552017-10-08  K. Handa  <handa@gnu.org>
93856
93857	New option for handling ZWNJ in Arabic text rendering
93858
93859	Provide a new option 'arabic-shaper-ZWNJ-handling' that controls how
93860	to display ZWNJ in Arabic text rendering (Bug#28339).
93861	* lisp/language/misc-lang.el: Register arabic-shape-gstring in
93862	composition-function-table.
93863	(arabic-shaper-ZWNJ-handling): New variable.
93864	(arabic-shape-log): New variable.
93865	(arabic-shape-gstring): New function.
93866	* lisp/composite.el (lgstring-remove-glyph): New function.
93867
938682017-10-08  Noam Postavsky  <npostavs@gmail.com>
93869
93870	Make python prettify symbols into a defvar (Bug#28713)
93871
93872	* lisp/progmodes/python.el (python-prettify-symbols-alist): New
93873	variable.
93874	(python--prettify-symbols-alist): Make into obsolete alias for
93875	`python-prettify-symbols-alist'.
93876
938772017-10-07  Alan Third  <alan@idiocy.org>
93878
93879	Fix fullscreen crash on macOS (bug#28496)
93880
93881	* lisp/frame.el (toggle-frame-fullscreen): Wait for animation to
93882	complete on macOS.
93883
938842017-10-07  Alan Third  <alan@idiocy.org>
93885
93886	Fix crash when closing fullscreen frame on macOS (bug#28661)
93887
93888	* src/nsterm.m (EmacsView::windowWillResize): Return new frame size
93889	unmodified if the frame isn't live.
93890
938912017-10-07  Michael Albinus  <michael.albinus@gmx.de>
93892
93893	Support gio tool in Tramp
93894
93895	"gvfs-<command>" utilities have been deprecated in GVFS 1.31.1.  We
93896	must use "gio <command>" tool instead.
93897
93898	* lisp/net/tramp-gvfs.el (tramp-gvfs-gio-mapping): New defconst.
93899	(tramp-gvfs-handle-file-notify-add-watch): Support also "gio monitor"
93900	(tramp-gvfs-gio-tool-p): New defun.
93901	(tramp-gvfs-send-command): Use it.  Call gio tool if available.
93902
939032017-10-07  João Távora  <joaotavora@gmail.com>
93904
93905	Fix flymake-goto-next-error when message has %-constructs
93906
93907	* lisp/progmodes/flymake.el (flymake-goto-next-error): Fix
93908	message call.  Add missing period in docstring.
93909
939102017-10-07  Piotr Trojanek  <piotr.trojanek@gmail.com>
93911
93912	* src/gnutls.c (syms_of_gnutls): Remove duplicated call to DEFSYM.
93913
939142017-10-07  Eli Zaretskii  <eliz@gnu.org>
93915
93916	Move the entry about 'format' into Incompatible Lisp Changes
93917
93918	* etc/NEWS: Move the entry about 'format' refraining from allocating
93919	new strings into Incompatible Lisp Changes.  (Bug#28625)
93920
939212017-10-07  Eli Zaretskii  <eliz@gnu.org>
93922
93923	Fix glitches in displaying TTY menus
93924
93925	* src/dispnew.c (update_frame_line): Accept an additional argument
93926	UPDATING_MENU_P; if non-zero, home the cursor before updating a
93927	frame's line.  All callers changed.
93928	(update_frame_1): Accept an additional argument UPDATING_MENU_P,
93929	and pass it to update_frame_line.  All callers changed.
93930	(update_frame_with_menu): Call update_frame_1 with last argument
93931	non-zero.  (Bug#17497)
93932
939332017-10-06  Gemini Lasswell  <gazally@runbox.com>
93934
93935	Create new Edebug spec for docstrings and use it in closures
93936
93937	Since (:documentation FORM) can be used to create a docstring
93938	when lexical-binding is on, allow for that possibility in Edebug
93939	specs (bug#24773).
93940	* lisp/emacs-lisp/edebug.el: Define an Edebug spec for docstrings
93941	called lambda-doc and modify the Edebug specs for defun and
93942	defmacro to use it.
93943	(edebug-instrument-function): Check for generic functions first,
93944	to fix bug where edebug-step-in didn't work on methods now that
93945	cl-defgeneric has an Edebug spec.
93946	* lisp/subr.el (lambda): Modify Edebug spec to use lambda-doc.
93947	* lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Add Edebug spec
93948	(bug#27747).
93949	(cl-defmethod): Use lambda-doc in Edebug spec.
93950	* lisp/emacs-lisp/cl-macs.el: Modify Edebug spec for
93951	cl-declarations-or-string to use lambda-doc, and modify Edebug
93952	spec for cl-lambda-expr to use cl-declarations-or-string.
93953	* lisp/emacs-lisp/pcase.el (pcase-lambda): Modify Edebug spec to
93954	use lambda-doc, as well as &define and def-body which are
93955	necessary for using Edebug on code wrapped by lambda.
93956	* lisp/emacs-lisp/generator.el (iter-defun, iter-lambda): Add
93957	Edebug specs.
93958
939592017-10-06  Eli Zaretskii  <eliz@gnu.org>
93960
93961	Avoid byte-compilation warnings in message.el
93962
93963	* lisp/gnus/message.el: Require 'subr-x' when compiling, to
93964	avoid compiler warnings.
93965
939662017-10-06  Paul Eggert  <eggert@cs.ucla.edu>
93967
93968	Fix bug in recent styled_format change
93969
93970	Problem reported by Kaushal Modi in:
93971	https://lists.gnu.org/r/emacs-devel/2017-10/msg00141.html
93972	* src/editfns.c (styled_format): Fix bug where USE_SAFE_ALLOCA was
93973	not always followed by SAFE_FREE.  This bug was introduced in my
93974	patch 2017-09-26T23:31:57Z!eggert@cs.ucla.edu entitled "Avoid some
93975	unnecessary copying in Fformat etc."
93976
939772017-10-06  João Távora  <joaotavora@gmail.com>
93978
93979	Cleanup emacs-lisp-mode's use of Flymake
93980
93981	* lisp/progmodes/elisp-mode.el (elisp-flymake--checkdoc-1):
93982	Delete.
93983	(elisp-flymake-checkdoc): Incorporate old
93984	elisp-flymake--checkdoc-1.
93985	(elisp-flymake--byte-compile-done): Simplify.  Don't cleanup
93986	here.
93987	(elisp-flymake-byte-compile): Remove spurious interactive spec.
93988	Simplify.  Cleanup on every possible exit.
93989
939902017-10-06  João Távora  <joaotavora@gmail.com>
93991
93992	Fix @include directive in Flymake doc
93993
93994	* doc/misc/flymake.texi: Don't @include a relative path.
93995
939962017-10-06  Mark Oteiza  <mvoteiza@udel.edu>
93997
93998	Move read-multiple-choice to its own library
93999
94000	* lisp/emacs-lisp/rmc.el: New file.
94001	* lisp/emacs-lisp/subr-x.el (read-multiple-choice): Remove.
94002	* lisp/gnus/message.el:
94003	* lisp/net/nsm.el: Change required library.
94004
940052017-10-06  Piotr Trojanek  <piotr.trojanek@gmail.com>
94006
94007	* src/process.c (syms_of_process): Remove duplicated call to DEFSYM.
94008
94009	Fixes: Bug#28721
94010
940112017-10-06  Lele Gaifax  <lele@metapensiero.it>
94012
94013	Fix typos in Flymake documentation
94014
94015	* doc/misc/flymake.texi (Syntax check statuses)
94016	(Adding support for a new syntax check tool)
94017	(Implementation overview, Locating the buildfile): Fix typos.
94018
94019	* lisp/progmodes/flymake-proc.el (flymake-proc--report-fn)
94020	(flymake-proc--find-possible-master-files):Fix typos.
94021	(flymake-proc--panic)
94022	(flymake-proc-legacy-flymake): Fix function reference in doc.
94023
94024	* lisp/progmodes/flymake.el (flymake-error)
94025	(flymake-diagnostic-functions): Fix typos.
94026	(flymake-diagnostic-types-alist): Rephrase and fix typos.
94027	(flymake--backend-state): Fix typos and rephrase.
94028	(flymake--handle-report): Delete empty line.
94029	(flymake--disable-backend)
94030	(flymake--run-backend): Fix typos.
94031	(flymake-goto-next-error, flymake-goto-prev-error): Rephrase.
94032
940332017-10-06  Eli Zaretskii  <eliz@gnu.org>
94034
94035	Revert last change in 'shr-descend'
94036
94037	* lisp/net/shr.el (shr-descend): Revert the part of the last
94038	change which introduced calls to shr-indirect-call into this
94039	function.  Add a comment explaining the rationale for that.
94040	(Bug#28402)
94041
940422017-10-06  João Távora  <joaotavora@gmail.com>
94043
94044	Don't error when turning on Flymake with no known backends
94045
94046	Leave it to the mode line indicator to inform the user that there
94047	is still some configuration to do.
94048
94049	* lisp/progmodes/flymake.el (flymake-mode): Simplify.
94050
940512017-10-06  João Távora  <joaotavora@gmail.com>
94052
94053	Delete a Flymake obsolete alias that can't possibly work
94054
94055	The function `flymake-ler-make-ler' can't possibly work as an backward
94056	compatible interface to existing extensinos (even purely hypothetical
94057	ones, since none are known).  This is because every diagnostic
94058	considered by Flymake has to passed to a report-fn function.
94059
94060	* lisp/progmodes/flymake.el (flymake-ler-make-ler): Delete.
94061
940622017-10-06  Paul Eggert  <eggert@cs.ucla.edu>
94063
94064	Fix bug with unmounted directory on GNU/Linux
94065
94066	* src/sysdep.c (emacs_get_current_dir_name): Do not use
94067	get_current_dir_name result unless it is absolute (Bug#27871).
94068
94069
940702017-10-05  Nicolas Petton  <nicolas@petton.fr>
94071
94072	Update authors.el
94073
94074	* admin/authors.el (authors-renamed-files-alist)
94075	(authors-valid-file-names): Additions.
94076
940772017-10-05  Gemini Lasswell  <gazally@runbox.com>
94078
94079	Fix dynamic binding wrapper in iter-lambda (bug#25965)
94080
94081	* lisp/emacs-lisp/generator.el (cps--make-dynamic-binding-wrapper):
94082	Remove extra evaluation of form.
94083	* test/lisp/emacs-lisp/generator-tests.el
94084	(cps-iter-lambda-with-dynamic-binding): New test.
94085
940862017-10-05  Rasmus  <rasmus@gmx.us>
94087
94088	Update Org to v9.1.2
94089
94090	Please note this is a bugfix release.  See etc/ORG-NEWS for details.
94091
940922017-10-05  Alan Mackenzie  <acm@muc.de>
94093
94094	Fix irregularities with CC Mode fontification, particularly with "known types"
94095
94096	* lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Introduce a new
94097	optional parameter, template-class.  In "class <X = Y>", fontify "Y" as a
94098	type.
94099	(c-font-lock-single-decl): New variable template-class, set to non-nil when we
94100	have a construct like the above.  Pass this as argument to
94101	c-font-lock-declarators.
94102	(c-font-lock-cut-off-declarators): Check more rigorously that a declaration
94103	being processed starts before the function's starting position.
94104	(c-complex-decl-matchers): Remove the redundant clause which fontified "types
94105	preceded by, e.g., "struct"".
94106
94107	* lisp/progmodes/cc-langs.el (c-template-typename-kwds)
94108	(c-template-typename-key): New lang defconsts and defvar.
94109
941102017-10-05  Eli Zaretskii  <eliz@gnu.org>
94111
94112	Fix breakage due to recent change in tabulated-list-print-entry
94113
94114	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-printer):
94115	Update the doc string.
94116	(tabulated-list-print-entry): Revert to using only 2 arguments.
94117	Update the doc string.
94118	(tabulated-list-entry-lnum-width): New defvar.
94119	(tabulated-list-print): Compute the width of line-number display
94120	once, then store that value in tabulated-list-entry-lnum-width,
94121	for tabulated-list-printer to use.  (Bug#28704)
94122
941232017-10-05  Gemini Lasswell  <gazally@runbox.com>
94124
94125	* lisp/ses.el (ses-print-cell): Fix alignment of text cells.  (Bug#27653)
94126
941272017-10-05  Alexander Gramiak  <agrambot@gmail.com>
94128
94129	Set xterm click count to 1 even with no last click
94130
94131	* lisp/xt-mouse.el (xterm-mouse-event): Move the check for
94132	the last click so that click-count is initialized properly.
94133	Handle the value of t for double-click-time.
94134	(Bug#28658)
94135
941362017-10-05  Vasilij Schneidermann  <mail@vasilij.de>
94137
94138	Support indirection for all shr-tag-* calls
94139
94140	The 'shr-external-rendering-functions' variable was previously only
94141	honored in the shr-descend function, now all direct calls to the
94142	shr-tag-* functions have been replaced by a call to
94143	'shr-indirect-call' which tries using an alternative rendering
94144	function first.
94145
94146	* lisp/net/shr.el (shr-indirect-call): New helper function.
94147	(shr-descend, shr-tag-object, shr-tag-video):
94148	(shr-collect-extra-strings-in-table): Fix callers to call via
94149	shr-indirect-call.  (Bug#28402)
94150
941512017-10-05  Eli Zaretskii  <eliz@gnu.org>
94152
94153	Speed up list-packages when 'visual' line numbers are displayed
94154
94155	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-printer):
94156	Update the doc string.
94157	(tabulated-list-print-entry): Accept an additional optional
94158	argument INDENT.  Update the doc string.
94159	(tabulated-list-print): Compute the width of line-number display
94160	once, then call tabulated-list-printer with that value as 3rd
94161	argument.  (Bug#28704)
94162
941632017-10-05  João Távora  <joaotavora@gmail.com>
94164
94165	Misc. minor adjustments to Flymake
94166
94167	- Add a half-decent minor-mode menu;
94168	- Fix "waiting for backends" mode line message;
94169	- Adjust the flymake-diag-region API;
94170	- Autoload the flymake-log macro;
94171	- Auto-disable the legacy backend in more situations;
94172	- Fix a couple of warnings in legacy backend.
94173
94174	* lisp/progmodes/flymake-proc.el
94175	(flymake-proc--diagnostics-for-pattern): Use new
94176	flymake-diag-region.
94177
94178	* lisp/progmodes/flymake-proc.el
94179	(flymake-proc-legacy-flymake): Do error when no
94180	buffer-file-name or not writable.
94181	(flymake-proc-legacy-flymake)
94182	(flymake-proc-simple-cleanup): Don't reference flymake-last-change-time
94183
94184	* lisp/progmodes/flymake.el (flymake-diag-region):
94185	Autoload.  Take buffer as first argument.
94186
94187	* lisp/progmodes/flymake.el (flymake-switch-to-log-buffer):
94188	New command.
94189	(flymake-menu): Add a simple menu.
94190	(flymake--mode-line-format): Use menu.  Fix message.  Switch to
94191	log buffer when clicking exceptional warnings.
94192
941932017-10-05  Johan Bockgård  <bojohan@gnu.org>
94194
94195	Fix search for ~/.Xdefaults-HOSTNAME
94196
94197	* src/xrdb.c (get_environ_db): Fix typo when handling
94198	~/.Xdefaults-HOSTNAME (Bug#28708).
94199
942002017-10-04  Paul Eggert  <eggert@cs.ucla.edu>
94201
94202	Speed up (format "%s" STRING) and the like
94203
94204	Although the Lisp manual said that ‘format’ returns a
94205	newly-allocated string, this was not true for a few cases like
94206	(format "%s" ""), and fixing the documentation to allow reuse of
94207	arguments lets us improve performance in common cases like
94208	(format "foo") and (format "%s" "foo") (Bug#28625).
94209	* doc/lispref/strings.texi (Formatting Strings):
94210	* etc/NEWS:
94211	Say that the result of ‘format’ might not be newly allocated.
94212	* src/callint.c (Fcall_interactively):
94213	* src/dbusbind.c (XD_OBJECT_TO_STRING):
94214	* src/editfns.c (Fmessage, Fmessage_box):
94215	* src/xdisp.c (vadd_to_log, Ftrace_to_stderr):
94216	Just use Fformat or Fformat_message, as that’s simpler and no
94217	longer makes unnecessary copies.
94218	* src/editfns.c (styled_format): Remove last argument, as it
94219	is no longer needed: all callers now want it to behave as if it
94220	were true.  All remaining callers changed.  Make this function
94221	static again.  Simplify the function now that we no longer
94222	need to worry about whether the optimization is allowed.
94223
942242017-10-04  Alan Mackenzie  <acm@muc.de>
94225
94226	Fontify untyped function declarations in C Mode correctly.
94227
94228	Also correct two bugs where deleting WS at a BOL could leave an untyped
94229	function declaration unfontified.
94230
94231	* lisp/progmodes/cc-engine.el (c-find-decl-spots): Don't set the flag
94232	"top-level" when we're in a macro.
94233	(c-forward-decl-or-cast-1): Recognize top-level "foo(bar)" or "foo()" in C
94234	Mode as a implicitly typed function declaration.
94235	(c-just-after-func-arglist-p): Don't get confused by "defined (foo)" inside a
94236	macro.  It's not a function plus arglist.
94237
94238	* lisp/progmodes/cc-langs.el (c-cpp-expr-functions-key): New defconst and
94239	defvar.
94240
94241	* lisp/progmodes/cc-mode.el (c-fl-decl-end): After c-forward-declarator, move
94242	over any following parenthesis expression (i.e. parameter list).
94243	(c-change-expand-fl-region): When c-new-END is at a BOL, include that line in
94244	the returned region, to cope with deletions at column 0.
94245
942462017-10-04  Michael Albinus  <michael.albinus@gmx.de>
94247
94248	* lisp/net/tramp.el (tramp-tramp-file-p): Use `string-match-p'.
94249
94250	Reported by Clément Pit-Claudel <cpitclaudel@gmail.com>.
94251
942522017-10-04  Eli Zaretskii  <eliz@gnu.org>
94253
94254	Avoid crashes on C-g when several threads wait for input
94255
94256	* src/thread.h (m_getcjmp): New member of 'struct thread_state'.
94257	(getcjmp): Define to current thread's 'm_getcjmp'.
94258	* src/thread.c (maybe_reacquire_global_lock): Switch to main
94259	thread, since this is called from a SIGINT handler, which always
94260	runs in the context of the main thread.
94261	* src/lisp.h (sys_jmp_buf, sys_setjmp, sys_longjmp): Move the
94262	definitions before thread.h is included, as thread.h now uses
94263	sys_jmp_buf.
94264	* src/keyboard.c (getcjmp): Remove declaration.
94265	(read_char): Don't call maybe_reacquire_global_lock here.
94266	(handle_interrupt): Call maybe_reacquire_global_lock here, if
94267	invoked from the SIGINT handler, to make sure
94268	quit_throw_to_read_char runs with main thread's Lisp bindings and
94269	uses the main thread's jmp_buf buffer.  (Bug#28630)
94270
942712017-10-04  Paul Eggert  <eggert@cs.ucla.edu>
94272
94273	Warn if --without-pop is now the default
94274
94275	* configure.ac (with_pop): Set to no-by-default if defaulting to "no".
94276	Warn about the change if defaulting to "no".  Update URLs.
94277
942782017-10-04  Paul Eggert  <eggert@cs.ucla.edu>
94279
94280	--with-pop is now the default only on MS-Windows
94281
94282	Problem reported by N. Jackson (Bug#28597).
94283	This improves an earlier suggestion by Robert Pluim (Bug#28597#47).
94284	* INSTALL, configure.ac, etc/NEWS:
94285	Make --with-pop the default only on native MS-Windows.
94286
942872017-10-03  Michael Albinus  <michael.albinus@gmx.de>
94288
94289	Add support for `file-system-info' in Tramp
94290
94291	* lisp/net/tramp.el (tramp-file-name-for-operation):
94292	Add `file-system-info'.
94293
94294	* lisp/net/tramp-adb.el (tramp-adb-handle-file-system-info): New defun.
94295	(tramp-adb-file-name-handler-alist): Use it.
94296
94297	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-system-attributes)
94298	(tramp-gvfs-file-system-attributes-regexp): New defconst.
94299	(tramp-gvfs-handle-file-system-info): New defun.
94300	(tramp-gvfs-file-name-handler-alist): Use it.
94301	(tramp-gvfs-get-directory-attributes): Fix property name.
94302	(tramp-gvfs-get-root-attributes): Support also file system attributes.
94303
94304	* lisp/net/tramp-sh.el (tramp-sh-handle-file-system-info): New defun.
94305	(tramp-sh-file-name-handler-alist): Use it.
94306	(tramp-sh-handle-insert-directory): Insert size information.
94307	(tramp-get-remote-df): New defun.
94308
94309	* lisp/net/tramp-smb.el (tramp-smb-handle-file-system-info): New defun.
94310	(tramp-smb-file-name-handler-alist): Use it.
94311	(tramp-smb-handle-insert-directory): Insert size information.
94312
94313	* test/lisp/net/tramp-tests.el (tramp-test37-file-system-info):
94314	New test.
94315	(tramp-test38-asynchronous-requests)
94316	(tramp-test39-recursive-load, tramp-test40-remote-load-path)
94317	(tramp-test41-unload): Rename.
94318
943192017-10-03  João Távora  <joaotavora@gmail.com>
94320
94321	Merge branch 'scratch/flymake-refactor-clean-for-emacs-26' into emacs-26
94322
943232017-10-03  João Távora  <joaotavora@gmail.com>
94324
94325	Start rewriting Flymake manual
94326
94327	Missing the parts pertaining to the new customization API.
94328
94329	* doc/misc/flymake.texi (Overview of Flymake): Rewrite a bit.
94330	(Installing Flymake): Delete most of this.
94331	(Running the syntax check): Mention flymake-start.
94332	(Navigating to error lines): Rewrite.
94333	(Viewing error messages): Commente out.
94334	(Syntax check statuses, Troubleshooting): Rewrite a bit.
94335	(Customizable variables): New section under "Using
94336	Flymake".  Don't mention any proc variables here.
94337	(Configuring Flymake): Delete
94338	(Proc backend): New chapter
94339	(Proc customization variables): New chapter.
94340
94341	* doc/misc/flymake.texi (Overview of Flymake): Rewrite a bit.
94342	(Installing Flymake): Mostly scratch. Flymake comes with Emacs.
94343	(Running the syntax check): Simplify.
94344	(Viewing error messages): Dekete,
94345	(Syntax check statuses): Rewrite.
94346	(Troubleshooting): Simplify.
94347	(Customizable variables): Rewrite.
94348	(Extending Flymake): New chapter, empty for now.
94349	(The legacy Proc backend): New chapter.
94350	(Proc customizable variables)
94351	(Adding support for a new syntax check tool)
94352	(Implementation overview)
94353	(Making a temporary copy)
94354	(Locating a master file)
94355	(Getting the include directories)
94356	(Locating the buildfile)
94357	(Starting the syntax check process)
94358	(Parsing the output)
94359	(Interaction with other modes)
94360	(Example---Configuring a tool called via make)
94361	(Example---Configuring a tool called directly): Rewrite a bit.
94362
943632017-10-03  João Távora  <joaotavora@gmail.com>
94364
94365	Minimal tweak as an attempt to future-proof Flymake API
94366
94367	Discussed with Stefan that this should allow Flymake to request more
94368	from backends in the future, while also allowing backends to report
94369	more accurately.
94370
94371	* lisp/progmodes/elisp-mode.el (elisp-flymake-checkdoc)
94372	(elisp-flymake-byte-compile): Adjust to new API.
94373
94374	* lisp/progmodes/flymake-proc.el ()
94375	(flymake-proc-legacy-flymake): Adjust to new API.
94376
94377	* lisp/progmodes/flymake.el (flymake-diagnostic-functions):
94378	Review API again.
94379	(flymake--handle-report): Allow other keys.  Change ACTION to
94380	REPORT-ACTION.
94381
943822017-10-03  João Távora  <joaotavora@gmail.com>
94383
94384	Integrate Flymake elisp checkers into elisp-mode.el directly
94385
94386	* lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Use
94387	elisp-flymake-checkdoc and elisp-flymake-byte-compile.
94388	(elisp-flymake--checkdoc-1, elisp-flymake-checkdoc)
94389	(elisp-flymake--byte-compile-done)
94390	(elisp-flymake--byte-compile-process)
94391	(elisp-flymake-byte-compile): Rename from flymake-elisp
94392	counterparts in deleted flymake-elisp.el
94393	(elisp-flymake--batch-compile-for-flymake): New helper.
94394	(checkdoc-create-error-function)
94395	(checkdoc-autofix-flag)
94396	(checkdoc-generate-compile-warnings-flag)
94397	(checkdoc-diagnostic-buffer): Forward declare.
94398
94399	* lisp/progmodes/flymake-elisp.el: Delete.
94400
944012017-10-03  João Távora  <joaotavora@gmail.com>
94402
94403	Hook Flymake onto proper checkdoc and byte-compile interfaces
94404
94405	The interfaces in bytecomp.el and checkdoc.el are mostly boilerplate,
94406	with little knowledge of actual internals or thought given to the
94407	usefulness of said interfaces in contexts other than Flymake's.
94408
94409	* lisp/emacs-lisp/bytecomp.el
94410	(byte-compile-log-warning-function): New variable.
94411	(byte-compile-log-warning): Use it.
94412	(byte-compile--log-warning-for-byte-compile): New function.
94413
94414	* lisp/emacs-lisp/checkdoc.el
94415	(checkdoc-create-error-function): New variable.
94416	(checkdoc-create-error): Use it.
94417	(checkdoc--create-error-for-checkdoc): New function.xo
94418
94419	* lisp/progmodes/flymake-elisp.el (flymake-elisp--checkdoc-1):
94420	Use checkdoc-create-error-function.
94421	(flymake-elisp--batch-byte-compile): Use
94422	byte-compile-log-warning-function.
94423
944242017-10-03  João Távora  <joaotavora@gmail.com>
94425
94426	Tweak Flymake autoloads and dependencies
94427
94428	* lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add to
94429	flymake-diagnostic-functions here.
94430
94431	* lisp/progmodes/flymake-elisp.el[top]: Don't add to
94432	emacs-lisp-mode-hook.  Don't call flymake-elisp-setup-backends in
94433	every buffer.  (flymake-elisp-checkdoc) (flymake-elisp-byte-compile):
94434	Autoload.  (flymake-elisp-setup-backends): Remove.
94435
94436	* lisp/progmodes/flymake.el: Add some top-level comments.
94437	(flymake-make-diagnostic)
94438	(flymake-mode, flymake-mode-on, flymake-mode-off): Add autoloads
94439
94440	Where to fixup this shit?
94441
944422017-10-03  João Távora  <joaotavora@gmail.com>
94443
94444	Capitalize "Flymake" in docstrings and comments
94445
94446	* lisp/progmodes/flymake-elisp.el (flymake-elisp-checkdoc)
94447	(flymake-elisp-setup-backends): Capitalize "Flymake"
94448
94449	* lisp/progmodes/flymake-proc.el:
94450	(flymake-proc-reformat-err-line-patterns-from-compile-el)
94451	(flymake-proc--panic, flymake-proc-legacy-flymake)
94452	(flymake-start-syntax-check, flymake-proc-compile)
94453	(define-obsolete-variable-alias): Capitalize "Flymake"
94454
94455	* lisp/progmodes/flymake.el (flymake-fringe-indicator-position)
94456	(flymake-make-diagnostic, flymake-delete-own-overlays)
94457	(flymake-diagnostic-functions)
94458	(flymake-diagnostic-types-alist, flymake-is-running)
94459	(flymake-make-report-fn, flymake-mode-on, flymake-mode-off)
94460	(flymake-goto-next-error, flymake-goto-prev-error): Capitalize "Flymake"
94461
944622017-10-03  João Távora  <joaotavora@gmail.com>
94463
94464	Flymake backends can report multiple times per check
94465
94466	Rewrote a significant part of the Flymake backend API.  Flymake now
94467	ignores the return value of backend functions: a function can either
94468	returns or errors.  If it doesn't error, a backend is no longer
94469	constrained to call REPORT-FN exactly once.  It may do so any number
94470	of times, cumulatively reporting diagnostics.  Flymake keeps track of
94471	outdated REPORT-FN instances and disconsiders obsolete reports.
94472	Backends should avoid reporting obsolete data by canceling any
94473	ongoing processing at every renewed call to the backend function.
94474
94475	Consolidated flymake.el internal data structures to require less
94476	buffer-local variables.  Adjusted Flymake's mode-line indicator to the
94477	new semantics.
94478
94479	Adapted and simplified the implementation of elisp and legacy
94480	backends, fixing potential race conditions when calling backends in
94481	rapid succession.
94482
94483	Added a new test for a backend that calls REPORT-FN multiple
94484	times.  Simplify test infrastructure.
94485
94486	* lisp/progmodes/flymake-elisp.el (flymake-elisp-checkdoc)
94487	(flymake-elisp-byte-compile): Error instead of returning nil
94488	if not in emacs-lisp-mode.
94489	(flymake-elisp--byte-compile-process): New buffer-local variable.
94490	(flymake-elisp-byte-compile): Mark (and kill) previous process
94491	obsolete process before starting a new one.  Don't report if
94492	obsolete process.
94493
94494	* lisp/progmodes/flymake-proc.el
94495	(flymake-proc--current-process): New buffer-local variable.
94496	(flymake-proc--processes): Remove.
94497	(flymake-proc--process-filter): Don't bind
94498	flymake-proc--report-fn.
94499	(flymake-proc--process-sentinel): Rewrite.  Don't report if
94500	obsolete process.
94501	(flymake-proc-legacy-flymake): Rewrite.  Mark (and kill)
94502	previous process obsolete process before starting a new
94503	one.  Integrate flymake-proc--start-syntax-check-process
94504	helper.
94505	(flymake-proc--start-syntax-check-process): Delete.
94506	(flymake-proc-stop-all-syntax-checks): Don't use
94507	flymake-proc--processes, iterate buffers.
94508	(flymake-proc-compile):
94509
94510	* lisp/progmodes/flymake.el (subr-x): Require it
94511	explicitly.
94512	(flymake-diagnostic-functions): Reword docstring.
94513	(flymake--running-backends, flymake--disabled-backends)
94514	(flymake--diagnostics-table): Delete.
94515	(flymake--backend-state): New buffer-local variable and new defstruct.
94516	(flymake--with-backend-state, flymake--collect)
94517	(flymake-running-backends, flymake-disabled-backends)
94518	(flymake-reporting-backends): New helpers.
94519	(flymake-is-running): Use flymake-running-backends.
94520	(flymake--handle-report): Rewrite.
94521	(flymake-make-report-fn): Ensure REPORT-FN runs in the correct
94522	buffer or not at all.
94523	(flymake--disable-backend, flymake--run-backend): Rewrite.
94524	(flymake-start): Rewrite.
94525	(flymake-mode): Set flymake--backend-state.
94526	(flymake--mode-line-format): Rewrite.
94527
94528	* test/lisp/progmodes/flymake-tests.el
94529	(flymake-tests--wait-for-backends): New helper.
94530	(flymake-tests--call-with-fixture): Use it.
94531	(included-c-header-files): Fix whitespace.
94532	(flymake-tests--diagnose-words): New helper.
94533	(dummy-backends): Rewrite for new semantics.  Use cl-letf.
94534	(flymake-tests--assert-set): Use quote.
94535	(recurrent-backend): New test.
94536
945372017-10-03  João Távora  <joaotavora@gmail.com>
94538
94539	Flymake uses proper idle timers
94540
94541	Also, flymake-no-changes-timeout can be set to nil to disable
94542	automatic periodic checks.  But even in that situation the idle timer
94543	still runs at a reduced rate to detect changes in the variable and
94544	revert that decision.
94545
94546	* lisp/progmodes/flymake.el (flymake-no-changes-timeout): Improve doc.
94547	(flymake-last-change-time): Delete.
94548	(flymake--schedule-timer-maybe): New helper.
94549	(flymake-after-change-function): Use it.
94550	(flymake-on-timer-event): Delete
94551	(flymake-mode): Don't scheduler timer.
94552
945532017-10-03  João Távora  <joaotavora@gmail.com>
94554
94555	Flymake variable flymake-diagnostic-functions now a special hook
94556
94557	* lisp/progmodes/flymake-proc.el: Use add-hook to affect
94558	flymake-diagnostic-functions.
94559
94560	* lisp/progmodes/flymake-elisp.el
94561	(flymake-elisp-setup-backends): Use add-hook.
94562
94563	* lisp/progmodes/flymake.el (flymake-diagnostic-functions):
94564	Revise docstring.
94565	(flymake-start): Use run-hook-wrapped.
94566
945672017-10-03  João Távora  <joaotavora@gmail.com>
94568
94569	Batch of minor Flymake cleanup actions agreed to with Stefan
94570
94571	Discussed with Stefan, in no particular order
94572
94573	- Remove aliases for symbols thought to be internal to flymake-proc.el
94574	- Don’t need :group in defcustom and defface in flymake.el
94575	- Fix docstring of flymake-make-diagnostic
94576	- Fix docstring of flymake-diagnostic-functions to clarify keywords.
94577	- Mark overlays with just the property ’flymake, not ’flymake-overlay
94578	- Tune flymake-overlays for performance
94579	- Make flymake-mode-on and flymake-mode-off obsolete
94580	- Don’t use hash-table-keys unless necessary.
94581	- Copyright notice in flymake-elisp.
94582
94583	Added some more
94584
94585	- Clarify docstring of flymake-goto-next-error
94586	- Clarify a comment in flymake--run-backend complaining about ert-deftest.
94587	- Prevent compilation warnings in flymake-proc.el
94588	- Remove doctring from obsolete aliases
94589
94590	Now the changelog:
94591
94592	* lisp/progmodes/flymake-elisp.el: Proper copyright notice.
94593
94594	* lisp/progmodes/flymake-proc.el (flymake-warning-re)
94595	(flymake-proc-diagnostic-type-pred)
94596	(flymake-proc-default-guess)
94597	(flymake-proc--get-file-name-mode-and-masks): Move up to
94598	beginning of file to shoosh compiler warnings
94599	(define-obsolete-variable-alias): Delete many obsolete aliases.
94600
94601	* lisp/progmodes/flymake.el (flymake-error-bitmap)
94602	(flymake-warning-bitmap, flymake-note-bitmap)
94603	(flymake-fringe-indicator-position)
94604	(flymake-start-syntax-check-on-newline)
94605	(flymake-no-changes-timeout, flymake-gui-warnings-enabled)
94606	(flymake-start-syntax-check-on-find-file, flymake-log-level)
94607	(flymake-wrap-around, flymake-error, flymake-warning)
94608	(flymake-note): Don't need :group in these defcustom and defface.
94609	(flymake--run-backend): Clarify comment
94610	(flymake-mode-map): Remove.
94611	(flymake-make-diagnostic): Fix docstring.
94612	(flymake--highlight-line, flymake--overlays): Identify flymake
94613	overlays with just ’flymake.
94614	(flymake--overlays): Reverse order of invocation for
94615	cl-remove-if-not and cl-sort.
94616	(flymake-mode-on)
94617	(flymake-mode-off): Make obsolete.
94618	(flymake-goto-next-error, flymake-goto-prev-error): Fix docstring.
94619	(flymake-diagnostic-functions): Clarify keyword arguments in
94620	docstring.
94621
94622	Maybe squash in that one where I remove many obsoletes
94623
946242017-10-03  João Távora  <joaotavora@gmail.com>
94625
94626	Explicitly add a(n empty) keymap for Flymake
94627
94628	Too early to decide what will be in it, if anything.  Though "M-n" and
94629	"M-p" would be great.
94630
94631	* lisp/progmodes/flymake-ui.el (flymake-mode-map): New variable
94632
946332017-10-03  João Távora  <joaotavora@gmail.com>
94634
94635	Flymake uses some new fringe bitmaps
94636
94637	Also fix behavior whereby flymake wouldn't react to a change in the
94638	variable.
94639
94640	* lisp/progmodes/flymake-ui.el (flymake-error-bitmap)
94641	(flymake-warning-bitmap): Update bitmaps.
94642	(flymake-note-bitmap): New defcustom.
94643	(flymake-double-exclamation-mark): New bitmap.
94644	(flymake-error, flymake-warning, flymake-note)
94645	(flymake--highlight-line): 'bitmap property must be a symbol.
94646	Also set default face to flymake-error.
94647	(flymake--fringe-overlay-spec): Bitmap property can be a
94648	variable symbol.
94649
946502017-10-03  João Távora  <joaotavora@gmail.com>
94651
94652	Remove old flymake-display-err-menu-for-current-line, it's useless
94653
94654	See https://lists.gnu.org/r/emacs-devel/2017-09/msg00949.html
94655
94656	* lisp/progmodes/flymake-ui.el
94657	(flymake-popup-current-error-menu): Remove.
94658
946592017-10-03  João Távora  <joaotavora@gmail.com>
94660
94661	Treat Flymake errors as just another type of diagnostic
94662
94663	* lisp/progmodes/flymake.el (flymake--diag-errorp): Remove.
94664	(flymake--handle-report, flymake-popup-current-error-menu):
94665	Don't use it.
94666
946672017-10-03  João Távora  <joaotavora@gmail.com>
94668
94669	Fix three Flymake bugs when checking C header files
94670
94671	The first of these problems is longstanding: if an error-less B.h is
94672	included from error-ridden A.h, flymake's legacy parser will panic
94673	(and disable itself) since it sees a non-zero exit for a clean file.
94674	To fix this, recommend returning 'true' in the documentation for the
94675	check-syntax target.
94676
94677	Another problem was introduced by the parser rewrite.  For error
94678	patterns spanning more than one line, point may be left in the middle
94679	of a line and thus render other patterns useless.  Those patterns were
94680	written for the old line-by-line parser.  To make them useful again,
94681	move to the beginning of line in those situations.
94682
94683	The third problem was also longstanding and happened on newer GCC's:
94684	The "In file included from" prefix confused
94685	flymake-proc-get-real-file-name.  Fix this.
94686
94687	Also updated flymake--diag-region to fallback to highlighting a full
94688	line less often.
94689
94690	Add automatic tests to check this.
94691
94692	* lisp/progmodes/flymake-proc.el
94693	(flymake-proc--diagnostics-for-pattern): Fix bug when patterns
94694	accidentally spans more than one line.  Don't create
94695	diagnostics without error messages.
94696	(flymake-proc-real-file-name-considering-includes): New
94697	helper.
94698	(flymake-proc-allowed-file-name-masks): Use it.
94699
94700	* lisp/progmodes/flymake.el (flymake-diag-region): Make COL
94701	argument explicitly optional.  Only fall back to full line in extreme
94702	cases.
94703
94704	* test/lisp/progmodes/flymake-tests.el
94705	(included-c-header-files): New test.
94706	(different-diagnostic-types): Update.
94707
94708	* test/lisp/progmodes/flymake-resources/Makefile
94709	(check-syntax): Always return success (0) error code.
94710	(CC_OPTS): Add -Wextra
94711
94712	* test/lisp/progmodes/flymake-resources/errors-and-warnings.c
94713	(main): Rewrite comments.
94714
94715	* test/lisp/progmodes/flymake-resources/errors-and-warnings.c:
94716	Include some dummy header files.
94717
94718	* test/lisp/progmodes/flymake-resources/no-problems.h: New file.
94719
94720	* test/lisp/progmodes/flymake-resources/some-problems.h: New file.
94721
94722	* doc/misc/flymake.texi (Example---Configuring a tool called
94723	via make): Recommend adding "|| true" to the check-syntax target.
94724
947252017-10-03  João Távora  <joaotavora@gmail.com>
94726
94727	Add interactive flymake-start function
94728
94729	* lisp/progmodes/flymake.el (flymake-on-timer-event)
94730	(flymake-after-change-function, flymake-mode): Call
94731	flymake-start.
94732	(flymake-start): Rename from flymake--start-syntax-check.
94733
947342017-10-03  João Távora  <joaotavora@gmail.com>
94735
94736	A couple of Flymake backends for emacs-lisp-mode
94737
94738	Loading flymake-elisp.el doesn't setup flymake-mode to turn on
94739	automatically, but it affects emacs-lisp-mode-hook so that
94740	flymake-diagnostic-functions is setup with a suitable buffer-local
94741	value.  The variable flymake-diagnostic-functions in every live
94742	emacs-lisp-mode buffer is also adjusted.
94743
94744	* lisp/progmodes/flymake.el (top): Require flymake-elisp.
94745
94746	* lisp/progmodes/flymake-elisp.el: New file.
94747
947482017-10-03  João Távora  <joaotavora@gmail.com>
94749
94750	Fancy Flymake mode-line construct displays status
94751
94752	Imitates compilation-mode's mode-line a bit, and uses its faces.
94753
94754	* lisp/progmodes/flymake.el
94755	(flymake-error, flymake-warning, flymake-note): Add
94756	mode-line-face to these flymake error types.
94757	(flymake-note): Notes don't need a noisy fringe bitmap.
94758	(flymake-lighter): Delete.
94759	(flymake--update-lighter): Delete.
94760	(flymake--mode-line-format): New function and variable.
94761	(flymake--diagnostics-table): New buffer-local variable.
94762	(flymake--handle-report): Don't update "lighters".  Affect
94763	flymake--diagnostics-table.
94764	(flymake--run-backend): Init flymake--diagnostics-table for backend.
94765	(flymake-mode): Use flymake--mode-line-format.
94766	(flymake-mode): Don't update lighter.
94767	(flymake--highlight-line): Be more careful when overriding a
94768	nil default overlay property.
94769
947702017-10-03  João Távora  <joaotavora@gmail.com>
94771
94772	Tweak Flymake commands flymake-goto-[next/prev]-error
94773
94774	Add filters, useful for backends like the upcoming
94775	flymake-elisp-checkdoc backend, for example, which litters everything
94776	with low-priority notes.
94777
94778	Also re-implement wraparound for flymake-goto-next-error. Manual
94779	mentions this, so it's probably a good idea to keep it.  Added a new
94780	customization variable flymake-wrap-around to control it.
94781
94782	* lisp/progmodes/flymake.el (flymake-goto-prev-error)
94783	(flymake-goto-next-error): Accept FILTER argument.
94784	(flymake-wrap-around): New variable.
94785	(flymake-goto-next-error): Wrap around according to flymake-wrap-around.
94786
94787	* test/lisp/progmodes/flymake-tests.el
94788	(different-diagnostic-types, dummy-backends): Pass FILTER to
94789	flymake-goto-prev-error.
94790	(different-diagnostic-types)
94791	(dummy-backends): Use flymake-wrap-around.
94792
947932017-10-03  João Távora  <joaotavora@gmail.com>
94794
94795	Flymake's flymake-proc.el backend slightly easier to debug
94796
94797	Misc cleanup in flymake-proc.el
94798
94799	Improve description of what this file contains.
94800
94801	Better name for the backend function.  Fix the case where it is run
94802	interactively.
94803
94804	Keep the output buffer alive iff the external process panics.
94805
94806	* lisp/progmodes/flymake-proc.el
94807	(flymake-proc-legacy-flymake): Rename from
94808	flymake-proc-start-syntax-check.  Allow running interactively.
94809	(flymake-start-syntax-check): Obsolete alias for
94810	flymake-proc-legacy-flymake.
94811	(flymake-proc-start-syntax-check): Delete.
94812	(flymake-diagnostic-functions): Include flymake-proc-legacy-flymake
94813	(flymake-proc--process-sentinel): Keep output buffer alive.
94814	Clarify with comments.
94815	(flymake-proc--diagnostics-for-pattern)
94816	(flymake-proc--process-sentinel)
94817	(flymake-proc--safe-delete-directory)
94818	(flymake-proc--start-syntax-check-process): Use condition-case-unless-debug.
94819
948202017-10-03  João Távora  <joaotavora@gmail.com>
94821
94822	Simplify Flymake logging and erroring
94823
94824	Use display-warning and a dedicated *Flymake log* buffer.
94825
94826	To ease readability, flymake log messages are now prefixed with a
94827	common prefix and the buffer that originated them.
94828
94829	Some situations of over-zealous logging are fixed.
94830
94831	Use byte-compiler info, if available, to determine whence the
94832	flymake-related log message is coming.
94833
94834	* lisp/progmodes/flymake-proc.el
94835	(flymake-proc--diagnostics-for-pattern): Improve log message.
94836	(flymake-proc--panic): Always flymake-log an error
94837	(flymake-proc--safe-delete-file)
94838	(flymake-proc--safe-delete-directory):
94839	Downgrade warning
94840	(flymake-proc-start-syntax-check): Simplify slightly.
94841	(flymake-proc--start-syntax-check-process): Simplify.
94842	(flymake-proc--init-find-buildfile-dir)
94843	(flymake-proc--init-create-temp-source-and-master-buffer-copy):
94844	No need to warn twice.
94845
94846	* lisp/progmodes/flymake.el (flymake-log): Convert to macro.
94847	(flymake--log-1): New helper.
94848	(flymake-log-level): Deprecate.
94849	(flymake-error): New helper.
94850	(flymake-ler-make-ler, flymake--handle-report, flymake-mode):
94851	Use flymake-error.
94852	(flymake-on-timer-event)
94853	(flymake--handle-report, flymake--disable-backend)
94854	(flymake--run-backend, flymake-start, flymake-mode-on)
94855	(flymake-mode-off, flymake-after-change-function)
94856	(flymake-after-save-hook, flymake-find-file-hook): Adjust
94857	flymake-log calls.
94858
94859	* test/lisp/progmodes/flymake-tests.el
94860	(flymake-tests--call-with-fixture): Only log errors.
94861
948622017-10-03  Philipp Stephani  <phst@google.com>
94863
94864	Work around deprecation of gtk_style_context_get_background_color
94865
94866	* src/gtkutil.c (xg_check_special_colors): Replace call to
94867	gtk_style_context_get_background_color with its definition.
94868
948692017-10-03  João Távora  <joaotavora@gmail.com>
94870
94871	New Flymake API variable flymake-diagnostic-functions
94872
94873	Lay groundwork for multiple active backends in the same buffer.
94874
94875	Backends are lisp functions called when flymake-mode sees fit.  They
94876	are responsible for examining the current buffer and telling
94877	flymake.el, via return value, if they can syntax check it.
94878	Backends should return quickly and inexpensively, but they are also
94879	passed a REPORT-FN argument which they may or may not call
94880	asynchronously after performing more expensive work.
94881
94882	REPORT-FN's calling convention stipulates that a backend calls it with
94883	a list of diagnostics as argument, or, alternatively, with a symbol
94884	denoting an exceptional situation, usually some panic resulting from a
94885	misconfigured backend.  In keeping with legacy behavior,
94886	flymake.el's response to a panic is to disable the issuing backend.
94887
94888	The flymake--diag object representing a diagnostic now also keeps
94889	information about its source backend.  Among other uses, this allows
94890	flymake to selectively cleanup overlays based on which backend is
94891	updating its diagnostics.
94892
94893	* lisp/progmodes/flymake-proc.el (flymake-proc--report-fn):
94894	New dynamic variable.
94895	(flymake-proc--process): New variable.
94896	(flymake-can-syntax-check-buffer): Remove.
94897	(flymake-proc--process-sentinel): Simplify.  Use
94898	unwind-protect.  Affect flymake-proc--processes here.
94899	Bind flymake-proc--report-fn.
94900	(flymake-proc--process-filter): Bind flymake-proc--report-fn.
94901	(flymake-proc--post-syntax-check): Delete
94902	(flymake-proc-start-syntax-check): Take mandatory
94903	report-fn.  Rewrite.  Bind flymake-proc--report-fn.
94904	(flymake-proc--process-sentinel): Rewrite and simplify.
94905	(flymake-proc--panic): New helper.
94906	(flymake-proc--start-syntax-check-process): Record report-fn
94907	in process.  Use flymake-proc--panic.
94908	(flymake-proc-stop-all-syntax-checks): Use mapc.  Don't affect
94909	flymake-proc--processes here.  Record interruption reason.
94910	(flymake-proc--init-find-buildfile-dir)
94911	(flymake-proc--init-create-temp-source-and-master-buffer-copy):
94912	Use flymake-proc--panic.
94913	(flymake-diagnostic-functions): Add
94914	flymake-proc-start-syntax-check.
94915	(flymake-proc-compile): Call
94916	flymake-proc-stop-all-syntax-checks with a reason.
94917
94918	* lisp/progmodes/flymake.el (flymake-backends): Delete.
94919	(flymake-check-was-interrupted): Delete.
94920	(flymake--diag): Add backend slot.
94921	(flymake-delete-own-overlays): Take optional filter arg.
94922	(flymake-diagnostic-functions): New user-visible variable.
94923	(flymake--running-backends, flymake--disabled-backends): New
94924	buffer-local variables.
94925	(flymake-is-running): Now a function, not a variable.
94926	(flymake-mode-line, flymake-mode-line-e-w)
94927	(flymake-mode-line-status): Delete.
94928	(flymake-lighter):  flymake's minor-mode "lighter".
94929	(flymake-report): Delete.
94930	(flymake--backend): Delete.
94931	(flymake--can-syntax-check-buffer): Delete.
94932	(flymake--handle-report, flymake--disable-backend)
94933	(flymake--run-backend, flymake--run-backend):  New helpers.
94934	(flymake-make-report-fn): Make a lambda.
94935	(flymake--start-syntax-check): Iterate
94936	flymake-diagnostic-functions.
94937	(flymake-mode): Use flymake-lighter.  Simplify.  Initialize
94938	flymake--running-backends and flymake--disabled-backends.
94939	(flymake-find-file-hook): Simplify.
94940
94941	* test/lisp/progmodes/flymake-tests.el
94942	(flymake-tests--call-with-fixture): Use flymake-is-running the
94943	function.  Check if flymake-mode already active before activating it.
94944	Add a thorough test for flymake multiple backends
94945
94946	* lisp/progmodes/flymake.el (flymake--start-syntax-check):
94947	Don't use condition-case-unless-debug, use condition-case
94948
94949	* test/lisp/progmodes/flymake-tests.el
94950	(flymake-tests--assert-set): New helper macro.
94951	(dummy-backends): New test.
94952
949532017-10-03  João Távora  <joaotavora@gmail.com>
94954
94955	More Flymake cleanup before advancing to backend redesign
94956
94957	Diagnostics are reported for buffers, not necessarily files.  It’s the
94958	backend’s responsibility to compute the buffer where the diagnostic is
94959	applicable.  For now, this has to match the buffer where flymake-mode
94960	is active and which is at the origin of the backend call.
94961
94962	flymake.el knows nothing about line/column diagnostics (except for
94963	backward-compatible flymake-ler-make-ler, which must yet be tested).
94964	It’s also the backend’s reponsibility to compute a BEG and END
94965	positions for the diagnostic in the relevant buffer.
94966
94967	* lisp/progmodes/flymake-proc.el
94968	(flymake-proc--diagnostics-for-pattern): Convert LINE/COL to
94969	region here.  Check file buffer here.
94970	(flymake-proc--process-sentinel): Don’t kill output buffer if
94971	high enough log level.
94972
94973	* lisp/progmodes/flymake.el (flymake-diag-region): Make this a utility
94974	function.  (flymake--highlight-line): Diagnostic has region now.
94975	(flymake-popup-current-error-menu): Don’t add file and line numbers to
94976	already this silly menu.  (flymake--fix-line-numbers): Remove.
94977	(flymake-report): No need to fix diagnostics here.
94978
949792017-10-03  João Távora  <joaotavora@gmail.com>
94980
94981	Protect Flymake's eager checks against commands like fill-paragraph
94982
94983	If flymake-start-syntax-check-on-newline is t, check should start as
94984	soon as a newline is seen by after-change-functions.  But don't rush
94985	it: since the buffer state might not be final, we might end up with
94986	invalid diagnostic regions after some commands silently insert and
94987	delete newlines (looking at you, fill-paragraph).
94988
94989	* lisp/progmodes/flymake.el (flymake-after-change-function): Pass
94990	`deferred' to flymake--start-syntax-check.
94991	(flymake--start-syntax-check): Take optional `deferred' arg.
94992
949932017-10-03  João Távora  <joaotavora@gmail.com>
94994
94995	Flymake highlights GCC info/notes as detected by flymake-proc.el
94996
94997	* lisp/progmodes/flymake-proc.el
94998	(flymake-proc--diagnostics-for-pattern): Rewrite (using cl-loop) to
94999	honour more sophisticated flymake-proc-diagnostic-type-pred.
95000	(flymake-warning-re): Is now an obsolete alias for
95001	flymake-proc-diagnostic-type-pred.
95002	(flymake-proc-diagnostic-type-pred): Rename and augment from
95003	flymake-proc-warning-predicate.  (flymake-proc-warning-predicate):
95004	Delete.
95005
95006	* lisp/progmodes/flymake.el (flymake-note): New face.
95007	(flymake-diagnostic-types-alist): Simplify.
95008	(flymake-note): New overlay category.
95009	(flymake--lookup-type-property): Only lookup single keys, not lists.
95010	(flymake--diag-errorp): Rewrite.
95011	(flymake--highlight-line): Use flymake--lookup-type-property.
95012
95013	* test/lisp/progmodes/flymake-tests.el
95014	(different-diagnostic-types): Rename from errors-and-warnings.
95015	Check notes.
95016	(flymake-tests--call-with-fixture): Use
95017	flymake-proc-diagnostic-type-pred.
95018
950192017-10-03  João Távora  <joaotavora@gmail.com>
95020
95021	Flymake checks file names before considering diagnostics
95022
95023	The error patterns for gcc picked up errors for the Makefile itself,
95024	for example.  These shouldn't count as actual errors.
95025
95026	* lisp/progmodes/flymake.el (flymake-report): Check
95027	matching file names.
95028
950292017-10-03  João Távora  <joaotavora@gmail.com>
95030
95031	Echo Flymake error messages when navigating errors interactively
95032
95033	Perhaps binding M-n and M-p to flymake-goto-next-error and
95034	flymake-goto-prev-error also wouldn't be a bad idea.
95035
95036	* lisp/progmodes/flymake.el (flymake-goto-next-error): Use
95037	target overlay's help-echo.
95038
950392017-10-03  João Távora  <joaotavora@gmail.com>
95040
95041	Add a new Flymake test for multiple errors and warnings
95042
95043	* test/lisp/progmodes/flymake-tests.el
95044	(flymake-tests--call-with-fixture): Save excursion.
95045	(errors-and-warnings): New test.
95046
95047	* test/lisp/progmodes/flymake-resources/errors-and-warnings.c:
95048	New test fixture.
95049
950502017-10-03  João Távora  <joaotavora@gmail.com>
95051
95052	Flymake warning face easier to distinguish
95053
95054	A orange wavy underline is very hard to tell from a red wavy
95055	underline.
95056
95057	* lisp/progmodes/flymake.el (flymake-warning): Change color to
95058	"deep sky blue"
95059
950602017-10-03  João Távora  <joaotavora@gmail.com>
95061
95062	Flymake's flymake-proc.el parses column numbers from gcc/javac errors
95063
95064	Column numbers are not a great way of marking diagnostic regions, but
95065	that's probably all that can be expected from the flymake-proc.el
95066	backend.  For now, try (end-of-thing 'sexp) to discover the
95067	diagnostic's end position.
95068
95069	* lisp/progmodes/flymake-proc.el ()
95070	(flymake-proc-err-line-patterns): Also parse column numbers,
95071	if available, for gcc/javac warnings.
95072
950732017-10-03  João Távora  <joaotavora@gmail.com>
95074
95075	New Flymake variable flymake-diagnostic-types-alist and much cleanup
95076
95077	A new user-visible variable is introduced where different diagnostic
95078	types can be categorized.  Flymake backends can also contribute to
95079	this variable.  Anything that doesn’t match an existing error type
95080	is considered.
95081
95082	The variable’s alists are used to propertize the overlays pertaining
95083	to each error type.  The user can override the built-in properties by
95084	either by modifying the alist, or by modifying the properties of a
95085	special "category" symbol, named by the `flymake-category' entry in
95086	the alist.
95087
95088	The `flymake-category' entry is especially useful for, say, the author
95089	of foo-flymake-backend, who issues diagnostics of type :foo-note, that
95090	should behave like notes, except with no fringe bitmap:
95091
95092	   (add-to-list 'flymake-diagnostic-types-alist
95093	                '(:foo-note
95094	                  . ((flymake-category . flymake-note)
95095	                     (bitmap . nil))))
95096
95097	For essential properties like `severity', `priority', etc, a default
95098	value is produced.  Some properties like `evaporate' cannot be
95099	overriden.
95100
95101	* lisp/progmodes/flymake.el (flymake--diag): Rename from
95102	flymake-ler.
95103	(flymake-ler-make): Obsolete alias for flymake-diagnostic-make
95104	(flymake-ler-errorp): Rewrite using flymake--severity.
95105	(flymake--place-overlay): Delete.
95106	(flymake--overlays): Now a cl-defun with &key args.  Document.
95107	Use `overlays-at' if BEG is non-nil and END is nil.
95108	(flymake--lookup-type-property): New helper.
95109	(flymake--highlight-line): Rewrite.
95110	(flymake-diagnostic-types-alist): New API variable.
95111	(flymake--diag-region)
95112	(flymake--severity, flymake--face)
95113	(flymake--fringe-overlay-spec): New helper.
95114	(flymake-popup-current-error-menu): Use new flymake-overlays.
95115	(flymake-popup-current-error-menu, flymake-report): Use
95116	flymake--diag-errorp.
95117	(flymake--fix-line-numbers): Use flymake--diag-line.
95118	(flymake-goto-next-error): Pass :key to flymake-overlays
95119
95120	* lisp/progmodes/flymake-proc.el
95121	(flymake-proc--diagnostics-for-pattern): Use flymake-diagnostic-make.
95122
951232017-10-03  João Távora  <joaotavora@gmail.com>
95124
95125	Refactor Flymake tests in preparation for more tests
95126
95127	Introduce a slightly more generic fixture macro.
95128
95129	Also make flymake-tests.el friendlier to interactive runs, by not
95130	killing buffers visited by the user.
95131
95132	* test/lisp/progmodes/flymake-tests.el
95133	(flymake-tests--call-with-fixture): New helper from
95134	flymake-tests--current-face.  Don't kill file buffers already
95135	being visited before the test starts.
95136	(flymake-tests--with-flymake): New macro.
95137	(flymake-tests--current-face): Delete.
95138	(warning-predicate-rx-gcc, warning-predicate-function-gcc)
95139	(warning-predicate-rx-perl, warning-predicate-function-perl):
95140	Use flymake-test--with-flymake.
95141
951422017-10-03  João Távora  <joaotavora@gmail.com>
95143
95144	Allow running Flymake tests from interactive sessions
95145
95146	* test/lisp/progmodes/flymake-tests.el (flymake-tests-data-directory):
95147	Expand to reasonable value if no
95148	EMACS_TEST_DIRECTORY. (flymake-tests--current-face): Work around
95149	"weirdness" of bug 17647 with read-event.
95150
951512017-10-03  João Távora  <joaotavora@gmail.com>
95152
95153	Flymake diagnostics now apply to arbitrary buffer regions
95154
95155	Make Flymake UI some 150 lines lighter
95156
95157	Strip away much of the original implementation's complexity in
95158	manipulating objects representing diagnostics as well as creating and
95159	navigating overlays.
95160
95161	Lay some groundwork for a more flexible approach that allows for
95162	different classes of diagnostics, not necessarily line-based.
95163	Importantly, one overlay per diagnostic is created, whereas the
95164	original implementation had one per line, and on it it concatenated
95165	the results of errors and warnings.
95166
95167	This means that currently, an error and warning on the same line are
95168	problematic and the warning might be overlooked but this will soon be
95169	fixed by setting appropriate priorities.
95170
95171	Since diagnostics can highlight arbitrary regions, not just lines, the
95172	faces were renamed.
95173
95174	Tests pass and backward compatibility with interactive functions is
95175	maintained, but probably any third-party extension or customization
95176	relying on more than a trivial set of flymake.el internals has stopped
95177	working.
95178
95179	* lisp/progmodes/flymake-proc.el
95180	(flymake-proc--diagnostics-for-pattern): Use new flymake-ler-make
95181	constructor syntax.
95182
95183	* lisp/progmodes/flymake.el (flymake-ins-after)
95184	(flymake-set-at, flymake-er-make-er, flymake-er-get-line)
95185	(flymake-er-get-line-err-info-list, flymake-ler-set-file)
95186	(flymake-ler-set-full-file, flymake-ler-set-line)
95187	(flymake-get-line-err-count, flymake-get-err-count)
95188	(flymake-highlight-err-lines, flymake-overlay-p)
95189	(flymake-make-overlay, flymake-region-has-flymake-overlays)
95190	(flymake-find-err-info)
95191	(flymake-line-err-info-is-less-or-equal)
95192	(flymake-add-line-err-info, flymake-add-err-info)
95193	(flymake-get-first-err-line-no)
95194	(flymake-get-last-err-line-no, flymake-get-next-err-line-no)
95195	(flymake-get-prev-err-line-no, flymake-skip-whitespace)
95196	(flymake-goto-line, flymake-goto-next-error)
95197	(flymake-goto-prev-error, flymake-patch-err-text): Delete
95198	functions no longer used.
95199	(flymake-goto-next-error, flymake-goto-prev-error): Rewrite.
95200	(flymake-report): Rewrite.
95201	(flymake-popup-current-error-menu): Rewrite.
95202	(flymake--highlight-line): Rename from
95203	flymake-highlight-line.  Call `flymake--place-overlay.
95204	(flymake--place-overlay): New function.
95205	(flymake-ler-errorp): New predicate.
95206	(flymake-ler): Simplify.
95207	(flymake-error): Rename from
95208	flymake-errline.
95209	(flymake-warning): Rename from flymake-warnline.
95210	(flymake-warnline, flymake-errline): Obsoletion aliases.
95211
95212	* test/lisp/progmodes/flymake-tests.el (warning-predicate-rx-gcc)
95213	(warning-predicate-function-gcc, warning-predicate-rx-perl)
95214	(warning-predicate-function-perl): Use face `flymake-warning'.
95215
952162017-10-03  João Távora  <joaotavora@gmail.com>
95217
95218	Move symbols in flymake-proc.el to separate namespace
95219
95220	Every symbol in this flymake now starts with the prefix flymake-proc-.
95221
95222	Make obsolete aliases for (almost?) every symbol.
95223
95224	Furthermore, many flymake-proc.el symbols are prefixed with
95225	"flymake-proc--", that is they were considered internal.
95226
95227	Some customization variables, interactive functions, and other symbols
95228	considered useful to user customizations or third-party libraries are
95229	considered "public" or "external" and so use a "flymake-proc-" prefix.
95230
95231	* lisp/progmodes/flymake-proc.el: Every symbol renamed.
95232
95233	* test/lisp/progmodes/flymake-tests.el
95234	(flymake-tests--current-face): Use
95235	flymake-proc-warning-predicate, not flymake-warning-predicate.
95236
95237	* lisp/progmodes/flymake-proc.el
95238	(flymake-proc--get-project-include-dirs-function)
95239	(flymake-proc--get-project-include-dirs-imp)
95240	(flymake-proc--get-include-dirs-dot) (flymake-proc--get-tex-args)
95241	(flymake-proc--find-make-buildfile)
95242	(flymake-proc--get-syntax-check-program-args)
95243	(flymake-proc--init-create-temp-source-and-master-buffer-copy)
95244	(flymake-proc--init-find-buildfile-dir)
95245	(flymake-proc--get-full-nonpatched-file-name)
95246	(flymake-proc--get-full-patched-file-name) (flymake-proc--base-dir,
95247	flymake-proc--temp-master-file-name) (flymake-proc--master-file-name)
95248	(flymake-proc--temp-source-file-name)
95249	(flymake-proc--delete-temp-directory) (flymake-proc--kill-process)
95250	(flymake-proc--start-syntax-check-process)
95251	(flymake-proc--compilation-is-running)
95252	(flymake-proc--safe-delete-directory) (flymake-proc--safe-delete-file)
95253	(flymake-proc--get-program-dir) (flymake-proc--restore-formatting)
95254	(flymake-proc--clear-project-include-dirs-cache)
95255	(flymake-proc--project-include-dirs-cache)
95256	(flymake-proc--get-system-include-dirs)
95257	(flymake-proc--get-project-include-dirs)
95258	(flymake-proc--add-project-include-dirs-to-cache)
95259	(flymake-proc--get-project-include-dirs-from-cache)
95260	(flymake-proc--post-syntax-check) (flymake-proc--process-sentinel)
95261	(flymake-proc--process-filter) (flymake-proc--create-master-file)
95262	(flymake-proc--find-buffer-for-file)
95263	(flymake-proc--copy-buffer-to-temp-buffer)
95264	(flymake-proc--read-file-to-temp-buffer)
95265	(flymake-proc--save-buffer-in-file) (flymake-proc--replace-region,
95266	flymake-proc--check-include)
95267	(flymake-proc--check-patch-master-file-buffer)
95268	(flymake-proc--master-file-compare)
95269	(flymake-proc--find-possible-master-files)
95270	(flymake-proc--included-file-name, flymake-proc--same-files)
95271	(flymake-proc--fix-file-name, flymake-proc--find-buildfile)
95272	(flymake-proc--clear-buildfile-cache)
95273	(flymake-proc--add-buildfile-to-cache)
95274	(flymake-proc--get-buildfile-from-cache)
95275	(flymake-proc--find-buildfile-cache)
95276	(flymake-proc--get-real-file-name-function)
95277	(flymake-proc--get-cleanup-function) (flymake-proc--get-init-function)
95278	(flymake-proc--get-file-name-mode-and-masks)
95279	(flymake-proc--processes): Rename to internal symbol from
95280	flymake-proc- version.
95281
952822017-10-03  João Távora  <joaotavora@gmail.com>
95283
95284	Completely rewrite Flymake's subprocess output processing
95285
95286	Instead of parsing and matching regexps line-by-line, insert
95287	subprocess output in a separate buffer and parse using
95288	`search-forward-regexp'.  This eventually enables multi-line error
95289	patterns and simplifies code all around.  Store per-check information
95290	in the subprocess using `process-get' and `process-put'.  Treat error
95291	messages, warnings, etc. more generically as "diagnostics".  Create
95292	these objects as soon as possible, reusing existing `flymake-ler'
95293	structure.  Fix some whitespace.
95294
95295	* lisp/progmodes/flymake.el (cl-lib): Require also when
95296	loading.
95297	(flymake--fix-line-numbers): Rename from
95298	flymake-fix-line-numbers.  Simplify.
95299	(flymake-report): Call flymake--fix-line-numbers.  Rearrange
95300	plain diagnostics list into alist format expected by
95301	flymake-highlight-err-lines.
95302
95303	* lisp/progmodes/flymake-proc.el (flymake-process-filter): Insert
95304	process output and parse in dedicated output buffer.
95305	(flymake-proc--diagnostics-for-pattern): New helper function.
95306	(flymake-process-sentinel): Call flymake-post-syntax-check with
95307	collected diagnostics.  Kill output buffer.
95308	(flymake-post-syntax-check): Receive diagnostics as third argument.
95309	(flymake-parse-output-and-residual, flymake-new-err-info)
95310	(flymake-parse-residual, flymake-parse-err-lines)
95311	(flymake-split-output, flymake-proc-parse-line)
95312	(flymake-output-residual): Delete.
95313	(flymake-start-syntax-check-process): Use make-process.	 Setup
95314	dedicated an output buffer
95315
953162017-10-03  João Távora  <joaotavora@gmail.com>
95317
95318	Flymake provides flymake-report re-entry point for backends
95319
95320	* lisp/progmodes/flymake-proc.el (flymake-post-syntax-check):
95321	Simplify.  Call flymake-report.
95322
95323	* lisp/progmodes/flymake.el (flymake-report): New function.
95324
953252017-10-03  João Távora  <joaotavora@gmail.com>
95326
95327	Split Flymake into flymake.el into flymake-proc.el (again!)
95328
95329	After deciding that this work would continue on master only, which
95330	caused two commits named
95331
95332	   Revert "Split flymake.el into flymake-proc.el and flymake-ui.el"
95333
95334	and
95335
95336	   Revert "Add flymake-backends defcustom"
95337
95338	to be added to the emacs-26 branch, further discussion reversed that
95339	decision.
95340
95341	   See:
95342
95343	     https://lists.gnu.org/r/emacs-devel/2017-09/msg01020.html
95344	     https://lists.gnu.org/r/emacs-devel/2017-09/msg01030.html
95345
95346	This means that those two commits MUST be merged to master AFTER ALL.
95347
95348	flymke-proc.el contains the main syntax-checking backend, while
95349	flymake.el keeps mostly the UI part.
95350
95351	* lisp/progmodes/flymake-proc.el: New file.  Require flymake.
95352
95353	* lisp/progmodes/flymake.el: Require flymake-proc.el at the end.
95354
953552017-10-03  Nicolas Petton  <nicolas@petton.fr>
95356
95357	Update authors.el
95358
95359	* admin/authors.el (authors-ignored-files, authors-valid-file-names)
95360	(authors-renamed-files-alist): Additions.
95361
953622017-10-03  Noam Postavsky  <npostavs@gmail.com>
95363
95364	Give more helpful messages for python completion setup failures
95365
95366	* lisp/progmodes/python.el (python-shell-completion-native-setup): In
95367	case the completion setup failed with some exception, print out the
95368	exception type and message.  If libedit is detected, raise an
95369	exception, since this is known to fail.
95370
953712017-10-02  Eli Zaretskii  <eliz@gnu.org>
95372
95373	Fix the --without-x build
95374
95375	* src/frame.c (Ficonify_frame) [HAVE_WINDOW_SYSTEM]: Use
95376	frame_parent only in GUI builds to avoid compilation errors in
95377	--without-x builds.  (Bug#28611)
95378
953792017-10-02  Paul Eggert  <eggert@day>
95380
95381	Fix customization of zoneinfo-style-world-list
95382
95383	A customizable variable's initial value cannot depend on that of
95384	another customizable variable, since the variables are initialized
95385	in other than textual order.  Problem reported by N. Jackson
95386	(Bug#24291).
95387	* lisp/time.el (display-time-world-list): Default to t,
95388	a special value that expands to zoneinfo-style-word-list
95389	if that works, and to legacy-style-word-list otherwise.
95390	(time--display-world-list): New function.
95391	(display-time-world, display-time-world-timer): Use it.
95392
953932017-10-02  Alan Mackenzie  <acm@muc.de>
95394
95395	Fix a CC Mode brace stack cache bug.
95396
95397	* lisp/progmodes/cc-engine.el (c-update-brace-stack): Call
95398	c-beginning-of-current-token after a failing search operation, to ensure we
95399	don't cache a point inside a token.
95400
954012017-10-02  Paul Eggert  <eggert@cs.ucla.edu>
95402
95403	* etc/PROBLEMS: Document Bug#26638.
95404
954052017-10-02  Paul Eggert  <eggert@cs.ucla.edu>
95406
95407	Prefer HTTPS to HTTP for gnu.org
95408
95409	This fixes some URLs I omitted from my previous pass,
95410	notably those in lists.gnu.org.  Although lists.gnu.org
95411	does not yet support TLS 1.1, TLS 1.0 is better than nothing.
95412	* lisp/erc/erc.el (erc-official-location):
95413	* lisp/mail/emacsbug.el (report-emacs-bug):
95414	Use https:, not http:.
95415
954162017-10-02  Paul Eggert  <eggert@cs.ucla.edu>
95417
95418	Merge from Gnulib
95419
95420	This is mostly to change http: to https: in licenses.
95421	* COPYING, build-aux/config.guess, build-aux/config.sub:
95422	* doc/emacs/doclicense.texi, doc/emacs/gpl.texi:
95423	* doc/lispintro/doclicense.texi, doc/lispref/doclicense.texi:
95424	* doc/lispref/gpl.texi, doc/misc/doclicense.texi:
95425	* doc/misc/gpl.texi, etc/COPYING, leim/COPYING:
95426	* lib-src/COPYING, lib/COPYING, lisp/COPYING, lwlib/COPYING:
95427	* msdos/COPYING, nt/COPYING, src/COPYING:
95428	Copy from Gnulib.
95429
954302017-10-01  Simen Heggestøyl  <simenheg@gmail.com>
95431
95432	Keep eww buffer current when looking up CSS on MDN
95433
95434	* lisp/textmodes/css-mode.el (css-lookup-symbol): Keep the eww buffer
95435	current when looking up CSS documentation on MDN.  This fixes a bug
95436	where the eww buffer's content sometimes get mangled when switching
95437	buffers mid-render.
95438
954392017-10-01  Charles A. Roelli  <charles@aurox.ch>
95440
95441	Workaround for faulty localtime() under macOS 10.6
95442
95443	* lisp/org/org-clock.el (org-clock--oldest-date): Only execute
95444	'decode-time' on times later than year -2**31 under macOS 10.6.
95445	See Bug#27706.
95446
954472017-10-01  Alan Mackenzie  <acm@muc.de>
95448
95449	Doc amendment for syntax-ppss.
95450
95451	* doc/lispref/syntax.texi (Position Parse): Note, twice, that syntax-ppss is
95452	equivalent to parse-partial-sexp from the beginning of THE VISIBLE PART OF the
95453	buffer.  Final part of the fix for bug #22983.
95454
954552017-10-01  Charles A. Roelli  <charles@aurox.ch>
95456
95457	Remove incorrect NEWS entry about 'find-library'
95458
95459	* etc/NEWS (Changes in Emacs 26.1): Remove an entry about
95460	'find-library' taking a prefix argument to pop to a different
95461	window.  This behavior was added in "Allow a prefix argument to
95462	find-library to pop to a different window" (commit e1f2d14a), and
95463	then removed in "New commands: find-library-other-window,
95464	find-library-other-frame" (commit 021430f4).
95465
954662017-10-01  Alan Mackenzie  <acm@muc.de>
95467
95468	Remove inadvertent changes to syntax.texi in last commit.
95469
95470	* doc/lispref/syntax.texi (Position Parse): revert changes.
95471
954722017-10-01  Alan Mackenzie  <acm@muc.de>
95473
95474	Amend documentation for text-quoting-style becoming a user option.
95475
95476	* doc/lispref/control.texi (Signaling Errors):
95477	* doc/lispref/display.texi (Displaying Messages):
95478	* doc/lispref/strings.texi (Formatting Strings):
95479	Edit for brevity, farming out the details to the new
95480	Text Quoting Style node.
95481	* doc/lispref/help.texi (Text Quoting Style): New section.
95482	Move detailed discussion of text-quoting-style here.
95483	Add discussion about how to output grave accent and apostrophe in
95484	documentation and messages.  Adjust xrefs to point to this section
95485	when appropriate.
95486	* etc/NEWS: text-quoting-style semantics have not changed.
95487
954882017-10-01  Alan Mackenzie  <acm@muc.de>
95489
95490	Make the value nil in text-quoting-style mean what it does in Emacs 25.
95491
95492	This is a partial reversion of yesterday's commit by the same author, which
95493	changed the meaning of nil and introduced the new value t.
95494
95495	* src/doc.c (text_quoting_style, text-quoting-style)
95496	(internal--text-quoting-flag): Revert yesterday's changes.
95497
95498	* lisp/cus-start.el: (top level): Amend the entry for text-quoting-style.
95499
95500	* etc/NEWS: Amend the entry for text-quoting-style.
95501
95502	* doc/lispref/control.texi (Signalling Errors)
95503	* doc/lispref/display.texi (Displaying Messages)
95504	* doc/lispref/strings.texi (Formatting Strings): Bind text-quoting-style to
95505	grave rather than nil to inhibit translation of quotes.
95506
95507	* doc/lispref/help.texi (Keys in Documentation): Revert the description of the
95508	proposed new default, t.
95509
955102017-10-01  Alan Mackenzie  <acm@muc.de>
95511
95512	Make text-quoting-style customizable.  Introduce t and new meaning for nil.
95513
95514	A value of nil for text-quoting-style now means "no translation".  t means
95515	"Use curved quotes if displayable".
95516
95517	* src/doc.c (text-quoting-style (function)): modify for new semantics.
95518	(text-quoting-style (variable)): Amend the doc string, set the default value
95519	to t.
95520
95521	* lisp/cus-start.el: (top level): Create a customize entry for
95522	text-quoting-style in group display.
95523
95524	* etc/NEWS: Amend the entry for text-quoting-style.
95525
95526	* doc/emacs/display.texi (Text Display): Describe the translation of ASCII
95527	quotes to curved quotes, and how to influence or inhibit it.
95528
95529	* doc/lispref/control.texi (Signalling Errors)
95530	* doc/lispref/display.texi (Displaying Messages)
95531	* doc/lispref/strings.texi (Formatting Strings): Describe binding
95532	text-quoting-style to nil to inhibit unwanted quote translation.
95533
95534	* doc/lispref/help.texi (Keys in Documentation): Change text-quoting-style
95535	from a variable to a user option.  Describe its changed set of values.  State
95536	that it can be customized freely.
95537
955382017-10-01  Michael Albinus  <michael.albinus@gmx.de>
95539
95540	eshell.texi improvements
95541
95542	* doc/misc/eshell.texi (Built-ins): eshell/sudo is a compiled
95543	Lisp function in `em-tramp.el'.  Mention also $*, $1, $2, ...
95544	(Aliases): Add $*, $1, $2, ... to the variable index.
95545
955462017-08-15  Alan Third  <alan@breton-build.holly.idiocy.org>
95547
95548	Fix ns-win.el on GNUstep
95549
95550	* lisp/term/ns-win.el: Appkit version check only works on macOS, so
95551	don't try it when not using Cocoa.
95552
955532017-10-01  Martin Rudalics  <rudalics@gmx.at>
95554
95555	Fix reference style in org.texi
95556
95557	* doc/misc/org.texi (A Texinfo example): Fix reference style.
95558
955592017-10-01  Martin Rudalics  <rudalics@gmx.at>
95560
95561	Improve handling of iconification of child frames (Bug#28611)
95562
95563	* src/frame.c (Ficonify_frame): Handle `iconify-child-frame' option.
95564	(syms_of_frame): New symbols Qiconify_top_level and Qmake_invisible.
95565	(iconify_child_frame): New option.
95566	* lisp/cus-start.el (iconify-child-frame): Add customization
95567	properties.
95568	* doc/lispref/frames.texi (Child Frames): Describe new option
95569	`iconify-child-frame'.  Don't index "top-level frame" twice.
95570
955712017-10-01  Noam Postavsky  <npostavs@gmail.com>
95572
95573	Revert "Don't lose arguments to eshell aliases (Bug#27954)"
95574
95575	It broke the established argument handling methods provided by eshell
95576	aliases (Bug#28568).
95577	* doc/misc/eshell.texi (Aliases): Fix example, call out use of
95578	arguments in aliases.
95579	* lisp/eshell/em-alias.el (eshell-maybe-replace-by-alias): Ignore
95580	ARGS.
95581
955822017-10-01  Noam Postavsky  <npostavs@gmail.com>
95583
95584	Make "unsafe directory" error message more informative (Bug#865)
95585
95586	* lisp/server.el (server-ensure-safe-dir): Produce a description for
95587	each "unsafe" condition.
95588
955892017-10-01  Eric Abrahamsen  <eric@ericabrahamsen.net>
95590
95591	Fix slot typecheck in eieio-persistent
95592
95593	* lisp/emacs-lisp/eieio-base.el (eieio-persistent-slot-type-is-class-p):
95594	  An `or' form can specify multiple potential classes (or null) as
95595	  valid types for a slot, but previously only the final element of the
95596	  `or' was actually checked. Now returns all valid classes in the `or'
95597	  form.
95598	  (eieio-persistent-validate/fix-slot-value): Check if proposed value
95599	  matches any of the valid classes.
95600	* test/lisp/emacs-lisp/eieio-tests/eieio-test-persist.el
95601	  (eieio-test-multiple-class-slot): Test this behavior.
95602
956032017-09-30  Dmitry Gutov  <dgutov@yandex.ru>
95604
95605	Fix semantic-ia-fast-jump
95606
95607	* lisp/cedet/semantic/ia.el (semantic-ia--fast-jump-helper):
95608	Use `pop-to-buffer-same-window' (bug#28645).
95609
956102017-09-30  Kaushal Modi  <kaushal.modi@gmail.com>
95611
95612	Bind vc-region-history
95613
95614	* lisp/vc/vc-hooks.el (vc-prefix-map):
95615	Bind `vc-region-history' to 'C-x v h', which was earlier bound to
95616	`vc-insert-headers' (Bug#27644).
95617	* doc/emacs/maintaining.texi (VC Change Log): Mention the new binding.
95618	* doc/emacs/vc1-xtra.texi (Version Headers): Remove the association of
95619	'C-x v h' with `vc-insert-headers'.
95620	(https://lists.gnu.org/r/emacs-devel/2017-09/msg00957.html)
95621
956222017-09-30  Allen Li  <vianchielfaura@gmail.com>  (tiny change)
95623
95624	Exit macro definition on undefined keys
95625
95626	* lisp/subr.el (undefined): Error out of kmacro definition, if any.
95627	(Bug#28008)
95628
956292017-09-30  Tim Landscheidt  <tim@tim-landscheidt.de>  (tiny change)
95630
95631	Reset bidi-paragraph-direction on article rendering
95632
95633	* lisp/gnus/gnus-art.el (gnus-request-article-this-buffer): Reset
95634	bidi-paragraph-direction on article rendering.  (Bug#28454)
95635
956362017-09-30  Eli Zaretskii  <eliz@gnu.org>
95637
95638	Fix url-http use of url-current-object
95639
95640	* lisp/url/url-http.el (url-http): Bind url-current-object before
95641	calling url-http-find-free-connection.  (Bug#28515)
95642
956432017-09-30  Andy Moreton  <andrewjmoreton@gmail.com>
95644
95645	Avoid assertions in vc-hg.el on MS-Windows
95646
95647	* lisp/vc/vc-hg.el (vc-hg--pcre-to-elisp-re)
95648	(vc-hg--slurp-hgignore, vc-hg--read-repo-requirements)
95649	(vc-hg-state-fast): Use file-name-absolute-p and directory-name-p
95650	instead of relying on Unix file-name syntax.  This avoids
95651	assertion violations on MS-Windows.
95652
956532017-09-30  Eli Zaretskii  <eliz@gnu.org>
95654
95655	Improve documentation of 'copy-sequence'
95656
95657	* src/fns.c (Fcopy_sequence):
95658	* doc/lispref/sequences.texi (Sequence Functions): Mention the
95659	exception when copying an empty sequence.  (Bug#28627)
95660
956612017-09-30  Eli Zaretskii  <eliz@gnu.org>
95662
95663	Minor update of ack.texi
95664
95665	* doc/emacs/ack.texi (Acknowledgments): Update Eli Zaretskii's
95666	contributions.
95667
956682017-09-30  N. Jackson  <nljlistbox2@gmail.com>  (tiny change)
95669
95670	* doc/emacs/emacs.texi (Acknowledgments): Add more contributors.
95671
956722017-09-30  Eli Zaretskii  <eliz@gnu.org>
95673
95674	Improve indexing of multi-file/buffer Isearch commands
95675
95676	* doc/emacs/maintaining.texi (Identifier Search): Change wording
95677	of index entries to make them different from those for multi-file
95678	isearch commands.  (Bug#28584)
95679	* doc/emacs/search.texi (Other Repeating Search): Index the
95680	multi-* commands.  (Bug#28584)  Rearrange the indexing to keep
95681	each index entry close to its subject.
95682
956832017-09-30  Mark Oteiza  <mvoteiza@udel.edu>
95684
95685	Add CAM02 JCh and CAM02-UCS J'a'b' conversions
95686
95687	* src/lcms.c (rad2deg, parse_jch_list, parse_jab_list, xyz_to_jch):
95688	(jch_to_xyz, jch_to_jab, jab_to_jch): New functions.
95689	(lcms-jch->xyz, lcms-jch->xyz, lcms-jch->jab, lcms-jab->jch): New Lisp
95690	functions.
95691	(lcms-cam02-ucs): Refactor.
95692	(syms_of_lcms2): Declare new functions.
95693	* test/src/lcms-tests.el (lcms-roundtrip, lcms-ciecam02-gold):
95694	(lcms-jmh->cam02-ucs-silver): New tests.
95695	* etc/NEWS: Mention new functions.
95696
956972017-09-30  Eli Zaretskii  <eliz@gnu.org>
95698
95699	Fix uses of @kindex in the Emacs manual
95700
95701	* doc/emacs/programs.texi (Expressions, Semantic, Hungry Delete):
95702	* doc/emacs/mark.texi (Global Mark Ring)
95703	(Disabled Transient Mark):
95704	* doc/emacs/buffers.texi (Select Buffer):
95705	* doc/emacs/mule.texi (File Name Coding): Fix @kindex entries
95706	which used @key.  Reported by Marcin Borkowski <mbork@mbork.pl>.
95707
957082017-09-30  Paul Eggert  <eggert@cs.ucla.edu>
95709
95710	Merge from gnulib
95711
95712	This incorporates:
95713	2017-09-28 string: code style
95714	2017-09-25 sys_types: update URL
95715	2017-09-23 install-sh: do not assume / = //
95716	2017-09-21 mktime: port to OpenVMS
95717	* build-aux/install-sh, m4/mktime.m4, m4/string_h.m4:
95718	* m4/sys_types_h.m4: Copy from Gnulib.
95719	* lib/gnulib.mk.in: Regenerate.
95720
957212017-09-30  Paul Eggert  <eggert@cs.ucla.edu>
95722
95723	Prefer HTTPS to HTTP for gnu.org
95724
95725	This catches some URLs I missed in my previous scan,
95726	or perhaps were added after the scan.
95727
957282017-09-30  Noam Postavsky  <npostavs@gmail.com>
95729
95730	Wait for frame visibility with timeout in w32term too
95731
95732	* src/w32term.c (syms_of_w32term) [x-wait-for-event-timeout]: New
95733	variable.
95734	(x_make_frame_visible): Wait for frame to become visible according to
95735	its value.
95736	(input_signal_count): Remove.
95737
957382017-09-30  Noam Postavsky  <npostavs@gmail.com>
95739
95740	Bring back the busy wait after x_make_frame_visible (Bug#25521)
95741
95742	But wait specfically for a MapNotify event, and only for a
95743	configurable amount of time.
95744	* src/xterm.c (syms_of_xterm) [x-wait-for-event-timeout]: New
95745	variable.
95746	(x_wait_for_event): Use it instead of hardcoding the wait to 0.1s.
95747	(x_make_frame_visible): Call x_wait_for_event at the end.
95748	* etc/NEWS: Announce x_wait_for_event.
95749
957502017-09-29  Eli Zaretskii  <eliz@gnu.org>
95751
95752	Fix last doc string change in simple.el
95753
95754	* lisp/simple.el (shell-command-saved-pos)
95755	(region-extract-function, region-bounds): Doc fixes.  (Bug#28609)
95756
957572017-09-29  Eli Zaretskii  <eliz@gnu.org>
95758
95759	Revert "bug#28609: simple.el"
95760
95761	This reverts commit a75ab3b3fb8ab69ef38a94403d061f88f3b5b63e.
95762
957632017-09-29  Devon Sean McCullough  <Emacs-Hacker2017@jovi.net>
95764
95765	bug#28609: simple.el
95766
95767	Correct grammar; also, call a pair a pair.
95768
95769	(cherry picked from commit 25ef543a97a80718cc4eb33734d393420a43f41e)
95770
957712017-09-29  Rasmus  <rasmus@gmx.us>
95772
95773	Merge branch 'emacs-26' into scratch/org-mode-merge
95774
957752017-09-29  Noam Postavsky  <npostavs@gmail.com>
95776
95777	Fix ert backtrace saving for non-`signal'ed errors (Bug#28333)
95778
95779	* lisp/emacs-lisp/ert.el (ert--run-test-debugger): Take the frames
95780	above the `debugger' frame, rather than assuming there will be a
95781	`signal' frame.
95782
957832017-09-28  Alan Third  <alan@idiocy.org>
95784
95785	Revert "Fix build on macOS (bug#28571)"
95786
95787	This reverts commit fec63089d53d2196b0348086aeed70277fbc02c0.
95788
95789	Prematurely pushed.
95790
957912017-09-28  Alan Third  <alan@idiocy.org>
95792
95793	Fix build on macOS (bug#28571)
95794
95795	* src/conf_post.h (HAVE_FUTIMENS, HAVE_FUTIMESAT, HAVE_UTIMENSAT)
95796	[DARWIN_OS]: Undefine.
95797
957982017-09-28  Simen Heggestøyl  <simenheg@gmail.com>
95799
95800	Add tests for `css-current-defun-name'
95801
95802	* test/lisp/textmodes/css-mode-tests.el (css-test-current-defun-name)
95803	(css-test-current-defun-name-nested)
95804	(css-test-current-defun-name-complex): New tests for
95805	`css-current-defun-name'.
95806
958072017-09-28  Martin Rudalics  <rudalics@gmx.at>
95808
95809	In w32fullscreen_hook don't add decorations to undecorated frames
95810
95811	* src/w32term.c (w32fullscreen_hook): Do not add (or try to
95812	remove) decorations for undecorated frames.
95813
958142017-09-28  João Távora  <joaotavora@gmail.com>
95815
95816	Revert "Split flymake.el into flymake-proc.el and flymake-ui.el"
95817
95818	In other words, re-coalesce the two files,
95819	lisp/progmodes/flymake-proc.el and lisp/progmodes/flymake-ui.el, back
95820	into a single one, lisp/progmodes/flymake.el.
95821
95822	The changesets "Prefer HTTPS to FTP and HTTP in documentation" and
95823	"allow nil init in flymake-allowed-file-name-masks to disable flymake"
95824	are kept in place in the new lisp/progmodes/flymake.el.
95825
95826	This reverts Git commit eb34f7f5a29e7bf62326ecb6e693f28878be28cd.
95827
95828	Don't merge this back to master as development happening there builds
95829	upon this work. See also
95830	https://lists.gnu.org/r/emacs-devel/2017-09/msg00932.html.
95831
958322017-09-28  João Távora  <joaotavora@gmail.com>
95833
95834	Revert "Add flymake-backends defcustom"
95835
95836	This reverts Git commit 13993c46a21495167517f76d2e36b6c09ac5e89e.
95837
95838	Don't merge this back to master as development happening there builds
95839	upon this work. See also
95840	https://lists.gnu.org/r/emacs-devel/2017-09/msg00932.html
95841
958422017-09-27  Paul Eggert  <eggert@cs.ucla.edu>
95843
95844	* src/editfns.c (styled_format): Fix typo in previous change.
95845
958462017-09-27  Paul Eggert  <eggert@cs.ucla.edu>
95847
95848	Avoid some unnecessary copying in Fformat etc.
95849
95850	This patch is just for performance; it should not affect behavior.
95851	On my platform, it made the microbenchmark (format "%S" load-path)
95852	run about 45% faster.  It should also speed up calls like (message
95853	"%s" STRING).
95854	* src/callint.c (Fcall_interactively):
95855	* src/dbusbind.c (XD_OBJECT_TO_STRING):
95856	* src/editfns.c (Fmessage, Fmessage_box):
95857	* src/xdisp.c (vadd_to_log, Ftrace_to_stderr):
95858	Use styled_format instead of Fformat or Fformat_message,
95859	to avoid unnecessary copying.
95860	* src/editfns.c (styled_format): New arg NEW_RESULT.
95861	All uses changed.  Reuse an input string if it has the
95862	right value and if !NEW_RESULT.
95863	* src/lisp.h (style_format): New decl.
95864
958652017-09-26  John Wiegley  <johnw@newartisans.com>
95866
95867	lisp/simple.el: Indicate when a list of pairs is meant in a docstring
95868
958692017-09-26  Devon Sean McCullough  <Emacs-Hacker2017@jovi.net>
95870
95871	bug#28609: simple.el
95872
95873	Correct grammar; also, call a pair a pair.
95874
958752017-09-26  Dmitry Gutov  <dgutov@yandex.ru>
95876
95877	Use a separate syntax-ppss cache for narrowed buffers
95878
95879	* lisp/emacs-lisp/syntax.el (syntax-ppss-wide):
95880	New variable, to contain the data from `syntax-ppss-last' and
95881	`syntax-ppss-cache'.
95882	(syntax-ppss-cache, syntax-ppss-last): Remove.
95883	(syntax-ppss-narrow, syntax-ppss-narrow-start): New variables.
95884	(syntax-ppss-flush-cache): Flush both caches.
95885	(syntax-ppss--data): Return the appropriate last result and
95886	buffer cache for the current restriction.
95887	(syntax-ppss, syntax-ppss-debug): Use it (bug#22983).
95888
958892017-09-26  Joerg Behrmann  <behrmann@physik.fu-berlin.de>  (tiny change)
95890
95891	Improve python3-compatibility of fallback completion (Bug#28499)
95892
95893	* lisp/progmodes/python.el (python-eldoc-setup-code): Use
95894	inspect.getfullargspec instead of inspect.getargspec to avoid a
95895	deprecation warning on every usage of eldoc in python-mode.
95896
958972017-09-26  Noam Postavsky  <npostavs@gmail.com>
95898
95899	Fix subr-x-tests when running from elc
95900
95901	* test/lisp/emacs-lisp/subr-x-tests.el (subr-x-and-let*-test-group-1):
95902	Use `eval' around the `should-error' cases.
95903
959042017-09-26  Noam Postavsky  <npostavs@gmail.com>
95905
95906	* lisp/eshell/esh-util.el (eshell-condition-case): Add debug declaration.
95907
959082017-09-26  Noam Postavsky  <npostavs@gmail.com>
95909
95910	Make sh-indentation into an alias for sh-basic-offset (Bug#21751)
95911
95912	* lisp/progmodes/sh-script.el (sh-indentation): Redefine as obsolete
95913	variable alias for `sh-basic-offset'.
95914	(sh-mode, sh-smie--indent-continuation)
95915	(sh-smie-rc-rules, sh-basic-indent-line): Replace `sh-indentation'
95916	with `sh-basic-offset'.
95917
959182017-09-26  Noam Postavsky  <npostavs@gmail.com>
95919
95920	Fix loading of smie-config rules (Bug#24848)
95921
95922	* lisp/emacs-lisp/smie.el (smie-config--setter): Use `set-default'
95923	instead of `setq-default'.
95924	(smie-config): Use `custom-initialize-set' instead of
95925	`custom-initialize-default' as the :initialize argument.
95926
95927	* lisp/progmodes/sh-script.el (sh-learn-buffer-indent): Mention that
95928	we call `smie-config-guess' so that the user will have a chance to
95929	find the correct docstring to consult.  Remove hedging comments
95930	regarding use of abnormal hooks.
95931
959322017-09-26  Dmitry Gutov  <dgutov@yandex.ru>
95933
95934	Reset default-directory inside *xref-grep* buffer
95935
95936	* lisp/progmodes/xref.el (xref-collect-matches):
95937	Reset default-directory, too. (Bug#28575)
95938
959392017-09-25  Michael Albinus  <michael.albinus@gmx.de>
95940
95941	* test/lisp/net/tramp-tests.el (tramp-test21-file-links): Special
95942	code for smb.
95943
959442017-09-25  Mark Oteiza  <mvoteiza@udel.edu>
95945
95946	Loosen strict parsing requirement for desktop files
95947
95948	There are other desktop-looking files, for instance those having to do
95949	with MIME typess, that would benefit from being able to be read by this
95950	function.  It helps to have some flexibility.
95951	* lisp/xdg.el (xdg-desktop-read-file): Remove an error condition.
95952	* test/lisp/xdg-tests.el: Remove a test.
95953
959542017-09-25  Mark Oteiza  <mvoteiza@udel.edu>
95955
95956	* lisp/xdg.el (xdg-thumb-uri): Fix doc string.
95957
959582017-09-25  Martin Rudalics  <rudalics@gmx.at>
95959
95960	Fix documentation of `make-frame' and related variables and hooks
95961
95962	* lisp/frame.el (before-make-frame-hook)
95963	(after-make-frame-functions, frame-inherited-parameters)
95964	(make-frame): Fix doc-strings.
95965	* doc/lispref/frames.texi (Creating Frames): Fix description
95966	of `make-frame' and related variables and hooks.
95967
959682017-09-24  Eric Abrahamsen  <eric@ericabrahamsen.net>
95969
95970	Accept new `always' value for option `buffer-offer-save'
95971
95972	Also revert ee512e9a82
95973
95974	* lisp/files.el (buffer-offer-save): In addition to nil and t, now
95975	  allows a third symbol value, `always'. A buffer where this option is
95976	  set to `always' will always be offered for save by
95977	  `save-some-buffers'.
95978	  (save-some-buffers): Check the exact value of this buffer-local
95979	  variable. No longer check the buffer name, or the value of
95980	  `write-contents-functions'.
95981	* doc/lispref/buffers.texi (Killing Buffers): Note change in manual.
95982	* doc/lispref/files.texi (Saving Buffers): Remove note about buffer
95983	  names.
95984	* etc/NEWS: Mention in NEWS.
95985
959862017-09-24  Alan Third  <alan@idiocy.org>
95987
95988	Improve new NS scrolling variable names
95989
95990	* src/nsterm.m (ns-use-system-mwheel-acceleration): Replace with
95991	'ns-use-mwheel-acceleration'.
95992	(ns-touchpad-scroll-line-height): Replace with
95993	'ns-mwheel-line-height'.
95994	(ns-touchpad-use-momentum): Replace with 'ns-use-mwheel-momentum'.
95995	* etc/NEWS: Change variable names.
95996
959972017-09-24  Philipp Stephani  <phst@google.com>
95998
95999	Document 'replace-buffer-contents' in the manual.
96000
96001	* doc/lispref/text.texi (Replacing): New node.
96002
960032017-09-23  Alan Third  <alan@idiocy.org>
96004
96005	Fix undecorated frame resizing issues on NS (bug#28512)
96006
96007	* src/nsterm.m (EmacsView::updateFrameSize): Don't wait for the
96008	toolbar on undecorated frames.
96009	(EmacsView::initFrameFromEmacs): Group window flags correctly.
96010
960112017-09-23  Eli Zaretskii  <eliz@gnu.org>
96012
96013	Fix doc string of 'dired-listing-switches'
96014
96015	* lisp/dired.el (dired-listing-switches): Fix the quoting
96016	example.  (Bug#28569)
96017
960182017-09-23  Eli Zaretskii  <eliz@gnu.org>
96019
96020	Documentation improvements for 'display-line-numbers'
96021
96022	* doc/emacs/display.texi (Display Custom): Document a few more
96023	options for display-line-numbers.  (Bug#28533)  Fix a typo.
96024
960252017-09-22  Eli Zaretskii  <eliz@gnu.org>
96026
96027	Fix last change in bat-mode.el
96028
96029	* lisp/progmodes/bat-mode.el (bat-font-lock-keywords): Fix last
96030	change.  (Bug#28311)
96031
960322017-09-22  Eli Zaretskii  <eliz@gnu.org>
96033
96034	Fix restoring in GUI sessions desktop saved in TTY sessions
96035
96036	* lisp/frameset.el (frameset-filter-font-param): New function.
96037	(frameset-persistent-filter-alist): Use it for processing the
96038	'font' frame parameter.  (Bug#17352)
96039
960402017-09-22  Eli Zaretskii  <eliz@gnu.org>
96041
96042	Improve syntax highlighting in bat-mode
96043
96044	* lisp/progmodes/bat-mode.el (bat-font-lock-keywords): Improve
96045	font-locking of environment variables.  Suggested by Achim Gratz
96046	<Stromeko@nexgo.de>.  (Bug#28311)  (Bug#18405)
96047
960482017-09-22  Eli Zaretskii  <eliz@gnu.org>
96049
96050	Document the 'list-FOO' convention
96051
96052	* doc/lispref/tips.texi (Coding Conventions): Document the
96053	list-FOO convention.
96054
960552017-09-22  Mark Oteiza  <mvoteiza@udel.edu>
96056
96057	Expose viewing conditions in CAM02-UCS metric
96058
96059	Also add tests from the colorspacious library.  Finally, catch an
96060	errant calculation, where degrees were not being converted to radians.
96061	* src/lcms.c (deg2rad, default_viewing_conditions):
96062	(parse_viewing_conditions): New functions.
96063	(lcms-cam02-ucs): Add comments pointing to references used.  Expand
96064	the docstring and explain viewing conditions.  JCh hue is given in
96065	degrees and needs to be converted to radians.
96066	(lcms-d65-xyz): Remove.  No need to duplicate this in Lisp or make the
96067	API needlessly impure.
96068	* test/src/lcms-tests.el: Reword commentary.
96069	(lcms-rgb255->xyz): New function.
96070	(lcms-cri-cam02-ucs): Fix let-binding.
96071	(lcms-dE-cam02-ucs-silver): New test, assimilated from colorspacious.
96072
960732017-09-21  Alan Third  <alan@idiocy.org>
96074
96075	Revert "Set frame size to actual requested size (bug#18215)"
96076
96077	This reverts commit d31cd79b40dbd5459b16505a4ee4340210499277.
96078
96079	See bug#28536. I misunderstood bug#18215. It wasn't a bug.
96080
960812017-09-21  Gemini Lasswell  <gazally@runbox.com>
96082
96083	Add tests for Edebug
96084
96085	* test/lisp/emacs-lisp/edebug-tests.el: New file.
96086	* test/lisp/emacs-lisp/edebug-resources/edebug-test-code.el: New file.
96087
960882017-09-21  Gemini Lasswell  <gazally@runbox.com>
96089
96090	Catch more messages in ert-with-message-capture
96091
96092	* lisp/emacs-lisp/ert-x.el (ert-with-message-capture): Capture
96093	messages from prin1, princ and print.
96094	(ert--make-message-advice): New function.
96095	(ert--make-print-advice): New function.
96096
960972017-09-21  Tak Kunihiro  <tkk@misasa.okayama-u.ac.jp>
96098
96099	Support setting region from secondary selection and vice versa
96100
96101	* lisp/mouse.el (secondary-selection-exist-p): New function to
96102	allow callers to tell existence of the secondary selection
96103	in current buffer.
96104	(secondary-selection-to-region): New function to set
96105	beginning and end of the region from those of the secondary
96106	selection.
96107	(secondary-selection-from-region): New function to set
96108	beginning and end of the secondary selection from those of
96109	the region.  (Bug#27530)
96110
96111	* etc/NEWS: Mention the new functions.
96112
961132017-09-20  Paul Eggert  <eggert@cs.ucla.edu>
96114
96115	Fix new copy-directory bug with empty dirs
96116
96117	Problem reported by Afdam Plaice (Bug#28520) and by Eli Zaretskii
96118	(Bug#28483#34).  This is another bug that I introduced in my
96119	recent copy-directory changes.
96120	* lisp/files.el (copy-directory): Work with empty subdirectories, too.
96121	* test/lisp/files-tests.el (files-tests--copy-directory):
96122	Test for this bug.
96123
961242017-09-20  Eli Zaretskii  <eliz@gnu.org>
96125
96126	* doc/lispref/strings.texi (Formatting Strings): Improve indexing.
96127
961282017-09-20  Eli Zaretskii  <eliz@gnu.org>
96129
96130	Fix 2 testsuite tests for MS-Windows
96131
96132	* test/lisp/ibuffer-tests.el (test-buffer-list): Don't try to
96133	create files with "*" in their names.
96134	* test/src/editfns-tests.el (format-time-string-with-zone): Adapt
96135	results to MS-Windows build.  Reported by Fabrice Popineau
96136	<fabrice.popineau@gmail.com>.
96137
961382017-09-20  Mark Oteiza  <mvoteiza@udel.edu>
96139
96140	Rename timer-list to list-timers
96141
96142	* doc/emacs/anti.texi (Antinews):
96143	* doc/lispref/os.texi (Timers):
96144	* etc/NEWS:
96145	* lisp/emacs-lisp/timer-list.el:
96146	(timer-list-mode): Rename timer-list to list-timers.
96147
961482017-09-19  Alan Third  <alan@idiocy.org>
96149
96150	Provide native touchpad scrolling on macOS
96151
96152	* etc/NEWS: Describe changes.
96153	* lisp/term/ns-win.el (mouse-wheel-scroll-amount,
96154	mouse-wheel-progressive-speed): Set to smarter values for macOS
96155	touchpads.
96156	* src/nsterm.m (emacsView::mouseDown): Use precise scrolling deltas to
96157	calculate scrolling for touchpads and mouse wheels.
96158	(syms_of_nsterm): Add variables 'ns-use-system-mwheel-acceleration',
96159	'ns-touchpad-scroll-line-height' and 'ns-touchpad-use-momentum'.
96160	* src/keyboard.c (make_lispy_event): Pass on .arg when relevant.
96161	* src/termhooks.h (event_kind): Update comments re. WHEEL_EVENT.
96162	* lisp/mwheel.el (mwheel-scroll): Use line count.
96163	* lisp/subr.el (event-line-count): New function.
96164
961652017-09-19  Eli Zaretskii  <eliz@gnu.org>
96166
96167	Fix MinGW64 build broken by recent MinGW64 import libraries
96168
96169	* configure.ac (W32_LIBS): Put -lusp10 before -lgdi32, as latest
96170	MinGW64 import libraries require that.  (Bug#28493)
96171
96172	* src/Makefile.in: Adjust commentary to the new order of w32
96173	libraries.
96174
961752017-09-19  Eli Zaretskii  <eliz@gnu.org>
96176
96177	Fix crashes in 'move-point-visually' in minibuffer windows
96178
96179	* src/xdisp.c (Fmove_point_visually): Fix off-by-one error in
96180	comparing against the last valid glyph_row of a window glyph
96181	matrix.  (Bug#28505)
96182
961832017-09-19  Eli Zaretskii  <eliz@gnu.org>
96184
96185	* src/emacs.c (usage_message): Don't mention 'find-file'.
96186
961872017-09-19  Eli Zaretskii  <eliz@gnu.org>
96188
96189	Fix a minor inaccuracy in the Emacs manual
96190
96191	* doc/emacs/cmdargs.texi (Action Arguments): Don't mention
96192	'find-file', as the implementation has changed.  Reported by
96193	Everton J. Carpes <everton.carpes@gmail.com> in
96194	https://lists.gnu.org/r/help-gnu-emacs/2017-09/msg00146.html.
96195
961962017-09-19  Eli Zaretskii  <eliz@gnu.org>
96197
96198	Fix errors in flyspell-post-command-hook
96199
96200	* lisp/textmodes/ispell.el (ispell-get-decoded-string): Handle the
96201	case of a nil Nth element of the language dictionary slot.  This
96202	avoids errors in 'flyspell-post-command-hook' when switching
96203	dictionaries with some spell-checkers.  (Bug#28501)
96204
962052017-09-19  Michael Albinus  <michael.albinus@gmx.de>
96206
96207	Work on Tramp's file-truename
96208
96209	* lisp/net/tramp-sh.el (tramp-perl-file-truename):
96210	Check also for symlinks.
96211	(tramp-sh-handle-file-truename): Move check for a symlink
96212	cycle to the end.  Do not blame symlinks which look like a
96213	remote file name.
96214
96215	* lisp/net/tramp.el (tramp-handle-file-truename): Expand result.
96216
962172017-09-19  Paul Eggert  <eggert@cs.ucla.edu>
96218
96219	Fix bug with make-directory on MS-Windows root
96220
96221	* lisp/files.el (files--ensure-directory): Treat any error, not
96222	just file-already-exists, as an opportunity to check whether DIR
96223	is already a directory (Bug#28508).
96224
962252017-09-19  Tom Tromey  <tom@tromey.com>
96226
96227	Fix log-view-diff-common when point is after last entry
96228
96229	Bug#28466
96230	* lisp/vc/log-view.el (log-view-diff-common): If point is after last
96231	entry, look at the previous revision.
96232
962332017-09-18  Ken Brown  <kbrown@cornell.edu>
96234
96235	Adapt fileio-tests--symlink-failure to Cygwin
96236
96237	* test/src/fileio-tests.el (fileio-tests--symlink-failure)
96238	[CYGWIN]: Skip the case of a symlink target starting with '\';
96239	this is treated specially on Cygwin.
96240
962412017-09-18  Eric Abrahamsen  <eric@ericabrahamsen.net>
96242
96243	Ignore buffers whose name begins with a space in save-some-buffers
96244
96245	* lisp/files.el (save-some-buffers): Consider these buffers
96246	  "internal", and don't prompt the user to save them.
96247	* doc/lispref/files.texi: Document.
96248
962492017-09-18  Michael Albinus  <michael.albinus@gmx.de>
96250
96251	Improve tramp-interrupt-process robustness
96252
96253	* lisp/net/tramp.el (tramp-interrupt-process): Wait, until the
96254	process has disappeared.
96255
962562017-09-18  Michael Albinus  <michael.albinus@gmx.de>
96257
96258	Minor Tramp doc update
96259
96260	* doc/misc/tramp.texi (Frequently Asked Questions):
96261	Mention `vc-handled-backends'.
96262
962632017-09-18  Mark Oteiza  <mvoteiza@udel.edu>
96264
96265	Fix gensym
96266
96267	* lisp/subr.el (gensym): Actually implement the default prefix.
96268	* test/lisp/subr-tests.el (subr-tests--gensym): New test.
96269
962702017-09-18  Rasmus  <rasmus@gmx.us>
96271
96272	Update Org to v9.1.1
96273
96274	Please see etc/ORG-NEWS for major changes.
96275
962762017-09-18  Michael Albinus  <michael.albinus@gmx.de>
96277
96278	Cleanup in files-tests.el
96279
96280	* test/lisp/files-tests.el (files-tests--make-directory)
96281	(files-tests--copy-directory): Cleanup temporary directories.
96282
962832017-09-18  Paul Eggert  <eggert@cs.ucla.edu>
96284
96285	Remove old cl-assert calls in 'newline'
96286
96287	* lisp/simple.el (newline): Remove cl-assert calls
96288	that didn't seem to be helping us debug Bug#18913,
96289	and that caused problems as reported in Bug#28280.
96290	Suggested by Glenn Morris (Bug#28280#8).
96291
962922017-09-18  Paul Eggert  <eggert@cs.ucla.edu>
96293
96294	Avoid crash with C-g C-g in GC
96295
96296	Problem reported by Richard Stallman (Bug#17406).
96297	Based on fix suggested by Eli Zaretskii (Bug#28279#16).
96298	* src/term.c (tty_send_additional_strings):
96299	Use only safe accessors, to avoid crash when C-g C-g in GC.
96300
963012017-09-18  Paul Eggert  <eggert@cs.ucla.edu>
96302
96303	Fix format-time-string %Z bug with negative tz
96304
96305	* src/editfns.c (tzlookup): Fix sign error in %Z when a purely
96306	numeric zone is negative (Bug#28746).
96307	* test/src/editfns-tests.el (format-time-string-with-zone):
96308	Add test for this bug.
96309
963102017-09-18  Paul Eggert  <eggert@cs.ucla.edu>
96311
96312	message-citation-line-format %Z is now tz name
96313
96314	* etc/NEWS:
96315	* lisp/gnus/message.el (message-citation-line-format):
96316	Fix doc to match new behavior (Bug#28476).
96317
963182017-09-18  Mark Oteiza  <mvoteiza@udel.edu>
96319
96320	Use doc-view or pdf-tools on any window-system
96321
96322	* lisp/net/mailcap.el (mailcap-mime-data): Simply check for
96323	window-system.
96324
963252017-09-18  Paul Eggert  <eggert@cs.ucla.edu>
96326
96327	Fix bug with min and max and NaNs
96328
96329	* src/data.c (minmax_driver): Fix bug with (min 0 NaN), which
96330	mistakenly yielded 0.  Also, pacify GCC in a better way.
96331	* test/src/data-tests.el (data-tests-min): Test for the bug.
96332
963332017-09-17  Paul Eggert  <eggert@cs.ucla.edu>
96334
96335	Fix recently-introduced copy-directory bug
96336
96337	Problem reported by Andrew Christianson (Bug#28451):
96338	* lisp/files.el (copy-directory): If COPY-CONTENTS, make the
96339	destination directory if it does not exist, even if it is a
96340	directory name.  Simplify, and omit unnecessary test for an
96341	already-existing non-directory target, since make-directory
96342	diagnoses that for us now.
96343	* test/lisp/files-tests.el (files-tests--copy-directory):
96344	Test for this bug.
96345
963462017-09-17  Paul Eggert  <eggert@cs.ucla.edu>
96347
96348	Merge from Gnulib
96349
96350	This incorporates:
96351	2017-09-16 manywarnings: port to GCC on 64-bit MS-Windows
96352	2017-09-13 all: Replace many more http URLs by https URLs
96353	* build-aux/config.guess, build-aux/config.sub:
96354	* build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
96355	* lib/allocator.h, lib/count-leading-zeros.h:
96356	* lib/count-trailing-zeros.h, lib/dup2.c, lib/filevercmp.c:
96357	* lib/fstatat.c, lib/fsync.c, lib/ftoastr.c, lib/ftoastr.h:
96358	* lib/intprops.h, lib/signal.in.h, lib/stdio-impl.h, lib/stdio.in.h:
96359	* lib/unistd.in.h, lib/utimens.c, m4/alloca.m4, m4/extern-inline.m4:
96360	* m4/fstatat.m4, m4/gnulib-common.m4, m4/manywarnings.m4:
96361	* m4/std-gnu11.m4, m4/sys_types_h.m4, m4/vararrays.m4:
96362	Copy from Gnulib.
96363	* lib/gnulib.mk.in: Regenerate.
96364
963652017-09-17  Michael Albinus  <michael.albinus@gmx.de>
96366
96367	Fix compatibility problem in Tramp
96368
96369	* lisp/net/tramp.el (tramp-interrupt-process): Better error handling.
96370
96371	* lisp/net/tramp-compat.el (default-toplevel-value): Move up.
96372	(top): Do not call `tramp-change-syntax' anymore.
96373	(tramp-compat-directory-name-p): New defalias.
96374
96375	* lisp/net/tramp-adb.el (tramp-adb-handle-copy-file):
96376	* lisp/net/tramp-sh.el (tramp-sh-handle-copy-directory):
96377	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
96378	(tramp-smb-handle-copy-file): Use it.
96379
96380	* test/lisp/net/tramp-tests.el (tramp-test28-interrupt-process):
96381	Modify test.
96382
963832017-09-17  Eli Zaretskii  <eliz@gnu.org>
96384
96385	Avoid GCC 7 compilation warning in eval.c
96386
96387	* src/eval.c (push_handler_nosignal): Use CACHEABLE to work around
96388	GCC compilation warning.  Suggested by Paul Eggert <eggert@cs.ucla.edu>
96389	in https://lists.gnu.org/r/emacs-devel/2017-09/msg00492.html.
96390
963912017-09-17  Michael Albinus  <michael.albinus@gmx.de>
96392
96393	Adapt Tramp version.  Do not merge
96394
96395	* doc/misc/trampver.texi:
96396	* lisp/net/trampver.el: Change version to "2.3.3.26.1".
96397	(customize-package-emacs-version-alist): Add Tramp version
96398	integrated in Emacs 26.1.
96399
964002017-09-17  Tom Tromey  <tom@tromey.com>
96401
96402	Search for Syntax section when viewing MDN
96403
96404	* lisp/textmodes/css-mode.el (css--mdn-after-render): Also search for
96405	"Syntax" section.
96406
964072017-09-17  Tom Tromey  <tom@tromey.com>
96408
96409	Allow smerge-keep-current to work for empty hunks
96410
96411	Bug#25555
96412	* lisp/vc/smerge-mode.el (smerge-get-current): Allow point to be at
96413	match-end.
96414	* test/lisp/vc/smerge-mode-tests.el: New file.
96415
964162017-09-17  Tom Tromey  <tom@tromey.com>
96417
96418	Call vc-setup-buffer in vc-git-log-{in,out}going
96419
96420	Bug#28427:
96421	* lisp/vc/vc-git.el (vc-git-log-incoming, vc-git-log-outgoing): Call
96422	vc-setup-buffer.
96423
964242017-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
96425
96426	Fix last change to textmodes/page-ext.el
96427
96428	* lisp/textmodes/page-ext.el (pages-directory): Make buffer writable
96429	while we build it (bug#28431).
96430
964312017-09-16  Glenn Morris  <rgm@gnu.org>
96432
96433	* test/src/lcms-tests.el (lcms-cri-cam02-ucs): Skip if lcms2 not present.
96434
964352017-09-16  Glenn Morris  <rgm@gnu.org>
96436
96437	* test/src/lcms-tests.el (lcms-whitepoint): Skip if lcms2 not present.
96438
96439	(cherry picked from commit 8081df26911c63aadfce4ee8f6a7223d814baeaf)
96440
964412017-09-16  Eli Zaretskii  <eliz@gnu.org>
96442
96443	Fix compilation warning in etags.c
96444
96445	* lib-src/etags.c (etags_mktmp) [DOS_NT]: Don't dereference a NULL
96446	pointer.  Reported by Richard Copley <rcopley@gmail.com>.
96447
964482017-09-16  Mark Oteiza  <mvoteiza@udel.edu>
96449
96450	Add lisp variable lcms-d65-xyz
96451
96452	This serves as the default optional argument for functions in this
96453	library.
96454	* src/lcms.c (lcms-d65-xyz): New variable.
96455	(lcms-cam02-ucs): Use it.  Use better word in docstring.  Fix bug
96456	color1 -> color2.
96457	* test/src/lcms-tests.el: Add some tests for lcms-cri-cam02-ucs.
96458	(lcms-colorspacious-d65): New variable.
96459
964602017-09-16  Gemini Lasswell  <gazally@runbox.com>
96461
96462	* lisp/emacs-lisp/cl-macs.el (cl-letf): Fix Edebug spec (bug#24765)
96463
964642017-09-16  Andy Moreton  <andrewjmoreton@gmail.com>
96465
96466	Avoid MinGW64 compiler warnings in unexw32.c
96467
96468	* src/unexw32.c (pDWP) [MINGW_W64]: Define to "16llx" only for the
96469	64-bit build.
96470
964712017-09-16  Eli Zaretskii  <eliz@gnu.org>
96472
96473	Start emacs-26 release branch
96474
96475	* configure.ac:
96476	* nt/README.W32:
96477	* README:
96478	* msdos/sed2v2.inp: Increment Emacs version to 26.0.60.
96479
96480	* lisp/cus-edit.el (customize-changed-options-previous-release):
96481	Update value to "25.3".
96482
964832017-09-16  Alan Mackenzie  <acm@muc.de>
96484
96485	Cope better with C++ and Objective-C protection keywords in class declarations
96486
96487	This fix fixes the fontification of a method inside a class at the time it is
96488	typed, when there is a protection keyword clause preceding it.
96489
96490	* lisp/progmodes/cc-engine.el (c-forward-keyword-clause): Handle protection
96491	keywords.
96492	(c-looking-at-decl-block): Avoid scanning forward over protection keyword
96493	clauses too eagerly.
96494
96495	* lisp/progmodes/cc-langs.el (c-protection-key c-post-protection-token): New
96496	lang defconsts and defvars.
96497
96498	* lisp/progmodes/cc-mode.el (c-fl-decl-start): When we encounter a protection
96499	keyword following a semicolon or brace, move forward over it before attempting
96500	to parse a type.
96501
965022017-09-16  Eli Zaretskii  <eliz@gnu.org>
96503
96504	Fix order of sorted overlays returned by 'overlays-at'
96505
96506	* src/buffer.c (Foverlays_at): If SORTED is non-nil, reverse the
96507	list of results, to have their order as per the documentation.
96508	(Bug#28390)
96509
96510	* etc/NEWS: Mention the change in the behavior of overlays-at.
96511
965122017-09-16  Eli Zaretskii  <eliz@gnu.org>
96513
96514	Disable execution of unsafe Lisp by Enriched Text mode
96515
96516	* src/xdisp.c (handle_display_spec): If the display property is
96517	wrapped in 'disable-eval' form, disable Lisp evaluation while
96518	processing this property.
96519	(handle_single_display_spec): Accept new argument ENABLE_EVAL_P.
96520	If that argument is false, don't evaluate Lisp while processing
96521	display properties.
96522
96523	* lisp/textmodes/enriched.el
96524	(enriched-allow-eval-in-display-props): New defcustom.
96525	(enriched-decode-display-prop): If
96526	enriched-allow-eval-in-display-props is nil, wrap the display
96527	property with 'disable-eval' to disable Lisp evaluation when the
96528	display property is processed for display.  (Bug#28350)
96529	* lisp/gnus/mm-view.el (mm-inline-text): Re-enable processing of
96530	enriched text.
96531
96532	* doc/lispref/display.texi (Display Property): Document the
96533	'disable-eval' wrapping of 'display' properties.
96534	* doc/emacs/text.texi (Enriched Properties): Document
96535	'enriched-allow-eval-in-display-props'.
96536
96537	* etc/NEWS: Describe the security issues with Enriched Text mode
96538	and their solution.
96539
965402017-09-16  Eli Zaretskii  <eliz@gnu.org>
96541
96542	Avoid MinGW64 compilation warning in w32.c
96543
96544	* src/w32.c (sys_strerror): Provide a prototype for MinGW64.
96545
965462017-09-16  Eli Zaretskii  <eliz@gnu.org>
96547
96548	Fix MS-Windows build broken by recent changes in lcms.c
96549
96550	* src/lcms.c [WINDOWSNT]: Define types for cmsWhitePointFromTemp
96551	and cmsxyY2XYZ function pointers.
96552	(init_lcms_functions) [WINDOWSNT]: Load cmsWhitePointFromTemp and
96553	cmsxyY2XYZ from liblcms2.
96554	(cmsWhitePointFromTemp, cmsxyY2XYZ) [WINDOWSNT]: Redirect to the
96555	corresponding function pointers.
96556	(Flcms_temp_to_white_point): Minor stylistic changes.  Doc fix.
96557	(syms_of_lcms2): Defsubr Slcms_temp_to_white_point.
96558
965592017-09-16  Eli Zaretskii  <eliz@gnu.org>
96560
96561	Avoid GCC 7 compilation warning in data.c
96562
96563	* src/data.c (minmax_driver): Use UNINIT to avoid compilation
96564	warnings.  Reported by Fabrice Popineau
96565	<fabrice.popineau@centralesupelec.fr>.
96566
965672017-09-16  Mark Oteiza  <mvoteiza@udel.edu>
96568
96569	Add lcms-temp->white-point and initial tests
96570
96571	* src/lcms.c (lcms-temp->white-point): New function.
96572	* test/src/lcms-tests.el: New file.
96573
965742017-09-16  Mark Oteiza  <mvoteiza@udel.edu>
96575
96576	Use cl-print in timer list
96577
96578	* lisp/emacs-lisp/timer-list.el (timer-list): Use cl-print
96579	for handling functions.
96580	(timer-list-mode): Capitalize major mode name.  Set bidi direction
96581	as in tabulated-list-mode.
96582
965832017-09-15  Vincent Belaïche  <vincentb1@users.sourceforge.net>
96584
96585	Make landscape layout with geometry package rather than a PostScript special.
96586
96587	* lisp/calendar/cal-tex.el (cal-tex-preamble): Make 12pt the
96588	default class option.
96589	(cal-tex-year, cal-tex-cursor-month-landscape): Pass landscape
96590	request to `cal-tex-insert-preamble' function call within the
96591	class option string.
96592	(cal-tex-cursor-month): Don't pass any longer "12pt" argument
96593	to `cal-tex-insert-preamble' function, as it is default.
96594	(cal-tex-insert-preamble): Suppress landscape and size
96595	argument, and replace them by a class-options string
96596	argument. Do not insert any longer "\special{landscape}" in
96597	case of landscape layout, as the job is made by the geometry
96598	package.
96599
966002017-09-15  Mark Oteiza  <mvoteiza@udel.edu>
96601
96602	* lisp/json.el (json-read-keyword): Revert previous change to catch EOL.
96603
966042017-09-15  Eli Zaretskii  <eliz@gnu.org>
96605
96606	One more attempt to avoid GCC 7 warnings in dispnew.c
96607
96608	* src/dispnew.c (adjust_glyph_matrix): Use eassume instead of
96609	eassert, to avoid compilation warnings about NULL pointer
96610	dereferences.
96611
966122017-09-15  Mark Oteiza  <mvoteiza@udel.edu>
96613
96614	Fix color-distance docstring
96615
96616	Also feed the translated color to the metric argument.
96617	* src/xfaces.c (color-distance): Reword docstring to be more helpful.
96618	Avoid duplicating effort in lcms2 by passing the translated 16 bit RGB
96619	instead of the function's color arguments.
96620
966212017-09-15  Michael Albinus  <michael.albinus@gmx.de>
96622
96623	Improve Tramp behavior according to bug#27986
96624
96625	* lisp/net/tramp-adb.el (tramp-adb-handle-copy-file):
96626	* lisp/net/tramp-sh.el (tramp-sh-handle-copy-directory):
96627	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
96628	(tramp-smb-handle-copy-file): Check, that NEWNAME is a
96629	directory name when existing.  Use `file-name-as-directory'
96630	where appropriate.
96631
966322017-09-15  Mark Oteiza  <mvoteiza@udel.edu>
96633
96634	More JSON optimization
96635
96636	Last I checked, inlining json-skip-whitespace didn't make much
96637	difference.  However, changing defsubsts to define-inline results
96638	in roughly 15% reduction in read time on a 200K file.
96639	* lisp/json.el (json-advance, json-peek, json-pop):
96640	(json-skip-whitespace): Inline with define-inline.
96641	(json-read-keyword): Don't use whitespace syntax.
96642	(json-add-to-object): Simpler condition.
96643
966442017-09-15  Eli Zaretskii  <eliz@gnu.org>
96645
96646	Avoid crashes due to invalid error forms from sentinels/filters
96647
96648	* src/process.c (exec_sentinel_error_handler): Make sure the error
96649	form passed to cmd_error_internal is a cons cell.  (Bug#28430)
96650
966512017-09-15  Eli Zaretskii  <eliz@gnu.org>
96652
96653	Avoid compilation warnings with GCC 7 on MS-Windows
96654
96655	* src/w32term.c (w32_setup_relief_color, construct_mouse_click)
96656	(w32_read_socket): Initialize variables to shut up bogus
96657	compilation warnings from GCC 7.
96658	* src/unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Cast to DWORD_PTR
96659	to avoid compiler warnings about printing signed values using %x
96660	format spec.
96661	* src/dispnew.c (adjust_glyph_matrix): Add eassert to avoid
96662	compiler warning about possible NULL pointer dereference.
96663	* src/lisp.h (pI): Tweak the definition some more for MinGW64.
96664
966652017-09-15  Martin Rudalics  <rudalics@gmx.at>
96666
96667	Define gnutls_rnd for WINDOWSNT and HAVE_GNUTLS3 case only
96668
96669	* src/fns.c (gnutls_rnd): Define for WINDOWSNT and HAVE_GNUTLS3
96670	case only to avoid unused macros warning otherwise.
96671
966722017-09-15  Martin Rudalics  <rudalics@gmx.at>
96673
96674	In w32heap.c bump up DUMPED_HEAP_SIZE
96675
96676	* src/w32heap.c (DUMPED_HEAP_SIZE): Bump up DUMPED_HEAP_SIZE
96677	to 13*1024*1024 for 32-bit non-wide-integer builds.
96678
966792017-09-15  Mark Oteiza  <mvoteiza@udel.edu>
96680
96681	Bind n,p in timer-list
96682
96683	* lisp/emacs-lisp/timer-list.el (timer-list-mode-map): Bind n and p
96684	to next- and previous-line, respectively.
96685
966862017-09-14  Glenn Morris  <rgm@gnu.org>
96687
96688	* lisp/net/tls.el (tls-program): Fix :version.
96689
966902017-09-14  Eli Zaretskii  <eliz@gnu.org>
96691
96692	* configure.ac (--with-lcms2, --without-lcms2): New options.
96693
966942017-09-14  Eli Zaretskii  <eliz@gnu.org>
96695
96696	Avoid 64-bit compilation warnings in unexw32.c
96697
96698	* src/unexw32.c (pDWP): New macro.
96699	(COPY_CHUNK, COPY_PROC_CHUNK): Declare 'count' as DWORD_PTR.  Use
96700	pDWP for printing values that can be either 32-bit or 64-bit wide.
96701
967022017-09-14  Eli Zaretskii  <eliz@gnu.org>
96703
96704	Fix warnings about formats in printf-like functions on MS-Windows
96705
96706	* src/lisp.h (pI) [__MINGW32__]: Provide definition that will
96707	hopefully DTRT with both MinGW64 and mingw.org's MinGW.  See
96708	https://lists.gnu.org/r/emacs-devel/2017-09/msg00171.html
96709	for the details.
96710	* src/conf_post.h (PRINTF_ARCHETYPE) [MINGW_W64]: Separate
96711	definition specific to MinGW64.
96712	(PRINTF_ARCHETYPE) [__MINGW32__]: For mingw.org's MinGW, use
96713	__mingw_printf__ in ANSI-compatible mode.
96714
967152017-09-14  Eli Zaretskii  <eliz@gnu.org>
96716
96717	Support lcms2 in MS-Windows builds
96718
96719	* lisp/term/w32-win.el (dynamic-library-alist): Include
96720	association for the lcms2 library.
96721
96722	* src/lcms.c [WINDOWSNT]: Include windows.h and w32.h.  Use
96723	DEF_DLL_FN to define pointers to dynamically loaded lcms2
96724	functions.
96725	(cmsCIE2000DeltaE, cmsCIECAM02Init, cmsCIECAM02Forward)
96726	(cmsCIECAM02Done): New macros.
96727	(init_lcms_functions, Flcms2_available_p): New functions.
96728	(Flcms_cie_de2000, Flcms_cam02_ucs) [WINDOWSNT]: Call
96729	init_lcms_functions.
96730	(syms_of_lcms2): Defsubr lcms2-available-p.
96731	* src/w32fns.c (syms_of_w32fns): DEFSYM Qlcms2.
96732
96733	* configure.ac: Include lcms2 in the final report and in
96734	emacs_config_features.
96735
96736	* nt/INSTALL:
96737	* nt/INSTALL.W64: Update with the information about lcms2 library.
96738
967392017-09-14  Paul Eggert  <eggert@cs.ucla.edu>
96740
96741	Port renameat_noreplace to openSUSE 12.3
96742
96743	Problem reported by M. Nomiya in:
96744	https://lists.gnu.org/r/emacs-devel/2017-09/msg00363.html
96745	* src/sysdep.c (renameat_noreplace):
96746	Call renameat2 only if CYGWIN.
96747
967482017-09-14  Paul Eggert  <eggert@cs.ucla.edu>
96749
96750	Prefer HTTPS to FTP and HTTP in documentation
96751
96752	Most of this change is to boilerplate commentary such as license URLs.
96753	This change was prompted by ftp://ftp.gnu.org's going-away party,
96754	planned for November.  Change these FTP URLs to https://ftp.gnu.org
96755	instead.  Make similar changes for URLs to other organizations moving
96756	away from FTP.  Also, change HTTP to HTTPS for URLs to gnu.org and
96757	fsf.org when this works, as this will further help defend against
96758	man-in-the-middle attacks (for this part I omitted the MS-DOS and
96759	MS-Windows sources and the test tarballs to keep the workload down).
96760	HTTPS is not fully working to lists.gnu.org so I left those URLs alone
96761	for now.
96762
967632017-09-14  Paul Eggert  <eggert@cs.ucla.edu>
96764
96765	Prefer HTTPS to HTTP for gnu.org
96766
96767	This patch just changes code files; a followup companion patch
96768	(much larger) will affect the commentary.  This part is
96769	separated out to make it easier to review.
96770	* .dir-locals.el (change-log-mode):
96771	* lisp/org/org-info.el (org-info-other-documents)
96772	(org-info-map-html-url):
96773	* lisp/org/ox-html.el (org-html-creator-string):
96774	* lisp/startup.el (fancy-startup-text, fancy-about-text)
96775	(fancy-splash-head):
96776	* test/lisp/ffap-tests.el (ffap-other-window--bug-25352):
96777	* test/lisp/thingatpt-tests.el (thing-at-point-test-data):
96778	Use HTTPS instead of HTTP.
96779
967802017-09-13  Simen Heggestøyl  <simenheg@gmail.com>
96781
96782	Add tests for color.el
96783
96784	* lisp/color.el (color-name-to-rgb, color-complement): Clarify in
96785	docstrings that RGB triplets should use four digits per component.
96786	(color-rgb-to-hsl): Break line to avoid "Hidden behind deeper element"
96787	warning.
96788
96789	* test/lisp/color-tests.el: New file.
96790
967912017-09-13  Lars Ingebrigtsen  <larsi@gnus.org>
96792
96793	Make gnutls-verify-error work again with url-retrieve-synchronously
96794
96795	* lisp/url/url-gw.el (url-open-stream): Only use :nowait if
96796	we're doing async connections (bug#26835).
96797
96798	* lisp/url/url-parse.el (url): Add an asynchronous slot.
96799
96800	* lisp/url/url.el (url-asynchronous): New variable.
96801	(url-retrieve-internal): Store the value.
96802	(url-retrieve-synchronously): Bind the variable.
96803
968042017-09-13  Michael Albinus  <michael.albinus@gmx.de>
96805
96806	Improve backward compatibility of tramp-tests
96807
96808	* test/lisp/net/tramp-tests.el (seq): Don't require.
96809	(tramp--test-emacs26-p): New defun.
96810	(tramp-test10-write-region, tramp-test11-copy-file)
96811	(tramp-test12-rename-file, tramp-test15-copy-directory)
96812	(tramp-test21-file-links): Use it.
96813	(tramp-test16-file-expand-wildcards): Use `copy-sequence'.
96814
968152017-09-13  Michael Albinus  <michael.albinus@gmx.de>
96816
96817	* lisp/net/trampver.el (customize-package-emacs-version-alist):
96818
96819	Add Tramp version integrated in Emacs 25.3.
96820
968212017-09-13  Mark Oteiza  <mvoteiza@udel.edu>
96822
96823	Add clarification to if-let* docstring
96824
96825	Also make its behavior consistent with and-let* in that empty bindings
96826	results in success, not failure.
96827	* lisp/emacs-lisp/subr-x.el: Edit docstring, change else to then.
96828
968292017-09-13  Lars Ingebrigtsen  <larsi@gnus.org>
96830
96831	Make fully qualified domain names more fully qualified
96832
96833	* lisp/gnus/message.el (message-make-fqdn): Don't try to use a
96834	system-name without any periods as a fully qualified domain name.
96835
968362017-09-13  Paul Eggert  <eggert@cs.ucla.edu>
96837
96838	Remove unused file lib/getopt_.h
96839
96840	* lib/getopt_.h: Remove.  It was renamed to lib/getopt.in.h etc.
96841	on 2011-01-08, but I forgot to remove the old file.
96842
968432017-09-13  Mark Oteiza  <mvoteiza@udel.edu>
96844
96845	Remove "baroque" use of prefix argument from gensym
96846
96847	'cl-gensym' was simply moved here, but let us take an opportunity to
96848	shed some historical baggage.
96849	* lisp/subr.el (gensym): Remove special treatment of PREFIX as a
96850	number.  Use "g" as prefix to differentiate from cl-gensym defaults.
96851	* doc/lispref/symbols.texi (Creating Symbols): Update accordingly.
96852	* lisp/emacs-lisp/cl-macs.el (cl--gensym-counter, cl-gensym): Restore.
96853
968542017-09-13  Mark Oteiza  <mvoteiza@udel.edu>
96855
96856	Provide an lcms2 feature
96857
96858	* src/lcms.c (syms_of_lcms2): Provide "lcms2".
96859
968602017-09-13  Mark Oteiza  <mvoteiza@udel.edu>
96861
96862	Add lcms2 interface
96863
96864	configure.ac: Add boilerplate for configuring and detecting liblcms2.
96865	etc/NEWS: Mention new configure option and color-distance change.
96866	src/Makefile.in: Add references to lcms.c and liblcms.
96867	src/emacs.c: Define lcms2 symbols.
96868	src/lcms.c: New file.
96869	src/lisp.h: Add declaration for lcms2.
96870	src/xfaces.c: Add optional METRIC argument.
96871
968722017-09-13  Mark Oteiza  <mvoteiza@udel.edu>
96873
96874	Add other D series white points and some simple conversions
96875
96876	* lisp/color.el (color-d75-xyz, color-d55-xyz, color-d50-xyz): New
96877	constants.
96878	(color-xyz-to-xyy, color-xyy-to-xyz, color-lab-to-lch):
96879	(color-lch-to-lab): New functions.
96880
968812017-09-13  Mark Oteiza  <mvoteiza@udel.edu>
96882
96883	Permit non-integral color gradients
96884
96885	* lisp/color.el (color-gradient): Float the step-number.
96886
968872017-09-13  Katsumi Yamaoka  <yamaoka@jpl.org>
96888
96889	Protect against malformed MIME messages that cause inf-loop (bugfix)
96890
96891	* lisp/gnus/gnus-art.el (gnus-article-mime-handles):
96892	Protect against malformed MIME messages that cause inf-loop.
96893
968942017-09-13  Paul Eggert  <eggert@cs.ucla.edu>
96895
96896	Merge from Gnulib
96897
96898	This incorporates:
96899	2017-09-13 all: prefer https: URLs
96900	This just changes http: to https: in comments,
96901	in files copied from Gnulib.
96902
969032017-09-13  Dmitry Gutov  <dgutov@yandex.ru>
96904
96905	Call vc-resynch-buffer in vc-git-resolve-when-done
96906
96907	* lisp/vc/vc-git.el (vc-git-resolve-when-done):
96908	Call vc-resynch-buffer on the current file (bug#28121).
96909	Move its autoload to before this function.
96910
969112017-09-13  Eric Abrahamsen  <eric@ericabrahamsen.net>
96912
96913	Allow write-contents-functions to short-circuit buffer save
96914
96915	Bug#28412
96916
96917	* lisp/files.el (basic-save-buffer): Re-arrange function so that
96918	  write-contents-functions are run earlier. If they return non-nil,
96919	  consider the buffer saved without requiring the buffer to be
96920	  visiting a file.
96921	  (save-some-buffers): This function should consider any buffer with a
96922	  buffer-local value for write-contents-functions eligible for
96923	  saving.
96924	* test/lisp/files-tests.el (files-test-no-file-write-contents): New
96925	  test.
96926	* doc/lispref/files.texi (Saving Buffers): Mention in docs.
96927	* etc/NEWS: And in NEWS.
96928
969292017-09-12  Paul Eggert  <eggert@cs.ucla.edu>
96930
96931	* etc/NEWS.25: Copy from emacs-25 etc/NEWS.
96932
969332017-09-12  Paul Eggert  <eggert@cs.ucla.edu>
96934
96935	Less chatter for ’make info/dir96936
96937	* Makefile.in (${srcdir}/info/dir): Tweak shell command so
96938	that an ordinary make says just "GEN info/dir" rather than
96939	also having a seemingly-unrelated mv line.
96940
969412017-09-12  Paul Eggert  <eggert@cs.ucla.edu>
96942
96943	Tweak Gnus doc re gnus-copy-file
96944
96945	* doc/misc/gnus.texi (Saving Articles):
96946	Document behavior with directory name targets (Bug#27986).
96947	Problem reported by Katsumi Yamaoka in:
96948	https://lists.gnu.org/r/emacs-devel/2017-09/msg00216.html
96949
969502017-09-12  Mark Oteiza  <mvoteiza@udel.edu>
96951
96952	Update uses of if-let and when-let
96953
96954	* lisp/dom.el (dom-previous-sibling):
96955	* lisp/emacs-lisp/package.el (package--with-work-buffer):
96956	(package--sort-deps-in-alist, package--sort-by-dependence):
96957	(package-install-from-archive, package-install):
96958	(package-menu-execute, package-menu--populate-new-package-list):
96959	* lisp/filenotify.el (file-notify--rm-descriptor):
96960	(file-notify--event-watched-file, file-notify--event-file-name):
96961	(file-notify--event-file1-name, file-notify-rm-watch):
96962	(file-notify-valid-p):
96963	* lisp/gnus/message.el (message-toggle-image-thumbnails):
96964	* lisp/gnus/nnimap.el (nnimap-request-move-article):
96965	* lisp/ibuf-ext.el (ibuffer-repair-saved-filters):
96966	* lisp/mpc.el (mpc-format):
96967	* lisp/net/eww.el (eww-tag-meta, eww-process-text-input):
96968	(eww-save-history):
96969	* lisp/net/shr.el (shr-tag-base, shr-tag-object, shr-make-table-1):
96970	* lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
96971	* lisp/svg.el (svg-remove):
96972	* lisp/textmodes/css-mode.el (css--named-color):
96973	(css--colon-inside-funcall):
96974	* lisp/textmodes/sgml-mode.el (html-current-buffer-classes):
96975	(html-current-buffer-ids): Use if-let* and when-let* instead.
96976
969772017-09-12  Mark Oteiza  <mvoteiza@udel.edu>
96978
96979	Implement and-let*
96980
96981	This also includes changes to if-let and when-let.  The single tuple
96982	special case is ambiguous, and binding a symbol to nil is not as
96983	useful as binding it to its value outside the lexical scope of the
96984	binding.  (Bug#28254)
96985	* etc/NEWS: Mention.
96986	* lisp/emacs-lisp/subr-x.el (internal--listify):
96987	(internal--build-binding-value-form): Extend to account for
96988	solitary symbols and (EXPR) items in binding varlist.
96989	(if-let*, when-let*): Nix single tuple case and incumbent
96990	bind-symbol-to-nil behavior.
96991	(and-let*): New macro.
96992	(if-let, when-let): Mark obsolete.  Redefine in terms of if-let*, so
96993	they implicitly gain the new features without breaking existing code.
96994	* test/lisp/emacs-lisp/subr-x-tests.el: Adjust tests for: lack of
96995	single-tuple special case, lack of binding solitary symbols to nil,
96996	and the introduction of uninterned symbols for (EXPR) bindings.  Add
96997	SRFI-2 test suite adapted to Elisp.
96998
969992017-09-12  Eli Zaretskii  <eliz@gnu.org>
97000
97001	Fix minor typos in the Emacs manual
97002
97003	* doc/emacs/text.texi (Org Organizer):
97004	* doc/emacs/ack.texi (Acknowledgments): Fix spelling of Org nodes.
97005
970062017-09-12  Paul Eggert  <eggert@cs.ucla.edu>
97007
97008	Merge Emacs 25.3 fixes
97009
97010	The security patches released for Emacs 25.3 were less drastic
97011	than what we had immediately put into master.  Adjust master to
97012	match 25.3 (Bug#28350).
97013	* lisp/textmodes/enriched.el (enriched-translations):
97014	Re-enable FUNCTION and display translations that are safe.
97015	(enriched-handle-display-prop): Bring back.
97016	(enriched-decode-display-prop): Bring back, but disable
97017	the unsafe part.
97018
970192017-09-12  Alan Mackenzie  <acm@muc.de>
97020
97021	Don't match C++ template delims starting within a token.  FIxes bug #28418.
97022
97023	* lisp/progmodes/cc-engine.el (c-restore-<>-properties): After failing an
97024	attempted match from the start of a token (in particular, "<<"), move to the
97025	next token rather than the nex character before searching for the next "<".
97026
970272017-09-12  Mark Oteiza  <mvoteiza@udel.edu>
97028
97029	Move gensym to core Elisp
97030
97031	* doc/lispref/symbols.texi (Creating Symbols): Mention gensym right
97032	after make-symbol.
97033	* etc/NEWS: Mention.
97034	* lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Alias to
97035	gensym-counter.
97036	(cl-gensym): Alias to gensym.
97037	* lisp/emacs-lisp/cl.el: Remove gensym from list of aliases.
97038	* lisp/emacs-lisp/edebug.el (edebug-make-enter-wrapper):
97039	* lisp/emacs-lisp/ert-x.el (ert-with-message-capture):
97040	(ert--expand-should-1, ert--expand-should):
97041	(ert--should-error-handle-error):
97042	* lisp/emacs-lisp/generator.el (cps--gensym):
97043	* lisp/emacs-lisp/gv.el (setf):
97044	* lisp/emacs-lisp/inline.el (inline--do-letlisteval):
97045	* lisp/emacs-lisp/pcase.el (pcase--make-docstring, pcase-dolist):
97046	(pcase--funcall, pcase--u1): Use gensym.
97047	* lisp/subr.el (gensym-counter): New variable.
97048	(gensym): New function, assimilated from cl-lib.
97049
970502017-09-12  Mark Oteiza  <mvoteiza@udel.edu>
97051
97052	Fix cl-gentemp
97053
97054	* lisp/emacs-lisp/cl-macs.el (cl--gentemp-counter): New variable.
97055	(cl-gentemp): Use it.  Change prefix to "T".
97056
970572017-09-12  Sam Steingold  <sds@gnu.org>
97058
97059	gnus-score-file-name: Do not append empty suffix.
97060
970612017-09-12  Michael Albinus  <michael.albinus@gmx.de>
97062
97063	Extend tramp-tests according to bug#27986
97064
97065	* test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
97066	(tramp-test12-rename-file, tramp-test15-copy-directory)
97067	(tramp-test21-file-links): Extend tests.
97068	(tramp-test13-make-directory, tramp-test14-delete-directory):
97069	Specifiy error symbol in `should-error'.
97070
970712017-09-12  Mark Oteiza  <mvoteiza@udel.edu>
97072
97073	Add cl-print method for hash tables
97074
97075	* lisp/emacs-lisp/cl-print.el (cl-print-object): New method.
97076
970772017-09-12  Mark Oteiza  <mvoteiza@udel.edu>
97078
97079	Add docstrings to cl-print entry points
97080
97081	* lisp/emacs-lisp/cl-print.el (cl-print-compiled): Fix docstring.
97082	(cl-prin1, cl-prin1-to-string): Add docstrings.
97083
970842017-09-12  Glenn Morris  <rgm@gnu.org>
97085
97086	Improve reproducibility of generated leim-list.el
97087
97088	* lisp/international/quail.el (quail-update-leim-list-file):
97089	Sort the quail directory listing, for more stable output.
97090
970912017-09-11  Mark Oteiza  <mvoteiza@udel.edu>
97092
97093	Include sxhash of object with printed bytecode
97094
97095	This printing, while succint, is rather opaque.  At least give an
97096	immediate clue of whether different byte code printouts are for the
97097	same or different byte code objects.
97098	* lisp/emacs-lisp/cl-print.el (cl-print-object): Add object sxhash to
97099	printed token "#<bytecode>".
97100
971012017-09-11  Eli Zaretskii  <eliz@gnu.org>
97102
97103	Update documentation of 'max-lisp-eval-depth'
97104
97105	* doc/lispref/eval.texi (Eval): Update the documented default
97106	value of 'max-lisp-eval-depth'.
97107
971082017-09-11  Eli Zaretskii  <eliz@gnu.org>
97109
97110	Another place to produce debugging output in etags
97111
97112	* lib-src/etags.c (Ruby_functions): One more place to print
97113	debugging output under --debug.
97114
971152017-09-11  Eli Zaretskii  <eliz@gnu.org>
97116
97117	Improve documentation of etags-related features
97118
97119	* doc/emacs/maintaining.texi (Looking Up Identifiers): Document
97120	'xref-prompt-for-identifier'.  (Bug#28403)
97121	(Etags Regexps): Document \D back references in etags regexps.
97122
971232017-09-11  Alan Third  <alan@idiocy.org>
97124
97125	Fix macOS compatibility versions for vibrant dark theme (bug#28415)
97126
97127	* src/nsterm.m (ns_set_appearance, EmacsView::initFrameFromEmacs):
97128	Change macOS compatibility from 10.9 to 10.10.
97129
971302017-09-11  Michael Albinus  <michael.albinus@gmx.de>
97131
97132	Further optimization in Tramp's file name decomposition
97133
97134	* lisp/net/tramp.el (tramp-syntax): Recompute all file name
97135	components.  Call `custom-set-variables' after loading.
97136	(tramp-build-prefix-format, tramp-build-prefix-regexp)
97137	(tramp-build-method-regexp)
97138	(tramp-build-postfix-method-format)
97139	(tramp-build-postfix-method-regexp)
97140	(tramp-build-prefix-ipv6-format)
97141	(tramp-build-prefix-ipv6-regexp)
97142	(tramp-build-postfix-ipv6-format)
97143	(tramp-build-postfix-ipv6-regexp)
97144	(tramp-build-postfix-host-format)
97145	(tramp-build-postfix-host-regexp)
97146	(tramp-build-file-name-regexp)
97147	(tramp-build-completion-file-name-regexp): New defuns.
97148	(tramp-prefix-format, tramp-prefix-regexp)
97149	(tramp-method-regexp, tramp-postfix-method-format)
97150	(tramp-postfix-method-regexp, tramp-prefix-ipv6-format)
97151	(tramp-prefix-ipv6-regexp, tramp-postfix-ipv6-format)
97152	(tramp-postfix-ipv6-regexp, tramp-postfix-host-format)
97153	(tramp-postfix-host-regexp)
97154	(tramp-remote-file-name-spec-regexp)
97155	(tramp-file-name-structure, tramp-file-name-regexp)
97156	(tramp-completion-file-name-regexp): Convert defuns into defvars.
97157	(tramp-prefix-regexp-alist)
97158	(tramp-postfix-method-regexp-alist)
97159	(tramp-prefix-ipv6-regexp-alist)
97160	(tramp-postfix-ipv6-regexp-alist)
97161	(tramp-postfix-host-regexp-alist)
97162	(tramp-remote-file-name-spec-regexp-alist): Remove.
97163	(tramp-build-remote-file-name-spec-regexp)
97164	(tramp-build-file-name-structure): Simplify.
97165	(tramp-completion-file-name-regexp-alist): New defconst.
97166	(tramp-tramp-file-p, tramp-dissect-file-name)
97167	(tramp-make-tramp-file-name)
97168	(tramp-completion-make-tramp-file-name)
97169	(tramp-rfn-eshadow-update-overlay-regexp)
97170	(tramp-register-file-name-handlers)
97171	(tramp-completion-handle-file-name-all-completions)
97172	(tramp-completion-dissect-file-name, tramp-clear-passwd):
97173	* lisp/net/tramp-ftp.el (tramp-ftp-file-name-handler):
97174	* lisp/net/tramp-sh.el (tramp-sh-handle-vc-registered)
97175	(tramp-compute-multi-hops): Use variables but functions for
97176	file name components.
97177
97178	* test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
97179	Use variables but functions for file name components.
97180
971812017-09-11  Paul Eggert  <eggert@cs.ucla.edu>
97182
97183	Port tramp-tests to new copy-directory behavior
97184
97185	* test/lisp/net/tramp-tests.el (tramp-test15-copy-directory):
97186	Use directory name as arg for copy-directory when we want
97187	the special behavior.
97188
971892017-09-11  Paul Eggert  <eggert@cs.ucla.edu>
97190
97191	Adjust thumbs to new rename-file behavior
97192
97193	* etc/NEWS: Mention this.
97194	* lisp/thumbs.el (thumbs-rename-images): Treat the destination
97195	as special only if it is a directory name.  When there is
97196	a marked list, turn the destination into a directory name
97197	if it is not already.
97198
971992017-09-11  Paul Eggert  <eggert@cs.ucla.edu>
97200
97201	Adjust ob-tangle to new copy-file behavior
97202
97203	* lisp/org/ob-tangle.el (org-babel-tangle-publish):
97204	Port to new copy-file behavior.
97205
972062017-09-11  Paul Eggert  <eggert@cs.ucla.edu>
97207
97208	Make gnus-copy-file act like copy-file etc.
97209
97210	* etc/NEWS: Mention this.
97211	* lisp/gnus/gnus-util.el (gnus-copy-file): Treat the destination
97212	as special only if it is a directory name.
97213
972142017-09-11  Paul Eggert  <eggert@cs.ucla.edu>
97215
97216	Make write-file act like copy-file etc.
97217
97218	Change write-file to be consistent with the new behavior
97219	of copy-file, etc.
97220	* etc/NEWS: Mention this.
97221	* lisp/files.el (write-file): Treat the destination as special
97222	only if it is a directory name.
97223
972242017-09-11  Paul Eggert  <eggert@cs.ucla.edu>
97225
97226	Make copy-directory act like copy-file etc.
97227
97228	Do the special dance with the destination only if it is a
97229	directory name, for consistency with copy-file etc. (Bug#27986).
97230	* doc/emacs/files.texi (Copying and Naming):
97231	* doc/lispref/files.texi (Create/Delete Dirs):
97232	* etc/NEWS: Document this.
97233	* lisp/files.el (copy-directory): Treat NEWNAME as special
97234	only if it is a directory name.
97235
972362017-09-11  Paul Eggert  <eggert@cs.ucla.edu>
97237
97238	Fix some make-directory bugs
97239
97240	* lisp/files.el (files--ensure-directory): New function.
97241	(make-directory): Use it to avoid bugs when (make-directory FOO t)
97242	is invoked on a non-directory, or on a directory hierarchy that
97243	is being built by some other process while Emacs is running.
97244	* test/lisp/files-tests.el (files-tests--make-directory): New test.
97245
972462017-09-11  Paul Eggert  <eggert@cs.ucla.edu>
97247
97248	Fix race with rename-file etc. with dir NEWNAME
97249
97250	This changes the behavior of rename-file etc. slightly.
97251	The old behavior mostly disagreed with the documentation, and had
97252	a race condition bug that could allow attackers to modify victims'
97253	write-protected directories (Bug#27986).
97254	* doc/lispref/files.texi (Changing Files): Document that in
97255	rename-file etc., NEWFILE is special if it is a directory name.
97256	* etc/NEWS: Document the change in behavior.
97257	* src/fileio.c (directory_like): Remove.  All uses removed.
97258	(expand_cp_target): Test only whether NEWNAME is a directory name,
97259	not whether it is currently a directory.  This avoids a race.
97260	(Fcopy_file, Frename_file, Fadd_name_to_file, Fmake_symbolic_link):
97261	Document behavior if NEWNAME is a directory name.
97262	(Frename_file): Simplify now that the destdir behavior occurs
97263	only when NEWNAME is a directory name.
97264	* test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
97265	(tramp-test12-rename-file, tramp--test-check-files):
97266	Adjust tests to match new behavior.
97267
972682017-09-10  Eli Zaretskii  <eliz@gnu.org>
97269
97270	Extend --debug printouts in etags
97271
97272	* lib-src/etags.c (regex_tag_multiline, readline): Under
97273	"--debug", print tags found via regexps.
97274
972752017-09-10  Eli Zaretskii  <eliz@gnu.org>
97276
97277	Add --debug option to etags
97278
97279	* lib-src/etags.c (make_tag): Print found tags under --debug.
97280	(longopts): Add --debug.
97281
972822017-09-10  Paul Eggert  <eggert@cs.ucla.edu>
97283
97284	Spelling fixes
97285
97286	* lisp/progmodes/cc-langs.el:
97287	(c-ambiguous-overloadable-or-identifier-prefixes): Rename from
97288	c-ambiguous-overloadable-or-identifier-prefices.  Caller changed.
97289
972902017-09-10  Paul Eggert  <eggert@cs.ucla.edu>
97291
97292	Merge from gnulib
97293
97294	This incorporates:
97295	2017-09-08 stddef: Avoid conflict with system-defined max_align_t
97296	2017-08-24 warnings: fix compilation with old autoconf
97297	2017-08-23 glob: merge from glibc with Zanella glob changes
97298	2017-08-17 random: Fix test compilation failure on Cygwin 1.5.25
97299	* doc/misc/texinfo.tex, lib/flexmember.h, lib/stddef.in.h:
97300	* lib/stdlib.in.h, m4/manywarnings.m4, m4/stdlib_h.m4:
97301	* m4/warnings.m4:
97302	Copy from Gnulib.
97303	* lib/gnulib.mk.in: Regenerate.
97304
973052017-09-10  Ken Brown  <kbrown@cornell.edu>
97306
97307	Implement renameat_noreplace on recent Cygwin
97308
97309	* src/sysdep.c [CYGWIN]: Include cygwin/fs.h.
97310	(renameat_noreplace) [RENAME_NOREPLACE]: Use renameat2.
97311	(Bug#27986)
97312
973132017-09-10  Eli Zaretskii  <eliz@gnu.org>
97314
97315	Avoid warnings about file names in autoloads on MS-Windows
97316
97317	* configure.ac (srcdir) [mingw32]: Downcase the drive letter, to
97318	avoid warnings from find-file-noselect when making autoloads.  For
97319	the details, see
97320	https://lists.gnu.org/r/emacs-devel/2017-09/msg00049.html.
97321
973222017-09-10  Mark Oteiza  <mvoteiza@udel.edu>
97323
97324	Avoid looking at localized strings
97325
97326	* lisp/xdg.el (xdg-desktop-read-group): Add condition to catch
97327	localized strings.
97328	* test/lisp/xdg-tests.el (xdg-desktop-parsing): Add test to ensure
97329	parsing l10n strings doesn't error but is essentially a no-op.
97330
973312017-09-10  Paul Eggert  <eggert@cs.ucla.edu>
97332
97333	* etc/NEWS.25: Document 25.3 changes.
97334
973352017-09-10  Lars Ingebrigtsen  <larsi@gnus.org>
97336
97337	Remove unsafe enriched mode translations
97338
97339	* lisp/gnus/mm-view.el (mm-inline-text):
97340	Do not worry about enriched or richtext type.
97341	* lisp/textmodes/enriched.el (enriched-translations):
97342	Remove translations for FUNCTION, display (Bug#28350).
97343	(enriched-handle-display-prop, enriched-decode-display-prop): Remove.
97344
973452017-09-09  Paul Eggert  <eggert@cs.ucla.edu>
97346
97347	Be more consistent about "directory name" in manual
97348
97349	This clarifies the documentation, partly in response to the
97350	discussion in Bug#27986.
97351
973522017-09-09  Eli Zaretskii  <eliz@gnu.org>
97353
97354	Remove more compilation warnings in MinGW64 build
97355
97356	* src/w32.c (faccessat, map_w32_filename):
97357	* src/w32fns.c (w32_wnd_proc):
97358	* src/w32term.c (w32_horizontal_scroll_bar_handle_click)
97359	(w32_scroll_bar_handle_click): Use FALLTHROUGH to avoid compiler
97360	warnings with GCC 7 and later.
97361
973622017-09-09  Paul Eggert  <eggert@cs.ucla.edu>
97363
97364	Improve --enable-gcc-warnings for MinGW64
97365
97366	This partially reverts my 2016-05-30 patch.  Apparently MinGW64
97367	still requires pacifications that GCC 7.1.1 x86-64 (Fedora 26)
97368	does not.  Also, pacify tparam.c, which isn’t used on Fedora.
97369	* lib-src/etags.c (process_file_name, TeX_commands):
97370	* src/buffer.c (fix_overlays_before):
97371	* src/data.c (Fmake_variable_buffer_local, cons_to_unsigned)
97372	(cons_to_signed):
97373	* src/editfns.c (Ftranslate_region_internal):
97374	Prefer UNINIT to some stray value, as this simplifies
97375	code-reading later.
97376	* src/eval.c (CACHEABLE): New macro.
97377	(internal_lisp_condition_case): Use it.
97378	* src/tparam.c (tparam1): Use FALLTHROUGH to pacify GCC.
97379
973802017-09-09  Eli Zaretskii  <eliz@gnu.org>
97381
97382	Fix font-lock in Compilation mode
97383
97384	* lisp/progmodes/compile.el (compilation-face): Restore function
97385	lost during recent changes.  (Bug#28349)
97386
973872017-09-09  Mark Oteiza  <mvoteiza@udel.edu>
97388
97389	Add function to read all entries in a group
97390
97391	Use that to extend xdg-desktop-read-file.  Also fix a bug where all
97392	entries in all groups were read and returned by xdg-desktop-read-file.
97393	* lisp/xdg.el (xdg-desktop-read-group): New function.
97394	(xdg-desktop-read-file): Use it.
97395	* test/data/xdg/malformed.desktop: New file.
97396	* test/data/xdg/test.desktop: Add another section.
97397	* test/lisp/xdg-tests.el (xdg-desktop-parsing): Test presence of a key
97398	in another group.  Test reading a prescribed group.  Test detecting a
97399	malformed key=value.
97400
974012017-09-09  Gemini Lasswell  <gazally@runbox.com>
97402
97403	Reduce Tramp's memory usage
97404
97405	Construct Tramp syntax strings and regular expressions once instead
97406	of every time they are used, and store them in alists keyed by Tramp
97407	syntax.
97408	* lisp/net/tramp.el (tramp-build-remote-file-name-spec-regexp)
97409	(tramp-build-file-name-structure): New functions.
97410	(tramp-prefix-format-alist, tramp-prefix-regexp-alist)
97411	(tramp-method-regexp-alist)
97412	(tramp-postfix-method-format-alist)
97413	(tramp-postfix-method-regexp-alist)
97414	(tramp-prefix-ipv6-format-alist, tramp-prefix-ipv6-regexp-alist)
97415	(tramp-postfix-ipv6-format-alist)
97416	(tramp-postfix-ipv6-regexp-alist)
97417	(tramp-postfix-host-format-alist)
97418	(tramp-postfix-host-regexp-alist)
97419	(tramp-remote-file-name-spec-regexp-alist)
97420	(tramp-file-name-structure-alist): New constants.
97421	(tramp-lookup-syntax): New function.
97422	(tramp-prefix-format, tramp-prefix-regexp, tramp-method-regexp)
97423	(tramp-postfix-method-format, tramp-postfix-method-regexp)
97424	(tramp-prefix-ipv6-format, tramp-prefix-ipv6-regexp)
97425	(tramp-postfix-ipv6-format, tramp-postfix-ipv6-regexp)
97426	(tramp-postfix-host-format, tramp-postfix-host-regexp)
97427	(tramp-remote-file-name-spec-regexp, tramp-file-name-structure):
97428	Use it.
97429
974302017-09-09  Eli Zaretskii  <eliz@gnu.org>
97431
97432	Fix compilation warnings in MinGW64 build using GCC 7
97433
97434	Reported by Richard Copley <rcopley@gmail.com>.
97435	* src/w32heap.c (init_heap): Declare enable_lfh only for
97436	mingw.org's MinGW build.
97437
97438	* src/w32console.c (w32con_write_glyphs):
97439	* src/unexw32.c (get_section_info, COPY_CHUNK, unexec): Fix some
97440	mismatches of data type vs format spec.
97441
97442	* src/w32fns.c (compute_tip_xy):
97443	* src/w32proc.c (stop_timer_thread):
97444	* src/w32notify.c (remove_watch):
97445	* src/eval.c (internal_lisp_condition_case):
97446	* src/editfns.c (Ftranslate_region_internal):
97447	* src/data.c (Fmake_variable_buffer_local, cons_to_unsigned)
97448	(cons_to_signed):
97449	* src/buffer.c (fix_overlays_before): Initialize variables to
97450	avoid compiler warnings.
97451
97452	* lib-src/etags.c (TeX_commands, process_file_name): Initialize
97453	variables to avoid compilation warnings.
97454
974552017-09-09  Eli Zaretskii  <eliz@gnu.org>
97456
97457	Avoid infloop when scrolling under scroll-preserve-screen-position
97458
97459	* src/window.c (window_scroll_pixel_based): If screen position is
97460	to be preserved, make sure its recorded Y coordinate is outside
97461	the scroll margin.  (Bug#28342)
97462
974632017-09-09  Michael Albinus  <michael.albinus@gmx.de>
97464
97465	Clarification in tramp-texi
97466
97467	* doc/misc/tramp.texi (Connection caching): Two connections are
97468	regarded as different now when they differ in the port number only.
97469
974702017-09-09  Miles Bader  <miles@gnu.org>
97471
97472	* admin/quick-install-emacs: Tweak configure.ac parsing
97473
974742017-09-09  Miles Bader  <miles@gnu.org>
97475
97476	Use text-property buttons in rcirc-markup-urls
97477
97478	* lisp/net/rcirc.el (rcirc-markup-urls): Use `make-text-button'
97479	instead of `make-button'; the former is much more efficient in large
97480	buffers, and for the purposes of rcirc, changes no functionality.
97481
974822017-09-08  Eli Zaretskii  <eliz@gnu.org>
97483
97484	Fix line-pixel-height for lines of variable height
97485
97486	* src/xdisp.c (Fline_pixel_height): Start moving from the
97487	beginning of the screen line, to capture the full metrics of the
97488	line.  (Bug#28391)
97489
974902017-09-08  Alex Branham  <branham@utexas.edu>  (tiny change)
97491
97492	New variable 'dired-confirm-killing-deleted-buffers'
97493
97494	* lisp/dired-x.el (dired-clean-confirm-killing-deleted-buffers):
97495	New variable.
97496	* lisp/dired.el (dired-clean-up-after-deletion): Kill buffers
97497	visiting deleted files without confirming if
97498	dired-clean-confirm-killing-deleted-buffers is nil.  (Bug#28373)
97499	* etc/NEWS: Document the change.
97500
975012017-09-08  Alfred M. Szmidt  <ams@gnu.org>  (tiny change)
97502
97503	Support SVN files with svn:externals property
97504
97505	* lisp/vc/vc-svn.el (vc-svn-parse-status): Don't ignore files
97506	marked with the svn:externals property.
97507
975082017-09-08  Alfred M. Szmidt  <ams@gnu.org>  (tiny change)
97509
97510	List locally removed files in vc-dir with SVN back-end
97511
97512	* lisp/vc/vc-svn.el (vc-svn-after-dir-status): List files marked
97513	with ?! as needs-update.
97514
975152017-09-08  Ken Olum  <kdo@cosmos.phy.tufts.edu>
97516
97517	Fix Rmail editing with reapplying encoding to message body
97518
97519	* lisp/mail/rmailedit.el (rmail-cease-edit):  If no
97520	content-type in edited headers, look for one in original
97521	headers and add it to edited headers.  (Bug #26918)
97522	Use a marker to track start of new body, so that
97523	content-transfer-encoding gets applied only to body.  (Bug #27353).
97524	Ensure blank line at end of message after encoding, not
97525	before.
97526
975272017-09-08  Eli Zaretskii  <eliz@gnu.org>
97528
97529	Document last change in dired.el
97530
97531	* etc/NEWS (Dired): Document the last change in dired.el.
97532	(Bug#27435)
97533
975342017-09-08  Tak Kunihiro  <tkk@misasa.okayama-u.ac.jp>
97535
97536	Make mouse clicks in Dired more customizable
97537
97538	* lisp/dired.el (dired-mouse-find-file): Allow callers to
97539	specify functions to visit file/directory.
97540	(dired-mouse-find-file-other-window)
97541	(dired-mouse-find-file-other-frame): New functions to visit
97542	files in another window/frame.  (Bug#27435)
97543
975442017-09-08  Eli Zaretskii  <eliz@gnu.org>
97545
97546	Avoid compiler warnings on MS-Windows with GCC 6 and 7
97547
97548	* src/w32font.c (SUBRANGE): Use unsigned arithmetic for
97549	bit-shifting, to avoid compiler warnings.
97550	(w32font_text_extents): Tell GCC NGLYPHS is non-negative, to avoid
97551	a warning.  For details of the warning, see
97552	https://lists.gnu.org/r/emacs-devel/2017-09/msg00093.html.
97553	* src/term.c (keys) [WINDOWSNT]: Don't define, as it is not used
97554	in that build.
97555	* src/sound.c (sound_perror): Ifdef away on WINDOWSNT, as this
97556	function is not used in that build.
97557
97558	* configure.ac: Disable -Wsuggest-attribute=format on MS-Windows.
97559
975602017-09-08  Eli Zaretskii  <eliz@gnu.org>
97561
97562	Fix 'directory-file-name' on DOS_NT systems as well
97563
97564	* src/fileio.c (directory_file_name) [DOS_NT]: Fix the DOS_NT case
97565	to be consistent with last change.
97566
97567	* test/src/fileio-tests.el (fileio-tests--odd-symlink-chars):
97568	Disable on MS-Windows.
97569	(fileio-tests--directory-file-name-dos-nt)
97570	(fileio-tests--file-name-as-directory-dos-nt): New tests.
97571
975722017-09-08  Wilson Snyder  <wsnyder@wsnyder.org>
97573
97574	Fix various verilog-mode.el issues.
97575
97576	* lisp/progmodes/verilog-mode.el (verilog-expand-dirnames): Fix expanding
97577	"*/*", msg2284. Reported by Jonathan Ferguson.
97578	(ignore-errors): Fix ignore-errors error on Emacs 22.3, bug1177. Reported
97579	by Victor Lau.
97580	(verilog-getopt, verilog-getopt-file) (verilog-library-flags,
97581	verilog-substitute-file-name-path): Support -F in verilog getopt files,
97582	bug1171. Reported by George Cuan.
97583	(verilog-do-indent): Fix misindenting symbols starting with t,
97584	bug1169. Reported by Hoai Tran.
97585	(verilog-read-auto-template-middle): Fix slow template matching on
97586	AUTOINST. Reported by Jeffrey Huynh.
97587	(verilog-pretty-expr): The extra whitespace addition before "=" operators
97588	is now done only if the whole assignment block contains the 2-character
97589	"<=" operator.  Remove the unused argument _myre.  Use `unless',
97590	`save-excursion' and `when' functions where possible.  Internal variables
97591	refactored for clarity.  Follow elisp convention for closing parentheses.
97592	By Kaushal Modi.
97593	(verilog-get-lineup-indent-2): Update docstring.  Internal variables
97594	refactored for clarity.  Earlier EDPOS argument was expected to be a
97595	marker; it is now renamed to END and is now expected to be a position.
97596	Use `when' instead of `if'.  By Kaushal Modi.
97597	(electric-verilog-terminate-line): Remove the unused second argument from
97598	`verilog-pretty-expr' call.  By Kaushal Modi.
97599	(verilog-calc-1): Fix indentation of a virtual class definition after a
97600	typedef class, bug1080.  By Kaushal Modi.
97601
976022017-09-08  Katsumi Yamaoka  <yamaoka@jpl.org>
97603
97604	Don't use summary window to visit group buffer (bugfix)
97605
97606	* lisp/gnus/gnus-sum.el (gnus-summary-jump-to-group): Make sure that
97607	the window to open the group buffer doesn't visit the summary buffer.
97608	This fixes a bug: `gnus-summary-next-article' sometimes causes an error
97609	by trying to select nonexistent summary window.
97610
976112017-09-08  Paul Eggert  <eggert@cs.ucla.edu>
97612
97613	Fix bug: (directory-file-name "///") returned "//"
97614
97615	* src/fileio.c (directory_file_name): For "///" and longer,
97616	return "/", not "//", as per POSIX.
97617	* test/src/fileio-tests.el (fileio-tests--directory-file-name)
97618	(fileio-tests--file-name-as-directory): New tests.
97619
976202017-09-08  Paul Eggert  <eggert@cs.ucla.edu>
97621
97622	Remove obsolete vc-mistrust-permissions doc
97623
97624	* doc/emacs/vc1-xtra.texi (RCS and SCCS): Remove documentation
97625	for vc-mistrust-permissions, which no longer exists.
97626
976272017-09-07  Alan Third  <alan@idiocy.org>
97628
97629	Set frame size to actual requested size (bug#18215)
97630
97631	* src/nsterm.m (x_set_window_size): Don't use
97632	FRAME_TEXT_TO_PIXEL_WIDTH or FRAME_TEXT_TO_PIXEL_HEIGHT.
97633
976342017-09-07  Paul Eggert  <eggert@cs.ucla.edu>
97635
97636	autogen.sh: omit bogus chatter if no .git
97637
97638	Problem reported by Angelo Graziosi in:
97639	https://lists.gnu.org/r/emacs-devel/2017-09/msg00045.html
97640	* autogen.sh (git_config): Do not execut 'git' if $do_git fails.
97641
976422017-09-07  Glenn Morris  <rgm@gnu.org>
97643
97644	Skip emacsclient tests if --enable-profiling was used
97645
97646	* test/lib-src/emacsclient-tests.el
97647	(emacsclient-test-call-emacsclient): Make it a macro.
97648	Handle "Profiling timer expired" return from emacsclient.  (Bug#28319)
97649	(emacsclient-test-alternate-editor-allows-arguments)
97650	(emacsclient-test-alternate-editor-allows-quotes): Update for above.
97651
976522017-09-06  Eli Zaretskii  <eliz@gnu.org>
97653
97654	Fix a minor markup problem in ELisp manual
97655
97656	* doc/lispref/functions.texi (Mapping Functions): Fix the order of
97657	@example and @group.  For the details, see
97658	https://lists.gnu.org/r/bug-texinfo/2017-09/msg00007.html.
97659
976602017-09-06  Mark Oteiza  <mvoteiza@udel.edu>
97661
97662	Add XDG desktop file parsing and tests
97663
97664	* lisp/xdg.el: Add support for Desktop Entry Specification.
97665	(xdg--user-dirs-parse-line): Check if file is readable.
97666	(xdg-desktop-group-regexp, xdg-desktop-entry-regexp): New variables.
97667	(xdg--desktop-parse-line, xdg-desktop-read-file, xdg-desktop-strings):
97668	New functions.
97669	* test/lisp/xdg-tests.el:
97670	* test/data/xdg/test.desktop:
97671	* test/data/xdg/wrong.desktop: New files.
97672
976732017-09-06  Glenn Morris  <rgm@gnu.org>
97674
97675	Allow for adjusting line length of test backtraces
97676
97677	* test/Makefile.in (TEST_BACKTRACE_LINE_LENGTH): New option.
97678	(%.log): Respect backtrace line length.
97679
976802017-09-06  Glenn Morris  <rgm@gnu.org>
97681
97682	Allow customizing line length of ert backtraces in batch mode
97683
97684	* lisp/emacs-lisp/ert.el (ert-batch-backtrace-right-margin):
97685	Make it a user option.
97686	(ert-run-tests-batch): Handle ert-batch-backtrace-right-margin nil.
97687
976882017-09-06  Glenn Morris  <rgm@gnu.org>
97689
97690	Minor emacsclient-tests simplification
97691
97692	* test/lib-src/emacsclient-tests.el (emacsclient-test-emacs):
97693	Simplify.  Also work when running installed.
97694
976952017-09-06  Alan Third  <alan@idiocy.org>
97696
97697	Revert "Force screen update after drawing cursor glyph (bug#23774)"
97698
97699	This reverts commit 1b492fa5456e2b6face8d0856f11d17e432693b0.
97700
97701	See bug#28358
97702
977032017-09-05  Mark Oteiza  <mvoteiza@udel.edu>
97704
97705	Refactor some loops in mailcap.el
97706
97707	* lisp/net/mailcap.el (mailcap-mime-types):
97708	(mailcap-file-default-commands): Convert nested maps to loops.
97709
977102017-09-05  Glenn Morris  <rgm@gnu.org>
97711
97712	emacsclient-tests: remove some debug statements
97713
97714	* test/lib-src/emacsclient-tests.el
97715	(emacsclient-test-call-emacsclient): Remove debug statements.
97716
977172017-09-05  Simen Heggestøyl  <simenheg@gmail.com>
97718
97719	Handle non-zero exit status from psql more gracefully
97720
97721	* lisp/progmodes/sql.el (sql-postgres-list-databases): Handle non-zero
97722	exit statuses from `psql -ltX' more gracefully by returning nil.
97723
97724	* test/lisp/progmodes/sql-tests.el
97725	(sql-tests-postgres-list-databases-error): New test.
97726
977272017-09-05  Eli Zaretskii  <eliz@gnu.org>
97728
97729	Avoid losing Ctrl-C keystrokes in compilation mode on MS-Windows
97730
97731	* src/w32proc.c (sys_kill): Preserve the up/down state of the
97732	Ctrl key across the simulated Ctrl-C keystroke.  (Bug#28348)
97733
977342017-09-05  Andreas Schwab  <schwab@linux-m68k.org>
97735
97736	* src/image.c (Fimagemagick_types): Doc fix.
97737
977382017-09-05  Mark Oteiza  <mvoteiza@udel.edu>
97739
97740	Move soundex.el test to a proper test
97741
97742	* test/lisp/soundex-tests.el: New file.
97743	* lisp/soundex.el: Use lexical-binding.  Remove commented test.
97744
977452017-09-05  Mark Oteiza  <mvoteiza@udel.edu>
97746
97747	Add tests for mailcap.el
97748
97749	* test/data/mailcap/mime.types: New file.
97750	* test/lisp/net/mailcap-tests.el: New file.
97751
977522017-09-05  Michael Albinus  <michael.albinus@gmx.de>
97753
97754	Doc precisment about remote link targets
97755
97756	* doc/lispref/files.texi (Truenames): Explain handling of
97757	targets of `file-truename' and `make-symbolic-link', which
97758	look like a remote file name.
97759
97760	* etc/NEWS: Precise examples for symlinks which look like
97761	remote file names.  MUSTBENEW of `write-region' is not
97762	propagated to file name handlers.
97763
977642017-09-05  John Wiegley  <johnw@newartisans.com>
97765
97766	Remove an opinionated section on "What Eshell is not"
97767
97768	I don't find this information to accurately reflect possible use cases
97769	for Eshell; plus, it doesn't offer much in the way of information,
97770	just opinion.
97771
977722017-09-05  Ken Brown  <kbrown@cornell.edu>
97773
97774	Fix configure test for Xpm
97775
97776	Problem reported by Ashish Shukla in
97777	https://lists.gnu.org/r/emacs-devel/2017-09/msg00020.html.
97778	* configure.ac (HAVE_XPM) [HAVE_X11]: Include X11/xpm.h instead of
97779	noX/xpm.h in configure test.
97780
977812017-09-04  Paul Eggert  <eggert@cs.ucla.edu>
97782
97783	Revert recent float→double Motif change
97784
97785	Problem reported by Martin Rudalics in:
97786	https://lists.gnu.org/r/emacs-devel/2017-09/msg00014.html
97787	* src/xterm.c (xm_scroll_callback, xaw_jump_callback)
97788	(x_set_toolkit_scroll_bar_thumb)
97789	(x_set_toolkit_horizontal_scroll_bar_thumb):
97790	Go back to using ‘float’ temporaries rather than ‘double’.
97791	Although quite possibly this masks an underlying bug,
97792	we lack time to look into that now.
97793
977942017-09-04  Glenn Morris  <rgm@gnu.org>
97795
97796	emacsclient-tests: add some debug statements
97797
97798	* test/lib-src/emacsclient-tests.el
97799	(emacsclient-test-call-emacsclient): Add debug statements.
97800
978012017-09-04  Michael Albinus  <michael.albinus@gmx.de>
97802
97803	Work on Tramp's (symbolic) links
97804
97805	* doc/misc/tramp.texi (Traces and Profiles): Mention the
97806	backtrace when tramp-verbose is greater than or equal to 10.
97807
97808	* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
97809	Use `tramp-handle-add-name-to-file'.
97810
97811	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): Use
97812	`tramp-handle-add-name-to-file' and `tramp-handle-file-truename'.
97813
97814	* lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link): Improve.
97815
97816	* lisp/net/tramp-smb.el (tramp-smb-errors):
97817	Add "NT_STATUS_CONNECTION_DISCONNECTED" and
97818	"NT_STATUS_OBJECT_PATH_SYNTAX_BAD".
97819	(tramp-smb-file-name-handler-alist): Use `tramp-handle-file-truename'.
97820	(tramp-smb-do-file-attributes-with-stat): Return non-nil only
97821	if one of the attributes is non-nil.
97822	(tramp-smb-handle-file-local-copy): Use `file-truename'.
97823	(tramp-smb-handle-file-truename): Move to tramp.el.
97824	(tramp-smb-handle-insert-directory): Show symlinks.
97825	(tramp-smb-handle-make-symbolic-link): Improve.
97826	(tramp-smb-read-file-entry): Handle extended file modes in Samba.
97827
97828	* lisp/net/tramp.el (tramp-handle-add-name-to-file)
97829	(tramp-handle-file-truename): New defuns.
97830
97831	* test/lisp/net/tramp-tests.el (tramp-test21-file-links): Extend test.
97832	(tramp--test-check-files): Make check for "smb".
97833
978342017-09-04  Mark Oteiza  <mvoteiza@udel.edu>
97835
97836	Embed JSON readtable into json-read
97837
97838	Also unroll dispatch into a cond.
97839	* lisp/json.el (json-readtable): Remove.
97840	(json-readtable-dispatch): New macro.  Assimilate json-readtable.
97841	(json-read): Use the macro.
97842
978432017-09-04  Mark Oteiza  <mvoteiza@udel.edu>
97844
97845	Hexify strings in EWW search queries
97846
97847	Previously, inputting "cats & dogs" would lose dogs because the
97848	ampersand signifies a query parameter.  Instead, hexify each word while
97849	preserving quotes with split-string.
97850	* lisp/net/eww.el (eww--dwim-expand-url): Join hexified words together
97851	with + separators, instead of replacing whitespace with +.
97852
978532017-09-03  Glenn Morris  <rgm@gnu.org>
97854
97855	emacsclient-tests: call-process may return non-integer
97856
97857	* test/lib-src/emacsclient-tests.el
97858	(emacsclient-test-alternate-editor-allows-arguments)
97859	(emacsclient-test-alternate-editor-allows-quotes):
97860	Handle non-integer return from call-process.
97861
978622017-09-03  Eli Zaretskii  <eliz@gnu.org>
97863
97864	* lisp/simple.el (visual-line-mode): Doc fix.  (Bug#28337)
97865
978662017-09-03  Alan Third  <alan@idiocy.org>
97867
97868	Force screen update after drawing cursor glyph (bug#23774)
97869
97870	* src/nsterm.m (ns_draw_window_cursor): Force a screen update after
97871	drawing the glyph over the cursor.
97872
978732017-09-03  Alan Mackenzie  <acm@muc.de>
97874
97875	Correct the fontification of quote marks after buffer changes in CC Mode.
97876
97877	* lisp/progmodes/cc-defs.el
97878	(c-search-forward-char-property-with-value-on-char): New macro.
97879
97880	* lisp/progmodes/cc-mode.el (c-parse-quotes-before-change)
97881	(c-parse-quotes-after-change): Rewrite the functions, simplifying
97882	considerably, and removing unnecessary optimizations.
97883	Invalidate two caches after manipulating text properties.
97884
978852017-09-03  Alan Mackenzie  <acm@muc.de>
97886
97887	Fix fontification of "operator~" in C++ Mode.
97888
97889	* lisp/progmodes/cc-langs.el (c-ambiguous-overloadable-or-identifier-prefices)
97890	(c-ambiguous-overloadable-or-identifier-prefix-re): New c-lang-defconsts/vars.
97891
97892	* lisp/progmodes/cc-engine.el (c-forward-name): Do not try to parse "~" (and
97893	two other symbols) as a cast without good evidence.  Prefer an overloaded
97894	operator in ambiguous cases.
97895
978962017-09-03  Martin Rudalics  <rudalics@gmx.at>
97897
97898	In delete_frame do not delete terminal for any toolkit build
97899
97900	* src/frame.c (delete_frame): Neither delete terminal for
97901	non-GTK toolkit builds (Bug#5802, Bug#21509, Bug#23499,
97902	Bug#27816).
97903
979042017-09-02  Philipp Stephani  <phst@google.com>
97905
97906	Improve error messages for improper plists (Bug#27726)
97907
97908	* src/fns.c (Fplist_put, Flax_plist_get, Flax_plist_put)
97909	(Fplist_member, syms_of_fns): Use ‘plistp’ as pseudo-predicate for
97910	improper plists instead of ‘listp.’
97911
97912	* test/src/fns-tests.el (plist-get/odd-number-of-elements)
97913	(lax-plist-get/odd-number-of-elements)
97914	(plist-put/odd-number-of-elements)
97915	(lax-plist-put/odd-number-of-elements)
97916	(plist-member/improper-list): Add unit tests.
97917
979182017-09-02  Eli Zaretskii  <eliz@gnu.org>
97919
97920	Fix decrypting in plstore.el on MS-Windows
97921
97922	* lisp/plstore.el (plstore-open): Bind coding-system-for-read to
97923	raw-text, instead of using insert-file-contents-literally.
97924	(Bug#28114)
97925
979262017-09-02  Eli Zaretskii  <eliz@gnu.org>
97927
97928	* src/fileio.c (Fexpand_file_name): Doc fix.  (Bug#27982)
97929
979302017-09-02  Eli Zaretskii  <eliz@gnu.org>
97931
97932	Rewrite Antinews for Emacs 26
97933
97934	* doc/lispref/anti.texi (Antinews): Rewrite for Emacs 26.
97935	* doc/lispref/elisp.texi (Top): Update the top-level menu's
97936	Antinews entry.
97937	* doc/emacs/anti.texi (Antinews): Rewrite for Emacs 26.
97938	* doc/emacs/emacs.texi (Top): Update the top-level menu's Antinews
97939	entry.
97940
97941	* etc/NEWS: Rearrange some entries in a more reasonable order.
97942
979432017-09-02  Reuben Thomas  <rrt@sc3d.org>
97944
97945	Fix a mis-binding in a test
97946
97947	* test/lisp/progmodes/python-tests.el
97948	(python-shell-calculate-process-environment-3): Fix binding of
97949	process-environment.  A level of parens was missing.
97950
97951	This was found after Glenn Morris noticed a similar problem with the
97952	patch for Bug#28319.
97953
979542017-09-02  Reuben Thomas  <rrt@sc3d.org>
97955
97956	Fix a mis-binding and a bad defun name in a test (Bug#28319)
97957
97958	test/lib-src/emacs-client-tests.el (call-emacsclient): Rename
97959	emacsclient-test-call-emacsclient.
97960	(emacsclient-test-alternate-editor-allows-arguments)
97961	(emacsclient-test-alternate-editor-allows-quotes): Fix let-binding of
97962	process-environment.
97963
97964	Thanks to Glenn Morris for noticing these errors.
97965
979662017-09-02  Glenn Morris  <rgm@gnu.org>
97967
97968	* test/Makefile.in (check-no-automated-subdir): Silence by default.
97969
97970	* test/Makefile.in (ELFILES): Sort, for a reproducible order.
97971
979722017-09-01  Mark Oteiza  <mvoteiza@udel.edu>
97973
97974	Turn off checkdoc complaint about default argument order
97975
97976	* etc/NEWS: Mention change.
97977	* lisp/emacs-lisp/checkdoc.el (checkdoc-arguments-in-order-flag):
97978	Disable by default, note version.
97979
979802017-09-01  Reuben Thomas  <rrt@sc3d.org>
97981
97982	Stop emacsclient tests hanging (Bug#28319)
97983
97984	* test/lib-src/emacsclient-tests.el
97985	(emacsclient-test-alternate-editor-allows-arguments): Use a
97986	non-existent file to communicate with server, so that any existing
97987	default server will not be hijacked (in fact, the test does
97988	not need a server).
97989	(emacsclient-test-alternate-editor-allows-quotes): Likewise.
97990
979912017-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
97992
97993	* lisp/obsolete/html2text.el: Don't require CL
97994
97995	(html2text-clean-anchor): Mark unused arg.
97996
979972017-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
97998
97999	Don't remove undisplayers from inlined MIME parts (bugfix)
98000
98001	* lisp/gnus/gnus-art.el (gnus-mime-buttonize-attachments-in-header):
98002	Don't remove undisplayers from inlined MIME parts (bugfix);
98003	Simplify criterion that finds attachments.
98004
980052017-08-31  Mark Oteiza  <mvoteiza@udel.edu>
98006
98007	Make ucs-names a hash table (Bug#28302)
98008
98009	* etc/NEWS: Mention the type change.
98010	* lisp/descr-text.el (describe-char): Use gethash to access ucs-names.
98011	Hardcode BEL's name into the function instead of needlessly mapping
98012	over the hash table in the spirit of rassoc.
98013	* lisp/international/mule-cmds.el (ucs-names): Fix variable and
98014	function docstrings.  Initialize a hash table for ucs-names--the
98015	number of entries is 42845 here.  Switch to hash-table
98016	getters/setters.
98017	(mule--ucs-names-annotation): Use hash-table getter.
98018	(char-from-name): Upcase the string if ignore-case is truthy.
98019	* lisp/leim/quail/latin-ltx.el: Use maphash instead of dolist.
98020
980212017-08-31  Alan Third  <alan@idiocy.org>
98022
98023	Remove unneeded version checks (bug#28222)
98024
98025	* src/macfont.h (CGContextSetFontSmoothingStyle): Remove version
98026	check.
98027	* src/macfont.m (macfont_draw): Remove version check, and test for
98028	existence of CGContextSetFontSmoothingStyle.
98029
980302017-08-31  Alan Mackenzie  <acm@muc.de>
98031
98032	Fix a glitch in CC Mode's syntactic whitespace cache.
98033
98034	* lisp/progmodes/cc-engine.el (c-forward-sws): Deal correctly with a block
98035	comment close at the end of a macro.
98036
980372017-08-31  Alan Mackenzie  <acm@muc.de>
98038
98039	Correct the fontification of C++ Mode enclosed declarations.
98040
98041	* lisp/progmodes/cc-fonts.el (c-font-lock-enclosing-decls): abolish the
98042	spurious check that the character before the start of an enclosed declaration
98043	must be ; or }.  It might also be {.
98044
980452017-08-31  Martin Rudalics  <rudalics@gmx.at>
98046
98047	In xterm.c fix some recently introduced compiler warnings
98048
98049	* src/xterm.c (xaw_jump_callback)
98050	(x_set_toolkit_scroll_bar_thumb): Fix some recently introduced
98051	-Wdouble-promotion warnings.
98052
980532017-08-31  Martin Rudalics  <rudalics@gmx.at>
98054
98055	Restrict fix of Bug#24963 and Bug#25887 to GTK builds
98056
98057	* src/xterm.c (handle_one_xevent): Restrict earlier fix of
98058	Bug#24963 and Bug#25887 to avoid that a non-GTK Emacs won't
98059	react to state changes received via ConfigureNotify.
98060
980612017-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
98062
98063	Respect directory a user enters (bug#28299)
98064
98065	* lisp/gnus/mm-decode.el (mm-save-part):
98066	Respect directory a user enters (bug#28299).
98067
980682017-08-31  Samuel Freilich  <sfreilich@google.com>
98069
98070	Do not split line before width of fill-prefix
98071
98072	When auto-filling a paragraph, don't split a line before the width of the
98073	fill-prefix, creating a subsequent line that is as long or longer (Bug#20774).
98074	* lisp/simple.el (do-auto-fill): Only consider break-points that are later in
98075	the line than the width of the fill-prefix.  This is a more general solution
98076	than the previous logic, which only skipped over the exact fill-prefix.  The
98077	fill-prefix doesn't necessarily match the prefix of the first line of a
98078	paragraph in adaptive-fill-mode.
98079
980802017-08-31  Noam Postavsky  <npostavs@gmail.com>
98081
98082	Support lazy loading for autogenerated usage docstrings too (Bug#27748)
98083
98084	* lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defmumble):
98085	Consider any documentation that ended up in code as a docstring (e.g.,
98086	autogenerated (fn ARG1 ARG2) type things), not just what the user
98087	passed.
98088
980892017-08-31  Noam Postavsky  <npostavs@gmail.com>
98090
98091	Drop docstrings from cl-defsubst produced inline bodies (Bug#27748)
98092
98093	* lisp/emacs-lisp/cl-macs.el (cl-defsubst): Use macroexp-parse-progn
98094	to drop the docstring.  Add a simple docstring to the compiler-macro.
98095
980962017-08-30  Paul Eggert  <eggert@cs.ucla.edu>
98097
98098	Quote file-truename symlink to "../foo:bar:"
98099
98100	Problem reported by Michael Albinus (Bug#28264#19).
98101	* lisp/files.el (files--splice-dirname-file): Fix bug where
98102	a relative symlink to "../foo:bar:" did not quote the result.
98103
981042017-08-30  Reuben Thomas  <rrt@sc3d.org>
98105
98106	Add support for arguments in emacsclient's ALTERNATE_EDITOR (Bug #25082)
98107
98108	* lib-src/emacsclient.c (fail): Parse ALTERNATE_EDITOR, or
98109	corresponding command-line argument, into quote- or space-separated
98110	tokens.  If a token starts with a quote, then it naturally is expected
98111	to end with a quote; escaping is not supported. This is enough to cope
98112	with the typical case of requiring the initial path to be quoted,
98113	common on Windows where it may contain spaces.
98114	* etc/NEWS: Document.
98115	* doc/emacs/misc.texi: Likewise.
98116	* doc/man/emacsclient.1: Tweak to remove the implication that only an
98117	editor can be specified (the manual already mentions a “command”).
98118	Fix a small error where “EDITOR” is referred to rather than
98119	“ALTERNATE_EDITOR”.
98120	* test/lib-src/emacsclient-tests.el: Add tests.
98121
981222017-08-30  Stefan Monnier  <monnier@iro.umontreal.ca>
98123
98124	* lisp/man.el (Man-softhyphen-to-minus): Avoid string-as-multibyte.
98125
981262017-08-30  Devon Sean McCullough  <Emacs-Hacker2017@jovi.net>  (tiny change)
98127
98128	Correct "hide others" shortcut on macOS (bug#28215)
98129
98130	* lisp/term/ns-win.el: Fix shortcut for ns-do-hide-others.
98131
981322017-08-30  Eli Zaretskii  <eliz@gnu.org>
98133
98134	Sync NEWS with the documentation
98135
98136	* etc/NEWS: Mark entries according to documentation.
98137
98138	* doc/lispref/functions.texi (Mapping Functions): Document 'mapcan'.
98139
981402017-08-30  Michael Albinus  <michael.albinus@gmx.de>
98141
98142	Improve symlinks for Tramp
98143
98144	* lisp/files.el (files--splice-dirname-file): Quote whole file.
98145
98146	* lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link):
98147	Do not expand TARGET, it could be remote.
98148	(tramp-sh-handle-file-truename): Check for cyclic symlink also
98149	in case of readlink.  Quote result if it looks remote.
98150	(tramp-sh-handle-file-local-copy): Use `file-truename'.
98151
98152	* test/lisp/net/tramp-tests.el (tramp-test08-file-local-copy)
98153	(tramp-test09-insert-file-contents): Test also file missing.
98154	(tramp-test21-file-links): Extend test.
98155
981562017-08-30  Martin Rudalics  <rudalics@gmx.at>
98157
98158	Preserve display's foreground color when clearing internal borders (Bug#28278)
98159
98160	* src/xterm.c (x_after_update_window_line): Preserve display's
98161	foreground color when clearing internal borders (Bug#28278).
98162
981632017-08-30  Noam Postavsky  <npostavs@gmail.com>
98164
98165	Use cl-print for all values printed by `describe-variable'
98166
98167	* lisp/help-fns.el (describe-variable): Use cl-prin1 for original and
98168	global values too.
98169
981702017-08-30  Noam Postavsky  <npostavs@gmail.com>
98171
98172	Minor simplification for byte-compile-constant-push
98173
98174	* lisp/emacs-lisp/bytecomp.el (byte-compile-constant): Move the meat
98175	of the code from here...
98176	(byte-compile-constant-push): ... to here.  No need to bind
98177	byte-compile--for-effect anymore.
98178
981792017-08-30  Paul Eggert  <eggert@cs.ucla.edu>
98180
98181	Prefer file-name-quote to concat "/:"
98182
98183	Suggested by Michael Albinus (Bug#28264#13).
98184	* lisp/files.el (files--splice-dirname-file): Use file-name-quote
98185	rather than attempting to do it by hand.
98186
981872017-08-30  Paul Eggert  <eggert@cs.ucla.edu>
98188
98189	* configure.ac: fix typo in previous change
98190
981912017-08-29  Paul Eggert  <eggert@cs.ucla.edu>
98192
98193	Be more conservative in link time optimization doc
98194
98195	While testing --enable-link-time-optimization with GCC 7.1.1
98196	I ran into a serious GCC code-generation bug which makes me
98197	think that --enable-link-time-optimization should be
98198	discouraged for typical installs (Bug#28213).  See:
98199	https://bugzilla.redhat.com/show_bug.cgi?id=1486455
98200
982012017-08-29  Paul Eggert  <eggert@cs.ucla.edu>
98202
98203	Make garbage collection more conservative
98204
98205	Check for a pointer anywhere within the object, as opposed to just
98206	the start of the object.  This is needed for gcc -Os -flto on
98207	x86-64 (Bug#28213).  This change means that the garbage collector
98208	is more conservative, and will incorrectly keep objects that it
98209	does not need to, but that is better than incorrectly discarding
98210	objects that should be kept.
98211	* src/alloc.c (ADVANCE, VINDEX): Now functions, not macros;
98212	this is easier to debug.
98213	(setup_on_free_list): Rename from SETUP_ON_FREE_LIST.
98214	Now a function with two args, not a macro with three.
98215	All callers changed.
98216	(live_string_holding, live_cons_holding, live_symbol_holding)
98217	(live_misc_holding, live_vector_holding, live_buffer_holding):
98218	New functions, which check for any object containing the addressed
98219	byte, not just for an object at the given address.
98220	(live_string_p, live_cons_p, live_symbol_p, live_misc_p)
98221	(live_vector_p, live_buffer_p):
98222	Redefine in terms of the new functions.
98223	(live_float_p): Refactor slightly to match the new functions.
98224	(mark_maybe_object, mark_maybe_pointer): Use the new functions.
98225	Don’t bother checking mark bits, as mark_object already does that,
98226	and omitting the checks here simplifies the code.  Although
98227	mark_maybe_object can continue to insist that tagged pointers
98228	still address the start of the object, mark_maybe_pointer now is
98229	more conservative and checks for pointers anywhere into an object.
98230
982312017-08-29  Paul Eggert  <eggert@cs.ucla.edu>
98232
98233	Improve stack-top heuristic
98234
98235	This is needed for gcc -Os -flto on x86-64; otherwise, GC misses part
98236	of the stack when scanning for heap roots, causing Emacs to crash
98237	later (Bug#28213).  The problem is that Emacs's hack for getting an
98238	address near the stack top does not work when link-time optimization
98239	moves stack variables around.
98240	* configure.ac (HAVE___BUILTIN_FRAME_ADDRESS): New macro.
98241	* lib-src/make-docfile.c (DEFUN_noinline): New constant.
98242	(write_globals, scan_c_stream): Support noinline.
98243	* src/alloc.c (NEAR_STACK_TOP): New macro.
98244	(SET_STACK_TOP_ADDRESS): Use it.
98245	(flush_stack_call_func, Fgarbage_collect): Now noinline.
98246
982472017-08-29  Paul Eggert  <eggert@cs.ucla.edu>
98248
98249	Align stack bottom properly.
98250
98251	This is needed for gcc -Os -flto on x86-64 (Bug#28213).
98252	* src/emacs.c (main): Align stack-bottom variable as a pointer,
98253	since mark_memory requires this.
98254
982552017-08-29  Eli Zaretskii  <eliz@gnu.org>
98256
98257	Avoid spinning waiting for git-gui.exe on Windows
98258
98259	* src/w32proc.c (waitpid): If GetExitCodeProcess returns
98260	STILL_ACTIVE, and we were called with WNOHANG, pretend that the
98261	process exited.  (Bug#28268)
98262
982632017-08-29  Eli Zaretskii  <eliz@gnu.org>
98264
98265	Document '--module-assertions'
98266
98267	* doc/emacs/cmdargs.texi (Initial Options): Document the
98268	'--module-assertions' command-line option.
98269	* doc/lispref/loading.texi (Dynamic Modules): Add a
98270	cross-reference to the description of '--module-assertions'.
98271
98272	* etc/NEWS: Update the NEWS entry for --module-assertions.
98273
982742017-08-29  Alan Third  <alan@idiocy.org>
98275
98276	Add news entry about new macOS features
98277
98278	* etc/NEWS: Add entry about ns-appearance, ns-transparent-titlebar and
98279	ns-use-thin-smoothing.
98280
982812017-08-29  Alan Third  <alan@idiocy.org>
98282
98283	Fix cross macOS version building (bug#28222)
98284
98285	* src/macfont.h (CGContextSetFontSmoothingStyle): Function
98286	declaration.
98287	* src/macfont.m (macfont_draw): Limit new code to macOS 10.8 and up.
98288
982892017-08-29  Ben Bonfil  <bonfil@gmail.com>  (tiny change)
98290
98291	Enable thin font smoothing in macOS (bug#28222)
98292
98293	* src/nsterm.m (syms_of_nsterm): Define var ns-use-thin-smoothing.
98294	* src/macfont.m (macfont_draw): Use font smoothing.
98295
982962017-08-29  Eli Zaretskii  <eliz@gnu.org>
98297
98298	Minor improvement in documentation of display-line-numbers
98299
98300	* doc/emacs/display.texi (Display Custom): Document the
98301	display-line-numbers-mode and related options.
98302
983032017-08-29  Eli Zaretskii  <eliz@gnu.org>
98304
98305	Avoid aborting in 'waitpid' on MS-Windows
98306
98307	* src/w32proc.c (waitpid): Don't allow quitting if called with
98308	WNOHANG in OPTIONS.  (Bug#28268)
98309
983102017-08-29  Stefan Monnier  <monnier@iro.umontreal.ca>
98311
98312	* lisp/progmodes/sh-script.el: Test "in-string" of the right char!
98313
98314	(sh-syntax-propertize-function): Fix off-by-one error.
98315	Fixes bug#23526.
98316
983172017-08-29  Rasmus  <rasmus@gmx.us>
98318
98319	Update Org to v9.0.10
98320
98321	Please see etc/ORG-NEWS for major changes. Note, this is a bugfix
98322	release.
98323
983242017-08-29  Paul Eggert  <eggert@cs.ucla.edu>
98325
98326	Silence false alarms for symlinks to sources
98327
98328	Problem reported by Glenn Morris (Bug#28264).
98329	* lisp/files.el (files--splice-dirname-file): New function.
98330	(file-truename, file-chase-links): Use it.
98331
983322017-08-29  Paul Eggert  <eggert@cs.ucla.edu>
98333
98334	Simplify remove_slash_colon
98335
98336	* src/process.c (remove_slash_colon): Simplify
98337	and avoid a special case for "/:" by itself.
98338
983392017-08-28  Tassilo Horn  <tsdh@gnu.org>
98340
98341	Remove font family from minibuffer-prompt face
98342
98343	* etc/themes/tsdh-light-theme.el (tsdh-light): Remove font family from
98344	minibuffer-prompt face.
98345
983462017-08-28  Michael Albinus  <michael.albinus@gmx.de>
98347
98348	Further fixes in tramp-smb.el
98349
98350	* lisp/net/tramp-smb.el (tramp-smb-handle-file-truename): New defun.
98351	(tramp-smb-file-name-handler-alist): Use it.
98352	(tramp-smb-handle-make-symbolic-link): Unquote target.
98353
98354	* test/lisp/net/tramp-tests.el
98355	(tramp--test-ignore-make-symbolic-link-error): New defmacro.
98356	(tramp-test18-file-attributes, tramp-test21-file-links)
98357	(tramp--test-check-files): Use it.
98358
983592017-08-28  Paul Eggert  <eggert@cs.ucla.edu>
98360
98361	Don’t assume -g3 in .gdbinit
98362
98363	* src/.gdbinit (EMACS_INT_WIDTH, USE_LSB_TAG):
98364	Use reasonable defaults if not in the symbol table.
98365
983662017-08-28  Robert Pluim  <rpluim@gmail.com>  (tiny change)
98367
98368	Use string-match to check for dotfiles in ido
98369
98370	* lisp/ido.el (ido-make-file-list): Use string-match to check
98371	for dotfiles instead of substring, as when using tramp
98372	simplified syntax ido-temp-list may contain empty strings.
98373
983742017-08-28  Mark Oteiza  <mvoteiza@udel.edu>
98375
98376	Font-lock FDO desktop files correctly
98377
98378	Single and double quotes do not have a special meaning in
98379	desktop files.
98380	https://standards.freedesktop.org/desktop-entry-spec/latest/
98381	* etc/NEWS: Mention new mode.
98382	* lisp/files.el (auto-mode-alist): Split out an entry for handling
98383	the .desktop extension with conf-desktop-mode.
98384	* lisp/textmodes/conf-mode.el (conf-desktop-font-lock-keywords): New
98385	variable with rules for booleans and format specifiers.
98386	(conf-unix-mode): Remove desktop file entry example from docstring.
98387	(conf-desktop-mode): New derived major mode.
98388
983892017-08-27  Tom Tromey  <tom@tromey.com>
98390
98391	Fix auto-fill bug in js-mode
98392
98393	* lisp/progmodes/js.el (js-do-auto-fill): New function.
98394	(js-mode): Set normal-auto-fill-function.
98395	* test/lisp/progmodes/js-tests.el (js-mode-fill-comment-bug): New
98396	test.
98397
983982017-08-27  Noam Postavsky  <npostavs@gmail.com>
98399
98400	Disable completion while entering python multiline statements
98401
98402	The "legacy" completion mechanism sends newlines to the running python
98403	process to get the list of completions, which confuses things if the
98404	user is in the middle of entering a multiline statement (Bug#28051).
98405	It's better to disable completion in this case.
98406	* lisp/progmodes/python.el (python-shell--block-prompt): New variable.
98407	(python-shell-prompt-set-calculated-regexps): Set it.
98408	(python-shell-completion-at-point): Return 'ignore' as the completion
98409	function when the current prompt is a block prompt.
98410
984112017-08-27  Michael Albinus  <michael.albinus@gmx.de>
98412
98413	Tramp cleanup
98414
98415	* lisp/net/tramp-sh.el (tramp-sh-extra-args): Remove compat code.
98416	(tramp-sh-handle-make-symbolic-link): More robust check for
98417	TARGET remoteness.
98418
98419	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory):
98420	Disable copying by tar temporarily, it doesn't work reliably.
98421	(tramp-smb-do-file-attributes-with-stat): Resolve symlink.
98422	(tramp-smb-handle-make-symbolic-link): Fix implementation.
98423
98424	* lisp/net/tramp.el (tramp-handle-file-symlink-p): Simplify.
98425
98426	* test/lisp/net/tramp-tests.el (tramp-test21-file-links):
98427	Extend test.
98428
984292017-08-27  Glenn Morris  <rgm@gnu.org>
98430
98431	Fix previous xterm.h change for non-gtk builds
98432
98433	* src/xterm.h (GTK_CHECK_VERSION) [!USE_GTK]: Define it.
98434
984352017-08-27  Philipp Stephani  <phst@google.com>
98436
98437	Fix GdkSettings-related deprecation warnings
98438
98439	* src/gtkutil.c (xg_initialize): Don’t set deprecated and ignored
98440	gtk-menu-bar-accel setting in new versions of GTK+.  Use g_object_set
98441	instead of deprecated gtk_settngs_set_string_property otherwise.
98442
984432017-08-27  Philipp Stephani  <phst@google.com>
98444
98445	Always use gtk_window_move in new versions
98446
98447	* src/gtkutil.c (my_log_handler): Don’t define in new versions of
98448	GTK+.
98449	(xg_set_geometry): Always use gtk_window_move in new versions of GTK+.
98450
98451	* src/xterm.c (syms_of_xterm): Document that x-gtk-use-window-move
98452	is ignored.
98453
98454	* lisp/subr.el (x-gtk-use-window-move): Make obsolete.
98455
984562017-08-27  Charles A. Roelli  <charles@aurox.ch>
98457
98458	Fix 'diff-goto-source' when buffer is narrowed (Bug#21262)
98459
98460	* lisp/vc/diff-mode.el (diff-find-file-name): Save the current
98461	narrowing, and widen the buffer before searching for the name of the
98462	file corresponding to the diff.
98463
98464	With thanks to Noam Postavsky.
98465
984662017-08-27  Philipp Stephani  <phst@google.com>
98467
98468	Remove use of a deprecated GTK+ function in new versions
98469
98470	* src/gtkutil.c (xg_make_tool_item): Use gtk_widget_set_focus_on_click
98471	if available
98472
984732017-08-27  Philipp Stephani  <phst@google.com>
98474
98475	Stop using deprecated GdkScreen monitor functions in newer GDK
98476
98477	* src/xfns.c (Fx_display_monitor_attributes_list): Use GdkMonitor
98478	objects instead of the deprecated GdkScreen functions in GDK 3.22+
98479
984802017-08-27  Philipp Stephani  <phst@google.com>
98481
98482	Use GdkSeat in new GDK versions
98483
98484	* src/gtkutil.c (xg_event_is_for_scrollbar): Use GdkSeat instead of
98485	GdkDeviceManager in GDK 3.20+
98486
984872017-08-27  Philipp Stephani  <phst@google.com>
98488
98489	* src/xterm.c (XTflash): Don’t use gdk_cairo_create in GDK 3.22+
98490
984912017-08-27  Philipp Stephani  <phst@google.com>
98492
98493	Remove call of deprecated GDK function
98494
98495	* src/xterm.h (XSync): Don’t call gdk_window_process_all_updates in
98496	GDK 3.22 or later.
98497
984982017-08-27  Alan Mackenzie  <acm@muc.de>
98499
98500	Amend the CC Mode macro cache to cope with changes at the macro start
98501
98502	Fixes bug #28233.
98503
98504	* lisp/progmodes/cc-engine.el (c-invalidate-macro-cache): Fix an off-by-1
98505	error.
98506
985072017-08-27  Paul Eggert  <eggert@cs.ucla.edu>
98508
98509	Fix over-protection of byte-compiled files
98510
98511	Problem reported by Sven Joachim (Bug#28244).
98512	Also, fix similar problem for autoload files.
98513	* lisp/emacs-lisp/autoload.el (autoload--save-buffer):
98514	Set temp file modes to the buffer-file-name file modes (or 666
98515	if not available) as adjusted by umask.
98516	* lisp/emacs-lisp/bytecomp.el (byte-compile-file):
98517	Set temp file modes to 666 as adjusted by umask.
98518
985192017-08-27  Tom Tromey  <tom@tromey.com>
98520
98521	Refine conf-toml-mode font-lock
98522
98523	Bug#28218
98524	* lisp/textmodes/conf-mode.el (conf-toml-font-lock-keywords): Use
98525	conf-toml-recognize-section.  Use \s- in variable regexp.
98526	(conf-toml-recognize-section): New function.
98527
985282017-08-27  Paul Eggert  <eggert@cs.ucla.edu>
98529
98530	Do not munge contents of local symbolic links
98531
98532	This lets Emacs deal with arbitrary local symlinks without
98533	mishandling their contents (Bug#28156).  For example,
98534	(progn (shell-command "ln -fs '~' 'x'") (rename-file "x" "/tmp/x"))
98535	now consistently creates a symbolic link from '/tmp/x' to '~'.
98536	Formerly, it did that only if the working directory was on the
98537	same filesystem as /tmp; otherwise, it expanded the '~' to
98538	the user's home directory.
98539	* lisp/dired.el (dired-get-filename): Use files--name-absolute-system-p
98540	instead of rolling our own code.
98541	* lisp/files.el (files--name-absolute-system-p): New function.
98542	(file-truename, file-chase-links): Use it to avoid mishandling
98543	symlink contents that begin with ~.
98544	(copy-directory, move-file-to-trash):
98545	Use concat rather than expand-file-name, to avoid mishandling
98546	symlink contents that begin with ~.
98547	* src/fileio.c (Fmake_symbolic_link): Do not expand leading "~" in the
98548	target unless interactive.  Strip leading "/:" if interactive.
98549	(emacs_readlinkat): Do not prepend "/:" to the link target if
98550	it starts with "/" and contains ":" before NUL.
98551	* test/src/fileio-tests.el (try-link): Rename from try-char,
98552	and accept a string instead of a char.  All uses changed.
98553	(fileio-tests--symlink-failure): Also test leading ~, and "/:",
98554	to test the new behavior.
98555
985562017-08-27  Reuben Thomas  <rrt@sc3d.org>
98557
98558	Remove invalid regexp for shell builtins for wksh
98559
98560	* lisp/progmodes/sh-script.el (sh-builtins): Shell built-ins have to
98561	be literal strings, so remove a regexp for wksh. In any case, it’s a
98562	defunct proprietary shell.
98563
985642017-08-26  Paul Eggert  <eggert@cs.ucla.edu>
98565
98566	Improve doc for file-name-absolute-p.
98567
985682017-08-26  Michael Albinus  <michael.albinus@gmx.de>
98569
98570	Fix Tramp part of Bug#28156
98571
98572	* lisp/files.el (file-name-non-special): Use `file-name-quote'
98573	instead prefixing "/:", the file could already be quoted.
98574
98575	* lisp/net/tramp.el (tramp-error): Handle null arguments.
98576	(tramp-handle-make-symbolic-link):
98577	* lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
98578	(tramp-sh-handle-add-name-to-file):
98579	* lisp/net/tramp-smb.el (tramp-smb-handle-add-name-to-file)
98580	(tramp-smb-handle-make-symbolic-link): Adapt implementation to
98581	stronger semantics in Emacs.  (Bug#28156)
98582
98583	* test/lisp/net/tramp-tests.el (tramp-test21-file-links):
98584	Extend test.
98585
985862017-08-26  Eli Zaretskii  <eliz@gnu.org>
98587
98588	Fix bugs merged with bug#25428
98589
98590	* lisp/simple.el (auto-fill-mode, visual-line-mode): Doc fix.
98591	(Bug#13926)  (Bug#25434)  (Bug#25435)
98592
985932017-08-26  Eli Zaretskii  <eliz@gnu.org>
98594
98595	Improve documentation of Info virtual files and nodes
98596
98597	* lisp/info.el (Info-virtual-files, Info-virtual-nodes): Doc fix.
98598	(Bug#28237)
98599
986002017-08-26  Eli Zaretskii  <eliz@gnu.org>
98601
98602	* lisp/delsel.el (delete-selection-mode): Doc fix.  (Bug#25428)
98603
986042017-08-26  Grégory Mounié  <Gregory.Mounie@imag.fr>  (tiny change)
98605
98606	Support multi-lingual detection of SEE ALSO man sections
98607
98608	* lisp/man.el (Man-see-also-regexp): Add support for SEE ALSO
98609	section detection in several langages: French, German, Spanish,
98610	Portuguese, Italian, Polish, Turkish, Japanese, Chinese.  (Bug#28142)
98611
986122017-08-26  Paul Eggert  <eggert@cs.ucla.edu>
98613
98614	Improve expand-file-name doc
98615
98616	* doc/lispref/files.texi (Relative File Names, Directory Names)
98617	(File Name Expansion):
98618	* doc/lispref/minibuf.texi (Reading File Names):
98619	Document expand-file-name behavior with ~ more clearly
98620	and accurately.
98621	* doc/misc/org.texi (Batch execution): Simplify example
98622	script so that it does not need expand-file-name and thus
98623	will not mishandle file names with leading ~.
98624
986252017-08-26  Jefferson Carpenter  <jeffersoncarpenter2@gmail.com>  (tiny change)
98626
98627	Support all perl variable declarators and prefixes (Bug#27613)
98628
98629	* lisp/progmodes/perl-mode.el (perl-imenu-generic-expression)
98630	(perl-font-lock-keywords-2): Match declators 'anon', 'argument', 'has',
98631	'local', 'state', 'supersede', 'let', and 'temp'.
98632
986332017-08-25  Paul Eggert  <eggert@cs.ucla.edu>
98634
98635	Fix file-attributes race on GNU hosts
98636
98637	* doc/lispref/files.texi (File Attributes):
98638	Document file-attributes atomicity.
98639	* etc/NEWS: Document the fix.
98640	* src/dired.c (file_attributes): New args DIRNAME and FILENAME,
98641	for diagnostics.  All callers changed.  On platforms like
98642	GNU/Linux that support O_PATH, fix a race condition in
98643	file-attributes and similar functions, so that these functions do
98644	not return nonsense if a directory entry is replaced while getting
98645	its attributes.  On non-GNU platforms, do a better (though not
98646	perfect) job of detecting the race, and return nil if detected.
98647
986482017-08-25  Paul Eggert  <eggert@cs.ucla.edu>
98649
98650	Simplify expand_and_dir_to_file
98651
98652	* src/fileio.c (expand_and_dir_to_file): Simplify by omitting 2nd
98653	argument, since in practice it always has the default value.  All
98654	callers changed.  Prefer C99 style decls in nearby code.
98655
986562017-08-25  Eli Zaretskii  <eliz@gnu.org>
98657
98658	Fix file-name completion on network shares
98659
98660	* src/w32.c (faccessat): Don't assume that F_OK is non-zero.
98661	(Bug#28207)
98662
986632017-08-25  Reuben Thomas  <rrt@sc3d.org>
98664
98665	Fix a FIXME with an exegetical comment
98666
98667	* lisp/progmodes/sh-script.el (sh-builtins): Explain why we have a
98668	regexp for wksh builtins.
98669
986702017-08-25  Reuben Thomas  <rrt@sc3d.org>
98671
98672	Minor docstring language fix
98673
98674	* lisp/progmodes/sh-script.el (sh-show-indent): Remove spurious “the”.
98675
986762017-08-25  Reuben Thomas  <rrt@sc3d.org>
98677
98678	Remove old commented code from sh-script.el
98679
98680	* lisp/progmodes/sh-script.el (sh-abbrevs): Remove commented function
98681	and variable, commented since 2001.
98682
986832017-08-25  Stefan Monnier  <monnier@iro.umontreal.ca>
98684
98685	* lisp/emacs-lisp/package.el: Don't let failure stop us
98686
98687	(package-activate-1): Don't throw an error for missing deps.
98688	(package-unpack): Don't bother compiling if activation failed.
98689	(package-initialize): Report failures but keep activating other packages.
98690
986912017-08-25  Paul Eggert  <eggert@cs.ucla.edu>
98692
98693	Prefer ‘double’ for FP temps in xterm.c
98694
98695	* src/xterm.c (xm_scroll_callback, xaw_jump_callback)
98696	(x_set_toolkit_scroll_bar_thumb)
98697	(x_set_toolkit_horizontal_scroll_bar_thumb): Prefer ‘double’ to
98698	‘float’ for individual local floating-point temporaries.
98699
987002017-08-24  Reuben Thomas  <rrt@sc3d.org>
98701
98702	Avoid using string-to-multibyte in ispell.el
98703
98704	* lisp/textmodes/ispell.el (ispell-get-decoded-string): Use
98705	decode-coding-string instead. Note that decode-coding-string returns a
98706	string that satisfies multibyte-string-p even if its input is pure
98707	ASCII and the third argument is t, so the result of
98708	ispell-get-decoded-string is always a multibyte string.
98709
987102017-08-24  Tino Calancha  <tino.calancha@gmail.com>
98711
98712	Store the regexp just when there are matches
98713
98714	* lisp/hi-lock.el (hi-lock-set-pattern): When font-lock-mode is
98715	disabled and there are no matches do not store REGEXP
98716	in hi-lock-interactive-patterns.
98717
987182017-08-24  Tino Calancha  <tino.calancha@gmail.com>
98719
98720	Keep face available if there are no matches
98721
98722	If font-lock-mode is disabled in the current buffer, and
98723	there are no matches for REGEXP, then keep FACE available
98724	for a next search.
98725	* lisp/hi-lock.el (hi-lock-set-pattern): Add FACE into
98726	hi-lock--unused-faces if font-lock-mode is disabled and
98727	there are no matches.
98728	* test/lisp/hi-lock-tests.el (hi-lock-test-set-pattern): Add test.
98729
987302017-08-24  Michael Albinus  <michael.albinus@gmx.de>
98731
98732	Minor improvements for tramp-interrupt-process, documentation
98733
98734	* doc/lispref/processes.texi (Signals to Processes):
98735	* etc/NEWS: Document interrupt-process-functions.
98736
98737	* lisp/net/tramp.el (tramp-interrupt-process): Test also for
98738	`process-live-p'.
98739
98740	* src/process.c (Vinterrupt_process_functions): Fix docstring.
98741
98742	* test/lisp/net/tramp-tests.el (tramp-test28-interrupt-process):
98743	Extend test.
98744
987452017-08-24  Reuben Thomas  <rrt@sc3d.org>
98746
98747	Fix a comment whitespace typo.
98748
98749	src/fileio.c: A double space was added after "..", used in a code
98750	example. Make it a single space.
98751
987522017-08-24  Reuben Thomas  <rrt@sc3d.org>
98753
98754	Remove old commented code and obsolete comments
98755
98756	* lisp/files.el (locate-dominating-files): Remove old commented
98757	implementation from 9 years ago.  Since the current version
98758	appears (at least to me) not just more efficient but clearer than the
98759	version removed, also delete a comment in the new version referring to
98760	the old version. Remove old commented heuristic code,
98761	and explanatory comments.
98762
987632017-08-24  Reuben Thomas  <rrt@sc3d.org>
98764
98765	Remove old duplicate commented code
98766
98767	* lisp/files.el (file-relative-name): Remove old commented version,
98768	replaced 14 years ago in commit 753ad9889.
98769
987702017-08-24  Tom Tromey  <tom@tromey.com>
98771
98772	Add conf-toml-mode
98773
98774	* etc/NEWS: Mention conf-toml-mode.
98775	* lisp/files.el (auto-mode-alist): Add entry for .toml.
98776	* lisp/textmodes/conf-mode.el (conf-toml-mode-syntax-table)
98777	(conf-toml-font-lock-keywords): New defvars.
98778	(conf-toml-mode): New mode.
98779
987802017-08-23  Alan Third  <alan@idiocy.org>
98781
98782	Use lisp type in log message (bug#28176)
98783
98784	* src/nsimage.m (ns_load_image): Use make_number on index.
98785
987862017-08-23  Alan Third  <alan@idiocy.org>
98787
98788	Fix PNGs on macOS (bug#28176)
98789
98790	* src/nsimage.m (ns_load_image): Remove index check.
98791	(EmacsImage::getAnimatedBitmapImageRep): New function.
98792	(EmacsImage::getMetadata): Use getAnimatedBitmapImageRep.
98793	(EmacsImage::setFrame): Use getAnimatedBitmapImageRep and check index
98794	is valid.
98795
987962017-08-23  Alan Third  <alan@idiocy.org>
98797
98798	Add ability to change macOS WM theme (bug#27973)
98799
98800	* src/frame.c (make_frame, frame_parms, syms_of_frame)
98801	[NS_IMPL_COCOA]: Add ns-appearance and ns-transparent-titlebar
98802	options.
98803	* src/frame.h (ns_appearance_type) [NS_IMPL_COCOA]: Add enum to
98804	represent NSAppearance options.
98805	(struct frame) [NS_IMPL_COCOA]: Add ns_appearance and
98806	ns_transparent_titlebar frame parameters.
98807	* src/nsfns.m (ns_frame_parm_handlers) [NS_IMPL_COCOA]: Add
98808	ns_set_appearance and ns_set_transparent_titlebar handlers.
98809	(Sx_create_frame): Handle ns-appearance and ns-transparent-titlebar
98810	frame parameters.
98811	(Qdark): Add new symbol for use with ns-appearance.
98812	* src/nsterm.h (ns_set_appearance, ns_set_transparent_titlebar)
98813	[NS_IMPL_COCOA]: Add prototypes.
98814	* src/nsterm.m (ns_set_appearance, ns_set_transparent_titlebar)
98815	[NS_IMPL_COCOA]: New functions.
98816	(initFrameFromEmacs) [NS_IMPL_COCOA]: Handle ns-appearance and
98817	ns-transparent-titlebar frame parameters.
98818	* doc/lispref/frames.texi (Window Management Parameters): Document
98819	ns-apperance and ns-transparent-titlebar.
98820
988212017-08-22  Alan Mackenzie  <acm@muc.de>
98822
98823	When looking for the end of a declarator, prevent macros fouling up the search
98824
98825	The practical implication of this bug was a random jit-lock chunk remaining
98826	entirely unfontified.
98827
98828	* lisp/progmodes/cc-mode.el (c-fl-decl-end): If point starts inside a macro,
98829	restrict two forward searches to the end of that macro.
98830
988312017-08-22  Michael Albinus  <michael.albinus@gmx.de>
98832
98833	Test `file-expand-wildcards' for Tramp
98834
98835	* lisp/net/tramp-compat.el (tramp-advice-file-expand-wildcards):
98836	Remove, not needed anymore.
98837
98838	* test/lisp/net/tramp-tests.el (top): Require seq.el.
98839	(tramp-test16-directory-files): Simplify.
98840	(tramp-test16-file-expand-wildcards): New test.
98841	(tramp-test28-interrupt-process): Skip for older Emacsen.
98842
988432017-08-22  Alexander Gramiak  <agrambot@gmail.com>
98844
98845	Add tests for cl-macs.el (Bug#27559)
98846
98847	* test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-test-loop): Remove
98848	duplicate.
98849	(cl-loop-destructuring-with): Move to cl-macs-tests.el.
98850	* test/lisp/emacs-lisp/cl-macs-tests.el: New file.
98851
988522017-08-22  Noam Postavsky  <npostavs@gmail.com>
98853
98854	Optimize skkdic conversion (Bug#28043)
98855
98856	The primary speedup comes from the optimizing lookup-nested-alist and
98857	set-nested-alist for the case where the key is a string.  This brings
98858	the time down to less than half the original.
98859
98860	* lisp/international/mule-util.el (lookup-nested-alist)
98861	(set-nested-alist): Use `assq' instead of `assoc' when KEYSEQ is a
98862	string.
98863
98864	* lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
98865	(skkdic-convert-okuri-nasi): Use progress-reporter functions instead
98866	of calculating ratio of work done inline.
98867
98868	(skkdic-reduced-candidates): Call `char-category-set' on the first
98869	character of the string directly, instead of using a regexp for the
98870	character category.
98871	(skkdic--japanese-category-set): New constant.
98872	(skkdic-collect-okuri-nasi): Just set
98873	`skkdic-okuri-nasi-entries-count' at once at the end rather than
98874	updating it throughout the loop.
98875
98876	(skkdic-convert-postfix skkdic-convert-prefix)
98877	skkdic-get-candidate-list, skkdic-collect-okuri-nasi)
98878	(skkdic-extract-conversion-data): Use `match-string-no-properties'
98879	instead of `match-string'.
98880
988812017-08-22  Reuben Thomas  <rrt@sc3d.org>
98882
98883	Treat tests in lib-src like tests in src
98884
98885	* test/Makefile.in (test_template): Depend on a .c source file for a
98886	test under lib-src, as for src.  (Thanks, Glenn Morris for pointing me
98887	in the right direction.)
98888
988892017-08-22  Paul Eggert  <eggert@cs.ucla.edu>
98890
98891	Port /bin/sh scripts to Solaris 10
98892
98893	Its /bin/sh builtin ‘test’ command does not support -e.
98894	* autogen.sh, build-aux/git-hooks/pre-commit:
98895	* build-aux/gitlog-to-emacslog, make-dist:
98896	Use test -r, not test -e.
98897
988982017-08-21  Eli Zaretskii  <eliz@gnu.org>
98899
98900	Avoid losing the buffer restriction in flyspell-mode
98901
98902	* src/intervals.c (get_local_map): Don't allow C-g to quit as long
98903	as we have the buffer widened, to make sure the restriction is
98904	preserved.  (Bug#28161)
98905
989062017-08-21  Sven Joachim  <svenjoac@gmx.de>
98907
98908	Fix the 'versionclean' target in src/Makefile
98909
98910	* src/Makefile.in (versionclean): Don't accidentally remove
98911	emacs-module.h.  (Bug#28169)
98912
989132017-08-21  Michael Albinus  <michael.albinus@gmx.de>
98914
98915	Implement `interrupt-process-functions'
98916
98917	* lisp/net/tramp.el (tramp-interrupt-process): Rename from
98918	`tramp-advice-interrupt-process'.  Adapt according to changed API.
98919	(top): Add it to `interrupt-process-functions'.
98920
98921	* src/process.c (Finternal_default_interrupt_process): New defun.
98922	(Finterrupt_process): Change implementation, based on
98923	Vinterrupt_process_functions.
98924	(Vinterrupt_process_functions): New defvar.
98925
98926	* test/lisp/net/tramp-tests.el (tramp-test40-unload): Do not
98927	test removal of advice.
98928
989292017-08-21  Eli Zaretskii  <eliz@gnu.org>
98930
98931	Avoid floating-point exceptions while drawing underwave
98932
98933	* src/w32term.c (x_get_scale_factor):
98934	* src/xterm.c (x_get_scale_factor): Don't let the scale factors
98935	become less than 1.  Reported by Yuri D'Elia <wavexx@thregr.org> in
98936	https://lists.gnu.org/r/emacs-devel/2017-08/msg00459.html.
98937
989382017-08-21  Sam Steingold  <sds@gnu.org>
98939
98940	mark flymake-mode as safe local variable when the value is nil
98941
989422017-08-21  Sam Steingold  <sds@gnu.org>
98943
98944	allow nil init in flymake-allowed-file-name-masks to disable flymake
98945
98946	(flymake-allowed-file-name-masks): Update doc and :type.
98947	(flymake-get-file-name-mode-and-masks): Handle nil init.
98948
989492017-08-20  Dmitry Gutov  <dgutov@yandex.ru>
98950
98951	Remove the workaround for bug#20719
98952
98953	* lisp/cedet/semantic/symref/grep.el
98954	(semantic-symref-grep-use-template): Remove the workaround for
98955	bug#20719, it's been fixed for a while now.
98956
989572017-08-20  Dmitry Gutov  <dgutov@yandex.ru>
98958
98959	Fix byte-compilation warnings in semantic/symref/grep
98960
98961	* lisp/cedet/semantic/symref/grep.el (greppattern): Remove.
98962	(grepflags): Rename to semantic-symref-grep-flags.
98963	(semantic-symref-grep-expand-keywords): Update accordingly.
98964	(semantic-symref-grep-use-template): Remove the last two
98965	arguments to make sure they don't shadow the (not renamed)
98966	global variables.
98967	(semantic-symref-perform-search)
98968	(semantic-symref-parse-tool-output-one-line): Use slot names
98969	instead of keywords, like the byte-compiler wants us to.
98970
989712017-08-20  Dmitry Gutov  <dgutov@yandex.ru>
98972
98973	Simplify eldoc-message
98974
98975	* lisp/emacs-lisp/eldoc.el (eldoc-message): Simplify.
98976	Don't use ARGS because no callers pass them.  Discussed in bug#27230.
98977
989782017-08-20  Noam Postavsky  <npostavs@gmail.com>
98979
98980	Work around w32-python-2.x bug to fix prompt detection (Bug#21376)
98981
98982	* lisp/progmodes/python.el (python-shell-prompt-detect): Don't put
98983	carriage returns into the temporary file when running in unbuffered
98984	mode, the w32 build of python 2.7 chokes on them.
98985
989862017-08-20  Reuben Thomas  <rrt@sc3d.org>
98987
98988	Add missing require
98989
98990	* lisp/textmodes/ispell.el: Require subr-x. (Thanks, Eli Zaretskii.)
98991
989922017-08-20  Michael Albinus  <michael.albinus@gmx.de>
98993
98994	Implement `interrupt-process' for remote processes (Bug#28066)
98995
98996	* lisp/net/tramp-sh.el (tramp-sh-handle-start-file-process):
98997	Support sending signals remotely.
98998	(tramp-open-connection-setup-interactive-shell):
98999	Trace "remote-tty" connection property.
99000
99001	* lisp/net/tramp.el (tramp-advice-interrupt-process): New defun.
99002	(top): Add advice to `interrupt-process'.  (Bug#28066)
99003
99004	* test/lisp/net/tramp-tests.el (tramp-test28-interrupt-process):
99005	New test.
99006	(tramp-test29-shell-command)
99007	(tramp-test30-environment-variables)
99008	(tramp-test30-environment-variables-and-port-numbers)
99009	(tramp-test31-explicit-shell-file-name)
99010	(tramp-test32-vc-registered)
99011	(tramp-test33-make-auto-save-file-name)
99012	(tramp-test34-make-nearby-temp-file)
99013	(tramp-test35-special-characters)
99014	(tramp-test35-special-characters-with-stat)
99015	(tramp-test35-special-characters-with-perl)
99016	(tramp-test35-special-characters-with-ls, tramp-test36-utf8)
99017	(tramp-test36-utf8-with-stat, tramp-test36-utf8-with-perl)
99018	(tramp-test36-utf8-with-ls)
99019	(tramp-test37-asynchronous-requests)
99020	(tramp-test38-recursive-load, tramp-test39-remote-load-path)
99021	(tramp-test40-unload): Rename.
99022	(tramp-test40-unload): Test also removal of advice.
99023
990242017-08-20  Reuben Thomas  <rrt@sc3d.org>
99025
99026	Document Enchant support
99027
99028	* doc/emacs/fixit.texi: Mention Enchant.
99029	* doc/misc/efaq.texi: Likewise.
99030	* etc/NEWS: Add an item on Enchant support.
99031
990322017-08-20  Reuben Thomas  <rrt@sc3d.org>
99033
99034	Remove old comments and a redundant FIXME
99035
99036	* lisp/textmodes/ispell.el (ispell-process-line): Remove some old
99037	commented code, a redundant FIXME, and outdated usage instructions.
99038
990392017-08-20  Reuben Thomas  <rrt@sc3d.org>
99040
99041	Add Enchant support to ispell.el (Bug#17742)
99042
99043	* lisp/textmodes/ispell.el (ispell-program-name): Add “enchant”.
99044	(ispell-really-enchant): Add variable.
99045	(ispell-check-version): If using Enchant, check it’s new enough (at
99046	least 1.6.1).  (Like the ispell check, this is absolute: cannot work
99047	without.)
99048	(ispell-enchant-dictionary-alist): Add variable.
99049	(ispell-find-enchant-dictionaries): Add function, based on
99050	ispell-find-aspell-dictionaries.
99051	(ispell-set-spellchecker-params): Allow dictionary auto-detection for
99052	Enchant, and call ispell-find-enchant-dictionaries to find them.  Use
99053	old ispell name to locale mapping code for Enchant too.
99054	(ispell-send-replacement): Make it work with Enchant.
99055
990562017-08-20  Noam Postavsky  <npostavs@gmail.com>
99057
99058	* lisp/term.el (term-mode): Use `window-text-height' (Bug#5615).
99059
990602017-08-20  Noam Postavsky  <npostavs@gmail.com>
99061
99062	Stop printing '4' in .elc files after 'define-symbol-prop' calls
99063
99064	* lisp/emacs-lisp/bytecomp.el (byte-compile-define-symbol-prop):
99065	Return nil in case we have compiled the form, to prevent a redundant
99066	constant from getting added to the compiled output.
99067
990682017-08-20  Paul Eggert  <eggert@cs.ucla.edu>
99069
99070	Change recent symlink tests to just test ASCII
99071
99072	* test/src/fileio-tests.el (fileio-tests--symlink-failure):
99073	Be less ambitious about testing non-ASCII chars and encoding
99074	errors, as there are too many portability issues.
99075
990762017-08-20  Paul Eggert  <eggert@cs.ucla.edu>
99077
99078	Don’t adjust CRLF in file names
99079
99080	* doc/misc/gnus.texi (Non-ASCII Group Names):
99081	* etc/NEWS:
99082	* test/lisp/net/tramp-tests.el (tramp--test-utf8):
99083	Use utf-8-unix, not utf-8, for default-file-name-coding-system, so
99084	that CRLF in file names is left alone.
99085	* lisp/international/mule-cmds.el (set-default-coding-systems):
99086	Do not alter CRLF in file name coding systems.
99087	(prefer-coding-system): Ignore differences in CRLF processing when
99088	checking whether we used the user-specified file name coding system.
99089	* test/src/fileio-tests.el: New file.
99090
990912017-08-19  Eli Zaretskii  <eliz@gnu.org>
99092
99093	Make list-processes support display-line-numbers
99094
99095	* lisp/simple.el (process-menu-mode): Move the call to
99096	tabulated-list-init-header from here...
99097	(list-processes--refresh): ...to here.  (Bug#27895)
99098
990992017-08-19  Eli Zaretskii  <eliz@gnu.org>
99100
99101	Improve support of display-line-numbers in package.el
99102
99103	* lisp/emacs-lisp/package.el (package-menu--refresh): Redisplay
99104	the header.  (Bug#27895)
99105	* lisp/emacs-lisp/tabulated-list.el
99106	(tabulated-list-line-number-width): Fix the case when
99107	display-line-numbers is nil.
99108
991092017-08-19  Eli Zaretskii  <eliz@gnu.org>
99110
99111	Improve support of display-line-numbers in tabulated-list-mode
99112
99113	* lisp/emacs-lisp/tabulated-list.el
99114	(tabulated-list-line-number-width): New function.
99115	(tabulated-list-init-header, tabulated-list-print-entry): Use it.
99116	(Bug#27895)
99117
991182017-08-19  Martin Rudalics  <rudalics@gmx.at>
99119
99120	Fix one more issue reported by Alex (Bug#27999)
99121
99122	* doc/lispref/windows.texi (Preserving Window Sizes)
99123	(Window Parameters): Use the term `window-preserved-size'
99124	instead of `preserved-size' (Bug#27999).
99125
991262017-08-19  Martin Rudalics  <rudalics@gmx.at>
99127
99128	Rename `no-delete-other-window' to `no-delete-other-windows'
99129
991302017-08-19  Martin Rudalics  <rudalics@gmx.at>
99131
99132	Fix two side window problems noted by Alex (Bug#27999)
99133
99134	* lisp/window.el (display-buffer-in-side-window): Fix doc-string
99135	typo.
99136	(delete-other-windows): Rename the `no-delete-other-window'
99137	parameter to `no-delete-other-windows' (see the discussion in
99138	Bug#27999 for the rationale of this change).
99139	* doc/lispref/windows.texi (Deleting Windows)
99140	(Frame Layouts with Side Windows, Window Parameters): Rename
99141	`no-delete-other-window' to `no-delete-other-windows'.
99142
991432017-08-19  Alex Schroeder  <alex@gnu.org>
99144
99145	Use define-minor-mode for rcirc-omit-mode
99146
991472017-08-19  Paul Eggert  <eggert@cs.ucla.edu>
99148
99149	Clarify behavior of symlinks and directories
99150
99151	* doc/lispref/files.texi (Saving Buffers): Document how functions
99152	like rename-file work with symlinks and directories.  This patch
99153	attempts to document the current behavior better, in preparation
99154	for possibly changing it.  See Bug#27986.
99155
991562017-08-19  Paul Eggert  <eggert@cs.ucla.edu>
99157
99158	Fix recently-introduced file descriptor leak
99159
99160	* src/fileio.c (Fmake_temp_file_internal):
99161	Don’t leak a file descriptor if write_region signals an error.
99162
991632017-08-19  Paul Eggert  <eggert@cs.ucla.edu>
99164
99165	Improve make-temp-file performance on local files
99166
99167	* lisp/files.el (make-temp-file): Let make-temp-file-internal do
99168	the work of inserting the text.
99169	* src/fileio.c (Fmake_temp_file_internal): New arg TEXT.
99170	All callers changed.
99171
991722017-08-19  Noam Postavsky  <npostavs@gmail.com>
99173
99174	Don't lose arguments to eshell aliases (Bug#27954)
99175
99176	* lisp/eshell/em-alias.el (eshell-maybe-replace-by-alias): Use ARGS.
99177
991782017-08-19  Ted Zlatanov  <tzz@lifelogs.com>
99179
99180	* lisp/files.el (make-temp-file): Fix directory use case.
99181
991822017-08-19  Ted Zlatanov  <tzz@lifelogs.com>
99183
99184	Fix and document make-temp-file optional text parameter
99185
99186	* lisp/files.el (make-temp-file): Fix initial TEXT parameter.
99187	(files--make-magic-temp-file): Support optional TEXT parameter.
99188	* etc/NEWS: Document it.
99189	* doc/lispref/files.texi: Document it.
99190	* test/lisp/auth-source-tests.el: Minor reformat.
99191
991922017-08-19  Ted Zlatanov  <tzz@lifelogs.com>
99193
99194	* test/lisp/auth-source-tests.el: Avoid `string-join' to be simple.
99195
99196	* test/lisp/auth-source-tests.el: Minor cleanups to use CL.
99197
991982017-08-19  João Távora  <joaotavora@gmail.com>
99199
99200	Fix default value of electric-pair-pairs and electric-pair-text-pairs
99201
99202	(Bug#24901)
99203
99204	A previous change, titled "Add support for curly quotation marks to
99205	electric-pair-mode", attempted to add these characters to the default
99206	value of these variables.  But it did so in a quoted list, preventing
99207	evaluation of the relevant expressions and resulting in an invalid
99208	format.
99209
99210	* lisp/elec-pair.el (electric-pair-pairs, electric-pair-text-pairs):
99211	Use backquote and comma.
99212
992132017-08-19  Noam Postavsky  <npostavs@gmail.com>
99214
99215	* lisp/elec-pair.el (electric-pair-text-pairs): Don't autoload (Bug#24901).
99216
99217	* lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Require `elec-pair'
99218	explicitly in the interactive case.
99219
992202017-08-19  Mats Lidell  <mats.lidell@cag.se>
99221
99222	* etc/tutorials/TUTORIAL.sv: synced with TUTORIAL
99223
992242017-08-19  Ted Zlatanov  <tzz@lifelogs.com>
99225
99226	Add auth-source tests and codify its API better
99227
99228	The auth-source behavior was unclear in some API use cases, so these
99229	extra tests codify and test it. For details see
99230	https://github.com/DamienCassou/auth-password-store/issues/29
99231
99232	* lisp/files.el (make-temp-file): Add new initial TEXT parameter.
99233	* test/lisp/auth-source-tests.el (auth-source-test-searches): Add
99234	  auth-source tests and simplify them with the new `make-temp-file'.
99235
992362017-08-18  Eli Zaretskii  <eliz@gnu.org>
99237
99238	Don't call the same hook twice due to obsolete aliases
99239
99240	* lisp/international/robin.el (robin-activate):
99241	* lisp/international/quail.el (quail-activate):
99242	* lisp/international/mule-cmds.el (deactivate-input-method):
99243	* lisp/emulation/viper-init.el (viper-deactivate-input-method):
99244	Don't call the same hook twice, when the obsolete and the
99245	advertised symbols are aliased.  (Bug#28118)
99246
992472017-08-18  Felipe Ochoa  <felipe@fov.space>  (tiny change)
99248
99249	A new face for show-paren in expression mode
99250
99251	* lisp/faces.el (show-paren-match-expression): Define the new face.
99252	* lisp/paren.el (show-paren-function): Apply the different face
99253	when in expression mode.  (Bug#28047)
99254
992552017-08-18  Eli Zaretskii  <eliz@gnu.org>
99256
99257	Non-ASCII support for man page section and header names
99258
99259	* lisp/man.el (Man-name-regexp, Man-page-header-regexp)
99260	(Man-heading-regexp): Replace ASCII character classes by
99261	equivalent classes that allow non-ASCII characters.  Suggested by
99262	Grégory Mounié <Gregory.Mounie@imag.fr>.  (Bug#27978)
99263
992642017-08-18  Eli Zaretskii  <eliz@gnu.org>
99265
99266	Implement HiDPI support for underwave on MS-Windows
99267
99268	* src/w32term.c (x_get_scale_factor): New function.
99269	(w32_draw_underwave): Use it.
99270	* src/xterm.c (x_draw_underwave): Offset the wave starting point
99271	to make it identical with original code.
99272
992732017-08-18  Stephen Pegoraro  <spegoraro@tutive.com>  (tiny change)
99274
99275	Support HiDPI displays for wave style underlines
99276
99277	* src/xterm.c (x_draw_underwave): Compute height, length and thickness
99278	based on scale factor.
99279	(x_get_scale_factor): New function.
99280
992812017-08-18  Bastien  <bzg@gnu.org>
99282
99283	Delete library-of-babel.org
99284
99285	* etc/org/library-of-babel.org: Delete file.
99286
992872017-08-18  Glenn Morris  <rgm@gnu.org>
99288
99289	* doc/emacs/files.texi (Copying and Naming): Avoid confusing texi2pdf.
99290
992912017-08-18  Noam Postavsky  <npostavs@gmail.com>
99292
99293	Remove custom version parsing from epg-config.el (Bug#27963)
99294
99295	* lisp/epg-config.el (epg-config--compare-version)
99296	(epg-config--parse-version): Remove.
99297	(epg-check-configuration): Use `version<=' instead.
99298
992992017-08-18  Mark Oteiza  <mvoteiza@udel.edu>
99300
99301	Treat control characters in JSON strings as invalid
99302
99303	* lisp/json.el (json-peek): Reduce to following-char.
99304	(json-pop, json-read): Zero (null char) means end of file.
99305	(json-read-escaped-char): Delimit URL properly.
99306	(json-read-string): Signal error for ASCII control characters.
99307	* test/lisp/json-tests.el (test-json-peek): Check for zero instead of
99308	:json-eof symbol.
99309	(test-json-read-string): New test for control characters in JSON
99310	strings.
99311
993122017-08-17  Eli Zaretskii  <eliz@gnu.org>
99313
99314	Support Posix semantics of 'rename' on MS-Windows
99315
99316	* src/w32.c (sys_rename_replace): Support Posix semantics of
99317	'rename': return an error if OLD is a directory while NEW is not,
99318	or vice versa.
99319
993202017-08-17  Eli Zaretskii  <eliz@gnu.org>
99321
99322	* src/w32.c (sys_rename_replace): Support renaming a directory.
99323
993242017-08-17  Eli Zaretskii  <eliz@gnu.org>
99325
99326	Fix the MS-Windows build
99327
99328	* nt/gnulib-cfg.mk (OMIT_GNULIB_MODULE_open): Omit Gnulib module
99329	'open'.
99330
99331	* lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Restore definition.
99332
993332017-08-17  João Távora  <joaotavora@gmail.com>
99334
99335	Add flymake-backends defcustom
99336
99337	* lisp/progmodes/flymake-proc.el (flymake-proc-can-syntax-check-buffer):
99338	Rename from flymake-can-syntax-check-file.  Suitable for adding to
99339	flymake-backends.
99340	(flymake-proc-start-syntax-check): Rename from
99341	flymake-start-syntax-check.  Don't check again if buffer can be
99342	checked.
99343	(add-to-list flymake-backends): Hook only flymake-ui.el
99344
99345	* lisp/progmodes/flymake-ui.el (flymake-backends): New
99346	defcustom.
99347	(flymake-on-timer-event, flymake-after-change-function)
99348	(flymake-after-save-hook, flymake-find-file-hook): Call new
99349	flymake--start-syntax-check-buffer and
99350	flymake--can-syntax-check-buffer.
99351	(flymake-mode): Call flymake--can-syntax-check-buffer and set
99352	flymake-backend.
99353	(flymake--backend): New buffer-local variable.
99354
993552017-08-17  João Távora  <joaotavora@gmail.com>
99356
99357	Split flymake.el into flymake-proc.el and flymake-ui.el
99358
99359	flymake.el is now a stub that requires both files.
99360
99361	* lisp/progmodes/flymake-proc.el: New file.
99362
99363	* lisp/progmodes/flymake-ui.el: New file.
99364
99365	* lisp/progmodes/flymake.el: Split into flymake-ui.el and
99366	  flymake-proc.el.  Require both files.
99367
993682017-08-17  Michael Albinus  <michael.albinus@gmx.de>
99369
99370	Set `default-directory' for watchdog in tramp-test.el
99371
99372	* test/lisp/net/tramp-tests.el (tramp-test36-asynchronous-requests):
99373	Set `default-directory' for watchdog.
99374
993752017-08-17  Andreas Schwab  <schwab@suse.de>
99376
99377	* lisp/term/konsole.el: New file.
99378
993792017-08-17  Noam Postavsky  <npostavs@gmail.com>
99380
99381	* lisp/woman.el (woman-push, woman-pop): Remove.  (Bug#27962)
99382
99383	(woman2-RS): Use plain `push' instead of `woman-push'.
99384	(woman2-RE): Conditionally `pop' instead of `woman-pop'.
99385
993862017-08-16  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
99387
99388	Merge from Gnulib; use ‘open’ for O_CLOEXEC
99389
99390	This incorporates:
99391	2017-08-15 renameat: ensure declaration in <stdio.h> on NetBSD
99392	2017-08-15 extensions: enable NetBSD specific extensions
99393	2017-08-14 open: support O_CLOEXEC
99394	2017-08-13 reallocarray: new module
99395	* admin/merge-gnulib (AVOIDED_MODULES): Remove ‘open’, since
99396	it now supports O_CLOEXEC and this simplifies Emacs.
99397	* build-aux/config.guess, lib/fcntl.in.h, lib/stdio.in.h:
99398	* lib/stdlib.in.h, m4/extensions.m4, m4/stdlib_h.m4:
99399	Copy from Gnulib.
99400	* lib/cloexec.c, lib/cloexec.h, lib/open.c:
99401	* m4/mode_t.m4, m4/open-cloexec.m4, m4/open.m4:
99402	New files, copied from Gnulib.
99403	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
99404	* lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]:
99405	Remove, as Gnulib does this for us.
99406	* src/filelock.c (create_lock_file):
99407	* src/sysdep.c (emacs_open, emacs_pipe):
99408	Don’t worry about O_CLOEXEC == 0, as Gnulib no longer sets it to 0.
99409
994102017-08-16  Alan Third  <alan@idiocy.org>
99411	    Charles A. Roelli  <charles@aurox.ch>
99412
99413	Allow use of run-time OS version checks on macOS (bug#27810)
99414
99415	* src/nsterm.h (NSWindowTabbingMode): Define in pre-Sierra macOS.
99416	(MAC_OS_X_VERSION_10_6, MAC_OS_X_VERSION_10_7, MAC_OS_X_VERSION_10_8,
99417	MAC_OS_X_VERSION_10_9, MAC_OS_X_VERSION_10_12, HAVE_NATIVE_FS): Remove
99418	defines.
99419	(NSWindowStyleMaskFullScreen,
99420	NSWindowCollectionBehaviorFullScreenPrimary,
99421	NSApplicationPresentationFullScreen,
99422	NSApplicationPresentationAutoHideToolbar): Define in macOS 10.6.
99423	* src/nsterm.m (colorForEmacsRed, colorUsingDefaultColorSpace,
99424	check_native_fs, ns_read_socket, ns_select, runAlertPanel,
99425	initFrameFromEmacs, windowDidMiniaturize, windowDidEnterFullScreen,
99426	windowDidExitFullScreen, isFullscreen, updateCollectionBehavior,
99427	toggleFullScreen, constrainFrameRect, scrollerWidth, syms_of_nsterm):
99428	Allow use of run-time checks and replace version check macros.
99429	* src/nsfns.m (ns_screen_name): Use run-time OS version checks.
99430	* src/macfont.m (macfont_draw): Use run-time OS version checks.
99431	* src/nsmenu.m (menuWillOpen): Use run-time OS version checks.
99432
994332017-08-16  Alan Third  <alan@idiocy.org>
99434
99435	Add multiframe image support to NS port (bug#21714)
99436
99437	* src/nsimage.m (ns_load_image): Handle multiple frames.
99438	(EmacsImage::getMetadata, EmacsImage::setFrame): New functions.
99439	* src/nsterm.h (EmacsImage::getMetadata, EmacsImage::setFrame): New
99440	function prototypes.
99441
994422017-08-16  Tino Calancha  <tino.calancha@gmail.com>
99443
99444	files-tests.el: Remove unused lexical variable
99445
99446	* test/lisp/files-tests.el (file-test--do-local-variables-test);
99447	Remove unused var 'files-test-queried'.
99448
994492017-08-16  Michael Albinus  <michael.albinus@gmx.de>
99450
99451	* doc/emacs/files.texi (Copying and Naming): Mention
99452
99453	restrictions to add-name-to-file and make-symbolic-link on
99454	remote systems.
99455
994562017-08-16  Michael Albinus  <michael.albinus@gmx.de>
99457
99458	* lisp/net/ange-ftp.el (ange-ftp-skip-msgs): Further support ftp-ssl.
99459
994602017-08-16  Noam Postavsky  <npostavs@gmail.com>
99461
99462	Add tests for previous commit
99463
99464	* test/lisp/progmodes/elisp-mode-tests.el
99465	(elisp-mode-tests--face-propertized-string): New function.
99466	(elisp--highlight-function-argument-indexed)
99467	(elisp--highlight-function-argument-keyed-1)
99468	(elisp--highlight-function-argument-keyed-2): New tests.
99469
994702017-08-16  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
99471
99472	Fix eldoc highlighting for &key args (Bug#27272)
99473
99474	* lisp/progmodes/elisp-mode.el (elisp--highlight-function-argument):
99475	Only switch to keyword-based searching if INDEX point beyond `&key' in
99476	the argument list.  All arguments prior to the `&key' are position
99477	based.  Additionally, be more strict about what is a keyword when
99478	searching for the current keyword.
99479
994802017-08-15  Paul Eggert  <eggert@cs.ucla.edu>
99481
99482	Do not assume regular Git .git/hooks dir
99483
99484	Apparently Gitlab doesn’t create .git/hooks, like regular Git does.
99485	Problem reported by Ted Zlatanov in:
99486	https://lists.gnu.org/r/emacs-devel/2017-08/msg00380.html
99487	* autogen.sh (git_sample_hook_src): New function.  Use it to work
99488	even if .git/hooks or its samples do not exist.
99489
994902017-08-15  Paul Eggert  <eggert@cs.ucla.edu>
99491
99492	New manual section "Copying and Naming"
99493
99494	* doc/emacs/files.texi (Copying and Naming):
99495	New section, split off from Misc File Ops and containing the
99496	operations that copy, name or rename files.  This fixes some
99497	confusion caused by the incorrect phrase "The same rule applies
99498	to all the remaining commands in this section" in the old manual.
99499	This change does not affect the confusion about directories (see
99500	Bug#27986 for ongoing discussion).
99501
995022017-08-15  Eli Zaretskii  <eliz@gnu.org>
99503
99504	Fix the MS-Windows build
99505
99506	* src/fileio.c (Frename_file): Don't use ENOTSUP if it is equal to
99507	ENOSYS.  (Bug#28097)  (Bug#27986)
99508
995092017-08-15  Ted Zlatanov  <tzz@lifelogs.com>
99510
99511	* .gitlab-ci.yml: run "autogen.sh autoconf" to avoid Git.
99512
99513	* .gitlab-ci.yml: add Git to the installed packages.
99514
995152017-08-15  Simen Heggestøyl  <simenheg@gmail.com>
99516
99517	Support indentation of detached Less CSS rulesets
99518
99519	* lisp/textmodes/css-mode.el (css-smie-rules): Provide better support
99520	for indentation of detached rulesets passed to Less mixins.
99521
99522	* test/manual/indent/less-css-mode.less: New file.
99523
995242017-08-15  Simen Heggestøyl  <simenheg@gmail.com>
99525
99526	Fixes and tweaks for the new Less CSS mode
99527
99528	* etc/NEWS: Add an entry for the new mode.
99529
99530	* lisp/textmodes/less-css-mode.el (less-css): Tweak docstring.
99531	(less-css-lessc-command): Tweak docstring. Don't mark it as
99532	safe. Don't autoload.
99533	(less-css-compile-at-save, less-css-lessc-options)
99534	(less-css-output-directory): Tweak docstrings. Don't autoload.
99535	(less-css-output-file-name): Tweak docstring. Don't mark it as safe.
99536	(less-css-input-file-name): Tweak docstring. Don't autoload.
99537	(less-css-compile-maybe): Use `when' for one-armed `if'.
99538	(less-css--output-path): Tweak docstring.
99539	(less-css--maybe-shell-quote-command): Remove function.
99540	(less-css-compile): Don't autoload. Tweak docstring and message. Fix
99541	compiler warning. Use `string-join' instead of `mapconcat'.
99542	(less-css-font-lock-keywords): Use `font-lock-variable-name-face' for
99543	variables.
99544	(less-css-mode-syntax-table, less-css-mode-map): New variables.
99545	(less-css-mode): Change status line mode name from "LESS" to
99546	"Less". Tweak docstring. Move syntax table definitions to
99547	`less-css-mode-syntax-table'.
99548	(less-css-indent-line): Remove function.
99549
995502017-08-15  Steve Purcell  <steve@sanityinc.com>
99551
99552	New major mode: Less CSS mode
99553
99554	* lisp/textmodes/less-css-mode.el: New file.
99555
995562017-08-15  Tino Calancha  <tino.calancha@gmail.com>
99557
99558	archive-int-to-mode: Fix order of testing S_ISUID, S_ISGID bits
99559
99560	* lisp/arc-mode.el (archive-int-to-mode):
99561	Swap order of 2048 and 1024 tests (Bug#28092).
99562	* test/lisp/arc-mode-tests.el (arc-mode-test-archive-int-to-mode):
99563	Update test.
99564
995652017-08-15  Paul Eggert  <eggert@cs.ucla.edu>
99566
99567	Improve rename-file port to macOS
99568
99569	* src/fileio.c (Frename_file): On macOS, renameat_noreplace can
99570	fail with errno == ENOTSUP on file systems where it is not
99571	supported, according to the Apple documentation.
99572
995732017-08-15  Noam Postavsky  <npostavs@gmail.com>
99574
99575	Speed up ./configure with more caching (Bug#27960)
99576
99577	* configure.ac: Cache the 'GTK compiles', 'GSettings is in gio',
99578	'LN_S', '-znocombreloc', 'sysinfo', 'gcc autodepends', '-b link',
99579	'Xkb', 'Xpm preprocessor', 'tputs library' 'GLib', 'signals via
99580	characters', and 'Windows API header' checks.  Remove pause after
99581	warning about GTK bug.
99582
995832017-08-15  Paul Eggert  <eggert@cs.ucla.edu>
99584
99585	Improve rename-file behavior on macOS
99586
99587	Problem reported by Philipp Stephani (Bug#27986).
99588	* src/fileio.c (Frename_file):
99589	Worry about file name case sensitivity only if CYGWIN or DOS_NT.
99590	* src/sysdep.c (renameat_noreplace): Use renameatx_np on macOS,
99591	since this provides the necessary atomicity guarantees.
99592
995932017-08-14  Glenn Morris  <rgm@gnu.org>
99594
99595	Clean up temp files after some tests
99596
99597	* test/lisp/emacs-lisp/bytecomp-tests.el
99598	(bytecomp-tests--with-temp-file): Also delete .elc file if present.
99599	* test/lisp/progmodes/etags-tests.el
99600	(etags-buffer-local-tags-table-list): Delete temp file at end.
99601
996022017-08-14  Eli Zaretskii  <eliz@gnu.org>
99603
99604	Implement renameat_noreplace for MS-Windows
99605
99606	* src/sysdep.c (renameat_noreplace) [WINDOWSNT]: Implement minimal
99607	emulation for MS-Windows.  (Bug#27986)
99608
996092017-08-14  Eli Zaretskii  <eliz@gnu.org>
99610
99611	Fix 'rename' on MS-Windows
99612
99613	* src/w32.c (sys_rename_replace): Use the FORCE argument only if
99614	the primitive rename errors out with EEXIST.
99615
996162017-08-14  Michael Albinus  <michael.albinus@gmx.de>
99617
99618	* lisp/net/ange-ftp.el (ange-ftp-skip-msgs): Support ftp-ssl.
99619
996202017-08-14  Mark Oteiza  <mvoteiza@udel.edu>
99621
99622	Tiny JSON performance improvement
99623
99624	Get rid of some needless uses of apply.  Measuring with
99625	  (benchmark-run 10 (json-read-file "test.json"))
99626	showed 1.5-2.5% reduction of execution time.
99627	* lisp/json.el (json-peek): Nix let-binding.
99628	(json-read-string): Use concat for making a string from chars.
99629	(json-read-array): Use cond and more appropriate conversion instead
99630	of blindly applying.
99631
996322017-08-13  Paul Eggert  <eggert@cs.ucla.edu>
99633
99634	Be consistent in spelling 'ok-if-already-exists'.
99635
996362017-08-13  Alexander Gramiak  <agrambot@gmail.com>
99637
99638	Use 'header-line-highlight' face in proced and erc
99639
99640	* lisp/erc/erc-list.el (erc-list-button):
99641	* lisp/proced.el (proced-format): Use the 'header-line-highlight
99642	face.  (Bug#28033)
99643
996442017-08-13  Ulf Jasper  <ulf.jasper@web.de>
99645
99646	Remove feeds with dead uris from newsticker--raw-url-list-defaults
99647
99648	* lisp/net/newst-backend.el (newsticker--raw-url-list-defaults):
99649	  Remove feeds with dead uris.
99650
996512017-08-13  Eli Zaretskii  <eliz@gnu.org>
99652
99653	Fix vertical cursor motion when cursor is on the fringe
99654
99655	* lisp/simple.el (line-move-visual): Fix an off-by-one error in
99656	setting temporary-goal-column when newline overflows into the
99657	fringe.  Support that use case in R2L paragraphs as well.
99658
996592017-08-13  Eli Zaretskii  <eliz@gnu.org>
99660
99661	Fix vertical cursor motion across too wide images
99662
99663	* src/indent.c (Fvertical_motion): If lines are truncated and we
99664	end up beyond the right margin of the window, don't assume we are
99665	in the next screen line, unless VPOS actually says so.  (Bug#28071)
99666
996672017-08-13  Tino Calancha  <tino.calancha@gmail.com>
99668
99669	Add test suites for arc-mode and tar-mode
99670
99671	* test/lisp/arc-mode-tests.el (arc-mode-test-archive-int-to-mode)
99672	* test/lisp/tar-mode-tests.el (tar-mode-test-tar-grind-file-mode):
99673	New tests.
99674
996752017-08-13  Tino Calancha  <tino.calancha@gmail.com>
99676
99677	* lisp/tar-mode.el (tar-grind-file-mode): Fix docstring
99678
996792017-08-13  Ulf Jasper  <ulf.jasper@web.de>
99680
99681	Fix uri of Emacs Wiki
99682
99683	* lisp/net/newst-backend.el (newsticker--raw-url-list-defaults): Fix
99684	  uri of Emacs Wiki.  (Bug#27981)
99685
996862017-08-13  Paul Eggert  <eggert@cs.ucla.edu>
99687
99688	Fix make-temp-file bug with ""/"."/".." prefix
99689
99690	The bug with "." and ".." has been present for a while; I
99691	introduced the bug with "" earlier today in my patch for Bug#28023.
99692	* lisp/files.el (make-temp-file): Do not use expand-file-name if
99693	PREFIX is empty or "." or "..", as it does the wrong thing.
99694	Compute absolute-prefix here ...
99695	(files--make-magic-temp-file): ... instead of here ...
99696	* src/fileio.c (Fmake_temp_file_internal): ... or here.
99697
99698	* lisp/files.el (make-temp-file): If the prefix is empty, append
99699	"/" to the absolute prefix so that the new files are children
99700	rather than siblings of temporary-file-directory.  This fixes a
99701	bug introduced in the previous change.
99702	* test/lisp/files-tests.el (files-test-make-temp-file-empty-prefix):
99703	New test, for the bug.
99704
997052017-08-13  Paul Eggert  <eggert@cs.ucla.edu>
99706
99707	Improve make-temp-file performance on local files
99708
99709	For the motivation behind this patch, please see Bug#28023 and:
99710	http://emacshorrors.com/posts/make-temp-name.html
99711	Although, given the recent changes to Tramp, the related security
99712	problem in make-temp-file is already fixed, make-temp-file still has
99713	several unnecessary system calls.  In the typical case on GNU/Linux,
99714	this patch replaces 8 syscalls (symlink, open, close, readlinkat, uname,
99715	getpid, unlink, umask) by 2 (open, close).
99716	* admin/merge-gnulib (GNULIB_MODULES): Add tempname, now
99717	that Emacs is using it directly.
99718	* configure.ac (AUTO_DEPEND): Remove AC_SYS_LONG_FILE_NAMES;
99719	no longer needed.
99720	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
99721	* lisp/files.el (files--make-magic-temp-file): Rename from
99722	make-temp-file.
99723	(make-temp-file): Use make-temp-file-internal for
99724	non-magic file names.
99725	* src/fileio.c: Include tempname.h.
99726	(make_temp_name_tbl, make_temp_name_count)
99727	(make_temp_name_count_initialized_p, make_temp_name): Remove.
99728	(Fmake_temp_file_internal): New function.
99729	(Fmake_temp_name): Use it.
99730	* src/filelock.c (get_boot_time): Use Fmake_temp_file_internal
99731	instead of make_temp_name.
99732
997332017-08-12  Paul Eggert  <eggert@cs.ucla.edu>
99734
99735	Document internal-use naming conventions
99736
99737	* doc/lispref/functions.texi (Function Names):
99738	* doc/lispref/variables.texi (Tips for Defining):
99739	Document naming conventions for internal-use functions and vars.
99740	See Bug#28023#59.
99741
997422017-08-12  Paul Eggert  <eggert@cs.ucla.edu>
99743
99744	Simplify re and document 'autoconf.sh all'
99745
99746	* GNUmakefile (ALL_IF_GIT): Remove; no longer needed, now that
99747	./autogen.sh defaults to "all".  All uses removed.
99748	* README: Mention autoconf.sh's effect on Git configuration.
99749
997502017-08-12  Paul Eggert  <eggert@cs.ucla.edu>
99751
99752	Default autogen.sh to 'all'
99753
99754	This addresses a problem noted by RMS in:
99755	https://lists.gnu.org/r/emacs-devel/2017-08/msg00052.html
99756	* autogen.sh (do_git): Set to true if this script is invoked
99757	with no arguments and there is a .git subdirectory.
99758
997592017-08-12  Paul Eggert  <eggert@cs.ucla.edu>
99760
99761	Adjust jka-compr to recent Tramp changes.
99762
99763	* lisp/jka-compr.el (jka-compr-write-region):
99764	Two new args LOCKNAME and MUSTBENEW.
99765
997662017-08-12  Eli Zaretskii  <eliz@gnu.org>
99767
99768	Improve doc strings of 2 functions in simple.el
99769
99770	* lisp/simple.el (beginning-of-visual-line)
99771	(move-beginning-of-line): Doc fix.  Reported by
99772	Justin Burkett <justin@burkett.cc>.
99773
997742017-08-12  Eli Zaretskii  <eliz@gnu.org>
99775
99776	Fix completion on directory names on MS-DOS/MS-Windows
99777
99778	* src/msdos.c (faccessat):
99779	* src/w32.c (faccessat): Support relative file names, and add D_OK
99780	to 'mode' if the argument is a directory.  This unbreaks file-name
99781	completion when the completion result is a directory.
99782
997832017-08-12  Michael Albinus  <michael.albinus@gmx.de>
99784
99785	Implement EXCL of write-region for Tramp
99786
99787	* lisp/net/ange-ftp.el (ange-ftp-write-region):
99788	* lisp/net/tramp-adb.el (tramp-adb-handle-write-region)
99789	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
99790	* lisp/net/tramp-sh.el (tramp-sh-handle-write-region)
99791	* lisp/net/tramp-smb.el (tramp-smb-handle-write-region):
99792	Implement MUSTBENEW.
99793
99794	* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file)
99795	* lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
99796	(tramp-sh-handle-add-name-to-file)
99797	(tramp-do-copy-or-rename-file)
99798	* lisp/net/tramp-smb.el (tramp-smb-handle-make-symbolic-link):
99799	Adapt error message for `file-already-exists'.
99800
99801	* src/lisp.h:
99802	* src/eval.c (call8): New function.
99803
99804	* src/fileio.c (write_region): Pass also lockname and
99805	mustbenew to the file name handler.
99806
99807	* test/lisp/net/tramp-tests.el (tramp-test10-write-region):
99808	Add tests for MUSTBENEW.
99809
998102017-08-12  Eli Zaretskii  <eliz@gnu.org>
99811
99812	Adapt Proced display to display-line-numbers
99813
99814	* lisp/proced.el (proced-header-line): Account for the width taken
99815	by display-line-numbers.  (Bug#27895)
99816
998172017-08-12  Eli Zaretskii  <eliz@gnu.org>
99818
99819	Adapt tabulated list when display-line-number is turned on
99820
99821	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Add
99822	a hook to revert the display when display-line-numbers is turned
99823	on.  (Bug#27895)
99824
998252017-08-12  Eli Zaretskii  <eliz@gnu.org>
99826
99827	Use Gnulib 'tempname' on MS-Windows
99828
99829	* lib-src/ntlib.h (mkdir, open): Remove redefinitions.  They are
99830	now in nt/inc/ms-w32.h.
99831	* lib-src/ntlib.c (sys_mkdir, sys_open): New functions.
99832	(mkostemp): Remove.
99833
99834	* src/w32.c (mkostemp): Remove.
99835	(sys_mkdir): Accept a second (unused) argument.
99836	* src/fileio.c (Fmake_directory_internal): Remove the WINDOWSNT
99837	specific call to mkdir.  (Bug#28023)
99838
99839	* nt/inc/ms-w32.h (mkdir): Remove from "#ifdef emacs" and redefine
99840	to accept 2 arguments.
99841	(open): Remove from "#ifdef emacs".
99842	* nt/mingw-cfg.site (ac_cv_func_mkostemp): Remove.
99843	* nt/gnulib-cfg.mk (OMIT_GNULIB_MODULE_mkostemp)
99844	(OMIT_GNULIB_MODULE_tempname): Remove.
99845
998462017-08-12  Alexander Gramiak  <agrambot@gmail.com>
99847
99848	Add new face 'header-line-highlight'
99849
99850	* lisp/faces.el: Define the face.
99851	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-init-header):
99852	* lisp/info.el (Info-fontify-node): Use the new face.
99853	* doc/emacs/display.texi (Standard Faces):
99854	* etc/NEWS: Document the new face.  (Bug#28033)
99855
998562017-08-12  Arash Esbati  <arash@gnu.org>
99857
99858	Make a case-sensitive match for strings
99859
99860	* lisp/textmodes/reftex.el (reftex-typekey-check): Temporarily
99861	let-bind `case-fold-search' to nil in order to be case-sensitive
99862	when matching a string.  (Bug#27518)
99863
998642017-08-11  Stephen Berman  <steve@rosalinde.fritz.box>
99865
99866	Fix a minor todo-mode regression
99867
99868	* lisp/calendar/todo-mode.el (todo-get-overlay): Wrap in
99869	save-excursion.  This fixes a regression introduced by the fix
99870	for bug#27609, whereby trying to raise the priority of the
99871	first item or lower the priority of the last item, which
99872	should be noops, moves point to the item's start.  Clarify
99873	comment.
99874
99875	* test/lisp/calendar/todo-mode-tests.el
99876	(todo-test-raise-lower-priority): Add test cases for trying to
99877	raise first item and lower last item.
99878	(with-todo-test): Clear abbreviated-home-dir, since we change HOME.
99879	(todo-test-toggle-item-header02): Remove ":expected-result
99880	:failed" and tests of point after todo-next-item, since the
99881	effect when using Todo mode is not reproducible in the test
99882	environment.  Add commentary about this.
99883
998842017-08-11  Paul Eggert  <eggert@cs.ucla.edu>
99885
99886	Improve performance for rename-file etc.
99887
99888	Although this does not fix Bug#27986, it is a step forward.
99889	I plan to propose a more-significant patch later.
99890	* lisp/files.el (directory-name-p): Move from here ...
99891	* src/fileio.c (Fdirectory_name_p): ... to here.
99892	(directory_like, cp_like_target): New static functions.
99893	(Fcopy_file, Frename_file, Fadd_name_to_file)
99894	(Fmake_symbolic_link):
99895	Use them, to avoid directory-testing syscalls on file names that
99896	must be directories if they exist.  Omit unnecessary
99897	initializations and CHECK_STRING calls.
99898	(Frename_file): Don't call file_name_case_insensitive_p
99899	twice on the same file.  Compare both file names expanded, instead
99900	of the old name expanded and the new one unexpanded.
99901
999022017-08-11  Noam Postavsky  <npostavs@gmail.com>
99903
99904	Respect buffer-local value of tags-table-list (Bug#27772)
99905
99906	* lisp/progmodes/etags.el (visit-tags-table-buffer): Save the current
99907	buffer around the `tags-table-including' calls so as to get buffer
99908	local variables from the right buffer later.
99909	* test/lisp/progmodes/etags-tests.el (etags-visit-tags-table-buffer):
99910	New test.
99911	* test/lisp/progmodes/etags-tests.el (etags-tests--test-dir): New
99912	constant.
99913	(etags-bug-158, etags-bug-23164): Use it so that when running the test
99914	interactively, setting EMACS_TEST_DIRECTORY is not needed.
99915
999162017-08-10  Tom Tromey  <tom@tromey.com>
99917
99918	Fix auto-filling regression
99919
99920	Bug#28003
99921	* lisp/newcomment.el (comment-indent-new-line): Check
99922	comment-auto-fill-only-comments.  Reverts earlier change.
99923	* lisp/simple.el (internal-auto-fill): Call auto-fill-function, not
99924	do-auto-fill.
99925
999262017-08-09  Paul Eggert  <eggert@cs.ucla.edu>
99927
99928	Merge from gnulib
99929
99930	This incorporates:
99931	2017-08-09 tempname: do not depend on secure_getenv
99932	2017-08-08 extensions: add _OPENBSD_SOURCE
99933	2017-08-06 manywarnings: Add support for C++
99934	2017-08-06 warnings, manywarnings: Add support for multiple languages
99935	* admin/merge-gnulib: Don't use m4/manywarnings-c++.m4.
99936	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
99937	* lib/secure_getenv.c, m4/secure_getenv.m4: Remove.
99938	* lib/tempname.c, m4/extensions.m4, m4/manywarnings.m4, m4/warnings.m4:
99939	Copy from gnulib.
99940
999412017-08-09  Eli Zaretskii  <eliz@gnu.org>
99942
99943	Fix crashing emacs-module tests on MS-Windows
99944
99945	* src/w32fns.c (syms_of_w32fns) <w32-disable-abort-dialog>: New
99946	variable.
99947	(emacs_abort): If w32-disable-abort-dialog is non-nil, abort right
99948	away, without displaying the Abort dialog, which waits for the user.
99949
99950	* test/src/emacs-module-tests.el (module--test-assertion): Run the
99951	inferior Emacs with the w32 abort dialog disabled.  Expect the
99952	status of the aborted Emacs sub-process to be 3 on MS-Windows and
99953	2 on MS-DOS.
99954
999552017-08-09  Tino Calancha  <tino.calancha@gmail.com>
99956
99957	dired-delete-file:  Dont't ask for empty dirs
99958
99959	* lisp/dired.el (dired--yes-no-all-quit-help): New defun.
99960	(dired-delete-file): Use it.  Dont't ask for empty dirs (Bug#27940).
99961
99962	* test/lisp/dired-tests.el (dired-test-with-temp-dirs):
99963	New auxiliar macro.
99964	(dired-test-bug27940): Add new test.
99965
999662017-08-09  Tino Calancha  <tino.calancha@gmail.com>
99967
99968	Ask files for deletion in buffer order: top first, botton later
99969
99970	* lisp/dired.el (dired-do-flagged-delete, dired-do-delete):
99971	Call `nreverse' t invert the output of `dired-map-over-marks'.
99972
999732017-08-09  Alexander Gramiak  <agrambot@gmail.com>
99974
99975	Use help-mode xrefs in describe-font
99976
99977	* lisp/international/mule-diag.el (describe-font): Use help-setup-xref
99978	(Bug#27890).
99979
999802017-08-09  Katsumi Yamaoka  <yamaoka@jpl.org>
99981
99982	Don't try to jump to non-existent part (bug#28013)
99983
99984	* lisp/gnus/gnus-art.el (gnus-article-edit-part): Don't try to jump to
99985	the next part if there is the only one part in the article (bug#28013).
99986
999872017-08-08  Mark Oteiza  <mvoteiza@udel.edu>
99988
99989	Replace some uses of eval
99990
99991	There are a number of places where eval is used unnecessarily to get
99992	or set the value of a symbol.
99993	* lisp/calendar/calendar.el (diary-date-forms): Use default-value in
99994	custom setter.
99995	* lisp/desktop.el (desktop-clear): Use set-default instead.
99996	* lisp/international/ogonek.el (ogonek-read-encoding): Use
99997	symbol-value.
99998
999992017-08-08  Mark Oteiza  <mvoteiza@udel.edu>
100000
100001	Convert uses of looking-at in viper-ex to following-char
100002
100003	* lisp/emulation/viper-ex.el (viper-get-ex-token): Bind
100004	(following-char) and use it in the subsequent cond's clauses.
100005	(viper-ex, ex-quit, viper-get-ex-file): Use following-char instead.
100006	Convert single branch ifs to when
100007
1000082017-08-08  Mark Oteiza  <mvoteiza@udel.edu>
100009
100010	Some cleanup in message.el
100011
100012	* lisp/gnus/message.el (message-cross-post-insert-note):
100013	(message-strip-forbidden-properties): Mark unused args.
100014	(message-canlock-generate): Remove extinct variable
100015	sha1-maximum-internal-length.
100016	(message-make-mail-followup-to): Use loop's thereis clause.
100017
1000182017-08-08  Paul Eggert  <eggert@cs.ucla.edu>
100019
100020	Document make-temp-name magic limitations
100021
100022	* doc/lispref/files.texi (Unique File Names):
100023	* src/fileio.c (Fmake_temp_name): Document that make-temp-name
100024	does not guarantee uniqueness on magic file names.
100025
1000262017-08-08  Tom Tromey  <tom@tromey.com>
100027
100028	Show number of errors in compilation-mode mode-line
100029
100030	Bug#25354
100031	* lisp/progmodes/compile.el (compilation-num-errors-found): Provide
100032	default value.
100033	(compilation-num-warnings-found, compilation-num-infos-found): New
100034	defvars.
100035	(compilation-mode-line-errors): New defconst.
100036	(compilation-face): Remove.
100037	(compilation-type, compilation--note-type): New functions.
100038	(compilation-parse-errors): Call compilation--note-type.
100039	(compilation-start): Include compilation-mode-line-errors in
100040	mode-line-process.
100041	(compilation-setup): Initialize compilation-num-* variables to 0.
100042	(compilation-handle-exit): Include compilation-mode-line-errors in
100043	mode-line-process.
100044	* doc/emacs/building.texi (Compilation): Document new feature.
100045
1000462017-08-08  Mark Oteiza  <mvoteiza@udel.edu>
100047
100048	Do some cleanup in mailcap.el
100049
100050	* lisp/net/mailcap.el: Use lexical-binding.
100051	(mailcap--set-user-mime-data, mailcap-possible-viewers): Use pcase
100052	destructuring.
100053	(mailcap-mime-data): Remove some entries for ancient functions.
100054	(mailcap-parse-mailcaps, mailcap-mime-info): Nix single-branch ifs.
100055	(mailcap-parse-mimetype-file): Just use append.
100056	(mailcap-command-p): Remove unused function.
100057
1000582017-08-08  Tino Calancha  <tino.calancha@gmail.com>
100059
100060	query-replace: Undo replacements performed with 'comma
100061
100062	During a `query-replace', the char ',' replaces the character
100063	at point and doesn't move point;  right after, the char 'u'
100064	must undo such replacement (Bug#27268).
100065	* lisp/replace.el (replace--push-stack):
100066	New macro extracted from `perform-replace'.
100067	(perform-replace): Use it.
100068	* test/lisp/replace-tests.el (query-replace--undo): Add test.
100069
1000702017-08-08  Noam Postavsky  <npostavs@gmail.com>
100071
100072	Don't define gv expanders in compiler's runtime (Bug#27016)
100073
100074	This prevents definitions being compiled from leaking into the current
100075	Emacs doing the compilation.
100076	* lisp/emacs-lisp/gv.el (gv-define-expander): Use function-put instead
100077	of `put' with `eval-and-compile'.
100078	* test/lisp/emacs-lisp/gv-tests.el: New tests.
100079
1000802017-08-08  Noam Postavsky  <npostavs@gmail.com>
100081
100082	Let the cl-typep effects of defclass work during compilation (Bug#27718)
100083
100084	* lisp/emacs-lisp/eieio.el (defclass): Use `define-symbol-prop'
100085	instead of `put'.
100086	* test/lisp/emacs-lisp/eieio-tests/eieio-tests.el
100087	(eieio-tests--dummy-function): Remove.
100088	(eieio-test-25-slot-tests, eieio-test-23-inheritance-check): Don't
100089	expect to fail if compiled.
100090
1000912017-08-08  Stefan Monnier  <monnier@IRO.UMontreal.CA>
100092	    Noam Postavsky  <npostavs@gmail.com>
100093
100094	Let `define-symbol-prop' take effect during compilation
100095
100096	* src/fns.c (syms_of_fns): New variable `overriding-plist-environment'.
100097	(Fget): Consult it.
100098	* lisp/emacs-lisp/bytecomp.el (byte-compile-close-variables): Let-bind
100099	it to nil.
100100	(byte-compile-define-symbol-prop): New function, handles compilation
100101	of top-level `define-symbol-prop' and `function-put' calls by putting
100102	the symbol setting into `overriding-plist-environment'.
100103
1001042017-08-08  Gemini Lasswell  <gazally@runbox.com>
100105
100106	Add a test of handling of circular values to testcover-tests
100107
100108	* test/lisp/emacs-lisp-testcover-resources/testcases.el
100109	(testcover-testcase-cyc1): New function.
100110	(testcover-tests-circular-lists-bug-24402): New test.
100111
1001122017-08-08  Noam Postavsky  <npostavs@gmail.com>
100113
100114	Don't error on circular values in testcover
100115
100116	* lisp/emacs-lisp/testcover.el (testcover-after, testcover-1value):
100117	Consider circular lists to be non-equal instead of signaling error.
100118
1001192017-08-08  Alexander Gramiak  <agrambot@gmail.com>
100120
100121	Catch argument and macroexpansion errors in ert
100122
100123	This kludge catches errors caused by evaluating arguments in ert's
100124	should, should-not, and should-error macros; it also catches
100125	macroexpansion errors inside of the above macros (Bug#24402).
100126
100127	* lisp/emacs-lisp/ert.el: (ert--should-signal-hook): New function.
100128	(ert--expand-should-1): Catch macroexpansion errors.
100129	* test/lisp/emacs-lisp/ert-tests.el (ert-test-should-error-argument)
100130	(ert-test-should-error-macroexpansion): Tests for argument and
100131	expansion errors.
100132
1001332017-08-07  Reuben Thomas  <rrt@sc3d.org>
100134
100135	Revert "Add Enchant support to ispell.el (Bug#17742)"
100136
100137	This reverts commit 7136e6723d87b51ae3089f5ceef6b14621bfaf87.
100138
1001392017-08-07  Reuben Thomas  <rrt@sc3d.org>
100140
100141	Revert "Add support for arguments in ALTERNATE_EDITOR to emacsclient"
100142
100143	This reverts commit 28f1fe97daa13e13714e6c43c9a6fbb0c0e99a26.
100144
1001452017-08-07  Reuben Thomas  <rrt@sc3d.org>
100146
100147	Add support for arguments in ALTERNATE_EDITOR to emacsclient
100148
100149	* lib-src/emacsclient.c (fail): Parse ALTERNATE_EDITOR, or
100150	corresponding command-line argument, into space-separated tokens.
100151	* etc/NEWS: Document.
100152	* test/lib-src/emacsclient-tests.el: Add a test.
100153
1001542017-08-07  Reuben Thomas  <rrt@sc3d.org>
100155
100156	Add Enchant support to ispell.el (Bug#17742)
100157
100158	* lisp/textmodes/ispell.el (ispell-program-name): Add “enchant”.
100159	(ispell-really-enchant): Add variable.
100160	(ispell-check-version): If using Enchant, check it’s new enough (at
100161	least 1.6.1).  (Like the ispell check, this is absolute: cannot work
100162	without.)
100163	(ispell-enchant-dictionary-alist): Add variable.
100164	(ispell-find-enchant-dictionaries): Add function, based on
100165	ispell-find-aspell-dictionaries.
100166	(ispell-set-spellchecker-params): Allow dictionary auto-detection for
100167	Enchant, and call ispell-find-enchant-dictionaries to find them.  Use
100168	old ispell name to locale mapping code for Enchant too.
100169	(ispell-send-replacement): Make it work with Enchant.
100170
1001712017-08-07  Reuben Thomas  <rrt@sc3d.org>
100172
100173	Allow async command output buffer to be shown only on output
100174
100175	* lisp/simple.el (async-shell-command-display-buffer): Add
100176	defcustom.
100177	(shell-command): Use the new defcustom to determine whether to show
100178	the buffer immediately, or add a process filter that shows it only
100179	when there is some output.
100180	* etc/NEWS: Document the new variable.
100181	* doc/emacs/misc.texi: Likewise.
100182
100183	Thanks to Juri Linkov and Eli Zaretskii for advice and guidance.
100184
1001852017-08-07  Eli Zaretskii  <eliz@gnu.org>
100186
100187	Fix infinite recursion under prettify-symbols-mode and linum-mode
100188
100189	* src/xdisp.c (get_overlay_strings_1)
100190	(handle_single_display_spec, push_prefix_prop): Invalidate the
100191	composition information before starting to iterate on a string.
100192	Otherwise we might think in set_iterator_to_next that we are
100193	delivering characters from a composition, and do all kinds of
100194	nonsensical things, like over-step the string end.  (Bug#27761)
100195
1001962017-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
100197
100198	* lisp/gnus/gnus-bcklg.el (gnus-backlog-request-article): Fix thinko.
100199
1002002017-08-07  Martin Rudalics  <rudalics@gmx.at>
100201
100202	Fix doc-string of `delete-other-windows'
100203
100204	* lisp/window.el (delete-other-windows): Fix doc-string.
100205
1002062017-08-07  Paul Eggert  <eggert@cs.ucla.edu>
100207
100208	Fix a couple more make-temp-file races
100209
100210	* lisp/files.el (basic-save-buffer-2, move-file-to-trash):
100211	Use make-temp-name, not make-temp-file with retry.
100212	(basic-save-buffer-2): Use condition-case, instead of
100213	unwind-protect with a success flag.
100214
1002152017-08-07  Noam Postavsky  <npostavs@gmail.com>
100216
100217	Merge null and without-null regexp alists (Bug#27840, Bug#27873)
100218
100219	* lisp/progmodes/grep.el (grep-mode-font-lock-keywords): Allow for NUL
100220	characters following filename in grep context lines.
100221	(grep--regexp-alist-column, grep--regexp-alist-bin-matcher)
100222	(grep-with-null-regexp-alist, grep-fallback-regexp-alist): Remove.
100223	(grep-regexp-alist): Recombine their contents here.
100224	(grep-mode):
100225	* lisp/cedet/semantic/symref/grep.el
100226	(semantic-symref-parse-tool-output-one-line):
100227	* lisp/progmodes/xref.el (xref-collect-matches): Use the variable
100228	`grep-regexp-alist' rather than the function.
100229
1002302017-08-07  Paul Eggert  <eggert@cs.ucla.edu>
100231
100232	Fix some crashes on self-modifying Elisp code
100233
100234	Prompted by a problem report by Alex in:
100235	https://lists.gnu.org/r/emacs-devel/2017-08/msg00143.html
100236	* src/eval.c (For, Fprogn, Fsetq, FletX, eval_sub):
100237	Compute XCDR (x) near XCAR (x); although this doesn't fix any bugs,
100238	it is likely to run a bit faster with typical hardware caches.
100239	(Fif): Use Fcdr instead of XCDR, to avoid crashing on
100240	self-modifying S-expressions.
100241	(Fsetq, Flet, eval_sub): Count the number of arguments as we go
100242	instead of trusting an Flength prepass, to avoid problems when the
100243	code is self-modifying.
100244	(Fquote, Ffunction, Fdefvar, Fdefconst): Prefer !NILP to CONSP
100245	where either will do.  This is mostly to document the fact that
100246	the value must be a proper list.  It's also a tiny bit faster on
100247	typical machines nowadays.
100248	(Fdefconst, FletX): Prefer XCAR+XCDR to Fcar+Fcdr when either will do.
100249	(eval_sub): Check that the args are a list as opposed to some
100250	other object that has a length. This prevents e.g. (if . "string")
100251	from making Emacs dump core in some cases.
100252	* test/src/eval-tests.el (eval-tests--if-dot-string)
100253	(eval-tests--let-with-circular-defs, eval-tests--mutating-cond):
100254	New tests.
100255
1002562017-08-06  Eli Zaretskii  <eliz@gnu.org>
100257
100258	* etc/tutorials/TUTORIAL.he: Update to match recent changes to TUTORIAL.
100259
1002602017-08-06  Tino Calancha  <tino.calancha@gmail.com>
100261
100262	Minor tweak in a dired test
100263
100264	* test/lisp/dired-tests.el (dired-test-bug27968):
100265	Ensure the new header has different length than the original one.
100266
1002672017-08-06  Tino Calancha  <tino.calancha@gmail.com>
100268
100269	dired-delete-file: Do not TAB complete the user answer
100270
100271	This action might delete directories containing valuable information.
100272	Before previous commit, we prompted users with `yes-or-no-p'
100273	which doesn't TAB complete the user answer.  Let's play safe and
100274	keep requiring full answers.
100275	* lisp/dired.el (dired-delete-file): Use `read-string'
100276	instead of `completing-read' to read the user answers.
100277
1002782017-08-06  Tino Calancha  <tino.calancha@gmail.com>
100279
100280	dired-do-delete: Allow to delete dirs recursively without prompts
100281
100282	* lisp/dired.el (dired-delete-file): Accept 2 additional answers:
100283	'all', to delete all directories recursively and no prompt anymore.
100284	'quit', to cancel directory deletions (Bug#27940).
100285	Show help message when user inputs 'help'.
100286	(dired-do-flagged-delete): Bind locally dired-recursive-deletes
100287	so that we can overwrite its global value.
100288	Wrapp the loop within a catch '--delete-cancel to catch when
100289	the user abort the directtry deletion.
100290	* doc/emacs/dired.texi (Dired Deletion): Update manual.
100291	* etc/NEWS (Changes in Specialized Modes and Packages in Emacs 26.1):
100292	Announce this change.
100293
1002942017-08-06  Paul Eggert  <eggert@cs.ucla.edu>
100295
100296	Fix a couple of make-temp-file races
100297
100298	* lisp/emacs-lisp/autoload.el (autoload--save-buffer):
100299	* lisp/emacs-lisp/bytecomp.el (byte-compile-file):
100300	Use make-temp-file, not make-temp-name, to avoid an unlikely race
100301	that could lose data.  Remove the deletion hook as quickly as
100302	possible after the file is renamed; though a race still remains
100303	here, it is smaller than before.
100304
1003052017-08-06  Tino Calancha  <tino.calancha@gmail.com>
100306
100307	Dired w/ eshell-ls: Handle shell wildcards in file name
100308
100309	* lisp/eshell/em-ls.el (eshell-ls--insert-directory):
100310	Use eshell-extended-glob (Bug#27844).
100311	* test/lisp/dired-tests.el (dired-test-bug27844): Add test.
100312
1003132017-08-06  Tino Calancha  <tino.calancha@gmail.com>
100314
100315	dired-revert: save line numbers instead of positions
100316
100317	Positions might change if the length of one dired header line
100318	changes; this happen, for instance, if we add new files.
100319	Instead, line numbers are invariant under shrinks/enlargements
100320	of the file header.
100321	https://lists.gnu.org/r/emacs-devel/2017-07/msg01092.html
100322	* lisp/dired.el (dired-save-positions): Save the line numbers at point.
100323	(dired-restore-positions): Use forward-line to restore the original
100324	position (Bug#27968).
100325	* test/lisp/dired-tests.el (dired-test-bug27968): Add test.
100326
1003272017-08-06  Tom Tromey  <tom@tromey.com>
100328
100329	Respect comment-auto-fill-only-comments
100330
100331	Respect comment-auto-fill-only-comments when auto-filling and a
100332	comment syntax is defined.
100333
100334	* lisp/newcomment.el (comment-indent-new-line): Do not check
100335	comment-auto-fill-only-comments.
100336	* lisp/simple.el (internal-auto-fill): New defun.
100337	* src/cmds.c (internal_self_insert): Call Qinternal_auto_fill, not
100338	auto_fill_function.
100339	(syms_of_cmds): Define Qinternal_auto_fill.
100340
1003412017-08-05  Richard Stallman  <rms@gnu.org>
100342
100343	* etc/tutorials/TUTORIAL: Update.
100344
1003452017-08-05  Eli Zaretskii  <eliz@gnu.org>
100346
100347	Unify CNS11643-15 in a way that avoids segfaults
100348
100349	* lisp/international/mule-conf.el: Redo unification of
100350	cns11643-15.  (Bug#27964)
100351	(chinese-cns11643-15): Add the missing :unify-map attribute.
100352
1003532017-08-05  Eli Zaretskii  <eliz@gnu.org>
100354
100355	Avoid segfaults while producing Punct.el
100356
100357	* lisp/international/mule-conf.el: Undo unification of
100358	cns11643-15, as that causes segfaults during bootstrap.
100359	(Bug#27964)
100360
1003612017-08-05  Eli Zaretskii  <eliz@gnu.org>
100362
100363	Make header line in some modes be sensitive to display-line-numbers
100364
100365	* lisp/ruler-mode.el (ruler-mode-ruler, ruler-mode-window-col):
100366	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-init-header)
100367	(tabulated-list-print-entry): Account for the width taken by
100368	line-number display.  (Bug#27895)
100369
1003702017-08-05  Eli Zaretskii  <eliz@gnu.org>
100371
100372	Fix a bug in 'generate-new-buffer-name'
100373
100374	* src/buffer.c (Fgenerate_new_buffer_name): Test IGNORE for being
100375	nil before calling string-equal, since the latter will compare
100376	"nil and 'nil' as equal.  (Bug#27966)
100377
100378	* test/src/buffer-tests.el
100379	(test-generate-new-buffer-name-bug27966): New test.
100380
1003812017-08-05  Eli Zaretskii  <eliz@gnu.org>
100382
100383	Unify CNS11643-15
100384
100385	* lisp/international/mule-conf.el (chinese-cns11643-15): Add a
100386	unify-charset form for it.  (Bug#27964)
100387
1003882017-08-05  Eli Zaretskii  <eliz@gnu.org>
100389
100390	Improve test of error message when Emacs cannot be suspended
100391
100392	* lisp/term/x-win.el (x-win-suspend-error):
100393	* lisp/term/ns-win.el (ns-suspend-error): Improve the error
100394	message.  (Bug#27901)
100395
1003962017-08-05  Alexander Gramiak  <agrambot@gmail.com>
100397
100398	Make "C-h o" show faces as well as variables
100399
100400	* lisp/faces.el (describe-face): Return (buffer-string).  Reorder
100401	the placement of variables/faces in describe-symbol, to put more
100402	emphasis on the variable entry rather than the face.  (Bug#24543)
100403
1004042017-08-05  Eli Zaretskii  <eliz@gnu.org>
100405
100406	Fix files-tests.el for MS-Windows
100407
100408	* test/lisp/files-tests.el
100409	(files-tests--file-name-non-special--subprocess): Fix this test
100410	for MS-Windows.
100411
1004122017-08-05  Eli Zaretskii  <eliz@gnu.org>
100413
100414	Improve documentation of 'region-extract-function'
100415
100416	* lisp/simple.el (region-extract-function): Rename the argument to
100417	METHOD.  Doc fix.  (Bug#27927)
100418
1004192017-08-05  Paul Eggert  <eggert@cs.ucla.edu>
100420
100421	Merge from gnulib
100422
100423	This incorporates:
100424	2017-08-04 manywarnings: port to 64-bit GCC builds of Emacs
100425	2017-08-01 manywarnings: port to 32-bit GCC bug
100426	* lib/gnulib.mk.in: Regenerate.
100427	* m4/manywarnings.m4: Copy from gnulib.
100428
1004292017-08-05  Paul Eggert  <eggert@cs.ucla.edu>
100430
100431	Port recent rename changes to Ubuntu 14.04
100432
100433	* src/sysdep.c (renameat_noreplace) [!RENAME_NOREPLACE]:
100434	Don’t use syscall.  Problem reported by Tino Calancha (Bug#27946#10).
100435
1004362017-08-05  Tino Calancha  <tino.calancha@gmail.com>
100437
100438	insert-directory-wildcard-in-dir-p: Tweak regexp
100439
100440	This function must return non-nil for a wildcard like '/*/*.txt'.
100441	* lisp/files.el (insert-directory-wildcard-in-dir-p): Adjust regexp.
100442	* test/lisp/files-tests.el (files-tests--insert-directory-wildcard-in-dir-p):
100443	Add test.
100444
1004452017-08-04  Toby S. Cubitt  <tsc25@cantab.net>
100446
100447	Implement iterator generator for avl-trees.
100448
100449	* lisp/emacs-lisp/avl-tree.el (avl-tree-iter): New iter-defun.
100450
1004512017-08-04  Tino Calancha  <tino.calancha@gmail.com>
100452
100453	ls-lisp: Drop eshell dependencies
100454
100455	Use 'file-expand-wildcards' instead of 'eshell-extended-glob' to
100456	expand the wildcards.
100457	Suggested by Fabrice Popineau in:
100458	https://lists.gnu.org/r/emacs-devel/2017-08/msg00108.html
100459	* lisp/ls-lisp.el (ls-lisp--dired): Use file-expand-wildcards.
100460
1004612017-08-04  Tino Calancha  <tino.calancha@gmail.com>
100462
100463	Fix dired-test-bug27631 on MS-Windows
100464
100465	Skip the test if Dired use 'ls' emulation with lisp.  The same
100466	bug is tested in their respective test suites: ls-lisp-tests.el
100467	and em-ls-tests.el.
100468	* test/lisp/dired-tests.el (dired-test-bug27631): Skip test if 'ls-lisp'
100469	or 'eshell' features are enabled.
100470
1004712017-08-04  Eli Zaretskii  <eliz@gnu.org>
100472
100473	Fix dired-test-bug25609 on MS-Windows
100474
100475	* test/lisp/dired-tests.el (dired-test-bug25609): On MS-Windows,
100476	pass temporary files through file-truename, to avoid bogus
100477	failures due to file-name comparison as strings.
100478
1004792017-08-04  Tino Calancha  <tino.calancha@gmail.com>
100480
100481	Fix 2 tests that fail in MS-Windows
100482
100483	https://lists.gnu.org/r/emacs-devel/2017-08/msg00018.html
100484	* test/lisp/vc/ediff-ptch-tests.el (ediff-ptch-test-bug26084):
100485	Add comments to explain the test logic.
100486	Pass '--binary' option to 'patch' program in windows environments.
100487	Check explicitly that a backup is created before compare file contents.
100488
100489	* test/lisp/dired-tests.el (dired-test-bug25609):
100490	Declare variable 'dired-dwim-target' right before the test.
100491	Add comments to explain the test logic.
100492	Ensure, before test the bug condition, that we are displaying the
100493	2 dired buffers created in this test, and no other dired buffer
100494	is shown.
100495
1004962017-08-04  Stefan Monnier  <monnier@iro.umontreal.ca>
100497
100498	* lisp/shell.el (explicit-shell-file-name): Mention shell-file-name
100499
100500	* lisp/files.el (insert-directory): Don't hardcode "-c".
100501	* lisp/term.el (term, ansi-term): Use shell-file-name.
100502
1005032017-08-04  Paul Eggert  <eggert@cs.ucla.edu>
100504
100505	Fix version numbers for some GnuTLS features
100506
100507	Problem reported by Glenn Morris (Bug#27708#58).
100508	* src/gnutls.c (HAVE_GNUTLS_X509_SYSTEM_TRUST):
100509	New macro.  Use it instead of low-level version number checks.
100510	(HAVE_GNUTLS_AEAD): Move here from gnutls.h, and rename from
100511	HAVE_GNUTLS3_AEAD.  All uses changed.  Indent preprocessor lines.
100512	* src/gnutls.h (HAVE_GNUTLS3_CIPHER, HAVE_GNUTLS3_DIGEST)
100513	(HAVE_GNUTLS3_HMAC): Remove, since these were available
100514	before GnuTLS 3.0.0 and the code checks them only if HAVE_GNUTLS3
100515	is defined.  Remove all uses; this simplifies the code a bit.
100516
1005172017-08-04  Paul Eggert  <eggert@cs.ucla.edu>
100518
100519	Port recent rename changes to RHEL 7 + NFS
100520
100521	Problem reported by Ted Zlatanov in:
100522	https://lists.gnu.org/r/emacs-devel/2017-08/msg00082.html
100523	* src/fileio.c (Frename_file): On RHEL 7 + NFS, renameat2 can fail
100524	with errno == EINVAL when it is not supported.  So treat that case
100525	like errno == ENOSYS.  Also, when ok_if_already_exists is neither
100526	nil nor an integer, just call plain rename; this avoids an extra
100527	syscall to renameat2 when the latter fails with errno == EINVAL or
100528	ENOSYS or ENOENT.
100529
1005302017-08-03  Paul Eggert  <eggert@cs.ucla.edu>
100531
100532	Port GnuTLS usage to Ubuntu 16.04.2 LTS
100533
100534	* src/gnutls.h (HAVE_GNUTLS3_AEAD): Define only if GnuTLS 3.5.1 or
100535	later, as opposed to the old 3.4.0 or later.
100536
1005372017-08-03  Paul Eggert  <eggert@cs.ucla.edu>
100538
100539	Simplify configuration of HAVE_GNUTLS3 etc.
100540
100541	There's only one GnuTLS, so configuring these symbols at
100542	'configure' time is overkill.  Simplify things by moving their
100543	configuration to src/gnutls.h (Bug#27708).
100544	* configure.ac (HAVE_GNUTLS3, HAVE_GNUTLS3_HMAC, HAVE_GNUTLS3_AEAD)
100545	(HAVE_GNUTLS3_CIPHER, HAVE_GNUTLS3_DIGEST): Move these definitions
100546	from here ...
100547	* src/gnutls.h: ... to here, and simplify.
100548
1005492017-08-03  Paul Eggert  <eggert@cs.ucla.edu>
100550
100551	Default to --with-mailutils if it is installed
100552
100553	* configure.ac (with_mailutils): Default to 'yes' if GNU Mailutils
100554	is installed.  See:
100555	https://lists.gnu.org/r/emacs-devel/2017-08/msg00054.html
100556
1005572017-08-02  Paul Eggert  <eggert@cs.ucla.edu>
100558
100559	Clarify when autogen.sh should run only autoconf
100560
100561	* Makefile.in (configure, bootstrap): Run ‘./autogen.sh autoconf’,
100562	not plain ‘./autogen.sh’, to make it clear that only
100563	autoconf-related tools should be run here.
100564
1005652017-08-02  Toon Claes  <toon@iotcl.com>
100566
100567	.gitlab-ci.yml: Use stretch Debian image instead of unstable
100568
1005692017-08-02  Stephen Berman  <stephen.berman@gmx.net>
100570
100571	Add debugging messages to a Dired test
100572
100573	* test/lisp/dired-tests.el (dired-test-bug27243-01): Log
100574	positions saved and restored by dired-revert to try and find
100575	out why the test fails on Hydra.
100576
1005772017-08-02  Tino Calancha  <tino.calancha@gmail.com>
100578
100579	ls-lisp: Autoload call instead of cookie
100580
100581	* lisp/ls-lisp.el (eshell-extended-glob): autoload call instead of cookie.
100582
1005832017-08-02  Paul Eggert  <eggert@cs.ucla.edu>
100584
100585	When renaming a file, ask only if EEXIST or ENOSYS
100586
100587	* src/fileio.c (Frename_file): Avoid calling Ffile_directory_p
100588	more than once on FILE.  Use renameat_noreplace, so that we can
100589	ask the user (and unlink and retry) only if this fails with errno
100590	== EEXIST or ENOSYS.  This avoids the need to ask the user for
100591	permission to do an operation that will fail anyway.  Simplify
100592	computation of ok_if_already_exists for subsidiary functions.
100593	* src/filelock.c (rename_lock_file): Prefer renameat_noreplace
100594	if it works, as this avoids the need to link and unlink.
100595	* src/lisp.h (renameat_noreplace): New decl.
100596	* src/sysdep.c [HAVE_LINUX_FS_H]: Include linux/fs.h and sys/syscall.h.
100597	(renameat_noreplace): New function.
100598
1005992017-08-02  Paul Eggert  <eggert@cs.ucla.edu>
100600
100601	When creating a link, ask only if EEXIST
100602
100603	* src/fileio.c (Fadd_name_to_file, Fmake_symbolic_link):
100604	Ask the user (and unlink and retry) only if link creation fails
100605	with errno == EEXIST.  This avoids the need to ask the user for
100606	permission to do an operation that will fail anyway.
100607
1006082017-08-02  Tino Calancha  <tino.calancha@gmail.com>
100609
100610	dired-align-file: Inherit text properties in inserted spaces
100611
100612	* lisp/dired.el (dired-align-file): Inherit text
100613	properties in inserted spaces (Bug#27899).
100614	* test/lisp/dired-tests.el (dired-test-bug27899): Add test.
100615
1006162017-08-02  Tino Calancha  <tino.calancha@gmail.com>
100617
100618	Don't assume /bin/sh as the 'sh' location in the local host
100619
100620	* lisp/dired.el (dired-insert-directory): Use executable-find in
100621	a local host.
100622
1006232017-08-02  Tino Calancha  <tino.calancha@gmail.com>
100624
100625	Move dired tests using ls emulation to different files
100626
100627	Suggested in:
100628	https://lists.gnu.org/r/emacs-devel/2017-08/msg00018.html
100629	* test/lisp/dired-tests.el (dired-test-bug27693)
100630	(dired-test-bug27762, dired-test-bug27817)
100631	(dired-test-bug27631, dired-test-bug27843): Delete those
100632	parts requiring either ls-lisp or eshell-ls.
100633
100634	* test/lisp/ls-lisp-tests.el (ls-lisp-test-bug27762)
100635	(ls-lisp-test-bug27631, ls-lisp-test-bug27693):
100636	Add all dired tests using ls-lisp here.
100637
100638	* test/lisp/eshell/em-ls-tests.el (em-ls-test-bug27631)
100639	(em-ls-test-bug27817, em-ls-test-bug27843): New test file.  Add
100640	all dired tests using eshell-ls here.
100641
1006422017-08-02  Tino Calancha  <tino.calancha@gmail.com>
100643
100644	* test/lisp/ls-lisp-tests.el: Rename it from ls-lisp.el
100645
1006462017-08-02  Katsumi Yamaoka  <yamaoka@jpl.org>
100647
100648	* lisp/gnus/mm-uu.el (mm-uu-org-src-code-block-extract):
100649	Say the handle is already decoded.
100650	cf. <yw.87lgnh5cfv.fsf@alex.chromebook> in the info-gnus-english list.
100651
1006522017-08-02  Paul Eggert  <eggert@cs.ucla.edu>
100653
100654	Don’t worry about unlink if errno == ENOENT
100655
100656	* src/fileio.c (Fdelete_file):
100657	* src/keyboard.c (Fopen_dribble_file): Do not report failure to
100658	remove a file if unlink fails with errno == ENOENT.  This can
100659	happen even if Emacs is the only program removing the file, in
100660	case an NFS cache overflows.  The file does not exist if errno ==
100661	ENOENT, so it is OK to proceed.
100662
1006632017-08-01  Tino Calancha  <tino.calancha@gmail.com>
100664
100665	Fix misalignment in Dired when dired-directory is a cons
100666
100667	* lisp/dired.el (dired--need-align-p, dired--align-all-files):
100668	New defuns.
100669	(dired-internal-noselect): Call dired--align-all-files when
100670	dired-directory is a cons (Bug#27762).
100671	* test/lisp/dired-tests.el (dired-test-bug27762): Test should pass.
100672
1006732017-08-01  Eli Zaretskii  <eliz@gnu.org>
100674
100675	Fix some dired-tests.el on MS-Windows
100676
100677	* test/lisp/dired-tests.el (dired-test-bug27243-01)
100678	(dired-test-bug27243-02): On MS-Windows, pass test-dir through
100679	file-truename, to avoid bogus failures due to file-name comparison
100680	as strings.
100681
1006822017-08-01  Tino Calancha  <tino.calancha@gmail.com>
100683
100684	Insert subdir content if dir-or-list is a string w/o wildcards
100685
100686	* lisp/eshell/em-ls.el (eshell-ls--insert-directory):
100687	Append '("-d") into 'eshell-ls-dired-initial-args'
100688	if 'dired-directory' is a cons or there are wildcars (Bug#27843).
100689	* test/lisp/dired-tests.el (dired-test-bug27843): Add test.
100690
1006912017-08-01  Stephen Berman  <stephen.berman@gmx.net>
100692
100693	Update todo-mode defcustoms in a less hideous way
100694
100695	* lisp/calendar/todo-mode.el (todo-reevaluate-filelist-defcustoms)
100696	(todo-reevaluate-default-file-defcustom)
100697	(todo-reevaluate-category-completions-files-defcustom)
100698	(todo-reevaluate-filter-files-defcustom): Delete these functions.
100699	(todo-update-filelist-defcustoms): New function.  This replaces
100700	todo-reevaluate-filelist-defcustoms, using the 'custom-type'
100701	property instead of re-evaluating the defcustoms.
100702	(todo-add-file, todo-rename-file, todo-delete-file)
100703	(todo-delete-category, todo-move-category)
100704	(todo-convert-legacy-files, todo-check-file): Replace call of
100705	todo-reevaluate-filelist-defcustoms by
100706	todo-update-filelist-defcustoms.
100707	(todo-show, todo-category-completions): Replace call of
100708	todo-reevaluate-* function by use of 'custom-type' property.
100709
1007102017-08-01  Tino Calancha  <tino.calancha@gmail.com>
100711
100712	Add more should form calls in a failing dired test
100713
100714	Some dired tests fail intermittently in hydra.  Add few
100715	more should form calls for debugging.
100716	See:
100717	https://lists.gnu.org/r/emacs-devel/2017-07/msg01092.html
100718	* test/lisp/dired-tests.el (dired-test-bug27243-01): Add few more should
100719	forms for debugging.
100720
1007212017-08-01  Michael Albinus  <michael.albinus@gmx.de>
100722
100723	Follow SAUNA recommendations for display-line-numbers-type
100724
100725	* lisp/display-line-numbers.el (display-line-numbers-type): Do not autoload.
100726
100727	* lisp/menu-bar.el (display-line-numbers-type): Declare.
100728
1007292017-07-31  Paul Eggert  <eggert@cs.ucla.edu>
100730
100731	Avoid most stat calls when completing file names
100732
100733	* admin/merge-gnulib (GNULIB_MODULES): Add d-type.
100734	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
100735	* m4/d-type.m4: New file, copied from gnulib.
100736	* src/dired.c (DT_UNKNOWN, DT_DIR, DT_LINK)
100737	[!HAVE_STRUCT_DIRENT_D_TYPE]: New constants.
100738	(dirent_type): New function.
100739	(file_name_completion): Use it, to avoid unnecessary calls to
100740	stat-like functions on GNU/Linux and other platforms with d_type.
100741	(file_name_completion_stat): Just follow the link; there is no
100742	need to try first with AT_SYMLINK_NOFOLLOW since the directory
100743	entry was already checked to exist.
100744
1007452017-07-31  Tino Calancha  <tino.calancha@gmail.com>
100746
100747	dired-tests: Unload tested features after test them
100748
100749	Some tests are for Dired with ls-lisp or eshell-ls.
100750	Requiring these features add an advice on `dired' and
100751	might affect other tests.
100752	Do not require these features at the top of the file; require
100753	then inside the tests and unload then at the end.
100754	* test/lisp/dired-tests.el (dired-test-bug27693)
100755	(dired-test-bug7131, dired-test-bug27817, dired-test-bug27631):
100756	require ls-lisp and/or eshell-ls inside the test; unload the
100757	features at the end.
100758
1007592017-07-31  Michael Albinus  <michael.albinus@gmx.de>
100760
100761	Small adaptions for directory wildcards
100762
100763	* lisp/dired.el (dired-insert-directory): Remove "--dired"
100764	when there are wildcards, and the directory is remote.
100765
100766	* test/lisp/net/tramp-tests.el (tramp--test-make-temp-name):
100767	Adapt docstring.
100768	(tramp-test17-dired-with-wildcards): Skip for all methods but
100769	those from tamp-sh.p.
100770
1007712017-07-31  Tino Calancha  <tino.calancha@gmail.com>
100772
100773	* lisp/dired.el (dired-trivial-filenames): Use \` and \' to match
100774	string bounds.
100775
1007762017-07-31  Paul Eggert  <eggert@cs.ucla.edu>
100777
100778	Merge from gnulib
100779
100780	This incorporates:
100781	2017-07-30 Don't interpret EOVERFLOW to mean nonexistence
100782	* lib/tempname.c: Copy from gnulib.
100783
1007842017-07-30  Tino Calancha  <tino.calancha@gmail.com>
100785
100786	ls-lisp: Do not require em-glob at top of the file
100787
100788	Require em-glob inside 'ls-lisp--dired'.  This is necessary to
100789	not break the Emacs build.
100790	See following thread for details:
100791	https://lists.gnu.org/r/emacs-devel/2017-07/msg01083.html
100792	* lisp/ls-lisp.el (dired-goto-next-file)
100793	(dired-read-dir-and-switches, eshell-extended-glob):
100794	Add function declarations.
100795	* lisp/eshell/em-ls.el (dired-goto-next-file): Fix function declaration.
100796
1007972017-07-30  Michael Albinus  <michael.albinus@gmx.de>
100798
100799	* lisp/dired.el (dired-insert-directory): Move `file-remote-p' check up.
100800
100801	* test/lisp/net/tramp-tests.el (tramp-test17-dired-with-wildcards): New test.
100802
1008032017-07-30  Simen Heggestøyl  <simenheg@gmail.com>
100804
100805	Change default CSS property face
100806
100807	* lisp/textmodes/css-mode.el (css-property): Inherit from
100808	`font-lock-keyword-face' instead of `font-lock-variable-name-face' to
100809	distinguish CSS properties from variables.
100810
1008112017-07-30  Tino Calancha  <tino.calancha@gmail.com>
100812
100813	Dired: Handle posix wildcards in directory part
100814
100815	Allow Dired to handle calls like
100816	\(dired \"~/foo/*/*.el\"), that is, with wildcards within
100817	the directory part of the file argument (Bug#27631).
100818	* lisp/files.el (insert-directory-wildcard-in-dir-p): New predicate.
100819	(insert-directory-clean): New defun extracted from insert-directory.
100820	(insert-directory)
100821	* lisp/dired.el (dired-internal-noselect)
100822	(dired-insert-directory): Use the new predicate; when it's true,
100823	handle the directory wildcards with a shell call.
100824	* lisp/eshell/em-ls.el (eshell-ls-use-in-dired): Add/remove both advices.
100825	(eshell-ls-unload-hook): New defun.  Use it in
100826	eshell-ls-unload-hook instead of an anonymous function.
100827	(eshell-ls--dired)
100828	* lisp/ls-lisp.el (ls-lisp--dired):
100829	Advice dired to handle wildcards in the directory part with both
100830	eshell-ls and ls-lisp.
100831	* etc/NEWS: Announce it.
100832	* doc/emacs/dired.texi (Dired Enter): Update manual.
100833	* test/lisp/dired-tests.el (dired-test-bug27631): Add test.
100834
1008352017-07-29  Tino Calancha  <tino.calancha@gmail.com>
100836
100837	* lisp/find-lisp.el: Enable lexical binding
100838
100839	* lisp/find-dired.el: Enable lexical binding
100840
1008412017-07-29  Mark Oteiza  <mvoteiza@udel.edu>
100842
100843	* lisp/kmacro.el: Use lexical binding.
100844
1008452017-07-29  Mark Oteiza  <mvoteiza@udel.edu>
100846
100847	Use lexical-binding in dired-aux.el
100848
100849	* lisp/dired.el: Use lexical binding.
100850	(dired-do-shell-command): Remove unused bindings.
100851
1008522017-07-29  Mark Oteiza  <mvoteiza@udel.edu>
100853
100854	* lisp/ido.el: Use lexical binding.
100855
100856	* lisp/whitespace.el: Use lexical binding.
100857
1008582017-07-29  Stephen Berman  <stephen.berman@gmx.net>
100859
100860	artist.el: Avoid error with keyboard command invocation
100861
100862	* lisp/textmodes/artist.el (artist-mouse-choose-operation):
100863	Call x-popup-menu with t instead of last-nonmenu-event as the
100864	value of the position argument; this allows invoking the
100865	command from the keyboard without raising an error (bug#27819).
100866
1008672017-07-29  Stephen Berman  <stephen.berman@gmx.net>
100868
100869	Preserve point under 'dired-auto-revert-buffer' (third case)
100870
100871	* lisp/files.el (find-file): Use pop-to-buffer-same-window
100872	instead of switch-to-buffer.  This preserves Dired window
100873	point when dired-auto-revert-buffer is non-nil.  (Bug#27243)
100874
100875	* test/lisp/dired-tests.el (dired-test-bug27243-01)
100876	(dired-test-bug27243-02, dired-test-bug27243-03): New tests.
100877	The first two replace a previous test that combined them; that
100878	test intermittently fails in the Hydra build system, so maybe
100879	separating the two cases will help locate the point of
100880	failure.  The third test involves find-file but is here
100881	because it, like the others, is testing the effect of
100882	dired-auto-revert-buffer.
100883
1008842017-07-29  Allen Li  <vianchielfaura@gmail.com>  (tiny change)
100885
100886	Do not unset user key remaps in dired-x
100887
100888	* lisp/dired-x.el (dired-x-bind-find-file): Don't map any keys if user
100889	sets dired-x-hands-off-my-keys.  (Bug#27828)
100890
1008912017-07-29  Eli Zaretskii  <eliz@gnu.org>
100892
100893	Improve documentation of 'occur'
100894
100895	* doc/emacs/search.texi (Other Repeating Search):
100896	* lisp/replace.el (occur): Make the documentation of 'occur' be
100897	more accurate when matches overlap.  (Bug#27818)
100898
1008992017-07-29  Eli Zaretskii  <eliz@gnu.org>
100900
100901	Minor copyedits of comments in faces.el
100902
100903	* lisp/faces.el (face-font-family-alternatives): More info about
100904	requirements from "Monospace Serif".
100905
1009062017-07-29  Paul Eggert  <eggert@cs.ucla.edu>
100907
100908	Do not worry about paxctl on newer NetBSD
100909
100910	Problem reported privately by Thomas Klausner.
100911	* configure.ac (emacs_uname_r): New var.  Use it to avoid paxctl
100912	on newer NetBSD platforms, where it is not needed.  Also use it to
100913	simplify Cygwin diagnostic.
100914
1009152017-07-29  Eli Zaretskii  <eliz@gnu.org>
100916
100917	Clarify documentation of ':inherit' face attribute
100918
100919	* doc/lispref/display.texi (Face Attributes): Document the special
100920	treatment of 'unspecified' in the ':inherit' attribute.
100921
1009222017-07-28  Stefan Monnier  <monnier@iro.umontreal.ca>
100923
100924	* lisp/password-cache.el (password-data): Use a hash-table
100925
100926	* lisp/auth-source.el (auth-source-magic): Remove.
100927	(auth-source-forget+, auth-source-forget-all-cached): Adjust to new
100928	format of password-data.
100929	(auth-source-format-cache-entry): Just use a cons.
100930
100931	(password-cache-remove, password-cache-add, password-reset)
100932	(password-read-from-cache, password-in-cache-p): Adjust accordingly.
100933
100934	(Bug#26699)
100935
1009362017-07-28  Stefan Monnier  <monnier@iro.umontreal.ca>
100937
100938	* lisp/subr.el (define-symbol-prop): New function
100939
100940	(symbol-file): Make it find symbol property definitions.
100941
100942	* lisp/emacs-lisp/pcase.el (pcase-defmacro):
100943	* lisp/emacs-lisp/ert.el (ert-set-test): Use it instead of `put'.
100944	(ert-describe-test): Adjust call to symbol-file accordingly.
100945
1009462017-07-28  Stefan Monnier  <monnier@iro.umontreal.ca>
100947
100948	* lisp/subr.el (method-files): Move function to cl-generic.el
100949
100950	* lisp/emacs-lisp/cl-generic.el (cl-generic-p): New function.
100951	(cl--generic-method-files): New function, moved from subr.el.
100952	* lisp/emacs-lisp/edebug.el (edebug-instrument-function): Use them.
100953	* test/lisp/emacs-lisp/cl-generic-tests.el:
100954	* test/lisp/subr-tests.el: Move and adjust method-files tests accordingly.
100955
1009562017-07-28  Eli Zaretskii  <eliz@gnu.org>
100957
100958	Preserve this-command-keys across recursive-edit invocations
100959
100960	* src/minibuf.c (read_minibuf, read_minibuf_unwind): Save and
100961	restore this-command-keys, to preserve it across recursive-edit.
100962	(Bug#27470)
100963
1009642017-07-28  Eli Zaretskii  <eliz@gnu.org>
100965
100966	Improve doc string of 'locate-dominating-file'
100967
100968	* lisp/files.el (locate-dominating-file): Doc fix.  (Bug#27798)
100969
1009702017-07-28  Drew Adams  <drew.adams@oracle.com>
100971
100972	New commands 'apropos-local-variable', 'apropos-local-value'
100973
100974	* lisp/apropos.el (apropos-local-variable, apropos-local-value):
100975	New functions.  (Bug#27424)
100976
100977	* doc/emacs/help.texi (Apropos): Document 'apropos-local-variable'
100978	and 'apropos-local-value'.
100979	* etc/NEWS: Mention the new commands.
100980
1009812017-07-28  Stefan Monnier  <monnier@iro.umontreal.ca>
100982
100983	* lisp/loadhist.el (unload-feature): Remove ad-hoc ELP code
100984
100985	* lisp/emacs-lisp/elp.el (loadhist-unload-element): Un-instrument functions.
100986
1009872017-07-27  Alan Mackenzie  <acm@muc.de>
100988
100989	Fix C++ class initializers not always being fontified at mode start.
100990
100991	The problem here happened when an "outer list" of declarations moved beyond an
100992	"inner list" containing class initializers.  These weren't being checked for
100993	by the code.
100994
100995	Also, fix places in c-get-fontification-context where point is undefined.
100996
100997	* lisp/progmodes/cc-fonts.el (c-get-fontification-context): when argument
100998	not-front-decl is set, test for class initializers.  Also, anchor point in
100999	places where it is moved and is otherwise undefined.
101000
1010012017-07-27  Alan Mackenzie  <acm@muc.de>
101002
101003	Fix variables in C++ "for" statement not always being fontified.
101004
101005	The error happened when there was a comma inside template delimiters.
101006
101007	* lisp/progmodes/cc-fonts.el (c-get-fontification-context): In "for"
101008	statements, recognize template delimiters containing "," and "&".
101009
1010102017-07-27  Michael Albinus  <michael.albinus@gmx.de>
101011
101012	Add watchdog process to tramp-test36-asynchronous-requests
101013
101014	* test/lisp/net/tramp-tests.el (tramp--test-timeout-handler):
101015	New defun.
101016	(tramp-test36-asynchronous-requests): Use a watchdog process,
101017	listening for SIGUSR1.
101018
1010192017-07-27  Alan Mackenzie  <acm@muc.de>
101020
101021	CC Mode: Fix declarator being cut off from terminator by end of jit-lock chunk
101022
101023	If a declarator is so cut off, extend the fontification chunk to include it.
101024
101025	* lisp/progmodes/cc-mode.el (c-fl-decl-end): New function.
101026	(c-change-expand-fl-region, c-context-expand-fl-region): Use the new function.
101027
1010282017-07-27  Stefan Monnier  <monnier@iro.umontreal.ca>
101029
101030	* lisp/vc/smerge-mode.el: Avoid N² blow up in degenerate cases
101031
101032	(smerge--refine-long-words): New var.
101033	(smerge--refine-chopup-region): Use it.
101034
1010352017-07-27  Stefan Monnier  <monnier@iro.umontreal.ca>
101036
101037	* lisp/url/url-cookie.el: Use lexical-binding
101038
101039	(url-cookie-host-can-set-p): Remove unused var `last'.
101040	Use string-suffix-p.
101041	(url-cookie-list): De morgan.
101042	(url-cookie-quit): Remove.
101043	(url-cookie-mode): Inherit from special-mode.
101044	(url-cookie-mode-map): Simplify accordingly.
101045
1010462017-07-27  Stefan Monnier  <monnier@iro.umontreal.ca>
101047
101048	* lisp/calendar/todo-mode.el (todo-print-buffer-function): Rework docstring.
101049
101050	* lisp/ruler-mode.el (ruler-mode-ruler): Document problem.
101051
1010522017-07-27  Stefan Monnier  <monnier@iro.umontreal.ca>
101053
101054	* lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
101055
101056	Record this as the function's definition site if it's the first def.
101057
1010582017-07-26  Glenn Morris  <rgm@gnu.org>
101059
101060	* doc/lispref/loading.texi (When to Autoload): New section.
101061
1010622017-07-26  Glenn Morris  <rgm@gnu.org>
101063
101064	Stop using unibyte buffers for ert backtraces
101065
101066	* lisp/emacs-lisp/ert.el
101067	(ert-results-pop-to-backtrace-for-test-at-point):
101068	Set multibyte true, not false.  This copies a
101069	debugger-setup-buffer change from 2009-08-30, and stops the
101070	"Backtrace for" header line containing ^X and ^Y.
101071
1010722017-07-26  Dmitry Gutov  <dgutov@yandex.ru>
101073
101074	Fix semantic-symref-parse-tool-output-one-line after 644cdd1aa0
101075
101076	* lisp/cedet/semantic/symref/grep.el
101077	(semantic-symref-grep--line-re): Delete.
101078	(semantic-symref-parse-tool-output-one-line):
101079	Use regexp and group numbers from (grep-regexp-alist).
101080
1010812017-07-26  Grégoire Jadi  <daimrod@omecha.info>
101082
101083	Fix cl-defmethod indentation
101084
101085	* lisp/emacs-lisp/cl-generic.el (cl-defmethod):
101086	Declare (indent defun).  Fixes bug#23994.
101087
1010882017-07-26  Martin Rudalics  <rudalics@gmx.at>
101089
101090	Fix two customization types in frame.el
101091
101092	* lisp/frame.el (window-divider-default-bottom-width)
101093	(window-divider-default-right-width): Fix customization types.
101094
1010952017-07-26  Tino Calancha  <tino.calancha@gmail.com>
101096
101097	Dired: Support eshell-ls from the beginning if the user wants to
101098
101099	* lisp/dired.el (dired-insert-directory): Check for eshell-ls
101100	as well (Bug#27817).
101101	* test/lisp/dired-tests.el (dired-test-bug27817): Add test.
101102
1011032017-07-26  Mark Oteiza  <mvoteiza@udel.edu>
101104
101105	* lisp/progmodes/sh-script.el (sh-mode): Recognize mkshrc.
101106
1011072017-07-25  Stefan Monnier  <monnier@iro.umontreal.ca>
101108
101109	* lisp/emacs-lisp/eieio-compat.el (eieio--defgeneric-init-form):
101110
101111	Adjust to change in cl-generic-ensure-function.
101112
1011132017-07-25  Tino Calancha  <tino.calancha@gmail.com>
101114
101115	ls-lisp: Add an unload function and enable lexical binding
101116
101117	Enable lexical binding.
101118	* lisp/ls-lisp.el (ls-lisp-unload-function): New defun.
101119	* test/lisp/ls-lisp-tests.el (ls-lisp-unload): Add test.
101120
1011212017-07-25  Tino Calancha  <tino.calancha@gmail.com>
101122
101123	register-read-with-preview: Quit if user input C-g or ESC
101124
101125	* lisp/register.el (register-read-with-preview):
101126	Quit if user input C-g or ESC (bug#27634).
101127	* doc/emacs/regs.texi (Registers): Update manual.
101128	* test/lisp/register-tests.el (register-test-bug27634): Add test.
101129
1011302017-07-25  Mark Oteiza  <mvoteiza@udel.edu>
101131
101132	Recognize MirBSD Korn shell rc file
101133
101134	* lisp/files.el (auto-mode-alist): Add .mkshrc to the list.
101135
1011362017-07-25  Glenn Morris  <rgm@gnu.org>
101137
101138	* configure.ac: Be explicit about ImageMagick version in summary.
101139
1011402017-07-25  Andreas Schwab  <schwab@linux-m68k.org>
101141
101142	Properly align global lispsym
101143
101144	* lib-src/make-docfile.c (close_emacs_globals): Wrap struct
101145	Lisp_Symbols inside struct.
101146	* src/alloc.c (sweep_symbols): Update use of lispsym.
101147	* src/lisp.h (builtin_lisp_symbol): Likewise.
101148
1011492017-07-25  Paul Eggert  <eggert@cs.ucla.edu>
101150
101151	Do not use ImageMagick 7 and later
101152
101153	Suggested by Glenn Morris (Bug#25967#15).
101154	* configure.ac (IMAGEMAGICK_MODULE): Reject 7 and later.
101155
1011562017-07-25  Stefan Monnier  <monnier@iro.umontreal.ca>
101157
101158	* lisp/progmodes/perl-mode.el: Add support for indented here docs
101159
101160	* lisp/progmodes/perl-mode.el (perl-syntax-propertize-function):
101161	Recognize the new <<~ syntax for indented here docs.
101162	(perl-syntax-propertize-special-constructs): Adjust search of the
101163	end of here docs accordingly.
101164
101165	* test/manual/indent/perl.perl: Add test for indented here docs.
101166
1011672017-07-24  Stefan Monnier  <monnier@iro.umontreal.ca>
101168
101169	(loadhist-unload-element): Move ERT and cl-generic methods
101170
101171	* lisp/loadhist.el (loadhist-unload-element): Don't define cl-generic
101172	and ert methods here.
101173	(loadhist-unload-element) <(head define-type)>: Remove unused var `slots'.
101174
101175	* lisp/emacs-lisp/cl-generic.el (loadhist-unload-element): Define
101176	unload method for cl-defmethod.
101177	(cl-generic-ensure-function): Remove redundant `defalias'.
101178
101179	* lisp/emacs-lisp/ert.el (ert-set-test): Move the current-load-list
101180	setting here...
101181	(ert-deftest): ...from here.
101182	(loadhist-unload-element): Define unload method for ert-deftest.
101183
1011842017-07-24  Michael Albinus  <michael.albinus@gmx.de>
101185
101186	Fix Bug#27371
101187
101188	* lisp/loadhist.el (loadhist-unload-element): Declare for
101189	different entry types of `load-history'.
101190	(loadhist--restore-autoload): New variable.
101191	(loadhist--unload-function): New defun.
101192	(unload-feature): Use `loadhist-unload-element'.  Recommended by
101193	Stefan Monnier.  (Bug#27371)
101194
101195	* test/lisp/net/tramp-tests.el (tramp-test39-unload):
101196	Check, that the `tramp-file-name' structure has been unloaded.
101197
1011982017-07-24  Grégoire Jadi  <gjadi@omecha.info>
101199
101200	Ensure that we parse images right in shr.el
101201
101202	* lisp/net/shr.el (shr-image-fetched): Go back to the
101203	beginning of the buffer before trying to parse the image
101204	fetched.
101205
1012062017-07-24  Paul Eggert  <eggert@cs.ucla.edu>
101207
101208	Update .gitignore for Valgrind and no Automake
101209
101210	* .gitignore: Remove .deps/ since we no longer use Automake.
101211	Add vgcore.*[0-9], for debugging Emacs with Valgrind+GDB.
101212
1012132017-07-24  Paul Eggert  <eggert@cs.ucla.edu>
101214
101215	Merge from gnulib
101216
101217	This incorporates:
101218	2017-07-23 Rename module 'strftime' to 'nstrftime'
101219	* admin/merge-gnulib (GNULIB_MODULES): Add nstrftime, remove strftime.
101220	* build-aux/config.guess: Copy from gnulib.
101221	* lib/nstrftime.c: Rename from lib/strftime.c.
101222	* m4/nstrftime.m4: Rename from m4/strftime.m4.
101223	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
101224
1012252017-07-23  Philipp Stephani  <phst@google.com>
101226
101227	Add 'rx' pattern for pcase.
101228
101229	* lisp/emacs-lisp/rx.el (rx): New pcase macro.
101230	* test/lisp/emacs-lisp/rx-tests.el (rx-pcase): Add unit test.
101231
1012322017-07-23  Mark Oteiza  <mvoteiza@udel.edu>
101233
101234	Use a named function for global minor mode turn-on argument
101235
101236	* lisp/display-line-numbers.el (turn-on-display-line-numbers-mode):
101237	New function.
101238	(global-display-line-numbers-mode): Use it.
101239
1012402017-07-23  Charles A. Roelli  <charles@aurox.ch>
101241
101242	Enable GUI Emacs without 'make install' on macOS (Bug #27645)
101243
101244	* nextstep/INSTALL: Correct it, and mention that Emacs can be run
101245	from 'src/emacs'.
101246
101247	* src/nsterm.m (applicationDidFinishLaunching:): When Emacs is
101248	launched outside of a macOS application bundle, change its
101249	activation policy from the default 'prohibited' to 'regular'.
101250
1012512017-07-23  Alan Mackenzie  <acm@muc.de>
101252
101253	Convert CC Mode's c-found-types from an obarray to a hash table.
101254
101255	* lisp/progmodes/cc-engine.el (c-clear-found-types): create a hash table
101256	rather than an obarray.
101257	(c-copy-found-types): Remove.
101258	(c-add-type, c-unfind-type, c-check-type, c-list-found-types): Amend to use
101259	the new hash table.
101260	(c-forward-<>-arglist): Use copy-hash-table rather than c-copy-found-types.
101261
1012622017-07-23  Lars Ingebrigtsen  <larsi@gnus.org>
101263
101264	Fix image/svg+xml display in shr
101265
101266	* lisp/net/shr.el (shr-put-image): Display svg images as svg
101267	(bug#27799).  I suspect the previous change was checked in by
101268	accident in conjuction with some other svg changes.
101269
1012702017-07-23  Michael Albinus  <michael.albinus@gmx.de>
101271
101272	* lisp/display-line-numbers.el (display-line-numbers-type): Autoload it.
101273
1012742017-07-23  Glenn Morris  <rgm@gnu.org>
101275
101276	Don't automatically enable Gconf if Gsettings was found
101277
101278	* configure.ac (HAVE_GCONF) [HAVE_GSETTINGS]:
101279	Don't test for Gconf unless specifically requested.
101280	Gconf was deprecated in favor of Gsettings several years ago.
101281
1012822017-07-23  Glenn Morris  <rgm@gnu.org>
101283
101284	* configure.ac (MODULES_SUFFIX): Always give it a value.
101285
101286	This prevents a Makefile thinko like "rm *${MODULE_SUFFIX}".
101287
1012882017-07-23  Glenn Morris  <rgm@gnu.org>
101289
101290	* doc/emacs/frames.texi (Fonts): Mention Gsettings.
101291
1012922017-07-22  Michael Albinus  <michael.albinus@gmx.de>
101293
101294	Add line numbers display to the Options menu
101295
101296	* lisp/menu-bar.el (toggle-display-line-numbers): Remove.
101297	(menu-bar-display-line-numbers-mode): New defun.
101298	(menu-bar-showhide-line-numbers-menu): New defvar.
101299	(menu-bar-showhide-menu): Use `menu-bar-showhide-line-numbers-menu'
101300
1013012017-07-22  Noam Postavsky  <npostavs@gmail.com>
101302
101303	Signal error for symbol names with strange quotes (Bug#2967)
101304
101305	* src/lread.c (read1): Signal an error when a symbol starts with a
101306	non-escaped quote-like character.
101307	* test/src/lread-tests.el (lread-tests--funny-quote-symbols): New
101308	test.
101309	* etc/NEWS: Announce change.
101310
1013112017-07-22  Noam Postavsky  <npostavs@gmail.com>
101312
101313	Revert "Let delete-selection-mode work with popup-menu commands (Bug#27569)"
101314
101315	It turns out that this change is not needed, and it leaves several
101316	command loops settings not done.
101317
101318	https://lists.gnu.org/r/emacs-devel/2017-07/msg00757.html
101319	https://lists.gnu.org/r/emacs-devel/2017-07/msg00840.html
101320
1013212017-07-22  Alexander Gramiak  <agrambot@gmail.com>
101322
101323	Add a minor mode interface for display-line-numbers
101324
101325	* lisp/cus-start.el: Use the new display-line-numbers group.
101326	* lisp/display-line-numbers.el: New file.
101327
101328	* doc/emacs/custom.texi (Init Rebinding): Re-add entry that used to
101329	belong to linum-mode.
101330	* doc/emacs/modes.texi (Minor Modes): Summarize the mode.
101331	* etc/NEWS: Document display-line-numbers-mode and its customization
101332	variables, and mention that display-line-numbers-width is
101333	buffer-local.
101334
101335	* src/xdisp.c (syms_of_xdisp) <display-line-numbers-width>: Fix a
101336	typo.
101337
1013382017-07-22  vividsnow  <vividsnow@gmail.com>  (tiny change)
101339
101340	Support indented HERE-DOCs in cperl-mode
101341
101342	* lisp/progmodes/cperl-mode.el (cperl-find-pods-heres): Support
101343	indented here-docs.  (Bug#27254) (Bug#27697)
101344
1013452017-07-22  Eli Zaretskii  <eliz@gnu.org>
101346
101347	Document the support for "scrollBar" X resource
101348
101349	* doc/emacs/xresources.texi (Table of Resources): Document the new
101350	'scrollBar' setting.
101351	* etc/NEWS: Document the new 'scrollBar' setting.
101352
1013532017-07-22  Matthew Bauer  <mjbauer95@gmail.com>  (tiny change)
101354
101355	Add 'scroll-bar-mode' to settings in 'x-apply-session-resources'
101356
101357	* lisp/startup.el (x-apply-session-resources): Add scroll-bar-mode
101358	settings.
101359
1013602017-07-22  Alexander Kuleshov  <kuleshovmail@gmail.com>
101361
101362	Update ld-script mode (bug#27629)
101363
101364	* lisp/progmodes/ld-script.el: (ld-script-keywords): New commands
101365	NOCROSSREFS_TO and HIDDEN added.  Fix documentation sections
101366	numbers for PROVIDE/PROVIDE_HIDDEN commands.
101367	(ld-script-builtins): New builtin function LOG2CEIL added.
101368
1013692017-07-22  Eli Zaretskii  <eliz@gnu.org>
101370
101371	Index 'rectangle' in the ELisp manual
101372
101373	* doc/lispref/text.texi (Registers): Index the "rectangle" value.
101374	(Bug#27541)
101375
1013762017-07-22  Eli Zaretskii  <eliz@gnu.org>
101377
101378	* lisp/subr.el (add-to-history): Doc fix.  (Bug#27494)
101379
1013802017-07-22  Eli Zaretskii  <eliz@gnu.org>
101381
101382	Doc fixes for kmacro.el functions
101383
101384	* lisp/kmacro.el (kmacro-start-macro, kmacro-call-macro)
101385	(kmacro-end-and-call-macro): Don't use "permanent name", as that
101386	could be misinterpreted.  (Bug#27492)
101387
1013882017-07-22  Charles A. Roelli  <charles@aurox.ch>
101389
101390	ElDoc: add docstrings and minor refactoring
101391
101392	* lisp/emacs-lisp/eldoc.el (eldoc-edit-message-commands): Add
101393	docstring.
101394	(turn-on-eldoc-mode): Fix capitalization.
101395	(eldoc--supported-p): Add docstring.
101396	(eldoc-schedule-timer): Add docstring and use
101397	'eldoc--supported-p'.
101398	(eldoc-message): Add docstring and make calling convention
101399	clearer.
101400	(eldoc--message-command-p):
101401	(eldoc-pre-command-refresh-echo-area):
101402	(eldoc-display-message-p):
101403	(eldoc-display-message-no-interference-p):
101404	(eldoc-print-current-symbol-info):
101405	(eldoc-docstring-format-sym-doc):
101406	(eldoc-add-command, eldoc-add-command-completions):
101407	(eldoc-remove-command, eldoc-remove-command-completions):
101408	Add docstring.  (Bug#27230)
101409
1014102017-07-22  Fabrice Bauzac  <libnoon@gmail.com>  (tiny change)
101411
101412	Mention 'C-M-i' as key binding for 'ispell-complete-word'
101413
101414	* doc/emacs/fixit.texi (Spelling): ispell-complete-word
101415	can also be invoked by C-M-i.  (Bug#27349)
101416
1014172017-07-22  Fabrice Bauzac  <libnoon@gmail.com>  (tiny change)
101418
101419	Fix the eww-search-words description in the Emacs manual
101420
101421	* doc/emacs/search.texi (Word Search):
101422	Include the key binding for eww-search-words in the manual.
101423	Fix the spelling of the 'eww-search-words' command.
101424
1014252017-07-22  Andrew L. Moore  <slewsys@gmail.com>
101426
101427	Introduce defcustom 'executable-prefix-env'
101428
101429	* lisp/progmodes/executable.el (executable-prefix): Update the doc
101430	string.
101431	(executable-prefix-env): New defcustom.
101432	(executable-set-magic): Use executable-prefix-env.
101433
101434	* etc/NEWS: Document the new variable.
101435
1014362017-07-22  Glenn Morris  <rgm@gnu.org>
101437
101438	* test/lisp/ibuffer-tests.el: Delete temporary files.
101439
1014402017-07-21  Glenn Morris  <rgm@gnu.org>
101441
101442	Further attempt to avoid hang in network-stream-tests
101443
101444	* test/lisp/net/network-stream-tests.el (connect-to-tls-ipv6-nowait):
101445	Limit the time we wait for the external process.
101446
1014472017-07-21  Glenn Morris  <rgm@gnu.org>
101448
101449	Stop skipping many ibuffer tests by default
101450
101451	* test/lisp/ibuffer-tests.el (ibuffer-0autoload):
101452	Rename so it sorts first.
101453	(ibuffer-save-filters, ibuffer-filter-inclusion-1)
101454	(ibuffer-filter-inclusion-2, ibuffer-filter-inclusion-3)
101455	(ibuffer-filter-inclusion-4, ibuffer-filter-inclusion-5)
101456	(ibuffer-filter-inclusion-6, ibuffer-filter-inclusion-7)
101457	(ibuffer-filter-inclusion-8, ibuffer-decompose-filter)
101458	(ibuffer-and-filter, ibuffer-or-filter, ibuffer-format-qualifier)
101459	(ibuffer-unary-operand): Require ibuf-ext so tests not skipped.
101460
1014612017-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
101462
101463	Use lexical-binding in todo-mode.el
101464
101465	Adjust code accordingly and make various minor improvements.
101466
101467	* lisp/calendar/todo-mode.el: Enable lexical-binding.
101468	(dayname, monthname, day, month, year): Make forward defvars
101469	of these keywords from macros defined in calendar.el; wrap
101470	them in with-no-warnings.
101471	(todo-files, todo-files-function, todo-date-pattern)
101472	(todo-mode-line-function, todo-show, todo-forward-category)
101473	(todo-edit-item--header, todo-set-category-number)
101474	(todo-adjusted-category-label-length)
101475	(todo-total-item-counts, todo-filter-items)
101476	(todo-print-buffer-function, todo-convert-legacy-date-time)
101477	(todo-category-number, todo-category-completions)
101478	(todo-read-file-name, todo-read-category)
101479	(todo-validate-name, todo-read-date)
101480	(todo-set-show-current-file, todo-modes-set-1)
101481	(todo-modes-set-2, todo-modes-set-3, todo-mode):
101482	Use #' instead of ' to quote functions.
101483	(todo-files): Use \' instead of $ in regexp.
101484	(todo--files-type-list): New function.
101485	(todo-default-todo-file, todo-category-completions-files)
101486	(todo-filter-files, todo-multiple-filter-files)
101487	(todo-reevaluate-default-file-defcustom)
101488	(todo-reevaluate-category-completions-files-defcustom)
101489	(todo-reevaluate-filter-files-defcustom): Use it.
101490	(todo-show, todo-rename-file, todo-move-category)
101491	(todo-edit-item--text, todo-edit-quit, todo-edit-item--header)
101492	(todo-item-undone, todo-unarchive-items, todo-search)
101493	(todo-filter-items, todo-filter-items-1, todo-find-item)
101494	(todo-category-select, todo-read-date)
101495	(todo-nondiary-marker-matcher, todo-date-string-matcher)
101496	(todo-diary-expired-matcher, todo-convert-legacy-files)
101497	(todo-read-category): Reformat to avoid code hiding behind a
101498	more deeply embedded element.
101499	(todo-forward-category, todo-set-category-number):
101500	Use 'funcall' instead of 'apply'.
101501	(todo-toggle-mark-item, todo-edit-item--diary-inclusion)
101502	(todo-edit-category-diary-inclusion)
101503	(todo-insert-sort-button, todo-insert-category-line)
101504	(todo-multiple-filter-files): Mark unused local variables.
101505	(todo-edit-item--header, todo-move-item, todo-print-buffer)
101506	(todo-edit-item--header, todo-move-item, todo-check-file)
101507	(todo-edit-item--next-key): Remove unused local variables.
101508	(todo-insert-sort-button, todo-insert-category-line):
101509	Use a closure instead of a backquoted lambda.
101510	(todo-update-categories-display, todo-print-buffer): Simplify code.
101511	(todo-print-buffer-function): Document calling convention.
101512	(todo-category-completions): Use cl-pushnew instead of add-to-list.
101513	(todo-mode-map, todo-archive-mode-map)
101514	(todo-categories-mode-map, todo-filtered-items-mode-map):
101515	Remove superfluous call of suppress-keymap, since it's already
101516	in the parent special-mode-map.
101517
1015182017-07-21  Tino Calancha  <tino.calancha@gmail.com>
101519
101520	dired: Revert buffer when DIRNAME is a cons
101521
101522	* lisp/dired.el (dired-internal-noselect): Revert buffer if DIR-OR-LIST
101523	is a cons, or dired-directory is a cons and DIR-OR-LIST a string (Bug#7131).
101524	Update the comments.
101525	* test/lisp/dired-tests.el (dired-test-bug7131): Test should pass.
101526
1015272017-07-21  Tino Calancha  <tino.calancha@gmail.com>
101528
101529	Handle when dired-directory is a cons in some Dired functions
101530
101531	* lisp/dired-aux.el (dired-rename-subdir-1)
101532	* lisp/dired-x.el (dired-mark-omitted):
101533	Handle when dired-directory is a cons.
101534
1015352017-07-21  Noam Postavsky  <npostavs@gmail.com>
101536
101537	Make eshell-next-prompt more reliable (Bug#27405)
101538
101539	* lisp/eshell/em-prompt.el (eshell-next-prompt): Search for
101540	`eshell-prompt-regexp' (and `read-only' text-property if
101541	`eshell-highlight-prompt' is set) rather than trying to use
101542	`forward-paragraph'.
101543	(eshell-previous-prompt): Don't count prompt on current line.
101544
1015452017-07-21  Paul Eggert  <eggert@cs.ucla.edu>
101546
101547	Simplify recent gnutls.c changes
101548
101549	* src/gnutls.c (clear_storage) [HAVE_GNUTLS3_AEAD]: Remove.
101550	All uses replaced by calls to explicit_bzero; that’s clear enough.
101551	(gnutls_symmetric_aead) [HAVE_GNUTLS3_AEAD]: Simplify by
101552	coalescing duplicate actions.  There is no need to invoke
101553	SAFE_FREE before calling ‘error’.
101554
1015552017-07-20  Michael Albinus  <michael.albinus@gmx.de>
101556
101557	Stylistic changes in tramp-cache.el
101558
101559	* lisp/net/tramp-cache.el (tramp-get-file-property)
101560	(tramp-set-file-property): Use `bound-and-true-p'.  Add
101561	counter variables to `tramp-cache-unload-hook'.
101562
1015632017-07-20  Glenn Morris  <rgm@gnu.org>
101564
101565	* admin/notes/hydra: Small updates.
101566
1015672017-07-20  Glenn Morris  <rgm@gnu.org>
101568
101569	Make tramp unloading handle debug counter variables
101570
101571	* lisp/net/tramp-cache.el (tramp-get-file-property)
101572	(tramp-set-file-property): Add counter variables to tramp-unload-hook.
101573
1015742017-07-20  Eli Zaretskii  <eliz@gnu.org>
101575
101576	Fix hscrolling calculations when display-line-numbers is set
101577
101578	* src/xdisp.c (move_it_in_display_line_to): Account for line
101579	numbers in hscrolled lines.  (Bug#27756)
101580
1015812017-07-20  Katsumi Yamaoka  <yamaoka@jpl.org>
101582
101583	Fix the bogus change made 13 years ago (bug#27084)
101584
101585	* lisp/gnus/gnus-sum.el (gnus-summary-toggle-header):
101586	Fix the way to test if there is no visible header (bug#27084).
101587
1015882017-07-20  Noam Postavsky  <npostavs@gmail.com>
101589
101590	Use grep's --null option (Bug#6843)
101591
101592	* lisp/progmodes/grep.el (grep-use-null-filename-separator): New option.
101593	(grep--regexp-alist-column, grep--regexp-alist-bin-matcher)
101594	(grep-with-null-regexp-alist, grep-fallback-regexp-alist): New
101595	constants, replacing `grep-regexp-alist'.
101596	(grep-regex-alist): Mark the variable obsolete, add a new function of
101597	the same name to replace it.
101598	(grep-compute-defaults): Compute default for
101599	`grep-use-null-filename-separator'.
101600	(grep-mode): Set compilation-error-regexp-alist (buffer locally) to the
101601	value of `grep-with-null-regexp-alist' or `grep-fallback-regexp-alist'
101602	according to `grep-use-null-filename-separator'.
101603	* lisp/progmodes/xref.el (xref-collect-matches): Call
101604	`grep-regex-alist' instead of the obsolete variable.  Don't hardcode
101605	grep-regexp-alist match groups.
101606	* etc/NEWS: Announce new use of --null.  Move 'grep-save-buffers'
101607	item under "Grep" heading as well.
101608
1016092017-07-19  Philipp Stephani  <phst@google.com>
101610
101611	* src/gnutls.c (clear_storage): Define only if needed.
101612
1016132017-07-19  Stephen Berman  <stephen.berman@gmx.net>
101614
101615	Adjust todo-quit to recent change in dired
101616
101617	* lisp/calendar/todo-mode.el (todo-quit): Use quit-window instead of
101618	bury-buffer to exit todo-mode.  This restores the desired behavior
101619	of not immediately returning to the exited todo-mode buffer on
101620	quitting another buffer, which a dired bug fix had changed (see
101621	https://lists.gnu.org/r/emacs-devel/2017-07/msg00739.html).
101622
1016232017-07-19  Tino Calancha  <tino.calancha@gmail.com>
101624
101625	Add test for bugs 7131, 27762
101626
101627	Require 'ls-lisp' at top of the file.
101628	* test/lisp/dired-tests.el (dired-test-bug7131, dired-test-bug27762):
101629	New tests.
101630	(dired-test-bug27693): Delete Dired buffer at the end.
101631
1016322017-07-18  Michael Albinus  <michael.albinus@gmx.de>
101633
101634	* admin/notes/hydra: Mention environment variable EMACS_HYDRA_CI.
101635
1016362017-07-18  Stefan Monnier  <monnier@iro.umontreal.ca>
101637
101638	* lisp/emacs-lisp/nadvice.el (advice--defalias-fset): Strip advices
101639
101640	This tries to make sure that (defalias F (symbol-function F)) stays a no-op.
101641
1016422017-07-18  Glenn Morris  <rgm@gnu.org>
101643
101644	Use a more specific test for running on hydra.nixos.org
101645
101646	* lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
101647	* test/Makefile.in (WRITE_LOG):
101648	* test/lisp/filenotify-tests.el:
101649	* test/lisp/emacs-lisp/eieio-tests/eieio-test-methodinvoke.el
101650	(eieio-test-method-order-list-6):
101651	* test/lisp/emacs-lisp/eieio-tests/eieio-tests.el
101652	(eieio-test-37-obsolete-name-in-constructor):
101653	* test/lisp/net/tramp-tests.el: Replace NIX_STORE with EMACS_HYDRA_CI.
101654
1016552017-07-18  Eli Zaretskii  <eliz@gnu.org>
101656
101657	Avoid infloop due to Eshell's "smart" redisplay
101658
101659	* src/xdisp.c (pos_visible_p): Save and restore the window's
101660	mode-line and header-line height.  (Bug#27752)
101661
1016622017-07-18  Stefan Monnier  <monnier@iro.umontreal.ca>
101663
101664	* lisp/emacs-lisp/cl-lib.el (cl--old-struct-type-of): Accept `[]'
101665
1016662017-07-18  Eli Zaretskii  <eliz@gnu.org>
101667
101668	Fix indentation when display-line-numbers is non-nil
101669
101670	* src/xdisp.c (x_produce_glyphs): Fix a typo in deciding whether
101671	to go one more tab stop to display a TAB.  (Bug#27743)
101672
1016732017-07-18  Lars Ingebrigtsen  <larsi@gnus.org>
101674
101675	Don't use gtk_widget_get_scale_factor on old GTK3 versions
101676
101677	* src/gtkutil.c (xg_get_scale): gtk_widget_get_scale_factor is
101678	only present since GTK 3.10.
101679
1016802017-07-18  Noam Postavsky  <npostavs@gmail.com>
101681
101682	Let delete-selection-mode work with popup-menu commands (Bug#27569)
101683
101684	* lisp/menu-bar.el (popup-menu): Run `pre-command-hook' with
101685	`this-command' set to the selected command.
101686
1016872017-07-18  Paul Eggert  <eggert@cs.ucla.edu>
101688
101689	Port gnutls.c to older (buggier?) GnuTLS
101690
101691	Problem reported for GnuTLS 3.2.1 by Glenn Morris in:
101692	https://lists.gnu.org/r/emacs-devel/2017-07/msg00716.html
101693	https://lists.gnu.org/r/emacs-devel/2017-07/msg00742.html
101694	Although I don't see how this bug can occur with vanilla GnuTLS 3.2.1,
101695	perhaps hydra was using a modified GnuTLS.
101696	* src/gnutls.c (Fgnutls_ciphers): Don't assume GNUTLS_CIPHER_NULL
101697	is at the end of the list returned by gnutls_cipher_list,
101698	or that the earlier ciphers all have non-null names.
101699
1017002017-07-17  Vincent Belaïche  <vincentb1@users.sourceforge.net>
101701
101702	Fix relocation with named cell referred to by a one-symbol formula.
101703
101704	* lisp/ses.el (ses-replace-name-in-formula): Fix bug for it to
101705	work also with one symbol formulas.
101706
101707	* test/lisp/ses-tests.el
101708	(ses-tests-renaming-cell-with-one-symbol-formula): Add new
101709	test for renaming with relocating a one symbol formula.
101710
1017112017-07-17  Vincent Belaïche  <vincentb1@users.sourceforge.net>
101712
101713	Fix symbol completion and document it.
101714
101715	* doc/misc/ses.texi (Configuring what printer function
101716	applies): Add description of keys for completing local printer
101717	symbols and listing local printers in a help buffer.
101718	(Formulas): Add decription for key to list the named cell
101719	symbols in a help buffer.
101720
101721	* lisp/ses.el (ses-completion-keys): New constant.
101722	(ses--completion-table): New defvar.
101723	(ses--list-orig-buffer): New defvar.
101724	(ses-mode-edit-map): Fixed for symbol completion, plus add
101725	help functions to list named cells or local printers.
101726	(ses-edit-cell-complete-symbol)
101727	(ses--edit-cell-completion-at-point-function): New defuns for
101728	completion during formula edition.
101729	(ses-edit-cell): Redefine dynamically edit keymap for
101730	completion keys to point at the right function.
101731	(ses-read-printer-complete-symbol)
101732	(ses--read-printer-completion-at-point-function): New defuns
101733	for completion during printer edition.
101734	(ses-read-printer): Redefine dynamically edit keymap for
101735	completion keys to point at the right function.
101736	(ses-list-local-printers): New defun.
101737	(ses-list-named-cells): New defun.
101738
1017392017-07-17  Lars Ingebrigtsen  <larsi@gnus.org>
101740
101741	Move comments around
101742
1017432017-07-17  Lars Ingebrigtsen  <larsi@gnus.org>
101744
101745	Make scaling work (?) on pre-GTK3 systems
101746
101747	* src/gtkutil.c (xg_get_gdk_scale): Reinstate function.
101748	(xg_get_scale): Use it on non-GTK3 systems.
101749
1017502017-07-17  Lars Ingebrigtsen  <larsi@gnus.org>
101751
101752	Always return the GDK scale
101753
101754	* src/gtkutil.c (xg_get_scale): Return the GDK scale always.
101755
1017562017-07-17  Lars Ingebrigtsen  <larsi@gnus.org>
101757
101758	Remove usage of the GDK_SCALE variable
101759
101760	* src/gtkutil.c (xg_get_gdk_scale): Remove.
101761	(xg_get_default_scrollbar_height)
101762	(xg_get_default_scrollbar_width): Pass in a frame to check for
101763	scaling.
101764	(xg_frame_set_char_size): Use the API for querying scale
101765	instead of looking at the GDK_SCALE variable.
101766	(xg_get_default_scrollbar_width): Ditto.
101767	(xg_get_default_scrollbar_height): Ditto.
101768	(xg_update_scrollbar_pos): Ditto.
101769
101770	* src/xfns.c (x_set_scroll_bar_default_height): Pass in the
101771	frame to get the width.
101772
1017732017-07-17  Lars Ingebrigtsen  <larsi@gnus.org>
101774
101775	Get positions of menus and tooltips right on HiDPI
101776
101777	* src/gtkutil.c (xg_get_scale): New function.
101778	(xg_show_tooltip): Use it.
101779
101780	* src/xmenu.c (create_and_show_popup_menu): Put menus in the
101781	right place.
101782
1017832017-07-17  Eli Zaretskii  <eliz@gnu.org>
101784
101785	Allow user control on what starts and ends a paragraph for bidi
101786
101787	* src/buffer.h (struct buffer): New members
101788	bidi_paragraph_separate_re_ and bidi_paragraph_start_re_.
101789	* src/buffer.c (bset_bidi_paragraph_start_re)
101790	(bset_bidi_paragraph_separate_re): New setters/
101791	(Fbuffer_swap_text): Swap the values of bidi-paragraph-start-re and
101792	bidi-paragraph-separate-re.
101793	(init_buffer_once): Init the values of bidi-paragraph-start-re and
101794	bidi-paragraph-separate-re.
101795	(syms_of_buffer) <bidi-paragraph-start-re, bidi-paragraph-separate-re>:
101796	New per-buffer variables.
101797	* src/bidi.c (bidi_at_paragraph_end, bidi_find_paragraph_start):
101798	Support bidi-paragraph-start-re and bidi-paragraph-separate-re.
101799	(bidi_move_to_visually_next): Handle correctly the case when the
101800	separator matches an empty string.  (Bug#27526)
101801
101802	* doc/emacs/mule.texi (Bidirectional Editing):
101803	* doc/lispref/display.texi (Bidirectional Display): Document
101804	bidi-paragraph-start-re and bidi-paragraph-separate-re.
101805
101806	* etc/NEWS: Mention bidi-paragraph-start-re and
101807	bidi-paragraph-separate-re.
101808
1018092017-07-17  Tino Calancha  <tino.calancha@gmail.com>
101810
101811	* lisp/emacs-lisp/map.el (map-put): Fix redundancy in docstring.
101812
1018132017-07-17  Tino Calancha  <tino.calancha@gmail.com>
101814
101815	alist-get: Add optional arg TESTFN
101816
101817	If TESTFN is non-nil, then it is the predicate to lookup
101818	the alist.  Otherwise, use 'eq' (Bug#27584).
101819	* lisp/subr.el (alist-get): Add optional arg FULL.
101820	* lisp/emacs-lisp/map.el (map-elt, map-put): Add optional arg TESTFN.
101821	* lisp/emacs-lisp/gv.el (alist-get): Update expander.
101822	* doc/lispref/lists.texi (Association Lists): Update manual.
101823	* etc/NEWS: Announce the changes.
101824	* test/lisp/emacs-lisp/map-tests.el (test-map-put-testfn-alist)
101825	(test-map-elt-testfn): New tests.
101826
1018272017-07-17  Michael Albinus  <michael.albinus@gmx.de>
101828
101829	Fix `tramp-test39-unload'
101830
101831	* test/lisp/net/tramp-tests.el (tramp--test-instrument-test-case-p)
101832	(tramp--test-instrument-test-case): Rename.  Adapt all callees.
101833	(tramp-test36-asynchronous-requests): Bind `timer-max-repeats'.
101834	(tramp-test39-unload): Expect it to pass.  Ignore buffer-local
101835	variables and autoload functions; they are not removed.  Check
101836	also for `-function(s)'.
101837
1018382017-07-17  Stephen Berman  <stephen.berman@gmx.net>
101839
101840	Preserve point under 'dired-auto-revert-buffer' (second case)
101841
101842	* lisp/dired.el (dired): Use pop-to-buffer-same-window instead
101843	of switch-to-buffer.  This preserves Dired window point when
101844	dired-auto-revert-buffer is non-nil.  (Bug#27243)
101845
101846	* test/lisp/dired-tests.el (dired-test-bug27243): New test.
101847
1018482017-07-17  Martin Rudalics  <rudalics@gmx.at>
101849
101850	Have Fgnutls_available_p return Qnil when GNUTLS is undefined
101851
101852	* src/gnutls.c (Fgnutls_available_p): Return Qnil when GNUTLS is
101853	undefined to allow --with-gnutls=no builds to proceed.
101854
1018552017-07-17  Paul Eggert  <eggert@cs.ucla.edu>
101856
101857	* src/gnutls.c: Restore some comments.
101858
1018592017-07-17  Paul Eggert  <eggert@cs.ucla.edu>
101860
101861	Use memset, not bzero
101862
101863	* src/ftcrfont.c (ftcrfont_glyph_extents): Use memset instead
101864	of the (less-portable) bzero.
101865
1018662017-07-17  Paul Eggert  <eggert@cs.ucla.edu>
101867
101868	Use explicit_bzero to clear GnuTLS keys
101869
101870	* admin/merge-gnulib (GNULIB_MODULES): Add explicit_bzero.
101871	* lib/explicit_bzero.c, m4/explicit_bzero.m4: New files.
101872	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
101873	* src/gnutls.c (clear_storage): New function.
101874	(gnutls_symmetric_aead): Use it instead of memset.
101875
1018762017-07-17  Paul Eggert  <eggert@cs.ucla.edu>
101877
101878	Merge from gnulib
101879
101880	This incorporates:
101881	2017-07-16 explicit_bzero: new module
101882	2017-07-15 getdtablesize: Add minimal support for OpenVMS.
101883	* lib/getdtablesize.c, lib/string.in.h, m4/getdtablesize.m4:
101884	* m4/string_h.m4:
101885	Copy from Gnulib.
101886	* lib/gnulib.mk.in: Regenerate.
101887
1018882017-07-17  Dieter Deyke  <dieter.deyke@gmail.com>
101889
101890	Fix vc-src-dir-status-files
101891
101892	* lisp/vc/vc-src.el (vc-src-dir-status-files): Fix broken
101893	copy-paste from b1a765b3 (bug#27641).
101894
1018952017-07-16  Wilfred Hughes  <me@wilfred.me.uk>
101896
101897	Fix mismatched parens
101898
101899	* etc/NEWS.21: Remove excess parenthesis in code example
101900
1019012017-07-16  Alan Third  <alan@idiocy.org>
101902
101903	Add missing declare-function for new function
101904
101905	* lisp/frame.el: Add declare function for
101906	ns-mouse-absolute-pixel-position.
101907
1019082017-07-16  R. Bernstein  <rocky@gnu.org>
101909
101910	Realgud for tango themes
101911
1019122017-07-16  Noam Postavsky  <npostavs@gmail.com>
101913
101914	Fix test when running from test/lisp/subr-tests.elc
101915
101916	* test/lisp/subr-tests.el (subr-test-backtrace-simple-tests): Don't
101917	assume a lambda expression will be `equal' to its quoted form.  That's
101918	not true if the lambda expression has been compiled.
101919
1019202017-07-15  Alan Third  <alan@idiocy.org>
101921
101922	Fix some frame handling issues on NS
101923
101924	* lisp/frame.el (mouse-absolute-pixel-position): Use new NS function.
101925	* src/nsfns.m (Sns_mouse_absolute_pixel_position): New function.
101926	* src/nsterm.m (x_make_frame_visible): Re-establish parent-child
101927	relationship if it's broken.
101928
1019292017-07-15  Tino Calancha  <tino.calancha@gmail.com>
101930
101931	ls-lisp: Fix file size format
101932
101933	* lisp/ls-lisp.el (ls-lisp-filesize-d-fmt, ls-lisp-filesize-f-fmt)
101934	(ls-lisp-filesize-b-fmt): Add space in front (Bug#27693).
101935	* test/lisp/dired-tests.el (dired-test-bug27693): Add test.
101936
1019372017-07-15  Eli Zaretskii  <eliz@gnu.org>
101938
101939	Avoid link errors with older versions of GnuTLS
101940
101941	* src/gnutls.c (Fgnutls_ciphers, gnutls_symmetric_aead)
101942	(Fgnutls_macs, Fgnutls_digests): Conditionally compile code that
101943	calls GnuTLS functions which might be unavailable in older
101944	versions of GnuTLS.
101945
1019462017-07-15  Eli Zaretskii  <eliz@gnu.org>
101947
101948	Improve comments in faces.el
101949
101950	* lisp/faces.el (face-font-family-alternatives): Improve
101951	commentary.
101952
1019532017-07-15  Eli Zaretskii  <eliz@gnu.org>
101954
101955	Improve some GnuTL error messages
101956
101957	* src/gnutls.c (gnutls_symmetric_aead, gnutls_symmetric):
101958	* src/fns.c (Fsecure_hash_algorithms): Fix error messages.
101959
1019602017-07-15  Eli Zaretskii  <eliz@gnu.org>
101961
101962	Fix the Elisp manual wrt GnuTL cryptography
101963
101964	* doc/lispref/elisp.texi (Top): Update the master menu.
101965	* doc/lispref/text.texi (GnuTLS Cryptography): Add a @menu, to
101966	avoid errors in makeinfo.
101967
1019682017-07-15  Eli Zaretskii  <eliz@gnu.org>
101969
101970	Fix compilation of gnutls.c with older GnuTLS
101971
101972	* src/gnutls.c (syms_of_gnutls): Condition some defsubr's
101973	on HAVE_GNUTLS3, to avoid compilation errors when GnuTLS
101974	v3.X is not available.  Reported by Colin Baxter <m43cap@yandex.com>.
101975
1019762017-07-15  rocky  <rb@dustyfeet.com>
101977
101978	Realgud for two more light themes
101979
1019802017-07-15  Eli Zaretskii  <eliz@gnu.org>
101981
101982	Rearrange MS-Windows code that dynamically loads GnuTLS functions
101983
101984	* src/gnutls.c [WINDOWSNT]: Reorganize definitions and loading
101985	of functions using the same preprocessing directives as in the code.
101986
1019872017-07-15  Eli Zaretskii  <eliz@gnu.org>
101988
101989	Fix the MS-Windows build broken in gnutls.c
101990
101991	* src/gnutls.c (Fgnutls_available_p) [WINDOWSNT]: Move the DLL
101992	loading code to after 'capabilities' has been calculated.  Remove
101993	redundant comments.
101994
1019952017-07-15  Lars Ingebrigtsen  <larsi@gnus.org>
101996
101997	src/image.c (compute_image_size): Remove superfluous checks.
101998
101999	* src/image.c (compute_image_size): Remove superfluous checks.
102000
1020012017-07-15  Lars Ingebrigtsen  <larsi@gnus.org>
102002
102003	Make combinations of :width/:max-height image specs work reliably
102004
102005	* doc/lispref/display.texi (ImageMagick Images): Document
102006	:width/:max-height combinations (etc) (bug #25583).
102007
102008	* src/image.c (compute_image_size): Handle :width/:max-height
102009	(etc) combinations consistently (by letting "max" win and
102010	preserve ratio).
102011
102012	* test/manual/image-size-tests.el (image-size-tests): Add
102013	tests for :width/:max-height (etc) combinations.
102014
1020152017-07-15  Glenn Morris  <rgm@gnu.org>
102016
102017	Fix recent theme changes
102018
102019	* etc/themes/manoj-dark-theme.el, etc/themes/tsdh-dark-theme.el:
102020	Fix typos in recent changes.
102021
1020222017-07-15  Paul Eggert  <eggert@cs.ucla.edu>
102023
102024	GnuTLS integer-overflow and style fixes
102025
102026	This tweaks the recently-added GnuTLS improvements so that
102027	they avoid some integer-overflow problems and follow typical
102028	Emacs style a bit better.
102029	* configure.ac (HAVE_GNUTLS3_HMAC, HAVE_GNUTLS3_AEAD)
102030	(HAVE_GNUTLS3_CIPHER): Use AC_CACHE_CHECK so that the
102031	configure-time results are displayed.
102032	* src/fns.c (extract_data_from_object): Return char *, not char
102033	const *, since one gnutls caller wants a non-const pointer.  Use
102034	CONSP rather than !NILP when testing for conses.  Use CAR_SAFE
102035	instead of rolling our own code.  Prefer signed types to unsigned
102036	when either will do.  Report problems for lengths out of range,
102037	instead of silently mishandling them.
102038	* src/gnutls.c (emacs_gnutls_strerror): New function, to simplify
102039	callers.  All callers of gnutls_sterror changed.
102040	(Fgnutls_boot): Check for integers out of range rather than
102041	silently truncating them.
102042	(gnutls_symmetric_aead): Check for integer overflow in size
102043	calculations.
102044	(gnutls_symmetric_aead, Fgnutls_macs, Fgnutls_digests):
102045	Prefer signed to unsigned integers where either	will do.
102046	(gnutls_symmetric_aead, gnutls_symmetric):
102047	Work even if ptrdiff_t is wider than ‘long’.
102048	(gnutls_symmetric, Fgnutls_hash_mac, Fgnutls_hash_digest):
102049	Check for integer overflow in algorithm selection.
102050
1020512017-07-14  Noam Postavsky  <npostavs@gmail.com>
102052
102053	* .gitlab-ci.yml: Don't install a C++ compiler.  Suppress apt interaction.
102054
1020552017-07-14  Eli Zaretskii  <eliz@gnu.org>
102056
102057	Fix the MS-Windows build due to added GnuTLS functions
102058
102059	* src/gnutls.c [WINDOWSNT]: Add DEF_DLL_FN for new functions.
102060	(init_gnutls_functions) [WINDOWSNT]: Add LOAD_DLL_FN for new
102061	functions.  Add #define redirections for new functions.
102062	(gnutls_symmetric_aead): Fix format specs to be more portable when
102063	printing ptrdiff_t arguments.
102064	* src/fns.c (gnutls_rnd) [WINDOWSNT]: Redirect to w32_gnutls_rnd
102065	wrapper.
102066	* src/gnutls.h [WINDOWSNT]: Add prototype for w32_gnutls_rnd.
102067
102068	* test/lisp/net/gnutls-tests.el (gnutls-tests-tested-macs)
102069	(gnutls-tests-tested-digests, gnutls-tests-tested-ciphers): Call
102070	gnutls-available-p, otherwise GnuTLS functions might not be loaded
102071	from the DLL on MS-Windows.
102072
1020732017-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
102074
102075	* lisp/emacs-lisp/bytecomp.el: Fix bug#14860.
102076
102077	* lisp/emacs-lisp/bytecomp.el (byte-compile--function-signature): New fun.
102078	Dig into advice wrappers to find the "real" signature.
102079	(byte-compile-callargs-warn, byte-compile-arglist-warn): Use it.
102080	(byte-compile-arglist-signature): Don't bother with "new-style" arglists,
102081	since bytecode functions are now handled in byte-compile--function-signature.
102082
102083	* lisp/files.el (create-file-buffer, insert-directory):
102084	Remove workaround introduced for (bug#14860).
102085
102086	* lisp/help-fns.el (help-fns--analyse-function): `nadvice` is preloaded.
102087
102088	* lisp/help.el (help-function-arglist):
102089	Dig into advice wrappers to find the "real" signature.
102090
1020912017-07-14  Ted Zlatanov  <tzz@lifelogs.com>
102092
102093	GnuTLS HMAC and symmetric cipher support
102094
102095	    * etc/NEWS: Add news for new feature.
102096
102097	    * doc/lispref/text.texi (GnuTLS Cryptography): Add
102098	    documentation.
102099
102100	    * configure.ac: Add macros HAVE_GNUTLS3_DIGEST,
102101	    HAVE_GNUTLS3_CIPHER, HAVE_GNUTLS3_AEAD, HAVE_GNUTLS3_HMAC.
102102
102103	    * src/fns.c (Fsecure_hash_algorithms): Add function to list
102104	    supported `secure-hash' algorithms.
102105	    (extract_data_from_object): Add data extraction function that
102106	    can operate on buffers and strings.
102107	    (secure_hash): Use it.
102108	    (Fsecure_hash): Mention `secure-hash-algorithms'.
102109
102110	    * src/gnutls.h: Include gnutls/crypto.h.
102111
102112	    * src/gnutls.c (Fgnutls_ciphers, gnutls_symmetric_aead)
102113	    (gnutls_symmetric, Fgnutls_symmetric_encrypt, Fgnutls_symmetric_decrypt)
102114	    (Fgnutls_macs, Fgnutls_digests, Fgnutls_hash_mac, Fgnutls_hash_digest)
102115	    (Fgnutls_available_p): Implement GnuTLS cryptographic integration.
102116
102117	    * test/lisp/net/gnutls-tests.el: Add tests.
102118
1021192017-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
102120
102121	* lisp/emacs-lisp/cl-lib.el (cl--random-time): Remove as well
102122
102123	It's also defined in cl-extra.el.
102124
1021252017-07-14  Paul Eggert  <eggert@cs.ucla.edu>
102126
102127	Do not convert ij and IJ to compatibility chars
102128
102129	* lisp/leim/quail/latin-alt.el: Omit lines for ij and IJ in Dutch.
102130	Problem reported by James Cloos (Bug#518#10).
102131
1021322017-07-14  Toon Claes  <toon@iotcl.com>
102133
102134	Remove Turkish ligatures from Dutch input method
102135
102136	* lisp/leim/quail/latin-alt.el: Remove Turkish ligatures (Bug#518).
102137
1021382017-07-14  Paul Eggert  <eggert@cs.ucla.edu>
102139
102140	Improve stack-overflow heuristic on GNU/Linux
102141
102142	Problem reported by Steve Kemp (Bug#27585).
102143	* src/eval.c (near_C_stack_top): Remove.  All uses replaced
102144	by current_thread->stack_top.
102145	(record_in_backtrace): Set current_thread->stack_top.
102146	This is for when the Lisp interpreter calls itself.
102147	* src/lread.c (read1): Set current_thread->stack_top.
102148	This is for recursive s-expression reads.
102149	* src/print.c (print_object): Set current_thread->stack_top.
102150	This is for recursive s-expression printing.
102151	* src/thread.c (mark_one_thread): Get stack top first.
102152	* src/thread.h (struct thread_state.stack_top): Now void *, not char *.
102153
1021542017-07-14  Paul Eggert  <eggert@cs.ucla.edu>
102155
102156	Remove duplicate cl--random-state definition
102157
102158	* lisp/emacs-lisp/cl-lib.el (cl--random-state): Remove.
102159	This variable is now defined in cl-extra.el (Bug#27617).
102160
1021612017-07-14  Michael Albinus  <michael.albinus@gmx.de>
102162
102163	Adjust timer in tramp-test36-asynchronous-requests
102164
102165	* test/lisp/net/tramp-tests.el (tramp-test36-asynchronous-requests):
102166	Adjust timer if it takes too much time.
102167
1021682017-07-14  Eli Zaretskii  <eliz@gnu.org>
102169
102170	Always display rmail progress report under user control
102171
102172	* lisp/mail/rmail.el (rmail-show-message-1): Delete the second
102173	copy of '(message "Showing message %d..." msg)'.  (Bug#27535)
102174
1021752017-07-14  Eli Zaretskii  <eliz@gnu.org>
102176
102177	Avoid byte-compilation warnings for advised functions
102178
102179	* lisp/files.el (insert-directory, create-file-buffer): Add an
102180	advertised-calling-convention form to shut up byte-compilation
102181	warnings.  (Bug#14860)
102182
1021832017-07-14  Eli Zaretskii  <eliz@gnu.org>
102184
102185	Add assertion related to display-line-numbers
102186
102187	* src/xdisp.c (maybe_produce_line_number): Add assertion for the
102188	condition regarding IT->glyph_row->used[TEXT_AREA] expected by the
102189	code.  (Bug#27668)
102190
1021912017-07-14  Eli Zaretskii  <eliz@gnu.org>
102192
102193	Prevent display corruption when display-line-numbers is set
102194
102195	* src/xdisp.c (try_window_reusing_current_matrix): If giving up
102196	due to display-line-numbers, clear the window's desired glyph
102197	matrix before returning, as the following call to try_window will
102198	call display_line, which expects rows of the desired matrix
102199	cleared.  (Bug#27668)
102200
1022012017-07-14  Eli Zaretskii  <eliz@gnu.org>
102202
102203	Revert "Use fixed-pitch font for display-line-numbers"
102204
102205	This reverts commit d014a5e15c1110af77e7a96f06ccd0f0cafb099f.
102206	* lisp/faces.el (line-number): Don't use a fixed-pitch font, by
102207	popular demand.  For relevant discussions, see
102208
102209	 https://lists.gnu.org/r/emacs-devel/2017-07/msg00433.html
102210	 https://lists.gnu.org/r/emacs-devel/2017-07/msg00445.html
102211
1022122017-07-14  Paul Eggert  <eggert@cs.ucla.edu>
102213
102214	Merge from gnulib
102215
102216	This incorporates:
102217	2017-07-13 Improve cross-compilation guesses for native Windows
102218	2017-07-11 More systematic m4 quoting and indentation
102219	2017-07-10 Make sure $host and $host_os are defined when used
102220	2017-07-03 stdioext: Port to OpenVMS
102221	2017-06-24 xalloc-oversized: port to icc
102222	* doc/misc/texinfo.tex, lib/fpending.c, lib/stdio-impl.h:
102223	* lib/xalloc-oversized.h, m4/dirfd.m4, m4/gettimeofday.m4:
102224	* m4/lstat.m4, m4/mktime.m4, m4/pselect.m4, m4/putenv.m4:
102225	* m4/stdint.m4, m4/strtoimax.m4, m4/utimes.m4:
102226	Copy from Gnulib.
102227
1022282017-07-13  Alan Mackenzie  <acm@muc.de>
102229
102230	C++ Mode.  Fix anomaly occurring when a ">" is deleted then reinserted.
102231
102232	This fontification anomaly happened because after deleting the ">",
102233	c-forward-<>-arglist parses the preceding identifier as a putative type but
102234	stores it in c-found-types before it becomes clear it is not an unambiguous
102235	type.  c-forward-<>-arglist fails, leaving the spurious type id in
102236	c-found-types.  Fix this by "binding" c-found-types "to itself" in
102237	c-forward-<>-arglist, and restoring the original value when that function call
102238	fails.
102239
102240	* lisp/progmodes/cc-engine.el (c-copy-found-types): New function.
102241	(c-forward-<>-arglist): Record the original value of c-found-types at the
102242	beginning of the function, and restore it at the end on failure.
102243
102244	* lisp/progmodes/cc-mode.el (c-unfind-coalesced-tokens): Rewrite more
102245	accurately.
102246
1022472017-07-13  Vincent Belaïche  <vincentb1@users.sourceforge.net>
102248
102249	Add tests for SES, and fix one more cell renaming bug.
102250
102251	* lisp/ses.el (ses-relocate-all): In case of insertion, do not
102252	relocate value for named cells as they keep the same symbol.
102253	(ses-rename-cell): Set new cell name symbol to cell value --- do not
102254	rely on recalculating.  Push cells with updated data --- cell name,
102255	cell reference list, or cell formula --- to deferred write list.
102256
102257	* test/lisp/ses-tests.el: New file, with 7 tests for SES.
102258
1022592017-07-12  Alan Mackenzie  <acm@muc.de>
102260
102261	Fix some bugs in c-defun-name.  This fixes bug #25623.
102262
102263	* lisp/progmodes/cc-cmds.el (c-defun-name): Fix some bugs to do with structs,
102264	etc.
102265
1022662017-07-12  Vasilij Schneidermann  <mail@vasilij.de>
102267
102268	Make prog-mode-map the parent of c-mode-base-map.  Fixes bug #26658.
102269
102270	* lisp/progmodes/cc-mode.el (top level): Make prog-mode-map the parent of
102271	c-mode-base-map if possible.
102272
1022732017-07-12  Alan Mackenzie  <acm@muc.de>
102274
102275	CC Mode: create and use c-set-keymap-parent.
102276
102277	* lisp/progmodes/cc-defs.el (c-set-keymap-parent): New macro.
102278
102279	* lisp/progmodes/cc-mode.el (top-level): Remove cc-bytecomp-defun for
102280	set-keymap-parents.
102281	(c-make-inherited-keymap): Use c-set-keymap-parent in place of inline code.
102282
1022832017-07-12  Martin Rudalics  <rudalics@gmx.at>
102284
102285	Minor tweaks of new line number display variables
102286
102287	* src/xdisp.c (Vdisplay_line_numbers): Tweak doc-string.
102288	(Vdisplay_line_number_width): Rename to
102289	Vdisplay_line_numbers_width.
102290	(maybe_produce_line_number): Comply with above rename.
102291	* lisp/cus-start.el (standard):
102292	* lisp/frame.el (top-level):
102293	* etc/NEWS: Comply with renaming of
102294	`display-line-number-width' to `display-line-numbers-width'.
102295
1022962017-07-12  Eli Zaretskii  <eliz@gnu.org>
102297
102298	Avoid assertion violations in close_infile_unwind
102299
102300	* src/lread.c (close_infile_unwind): A temporary band-aid solution
102301	for bug#27642: allow 'infile' be NULL.
102302
1023032017-07-11  Eli Zaretskii  <eliz@gnu.org>
102304
102305	Use fixed-pitch font for display-line-numbers
102306
102307	* lisp/faces.el (line-number): Use a fixed-pitch font by default,
102308	even if the default face uses a variable-pitch font.  Reported by
102309	James Cloos <cloos@jhcloos.com>.
102310
1023112017-07-11  Eli Zaretskii  <eliz@gnu.org>
102312
102313	Improve documentation of display-line-numbers
102314
102315	* src/xdisp.c (syms_of_xdisp) <display-line-numbers>: Improve the
102316	doc string.  Suggested by Alex <agrambot@gmail.com>.
102317
1023182017-07-11  Nicolas Petton  <nicolas@petton.fr>
102319
102320	Add an optional testfn parameter to assoc
102321
102322	* src/fns.c (assoc): New optional testfn parameter used for comparison
102323	when provided.
102324	* test/src/fns-tests.el (test-assoc-testfn): Add tests for the new
102325	'testfn' parameter.
102326	* src/buffer.c:
102327	* src/coding.c:
102328	* src/dbusbind.c:
102329	* src/font.c:
102330	* src/fontset.c:
102331	* src/gfilenotify.c:
102332	* src/image.c:
102333	* src/keymap.c:
102334	* src/process.c:
102335	* src/w32fns.c:
102336	* src/w32font.c:
102337	* src/w32notify.c:
102338	* src/w32term.c:
102339	* src/xdisp.c:
102340	* src/xfont.c: Add a third argument to Fassoc calls.
102341	* etc/NEWS:
102342	* doc/lispref/lists.texi: Document the new 'testfn' parameter.
102343
1023442017-07-10  Michael Albinus  <michael.albinus@gmx.de>
102345
102346	Use `with-demoted-errors' in Tramp
102347
102348	* lisp/net/tramp.el (tramp-with-demoted-errors): New defmacro.
102349
102350	* lisp/net/tramp-sh.el (tramp-sh-handle-vc-registered): Use it.
102351
1023522017-07-10  Michael Albinus  <michael.albinus@gmx.de>
102353
102354	Add Quick Start Guide to Tramp manual
102355
102356	* doc/misc/tramp.texi: Use consequently "@value{tramp}" and
102357	"MS Windows".
102358	(Quick Start Guide): New node.
102359
102360	* doc/misc/trampver.texi:
102361	* lisp/net/trampver.el: Change version to "2.3.3-pre".
102362
1023632017-07-10  Glenn Morris  <rgm@gnu.org>
102364
102365	Fix failing module tests on GNU/Linux
102366
102367	* test/src/emacs-module-tests.el
102368	(module--test-assertions--load-non-live-object)
102369	(module--test-assertions--call-emacs-from-gc):
102370	Avoid test failures due to backtraces.
102371
1023722017-07-10  Paul Eggert  <eggert@cs.ucla.edu>
102373
102374	Fix core dump in substitute-object-in-subtree
102375
102376	Without this fix, (substitute-object-in-subtree #0=(#0# 'a) 'a)
102377	would dump core, since the C code would recurse indefinitely through
102378	the infinite structure.  This patch adds an argument to the function,
102379	and renames it to lread--substitute-object-in-subtree as the function
102380	is not general-purpose and should not be relied on by outside code.
102381	See Bug#23660.
102382	* src/intervals.c (traverse_intervals_noorder): ARG is now void *,
102383	not Lisp_Object, so that callers need not cons unnecessarily.
102384	All callers changed.  Also, remove related #if-0 code that was
102385	“temporary” in the early 1990s and has not been compilable for
102386	some time.
102387	* src/lread.c (struct subst): New type, for substitution closure data.
102388	(seen_list): Remove this static var, as this info is now part of
102389	struct subst.  All uses removed.
102390	(Flread__substitute_object_in_subtree): Rename from
102391	Fsubstitute_object_in_subtree, and give it a 3rd arg so that it
102392	doesn’t dump core when called from the top level with an
102393	already-cyclic structure.  All callers changed.
102394	(SUBSTITUTE): Remove.  All callers expanded and then simplified.
102395	(substitute_object_recurse): Take a single argument SUBST rather
102396	than a pair OBJECT and PLACEHOLDER, so that its address can be
102397	passed around as part of a closure; this avoids the need for an
102398	AUTO_CONS call.  All callers changed.  If the COMPLETED component
102399	is t, treat every subobject as potentially circular.
102400	(substitute_in_interval): Take a struct subst * rather than a
102401	Lisp_Object, for the closure data.  All callers changed.
102402	* test/src/lread-tests.el (lread-lread--substitute-object-in-subtree):
102403	New test, to check that the core dump does not reoccur.
102404
1024052017-07-10  Philipp Stephani  <phst@google.com>
102406
102407	Minor simplification of module_free_global_ref
102408
102409	* src/emacs-module.c (module_free_global_ref): Remove unused variable
102410	'hashcode'.  Inline variable 'value' that's only used once.
102411
1024122017-07-10  Philipp Stephani  <phst@google.com>
102413
102414	Re-add a useful assertion
102415
102416	* src/emacs-module.c (module_free_global_ref): Re-add assertion that
102417	the reference count is zero.  This assertion was removed in commit
102418	8afaa1321f8088bfb877fe4b6676e8517adb0bb7, but it's not included in the
102419	test performed by XFASTINT before, because the previous reference
102420	count could have been zero already in the case of a buggy
102421	implementation.  This assertion might have detected Bug#27587.
102422
1024232017-07-10  Valentin Gatien-Baron  <vgatien-baron@janestreet.com>  (tiny change)
102424
102425	Fix bug in module_free_global_ref (Bug#27587)
102426
102427	* src/emacs-module.c (module_free_global_ref): Actually remove entry
102428	from hash table.
102429
1024302017-07-09  Philipp Stephani  <phst@google.com>
102431
102432	Further improve electric quote support for Markdown (Bug#24709)
102433
102434	Markdown sets both 'comment-start' and 'comment-use-syntax' to non-nil
102435	values.  Therefore 'electric-quote-mode' recognized it as a
102436	programming mode.  Fix this by first checking whether the current
102437	major mode is derived from 'text-mode'.
102438
102439	* lisp/electric.el (electric-quote-post-self-insert-function): Treat
102440	'text-mode' as stronger signal than comment syntax.
102441
102442	* test/lisp/electric-tests.el (electric-quote-markdown-in-text)
102443	(electric-quote-markdown-in-code): Adapt unit tests.
102444
1024452017-07-09  Philipp Stephani  <phst@google.com>
102446
102447	Remove pointless code in 'electric-quote-mode'
102448
102449	* lisp/electric.el (electric-quote-post-self-insert-function): Remove
102450	pointless form.
102451
1024522017-07-09  Philipp Stephani  <phst@google.com>
102453
102454	Refactor 'electric-quote-mode'
102455
102456	* lisp/electric.el (electric-quote-post-self-insert-function): Remove
102457	local variable 'start', which was misnamed and only used once.
102458
1024592017-07-09  Saulius Menkevičius  <saulius.menkevicius@gmail.com>  (tiny change)
102460
102461	Avoid crashes on MS-Windows starting 64-bit .NET executables
102462
102463	* src/w32proc.c (w32_executable_type): Don't assume that the
102464	import directory in a DLL will always be non-NULL.  (Bug#27527)
102465
1024662017-07-09  Eli Zaretskii  <eliz@gnu.org>
102467
102468	Avoid compilation warning in files.el
102469
102470	* lisp/files.el (auto-save-visited-file-name): Avoid obsoletion
102471	warning due to its use in auto-save-visited-mode.
102472
1024732017-07-09  Eli Zaretskii  <eliz@gnu.org>
102474
102475	Improve indexing of VC-related stuff in the Emacs manual
102476
102477	* doc/emacs/maintaining.texi (Version Control): Add a "VC" index
102478	entry.  (Bug#27627)
102479
1024802017-07-09  Eli Zaretskii  <eliz@gnu.org>
102481
102482	Speed up display of line numbers for very large buffers
102483
102484	* src/xdisp.c (maybe_produce_line_number): Speed up line counting
102485	using values cached by mode-line display of line numbers.
102486	(Bug#27622)
102487
1024882017-07-09  Alexander Kuleshov  <kuleshovmail@gmail.com>
102489
102490	Define internal_border_parts for window systems only (Bug#27615)
102491
102492	* src/keyboard.c: (internal_border_parts): Define only
102493	when HAVE_WINDOW_SYSTEM is enabled.  (Bug#27615)
102494
1024952017-07-09  R. Bernstein  <rocky@gnu.org>
102496
102497	Add realgud faces faces to whiteboard...
102498
102499	Adjust wheatgrass to use underline for enabled/disabled breakpoints
102500
1025012017-07-08  Noam Postavsky  <npostavs@gmail.com>
102502
102503	Optimize UCS normalization tests
102504
102505	Brings the time for `ucs-normalize-part1' from 200s down to 130s.
102506	* test/lisp/international/ucs-normalize-tests.el
102507	(ucs-normalize-tests--parse-column): Use character instead of string
102508	of length 1 for terminator.  Convert return value into string since
102509	all callers need that form anyway.
102510	(ucs-normalize-tests--normalization-equal-p): Rename from
102511	ucs-normalize-tests--normalize.  Use dedicated buffer instead of
102512	messing with narrowing.  Take string to compare against and insert it
102513	into buffer so that compare-buffer-substrings can be used instead of
102514	allocating a new string from buffer contents.
102515	(ucs-normalize-tests--normalization-chareq-p): New macro, specialized
102516	for comparing single character.
102517	(ucs-normalize-tests--rule1-holds-p)
102518	(ucs-normalize-tests--rule2-holds-p): Turn into defsubst.
102519	(ucs-normalize-tests--rule1-failing-for-partX): Use `eq' instead of
102520	`='.
102521
1025222017-07-08  Noam Postavsky  <npostavs@gmail.com>
102523
102524	Update failing lines for UCS normalize tests
102525
102526	* test/lisp/international/ucs-normalize-tests.el
102527	(ucs-normalize-tests--failing-lines-part2): Update for new
102528	admin/unidata/NormalizationTest.txt version.
102529
1025302017-07-08  Noam Postavsky  <npostavs@gmail.com>
102531
102532	Semi-automate the procedure for updating UCS normalize test bad lines
102533
102534	* test/lisp/international/ucs-normalize-tests.el: Remove incorrect
102535	commentary describing a manual procedure for producing the updated
102536	failing lines, it did not actually work.  Replace it with pointer to
102537	new function which prints the updated values.
102538	(ucs-normalize-tests--rule1-holds-p): Renamed from
102539	ucs-normalize-tests--invariants-hold-p.
102540	(ucs-normalize-tests--rule2-holds-p): Renamed from
102541	ucs-normalize-tests--invariants-rule2-hold-p.
102542	(ucs-normalize-tests--rule1-failing-for-partX): Renamed from
102543	ucs-normalize-tests--invariants-failing-for-part.
102544	(ucs-normalize-tests--rule1-failing-for-lines): Renamed from
102545	ucs-normalize-tests--invariants-failing-for-lines.
102546	(ucs-normalize-tests--part2-rule1-failed-lines): New variable.
102547	(ucs-normalize-part2): Set it.
102548	(ucs-normalize-part1): Always run through to end of test before
102549	checking for failures.
102550	(ucs-normalize-tests--insert-failing-lines)
102551	(ucs-normalize-check-failing-lines): New functions, used to update
102552	the *--failing-lines-part* variables.
102553
1025542017-07-08  Paul Eggert  <eggert@cs.ucla.edu>
102555
102556	* lisp/cus-start.el (standard): Spelling fix.
102557
1025582017-07-08  Philipp Stephani  <phst@google.com>
102559
102560	Module assertions: check for garbage collections
102561
102562	It's technically possible to write a user pointer finalizer that calls
102563	into Emacs module functions.  This would be disastrous because it
102564	would allow arbitrary Lisp code to run during garbage collection.
102565	Therefore extend the module assertions to check for this case.
102566
102567	* src/emacs-module.c (module_assert_thread): Also check whether a
102568	garbage collection is in progress.
102569
102570	* test/data/emacs-module/mod-test.c (invalid_finalizer)
102571	(Fmod_test_invalid_finalizer): New test module functions.
102572	(emacs_module_init): Register new test function.
102573
102574	* test/src/emacs-module-tests.el (module--test-assertion)
102575	(module--with-temp-directory): New helper macros.
102576	(module--test-assertions--load-non-live-object): Rename existing
102577	unit test, use helper macros.
102578	(module--test-assertions--call-emacs-from-gc): New unit test.
102579
1025802017-07-08  Eli Zaretskii  <eliz@gnu.org>
102581
102582	Capitalize the menu entry for display-line-numbers
102583
102584	* lisp/menu-bar.el (menu-bar-showhide-menu): Capitalize menu item
102585	for display-line-numbers.  Suggested by Martin Rudalics
102586	<rudalics@gmx.at>.
102587
1025882017-07-08  Eli Zaretskii  <eliz@gnu.org>
102589
102590	Update Unicode data and files to Unicode 10.0
102591
102592	* admin/notes/unicode:
102593	* admin/unidata/README:
102594	* admin/unidata/BidiBrackets.txt:
102595	* admin/unidata/BidiMirroring.txt:
102596	* admin/unidata/Blocks.txt:
102597	* admin/unidata/IVD_Sequences.txt:
102598	* admin/unidata/NormalizationTest.txt:
102599	* admin/unidata/SpecialCasing.txt:
102600	* admin/unidata/UnicodeData.txt:
102601	* lisp/international/characters.el:
102602	* lisp/international/fontset.el (script-representative-chars):
102603	* lisp/international/mule-cmds.el (ucs-names): Update per Unicode 10.0.
102604
1026052017-07-08  Alexander Gramiak  <agrambot@gmail.com>
102606
102607	Support '=' in Scheme and Lisp tags in 'etags'
102608
102609	* lib-src/etags.c (get_lispy_tag): New function.
102610	(L_getit, Scheme_functions): Use get_lispy_tag (Bug#5624).
102611	* test/manual/etags/CTAGS.good:
102612	* test/manual/etags/ETAGS.good_1:
102613	* test/manual/etags/ETAGS.good_2:
102614	* test/manual/etags/ETAGS.good_3:
102615	* test/manual/etags/ETAGS.good_4:
102616	* test/manual/etags/ETAGS.good_5:
102617	* test/manual/etags/ETAGS.good_6:
102618	* test/manual/etags/Makefile:
102619	* test/manual/etags/el-src/TAGTEST.EL: Update tests.
102620	* test/manual/etags/scm-src/test.scm: New tests for Scheme.
102621
1026222017-07-08  Alexander Kuleshov  <kuleshovmail@gmail.com>
102623
102624	Avoid compiler warnings in xdisp.c debugging code
102625
102626	* src/xdisp.c (dump_glyph, dump_glyph_row, Fdump_glyph_matrix):
102627	Use pD directives for ptrdiff_t values instead of pI, to avoid
102628	compilation warnings on 64-bit hosts.  (Bug#27597)
102629
1026302017-07-08  Eli Zaretskii  <eliz@gnu.org>
102631
102632	Commentary enhancement in frame.el
102633
102634	* lisp/frame.el: Explain how to test whether a variable needs to
102635	be added to the list of those which are watched for buffer
102636	redisplay.
102637
1026382017-07-08  Eli Zaretskii  <eliz@gnu.org>
102639
102640	Support display of line numbers natively
102641
102642	This merges branch 'line-numbers'.
102643	* src/buffer.c (disable_line_numbers_overlay_at_eob): New
102644	function.
102645	* src/lisp.h (disable_line_numbers_overlay_at_eob): Add prototype.
102646	* src/dispextern.h (struct it): New members pt_lnum, lnum,
102647	lnum_bytepos, lnum_width, and lnum_pixel_width.
102648	* src/indent.c (line_number_display_width): New function,
102649	refactored from line-number width calculations in vertical-motion.
102650	(Fvertical_motion): Call line_number_display_width when the width
102651	of line-number display is needed.
102652	(Fline_number_display_width): New defun.
102653	(syms_of_indent): Defsubr it.
102654	* src/indent.c (Fvertical_motion): Help C-n/C-p estimate correctly
102655	the width used up by line numbers by looking near the window-start
102656	point.  If window-start is outside of the accessible portion,
102657	temporarily widen the buffer.
102658	* src/term.c (produce_glyphs): Adjust tab stops for the horizontal
102659	space taken by the line-number display.
102660	* src/xdisp.c (display_count_lines_logically)
102661	(display_count_lines_visually, maybe_produce_line_number)
102662	(should_produce_line_number, row_text_area_empty): New functions.
102663	(try_window_reusing_current_matrix): Don't use this method when
102664	display-line-numbers is in effect.
102665	(try_window_id, try_cursor_movement): Disable these optimizations
102666	when the line-number-current-line face is different from
102667	line-number face and for relative line numbers.
102668	(try_window_id, redisplay_window, try_cursor_movement): For
102669	visual line-number display, disable the same redisplay
102670	optimizations as for relative.
102671	(x_produce_glyphs): Adjust tab stops for the horizontal
102672	space taken by the line-number display.
102673	(hscroll_window_tree): Adjust hscroll calculations to line-number
102674	display.
102675	(DISP_INFINITY): Renamed from INFINITY to avoid clashes with
102676	math.h; all users changed.
102677	(set_cursor_from_row): Fix calculation of cursor X coordinate in
102678	R2L rows with display-produced glyphs at the beginning.
102679	(display_line): Use should_produce_line_number to determine
102680	whether a line number should be produced for each glyph row, and
102681	maybe_produce_line_number to produce line numbers.
102682	Don't display line numbers in the minibuffer and in tooltip
102683	frames.
102684	Call row_text_area_empty to verify that a glyph
102685	row's text area is devoid of any glyphs that came from a buffer or
102686	a string.  This fixes a bug with empty-lines indication
102687	disappearing when line numbers or line-prefix are displayed.
102688	(syms_of_xdisp) <display-line-numbers, display-line-numbers-widen>
102689	<display-line-number-width>: New buffer-local variables.
102690	<display-line-numbers-current-absolute>: New variable.
102691
102692	* lisp/cus-start.el (standard): Provide customization forms for
102693	display-line-numbers and its sub-features.
102694	* lisp/faces.el (line-number, line-number-current-line): New faces.
102695	* lisp/frame.el: Add display-line-numbers, display-line-numbers-widen,
102696	display-line-numbers-current-absolute, and
102697	display-line-number-width to the list of variables that should
102698	trigger redisplay of the current buffer.
102699	* lisp/menu-bar.el (menu-bar-showhide-menu): Add menu-bar item to
102700	turn display-line-numbers on and off.
102701	(toggle-display-line-numbers): New function.
102702	* lisp/simple.el (last--line-number-width): New internal variable.
102703	(line-move-visual): Use it to adjust temporary-goal-column when
102704	line-number display changes its width.
102705
102706	* doc/emacs/basic.texi (Position Info): Add cross-reference to
102707	"Display Custom", for line-number display.
102708	* doc/emacs/custom.texi (Init Rebinding):
102709	* doc/emacs/modes.texi (Minor Modes): Remove references to
102710	linum-mode.
102711	* doc/emacs/display.texi (Display Custom): Describe the
102712	line-number display.
102713	* doc/lispref/display.texi (Size of Displayed Text): Document
102714	line-number-display-width.
102715
102716	* etc/NEWS: Document display-line-numbers and its customizations.
102717
1027182017-07-08  Paul Eggert  <eggert@cs.ucla.edu>
102719
102720	Fix more ungetc bugs with encoding errors
102721
102722	* src/lread.c (infile): New variable, replacing ...
102723	(instream): ... this.  All uses changed.
102724	(readbyte_from_stdio): New function, which deals with lookahead.
102725	(readbyte_from_file, Fget_file_char): Use it.
102726	(Fget_file_char): When misused, signal an error instead of
102727	relying on undefined behavior.
102728	(close_infile_unwind): New function.
102729	(Fload): Use it.
102730	(readevalloop): 2nd arg is now struct infile *, not FILE *.
102731	All callers changed.
102732	(read1): Handle lookahead when copying doc strings with
102733	encoding errors.
102734
1027352017-07-08  Paul Eggert  <eggert@cs.ucla.edu>
102736
102737	Avoid ungetc when loading charset maps from files
102738
102739	* src/charset.c (read_hex): New args LOOKAHEAD and TERMINATOR,
102740	replacing the old EOF.  All callers changed.  This avoids the
102741	need to call ungetc.
102742
1027432017-07-08  Paul Eggert  <eggert@cs.ucla.edu>
102744
102745	Fix ungetc bug when reading an encoding error
102746
102747	* src/lread.c (readchar, read_emacs_mule_char): Fix off-by-one
102748	error when reading an encoding error from a file, e.g., a symbol
102749	in an .elc file whose name is "\360\220\200\360".
102750
1027512017-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
102752
102753	* lisp/wid-edit.el (widget-color--choose-action): Use a closure
102754
102755	* lisp/window.el (display-buffer--special-action): Use a closure.
102756
1027572017-07-07  Stephen Berman  <stephen.berman@gmx.net>
102758
102759	Add new todo-mode.el tests
102760
102761	* test/lisp/calendar/todo-mode-tests.el (with-todo-test):
102762	Declare an Edebug spec.  Restore pre-test-run state of test files.
102763	(todo-test--show, todo-test--move-item)
102764	(todo-test--insert-item): New functions.
102765	(todo-test-get-archive): Remove, as subsumed by
102766	todo-test--show.  Adjust all callers.
102767	(todo-test--is-current-buffer): Rename from
102768	todo-test-is-current-buffer and adjust uses.
102769	(todo-test-item-highlighting): Use todo-test--show.
102770	(todo-test-revert-buffer01, todo-test-revert-buffer02)
102771	(todo-test-raise-lower-priority)
102772	(todo-test-todo-mark-unmark-category, todo-test-move-item01)
102773	(todo-test-move-item02, todo-test-move-item03)
102774	(todo-test-move-item04, todo-test-move-item05)
102775	(todo-test-toggle-item-header01)
102776	(todo-test-toggle-item-header02)
102777	(todo-test-toggle-item-header03)
102778	(todo-test-toggle-item-header04)
102779	(todo-test-toggle-item-header05)
102780	(todo-test-toggle-item-header06)
102781	(todo-test-toggle-item-header07): New tests.
102782
102783	* test/lisp/calendar/todo-mode-resources/todo-test-1.toda:
102784	* test/lisp/calendar/todo-mode-resources/todo-test-1.todo:
102785	Modify to accommodate new tests.
102786
1027872017-07-07  Stephen Berman  <stephen.berman@gmx.net>
102788
102789	todo-mode.el: Fix handling of hidden item headers (bug#27609)
102790
102791	* lisp/calendar/todo-mode.el (todo--item-headers-hidden): New variable.
102792	(todo-toggle-item-header): Use it.  Make this command a noop
102793	if the file has no items.
102794	(todo-move-item, todo-item-done): Instead of concatenating the
102795	items to move into one string, make a list of them to
102796	facilitate handling hidden headers.  Adjust insertion accordingly.
102797	(todo-archive-done-item): Handle hidden headers in archive file.
102798	(todo-unarchive-items): Handle hidden headers in todo file.
102799	(todo-backward-item): Use todo--item-headers-hidden and handle
102800	moving backward work when item date-time headers are hidden.
102801	(todo-remove-item): Delete date-time header overlay.
102802	(todo-get-overlay, todo-insert-with-overlays): Make them work
102803	with hidden date-time headers.
102804	(todo-modes-set-2): Make todo--item-headers-hidden buffer local.
102805
1028062017-07-07  Stephen Berman  <stephen.berman@gmx.net>
102807
102808	Fix several todo-mode bugs found while debugging bug#27609
102809
102810	* lisp/calendar/todo-mode.el (todo-toggle-mark-item): Calculate
102811	current category only once.
102812	(todo-mark-category): Update number of marked items to avoid
102813	spurious duplication in todo-categories-with-marks alist and
102814	corruption of the todo-categories alist.  Handle empty line
102815	when there are no todo items and done items are shown.
102816	(todo-set-item-priority): Make noop if called from
102817	todo-raise-item-priority or todo-lower-item-priority when
102818	point is on a done todo item or an empty line.
102819	(todo-move-item): Use markers instead of integer positions to
102820	correctly handle deleting the now moved items from the source
102821	category (without markers an infinite loop arises when moving
102822	marked item to a preceding category).
102823	(todo-unarchive-items): Put point on the (first) restored done
102824	item, instead of leaving it at the end of the done items
102825	separator string.
102826	(todo-revert-buffer): Ensure buffer remains read-only after
102827	reverting.
102828
1028292017-07-07  Eli Zaretskii  <eliz@gnu.org>
102830
102831	Exclude blank columns from value of line-number-display-width
102832
102833	* src/indent.c (Fline_number_display_width): Don't add 2 to the
102834	number of columns we return, to make this consistent with
102835	display-line-number-width.
102836
1028372017-07-07  Eli Zaretskii  <eliz@gnu.org>
102838
102839	Fix vertical-motion across the place where line-number width changes
102840
102841	* src/indent.c (line_number_display_width): New function,
102842	refactored from line-number width calculations in vertical-motion.
102843	(Fvertical_motion): Call line_number_display_width when the width
102844	of line-number display is needed.
102845	(Fline_number_display_width): New defun.
102846	(syms_of_indent): Defsubr it.
102847
102848	* doc/lispref/display.texi (Size of Displayed Text): Document
102849	line-number-display-width.
102850
102851	* etc/NEWS: Mention line-number-display-width.
102852
102853	* lisp/simple.el (last--line-number-width): New internal variable.
102854	(line-move-visual): Use it to adjust temporary-goal-column when
102855	line-number display changes its width.
102856
1028572017-07-07  Martin Rudalics  <rudalics@gmx.at>
102858
102859	Remove Vwindow_text_change_functions and related code
102860
102861	Vwindow_text_change_functions had been provided for implementing
102862	line numbers but apparently was never functional or in use.
102863
102864	* src/xdisp.c (redisplay_window): Remove handling of
102865	Vwindow_text_change_functions.
102866	(syms_of_xdisp): Remove Qwindow_text_change_functions.
102867	(Vwindow_text_change_functions): Remove variable.
102868	* doc/lispref/hooks.texi (Standard Hooks): Remove entry for
102869	`window-text-change-functions'.
102870
1028712017-07-07  Mark Oteiza  <mvoteiza@udel.edu>
102872
102873	Convert more uses of looking-at to following-char
102874
102875	More followup to Karl Fogel's commit a84da83c1.
102876	* lisp/dired-aux.el (dired-add-entry, dired-subdir-hidden-p):
102877	* lisp/dired-x.el (dired-mark-unmarked-files, dired-mark-sexp):
102878	* lisp/help-fns.el (doc-file-to-man, doc-file-to-info):
102879	* lisp/proced.el (proced-toggle-marks):
102880	* lisp/progmodes/f90.el (f90-indent-line):
102881	* lisp/ses.el (ses-load):
102882	* lisp/tar-mode.el (tar-expunge): Replace instances of looking-at with
102883	char comparisons using following-char.
102884
1028852017-07-07  Noam Postavsky  <npostavs@gmail.com>
102886
102887	Don't skip epg tests (Bug#23561)
102888
102889	* test/lisp/epg-tests.el (with-epg-tests): Ignore REQUIRE-PASSPHRASE
102890	parameter, since we supply the passphrase via pinentry-program for all
102891	GPG versions (as of 2017-02-28 "Fix epg-tests with dummy-pinentry
102892	program (Bug#23619)").
102893	(epg-tests-program-alist-for-passphrase-callback): Remove.
102894
1028952017-07-06  Eli Zaretskii  <eliz@gnu.org>
102896
102897	Implement line numbers that disregard narrowing
102898
102899	* src/xdisp.c (display_count_lines_logically): New function,
102900	counts line numbers disregarding narrowing.  Suggested by Andy
102901	Moreton <andrewjmoreton@gmail.com>.
102902	(maybe_produce_line_number): Call display_count_lines_logically
102903	instead of display_count_lines.  Adapt BEGV, ZV, etc. to
102904	display-line-numbers-widen.
102905	(syms_of_xdisp) <display-line-numbers-widen>: New buffer-local
102906	variable.
102907
102908	* lisp/cus-start.el (standard): Provide a customization form for
102909	display-line-numbers-widen.
102910	* lisp/frame.el: Add display-line-numbers-widen,
102911	display-line-numbers-current-absolute, and
102912	display-line-number-width to the list of variables that should
102913	trigger redisplay of the current buffer.
102914
102915	* doc/emacs/display.texi (Display Custom): Document
102916	display-line-numbers-widen.
102917
1029182017-07-06  Noam Postavsky  <npostavs@gmail.com>
102919
102920	Fix lisp-comment-indent for single-semicolon case
102921
102922	* lisp/emacs-lisp/lisp-mode.el (lisp-comment-indent): Only check for
102923	open paren if we're looking at multiple comment characters.
102924	* test/lisp/emacs-lisp/lisp-mode-tests.el (lisp-comment-indent-1)
102925	(lisp-comment-indent-2): New tests.
102926
1029272017-07-06  Paul Eggert  <eggert@cs.ucla.edu>
102928
102929	Spelling fixes
102930
102931	* lisp/org/org-table.el (org-table-sort-lines):
102932	Fix misspelling in prompt.
102933	* lisp/org/ox-ascii.el (org-ascii--describe-datum):
102934	Fix misspelling in call to org-element-lineage.
102935
1029362017-07-06  Noam Postavsky  <npostavs@gmail.com>
102937
102938	Don't put whitespace between open paren and comment in Lisp modes (Bug#19740)
102939
102940	* lisp/emacs-lisp/lisp-mode.el (lisp-comment-indent): If current
102941	line's code ends in open paren, set comment indentation exactly to
102942	column following it.
102943	(lisp-mode-variables): Set `comment-indent-function' to
102944	`lisp-comment-indent'.
102945
1029462017-07-06  Noam Postavsky  <npostavs@gmail.com>
102947
102948	Allow comment-indent-functions to specify exact indentation (Bug#385)
102949
102950	* lisp/newcomment.el (comment-choose-indent): Interpret a cons of two
102951	integers as indicating a range of acceptable indentation.
102952	(comment-indent): Don't apply `comment-inline-offset',
102953	`comment-choose-indent' already does that.
102954	(comment-indent-function):
102955	* doc/emacs/programs.texi (Options for Comments): Document new
102956	acceptable return values.
102957	* etc/NEWS: Announce it.
102958
1029592017-07-06  Paul Eggert  <eggert@cs.ucla.edu>
102960
102961	Check for integer overflow in xbm images
102962
102963	* src/image.c (XBM_TK_OVERFLOW): New constant.
102964	(xbm_scan): Check for integer overflow instead of relying on
102965	undefined behavior.  Check that octal digits are actually octal.
102966
1029672017-07-06  Paul Eggert  <eggert@cs.ucla.edu>
102968
102969	Convert hex digits more systematically
102970
102971	This makes the code a bit smaller and presumably faster, as
102972	it substitutes a single lookup for conditional jumps.
102973	* src/character.c (hexdigit): New constant.
102974	(syms_of_character) [HEXDIGIT_IS_CONST]: Initialize it.
102975	* src/character.h (HEXDIGIT_CONST, HEXDIGIT_IS_CONST): New macros.
102976	(hexdigit): New decl.
102977	(char_hexdigit): New inline function.
102978	* src/charset.c: Do not include c-ctype.h.
102979	* src/charset.c (read_hex):
102980	* src/editfns.c (styled_format):
102981	* src/image.c (xbm_scan):
102982	* src/lread.c (read_escape):
102983	* src/regex.c (ISXDIGIT) [emacs]:
102984	Use char_hexdigit insted of doing it by hand.
102985
1029862017-07-06  Paul Eggert  <eggert@cs.ucla.edu>
102987
102988	Don’t use -Woverride-init
102989
102990	I have some further changes in mind that would also need to
102991	disable the -Woverride-init warnings.  In practice these warnings
102992	seem to be more trouble than they’re worth, so disable them in the
102993	cc command line.
102994	* configure.ac: Disable -Woverride-init here ...
102995	* src/bytecode.c: ... rather than here.
102996
1029972017-07-05  Glenn Morris  <rgm@gnu.org>
102998
102999	* lisp/progmodes/python.el (auto-mode-alist): Add .pyi.  (Bug#27847)
103000
103001	* lisp/org/ox-html.el (org-html-infojs-template): Update copyright.
103002
1030032017-07-05  Glenn Morris  <rgm@gnu.org>
103004
103005	Small fix for bug-reference.el
103006
103007	* lisp/progmodes/bug-reference.el (bug-reference-bug-regexp):
103008	Autoload safety property.  (Bug#27481)
103009
1030102017-07-05  Michael Albinus  <michael.albinus@gmx.de>
103011
103012	Suppress timers in Tramp
103013
103014	* lisp/net/tramp.el (tramp-file-name-handler): Don't trigger timers.
103015
103016	* test/lisp/net/tramp-tests.el
103017	(tramp-test36-asynchronous-requests): Trigger timers.
103018	(tramp-test37-recursive-load, tramp-test38-remote-load-path):
103019	Set `default-directory' to a trustworthy value.
103020
1030212017-07-05  rocky  <rb@dustyfeet.com>
103022
103023	Add realgud face definitions
103024
103025	Add realgud faces to tdsh-dark-theme
103026
1030272017-07-05  Stefan Monnier  <monnier@iro.umontreal.ca>
103028
103029	* lisp/progmodes/cc-awk.el: Mark unused args
103030
103031	* lisp/progmodes/cc-bytecomp.el: Mark unused args
103032
1030332017-07-05  Stefan Monnier  <monnier@iro.umontreal.ca>
103034
103035	* lisp/progmodes/cc-defs.el (lookup-syntax-properties): Move ...
103036
103037	... before first use
103038
1030392017-07-05  Stefan Monnier  <monnier@iro.umontreal.ca>
103040
103041	* lisp/progmodes/cc-vars.el: Mark unused args
103042
1030432017-07-05  Stefan Monnier  <monnier@iro.umontreal.ca>
103044
103045	* lisp/progmodes/cc-langs.el: Mark unused args
103046
103047	(c-primary-expr-regexp): Remove unused vars ambiguous-prefix-ops and
103048	unambiguous-prefix-ops.
103049
1030502017-07-05  Stefan Monnier  <monnier@iro.umontreal.ca>
103051
103052	* lisp/progmodes/cc-engine.el: Mark unused args
103053
103054	(c-beginning-of-statement-1, c-guess-basic-syntax):
103055	Remove unused var c-in-literal-cache.
103056	(c-debug-sws-msg): Silence byte-compiler, even if we don't use the arg.
103057	(c-append-to-state-cache): Remove unused var `bra+1s'.
103058	(c-remove-stale-state-cache): Remove unused var `pps-point-state'.
103059	(c-invalidate-state-cache-1): Remove unused var `pa'.
103060	(c-forward-decl-or-cast-1): Change comments so they don't look like
103061	outline headers.
103062	(c-restricted-<>-arglists, c-parse-and-markup-<>-arglists):
103063	Declare before first use.
103064	(c-forward-decl-or-cast-1): Remove unused var `backup-kwd-sym'.
103065	(c-backward-over-enum-header): Remove unused var `up-sexp-pos'.
103066
1030672017-07-05  Stefan Monnier  <monnier@iro.umontreal.ca>
103068
103069	* lisp/progmodes/cc-cmds.el: Remove unused vars
103070
103071	(c-syntactic-context): Declare as dynbound.
103072	(c-beginning-of-defun, c-end-of-defun): Remove unused var `start'.
103073
1030742017-07-05  Stefan Monnier  <monnier@iro.umontreal.ca>
103075
103076	* lisp/progmodes/cc-guess.el: Remove unused var
103077
103078	(c-guess-view-reorder-offsets-alist-in-style): Remove redundantly bound
103079	and computed variable `guessed-syntactic-symbols'.
103080
1030812017-07-05  Stefan Monnier  <monnier@iro.umontreal.ca>
103082
103083	* lisp/progmodes/cc-align.el: Mark unused arguments
103084
1030852017-07-05  Stefan Monnier  <monnier@iro.umontreal.ca>
103086
103087	* lisp/progmodes/cc-mode.el: Mark unused arguments
103088
103089	(c-parse-quotes-before-change, c-parse-quotes-after-change):
103090	Remove unused vars.
103091
1030922017-07-05  Noam Postavsky  <npostavs@gmail.com>
103093
103094	Mention `ffap-url-unwrap-local' in find-file-at-point's docstring (Bug#27564)
103095
103096	* lisp/ffap.el (find-file-at-point): Mention `ffap-url-unwrap-local'
103097	and `ffap-url-unwrap-remote'.
103098
1030992017-07-05  Noam Postavsky  <npostavs@gmail.com>
103100
103101	Fix infloop in uncomment-region-default (Bug#27112)
103102
103103	When `comment-continue' has only blanks, `comment-padright' produces a
103104	regexp that matches the empty string, so `uncomment-region-default'
103105	will loop infinitely.
103106	* lisp/newcomment.el (comment-padright): Only return a regexp if STR
103107	has nonblank characters.
103108
1031092017-07-04  Eli Zaretskii  <eliz@gnu.org>
103110
103111	Fix display of current line number in visual mode
103112
103113	* src/xdisp.c (maybe_produce_line_number): Fix visual-mode display
103114	of current line when line-number-current-line face was customized.
103115	Reported by Filipe Silva <filipe.silva@gmail.com>.
103116
1031172017-07-03  Philipp Stephani  <phst@google.com>
103118
103119	Use hook instead of face list to inhibit electric quoting
103120
103121	This is more flexible and doesn't couple electric quoting to font
103122	locking.
103123	Give that 'electric-quote-code-faces' was just introduced, remove it
103124	without formal deprecation.
103125
103126	* lisp/electric.el (electric-quote-inhibit-functions): New abnormal
103127	hook variable.
103128	(electric-quote-post-self-insert-function): Run the hook.  Remove
103129	use of old 'electric-quote-code-faces' variable.
103130
103131	* test/lisp/electric-tests.el (electric-quote-markdown-in-text)
103132	(electric-quote-markdown-in-code): Adapt unit tests.
103133
1031342017-07-03  Ingo Lohmar  <i.lohmar@gmail.com>
103135
103136	Offer non-aligned indentation in lists in js-mode (Bug#27503)
103137
103138	* lisp/progmodes/js.el (js--proper-indentation):
103139	New customization option 'js-indent-align-list-continuation'.
103140	Affects argument lists as well as arrays and object properties.
103141	* test/manual/indent/js-indent-align-list-continuation-nil.js:
103142	Test the change.
103143
1031442017-07-03  Eli Zaretskii  <eliz@gnu.org>
103145
103146	Avoid errors in vertical-motion when buffer is narrowed
103147
103148	* src/indent.c (Fvertical_motion): If need to start from
103149	window-start, and it is outside of the accessible portion,
103150	temporarily widen the buffer.  This avoids errors in evil-mode.
103151	Reported by James Nguyen <james@jojojames.com>.
103152
1031532017-07-03  Michael Albinus  <michael.albinus@gmx.de>
103154
103155	(Re-)activate remote tests of filenotify-tests.el
103156
103157	* test/lisp/filenotify-tests.el
103158	(file-notify-test-remote-temporary-file-directory):
103159	Declare default host for mock method.  Offer home directory
103160	for mock method if it doesn't exist.
103161	(file-notify-test09-watched-file-in-watched-dir-remote):
103162	Remove, it doesn't work reliably.
103163
1031642017-07-03  Noam Postavsky  <npostavs@gmail.com>
103165
103166	Reset ansi escape context before printing eshell prompt (Bug#27407)
103167
103168	* lisp/eshell/em-prompt.el (eshell-emit-prompt): Reset
103169	`ansi-color-context-region'.
103170
1031712017-07-03  Noam Postavsky  <npostavs@gmail.com>
103172
103173	Let ansi-color overlay hooks work in eshell (Bug#27407)
103174
103175	* lisp/ansi-color.el (ansi-color-make-extent): Add
103176	`ansi-color-freeze-overlay' to `insert-behind-hooks' as well.
103177	* lisp/eshell/esh-mode.el (eshell-output-filter): Let-bind
103178	`inhibit-modification-hooks' to nil while inserting the string.
103179
1031802017-07-03  Noam Postavsky  <npostavs@gmail.com>
103181
103182	Fix and simplify ansi escape detection (Bug#21381)
103183
103184	* lisp/ansi-color.el (ansi-color-regexp, ansi-color-drop-regexp):
103185	Remove.
103186	(ansi-color-control-seq-regexp): New constant, matches all escape
103187	sequences.
103188	(ansi-color-filter-apply, ansi-color-apply)
103189	(ansi-color-filter-region, ansi-color-apply-on-region): Use it instead
103190	of matching color sequences separately from ignored sequences.
103191	Differentiate color sequences simply by checking the last character.
103192
1031932017-07-03  Damien Cassou  <damien@cassou.me>
103194
103195	Add absolute optional parameter to line-number-at-pos (Bug#26417)
103196
103197	* lisp/simple.el (line-number-at-pos): Add a second optional
103198	  argument 'absolute'.
103199	* test/lisp/simple-tests.el: Add tests for 'line-number-at-pos'.
103200
1032012017-07-03  R. Bernstein  <rocky@gnu.org>
103202
103203	Add realgud faces
103204
1032052017-07-03  Michael Albinus  <michael.albinus@gmx.de>
103206
103207	Fix tramp-tests.el for hydra
103208
103209	* test/Makefile.in: Remove instrumentation for tramp-tests.
103210
103211	* test/lisp/net/tramp-tests.el (tramp-test36-asynchronous-requests):
103212	Remove instrumentation.  Wrap with a timeout.  Give hydra
103213	another timer value.  Set `default-directory' in timer.
103214
1032152017-07-03  Bastien  <bzg@gnu.org>
103216
103217	Merge branch 'master' into scratch/org-mode-merge
103218
103219	Merge branch 'master' into scratch/org-mode-merge
103220
1032212017-07-03  Tino Calancha  <tino.calancha@gmail.com>
103222
103223	dired-do-shell-command: Fix check for wildcards
103224
103225	* lisp/dired-aux.el (dired-do-shell-command): Replace just '?', '*'
103226	and '`?' i.e., keep the whitespaces.
103227	* test/lisp/dired-aux-tests.el (dired-test-bug27496): Add test.
103228
1032292017-07-02  Noam Postavsky  <npostavs@gmail.com>
103230
103231	Split shr-copy-url dwim behavior into separate functions (Bug#26826)
103232
103233	* lisp/net/shr.el (shr-url-at-point, shr-probe-url)
103234	(shr-probe-and-copy-url, shr-maybe-probe-and-copy-url): New functions,
103235	split out from `shr-copy-url'.
103236	(shr-copy-url): Only copy the url, don't fetch it.
103237	(shr-map): Bind 'w' and 'u' to `shr-maybe-probe-and-copy-url', which
103238	has the same behavior as the old `shr-copy-url'.
103239	* etc/NEWS: Announce changes.
103240
1032412017-07-02  Alex Branham  <branham@utexas.edu>  (tiny change)
103242
103243	Make eww-search-words prompt for query if nothing selected
103244
103245	* lisp/net/eww.el (eww-search-words): Make eww-search-words prompt the
103246	user for a search query if the region is inactive or if the region is
103247	just whitespace.
103248
1032492017-07-02  Noam Postavsky  <npostavs@gmail.com>
103250
103251	* lisp/emacs-lisp/cl-print.el (cl-print-compiled-button): t by default.
103252
103253	* lisp/emacs-lisp/debug.el (debugger-insert-backtrace):
103254	* lisp/help-fns.el (describe-variable): No need to let-bind
103255	`cl-print-compiled-button' to t anymore.
103256
1032572017-07-02  Philipp Stephani  <phst@google.com>
103258
103259	Electric quotes: Improve support for Markdown mode (Bug#24709)
103260
103261	Introduce a new user option 'electric-quote-context-sensitive'.  If
103262	non-nil, have ' insert an opening quote if sensible.
103263
103264	Also introduce a new variable 'electric-quote-code-faces'.  Major
103265	modes such as 'markdown-mode' can add faces to this list to treat text
103266	as inline code and disable electric quoting.
103267
103268	* lisp/electric.el (electric-quote-context-sensitive): New user
103269	option.
103270	(electric-quote-code-faces): New variable.
103271	(electric-quote-post-self-insert-function): Treat ' as ` if
103272	desired and applicable; disable electric quoting for given faces.
103273
103274	* test/lisp/electric-tests.el (electric-quote-opening-single)
103275	(electric-quote-closing-single, electric-quote-opening-double)
103276	(electric-quote-closing-double)
103277	(electric-quote-context-sensitive-backtick)
103278	(electric-quote-context-sensitive-bob-single)
103279	(electric-quote-context-sensitive-bob-double)
103280	(electric-quote-context-sensitive-bol-single)
103281	(electric-quote-context-sensitive-bol-double)
103282	(electric-quote-context-sensitive-after-space-single)
103283	(electric-quote-context-sensitive-after-space-double)
103284	(electric-quote-context-sensitive-after-letter-single)
103285	(electric-quote-context-sensitive-after-letter-double)
103286	(electric-quote-context-sensitive-after-paren-single)
103287	(electric-quote-context-sensitive-after-paren-double)
103288	(electric-quote-markdown-in-text)
103289	(electric-quote-markdown-in-code): New unit tests.
103290
1032912017-07-02  Michael Albinus  <michael.albinus@gmx.de>
103292
103293	* doc/misc/tramp.texi: Replace ftp:// and http:// URLs by https://.
103294
1032952017-07-02  Eli Zaretskii  <eliz@gnu.org>
103296
103297	Avoid off-by-one errors in column C-n/C-p calculations
103298
103299	* src/indent.c (Fvertical_motion): Help C-n/C-p estimate correctly
103300	the width used up by line numbers by looking near the window-start
103301	point.
103302
1033032017-07-02  Tino Calancha  <tino.calancha@gmail.com>
103304
103305	Ask confirmation for all suspicious wildcards
103306
103307	* lisp/dired-aux.el (dired-do-shell-command): Check that all
103308	the wildcards are right.  Otherwise, ask for confirmation (Bug#27496).
103309
1033102017-07-02  Tino Calancha  <tino.calancha@gmail.com>
103311
103312	Extend dired-do-shell-command substitutions
103313
103314	Substitute "`?`" inside command with the current file name.
103315	See details in:
103316	https://lists.gnu.org/r/emacs-devel/2017-06/msg00618.html
103317	* lisp/dired-aux.el (dired-quark-subst-regexp, dired-star-subst-regexp):
103318	Mark as obsolete.
103319	(dired-isolated-string-re): New defun.
103320	(dired--star-or-qmark-p): New predicate.
103321	(dired-do-shell-command): Use dired--star-or-qmark-p.  Substitute "`?`"
103322	with the current file name.
103323	* doc/emacs/dired.texi (Shell Commands in Dired): Update manual.
103324
1033252017-07-02  Alan Mackenzie  <acm@muc.de>
103326
103327	Fix bug in yesterday's CC Mode commit.
103328
103329	* lisp/progmodes/cc-mode.el (c-quoted-number-head-before-point): Check a
103330	search has succeded before using the match data.
103331	(c-quoted-number-head-before-point, c-quoted-number-head-after-point):
103332	Specify that the position of the extremity of the head or tail is in the
103333	match data.
103334
1033352017-07-02  Philipp Stephani  <phst@google.com>
103336
103337	Remove FIXME comments about sentinel values
103338
103339	These FIXMEs can't be addressed because they would require breaking
103340	changes to the module API.  Furthermore, other module functions don't
103341	return sentinel values as well, so users generally have to call
103342	non_local_exit_check anyway.
103343
103344	* src/emacs-module.c (module_set_user_ptr)
103345	(module_set_user_finalizer, module_vec_set, module_vec_size): Remove
103346	FIXME comments.
103347
1033482017-07-02  Philipp Stephani  <phst@google.com>
103349
103350	Adapt Lisp reference to reader changes
103351
103352	The reader now warns about some unescaped character literals, but
103353	still allows them for compatibility reasons.  Slightly adapt the
103354	manual to forbid them officially.
103355
103356	* doc/lispref/objects.texi (Basic Char Syntax): Document that
103357	backslashes are now required before some characters.
103358
1033592017-07-02  Michael Albinus  <michael.albinus@gmx.de>
103360
103361	Fix Bug#27502
103362
103363	* lisp/autorevert.el (auto-revert-find-file-function): New defun.
103364	(find-file-hook): Use it.  (Bug#27502)
103365	(auto-revert-remove-current-buffer): New defun.
103366	(auto-revert-mode, auto-revert-buffers): Use it.
103367
1033682017-07-02  Noam Postavsky  <npostavs@gmail.com>
103369
103370	Let test summary go through even if some logs were not generated
103371
103372	* lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit): Check
103373	for existence of log files before reading.
103374
1033752017-07-01  Philipp Stephani  <phst@google.com>
103376
103377	* src/module-env-25.h (copy_string_contents): Fix comment.
103378
1033792017-07-01  Philipp Stephani  <phst@google.com>
103380
103381	Also mark module init function as noexcept if possible
103382
103383	* src/emacs-module.h.in (emacs_module_init): Mark as noexcept if
103384	possible.
103385
1033862017-07-01  Philipp Stephani  <phst@google.com>
103387
103388	Improve C++98 compatibility
103389
103390	* src/emacs-module.h.in (emacs_funcall_exit): Lose trailing comma.
103391	C++98 doesn't allow trailing commas in enumerations.
103392
1033932017-07-01  Eli Zaretskii  <eliz@gnu.org>
103394
103395	Minor copyedits of manuals regarding bidi conformance
103396
103397	* doc/emacs/mule.texi (Bidirectional Editing):
103398	* doc/lispref/display.texi (Bidirectional Display): Update the
103399	bidi conformance text.
103400
1034012017-07-01  Alan Mackenzie  <acm@muc.de>
103402
103403	Make C++ digit separators work.  Amend the handling of single quotes generally
103404
103405	Single quotes, even in strings and comments, are now marked with the
103406	"punctuation" syntax-table property, except where they are validly bounding a
103407	character literal.  They are font locked with font-lock-warning-face except
103408	where they are valid.  This is done in C, C++, ObjC, and Java Modes.
103409
103410	* lisp/progmodes/cc-defs.el (c-clear-char-property-with-value-on-char-function)
103411	(c-clear-char-property-with-value-on-char, c-put-char-properties-on-char): New
103412	functions/macros.
103413
103414	* lisp/progmodes/cc-fonts.el (c-font-lock-invalid-single-quotes): New function.
103415	(c-basic-matchers-before): invoke c-font-lock-invalid-single-quotes.
103416
103417	* lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): Remove
103418	c-before-after-change-digit-quote from wherever it occurs.  Insert
103419	c-parse-quotes-before-change into the entries for the languages where it is
103420	needed.
103421	(c-before-font-lock-functions): Remove c-before-after-change-digit-quote from
103422	wherever it occurs.  Insert c-parse-quotes-after-change into the entries for
103423	the languages which need it.
103424	(c-has-quoted-numbers): New lang-defconst/-defvar.
103425
103426	* lisp/progmodes/cc-mode.el (c-before-after-change-digit-quote): Remove.
103427	(c-maybe-quoted-number-head, c-maybe-quoted-number-tail)
103428	(c-maybe-quoted-number): New defconsts.
103429	(c-quoted-number-head-before-point, c-quoted-number-tail-after-point)
103430	(c-quoted-number-straddling-point, c-parse-quotes-before-change)
103431	(c-parse-quotes-after-change): New functions.
103432
1034332017-07-01  Noam Postavsky  <npostavs@gmail.com>
103434
103435	Ignore mouse-movement for describe-key-briefly (Bug#12204)
103436
103437	* lisp/help.el (help-read-key-sequence): Add optional argument ot
103438	ignore `mouse-movement' events.
103439	(describe-key-briefly): Use it.
103440	* doc/emacs/help.texi (Key Help):
103441	* etc/NEWS: Mention that mouse movement is ignored.
103442
1034432017-07-01  Noam Postavsky  <npostavs@gmail.com>
103444
103445	Refactor key describing commands
103446
103447	* lisp/help.el (help-read-key-sequence, help--analyze-key): New
103448	functions, extracted from `describe-key' and `describe-key-briefly'.
103449	(describe-key, describe-key-briefly): Use them.
103450
1034512017-07-01  Eli Zaretskii  <eliz@gnu.org>
103452
103453	Improve display of tabs with line numbers
103454
103455	* src/xdisp.c (x_produce_glyphs): Improve calculation of next tab
103456	stop in hscrolled lines.  Prevent aborts in compute_line_metrics.
103457
1034582017-07-01  Alan Third  <alan@idiocy.org>
103459
103460	Fix threads on NS (bug#25265)
103461
103462	src/nsterm.h (ns_select): Compiler doesn't like sigmask being const.
103463	(ns_run_loop_break) [HAVE_PTHREAD]: New function.
103464	src/nsterm.m (ns_select): Call thread_select from within ns_select.
103465	(ns_run_loop_break) [HAVE_PTHREAD]: New function.
103466	(ns_send_appdefined): Don't wait for main thread when sending app
103467	defined event.
103468	src/process.c (wait_reading_process_output): Call thread_select from
103469	within ns_select.
103470	src/systhread.c (sys_cond_broadcast) [HAVE_NS]: Break ns_select out of
103471	its event loop using ns_run_loop_break.
103472
1034732017-07-01  Eli Zaretskii  <eliz@gnu.org>
103474
103475	Avoid slow redisplay under 'visual' mode of line numbers
103476
103477	* src/xdisp.c (display_count_lines_visually): Avoid very slow
103478	redisplay when this function is invoked very far from point.
103479	Reported by Alex <agrambot@gmail.com>.
103480
1034812017-07-01  Noam Postavsky  <npostavs@gmail.com>
103482
103483	* lisp/help-fns.el (describe-variable): Let-bind cl-print-compiled-button.
103484
1034852017-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
103486
103487	* lisp/emacs-lisp/cl-extra.el (cl--random-state): New defstruct
103488
103489	(cl--random-state, cl--random-time): Move from cl-lib.el.
103490	(cl-random): Use struct accessors.
103491	(cl-random-state-p): Remove, provided by the defstruct.
103492	(cl-make-random-state): Rewrite to struct constructor.
103493
1034942017-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
103495
103496	* lisp/emacs-lisp/debug.el (debugger-list-functions): Remove obsolete msg
103497
1034982017-06-30  Eli Zaretskii  <eliz@gnu.org>
103499
103500	Improve documentation of faces related to display-line-numbers
103501
103502	* lisp/faces.el (line-number, line-number-current-line): Warn
103503	against using non-monospaced fonts.
103504
1035052017-06-30  Eli Zaretskii  <eliz@gnu.org>
103506
103507	Fix relative-number display with non-nil display-line-number-width
103508
103509	* src/xdisp.c (maybe_produce_line_number): Don't treat a zero
103510	value of display-line-number-width as acceptable.
103511	Handle the case of 'relative' with display-line-number-width
103512	non-nil and smaller than the absolute line number requires.
103513	Reported by Alex <agrambot@gmail.com>.
103514
1035152017-06-30  Michael Albinus  <michael.albinus@gmx.de>
103516
103517	Release Tramp 2.3.2
103518
103519	* doc/misc/tramp.texi (Android shell setup): Show default file name.
103520	Structure section.
103521
103522	* doc/misc/trampver.texi:
103523	* lisp/net/trampver.el: Change version to "2.3.2".
103524
103525	* test/lisp/net/tramp-tests.el (tramp-test-temporary-file-directory):
103526	Offer home directory for mock method if it doesn't exist.
103527
1035282017-06-30  Eli Zaretskii  <eliz@gnu.org>
103529
103530	Add documentation for display-line-numbers
103531
103532	* doc/emacs/custom.texi (Init Rebinding):
103533	* doc/emacs/modes.texi (Minor Modes): Remove references to
103534	linum-mode.
103535	* doc/emacs/display.texi (Display Custom): Describe the
103536	line-number display.
103537	(Optional Mode Line): Fix the index entry to not conflict with
103538	that in "Display Custom".
103539	* doc/emacs/basic.texi (Position Info): Add cross-reference to
103540	"Display Custom", for line-number display.
103541
103542	* src/xdisp.c (syms_of_xdisp): <display-line-numbers>: Mention
103543	display-line-numbers-disable in the doc string.
103544
103545	* lisp/cus-start.el (standard): Fix lst change.
103546
1035472017-06-30  Eli Zaretskii  <eliz@gnu.org>
103548
103549	Support displaying zero as the number of the current line
103550
103551	* src/xdisp.c (syms_of_xdisp)
103552	<display-line-numbers-current-absolute>: New variable.
103553	<display-line-numbers>: Doc fix.
103554	(maybe_produce_line_number): Support nil value of
103555	display-line-numbers-current-absolute.
103556
103557	* lisp/cus-start.el (standard): Add customization form for
103558	display-line-numbers-current-absolute.
103559
103560	* etc/NEWS: Document recently introduced features.
103561
1035622017-06-30  Eli Zaretskii  <eliz@gnu.org>
103563
103564	Speed up the visual-mode relative line numbers
103565
103566	* src/xdisp.c (display_count_lines_visually): Introduce a
103567	shortcut: if a relative line number was already calculated for
103568	this iterator object, just increase it instead of the
103569	expensive call to move_it_to.  Argument list changed to pass a
103570	pointer to the iterator object.
103571	(maybe_produce_line_number): Adjust for change in signature of
103572	display_count_lines_visually.  Record the relative line number and
103573	the corresponding byte position in the iterator object also in the
103574	'visual' mode.
103575
1035762017-06-30  Eli Zaretskii  <eliz@gnu.org>
103577
103578	Fix hscrolling with line numbers on TTY frames
103579
103580	* src/xdisp.c (hscroll_window_tree): Correct the X offset
103581	calculations on TTY frames.
103582	* src/term.c (produce_glyphs): Use it->lnum_pixel_width instead of
103583	a kludge using it->lnum_width.
103584
1035852017-06-30  Eli Zaretskii  <eliz@gnu.org>
103586
103587	Fix TAB display when the line-number face uses a smaller/larger font
103588
103589	* src/dispextern.h (struct it): New member lnum_pixel_width.
103590	* src/xdisp.c (maybe_produce_line_number): Compute the width of
103591	the line-number display in pixels.
103592	(x_produce_glyphs): Use it->lnum_pixel_width instead of a kludge
103593	that used it->lnum_width and made assumptions about pixel width.
103594
1035952017-06-30  Noam Postavsky  <npostavs@gmail.com>
103596
103597	Escape NUL bytes in X selections (Bug#6991)
103598
103599	* lisp/term/w32-win.el (w32--set-selection):
103600	* lisp/select.el (xselect--encode-string): Replace NUL bytes with
103601	"\0".
103602	* doc/emacs/killing.texi: Document new behavior.
103603	* etc/NEWS (times): Announce it.
103604
1036052017-06-30  Noam Postavsky  <npostavs@gmail.com>
103606
103607	Hide byte code in backtraces (Bug#6991)
103608
103609	* lisp/emacs-lisp/debug.el (debugger-print-function): New defcustom,
103610	defaulting to `cl-print'.
103611	(debugger-insert-backtrace, debugger-setup-buffer): Use it instead of
103612	`prin1'.
103613	* etc/NEWS: Announce it.
103614
1036152017-06-30  Noam Postavsky  <npostavs@gmail.com>
103616
103617	Don't redundantly cl-print arglist in function docstring again
103618
103619	* lisp/emacs-lisp/cl-print.el (cl-print-object): Don't print arglist
103620	part of docstring.
103621	* test/lisp/emacs-lisp/cl-print-tests.el (cl-print-tests-1): Update
103622	test accordingly.
103623
1036242017-06-30  Noam Postavsky  <npostavs@gmail.com>
103625
103626	Escape control characters in backtraces (Bug#6991)
103627
103628	* src/print.c (syms_of_print): Add new variable,
103629	print-escape-control-characters.
103630	(print_object): Print control characters with octal escape codes when
103631	print-escape-control-characters is true.
103632	* lisp/subr.el (backtrace):
103633	* lisp/emacs-lisp/debug.el (debugger-setup-buffer): Bind
103634	`print-escape-control-characters' to t.
103635
1036362017-06-30  Noam Postavsky  <npostavs@gmail.com>
103637
103638	Improve ert backtrace recording
103639
103640	Change ert to use the new `backtrace-frames' function instead of
103641	collecting frames one by one with `backtrace-frame'.  Additionally,
103642	collect frames starting from `signal' instead the somewhat arbitrary
103643	"6 from the bottom".  Skipping 6 frames would skip the expression that
103644	actually caused the signal that triggered the debugger.  Possibly 6
103645	was chosen because in the case of a failed test, the triggering frame
103646	is an `ert-fail' call, which is not so interesting.  But in case of a
103647	test throwing an error, this drops the `error' call which is too much.
103648
103649	* lisp/emacs-lisp/debug.el (debugger-make-xrefs): Remove.
103650	* lisp/emacs-lisp/ert.el (ert--make-xrefs-region): Bring in relevant
103651	code from `debugger-make-xrefs'.
103652	(ert--print-backtrace): Add DO-XREFS parameter, delegate to
103653	`debugger-insert-backtrace'.
103654	(ert--run-test-debugger): Record the backtrace frames starting from
103655	the instigating `signal' call.
103656	(ert-run-tests-batch): Pass nil for `ert--print-backtrace's new
103657	DO-XREFS parameter.
103658	(ert-results-pop-to-backtrace-for-test-at-point): Pass t as DO-XREFS
103659	to `ert--print-backtrace' and remove call to `debugger-make-xrefs'.
103660	* test/lisp/emacs-lisp/ert-tests.el (ert-test-record-backtrace): Check
103661	the backtrace list instead of comparing its string representation.
103662	Expect `signal' to be the first frame.
103663
1036642017-06-30  Noam Postavsky  <npostavs@gmail.com>
103665
103666	Operate on frame list instead of printed backtrace
103667
103668	* lisp/emacs-lisp/debug.el (debugger-insert-backtrace): New function,
103669	prints the given backtrace frames.
103670	(debugger-setup-buffer): Use it instead of editing the backtrace
103671	buffer text.
103672
1036732017-06-29  Eli Zaretskii  <eliz@gnu.org>
103674
103675	Minor fixes
103676
103677	* src/xdisp.c (maybe_produce_line_number): Fix bug that caused
103678	line numbers to be displayed in empty lines beyond ZV.
103679	(x_produce_glyphs): Start fixing TAB display in truncated lines.
103680
1036812017-06-29  Michael Albinus  <michael.albinus@gmx.de>
103682
103683	Improve timer handling when Tramp accepts output
103684
103685	* lisp/net/tramp-compat.el: Avoid compiler warning.
103686
103687	* lisp/net/tramp-sh.el (tramp-sh-file-name-handler):
103688	Remove lock machinery.
103689
103690	* lisp/net/tramp.el (tramp-locked, tramp-locker): Move up.
103691	(tramp-file-name-handler): Add lock machinery from
103692	`tramp-sh-file-name-handler'.  Allow timers to run.
103693	(tramp-accept-process-output): Remove nasty workaround.
103694	Suppress timers.
103695
103696	* test/lisp/net/tramp-tests.el (shell-command-sentinel):
103697	Suppress run in tests.
103698	(tramp--instrument-test-case-p): New defvar.
103699	(tramp--instrument-test-case): Use it in order to allow nested calls.
103700	(tramp--test-message, tramp--test-backtrace): New defsubst,
103701	will be used for occasional test instrumentation.
103702	(tramp-test00-availability, tramp-test31-vc-registered): Use them.
103703	(tramp-test28-shell-command)
103704	(tramp--test-shell-command-to-string-asynchronously): Suppress
103705	nasty messages.  Don't overwrite sentinel.
103706	(tramp-test36-asynchronous-requests): Rewrite major parts.
103707	Expect :passed.
103708
1037092017-06-28  Stefan Monnier  <monnier@iro.umontreal.ca>
103710
103711	* lisp/url/url-history.el: Use lexical-binding
103712
103713	(url-completion-function): Mark as obsolete.
103714	Mark unused args accordingly.
103715
1037162017-06-28  Noam Postavsky  <npostavs@gmail.com>
103717
103718	Don't assume url structs are vectors (Bug#27333)
103719
103720	* lisp/url/url-history.el (url-history-update-url): Use `url-p'
103721	instead of `vectorp'.
103722
1037232017-06-28  Mark Oteiza  <mvoteiza@udel.edu>
103724
103725	Replace with dolist some uses of while
103726
103727	* lisp/calc/calc-units.el (calc-permanent-units):
103728	(math-compare-unit-names, math-simplify-units-quotient):
103729	(math-build-units-table-buffer): Use dolist to replace extra bindings
103730	and some while loops.
103731
1037322017-06-28  Noam Postavsky  <npostavs@gmail.com>
103733
103734	Make tcl-auto-fill-mode obsolete (Bug#10772)
103735
103736	* lisp/progmodes/tcl.el (tcl-auto-fill-mode): Declare obsolete.
103737	* etc/NEWS: Announce it.
103738
1037392017-06-28  Noam Postavsky  <npostavs@gmail.com>
103740
103741	Don't read eshell/which output from *Help* buffer (Bug#26894)
103742
103743	* lisp/help-fns.el (help-fns--analyse-function)
103744	(help-fns-function-description-header): New functions, extracted from
103745	describe-function-1.
103746	(describe-function-1): Use them.
103747	* lisp/eshell/esh-cmd.el (eshell/which): Use
103748	`help-fns-function-description-header' instead of
103749	`describe-function-1'.
103750
1037512017-06-27  Eli Zaretskii  <eliz@gnu.org>
103752
103753	Support default-text-properties
103754
103755	* src/xdisp.c (should_produce_line_number): Call get-char-property
103756	at ZV as well, to support default-text-properties.
103757
1037582017-06-27  Eli Zaretskii  <eliz@gnu.org>
103759
103760	Avoid segfaults when some display vector is an empty string
103761
103762	* src/xdisp.c (next_element_from_display_vector): Don't try
103763	accessing the dpvec[] array if its size is zero.  (Bug#27504)
103764
1037652017-06-26  Eli Zaretskii  <eliz@gnu.org>
103766
103767	Initial support for visually-relative line numbers
103768
103769	Works very slowly.
103770
103771	* src/xdisp.c (display_count_lines_visually): New function.
103772	(maybe_produce_line_number): Support 'visual' mode of line-number
103773	display.
103774	* src/xdisp.c (maybe_produce_line_number): Update IT's metrics
103775	also when glyph_row is NULL.  This is important for move_it_*
103776	functions.
103777	(syms_of_xdisp) <display-line-number-width>: Now buffer-local.
103778	(try_window_id, redisplay_window, try_cursor_movement): For
103779	'visual' line-number display, disable the same redisplay
103780	optimizations as for 'relative'.
103781
103782	* lisp/cus-start.el (standard): Add new value for the
103783	customization form of display-line-numbers.
103784
1037852017-06-26  Eli Zaretskii  <eliz@gnu.org>
103786
103787	Update IT's metrics while simulating display
103788
103789	* src/xdisp.c (maybe_produce_line_number): Update IT's metrics
103790	also when glyph_row is NULL.  This is important for move_it_*
103791	functions.
103792
1037932017-06-26  Teemu Likonen  <tlikonen@iki.fi>
103794
103795	Fix bug in handling GnuPG's TRUST_MARGINAL status
103796
103797	* lisp/epg.el (epg--status-TRUST_MARGINAL): Change symbol `marginal'
103798	to `good'.
103799
1038002017-06-26  Tino Calancha  <tino.calancha@gmail.com>
103801
103802	Prefer `when' instead of 1-branch `if'
103803
103804	* lisp/dired-aux.el (dired-do-shell-command): Store condition value
103805	in local variable ok.
103806	Use `when' instead of 1-branch `if'.
103807
1038082017-06-26  Tino Calancha  <tino.calancha@gmail.com>
103809
103810	Use #' instead of (function ...)
103811
103812	* lisp/dired-aux.el (dired-do-chxxx, dired-clean-directory)
103813	(dired-mark-confirm, dired-query, dired-byte-compile)
103814	(dired-load, dired-update-file-line, dired-after-subdir-garbage)
103815	(dired-relist-file, dired-rename-subdir, dired-do-create-files)
103816	(dired-mark-read-file-name, dired-do-copy, dired-do-symlink)
103817	(dired-do-hardlink, dired-do-rename, dired-do-rename-regexp)
103818	(dired-do-copy-regexp, dired-do-hardlink-regexp)
103819	(dired-do-symlink-regexp, dired-create-files-non-directory)
103820	(dired-upcase, dired-downcase)
103821
103822	* lisp/dired.el (dired-mode, dired-copy-filename-as-kill)
103823	(dired-internal-do-deletions, dired-internal-do-deletions):
103824	Prefer #' instead of (function ...).
103825
1038262017-06-26  Tino Calancha  <tino.calancha@gmail.com>
103827
103828	Don't quote lambda forms
103829
103830	* lisp/dired.el (dired-re-maybe-mark, dired-map-over-marks)
103831	(dired-mark, dired-desktop-buffer-misc-data)
103832
103833	* lisp/dired-aux.el (dired-do-create-files, dired-do-create-files-regexp)
103834	(dired-create-files-non-directory, dired-insert-subdir-validate)
103835	(dired-alist-sort, dired-do-shell-command): Don't quote lambda forms.
103836
1038372017-06-26  Stefan Monnier  <monnier@iro.umontreal.ca>
103838
103839	* lisp/progmodes/cc-fonts.el: Remove/mark unused vars
103840
103841	(c-font-lock-declarators): Remove unused vars `id-end', `paren-depth',
103842	and `brackets-after-id'.
103843	(c-font-lock-objc-methods): Mark unused args.
103844
1038452017-06-25  Paul Eggert  <eggert@cs.ucla.edu>
103846
103847	Omit null-pointer test in intervals.h FRAME
103848
103849	* src/intervals.h (ROOT_INTERVAL_P, ONLY_INTERVAL_P)
103850	(INTERVAL_LAST_POS): Omit unnecessary parens.
103851	(LENGTH): Omit test for null pointer.  The argument is never null.
103852	The unnecessary test causes GCC 7.1.0 to assume that the argument
103853	might be null, and therefore to issue false alarms when the
103854	argument is dereferenced in other expressions.
103855
1038562017-06-25  Paul Eggert  <eggert@cs.ucla.edu>
103857
103858	Parenthesize frame.h macro definitions
103859
103860	* src/frame.h (FRAME_TOOL_BAR_POSITION)
103861	(FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS)
103862	(FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT)
103863	(FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT)
103864	(FRAME_OVERRIDE_REDIRECT, FRAME_UNDECORATED, FRAME_PARENT_FRAME)
103865	(FRAME_SKIP_TASKBAR, FRAME_NO_FOCUS_ON_MAP)
103866	(FRAME_NO_ACCEPT_FOCUS, FRAME_NO_SPECIAL_GLYPHS, FRAME_Z_GROUP)
103867	(FRAME_Z_GROUP_NONE, FRAME_Z_GROUP_ABOVE, FRAME_Z_GROUP_BELOW)
103868	(FRAME_HAS_HORIZONTAL_SCROLL_BARS): Parenthesize macro definiens
103869	to allow arbitrary expression arguments.
103870
1038712017-06-25  Paul Eggert  <eggert@cs.ucla.edu>
103872
103873	Port recent frame changes to GCC 7
103874
103875	* src/frame.c (keep_ratio): New arg P.  Caller changed.  Since it
103876	is non-null, it avoids a GCC 7 warning that FRAME_PARENT_FRAME
103877	might return null.  This also avoids a run-time test.
103878
1038792017-06-25  Eli Zaretskii  <eliz@gnu.org>
103880
103881	Minor aesthetic fix of last change.
103882
1038832017-06-25  Eli Zaretskii  <eliz@gnu.org>
103884
103885	Allow to disable display of line numbers beyond EOB
103886
103887	* src/buffer.c (disable_line_numbers_overlay_at_eob): New
103888	function.
103889	* src/lisp.h (disable_line_numbers_overlay_at_eob): Add prototype.
103890	* src/xdisp.c (should_produce_line_number): When at ZV, call
103891	disable_line_numbers_overlay_at_eob to determine whether line
103892	numbers should be displayed beyond ZV.
103893
1038942017-06-25  Michael Albinus  <michael.albinus@gmx.de>
103895
103896	Fix Android 6/7 problems in Tramp
103897
103898	* lisp/net/tramp-adb.el (tramp-adb-ls-toolbox-regexp): Fix link part.
103899	(tramp-adb-handle-directory-files-and-attributes)
103900	(tramp-adb-handle-file-name-all-completions): Insert "."  and
103901	".." only when needed.
103902	(tramp-adb-get-ls-command): Force one column output for toybox.
103903
1039042017-06-25  Stefan-W. Hahn  <stefan.hahn@s-hahn.de>  (tiny change)
103905
103906	* lisp/subr.el (setq-local): Add debug declaration (Bug#27408).
103907
1039082017-06-25  Eli Zaretskii  <eliz@gnu.org>
103909
103910	Fix line number display for overlay/display strings with newlines
103911
103912	* src/xdisp.c (maybe_produce_line_number): Fix the condition for
103913	producing space glyphs instead of a line number to include the
103914	case of display strings and overlays.
103915
1039162017-06-25  Alan Mackenzie  <acm@muc.de>
103917
103918	Make CC Mode load cl-lib rather than cl in Emacs 26.
103919
103920	* lisp/progmodes/cc-cmds.el (c-declaration-limits): Remove unused local
103921	variable.
103922
103923	* lisp/progmodes/cc-defs.el (c--mapcan-status): Remove.
103924	(c--cl-library): New variable.
103925	(Top level): Amend the form which requires library cl or cl-lib.
103926	(c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
103927	(c--delete-duplicate): Amend to use c--cl-library instead of
103928	c--mapcan-status.
103929
103930	* lisp/progmodes/cc-engine.el (c-syntactic-skip-backward)
103931	(c-back-over-compound-identifier): Remove unused local variables.
103932
103933	* lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Remove an unused
103934	local variable.
103935
103936	* lisp/progmodes/cc-langs.el (Top level): Amend to use c--cl-library instead
103937	of c--mapcan-status.
103938
103939	* lisp/progmodes/cc-styles.el (Top level): Add a cc-bytecomp-defun to try to
103940	silence a compiler warning.
103941
1039422017-06-25  Martin Rudalics  <rudalics@gmx.at>
103943
103944	Provide additional support for child frames
103945
103946	Provide mouse dragging and resizing of frames.  Allow resizing
103947	frames proportionally.  Provide additional functionality for
103948	child frames.  Minor bug fixes.
103949
103950	* lisp/frame.el (frame-border-width, frame-pixel-width)
103951	(frame-pixel-height): Alias to `frame-internal-border-width',
103952	`frame-native-width' and `frame-native-height'.
103953	(frame-inner-width, frame-inner-height, frame-outer-width)
103954	(frame-outer-height): New functions.
103955	* lisp/minibuffer.el (completion-auto-help): Fix typo.
103956	* lisp/mouse.el (mouse-drag-line, mouse-drag-mode-line)
103957	(mouse-drag-header-line): Allow moving a frame by dragging the
103958	mode line of its bottommost window (on a minibuffer-less frame)
103959	or the header line of its topmost window.
103960	(mouse-drag-vertical-line): Mention argument in doc-string.
103961	(mouse-resize-frame, mouse-drag-frame, mouse-drag-left-edge)
103962	(mouse-drag-top-left-corner, mouse-drag-top-edge)
103963	(mouse-drag-top-right-corner, mouse-drag-right-edge)
103964	(mouse-drag-bottom-right-corner, mouse-drag-bottom-edge)
103965	(mouse-drag-bottom-left-corner): New functions for resizing a
103966	frame by dragging its internal border together with
103967	corresponding key bindings.
103968	* lisp/tooltip.el (tooltip-frame-parameters): Add
103969	'no-special-glyphs' to default parameters and update version
103970	tag.
103971	* lisp/window.el (frame-auto-hide-function): Add choice to make
103972	frame invisible and update version tag.
103973	(window--delete): Handle 'auto-hide-function' frame parameter.
103974	(window--maybe-raise-frame): Respect 'no-focus-on-map' and
103975	'no-accept-focus' frame parameters.
103976	(display-buffer--action-function-custom-type): Add
103977	`display-buffer-in-child-frame'.
103978	(display-buffer): Mention `display-buffer-in-child-frame' in
103979	doc-string.
103980	(display-buffer-in-child-frame): New action function for
103981	`display-buffer'.
103982	(window--sanitize-margin): Return zero when MARGIN cannot be
103983	sanitized.
103984	(fit-frame-to-buffer): Major rewrite to handle child frames and
103985	'fit-frame-to-buffer-sizes' and 'fit-frame-to-buffer-margins'
103986	frame parameters.
103987	(window-largest-empty-rectangle--maximums-1)
103988	(window-largest-empty-rectangle--maximums)
103989	(window-largest-empty-rectangle--disjoint-maximums)
103990	(window-largest-empty-rectangle): New functions.
103991
103992	* src/dispextern.h (WINDOW_WANTS_MODELINE_P)
103993	(WINDOW_WANTS_HEADER_LINE_P): Remove.  Functionality is now
103994	provided by corresponding functions window_wants_modeline and
103995	window_wants_header_line in window.c.  Adjust users.
103996	* src/dispnew.c (adjust_glyph_matrix)
103997	(buffer_posn_from_coords): Use window_wants_modeline and
103998	window_wants_header_line instead of WINDOW_WANTS_MODELINE_P and
103999	WINDOW_WANTS_HEADER_LINE_P.
104000	* src/frame.c (keep_ratio): New function.
104001	(adjust_frame_size): Call keep_ratio for each of F's child
104002	frames.
104003	(make_frame): Initialize no_special_glyphs slot.
104004	(frame_internal_border_part): New function.
104005	(Fframe_pixel_width, Fframe_pixel_height, Fborder_width): Rename
104006	to Fframe_native_width, Fframe_native_height mand
104007	Fframe_internal_border_width.
104008	(frame_parm_table): Add Qno_special_glyphs entry.
104009	(frame_float_type): New enumeration type.
104010	(frame_float): New function to handle frame size and position
104011	ratios.
104012	(x_set_frame_parameters): Handle size and position ratios.
104013	(x_set_no_special_glyphs): New function
104014	(x_figure_window_size): Handle size and position ratios.
104015	(syms_of_frame): Add Qdisplay_monitor_attributes_list,
104016	Qno_special_glyphs, Qframe_edges, Qkeep_ratio, Qwidth_only,
104017	Qheight_only, Qleft_only and Qtop_only.
104018	* src/frame.h (internal_border_part): New enumeration type.
104019	(struct frame): New slot no_special_glyphs.
104020	(FRAME_NO_SPECIAL_GLYPHS): New macro.
104021	* src/gtkutil.c (xg_frame_restack): Return immediately for
104022	GTK versions before 2.18.0.
104023	* src/keyboard.c (internal_border_parts): New array constant.
104024	(make_lispy_position): For frames with border dragging enabled
104025	return internal border part.
104026	(syms_of_keyboard): New symbols Qdrag_internal_border,
104027	Qleft_edge, Qtop_left_corner, Qtop_edge, Qtop_right_corner,
104028	Qright_edge, Qbottom_right_corner, Qbottom_edge and
104029	Qbottom_left_corner.
104030	* src/minibuf.c (read_minibuf_unwind): When exiting the
104031	minibuffer deal with frames that have the 'minibuffer-exit'
104032	parameter set.
104033	(syms_of_minibuf): New symbol Qminibuffer_exit.
104034	* src/nsfns.m (frame_parm_handler): Add entry for
104035	x_set_no_special_glyphs.
104036	(Fx_create_frame): Handle 'no-special-glyphs' parameter.
104037	Intitialize new cursor types for dragging frame borders.
104038	* src/nsterm.h (struct ns_output): Add new cursor types for
104039	dragging frame borders.
104040	* src/w32fns.c (w32_frame_parm_handlers): Add entry for
104041	x_set_no_special_glyphs.
104042	(Fx_create_frame): Handle 'no-special-glyphs' parameter.
104043	Intitialize new cursor types for dragging frame borders.
104044	* src/w32term.h (struct w32_output): Add new cursor types for
104045	dragging frame borders.
104046	* src/window.c (coordinates_in_window)
104047	(Fwindow_line_height, window_internal_height): Use
104048	window_wants_modeline and window_wants_header_line instead of
104049	WINDOW_WANTS_MODELINE_P and WINDOW_WANTS_HEADER_LINE_P.
104050	(Fwindow_lines_pixel_dimensions): New function.
104051	(window_parameter): New function.
104052	(Fwindow_parameter): Call window_parameter.
104053	(window_wants_mode_line, window_wants_header_line): New
104054	functions replacing the macros WINDOW_WANTS_MODELINE_P and
104055	WINDOW_WANTS_HEADER_LINE_P from dispextern.h.
104056	(syms_of_window): New symbols Qmode_line_format and
104057	Qheader_line_format.
104058	* src/window.h: Reorganize and re-comment macros.  Use
104059	window_wants_modeline and window_wants_header_line instead of
104060	WINDOW_WANTS_MODELINE_P and WINDOW_WANTS_HEADER_LINE_P.
104061	(MINI_NON_ONLY_WINDOW_P, MINI_ONLY_WINDOW_P): Minor rewrite.
104062	(WINDOW_BUFFER): New macro.
104063	(WINDOW_BOX_LEFT_EDGE_COL, WINDOW_BOX_RIGHT_EDGE_COL): Remove.
104064	* src/xdisp.c (window_text_bottom_y, window_box_height)
104065	(window_box, start_display)
104066	(compute_window_start_on_continuation_line)
104067	(try_cursor_movement, redisplay_window)
104068	(try_window_reusing_current_matrix, try_window_id)
104069	(display_line, expose_window): Use window_wants_modeline and
104070	window_wants_header_line instead of WINDOW_WANTS_MODELINE_P and
104071	WINDOW_WANTS_HEADER_LINE_P.
104072	(pos_visible_p, display_mode_lines): Respect W's
104073	'mode-line-format' and 'header-line-format' window parameters.
104074	(init_iterator): Use window_wants_modeline and
104075	window_wants_header_line instead of WINDOW_WANTS_MODELINE_P and
104076	WINDOW_WANTS_HEADER_LINE_P.  For tip frames respect
104077	no_special_glyphs value.
104078	(note_mouse_highlight): Set frame border cursors when on
104079	internal border.
104080	(x_draw_right_divider, x_draw_bottom_divider): Try to improve
104081	drawing of window dividers.
104082	* src/xfns.c (mouse_cursor): Add entries for border parts.
104083	(mouse_cursor_types): Add entries for cursor types to drag
104084	frame borders.
104085	(INSTALL_CURSOR): Add entries for new cursor types to drag
104086	frame borders.
104087	(Fx_create_frame): Handle 'no-special-glyphs' parameter.
104088	(x_frame_parm_handlers): Add entry for
104089	x_set_no_special_glyphs.
104090	(Vx_window_left_edge_shape, Vx_window_top_left_corner_shape)
104091	(Vx_window_top_edge_shape, Vx_window_top_right_corner_shape)
104092	(Vx_window_right_edge_shape)
104093	(Vx_window_bottom_right_corner_shape)
104094	(Vx_window_bottom_edge_shape)
104095	(Vx_window_bottom_left_corner_shape): New variables.
104096	(x_frame_restack): Call xg_frame_restack only for GTK versions
104097	starting with 2.18.0.
104098	* src/xterm.c (x_free_frame_resources): Remove new cursors for
104099	dragging frame borders.
104100	* src/xterm.h (struct x_output): Add new cursor types for
104101	dragging frame borders.
104102
104103	* doc/lispref/display.texi (Size of Displayed Text): Document
104104	`window-lines-pixel-dimensions'.
104105	* doc/lispref/elisp.texi (Top): Add entry for "Mouse Dragging
104106	Parameters".
104107	* doc/lispref/frames.texi (Frame Size): Replace
104108	frame-pixel-width/-height by frame-native-width/-height.  Add
104109	frame-inner-width/-height and frame-outer-width/-height docs.
104110	(Position Parameters): Describe specifying position as ratios.
104111	Clarify remark about positions relative to bottom/ridge display
104112	edge.
104113	(Size Parameters): Describe specifying sizes as ratios.
104114	Describe 'fit-frame-to-buffer-margins' and
104115	'fit-frame-to-buffer-sizes' parameters.
104116	(Layout Parameters): Describe 'no-special-glyphs' parameter.
104117	(Frame Interaction Parameters): Describe 'auto-hide-function',
104118	'minibuffer-exit' and 'keep-ratio' parameters.
104119	(Mouse Dragging Parameters): New section describing
104120	'drag-internal-border', 'drag-with-header-line',
104121	'drag-with-mode-line', 'snap-width', 'top-visible' and
104122	'bottom-visible' parameters.
104123	(Management Parameters): Mention that `override-redirect' has
104124	no effect on MS Windows.
104125	(Font and Color Parameters): Mention child frames for `alpha'
104126	parameter.
104127	(Child Frames): Rewrite section with description and cross
104128	references to new frame parameters added.
104129	* doc/lispref/modes.texi (Mode Line Basics): Mention
104130	'mode-line-format' and 'header-line-format' window parameters.
104131	* doc/lispref/windows.texi (Resizing Windows): Mention effect
104132	of `fit-frame-to-buffer-margins' for child frames.
104133	(Display Action Functions): New action function
104134	`display-buffer-in-child-frame'.
104135	(Quitting Windows): Mention `make-frame-invisible' as optional
104136	value of `frame-auto-hide-function' and `auto-hide-function'
104137	frame paameter.
104138	(Coordinates and Windows): Describe new function
104139	`window-largest-empty-rectangle'.
104140	(Window Parameters): Describe new parameters 'mode-line-format'
104141	and 'header-line-format'.  Index all window parameters described
104142	in this section.
104143
1041442017-06-25  Paul Eggert  <eggert@cs.ucla.edu>
104145
104146	Adjust lm-verify to accept current notices
104147
104148	Problem reported by Mike Kupfer in:
104149	https://lists.gnu.org/r/emacs-devel/2017-06/msg00512.html
104150	* lisp/emacs-lisp/lisp-mnt.el (lm-crack-copyright):
104151	Do not require later lines in a copyright notice to have more
104152	indentation than earlier lines.
104153
1041542017-06-24  Eli Zaretskii  <eliz@gnu.org>
104155
104156	Minor change in NEWS.
104157
104158	Improve documentation in NEWS.
104159
1041602017-06-24  Eli Zaretskii  <eliz@gnu.org>
104161
104162	Move additional hscrolling code into a suitable 'if'
104163
104164	* src/xdisp.c (hscroll_window_tree): Make additional calculations
104165	regarding glyphs produced for line numbers conditional on
104166	line-number display.
104167
1041682017-06-24  Eli Zaretskii  <eliz@gnu.org>
104169
104170	Partial fix of hscroll of truncated lines with line numbers
104171
104172	* src/xdisp.c (x_produce_glyphs, hscroll_window_tree): Adjust
104173	hscroll calculations to line-number display.
104174	* src/term.c (produce_glyphs): Adjust tab stop to window's
104175	hscroll.  These two changes fix horizontal scrolling when line
104176	numbers are displayed.  But there's still a bug: the horizontal
104177	shift of lines that begin with a TAB is different from the rest.
104178	* src/xdisp.c (move_it_in_display_line_to): Call
104179	should_produce_line_number to determine whether a line number
104180	should be produced for this screen line.
104181
1041822017-06-24  Noam Postavsky  <npostavs@gmail.com>
104183
104184	Don't change byte-compile-delete-errors at runtime (Bug#27340)
104185
104186	* lisp/emacs-lisp/eieio-core.el: Confine `cl-declaim' calls to compile
104187	time.
104188
1041892017-06-24  Eli Zaretskii  <eliz@gnu.org>
104190
104191	Allow Lisp program to disable line-number display for specific lines
104192
104193	* etc/NEWS: Update the documentation.
104194
104195	* src/xdisp.c (syms_of_xdisp) <display-line-numbers-disable>: New
104196	symbol.
104197	(should_produce_line_number): New function.
104198	(display_line): Use should_produce_line_number to determine
104199	whether a line number should be produced for each glyph row.
104200
1042012017-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
104202
104203	* lisp/net/html2text.el: Move to obsolete/.
104204
1042052017-06-24  Eli Zaretskii  <eliz@gnu.org>
104206
104207	Support a separate face for displaying the current line's number
104208
104209	* lisp/faces.el (line-number-current-line): New face.
104210
104211	* src/xdisp.c (syms_of_xdisp) <line-number-current-line>: New
104212	symbol.
104213	(try_window_id, try_cursor_movement): Disable these optimizations
104214	when the line-number-current-line face is different from
104215	line-number face.
104216	(maybe_produce_line_number): Display the current line in the
104217	line-number-current-line face, if it's different from line-number.
104218
1042192017-06-24  Eli Zaretskii  <eliz@gnu.org>
104220
104221	Change display of current line in relative mode
104222
104223	* src/xdisp.c (maybe_produce_line_number): In relative mode
104224	display the current line number as its absolute value, not as zero.
104225
1042262017-06-24  Eli Zaretskii  <eliz@gnu.org>
104227
104228	Rename display-line-width
104229
104230	* etc/NEWS:
104231	* src/xdisp.c (syms_of_xdisp, maybe_produce_line_number):
104232	* lisp/cus-start.el: Rename display-line-width to
104233	display-line-number-width.
104234
1042352017-06-24  Eli Zaretskii  <eliz@gnu.org>
104236
104237	Fix tab stops when line numbers are displayed
104238
104239	* src/xdisp.c (x_produce_glyphs):
104240	* src/term.c (produce_glyphs): Adjust tab stops for the horizontal
104241	space taken by the line-number display.
104242
1042432017-06-24  Eli Zaretskii  <eliz@gnu.org>
104244
104245	Fix crashes on TTY frames due to negative lnum_width.
104246
104247	Don't display line numbers in the minibuffer and in tooltip frames.
104248
1042492017-06-24  Eli Zaretskii  <eliz@gnu.org>
104250
104251	Fix problems with line-number updates in Follow mode
104252
104253	* src/xdisp.c (redisplay_window): If forced window-start requires
104254	to move a window's point, and the window is under relative
104255	line-number display, force another round of redisplay to update
104256	the relative line numbers.  This fixes follow-mode "redisplay" of
104257	its window group.
104258
104259	* lisp/frame.el: Add display-line-numbers to the list of variables
104260	that should trigger redisplay of the current buffer.
104261
1042622017-06-24  Eli Zaretskii  <eliz@gnu.org>
104263
104264	Fix display of line numbers with fonts larger than the default
104265
104266	* src/xdisp.c (maybe_produce_line_number): Update the metrics in
104267	IT, not in IT->glyph_row, since the latter gets overwritten in
104268	display_line.  Fixes display of line numbers when the font used
104269	for them is larger than that of the default face.
104270
1042712017-06-23  Eli Zaretskii  <eliz@gnu.org>
104272
104273	Fix background color beyond EOB and cursor display
104274
104275	* src/xdisp.c: 	(maybe_produce_line_number): Use the default face
104276	for background of the blank glyphs in the line-number area which
104277	are drawn beyond EOB.
104278	(display_line): Reset the glyph row's displays_text_p flag only on
104279	empty lines that don't display line numbers.  This fixes cursor
104280	display beyond EOB.  Fix the bidi information in the glyphs
104281	produced for line numbers.  Set the avoid_cursor_p flag of glyphs
104282	produced for line numbers.
104283
1042842017-06-23  Eli Zaretskii  <eliz@gnu.org>
104285
104286	Fix display of indicate-empty-lines when line numbers are displayed
104287
104288	* src/xdisp.c (row_text_area_empty): New function.
104289	(display_line): Call row_text_area_empty to verify that a glyph
104290	row's text area is devoid of any glyphs that came from a buffer or
104291	a string.  This fixes a bug with empty-lines indication
104292	disappearing when line numbers or line-prefix are displayed.
104293	(display_line): Delete the argument FORCE; all callers changed.
104294	Remove the condition for actually producing the glyphs for the
104295	line number, as even if the number didn't change we need to
104296	produce empty space.
104297
1042982017-06-23  Vincent Belaïche  <vincentb1@users.sourceforge.net>
104299
104300	Fix symbol relocation when the relocated cell is renamed.
104301
104302	* lisp/ses.el (ses-sym-rowcol):  Check that the renamed cell
104303	hashmap has been instantiated before getting data from it.  When
104304	editing several spreadsheets, and you have spreadsheet #1 with a
104305	cell named `foo', and no renamed cell in spreadsheet #2, then if
104306	you make a formula with `foo' in spreadsheet #2, not doing this
104307	check will make an error.
104308	(ses-cell-set-formula): Robustify versus incorrect cell references
104309	given in the user provided formula.  An explicit error message is
104310	provided after the action when the user gives an incorrect cell
104311	reference, but the formula edition is not changed.  This means that
104312	if the incorrect reference is to a cell that is created someday,
104313	then this new cell will not have the edited cell in its reference
104314	list.  Fixing this can still be done by editing again the first
104315	cell formula.
104316	(ses-relocate-symbol): Do not create symbol of referred-to cell
104317	when this is a renamed cell.
104318
1043192017-06-23  Rasmus  <rasmus@gmx.us>
104320
104321	Synchronize with the "emacs-sync" branch from Org
104322
1043232017-06-22  Paul Eggert  <eggert@cs.ucla.edu>
104324
104325	Remove getc_unlocked configure-time check
104326
104327	* configure.ac (getc_unlocked): Remove check, as unlocked-io now
104328	does this for us.
104329
1043302017-06-22  Paul Eggert  <eggert@cs.ucla.edu>
104331
104332	Use unlocked stdio more systematically
104333
104334	This can improve performance significantly on stdio-bottlenecked code.
104335	E.g., make-docfile is 3x faster on my Fedora 25 x86-64 desktop.
104336	* admin/merge-gnulib (GNULIB_MODULES): Add unlocked-io.
104337	* lib-src/ebrowse.c, lib-src/emacsclient.c, lib-src/etags.c:
104338	* lib-src/hexl.c, lib-src/make-docfile.c, lib-src/movemail.c:
104339	* lib-src/profile.c, lib-src/update-game-score.c:
104340	Include unlocked-io.h instead of stdio.h, since these programs are
104341	single-threaded.
104342	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
104343	* lib/unlocked-io.h, m4/unlocked-io.m4: New files, copied from Gnulib.
104344	* src/charset.c, src/cm.c, src/emacs.c, src/image.c, src/keyboard.c:
104345	* src/lread.c, src/term.c:
104346	Include sysstdio.h, possibly instead of stdio.h, to define
104347	the unlocked functions if the system does not provide them.
104348	* src/charset.c, src/lread.c (getc_unlocked):
104349	Remove, since sysstdio.h now defines it if needed.
104350	* src/cm.c (cmputc, cmcheckmagic):
104351	* src/dispnew.c (update_frame, update_frame_with_menu)
104352	(update_frame_1, Fsend_string_to_terminal, Fding, bitch_at_user):
104353	* src/emacs.c (main, Fdump_emacs):
104354	* src/fileio.c (Fdo_auto_save, Fset_binary_mode):
104355	* src/image.c (slurp_file, png_read_from_file, png_load_body)
104356	(our_stdio_fill_input_buffer):
104357	* src/keyboard.c (record_char, kbd_buffer_get_event, handle_interrupt):
104358	* src/lread.c (readbyte_from_file):
104359	* src/minibuf.c (read_minibuf_noninteractive):
104360	* src/print.c (printchar_to_stream, strout)
104361	(Fredirect_debugging_output):
104362	* src/sysdep.c (reset_sys_modes, procfs_ttyname)
104363	(procfs_get_total_memory):
104364	* src/term.c (tty_ring_bell, tty_send_additional_strings)
104365	(tty_set_terminal_modes, tty_reset_terminal_modes)
104366	(tty_update_end, tty_clear_end_of_line, tty_write_glyphs)
104367	(tty_write_glyphs_with_face, tty_insert_glyphs)
104368	(tty_menu_activate):
104369	* src/xfaces.c (Fx_load_color_file):
104370	Use unlocked stdio when it should be safe.
104371	* src/sysstdio.h (clearerr_unlocked, feof_unlocked, ferror_unlocked)
104372	(fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
104373	(fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
104374	(putc_unlocked, putchar_unloced): Provide substitutes if not declared.
104375
1043762017-06-22  Glenn Morris  <rgm@gnu.org>
104377
104378	* lisp/net/shr.el (shr-fill-text): Actually fill the text.  (Bug#27399)
104379
1043802017-06-22  Michal Nazarewicz  <mina86@mina86.com>
104381
104382	unidata: don’t check special casing in unidata-check  (bug#26656)
104383
104384	* admin/unidata/unidata-gen.el (unidata-check): Do not test special
104385	casing mapping of characters since that mapping is not constructed from
104386	the unidata.txt file.
104387	Also, check for integer decoder and cons char earlier so that less
104388	unnecessary processing is performed.
104389
1043902017-06-22  Stefan Monnier  <monnier@iro.umontreal.ca>
104391
104392	* lisp/descr-text.el (describe-char): Avoid string-*-multibyte
104393
104394	Avoid string-to-multibyte and string-as-unibyte.
104395	Don't make *Help* unibyte just because the char was in a unibyte buffer.
104396
1043972017-06-22  Rasmus  <rasmus@gmx.us>
104398
104399	Add Org schemas.xml contents to Emacs schemas.xml
104400
104401	Entries from the Org version of schemas.xml have been added to
104402	the Emacs version of schemas.xml.
104403
1044042017-06-22  Rasmus  <rasmus@gmx.us>
104405
104406	Update Org to v9.0.9
104407
104408	Please see etc/ORG-NEWS for details.
104409
1044102017-06-22  Vincent Belaïche  <vincentb1@users.sourceforge.net>
104411
104412	Do not hard code A1 cell reference, as it may be renamed.
104413
104414	* lisp/ses.el (ses-recalculate-all): `A1' -> `(ses-cell-symbol 0 0)'
104415
1044162017-06-22  Martin Rudalics  <rudalics@gmx.at>
104417
104418	Fix make_hash_table calls in lread.c
104419
104420	* src/lread.c (readevalloop, read_internal_start): Fix
104421	make_hash_table calls to make build succeed.
104422
1044232017-06-22  Ken Raeburn  <raeburn@raeburn.org>
104424
104425	Merge several Lisp reader speedups.
104426
1044272017-06-22  Ken Raeburn  <raeburn@raeburn.org>
104428
104429	Create less garbage to collect while reading symbols.
104430
104431	* src/lread.c (read1): When interning a symbol, only create a new
104432	string object for the name if we're going to use it for a new symbol
104433	object.
104434
1044352017-06-22  Ken Raeburn  <raeburn@raeburn.org>
104436
104437	Replace read_objects assoc list with two hash tables.
104438
104439	For larger input files with lots of shared data structures, an
104440	association list is too slow.
104441
104442	* src/lread.c (read_objects_map, read_objects_completed): New
104443	variables, replacing read_objects.
104444	(readevalloop): Initialize them with hash tables before starting a
104445	top-level read, if they're not already empty hash tables, and reset
104446	them to Qnil afterwards if something was added to the hash tables.
104447	(read_internal_start): Likewise.
104448	(read1): Store first the placeholder and later the newly read object
104449	into read_objects_map under the specified object number.  If the new
104450	object can contain a reference to itself, store it in
104451	read_objects_completed.
104452	(substitute_objects_recurse): Check read_objects_completed instead of
104453	read_objects for the known possibly-recursive objects.
104454	(syms_of_lread): Update initializations.
104455
1044562017-06-22  Ken Raeburn  <raeburn@raeburn.org>
104457
104458	Use getc_unlocked.
104459
104460	* configure.ac: Check for getc_unlocked.
104461	* src/charset.c (read_hex, load_charset_map_from_file): Use
104462	getc_unlocked instead of getc.
104463	(getc_unlocked) [!HAVE_GETC_UNLOCKED]: Fall back to getc.
104464	* src/lread.c (readbyte_from_file, Fget_file_char, read1,
104465	getc_unlocked): Likewise.
104466
1044672017-06-22  Stefan Monnier  <monnier@iro.umontreal.ca>
104468
104469	Reduce lread substitutions.
104470
104471	* src/lread.c (read1): After reading an object using the "#n=" syntax,
104472	if the read object is a cons cell, instead of recursively substituting
104473	the placeholder with the new object, mutate the placeholder cons cell
104474	itself to have the correct car and cdr values.
104475
1044762017-06-22  Ken Raeburn  <raeburn@raeburn.org>
104477
104478	Short-circuit substitutions for some simple types.
104479
104480	Values that don't contain other values cannot be circular, so checking
104481	for circular objects is a waste of cycles.
104482
104483	* src/lread.c (substitute_object_recurse): If the subtree being
104484	examined is a symbol, number, or property-less string, just return
104485	it.
104486
1044872017-06-22  Paul Eggert  <eggert@cs.ucla.edu>
104488
104489	Limit style_format to MAX_ALLOCA
104490
104491	* src/editfns.c (styled_format): Subtract initial buffer size
104492	from sa_avail, since it is nontrivial.
104493
1044942017-06-22  Paul Eggert  <eggert@cs.ucla.edu>
104495
104496	Limit bidi_find_bracket_pairs to MAX_ALLOCA
104497
104498	* src/bidi.c (MAX_BPA_STACK): Now a constant, not a macro.
104499	Shrink it to allow for the two struct bidi_it objects in
104500	the same frame.
104501	(PUSH_BPA_STACK): Avoid integer overflow with enormous bidi cache.
104502	(bidi_find_bracket_pairs): Use compile-time check instead of runtime.
104503
1045042017-06-22  Paul Eggert  <eggert@cs.ucla.edu>
104505
104506	Limit insert-file-contents to MAX_ALLOCA
104507
104508	* src/fileio.c (READ_BUF_SIZE): Don’t allocate more than
104509	MAX_ALLOCA bytes in a single stack array.
104510
1045112017-06-21  Paul Eggert  <eggert@cs.ucla.edu>
104512
104513	Remove malloc_find_address relic
104514
104515	* src/gmalloc.c (register_heapinfo, _malloc_internal_nolock):
104516	Omit unnecessary initialization.
104517
1045182017-06-21  Paul Eggert  <eggert@cs.ucla.edu>
104519
104520	Fix temacs hybrid_malloc core dump
104521
104522	Without this patch, ./temacs would dump core sometimes on Fedora
104523	25 x86-64.  The problem was that the hybrid allocator assumed that
104524	all pointers into bss_sbrk_buffer are allocated via gmalloc.  This
104525	assumption is not true on Fedora, because the standard memory
104526	allocator calls gdefault_morecore, which means its blocks are
104527	interleaved with our blocks.  Usually the code happened to work,
104528	because our data structures agreed with the glibc data structures,
104529	but this was merely luck due to a shared pedigree, and as glibc
104530	mutates our luck has run out.
104531	* src/gmalloc.c (ALLOCATED_BEFORE_DUMPING) [HYBRID_MALLOC]:
104532	Remove; no longer needed.
104533	(BLOCK): Use unsigned division, as that does the right thing near zero.
104534	(register_heapinfo, __malloc_internal_nolock, __free_internal_nolock)
104535	(_realloc_internal_nolock):
104536	Big blocks now have type -1, not 0, as 0 now means the block is
104537	not ours.
104538	(morecore_nolock): Omit now-unnecessary casts to size_t.
104539	(allocated_via_gmalloc) [HYBRID_MALLOC]: New function.
104540	(hybrid_free, hybrid_realloc) [HYBRID_MALLOC]: Use it, to
104541	avoid calling the wrong free or realloc function in some cases.
104542
1045432017-06-21  Katsumi Yamaoka  <yamaoka@jpl.org>
104544
104545	Make gnus-article-date-user work
104546
104547	* lisp/gnus/gnus-art.el (article-date-ut):
104548	Work for unfolded multi-line Date header.
104549	(article-transform-date):
104550	Refactor; add header name if it is missing in user-defined date line.
104551	(article-date-user): Fix name of date type.
104552
1045532017-06-21  Noam Postavsky  <npostavs@gmail.com>
104554
104555	Keep order of completion candidates (Bug#25995, Bug#24676)
104556
104557	* lisp/minibuffer.el (completion-pcm--filename-try-filter)
104558	(completion-pcm--all-completions): Use nreverse to undo the reversing
104559	caused by using push in the loop.
104560
1045612017-06-21  Glenn Morris  <rgm@gnu.org>
104562
104563	* src/lread.c (syms_of_lread) <load-history>: Doc fix.
104564
1045652017-06-21  Alex Gramiak  <agrambot@gmail.com>
104566
104567	Mark prolog indent variables as safe (bug#27369)
104568
104569	* lisp/progmodes/prolog.el (prolog-indent-width)
104570	(prolog-left-indent-regexp, prolog-paren-indent-p)
104571	(prolog-paren-indent): Add :safe property.
104572
1045732017-06-20  Simen Heggestøyl  <simenheg@gmail.com>
104574
104575	Remove `:options' from `css-electric-keys'
104576
104577	* lisp/textmodes/css-mode.el (css-electric-keys): Remove `:options`
104578	since it just duplicates the default value.
104579
1045802017-06-20  Paul Eggert  <eggert@cs.ucla.edu>
104581
104582	Fix crash when built by GNU Gold linker on x86
104583
104584	Problem reported by Andrés Musetti (Bug#27248).
104585	* src/widget.c (emacsFrameClassRec): Do not initialize superclass here.
104586	(emacsFrameClass): Now a function (which initializes the
104587	superclass) instead of a variable.  All uses changed.
104588
1045892017-06-20  Paul Eggert  <eggert@cs.ucla.edu>
104590
104591	Simplify autogen.sh version checking
104592
104593	* autogen.sh (get_version): Simplify and make more reliable
104594	by using expr rather than echo | sed.  Check exit status of program.
104595	Run program in subshell in case it cannot be executed.
104596	(check_version): Check exit status of command rather than its output.
104597	Check return status of get_version.
104598
1045992017-06-20  Katsumi Yamaoka  <yamaoka@jpl.org>
104600
104601	Delete old Date header in a simple way
104602
104603	* lisp/gnus/gnus-art.el (article-date-ut): Don't rely on text prop
104604	when searching the old Date header boundary in order to delete it.
104605
1046062017-06-20  Bastien  <bzg@gnu.org>
104607
104608	Revert "Don't bind org-agenda key to an anonymous function"
104609
104610	This reverts commit 49c0ff29c2e0243ba35ec17e3e3af49369be43db.
104611
1046122017-06-20  Katsumi Yamaoka  <yamaoka@jpl.org>
104613
104614	Bind enable-local-variables to nil globally (fix dbe3e41)
104615
104616	* lisp/gnus/mm-view.el (mm-display-inline-fontify):
104617	Bind enable-local-variables to nil globally instead of making it
104618	buffer-local; remove let-bind of local-enable-local-variables.
104619	cf. <b4mtw3bbfp5.fsf@jpl.org> in the emacs-devel list.
104620
1046212017-06-20  Glenn Morris  <rgm@gnu.org>
104622
104623	kill-matching-buffers to optionally not confirm
104624
104625	* lisp/files.el (kill-matching-buffers):
104626	Add option to not confirm killing.  (Bug#27286)
104627
1046282017-06-20  Glenn Morris  <rgm@gnu.org>
104629
104630	* lisp/files.el (local-enable-local-variables): Doc fix.
104631
1046322017-06-20  Glenn Morris  <rgm@gnu.org>
104633
104634	autogen.sh: try to check for tool being present but broken
104635
104636	* autogen.sh (get_version): Check return status of "--version".
104637	(check_version): Try to distinguish between a missing tool
104638	and a broken one.  (Bug#27288)
104639
1046402017-06-19  Glenn Morris  <rgm@gnu.org>
104641
104642	Avoid a custom-variable-type error (bug#27363)
104643
104644	* lisp/cus-edit.el (custom-variable-type):
104645	Avoid an error due to plist-put becoming stricter of late.
104646
1046472017-06-19  Glenn Morris  <rgm@gnu.org>
104648
104649	Don't put deleted packages in the trash (bug#14967)
104650
104651	* lisp/emacs-lisp/package.el (package-delete):
104652	Don't pay attention to delete-by-moving-to-trash.
104653
1046542017-06-19  Nicolas Petton  <nicolas@petton.fr>
104655
104656	Revert "Add current-line in simple.el"
104657
104658	This reverts commit ae98cdf9431604d0f722f1db217ca06debfbb7b6.
104659
1046602017-06-19  Damien Cassou  <damien@cassou.me>
104661
104662	Add current-line in simple.el
104663
104664	* lisp/simple.el (current-line): New function.
104665	* test/lisp/simple-tests.el: Add tests for current-line.
104666
1046672017-06-19  Katsumi Yamaoka  <yamaoka@jpl.org>
104668
104669	Don't try to eval local variables in Gnus article
104670
104671	* lisp/gnus/mm-view.el (mm-display-inline-fontify): Disable local vars.
104672
1046732017-06-18  Paul Eggert  <eggert@cs.ucla.edu>
104674
104675	Fix emacs-module.h cleaning
104676
104677	* src/Makefile.in (clean): Do not remove emacs-module.h.in.
104678	(bootstrap-clean): Remove emacs-module.h.
104679
1046802017-06-18  Andreas Schwab  <schwab@linux-m68k.org>
104681
104682	* lisp/url/url-util.el (url-get-url-at-point): Add missing group
104683	in regex.
104684
1046852017-06-18  Paul Eggert  <eggert@cs.ucla.edu>
104686
104687	* lib/gettext.h: Merge from gnulib.
104688
1046892017-06-18  Paul Eggert  <eggert@cs.ucla.edu>
104690
104691	Merge from gnulib
104692
104693	This (and my previous patch) incorporate:
104694	2017-06-17 diffseq: port to GCC 7 with --enable-gcc-warnings
104695	2017-06-15 gettext-h: Update comment
104696	* lib/diffseq.h: Copy from gnulib.
104697
1046982017-06-17  Noam Postavsky  <npostavs@gmail.com>
104699
104700	* test/Makefile.in: Don't suppress test failure for single tests.
104701
1047022017-06-17  Philipp Stephani  <phst@google.com>
104703
104704	emacs-module.h: Create emacs_env_26
104705
104706	This was part of the original design of the module
104707	API (https://lists.gnu.org/r/emacs-devel/2015-02/msg00960.html),
104708	but I didn't take it into account when adding the should_quit
104709	function.
104710
104711	Instead of duplicating the environment fields or using the C
104712	preprocessor, use configure to build emacs-module.h.
104713
104714	* configure.ac: Expand emacs-module.h template.
104715
1047162017-06-17  Eli Zaretskii  <eliz@gnu.org>
104717
104718	Improve documentation of replace-buffer-contents
104719
104720	* etc/NEWS (replace-buffer-contents): Fix formatting.
104721
104722	* src/editfns.c (Freplace_buffer_contents): Doc fix.
104723
1047242017-06-17  Eli Zaretskii  <eliz@gnu.org>
104725
104726	Finish up native display of line numbers
104727
104728	* src/xdisp.c (maybe_produce_line_number): Produce a blank before
104729	the number, for R2L rows.  Increment 'g' in the loop even if
104730	glyph_row is NULL.  Accept 2nd argument FORCE and produce the
104731	line-number glyphs if it is non-zero.
104732	(move_it_in_display_line_to): Account for the space taken by the
104733	line-number glyphs.  Call maybe_produce_line_number with 2nd
104734	argument non-zero.
104735	(set_cursor_from_row): Fix calculation of cursor X coordinate in
104736	R2L rows with display-produced glyphs at the beginning.
104737	(syms_of_xdisp) <line-number>: New face symbol.
104738	<relative, display-line-width>: New symbols.
104739	(maybe_produce_line_number): Use the line-number face for
104740	displaying line numbers.  Support relative line-number display.
104741	Support user-defined width for displaying line numbers.
104742	(try_cursor_movement, try_window_id): Disable these optimizations
104743	when displaying relative line numbers.
104744	* src/dispextern.h (struct it): New member 'pt_lnum'.
104745
104746	* lisp/faces.el (line-number): New face.
104747	* lisp/cus-start.el (standard): Provide customization forms for
104748	display-line-numbers and display-line-width.
104749	* lisp/menu-bar.el (menu-bar-showhide-menu): Add menu-bar item to
104750	turn display-line-numbers on and off.
104751
104752	* etc/NEWS: Document the new feature.
104753
1047542017-06-17  Philipp Stephani  <phst@google.com>
104755
104756	Allow local variables section to begin with a square bracket
104757
104758	Fixes Bug#27391.
104759
104760	* lisp/international/mule.el (find-auto-coding): Fix regular
104761	expression for "Local Variables" section.
104762
104763	* test/lisp/international/mule-tests.el (find-auto-coding--bug27391):
104764	Add unit test.
104765
1047662017-06-17  Philipp Stephani  <phst@google.com>
104767
104768	Remove unnecessary point motion
104769
104770	* src/editfns.c (Freplace_buffer_contents): Remove unnecessary point
104771	motion.
104772
1047732017-06-17  Philipp Stephani  <phst@google.com>
104774
104775	Add command to replace buffer contents
104776
104777	Add a new command 'replace-buffer-contents' that uses the Myers diff
104778	algorithm to non-destructively replace the accessible portion of the
104779	current buffer.  The Myers algorithm is implemented in Gnulib.
104780
104781	* src/editfns.c (Freplace_buffer_contents): New command.
104782	(set_bit, bit_is_set, buffer_chars_equal): New helper functions.
104783	(syms_of_editfns): Define new command.
104784
104785	* test/src/editfns-tests.el (replace-buffer-contents-1)
104786	(replace-buffer-contents-2): New unit tests.
104787
104788	* src/buffer.h (BUF_FETCH_CHAR_AS_MULTIBYTE): New helper macro.
104789
104790	* admin/merge-gnulib (GNULIB_MODULES): Add diffseq.h and minmax.h.
104791
1047922017-06-17  Andreas Schwab  <schwab@linux-m68k.org>
104793
104794	* lisp/international/characters.el: Update list of zero and full
104795	width characters according to Unicode 9.0.0.
104796
1047972017-06-17  Simen Heggestøyl  <simenheg@gmail.com>
104798
104799	Complete CSS property values less eagerly (Bug#27392)
104800
104801	* lisp/textmodes/css-mode.el (css--complete-property-value): Be less
104802	eager by looking for a colon after the property which values are being
104803	completed for.
104804
104805	* test/lisp/textmodes/css-mode-tests.el (css-test-complete-property):
104806	Add a test case ensuring that properties that are prefixes of other
104807	properties don't hinder further completion.
104808
1048092017-06-17  Noam Postavsky  <npostavs@gmail.com>
104810
104811	Handle integer indices for eshell variables (Bug#26055)
104812
104813	* lisp/eshell/esh-var.el (eshell-index-value): Convert index to number
104814	if it's been marked as one, just like `eshell-lisp-command' does.
104815
1048162017-06-17  Mark Oteiza  <mvoteiza@udel.edu>
104817
104818	Don't bind org-agenda key to an anonymous function
104819
104820	* lisp/org/org-agenda.el: Bind "g" to named command.
104821	(org-agenda-redo-all): New command.  Extend the previous functionality
104822	through a prefix argument.
104823
1048242017-06-17  Dmitry Gutov  <dgutov@yandex.ru>
104825
104826	Add test for the fix in the parent commit
104827
104828	* test/src/undo-tests.el (undo-test-skip-invalidated-markers):
104829	New test, for the fix in the parent commit.
104830
1048312017-06-17  Nitish Chandra  <nitishchandrachinta@gmail.com>  (tiny change)
104832
104833	primitive-undo: Update only the currently valid markers
104834
104835	* lisp/simple.el (primitive-undo):
104836	Update only the currently valid markers (bug#25599).
104837
1048382017-06-16  Eli Zaretskii  <eliz@gnu.org>
104839
104840	Initial version of native display of line numbers
104841
104842	* src/xdisp.c (syms_of_xdisp) <display-line-numbers>: New
104843	buffer-local variable.
104844	Include <math.h>.
104845	(maybe_produce_line_number): New function.
104846	(DISP_INFINITY): Rename from INFINITY, since math.h defines INFINITY.
104847	(try_window_reusing_current_matrix): Don't use this method when
104848	display-line-numbers is in effect.
104849	* src/dispextern.h (struct it): New members 'lnum'.
104850
1048512017-06-16  Philipp Stephani  <phst@google.com>
104852
104853	Correctly detect URLs surrounded by parentheses in comments
104854
104855	* lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url):
104856	Make parentheses match work inside comments.
104857
104858	* test/lisp/thingatpt-tests.el (thing-at-point-url-in-comment): Add
104859	unit test.
104860
1048612017-06-16  Michael Albinus  <michael.albinus@gmx.de>
104862
104863	Fix load-path issue when it contains remote directories
104864
104865	* lisp/net/tramp.el (tramp-file-name-handler): Use `autoloadp'.
104866	(tramp-use-absolute-autoload-file-names): New defun.  Call it
104867	after loading tramp.el.
104868
104869	* test/lisp/net/tramp-tests.el (tramp-test38-remote-load-path):
104870	New test.
104871	(tramp-test39-unload): Rename.
104872
1048732017-06-16  Alan Mackenzie  <acm@muc.de>
104874
104875	Ensure C++ initializer lists don't get fontified.
104876
104877	* lisp/progmodes/cc-cmds.el (c-block-comment-flag): Move declaration to solve
104878	compiler warning.
104879
104880	* lisp/progmodes/cc-fonts.el (c-get-fontification-context): Add an extra
104881	clause to handle C++ member initialization lists.
104882	(c-font-lock-single-decl): New function, extracted from
104883	c-font-lock-declarations.
104884	(c-font-lock-declarations): Call c-font-lock-single-decl in place of inline
104885	code.
104886	(c-font-lock-cut-off-declarators): Make more rigorous by calling
104887	c-get-fontification-context, c-forward-decl-or-cast-1, and
104888	c-font-lock-single-decl in place of rather approximate code.
104889
1048902017-06-16  Alan Mackenzie  <acm@muc.de>
104891
104892	Fix hang in CC Mode when ":" is typed after identifier at EOB.
104893
104894	* lisp/progmodes/cc-engine.el (c-forward-declarator): Fix coding error
104895	confusing ":" and EOB.
104896
1048972017-06-15  Alan Mackenzie  <acm@muc.de>
104898
104899	Create a toggle between block and line comments in CC Mode.
104900
104901	Also (unrelated change) initialize the modes' keymaps at each loading.
104902
104903	* lisp/progmodes/cc-cmds.el (c-update-modeline): amend for the new information
104904	on the modeline.
104905	(c-block-comment-flag): New variable.
104906	(c-toggle-comment-style): New function.
104907
104908	* lisp/progmodes/cc-langs.el (c-block-comment-starter)
104909	(c-line-comment-starter): Make them c-lang-defvars.
104910	(c-block-comment-is-default): New c-lang-defvar.
104911	(comment-start, comment-end): Make the default values dependent on
104912	c-block-comment-is-default.
104913
104914	* lisp/progmodes/cc-mode.el (c-mode-base-map): Define C-c C-k in this map.
104915	(c-basic-common-init): Initialize c-block-comment-flag.
104916	(c-mode-map, c++-mode-map, objc-mode-map, java-mode-map, idl-mode-map)
104917	(pike-mode-map, awk-mode-map): Make entries in these key maps each time the
104918	mode is loaded rather than just once per Emacs session.
104919
104920	* doc/misc/cc-mode.texi (Comment Commands): Introduce the notion of comment
104921	style.
104922	(Minor Modes): Define comment style.  Describe how comment style influences
104923	the information displayed on the modeline.  Document c-toggle-comment-style.
104924	(FAQ): Add a question about toggling the comment style.
104925
1049262017-06-15  Paul Eggert  <eggert@cs.ucla.edu>
104927
104928	Pacify clang without munging C source
104929
104930	* configure.ac (WARN_CFLAGS): With Clang, use
104931	-Wno-tautological-compare regardless of --enable-gcc-warnings.
104932	(WERROR_CFLAGS): Simplify assignments, and guarantee it’s always set.
104933	* lib/strftime.c: Copy from gnulib, reverting Clang-specific
104934	change which I hope is no longer needed.
104935	* src/emacs.c (main): Revert rlim_t change, as rlim_t is signed on
104936	some older non-POSIX hosts.
104937
1049382017-06-15  Paul Eggert  <eggert@cs.ucla.edu>
104939
104940	No need to complicate make-docfile.c for Clang
104941
104942	* lib-src/make-docfile.c (put_filename): Undo recent change.
104943	The Clang false alarm occurs only with CFLAGS=-save-temps and
104944	we needn’t worry about pacifying unusual compiler configurations.
104945
1049462017-06-15  Paul Eggert  <eggert@cs.ucla.edu>
104947
104948	Port './configure CC=clang' to Fedora 25
104949
104950	* configure.ac (HAVE_IMAGEMAGICK): Disable if even a
104951	standard function like MagickRelinquishMemory does not link.
104952
1049532017-06-15  Paul Eggert  <eggert@cs.ucla.edu>
104954
104955	Don’t worry about __STDC_VERSION__ in emacs-module
104956
104957	* src/emacs-module.h: Remove __STDC_VERSION__ check.  In the past
104958	we’ve found that some compilers do not define this symbol even
104959	when they work well enough.  If necessary features like stdbool.h
104960	are missing the compiler will complain eventually anyway.
104961
1049622017-06-14  Paul Eggert  <eggert@cs.ucla.edu>
104963
104964	Port cleanup check to Oracle Studio 12.5
104965
104966	* src/conf_post.h (__has_attribute_cleanup): Resurrect.
104967	* src/emacs-module.c: Verify __has_attribute (cleanup), but in an
104968	#if this time.
104969
1049702017-06-14  Bastien  <bzg@gnu.org>
104971
104972	Fix misformatted changelog entry
104973
1049742017-06-14  Eli Zaretskii  <eliz@gnu.org>
104975
104976	Avoid compiler warning in image.c on MS-Windows
104977
104978	* src/image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Avoid
104979	compilation warning under -Warray-bounds by temporarily disabling
104980	the -Warray-bounds option.
104981
1049822017-06-14  Michael Albinus  <michael.albinus@gmx.de>
104983
104984	Fix Bug#27315
104985
104986	* lisp/net/tramp-cache.el (tramp-cache-read-persistent-data):
104987	New defvar.
104988	(top): Use it.
104989
104990	* lisp/net/tramp.el (tramp-handle-file-name-case-insensitive-p):
104991	Check for connected, not for connectable.  (Bug#27315)
104992	(tramp-process-actions):
104993	* lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
104994	Use `tramp-cache-read-persistent-data'.
104995
104996	* test/lisp/net/tramp-tests.el (top): Set also
104997	`tramp-cache-read-persistent-data'.
104998
1049992017-06-14  Noam Postavsky  <npostavs@gmail.com>
105000
105001	Give a fixed default value for icomplete-prospects-height (Bug#26939)
105002
105003	* lisp/icomplete.el (icomplete-prospects-height): Default to 2.
105004	(icomplete-prospects-length): Remove.
105005	* etc/NEWS: Announce removal.
105006
1050072017-06-14  Philipp Stephani  <phst@google.com>
105008
105009	Remove some tautological comparisons involving rlim_t
105010
105011	Clang on macOS warns about these with -Wtautological-compare.  POSIX
105012	guarantees that rlim_t is
105013	unsigned (cf.
105014	http://pubs.opengroup.org/onlinepubs/009695399/basedefs/sys/resource.h.html),
105015	so these resource limits can never be negative.
105016
105017	* src/emacs.c (main): Remove tautological comparisons.
105018
1050192017-06-14  Philipp Stephani  <phst@google.com>
105020
105021	Use --module-assertions if modules are available
105022
105023	Using --module-assertions helps us find bugs in the test module.  But
105024	we can use it only if Emacs was compiled with module support.
105025
105026	* test/Makefile.in (MODULES_EMACSOPT): New variable.
105027	(emacs): Use it.
105028
1050292017-06-14  Philipp Stephani  <phst@google.com>
105030
105031	Define --module-assertions only of modules are available
105032
105033	Fixes Bug#27352.
105034
105035	* src/emacs.c (usage_message, standard_args): Define
105036	--module-assertions only if Emacs has been compiled with module
105037	support.
105038
1050392017-06-14  Katsumi Yamaoka  <yamaoka@jpl.org>
105040
105041	gnus-article-read-summary-keys: Don't move point for WDD and WDW commands
105042
105043	* lisp/gnus/gnus-art.el (gnus-article-read-summary-keys):
105044	No need to restore window config for WDD and WDW commands.
105045
1050462017-06-14  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
105047
105048	lisp/net/soap-client.el: Bump version to 3.1.3
105049
105050	* lisp/net/soap-client.el: Bump version to 3.1.3.
105051	(soap-name-p): Fix checkdoc issue.
105052
1050532017-06-14  Alex Harsanyi  <AlexHarsanyi@gmail.com>
105054
105055	Fix an HTTP encoding error in soap-client.el
105056
105057	* lisp/net/soap-client.el (soap-invoke-internal): Make
105058	SOAPAction header a UTF-8 encoded string.
105059
1050602017-06-14  Paul Eggert  <eggert@cs.ucla.edu>
105061
105062	Port cleanup attribute to Oracle Studio 12.5
105063
105064	* INSTALL (--with-modules): List cleanup attribute as prereq.
105065	* src/conf_post.h (__has_attribute_cleanup): Remove; no longer needed.
105066	* src/emacs-module.c (MODULE_SETJMP_1): Don’t attempt to verify
105067	(__has_attribute (cleanup)), as Oracle Studio 12.5 supports
105068	__has_attribute only inside preprocessor expressions.  The C
105069	compiler should check the cleanup attribute in the next line anyway.
105070	(module_reset_handlerlist): Remove an unnecessary ‘const’
105071	that causes Oracle Studio 12.5 to refuse to compile.
105072
1050732017-06-14  Glenn Morris  <rgm@gnu.org>
105074
105075	Fix running tests in without-modules builds
105076
105077	* test/Makefile.in (EMACSOPT): Remove option that is only defined
105078	with-modules.  emacs-module-tests.el passes it where needed.
105079
1050802017-06-13  Glenn Morris  <rgm@gnu.org>
105081
105082	* test/Makefile.in (src/emacs-module-tests.log): Out-of-tree fix.
105083
1050842017-06-13  Philipp Stephani  <phst@google.com>
105085
105086	Inline test module Makefile into main test Makefile
105087
105088	The test/data/emacs-module/Makefile only built a single target, and
105089	inlining it into test/Makefile simplifies dependency tracking and
105090	reduces code duplication.
105091
105092	* configure.ac: Don't build test/data/emacs-module/Makefile.
105093
105094	* Makefile.in ($(test_module)): Inline compilation.
105095	(clean): Also clean test module outputs.
105096
1050972017-06-13  Michael Albinus  <michael.albinus@gmx.de>
105098
105099	* lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Do not handle locally on w32.
105100
1051012017-06-13  Michael Albinus  <michael.albinus@gmx.de>
105102
105103	Minor tweaks in Tramp manual
105104
105105	* doc/misc/trampver.texi: Add prefixwithspace flag.
105106
105107	* doc/misc/tramp.texi (Password handling): Harmonize example.
105108	(File name completion): Use prefixwithspace flag.
105109	(Frequently Asked Questions): Explain `tramp-histfile-override'.
105110
1051112017-06-13  Philipp Stephani  <phst@google.com>
105112
105113	Silence two Clang warnings by introducing additional local variables
105114
105115	* lib/strftime.c (libc_hidden_def):
105116	* lib-src/make-docfile.c (put_filename): Introduce local variables to
105117	silence Clang warnings.
105118
1051192017-06-13  Noam Postavsky  <npostavs@gmail.com>
105120
105121	Fix wrong indentation after string literal (Bug#27306)
105122
105123	* lisp/emacs-lisp/lisp-mode.el (lisp-indent-state)
105124	(lisp-indent-calc-next): Remove `depth' field, use (car ppss) instead.
105125	* test/lisp/emacs-lisp/lisp-mode-tests.el
105126	(lisp-indent-region-after-string-literal): New test.
105127
1051282017-06-13  Philipp Stephani  <phst@google.com>
105129
105130	Fix version checks for emacs-module.h
105131
105132	We don't need C11 or C++11 because stdbool.h is in C99, and for C++ we
105133	don't need it at all.
105134
1051352017-06-13  Noam Postavsky  <npostavs@gmail.com>
105136
105137	Buttonize #<bytecode> part of printed functions (Bug#25226)
105138
105139	* lisp/emacs-lisp/cl-print.el: Autoload `disassemble-1'.
105140	(cl-print-compiled-button): New variable.
105141	(help-byte-code): New button type, calls `disassemble' in its action.
105142	(cl-print-object): Use it if `cl-print-compiled-button' is
105143	non-nil.
105144
1051452017-06-12  Philipp Stephani  <phst@google.com>
105146
105147	Print module structure sizes when initializing test module
105148
105149	* test/data/emacs-module/mod-test.c (emacs_module_init): Print
105150	compile-time and runtime sizes of module structures to ease debugging
105151
1051522017-06-12  Glenn Morris  <rgm@gnu.org>
105153
105154	Small portability fix for emacs-module.h (bug#27346)
105155
105156	* src/emacs-module.h (EMACS_ATTRIBUTE_NONNULL) [!__has_attribute]:
105157	Avoid 'error: missing binary operator before token "("'.
105158
1051592017-06-12  Glenn Morris  <rgm@gnu.org>
105160
105161	Give a more informative failure in module assertion test
105162
105163	* test/src/emacs-module-tests.el (module--test-assertions):
105164	Rephrase final check to give a more informative failure.
105165
1051662017-06-12  Philipp Stephani  <phst@google.com>
105167
105168	Fix off-by-one error
105169
105170	* test/data/emacs-module/mod-test.c (emacs_module_init): Fix
105171	off-by-one error.
105172
1051732017-06-12  Glenn Morris  <rgm@gnu.org>
105174
105175	Clean up after module assertion tests
105176
105177	* test/src/emacs-module-tests.el (module--test-assertions):
105178	Use a temporary directory to contain any core dumps.
105179
1051802017-06-12  Glenn Morris  <rgm@gnu.org>
105181
105182	Small improvement for module assertion test
105183
105184	* test/src/emacs-module-tests.el (module--test-assertions):
105185	Don't rely on the precise form of an "Abort" message.
105186
1051872017-06-12  Glenn Morris  <rgm@gnu.org>
105188
105189	Improve previous test/data/emacs-module/Makefile change
105190
105191	* test/data/emacs-module/Makefile.in (clean):
105192	Avoid doing unpleasant things if run in a build without modules.
105193
1051942017-06-12  Glenn Morris  <rgm@gnu.org>
105195
105196	Small improvements for test/data/emacs-module/Makefile
105197
105198	* test/data/emacs-module/Makefile.in (%.o):
105199	Fix emacs-module dependency.
105200	(SECONDARY): Stop make automatically deleting *.o.
105201	(clean): New rule.
105202
1052032017-06-12  Glenn Morris  <rgm@gnu.org>
105204
105205	* make-dist: Skip some more generated files in test/.
105206
1052072017-06-12  Alan Third  <alan@idiocy.org>
105208
105209	Note how fullscreen differs on the NS port
105210
105211	doc/lispref/frames.texi (Size Parameters):
105212	doc/emacs/frames.texi (Tool Bars): Add a description of how macOS
105213	hides the tool-bar and menu-bar in fullscreen.
105214
1052152017-06-12  Alan Third  <alan@idiocy.org>
105216
105217	Add no-focus-on-map to NS build (bug#25408)
105218
105219	* src/nsfns.m (ns_frame_parm_handlers): Add x_set_no_focus_on_map.
105220	(x-create-frame): Check for no-focus-on-map.
105221	* src/nsterm.h (x_set_no_focus_on_map): New function.
105222	* src/nsterm.m (x_set_no_focus_on_map): New function.
105223	(ns_raise_frame): Add parameter for specifying whether to focus the
105224	frame.
105225	(ns_frame_raise_lower):
105226	(x_make_frame_visible): Handle new parameter for ns_raise_frame.
105227
1052282017-06-12  Paul Eggert  <eggert@cs.ucla.edu>
105229
105230	_Noreturn not noreturn
105231
105232	_Noreturn is more portable to non-C11 platforms.  See:
105233	https://www.gnu.org/software/gnulib/manual/html_node/stdnoreturn_002eh.html
105234	* src/emacs-module.c: Use _Noreturn, not noreturn.  No need to
105235	include <stdnoreturn.h>.  Reindent to fit in 80 columns.
105236
1052372017-06-12  Glenn Morris  <rgm@gnu.org>
105238
105239	Update make-dist for recent test/ changes
105240
105241	* make-dist: No longer distribute test/data/emacs-module/Makefile.
105242
1052432017-06-12  Michael Albinus  <michael.albinus@gmx.de>
105244
105245	Handle port and domain in Tramp's password cache
105246
105247	* doc/misc/tramp.texi (Password handling): Explain port and
105248	domain handling in authinfo.
105249
105250	* lisp/net/tramp.el (tramp-process-actions, tramp-clear-passwd):
105251	* lisp/net/tramp-gvfs.el (tramp-gvfs-handler-askpassword):
105252	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
105253	(tramp-maybe-open-connection):
105254	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
105255	(tramp-smb-handle-file-acl, tramp-smb-handle-set-file-acl)
105256	(tramp-smb-maybe-open-connection): Handle also domain and port.
105257
1052582017-06-12  Eli Zaretskii  <eliz@gnu.org>
105259
105260	Avoid compilation warnings with pre-C99 libc
105261
105262	* src/emacs-module.c (module_free_global_ref)
105263	(module_assert_runtime, module_assert_env, value_to_lisp): Use 'pD'
105264	instead of C99 't' format descriptor.
105265
1052662017-06-12  Philipp Stephani  <phst@google.com>
105267
105268	Flush all output streams before aborting
105269
105270	Maybe the stdout buffer still contains something interesting that
105271	should be flushed.
105272
105273	* src/emacs-module.c (module_abort): Flush all output streams before
105274	aborting.
105275
1052762017-06-12  Philipp Stephani  <phst@google.com>
105277
105278	Remove an assertion that doesn't test Emacs invariants
105279
105280	* src/emacs-module.c (module_copy_string_contents): Remove an
105281	assertion that doesn't test Emacs invariants.
105282
1052832017-06-12  Philipp Stephani  <phst@google.com>
105284
105285	Test module: add necessary version checks
105286
105287	* test/data/emacs-module/mod-test.c (emacs_module_init): Add necessary
105288	version checks.
105289
1052902017-06-12  Philipp Stephani  <phst@google.com>
105291
105292	Use additional CFLAGS from configure
105293
1052942017-06-12  Philipp Stephani  <phst@google.com>
105295
105296	Use Autoconf to generate the test module Makefile
105297
105298	This makes it easier to pass compilation flags around.
105299
105300	* configure.ac: Also build test module Makefile.
105301
105302	* test/data/emacs-module/Makefile.in: New makefile template.
105303
105304	* test/Makefile.in ($(test_module)): No longer necessary to pass
105305	@MODULES_SUFFIX@ around.
105306
105307	* .gitignore: Test module Makefile can now be ignored.
105308
1053092017-06-12  Philipp Stephani  <phst@google.com>
105310
105311	Also compile test module as C11
105312
105313	* test/data/emacs-module/Makefile (CFLAGS): Compile test module as C11
105314
1053152017-06-12  Philipp Stephani  <phst@google.com>
105316
105317	Implement module assertions for users
105318
105319	Add a new command-line option '-module-assertions' that users can
105320	enable developing or debugging a module.  If this option is present,
105321	Emacs performs additional checks to verify that modules fulfill their
105322	requirements.  These checks are expensive and crash Emacs if modules
105323	are invalid, so disable them by default.
105324
105325	This is a command-line option instead of an ordinary variable because
105326	changing it while Emacs is running would cause data structure
105327	imbalances.
105328
105329	* src/emacs.c (main): New command line option '-module-assertions'.
105330
105331	* src/emacs-module.c (module_assert_main_thread)
105332	(module_assert_runtime, module_assert_env, module_assert_value):
105333	New functions to assert module requirements.
105334	(syms_of_module): New uninterned variable 'module-runtimes'.
105335	(init_module_assertions, in_main_thread, module_abort): New helper
105336	functions.
105337	(initialize_environment): Initialize value list.  If assertions are
105338	enabled, use a heap-allocated environment object.
105339	(finalize_environment): Add assertion that environment list is never
105340	empty.
105341	(finalize_runtime_unwind): Pop module runtime object stack.
105342	(value_to_lisp): Assert that the value is valid.
105343	(lisp_to_value): Record new value if assertions are enabled.
105344	(mark_modules): Mark allocated object list.
105345	(MODULE_FUNCTION_BEGIN_NO_CATCH)
105346	(module_non_local_exit_check, module_non_local_exit_clear)
105347	(module_non_local_exit_get, module_non_local_exit_signal)
105348	(module_non_local_exit_throw): Assert thread and environment.
105349	(module_get_environment): Assert thread and runtime.
105350	(module_make_function, module_funcall, module_intern)
105351	(module_funcall, module_make_integer, module_make_float)
105352	(module_make_string, module_make_user_ptr, module_vec_get)
105353	(funcall_module, Fmodule_load): Adapt callers.
105354	(module_make_global_ref): If assertions are enabled, use the global
105355	environment to store global values.
105356	(module_free_global_ref): Remove value from global value list.
105357
105358	* test/Makefile.in (EMACSOPT): Enable module assertions when testing
105359	modules.
105360
105361	* test/data/emacs-module/mod-test.c (Fmod_test_invalid_store)
105362	(Fmod_test_invalid_load): New functions to test module assertions.
105363	(emacs_module_init): Bind the new functions.
105364
105365	* test/src/emacs-module-tests.el (mod-test-emacs): New constant for
105366	the Emacs binary file.
105367	(mod-test-file): New constant for the test module file name.
105368	(module--test-assertions): New unit test.
105369
1053702017-06-12  Philipp Stephani  <phst@google.com>
105371
105372	emacs-module: Use __attribute__((nonnull))
105373
105374	Annotate all parameters with __attribute__((nonnull)) that may not be
105375	NULL.
105376
1053772017-06-12  Philipp Stephani  <phst@google.com>
105378
105379	Explicitly require C11 or C++11 in emacs-module.h
105380
105381	We already implicitly require them by including stdbool.h.  Just make
105382	the error message a bit clearer, and remove an unnecessary version
105383	comparison.
105384
1053852017-06-12  Philipp Stephani  <phst@google.com>
105386
105387	Add missing 'require' forms to prevent compiler warnings.
105388
105389	* lisp/eshell/esh-ext.el (esh-arg, esh-proc): Add missing
105390	requirements.
105391
1053922017-06-12  Paul Eggert  <eggert@cs.ucla.edu>
105393
105394	Merge from gnulib
105395
105396	This incorporates:
105397	2017-06-11 getopt-posix: port to glibc 2.25.90
105398	2017-06-04 same-inode: port better to VMS 8.2 and later
105399	* doc/misc/texinfo.tex, lib/getopt-pfx-core.h, lib/getopt-pfx-ext.h:
105400	* m4/sys_types_h.m4: Copy from gnulib.
105401
1054022017-06-12  Paul Eggert  <eggert@cs.ucla.edu>
105403
105404	Remove Lisp_Misc_Float
105405
105406	* src/data.c (Ftype_of): Do not worry about Lisp_Misc_Float.
105407	* src/lisp.h (Lisp_Misc_Float): Remove.  This placeholder has been
105408	unused for two decades; if we ever want to change floats to be a
105409	misc type we can bring it back then.
105410
1054112017-06-12  Paul Eggert  <eggert@cs.ucla.edu>
105412
105413	Make two symbols private to emacs-module.c
105414
105415	* src/lisp.h (allocate_module_function, XSET_MODULE_FUNCTION):
105416	Move from here ...
105417	* src/emacs-module.c: ... to here.
105418
1054192017-06-12  Glenn Morris  <rgm@gnu.org>
105420
105421	Merge from origin/emacs-25
105422
105423	da62c1532e4 (origin/emacs-25) Improve the documentation of filesets
105424
1054252017-06-12  Glenn Morris  <rgm@gnu.org>
105426
105427	Merge from origin/emacs-25
105428
105429	e80f6a210b0 Describe problems with Microsoft Intellipoint
105430	a73ec1edb07 More accurate documentation of the ':box' face attribute
105431
1054322017-06-12  Glenn Morris  <rgm@gnu.org>
105433
105434	Merge from origin/emacs-25
105435
105436	eaa00584ceb Improve documentation of 'gnutls-verify-error'
105437	908498cc01b ; etc/PROBLEMS: Describe GTK-related crashes on elementar...
105438	741daec617e ; Describe the problem with ksh when resizing shell window
105439
1054402017-06-11  Michael Albinus  <michael.albinus@gmx.de>
105441
105442	Some further improvements for tramp-gvfs.el
105443
105444	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
105445	(tramp-gvfs-get-file-attributes)
105446	(tramp-gvfs-maybe-open-connection): Handle davs? properly.
105447	(tramp-gvfs-handler-askquestion): Improve `yes-or-no-p' prompt.
105448	Show question also in batch mode.  Cache result.
105449
105450	* test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
105451	Support completion for host names and ports.
105452
1054532017-06-11  Simen Heggestøyl  <simenheg@gmail.com>
105454
105455	Fix highlighting of CSS selectors with double hyphens
105456
105457	* lisp/textmodes/css-mode.el (css--font-lock-keywords): Fix
105458	highlighting of selectors that contain double hyphens.  They would be
105459	mistaken for a variable.
105460
1054612017-06-11  Philipp Stephani  <phst@google.com>
105462
105463	Support threads in modules
105464
105465	Rather than checking for the main thread, check for the current
105466	thread.
105467
105468	* src/emacs-module.c (check_thread): New function.
105469	(MODULE_FUNCTION_BEGIN_NO_CATCH, module_get_environment)
105470	(module_non_local_exit_check, module_non_local_exit_clear)
105471	(module_non_local_exit_get, module_non_local_exit_signal)
105472	(module_non_local_exit_throw, module_is_not_nil, module_eq): Use it.
105473
1054742017-06-11  Philipp Stephani  <phst@google.com>
105475
105476	Allow non-local exits in module initializers
105477
105478	Previously signals, throws, and quits from module initialization
105479	functions were ignored.  These function aren't special, and better
105480	errors can be reported using signals than with the initialization
105481	return code, so allow non-local exits.
105482
105483	* src/emacs-module.c (module_signal_or_throw): New helper function.
105484	(Fmodule_load, funcall_module): Use it.
105485	(Fmodule_load): Also allow quitting.
105486
1054872017-06-11  Noam Postavsky  <npostavs@gmail.com>
105488
105489	Let eshell/sudo handle absolute command names (Bug#27167)
105490
105491	* lisp/eshell/esh-ext.el (eshell-find-interpreter): Don't change
105492	absolute paths into relative ones.
105493
1054942017-06-10  Alan Third  <alan@idiocy.org>
105495
105496	Don't wait for toolbar in NS native fullscreen
105497
105498	* src/nsterm.m (EmacsView:updateFrameSize): Don't short-circuit the
105499	function when in fullscreen.
105500
1055012017-06-10  Alexander Gramiak  <agrambot@gmail.com>
105502
105503	Fix the placement of GTK menus on multi-monitor systems
105504
105505	menu_position_func did not properly use the current monitor's
105506	resolution.  Also see commit '2016-02-06 22:12:53 +0100'.
105507
105508	* lisp/frame.el (frame-monitor-attribute, frame-monitor-geometry)
105509	(frame-monitor-workarea): New functions.
105510
105511	* src/xmenu.c (menu_position_func): Take into account the workarea of
105512	the monitor that contains the mouse.  (Bug#23568)
105513
1055142017-06-10  Eli Zaretskii  <eliz@gnu.org>
105515
105516	Clarify documentation of 'face-spec-set'
105517
105518	* lisp/faces.el (face-spec-set): Clarify the description of
105519	SPEC-TYPE in the doc string.
105520
105521	* doc/lispref/display.texi (Defining Faces): Clarify the
105522	description of 'face-spec-set's SPEC-TYPE argument.  (Bug#27246)
105523
1055242017-06-10  Michael Albinus  <michael.albinus@gmx.de>
105525
105526	Fix domain port and handling in tramp-gvfs.el
105527
105528	* lisp/net/tramp-gvfs.el (tramp-gvfs-dbus-byte-array-to-string):
105529	Return nil if BYTE-ARRAY is nil.
105530	(tramp-gvfs-url-file-name, tramp-gvfs-handler-mounted-unmounted)
105531	(tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec):
105532	Fix domain and port handling.
105533
105534	* lisp/net/tramp.el (tramp-handle-file-name-case-insensitive-p):
105535	Ignore errors.
105536
1055372017-06-10  Eli Zaretskii  <eliz@gnu.org>
105538
105539	Improve documentation of 'face-spec-set-2'
105540
105541	* lisp/faces.el (face-spec-recalc, face-spec-set-2): Rename 'spec'
105542	to 'face-attrs'.
105543	(face-spec-choose, face-spec-set-2): Doc fix.  (Bug#27238)
105544
1055452017-06-10  Eli Zaretskii  <eliz@gnu.org>
105546
105547	Fix handling of Python/Guile commands with arguments in gdb-mi.el
105548
105549	* lisp/progmodes/gdb-mi.el (gdb-python-guile-commands-regexp): New
105550	variable.
105551	(gdb-control-commands-regexp): Use it.
105552	(gdb-send): Don't increment gdb-control-level if the command
105553	matches gdb-python-guile-commands-regexp and has non-empty
105554	arguments.  Reported by David Boles <boles@ieee.org> in
105555	https://lists.gnu.org/r/emacs-devel/2017-06/msg00009.html.
105556
1055572017-06-10  Eli Zaretskii  <eliz@gnu.org>
105558
105559	Preserve point in Dired windows under 'dired-auto-revert-buffer'
105560
105561	* lisp/dired.el (dired-find-file): When dired-auto-revert-buffer
105562	is non-nil, bind switch-to-buffer-preserve-window-point to nil
105563	while calling find-file.  (Bug#27243)
105564
1055652017-06-09  Philipp Stephani  <phst@google.com>
105566
105567	Give test files a -tests.el suffix
105568
105569	Rename a couple of test files that have the same name as the library
105570	they test.  This harmonizes the naming pattern and makes it possible
105571	to have the tests directories in the load path.
105572
1055732017-06-09  Philipp Stephani  <phst@google.com>
105574
105575	Fix another compiler warning on macOS
105576
105577	* src/image.c (x_query_frame_background_color): Don't define if we
105578	have NextStep but no image support.
105579
1055802017-06-09  Philipp Stephani  <phst@google.com>
105581
105582	Add garbage collection support for module environments
105583
105584	* src/emacs-module.c (mark_modules): New function.
105585	(initialize_environment): Properly initialize Lisp objects.
105586	* src/alloc.c (garbage_collect_1): Call it.
105587
1055882017-06-08  Glenn Morris  <rgm@gnu.org>
105589
105590	Make autogen.sh report relevant environment variables
105591
105592	* autogen.sh (check_version):
105593	Indicate if using an environment variable.
105594
1055952017-06-08  Noam Postavsky  <npostavs@gmail.com>
105596
105597	Split variable macro env from function env
105598
105599	* lisp/emacs-lisp/cl-macs.el (cl--sm-macroexpand): Remove.
105600	(cl-symbol-macrolet): Instead of adding each binding directly into the
105601	main environment with a special key format, put all symbol macro
105602	bindings into a single entry in the main environment under
105603	`:cl-symbol-macros'.
105604	(cl--sm-macroexpand): Look up symbol bindings in the
105605	`:cl-symbol-macros' entry of the environment.
105606
1056072017-06-07  Glenn Morris  <rgm@gnu.org>
105608
105609	* make-dist: Directory modules/mod-test no longer exists.
105610
1056112017-06-07  Glenn Morris  <rgm@gnu.org>
105612
105613	More authors.el updates
105614
105615	* admin/authors.el (authors-ignored-files, authors-valid-file-names)
105616	(authors-renamed-files-alist): Additions.
105617
1056182017-06-07  Glenn Morris  <rgm@gnu.org>
105619
105620	* make-dist: Check a release has a ChangeLog with a release notice.
105621
105622	* make-dist: Use existing ChangeLog if present.
105623
1056242017-06-07  Michael Albinus  <michael.albinus@gmx.de>
105625
105626	* lisp/net/tramp-sh.el (tramp-maybe-open-connection): Fix port handling.
105627
1056282017-06-07  Lars Ingebrigtsen  <larsi@gnus.org>
105629
105630	(url-cookie-host-can-set-p): Protect against zero-length domains
105631
105632	* lisp/url/url-cookie.el (url-cookie-host-can-set-p): Protect
105633	against zero-length domains.
105634
105635	Backtrace of a real-world site that triggers a bug:
105636
105637	Debugger entered--Lisp error: (args-out-of-range "" 0)
105638	  url-cookie-host-can-set-p("www.washingtonpost.com" "")
105639	  url-cookie-handle-set-cookie("utm_term=0;Expires=Thursday,
105640	  01-January-1970 00:00:00 GMT; path=/; domain=")
105641	  url-http-handle-cookies()
105642
1056432017-06-06  Glenn Morris  <rgm@gnu.org>
105644
105645	More authors.el updates
105646
105647	* admin/authors.el (authors-obsolete-files-regexps)
105648	(authors-valid-file-names, authors-renamed-files-alist)
105649	(authors-renamed-files-regexps): Additions.
105650
1056512017-06-06  Glenn Morris  <rgm@gnu.org>
105652
105653	More small authors.el updates
105654
105655	* admin/authors.el (authors-aliases): Fix recent addition.
105656	(authors-obsolete-files-regexps, authors-no-scan-regexps)
105657	(authors-ignored-files, authors-valid-file-names)
105658	(authors-renamed-files-alist): Additions.
105659
1056602017-06-06  Glenn Morris  <rgm@gnu.org>
105661
105662	Make authors.el report names that were ignored
105663
105664	* admin/authors.el (authors-ignored-names): New.
105665	(authors-canonical-author-name): Add file and position arguments.
105666	Record ignored authors.
105667	(authors-scan-change-log, authors-scan-el):
105668	Pass file and position to authors-canonical-author-name.
105669	(authors): Also print authors that were ignored.
105670
1056712017-06-06  Glenn Morris  <rgm@gnu.org>
105672
105673	* admin/authors.el (authors-aliases): Additions.
105674
1056752017-06-06  Tino Calancha  <tino.calancha@gmail.com>
105676
105677	* test/lisp/subr-tests.el (subr-tests-bug22027): Add test.
105678
1056792017-06-06  Noam Postavsky  <npostavs@gmail.com>
105680
105681	* lisp/subr.el (read-passwd): Don't delete return value (Bug#22027).
105682
1056832017-06-06  Dmitry Gutov  <dgutov@yandex.ru>
105684
105685	Enable ElDoc messages after the newline command
105686
105687	* lisp/emacs-lisp/eldoc.el:
105688	Add "newline" to the eldoc-add-command-completions call (bug#27228).
105689
1056902017-06-06  Dmitry Gutov  <dgutov@yandex.ru>
105691
105692	Enable eldoc-mode explicitly inside read--expression
105693
105694	* lisp/simple.el (read--expression): Call eldoc-mode (bug#27202).
105695
1056962017-06-06  Andy Moreton  <andrewjmoreton@gmail.com>
105697
105698	Fix check for package-unsigned-archives during retrieval
105699
105700	* lisp/emacs-lisp/package.el (package--download-one-archive):
105701	Fix check for package-unsigned-archives.
105702
1057032017-06-05  Noah Friedman  <friedman@splode.com>
105704
105705	Merge etc/emacs-buffer.gdb from emacs-25 to master.
105706
1057072017-06-05  Philipp Stephani  <phst@google.com>
105708
105709	Fix undefined behavior in mapbacktrace
105710
105711	* src/eval.c (Fmapbacktrace): Don't assume that PDL is still valid.
105712
1057132017-06-05  Eli Zaretskii  <eliz@gnu.org>
105714
105715	Fix emacs-module-tests on MS-Windows
105716
105717	* src/print.c (print_vectorlike): Make sure module function's
105718	address prints with a leading "0x".  This fixes emacs-module-tests
105719	on MS-Windows.  Fix whitespace.
105720	* src/dynlib.c (dynlib_addr): Remove unused variable.  Update
105721	commentary.
105722
1057232017-06-05  Philipp Stephani  <phst@google.com>
105724
105725	Use unwind protection to clean up data structures in modules
105726
105727	Reuse existing functionality and simplify the code a bit.
105728
105729	* src/emacs-module.c (Fmodule_load): Use unwind protection to clean up
105730	runtime object.
105731	(funcall_module): Use unwind protection to clean up environment
105732	object.
105733	(finalize_environment): Simplify signature.
105734	(finalize_environment_unwind, finalize_runtime_unwind): New functions.
105735
1057362017-06-05  Michael Albinus  <michael.albinus@gmx.de>
105737
105738	Some minor tweaks in tramp-tests.el
105739
105740	* test/lisp/net/tramp-tests.el (tramp-test05-expand-file-name-relative):
105741	Let it pass for all gfvs based methods.
105742	(tramp-test24-file-name-completion): Run method and host
105743	completion for all syntaxes only when expensive tests are enabled.
105744	Do not check host completion for gvfs based methods.
105745	(tramp--test-gvfs-p): Add optional METHOD argument.
105746	(tramp--test-afp-or-smb-p): Remove.
105747
1057482017-06-05  Michael Albinus  <michael.albinus@gmx.de>
105749
105750	Fix error in Tramp rsync method
105751
105752	* lisp/net/tramp-sh.el (tramp-methods) <rsync>: Add "-c" argument.
105753	Otherwise, `tramp-test10-write-region' could fail.
105754
1057552017-06-05  Philipp Stephani  <phst@google.com>
105756
105757	Inline module_has_cleanup
105758
105759	This constant is only used once, and we fail compilation anyway if
105760	it's false.
105761
105762	* src/emacs-module.c (MODULE_SETJMP_1): Inline __has_attribute.
105763
1057642017-06-05  Philipp Stephani  <phst@google.com>
105765
105766	Add missing dependency to test module source file
105767
1057682017-06-05  Paul Eggert  <eggert@cs.ucla.edu>
105769
105770	Omit space that broke ‘make check’
105771
105772	* src/print.c (print_vectorlike): Omit stray space.
105773
1057742017-06-05  Paul Eggert  <eggert@cs.ucla.edu>
105775
105776	Remove easserts etc. from emacs-module.c
105777
105778	Most of these seem to run afoul of the comment "Do NOT use
105779	'eassert' for checking validity of user code in the module."
105780	* src/emacs-module.c (MODULE_FUNCTION_BEGIN_NO_CATCH)
105781	(module_non_local_exit_check, module_non_local_exit_clear)
105782	(module_non_local_exit_get, module_non_local_exit_signal)
105783	(module_non_local_exit_throw, module_make_string):
105784	Remove unnecessary easserts that pointers are nonnull.
105785	Hardware checks this for us nowadays, and the checks
105786	just clutter up the code.
105787	(module_extract_integer): Remove unnecessary verify that
105788	a C signed integer is in the range INTMAX_MIN..INTMAX_MAX.
105789	The C standard guarantees this.
105790	(module_copy_string_contents): Remove unnecessary eassert
105791	that Lisp strings are null-terminated.
105792	(module_function_arity): Remove unnecessary easserts that
105793	function arities are in range.
105794
1057952017-06-05  Paul Eggert  <eggert@cs.ucla.edu>
105796
105797	Remove unnecessary checking in emacs-module.c
105798
105799	* src/emacs-module.c (module_copy_string_contents):
105800	Remove checking, as string lengths are always nonnegative and less
105801	than STRING_BYTES_BOUND, and this is checked elsewhere.
105802	(module_make_string): Check length against STRING_BYTES_BOUND, a
105803	tighter bound than MOST_POSITIVE_FIXNUM.  (funcall_module): Don't
105804	assume that an out-of-range integer is nonnegative.
105805
1058062017-06-05  Paul Eggert  <eggert@cs.ucla.edu>
105807
105808	SCHARS and STRING_BYTES are nonnegative
105809
105810	Tell the compiler that SCHARS and STRING_BYTES are nonnegative, in
105811	the hopes that this will optimize a bit better.  Also, check this
105812	at runtime if ENABLE_CHECKING.
105813	* src/lisp.h (SCHARS, STRING_BYTES):
105814	eassume that these functions return nonnegative values.
105815	(STRING_SET_CHARS) [ENABLE_CHECKING]:
105816	eassert that newsize is nonnegative.
105817
1058182017-06-05  Noam Postavsky  <npostavs@gmail.com>
105819
105820	* lisp/desktop.el (desktop-clear): Skip the daemon's frame (Bug#26912).
105821
1058222017-06-04  Philipp Stephani  <phst@google.com>
105823
105824	Remove an unused error symbol
105825
105826	* src/emacs-module.c (syms_of_module): Remove unused error symbol
105827	'invalid-module-call'.
105828
1058292017-06-04  Philipp Stephani  <phst@google.com>
105830
105831	Support quitting in modules
105832
105833	The idea is that modules should call env->should_quit from time to
105834	time and return as quickly as possible if it returns true.
105835
105836	* src/emacs-module.c (module_should_quit): New module function.
105837	(initialize_environment): Use it.
105838	(funcall_module): Process potential pending quit.
105839
105840	* src/eval.c (maybe_quit): Add reference to module_should_quit.
105841
1058422017-06-04  Philipp Stephani  <phst@google.com>
105843
105844	Use more specific errors for module load failure
105845
105846	* src/emacs-module.c (syms_of_module): Add more specific error
105847	symbols.
105848	(Fmodule_load): Use them.
105849
1058502017-06-04  Philipp Stephani  <phst@google.com>
105851
105852	Remove an unneeded assertion
105853
105854	* src/emacs-module.c (module_copy_string_contents): Remove unneeded
105855	assertion.  If this assertion triggers, we raise an error anyway.
105856
1058572017-06-04  Philipp Stephani  <phst@google.com>
105858
105859	Guard against signed integer overflows
105860
105861	* src/emacs-module.c (module_extract_integer)
105862	(module_copy_string_contents, module_make_string): Guard against
105863	signed integer overflows.
105864
1058652017-06-04  Philipp Stephani  <phst@google.com>
105866
105867	Add a couple more assertions to the module code
105868
105869	These can help module authors debug crashes.
105870
105871	* src/emacs-module.c (module_non_local_exit_check)
105872	(module_non_local_exit_clear, module_non_local_exit_get)
105873	(module_non_local_exit_signal, module_non_local_exit_throw)
105874	(module_copy_string_contents, module_make_string)
105875	(funcall_module, initialize_environment): Add assertions
105876
1058772017-06-04  Philipp Stephani  <phst@google.com>
105878
105879	Use ATTRIBUTE_MAY_ALIAS where alias violations are likely
105880
105881	In particular, alias violations are likely for the return values of
105882	dlsym(3), which get cast around arbitrarily.
105883
105884	* src/emacs-module.c (Fmodule_load): Use ATTRIBUTE_MAY_ALIAS.
105885
1058862017-06-04  Philipp Stephani  <phst@google.com>
105887
105888	Simplify interface of dynlib_attr.
105889
105890	Instead of returning bool, set the argument pointers to NULL if the
105891	information is not available.
105892
105893	* src/dynlib.c (dynlib_addr): Don't return bool.
105894
1058952017-06-04  Philipp Stephani  <phst@google.com>
105896
105897	Rationalize environment lifetime management functions
105898
105899	* src/emacs-module.c (Fmodule_load, funcall_module): Adapt callers.
105900	(finalize_environment): Add parameter for public part of the
105901	environment, like 'initialize_environment'.  Add assertions.
105902
1059032017-06-04  Philipp Stephani  <phst@google.com>
105904
105905	Rework printing of module functions
105906
105907	Fix a FIXME in emacs-module.c.  Put the printing into print.c, like
105908	other types.
105909
105910	* src/print.c (print_vectorlike): Add code to print module functions.
105911
105912	* src/emacs-module.c (funcall_module): Stop calling
105913	'module_format_fun_env'.  Now that module functions are first-class
105914	objects, they can be added to signal data directly.
105915	(module_handle_signal): Remove now-unused function
105916	'module_format_fun_env'.
105917
105918	* test/src/emacs-module-tests.el (mod-test-sum-test): Adapt unit test.
105919
105920	* src/eval.c (funcall_lambda): Adapt call to changed signature of
105921	'funcall_module'.
105922
1059232017-06-04  Philipp Stephani  <phst@google.com>
105924
105925	Define helper macro to reduce code duplication
105926
105927	* src/emacs-module.c (MODULE_FUNCTION_BEGIN_NO_CATCH): New helper
105928	macro.
105929	(MODULE_FUNCTION_BEGIN, module_type_of, module_is_not_nil, module_eq):
105930	Use it.
105931
1059322017-06-04  Philipp Stephani  <phst@google.com>
105933
105934	Remove two FIXMEs that can't be fixed
105935
1059362017-06-04  Eli Zaretskii  <eliz@gnu.org>
105937
105938	Avoid slow startup in daemon mode when global-linum-mode is on
105939
105940	* lisp/linum.el (linum-on): Don't turn on linum-mode in a
105941	non-client frame of a daemon session.  (Bug#27210)
105942
1059432017-06-04  Paul Eggert  <eggert@cs.ucla.edu>
105944
105945	Fix eldoc bug with curved quote
105946
105947	* lisp/progmodes/elisp-mode.el (elisp-get-fnsym-args-string):
105948	Substitute quotes in documentation before returning it (Bug#27159).
105949
1059502017-06-04  Paul Eggert  <eggert@cs.ucla.edu>
105951
105952	Tune ‘format’ after recent fix
105953
105954	* doc/lispref/strings.texi (Formatting Strings):
105955	* src/editfns.c (Fformat): Format field numbers no longer need
105956	to be unique, reverting the previous doc change since that has
105957	now been fixed.  Also, document that %% should not have modifiers.
105958	* src/editfns.c (styled_format): Improve performance.  Remove
105959	the need for the new prepass over the format string, by using
105960	a typically-more-generous bound for the info array size.
105961	Initialize the info array lazily.  Move string inspection to
105962	the same area to help caching.  Avoid the need for a
105963	converted_to_string bitfield by using EQ.  Cache arg in a
105964	local and avoid some potential aliasing issues to help the
105965	compiler.  Info array is now 0-origin, not 1-origin.
105966
1059672017-06-04  Nikolay Kudryavtsev  <nikolay.kudryavtsev@gmail.com>
105968
105969	Improve of file-local-name use in vc-git-checkin
105970
105971	* lisp/vc/vc-git.el (vc-git-checkin): Use file-local-name only
105972	when calling git commit.
105973
1059742017-06-03  Simen Heggestøyl  <simenheg@gmail.com>
105975
105976	Support a new CSS indentation style
105977
105978	* lisp/textmodes/css-mode.el (css-smie-rules): Indent after property
105979	immediately followed by a newline.
105980
105981	* test/manual/indent/css-mode.css: Add test for the change above.
105982
105983	* test/manual/indent/scss-mode.scss: Ditto.
105984
1059852017-06-03  Philipp Stephani  <phst@google.com>
105986
105987	Fix a bug when using format field numbers
105988
105989	Previously styled_format overwrite the argument vector.  This is no
105990	longer possible because there might be more than one specification per
105991	argument.  Use the existing auxiliary info array instead.
105992
105993	* src/editfns.c (styled_format): Record arguments in the info
105994	structure instead of overwriting them.
105995	* test/src/editfns-tests.el (format-with-field): Add unit test.
105996
1059972017-06-03  Paul Eggert  <eggert@cs.ucla.edu>
105998
105999	Document uniqueness limitation of ‘format’
106000
106001	* doc/lispref/strings.texi (Formatting Strings):
106002	* src/editfns.c (Fformat):
106003	Document that field numbers should be unique within a format.
106004
1060052017-06-03  Glenn Morris  <rgm@gnu.org>
106006
106007	Small rmailmm fix (bug#27203)
106008
106009	* lisp/mail/rmailmm.el (rmail-mime-insert-bulk):
106010	Fall back to HOME if no match in rmail-mime-attachment-dirs-alist.
106011
1060122017-06-03  Glenn Morris  <rgm@gnu.org>
106013
106014	* admin/authors.el (authors-aliases): Addition.
106015
1060162017-06-03  Glenn Morris  <rgm@gnu.org>
106017
106018	Add watch for password back to inferior python comint filter
106019
106020	It was removed along with other items for speed (bug#16875),
106021	but doesn't seem to have been causing an issue, and it's useful to
106022	have it there (bug#27154).
106023	* lisp/progmodes/python.el (inferior-python-mode):
106024	Add comint-watch-for-password-prompt to comint-output-filter-functions.
106025
1060262017-06-03  Ryan  <rct@thompsonclan.org>  (tiny change)
106027
106028	Use completing-read-default in tmm-prompt
106029
106030	tmm uses completing-read, but customizes its behavior so much
106031	that any alternative completing-read-function will almost
106032	certainly break it.  For example, both ido-ubiquitous and ivy have
106033	special code to deactivate themselves for tmm.
106034	* lisp/tmm.el (tmm-prompt): Use completing-read-default instead of
106035	completing-read.  (Bug#27193)
106036
1060372017-06-02  Mats Lidell  <mats.lidell@cag.se>
106038
106039	* etc/tutorials/TUTORIAL.sv: synced with TUTORIAL (Bug#20371)
106040
1060412017-06-02  Glenn Morris  <rgm@gnu.org>
106042
106043	Fix with-todo-test
106044
106045	* test/lisp/calendar/todo-mode-tests.el (with-todo-test):
106046	HOME should be a directory, not a file.  Delete it when finished.
106047
1060482017-06-02  Lele Gaifax  <lele@metapensiero.it>  (tiny change)
106049
106050	Update TUTORIAL.it
106051
106052	* etc/tutorials/TUTORIAL.it: Adjust to recent changes in TUTORIAL.
106053
1060542017-06-02  Eli Zaretskii  <eliz@gnu.org>
106055
106056	Fix cursor position in Dired buffers after dired-sort-toggle
106057
106058	* src/xdisp.c (display_and_set_cursor): Record cursor coordinates
106059	even if the frame is marked as garbaged.  (Bug#27187)
106060
1060612017-06-02  Eli Zaretskii  <eliz@gnu.org>
106062
106063	Update TUTORIAL.he
106064
106065	* etc/tutorials/TUTORIAL.he: Adjust to recent changes in TUTORIAL.
106066
1060672017-06-02  Noam Postavsky  <npostavs@gmail.com>
106068
106069	* etc/tutorials/TUTORIAL: Explain how to stop the tutorial (Bug#20371).
106070
1060712017-06-02  Paul Eggert  <eggert@cs.ucla.edu>
106072
106073	Limit format fields to more POSIX-like spec
106074
106075	* doc/lispref/strings.texi (Formatting Strings):
106076	Don’t allow mixing numbered with unnumbered format specs.
106077	* src/editfns.c (styled_format): Don’t bother checking for field 0,
106078	since it doesn’t crash and the behavior is not specified.
106079	* test/src/editfns-tests.el (format-with-field): Adjust tests to
106080	match current doc.  Add more tests for out-of-range fields.
106081
1060822017-06-02  Paul Eggert  <eggert@cs.ucla.edu>
106083
106084	Improve performance by avoiding strtoumax
106085
106086	This made (string-to-number "10") 20% faster on my old desktop,
106087	an AMD Phenom II X4 910e running Fedora 25 x86-64.
106088	* admin/merge-gnulib (GNULIB_MODULES): Remove strtoumax.
106089	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
106090	* lib/strtoul.c, lib/strtoull.c, lib/strtoumax.c, m4/strtoull.m4:
106091	* m4/strtoumax.m4: Remove.
106092	* src/editfns.c (str2num): New function.
106093	(styled_format): Use it instead of strtoumax.  Use ptrdiff_t
106094	instead of uintmax_t.  Check for integer overflow.
106095	* src/lread.c (LEAD_INT, DOT_CHAR, TRAIL_INT, E_EXP):
106096	Move to private scope and make them enums.
106097	(string_to_number): Compute integer value directly during
106098	first pass instead of revisiting it with strtoumax later.
106099
1061002017-06-02  Paul Eggert  <eggert@cs.ucla.edu>
106101
106102	Minor improvements to format field numbers
106103
106104	* src/editfns.c (styled_format): Allow field numbers in a %% spec.
106105	No need for a special diagnostic for field numbers greater than
106106	PTRDIFF_MAX.  Reword diagnostic for field 0.
106107	* test/src/editfns-tests.el (format-with-field): Adjust to match.
106108
1061092017-06-02  Philipp Stephani  <phst@google.com>
106110
106111	Implement field numbers in format strings
106112
106113	A field number explicitly specifies the argument to be formatted.
106114	This is especially important for potential localization work, since
106115	grammars of various languages dictate different word orders.
106116
106117	* src/editfns.c (Fformat): Update documentation.
106118	(styled_format): Implement field numbers.
106119
106120	* doc/lispref/strings.texi (Formatting Strings): Document field numbers.
106121
106122	* lisp/emacs-lisp/bytecomp.el (byte-compile-format-warn): Adapt.
106123
106124	* test/src/editfns-tests.el (format-with-field): New unit test.
106125
1061262017-06-01  Alexander Gramiak  <agrambot@gmail.com>
106127
106128	Limit scope of local overriding-terminal-local-map
106129
106130	The function `binding' may call isearch-done, which globally sets
106131	overriding-terminal-local-map to nil (Bug#23007).
106132	* lisp/isearch.el (isearch-mouse-2): Don't bind
106133	overriding-terminal-local-map around the call to `binding'.
106134
1061352017-06-01  Stephen Berman  <stephen.berman@gmx.net>
106136
106137	Correct and isolate the todo-mode test environment
106138
106139	This avoids having to set todo-mode variables globally in the test
106140	file and prevents any exisiting user todo-mode files from influencing
106141	the tests.
106142
106143	* test/lisp/calendar/todo-mode-tests.el:
106144	(with-todo-test): New macro.
106145	(todo-test-todo-quit01, todo-test-todo-quit02)
106146	(todo-test-item-highlighting): Use it.
106147
1061482017-06-01  Alan Third  <alan@idiocy.org>
106149
106150	Fix build errors on macOS 10.6 (bug#27059)
106151
106152	* src/nsfns.m (compute_tip_xy): Don't use CGRectContainsPoint.
106153
1061542017-06-01  Eli Zaretskii  <eliz@gnu.org>
106155
106156	Improve testing of octal and hex display of raw bytes
106157
106158	* test/manual/redisplay-testsuite.el (test-redisplay-5-toggle)
106159	(test-redisplay-5): Add a test with a large codepoint.
106160
1061612017-06-01  Vasilij Schneidermann  <mail@vasilij.de>
106162
106163	Add customizable to display raw bytes as hex
106164
106165	* src/xdisp.c (get_next_display_element): Dispatch used format string
106166	for unprintables based on new display-raw-bytes-as-hex variable.
106167	(display-raw-bytes-as-hex): New variable.  (Bug#27122)
106168
106169	* lisp/cus-start.el: Add defcustom form for display-raw-bytes-as-hex.
106170
106171	* doc/emacs/display.texi: Document the new variable.
106172	* etc/NEWS: Mention display-raw-bytes-as-hex.
106173
106174	* test/manual/redisplay-testsuite.el (test-redisplay-5-toggle)
106175	(test-redisplay-5): New tests.
106176	(test-redisplay): Call test-redisplay-5.
106177
1061782017-06-01  Eli Zaretskii  <eliz@gnu.org>
106179
106180	Revert "Add customizable to display raw bytes as hex"
106181
106182	This reverts commit 7c9ac111c5e5d92e620b666893993d5dc562e483.
106183
1061842017-06-01  Eli Zaretskii  <eliz@gnu.org>
106185
106186	Add customizable to display raw bytes as hex
106187
106188	* src/xdisp.c (get_next_display_element): Dispatch used format string
106189	for unprintables based on new display-raw-bytes-as-hex variable.
106190	(display-raw-bytes-as-hex): New variable.  (Bug#27122)
106191
106192	* lisp/cus-start.el: Add defcustom form for display-raw-bytes-as-hex.
106193
106194	* doc/emacs/display.texi: Document the new variable.
106195	* etc/NEWS: Mention display-raw-bytes-as-hex.
106196
106197	* test/manual/redisplay-testsuite.el (test-redisplay-5-toggle)
106198	(test-redisplay-5): New tests.
106199	(test-redisplay): Call test-redisplay-5.
106200
1062012017-06-01  Eli Zaretskii  <eliz@gnu.org>
106202
106203	Fix linum under text-scaling when leuven-theme is used
106204
106205	* etc/themes/leuven-theme.el (linum): Make the 'linum' face
106206	inherit from 'default' and 'shadow', so that margins are enlarged
106207	as expected under text-scaling.
106208
1062092017-06-01  Paul Eggert  <eggert@cs.ucla.edu>
106210
106211	Free cwd when no longer needed
106212
106213	* lib-src/emacsclient.c (main): Don’t dally when freeing cwd.
106214
1062152017-06-01  Anders Waldenborg  <anders@0x63.nu>  (tiny change)
106216
106217	Fix memory leak of cwd string in emacsclient (Bug#26628)
106218
106219	* lib-src/emacsclient.c (main): emacsclient retrieves the current
106220	working directory using get_current_dir_name which returns a newly
106221	allocated string.  Make sure this string is freed before exiting.
106222
1062232017-06-01  Glenn Morris  <rgm@gnu.org>
106224
106225	Quieten compilation of some test files
106226
106227	* test/lisp/dired-tests.el (dired-test-bug25609): Mark unused args.
106228	* test/src/data-tests.el (binding-test-set-constant-t)
106229	(binding-test-set-constant-nil, binding-test-set-constant-keyword)
106230	(binding-test-set-constant-nil): Silence compiler.
106231	* test/src/regex-tests.el (regex-tests-BOOST): Escape char literal.
106232
1062332017-06-01  Glenn Morris  <rgm@gnu.org>
106234
106235	Use true names for invocation- and source-directory
106236
106237	* src/emacs.c (init_cmdargs) <Vinvocation_directory>:
106238	* src/lread.c (init_lread) <Vsource_directory>: Use true names.
106239
1062402017-06-01  Glenn Morris  <rgm@gnu.org>
106241
106242	Avoid elisp-mode test failures when source dir has multiple names
106243
106244	* test/lisp/progmodes/elisp-mode-tests.el (emacs-test-dir):
106245	Use the true name of the directory.
106246
1062472017-06-01  Paul Eggert  <eggert@cs.ucla.edu>
106248
106249	Fix bug with "%%" in error format
106250
106251	* src/doprnt.c (doprnt): Format "%%" correctly.
106252	Problem reported by Philipp Stephani in:
106253	https://lists.gnu.org/r/emacs-devel/2017-05/msg00901.html
106254
1062552017-06-01  Paul Eggert  <eggert@cs.ucla.edu>
106256
106257	* src/editfns.c (Fmessage): Improve doc string (Bug#23425#130).
106258
1062592017-06-01  Katsumi Yamaoka  <yamaoka@jpl.org>
106260
106261	Revert mml-generate-mime-1 (bug#27141)
106262
106263	* lisp/gnus/mml.el (mml-generate-mime-1): Reverted to emacs-25 version
106264	with slight modernizations (bug#27141).
106265
1062662017-05-31  Michael Albinus  <michael.albinus@gmx.de>
106267
106268	Fix Bug#27108
106269
106270	* lisp/recentf.el (recentf-load-list): Bind `non-essential',
106271	in order to avoid Tramp password requests during Emacs
106272	startup.  (Bug#27108)
106273
1062742017-05-31  Glenn Morris  <rgm@gnu.org>
106275
106276	* test/Makefile.in (.SECONDARY): Stop make deleting .elc files.
106277
1062782017-05-31  Eli Zaretskii  <eliz@gnu.org>
106279
106280	Document current-line hscrolling in ELisp manual
106281
106282	* doc/lispref/windows.texi (Horizontal Scrolling): Document the
106283	new mode of auto-hscrolling only the current line.
106284
1062852017-05-31  Eli Zaretskii  <eliz@gnu.org>
106286
106287	Support lower bound on hscrolling when only current line scrolls
106288
106289	* doc/emacs/display.texi (Horizontal Scrolling): Document the new
106290	mode of auto-hscrolling only the current line.
106291
106292	* src/xdisp.c (init_iterator): When hscrolling only the
106293	current line, apply the	window's min_hscroll here, so that
106294	non-current lines will be hscrolled by that minimum.
106295	Suggested by Stephen Berman <stephen.berman@gmx.net>.
106296	(hscroll_window_tree): Account for window's min_hscroll when
106297	deciding whether to recompute the hscroll.
106298	(display_line): Subtract window's min_hscroll from x_incr, as that
106299	was already accounted for in init_iterator.  (Bug#27008)
106300
1063012017-05-31  Noam Postavsky  <npostavs@gmail.com>
106302
106303	cl-print: handle circular objects when `print-circle' is nil (Bug#27117)
106304
106305	* lisp/emacs-lisp/cl-print.el (cl-print--currently-printing): New variable.
106306	(cl-print-object): When `print-circle' is nil, bind it to a list of
106307	objects that are currently printing to avoid printing the same object
106308	endlessly.
106309	* test/lisp/emacs-lisp/cl-print-tests.el (cl-print-circle): New test.
106310
1063112017-05-31  Noam Postavsky  <npostavs@gmail.com>
106312
106313	Further simplify test/Makefile, optionally load elc tests
106314
106315	* test/Makefile.in: Use make's error ignoring feature instead of
106316	suppressing test errors with shell.  Compile test files in the main
106317	make invocation instead of a recursive 'make' call.  Optionally load
106318	.elc test files if TEST_LOAD_EL is set to something other than 'yes'.
106319	Remove obsolete commentary.
106320
1063212017-05-31  Eli Zaretskii  <eliz@gnu.org>
106322
106323	Avoid inflooping in redisplay due to Spacemacs and linum-mode
106324
106325	* src/xdisp.c (redisplay_internal): Limit the number of redisplay
106326	retries when a frame becomes garbaged as result of redisplaying
106327	it.  (Bug#27115)
106328
1063292017-05-31  Tino Calancha  <tino.calancha@gmail.com>
106330
106331	* src/editfns.c (decode-time): Fix docstring.
106332
1063332017-05-31  Glenn Morris  <rgm@gnu.org>
106334
106335	* admin/update_autogen: Remove bzr support.
106336
1063372017-05-31  Glenn Morris  <rgm@gnu.org>
106338
106339	Avoid subr test failure when source dir has multiple names
106340
106341	* test/lisp/subr-tests.el (subr-tests--this-file):
106342	Use the true name of the file.  The following test does a string
106343	comparison of this value with that from method-files, which uses
106344	load-history, which contains true names.
106345
1063462017-05-31  Dmitry Gutov  <dgutov@yandex.ru>
106347
106348	Extract eldoc--supported-p
106349
106350	* lisp/emacs-lisp/eldoc.el (eldoc--supported-p): New function.
106351	(turn-on-eldoc-mode, eldoc-mode): Use it.
106352	(https://lists.gnu.org/r/emacs-devel/2017-05/msg00865.html)
106353
1063542017-05-30  Glenn Morris  <rgm@gnu.org>
106355
106356	Make "make check" less verbose by default
106357
106358	* test/Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_ELC, am__v_ELC_)
106359	(am__v_ELC_0, am__v_ELC_1, AM_V_GEN, am__v_GEN_, am__v_GEN_0)
106360	(am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0, am__v_at_1):
106361	New, copied from lisp/Makefile.in.
106362	(%.elc, %.log): Simplify and quieten.
106363
1063642017-05-30  Alan Mackenzie  <acm@muc.de>
106365
106366	Mode line "%q" construct: Just use one number when both would be the same.
106367
106368	* src/xdisp.c (decode_mode_spec): recode the "%q" bit appropriately.
106369
1063702017-05-30  Alan Mackenzie  <acm@muc.de>
106371
106372	Merge branch 'master' of /home/acm/emacs/emacs.git/master
106373
1063742017-05-30  Alan Mackenzie  <acm@muc.de>
106375
106376	c-defun-name: Return fully qualified method names when wanted in C++, etc.
106377
106378	* lisp/progmodes/cc-cmds.el (c-defun-name): Use
106379	c-back-over-compound-identifier in place of c-backward-token-2 near the end
106380	of the function.
106381
1063822017-05-30  Glenn Morris  <rgm@gnu.org>
106383
106384	Reduce scope of recent test/Makefile HOME change
106385
106386	* test/Makefile.in (%.log): Move setting of HOME here from top-level.
106387
1063882017-05-30  Paul Eggert  <eggert@cs.ucla.edu>
106389
106390	Skip .#* temporaries when finding sources
106391
106392	Without this patch, ‘make check’ can fail with the diagnostic
106393	‘invalid syntax in conditional’ if there is an Emacs temporary
106394	file whose name starts with ‘.#’, because the ‘#’ is treated as
106395	the start of a Make comment.
106396	* lisp/Makefile.in (loaddefs, tagsfiles, check-defun-deps):
106397	* test/Makefile.in (ELFILES):
106398	Skip files starting with ‘.’, so that the .#* files do not cause
106399	trouble.  (We cannot easily skip just files starting with ‘.#’,
106400	since ‘#’ starts a Make comment!)
106401
1064022017-05-30  Alan Mackenzie  <acm@muc.de>
106403
106404	Merge branch 'master' of /home/acm/emacs/emacs.git/master
106405
1064062017-05-30  Alan Mackenzie  <acm@muc.de>
106407
106408	Fix the mouse help/key map on the "%p" part of the mode line.
106409
106410	* lisp/bindings.el (mode-line-percent-position): give it a
106411	`risky-local-variable' property.
106412	(mode-line-position): correct the quoting on the mode-line-percent-position
106413	part of the variable, allowing the properties to be properly recognized.
106414
1064152017-05-30  Alan Mackenzie  <acm@muc.de>
106416
106417	Fix the mouse help/key map on the "%p" part of the mode line.
106418
106419	* lisp/bindings.el (mode-line-percent-position): give it a
106420	`risky-local-variable' property.
106421	(mode-line-position): correct the quoting on the mode-line-percent-position
106422	part of the variable, allowing the properties to be properly recognized.
106423
1064242017-05-30  Paul Eggert  <eggert@cs.ucla.edu>
106425
106426	Merge from gnulib
106427
106428	* build-aux/config.guess: Copy from gnulib.
106429	* lib/gnulib.mk.in: Regenerate.
106430
1064312017-05-30  Glenn Morris  <rgm@gnu.org>
106432
106433	Stop make check interacting with HOME
106434
106435	* test/Makefile.in (HOME): Export a non-existent value.
106436
1064372017-05-30  Paul Eggert  <eggert@cs.ucla.edu>
106438
106439	Update .gitattributes to match sources better
106440
106441	* .gitattributes: Remove nt/nmake.defs.  Move dostorture.c, c.C,
106442	algrthms.html.  Use pattern for todo-mode.  Improve patterns for
106443	Ada, C, ObjC, shell.  Add Pascal.  Remove unused pattern *.ruby.
106444	Add config.guess and config.sub as shell files.
106445
1064462017-05-30  Noam Postavsky  <npostavs@gmail.com>
106447
106448	Rename '--new-daemon' to 'fg-daemon' and '--old-daemon' to '--bg-daemon'
106449
106450	* doc/emacs/cmdargs.texi (Initial Options):
106451	* doc/lispref/os.texi (Startup Summary):
106452	* etc/NEWS:
106453	* etc/emacs.service:
106454	* src/emacs.c (main):
106455	* src/lisp.h: Rename '--new-daemon' to 'fg-daemon' and '--old-daemon' to
106456	'--bg-daemon'.
106457
1064582017-05-30  Glenn Morris  <rgm@gnu.org>
106459
106460	todo-mode: don't assume an ordering of tests
106461
106462	* test/lisp/calendar/todo-mode-tests.el (todo-test-todo-quit02)
106463	(todo-test-item-highlighting): Avoid prompting for input file.
106464
1064652017-05-30  Paul Eggert  <eggert@cs.ucla.edu>
106466
106467	Improve .gdbinit Lisp value pretty-printing
106468
106469	* src/.gdbinit (to_string): Use an unsigned representation for
106470	Lisp values, as requested by Eli Zaretskii (Bug#27098).
106471	Also, use "make_number(N)" for Lisp integers.
106472
1064732017-05-30  Dmitry Gutov  <dgutov@yandex.ru>
106474
106475	Turn global-eldoc-mode into a globalized minor mode
106476
106477	* lisp/emacs-lisp/eldoc.el (global-eldoc-mode):
106478	Turn into globalized mode (bug#19853).
106479	(turn-on-eldoc-mode): Make it into a wrapper instead of alias.
106480	(eldoc-mode): Only show the message when called interactively.
106481
1064822017-05-29  Dmitry Gutov  <dgutov@yandex.ru>
106483
106484	Use regexp matching instead of checking exit status
106485
106486	* lisp/progmodes/xref.el (xref-collect-matches):
106487	See if the output buffer contents look like Grep output
106488	instead of checking exit status (bug#23451).
106489
1064902017-05-29  Stephen Berman  <stephen.berman@gmx.net>
106491
106492	Add initial tests for todo-mode.el
106493
106494	*test/lisp/calendar/todo-mode-tests.el:
106495	*test/lisp/calendar/todo-mode-resources/todo-test-1.toda:
106496	*test/lisp/calendar/todo-mode-resources/todo-test-1.todo: New files.
106497
106498	* .gitattributes: Ignore trailing whitespace in todo-mode test
106499	data files, since it is part of the todo-mode file format.
106500
1065012017-05-29  Stephen Berman  <stephen.berman@gmx.net>
106502
106503	Make `todo-toggle-item-highlighting' work on multiline items (bug#27133)
106504
106505	* lisp/calendar/todo-mode.el (todo-hl-line-range): New named function,
106506	replacing an anonymous function for the sake of `describe-variable'.
106507	(todo-modes-set-2): Use it as buffer-local value of hl-line-range-function
106508	and remove boundp test of this variable, so its value is available on
106509	invoking `todo-toggle-item-highlighting'.
106510
1065112017-05-29  Alan Third  <alan@idiocy.org>
106512
106513	Fix build error on macOS 10.6
106514
106515	* src/nsfns.m (compute_tip_xy): Cast NSRect to CGRect and NSPoint to
106516	CGPoint.
106517
1065182017-05-29  Jules Tamagnan  <jtamagnan@gmail.com>  (tiny change)
106519
106520	Comply with pep 8 style guide for backslash in assignment (Bug#24809)
106521
106522	* lisp/progmodes/python.el (python-indent--calculate-indentation):
106523	Increase indent by `python-indent-offset' after
106524	`:after-backslash-assignment-continuation'.
106525
1065262017-05-29  Wilfred Hughes  <me@wilfred.me.uk>
106527
106528	Add suggestion to docstring
106529
106530	* lisp/subr.el (interactive-p): Mention commandp, as this is often
106531	  what users are actually looking for.
106532
1065332017-05-29  Wilfred Hughes  <me@wilfred.me.uk>
106534
106535	Ensure button-get works in any buffer
106536
106537	* lisp/button.el (button-get): Previously we assumed that button-get
106538	  was called in the buffer containing the button.  In other buffers,
106539	  button-get always returned nil.  Fix this by passing the relevant
106540	  buffer from the marker.
106541
1065422017-05-29  Dmitry Gutov  <dgutov@yandex.ru>
106543
106544	Signal error if find-grep returns a nonzero status
106545
106546	* lisp/progmodes/xref.el (xref-collect-matches): Signal error
106547	if find-grep returns a nonzero status (bug#23451).  Remove the
106548	comment: even if some output is present, a non-zero status
106549	means something went wrong and it can't be relied upon.
106550
1065512017-05-29  Stephen Berman  <stephen.berman@gmx.net>
106552
106553	Make sure exiting todo-mode buffer buries it (bug#27121)
106554
106555	This failed due to commit ea3ae33b from 2013-05-16, which prevented
106556	quitting todo-mode buffer after visiting todo-archive buffer from
106557	making the archive buffer current again.  Avoid this now by simply
106558	killing the archive buffer, since there's no need to keep it a live
106559	buffer.  Consequently, quitting a todo-mode buffer can now use
106560	bury-buffer without an argument, which ensures that is will not
106561	becomes current on quitting the buffer that replaced it in the window.
106562
106563	* lisp/calendar/todo-mode.el (todo-quit): Kill todo-archive-mode
106564	buffer instead of burying it.  This now allows exiting the
106565	todo-mode buffer by bury-buffer without an argument, so do that.
106566
1065672017-05-28  Michael Albinus  <michael.albinus@gmx.de>
106568
106569	Some tweaks, almost all for Tramp adb method
106570
106571	* lisp/net/tramp-adb.el (tramp-adb-parse-device-names):
106572	Use `make-tramp-file-name'.
106573	(tramp-adb-get-device): Use `tramp-file-name-port-or-default'.
106574	(tramp-adb-maybe-open-connection): Set "prompt" property.
106575	(tramp-adb-wait-for-output): Use it.
106576
106577	* lisp/net/tramp-cache.el (tramp-cache-print): Use `elt'.
106578	(tramp-dump-connection-properties): Check also that there are
106579	properties to be saved.  Don't save "started" property of
106580	"ftp" method.
106581
106582	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name):
106583	Use `make-tramp-file-name'.
106584
106585	* lisp/net/tramp.el (tramp-remote-file-name-spec-regexp):
106586	Host could be empty.
106587	(tramp-file-name-port-or-default): New defun.
106588	(tramp-dissect-file-name): Simplify `make-tramp-file-name' call.
106589	(tramp-handle-file-name-case-insensitive-p): Use a progress reporter.
106590	(tramp-call-process, tramp-call-process-region):
106591	Use `make-tramp-file-name'.
106592
106593	* test/lisp/net/tramp-tests.el (tramp-test03-file-name-defaults):
106594	Revert change from 2017-05-24.
106595	(tramp-test05-expand-file-name-relative): Let it also pass for
106596	"adb" method.
106597
1065982017-05-28  Jürgen Hötzel  <juergen@archlinux.org>
106599
106600	Fix Tramp for Android 7
106601
106602	* lisp/net/tramp-adb.el (tramp-adb-ls-toolbox-regexp):
106603	Username part of prompt is empty on Android 7.
106604	(tramp-adb-ls-toolbox-regexp):
106605	Ignore addition links column on Android 7.
106606	(tramp-adb-get-ls-command):
106607	Dont use --color=none when using toybox (Android 7).  It's not
106608	possible to disable coloring explicitly for toybox ls.
106609
1066102017-05-27  Svante Carl v. Erichsen  <Svante.v.Erichsen@web.de>  (tiny change)
106611
106612	Fix cl-indent for `loop' with :keywords (Bug#15543)
106613
106614	* lisp/emacs-lisp/cl-indent.el (lisp-extended-loop-p): Allow for
106615	":keywords".
106616
1066172017-05-27  Paul Eggert  <eggert@cs.ucla.edu>
106618
106619	Depromiscuify inotify with IN_MASK_ADD
106620
106621	Use IN_MASK_ADD instead of using a no-longer-promiscuous-enough
106622	mask.  This simplifies the code and restores the ability to
106623	use IN_ACCESS, IN_CLOSE_WRITE, IN_CLOSE_NOWRITE, and IN_OPEN
106624	in some cases (Bug#26973).
106625	* src/inotify.c (INOTIFY_DEFAULT_MASK): Remove.
106626	(Finotify_add_watch): Use IN_MASK_ADD instead.
106627
1066282017-05-27  Paul Eggert  <eggert@cs.ucla.edu>
106629
106630	Restore inotify onlydir support
106631
106632	There was no need to remove it in the 2017-03-26 inotify change,
106633	as it is like IN_DONT_FOLLOW and does not affect other watchers
106634	for the same file.
106635	* src/inotify.c (symbol_to_inotifymask, Finotify_add_watch)
106636	(syms_of_inotify): Bring back onlydir.
106637
1066382017-05-27  Paul Eggert  <eggert@cs.ucla.edu>
106639
106640	Simplify computation of inotify mask
106641
106642	* src/inotify.c (add_watch): Accept uint32_t imask instead
106643	of Lisp_Object aspect.  Caller changed.
106644	(Finotify_add_watch): Use aspect_to_inotifymask earlier, to
106645	simplify the code.
106646
1066472017-05-27  Eli Zaretskii  <eliz@gnu.org>
106648
106649	Improve the documentation of filesets
106650
106651	* doc/emacs/files.texi (Filesets): Fix the description of
106652	fileset-init's effect on the menu bar.  (Bug#27015)
106653
1066542017-05-27  Philipp Stephani  <phst@google.com>
106655
106656	Don't attempt to recover from undefined behavior in some cases
106657
106658	These functions can only be run in batch mode and exit Emacs on
106659	return, so nothing can be recovered.  Disable unsafe recover
106660	mechanisms so that we get real failures and good stack traces on
106661	fatal signals.
106662
106663	* lisp/emacs-lisp/bytecomp.el (batch-byte-compile)
106664	(batch-byte-recompile-directory):
106665	* lisp/emacs-lisp/ert.el (ert-run-tests-batch-and-exit)
106666	(ert-summarize-tests-batch-and-exit): Don't attempt to recover
106667	from undefined behavior.
106668
1066692017-05-27  Philipp Stephani  <phst@google.com>
106670
106671	Avoid another compiler warning on macOS
106672
106673	When configured with --without-ns, HAVE_NS is not defined on macOS,
106674	thus 'memory-limit' calls the deprecated sbrk(2) function.  Avoid that
106675	by using the pre-defined __APPLE__ preprocessor macro.
106676
106677	* src/alloc.c (Fmemory_limit): Never use sbrk(2) on macOS.
106678
1066792017-05-27  Luke Yen-Xun Lee  <luke.yx.lee@gmail.com>
106680
106681	Fix ruler-mode text-scaling issues
106682
106683	* lisp/ruler-mode.el (ruler-mode-text-scaled-width): New function
106684	for computing scaled text width.
106685	(ruler-mode-text-scaled-window-hscroll)
106686	(ruler-mode-text-scaled-window-width): Compute text scaled
106687	`window-width' value.
106688	(ruler-mode-mouse-grab-any-column, ruler-mode-mouse-add-tab-stop)
106689	(ruler-mode-ruler): Change `window-hscroll' into
106690	`ruler-mode-text-scaled-window-hscroll', and change `window-width'
106691	into `ruler-mode-text-scaled-window-width'.
106692
1066932017-05-27  Martin Rudalics  <rudalics@gmx.at>
106694
106695	Minor doc and doc-string fixes (Bug#27091)
106696
106697	* src/window.c (Fset_window_scroll_bars): Fix doc-string.
106698
106699	* doc/lispref/display.texi (Fringe Size/Pos, Scroll Bars)
106700	(Display Margins): Mention that `set-window-buffer' may override
106701	settings made by `set-window-fringes', `set-window-scroll-bars'
106702	and `set-window-margins'.
106703	* doc/lispref/windows.texi (Buffers and Windows): Fix doc of
106704	`set-window-buffer'.
106705
1067062017-05-27  Eli Zaretskii  <eliz@gnu.org>
106707
106708	Avoid args-out-of-range errors on fringe clicks after "C-h k"
106709
106710	* src/keyboard.c (echo_truncate): Don't call Ftruncate if the echo
106711	message is already shorter than NCHARS.  (Bug#27040)
106712
1067132017-05-27  Eli Zaretskii  <eliz@gnu.org>
106714
106715	Fix GUD "Stop" display when running pdb
106716
106717	* lisp/progmodes/gud.el (gud-menu-map): Don't call gdb-show-stop-p
106718	when GUD mode is 'pdb'.  (Bug#27024)
106719
1067202017-05-27  Tak Kunihiro  <tkk@misasa.okayama-u.ac.jp>
106721
106722	Support drag and drop of region by mouse (Bug#26725)
106723
106724	* doc/emacs/frames.texi (Drag and Drop): Document support of drag
106725	and drop region by mouse.
106726	* lisp/mouse.el (mouse-drag-region): Call mouse-drag-and-drop-region
106727	when start-event is on region.
106728	(mouse-drag-and-drop-region): New function, moves the region by
106729	(mouse-drag-and-drop-region): New defcustom.
106730	* etc/NEWS: Mention mouse-drag-and-drop-region.
106731
1067322017-05-27  Noam Postavsky  <npostavs@gmail.com>
106733
106734	* lisp/emacs-lisp/eieio.el (defclass): Fix quote in warning message.
106735
1067362017-05-27  Alan Third  <alan@idiocy.org>
106737
106738	Check if instancetype supported in ObjC
106739
106740	* configure.ac: Add check for instancetype.
106741	* src/nsterm.h [!NATIVE_OBJC_INSTANCETYPE]: Define instancetype.
106742
1067432017-05-26  Wilfred Hughes  <me@wilfred.me.uk>
106744
106745	Mark keywordp as a safe, error-free function
106746
106747	* lisp/emacs-lisp/byte-opt.el: Add keywordp to
106748	  side-effect-and-error-free-fns.
106749
1067502017-05-26  Paul Eggert  <eggert@cs.ucla.edu>
106751
106752	* src/inotify.c: Add FIXME comments.
106753
1067542017-05-26  Andreas Politz  <politza@hochschule-trier.de>
106755
106756	Fix Bug#26973
106757
106758	* src/inotify.c (INOTIFY_DEFAULT_MASK): Removing ACCESS, OPEN
106759	and CLOSE events on order do let other processes also reading
106760	from their descriptors.  (Bug#26973).
106761
1067622017-05-26  Michael Albinus  <michael.albinus@gmx.de>
106763
106764	Remove Emacs 23 compat code from Tramp
106765
106766	* doc/misc/tramp.texi (Remote processes): Don't mention
106767	Emacs 24 explicitly.
106768	(Frequently Asked Questions): Remove Emacs 23 from
106769	compatibility list.
106770
106771	* lisp/net/tramp.el:
106772	* lisp/net/tramp-adb.el:
106773	* lisp/net/tramp-cache.el:
106774	* lisp/net/tramp-gvfs.el:
106775	* lisp/net/tramp-sh.el:
106776	* lisp/net/tramp-smb.el: Replace compat function calls.
106777
106778	* lisp/net/tramp-compat.el (remote-file-name-inhibit-cache)
106779	(tramp-compat-condition-case-unless-debug)
106780	(tramp-compat-copy-file, tramp-compat-copy-directory)
106781	(tramp-compat-delete-file, tramp-compat-delete-directory)
106782	(tramp-compat-process-live-p): Remove them.
106783
106784	* lisp/net/trampver.el: Make version check fit for Emacs 24.
106785
1067862017-05-26  Katsumi Yamaoka  <yamaoka@jpl.org>
106787
106788	Work for application/x-tar-gz and image/svg+xml
106789
106790	;; Try inlining the attachment in the article <87wp94dzj6.fsf@gmail.com>
106791	;; of bug#27078 in the Emacs bug list using Gnus.
106792
106793	* lisp/gnus/mm-archive.el (mm-archive-decoders):
106794	Add a decoder for application/x-tar-gz.
106795	(mm-dissect-archive): Error out if a decoder is not found.
106796
106797	* lisp/gnus/mm-decode.el (mm-get-image): Allow image/svg+xml.
106798
1067992017-05-26  Tino Calancha  <tino.calancha@gmail.com>
106800
106801	test-calc-23889: Skip test on 32-bit platforms
106802
106803	This test fails on some 32-bit platforms as mentioned in
106804	https://lists.gnu.org/r/emacs-devel/2017-05/msg00737.html
106805	* test/lisp/calc/calc-tests.el (test-calc-23889): Skip when
106806	the Lisp integer is not big enough.
106807
1068082017-05-25  Alan Third  <alan@idiocy.org>
106809
106810	Fix NS tooltips showing in the wrong place (bug#27053)
106811
106812	* src/nsfns.m (compute_tip_xy): Get current mouse position instead of
106813	last recorded position.
106814
1068152017-05-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
106816
106817	lisp/net/soap-client.el: Bump version to 3.1.2
106818
106819	* lisp/net/soap-client.el: Bump version to 3.1.2.
106820
1068212017-05-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
106822
106823	Fix soap-inspect.el doc strings
106824
106825	* lisp/net/soap-inspect.el (soap-inspect-xs-attribute): Fix doc
106826	string.
106827	(soap-inspect-xs-attribute-group): Likewise.
106828
1068292017-05-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
106830
106831	Fix two soap-client.el byte compilation warnings
106832
106833	* lisp/net/soap-client.el (url-http-response-status): Add defvar.
106834	(soap-fetch-xml-from-url): Remove special declaration of
106835	url-http-response-status.
106836	(soap-invoke-internal): Likewise.
106837
1068382017-05-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
106839
106840	lisp/net/soap-client.el: Require cl-lib version 0.6.1
106841
106842	* lisp/net/soap-client.el: Require cl-lib version 0.6.1.
106843
1068442017-05-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
106845	    Stefan Monnier  <monnier@iro.umontreal.ca>
106846
106847	lisp/net/soap-client.el: Shorten some long lines
106848
106849	* lisp/net/soap-client.el (soap-encode-xs-element): Remove
106850	unnecessary progn.
106851	(soap-xs-add-union): Wrap long line.
106852
1068532017-05-25  Alex Harsanyi  <AlexHarsanyi@gmail.com>
106854	    Stefan Monnier  <monnier@iro.umontreal.ca>
106855
106856	Remove cl dependency in soap-client.el and soap-inspect.el
106857
106858	* lisp/net/soap-inspect.el: Replace cl library with cl-lib, case
106859	with cl-case, destructuring-bind with cl-destructuring-bind and
106860	loop with cl-loop.
106861
106862	* lisp/net/soap-client.el: Replace cl library with cl-lib,
106863	defstruct with cl-defstruct, assert with cl-assert, case with
106864	cl-case, ecase with cl-ecase, loop with cl-loop and
106865	destructuring-bind with cl-destructuring-bind.
106866
1068672017-05-25  Michael Albinus  <michael.albinus@gmx.de>
106868
106869	Switch Tramp to cl-lib
106870
106871	* lisp/net/tramp-compat.el (cl-lib): Require it rather than cl.
106872
106873	* lisp/net/tramp-ftp.el: Don't require cl.
106874
106875	* lisp/net/tramp-gvfs.el: Don't require cl.
106876	(tramp-gvfs-handler-mounted-unmounted)
106877	(tramp-gvfs-connection-mounted-p): Use `cl-*' macros.
106878
106879	* lisp/net/tramp-sh.el: Don't require cl.
106880	(tramp-set-file-uid-gid): Use `shell-quote-argument'.
106881	(tramp-sh-gvfs-monitor-dir-process-filter)
106882	(tramp-sh-inotifywait-process-filter): Use `cl-*' macros.
106883
106884	* lisp/net/tramp-smb.el: Don't require cl.
106885	(tramp-smb-read-file-entry): Use `cl-*' macros.
106886
106887	* lisp/net/tramp.el (cl-lib): Require it rather than cl.
106888	(tramp-parse-file, tramp-parse-shostkeys-sknownhosts)
106889	(tramp-parse-passwd, tramp-parse-etc-group)
106890	(tramp-parse-putty): Use `cl-*' macros.
106891
1068922017-05-25  Paul Eggert  <eggert@cs.ucla.edu>
106893
106894	* CONTRIBUTE: Suggest autogen.sh's 'all' operand.
106895
1068962017-05-25  Paul Eggert  <eggert@cs.ucla.edu>
106897
106898	Port ATTRIBUTE_MAY_ALIAS to recent icc
106899
106900	* src/conf_post.h (ATTRIBUTE_MAY_ALIAS) [__ICC]:
106901	Define to empty.  Otherwise, icc (ICC) 17.0.4 20170411 says
106902	“warning #2621: attribute "__may_alias__" does not apply here”
106903	for constructs like ‘struct sockaddr *sa = (whatever);
106904	struct sockaddr_in __attribute__ ((__may_alias__)) *sin
106905	= (struct sockaddr_in *) sa;’.
106906
1069072017-05-25  Paul Eggert  <eggert@cs.ucla.edu>
106908
106909	Merge from gnulib
106910
106911	This incorporates:
106912	2017-05-25 port to recent icc
106913	* lib/intprops.h: Copy from gnulib.
106914
1069152017-05-24  Michael Albinus  <michael.albinus@gmx.de>
106916
106917	Fix Tramp for python.el
106918
106919	* lisp/net/tramp.el (tramp-get-connection-process): Check,
106920	that VEC is a `tramp-file-name' structure.
106921
1069222017-05-24  Alan Third  <alan@idiocy.org>
106923
106924	Raise version of macOS we define instancetype for (bug#27059)
106925
106926	* src/nsterm.m: Increase supported version number.
106927
1069282017-05-24  Alan Third  <alan@idiocy.org>
106929
106930	Define new types on macOS 10.6 (bug#27041)
106931
106932	* src/nsterm.h: Enable instancetype typedef for older macOS, and use
106933	correct NSUInteger instead of int.
106934
1069352017-05-24  Glenn Morris  <rgm@gnu.org>
106936
106937	Don't autoload new dns-mode command
106938
106939	* lisp/textmodes/dns-mode.el (dns-mode-ipv6-to-nibbles):
106940	Remove autoload cookie.
106941
1069422017-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
106943
106944	* src/fns.c (sxhash): Fix records hashing (bug#27057, bug#26639)
106945
106946	(sxhash_vector): Make it work on pseudo vectors as well.
106947	(sxhash): Treat records like vectors.
106948
1069492017-05-24  Michael Albinus  <michael.albinus@gmx.de>
106950
106951	Adapt tramp-tests.el according to new defstruct
106952
106953	* test/lisp/net/tramp-tests.el (tramp-test03-file-name-defaults):
106954	Fix test according to new defstruct.
106955	(tramp-test29-environment-variables-and-port-numbers):
106956	Expect it now as passed.  Cleanup at the end.
106957
1069582017-05-24  Michael Albinus  <michael.albinus@gmx.de>
106959
106960	Introduce a defstruct `tramp-file-name' as central data structure.
106961
106962	This solves also Bug#27009.
106963
106964	* lisp/net/tramp.el (tramp-current-domain)
106965	(tramp-current-port): New defvars.
106966	(tramp-file-name): New defstruct.
106967	(tramp-file-name-user-domain, tramp-file-name-host-port)
106968	(tramp-file-name-equal-p): New defuns.
106969	(tramp-file-name-p, tramp-file-name-method)
106970	(tramp-file-name-user, tramp-file-name-host)
106971	(tramp-file-name-localname, tramp-file-name-hop)
106972	(tramp-file-name-real-user, tramp-file-name-domain)
106973	(tramp-file-name-real-host, tramp-file-name-port):
106974	Remove defuns.  They are provided by the defstruct, or not
106975	needed anymore.
106976	(tramp-dissect-file-name, tramp-buffer-name)
106977	(tramp-make-tramp-file-name, tramp-get-buffer)
106978	(tramp-set-connection-local-variables)
106979	(tramp-debug-buffer-name, tramp-message)
106980	(tramp-error-with-buffer, with-parsed-tramp-file-name)
106981	(tramp-completion-dissect-file-name1)
106982	(tramp-handle-file-name-as-directory)
106983	(tramp-handle-file-name-directory)
106984	(tramp-handle-file-remote-p, tramp-handle-file-symlink-p)
106985	(tramp-handle-find-backup-file-name)
106986	(tramp-handle-insert-file-contents, tramp-process-actions)
106987	(tramp-check-cached-permissions, tramp-local-host-p)
106988	(tramp-get-remote-tmpdir, tramp-call-process)
106989	(tramp-call-process-region, tramp-read-passwd)
106990	(tramp-clear-passwd):
106991	* lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
106992	(tramp-adb-handle-expand-file-name)
106993	(tramp-adb-handle-file-truename, tramp-adb-handle-copy-file)
106994	(tramp-adb-handle-process-file)
106995	(tramp-adb-maybe-open-connection):
106996	* lisp/net/tramp-cache.el (tramp-get-hash-table)
106997	(tramp-get-file-property, tramp-set-file-property)
106998	(tramp-flush-file-property, tramp-flush-directory-property)
106999	(tramp-get-connection-property)
107000	(tramp-set-connection-property, tramp-connection-property-p)
107001	(tramp-flush-connection-property, tramp-cache-print)
107002	(tramp-list-connections, tramp-dump-connection-properties)
107003	(tramp-parse-connection-properties):
107004	* lisp/net/tramp-cmds.el (tramp-cleanup-connection):
107005	* lisp/net/tramp-ftp.el (tramp-ftp-file-name-handler):
107006	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
107007	(tramp-gvfs-url-file-name, tramp-gvfs-handler-askpassword)
107008	(tramp-gvfs-handler-mounted-unmounted)
107009	(tramp-gvfs-mount-spec, tramp-gvfs-get-remote-uid)
107010	(tramp-gvfs-get-remote-gid)
107011	(tramp-gvfs-maybe-open-connection):
107012	* lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
107013	(tramp-do-copy-or-rename-file-out-of-band)
107014	(tramp-sh-handle-expand-file-name)
107015	(tramp-sh-handle-start-file-process)
107016	(tramp-sh-handle-process-file, tramp-compute-multi-hops)
107017	(tramp-maybe-open-connection)
107018	(tramp-make-copy-program-file-name, tramp-get-remote-path)
107019	(tramp-get-inline-coding):
107020	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
107021	(tramp-smb-handle-expand-file-name)
107022	(tramp-smb-handle-file-acl, tramp-smb-handle-process-file)
107023	(tramp-smb-handle-set-file-acl)
107024	(tramp-smb-maybe-open-connection): Adapt according to defstruct.
107025
1070262017-05-24  Stephen Berman  <steve@rosalinde.fritz.box>
107027
107028	Fix and improve UI of scroll bar menu (bug#27047)
107029
107030	In addition, since the Emacs manual writes "scroll bar", "tool
107031	bar" and "menu bar", use this convention in the Show/Hide menues
107032	and tooltips as well.
107033
107034	* lisp/menu-bar.el (menu-bar-showhide-scroll-bar-menu): Make
107035	pressing a radio button in the menu actually show that it was
107036	pressed.  Replace the two radio buttons to turn the horizontal
107037	scroll bar on and off with a single check-box toggle and add a
107038	separator between this and the vertical scroll bar radio
107039	buttons.  Use conventional spelling.
107040	(menu-bar-horizontal-scroll-bar)
107041	(menu-bar-no-horizontal-scroll-bar): Remove, since now unused.
107042	(menu-bar-showhide-tool-bar-menu, menu-bar-showhide-menu)
107043	(menu-bar-mode): Use conventional spelling.
107044
1070452017-05-24  Katsumi Yamaoka  <yamaoka@jpl.org>
107046
107047	Remove string-as-unibyte
107048
107049	* lisp/gnus/canlock.el (canlock-sha1): Remove useless variable.
107050	(canlock-make-cancel-key): No need to use string-as-unibyte.
107051
1070522017-05-24  Tino Calancha  <tino.calancha@gmail.com>
107053
107054	Fix concatenation of "^" with diff-file-junk-re
107055
107056	This regexp contains "\\|", thus a concatenation
107057	of "^" with it just matches the beginning of line for the
107058	first alternative in diff-file-junk-re.
107059	* lisp/vc/ediff-ptch.el (ediff-map-patch-buffer): Concat "^" with
107060	diff-file-junk-re wrapped in a shy group.
107061
1070622017-05-24  Glenn Morris  <rgm@gnu.org>
107063
107064	Suppress intermittent test failure on hydra
107065
107066	* test/lisp/emacs-lisp/eieio-tests/eieio-tests.el
107067	(eieio-test-37-obsolete-name-in-constructor): Skip on hydra.
107068
1070692017-05-24  Peder O. Klingenberg  <peder@klingenberg.no>
107070
107071	New dns-mode command for IPv6 address conversion
107072
107073	This converts IPv6 addresses to a format suitable for
107074	reverse lookup zone files.  (Bug#26820)
107075	* lisp/textmodes/dns-mode.el (dns-mode-map, dns-mode-menu):
107076	Add dns-mode-ipv6-to-nibbles.
107077	(dns-mode-ipv6-to-nibbles, dns-mode-reverse-and-expand-ipv6):
107078	New functions.
107079	* test/lisp/dns-mode-tests.el: New file.
107080
1070812017-05-24  Noam Postavsky  <npostavs@gmail.com>
107082
107083	Protect *Backtrace* from being killed (Bug#26650)
107084
107085	* lisp/emacs-lisp/debug.el (debugger-mode): Call `top-level' in
107086	`kill-buffer-hook'.
107087
1070882017-05-24  Noam Postavsky  <npostavs@gmail.com>
107089
107090	Give a name to lisp-mode's adaptive-fill-function (Bug#22730)
107091
107092	* lisp/emacs-lisp/lisp-mode.el (lisp-adaptive-fill): New function.
107093	(lisp-mode-variables): Use it.
107094
1070952017-05-23  Philipp Stephani  <phst@google.com>
107096
107097	vc-hg.el: Silence byte compiler warning
107098
107099	* lisp/vc/vc-hg.el (compilation-arguments): Forward-declare.
107100
1071012017-05-23  Paul Eggert  <eggert@cs.ucla.edu>
107102
107103	Don't warn about missing brances on macOS
107104
107105	On macOS, removing -Wmissing-braces is not enough; the warning has to
107106	be disabled explicitly.
107107
1071082017-05-23  Wilfred Hughes  <me@wilfred.me.uk>
107109
107110	Don't treat ' as a string delimiter in RPM spec files
107111
107112	' is commonly used as an apostrophe in the prose sections of spec
107113	files, which was erroneously highlighted as strings. See for example
107114	http://kmymoney2.sourceforge.net/phb/rpm-example.html
107115
107116	* lisp/progmodes/sh-script.el (sh-mode-syntax-table): Treat ' as
107117	  punctuation in RPM spec files.
107118
1071192017-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
107120
107121	* lisp/emacs-lisp/cl-indent.el: Don't require CL.  Use lexical-binding.
107122
107123	(common-lisp-indent-function-1): Remove unused var `last-point`.
107124	(lisp-indent-error-function): Move defvar before first use.
107125
1071262017-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
107127
107128	* lisp/international/rfc1843.el: Don't require CL.  Use lexical-binding.
107129
107130	* lisp/international/utf7.el: Don't require CL.  Use lexical-binding.
107131
107132	* lisp/net/shr.el: Use cl-lib instead of cl.
107133
1071342017-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
107135
107136	* test/src/fns-tests.el, test/src/data-tests.el: Don't use `cl`
107137
107138	* test/src/data-tests.el (binding-test-manual, binding-test-setq-default)
107139	(binding-test-makunbound, data-tests-varalias-watchers)
107140	(data-tests-local-variable-watchers): Silence compiler warnings.
107141
1071422017-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
107143
107144	* lisp/vc/vc-hg.el (compilation-directory): Silence byte-compiler.
107145
1071462017-05-23  Alan Third  <alan@idiocy.org>
107147
107148	Fix GNUstep build
107149
107150	* src/nsterm.h [NS_IMPL_GNUSTEP]: Add typedefs for Cocoa-only types.
107151	(NSWindowStyleMaskUtilityWindow): #define to NSUtilityWindowMask in
107152	GNUstep and old versions of macOS.
107153	* src/nsfns.m (ns-set-mouse-absolute-pixel-position): Function only
107154	works in cocoa, not GNUstep.
107155
1071562017-05-23  Michael Albinus  <michael.albinus@gmx.de>
107157
107158	Add test for Bug#27009 in tramp-tests.el
107159
107160	* lisp/net/tramp-sh.el (tramp-compute-multi-hops):
107161	Check `tramp-file-name-real-host' for being a local host.
107162
107163	* lisp/net/tramp.el (tramp-postfix-host-regexp): Fix docstring.
107164
107165	* test/lisp/net/tramp-tests.el (tramp-test-temporary-file-directory):
107166	Declare default host for mock method.
107167	(tramp-test29-environment-variables-and-port-numbers): New test.
107168
1071692017-05-23  Glenn Morris  <rgm@gnu.org>
107170
107171	Don't advertise s_client in tls.el docs
107172
107173	* lisp/net/tls.el (tls-end-of-info, tls-success, tls-untrusted):
107174	Don't mention s_client in docs.
107175
107176	(cherry picked from commit 622c24a2b75a564b9861fc3ca7a7878741e8568d)
107177
1071782017-05-23  Rob Browning  <rlb@defaultvalue.org>
107179
107180	Remove s_client usage from tls.el
107181
107182	* lisp/net/tls.el (tls-program, tls-checktrust): Remove s_client.
107183	Ref http://bugs.debian.org/766397
107184	https://lists.gnu.org/r/emacs-devel/2014-10/msg00803.html
107185
107186
107187	(cherry picked from commit 6e45de6bacc508db11b15b2c8ba86aad8c0570df)
107188
1071892017-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
107190
107191	* lisp/mail/rfc2047.el (rfc2047-decode-encoded-words): Set `words` to nil.
107192
1071932017-05-22  Sam Steingold  <sds@gnu.org>
107194
107195	Fix "g" in hg&git push&pull buffers
107196
107197	lisp/vc/vc-git.el (vc-git--pushpull): Set locally
107198	`compilation-directory' and `compilation-arguments'.
107199	lisp/vc/vc-hg.el (vc-hg--pushpull): Likewise.
107200
1072012017-05-22  Eli Zaretskii  <eliz@gnu.org>
107202
107203	Fix current-line hscrolling in buffers with header-line
107204
107205	* src/xdisp.c (display_line): When testing the glyph row's
107206	vertical position against the cursor position, account for header
107207	line, if any.  (Bug#27014)
107208
1072092017-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
107210
107211	* lisp/mail/rfc2047.el: Use cl-lib & lexical-binding, silence warning
107212
107213	(rfc2047-decode-encoded-words): Use dolist.
107214	(rfc2047-decode-string): Avoid string-to-multibyte.
107215	(rfc2047-pad-base64): Use pcase.
107216
1072172017-05-21  Dima Kogan  <dima@secretsauce.net>
107218
107219	Make ff-find-other-file symmetric for C++ (Bug#20192)
107220
107221	`cc-other-file-alist' has a mapping of file extensions to switch
107222	between headers and sources, but the mappings weren't completely
107223	symmetric.  In particular .cpp would map to .hh, but .hh would NOT map
107224	to .cpp.
107225
107226	* lisp/find-file.el (cc-other-file-alist): Map ".hh" and ".h" to all
107227	C++ extensions to make them symmetric with the C++ extensions that map
107228	to them.  This lets repeated invocations of `ff-find-other-file'
107229	toggle between all pairs of sources/headers.
107230
1072312017-05-21  Philipp Stephani  <phst@google.com>
107232
107233	Fix definition of whitespace in JSON
107234
107235	See
107236	https://lists.gnu.org/r/emacs-devel/2017-05/msg00115.html.
107237
107238	* lisp/json.el (json-skip-whitespace): Fix definition.
107239	* test/lisp/json-tests.el (test-json-skip-whitespace): Adapt unit
107240	test.
107241
1072422017-05-21  Philipp Stephani  <phst@google.com>
107243
107244	Improve module function terminology
107245
107246	Module functions were previously called "function environments" when
107247	the functions created by module_make_functions were lambdas.  Now we
107248	can adapt the terminology and rename "function environments" to
107249	"module functions" everywhere.  This also removes the name clash
107250	between "function environments" and "module environments."
107251
107252	* src/emacs-module.c (module_make_function): Adapt comment to reality;
107253	stop using "function environment" terminology.
107254	(funcall_module): Stop using "function environment" terminology.
107255
1072562017-05-21  Philipp Stephani  <phst@google.com>
107257
107258	Avoid uninitialized read
107259
107260	* src/nsterm.m (ns_read_socket): Don't read uninitialized variable 'nevents'.
107261
1072622017-05-21  Philipp Stephani  <phst@google.com>
107263
107264	Fix call of registerServicesMenuSendTypes
107265
107266	* src/nsterm.m (initFrameFromEmacs:): nil is not allowed for
107267	returnTypes; pass an empty array instead.
107268
1072692017-05-21  Philipp Stephani  <phst@google.com>
107270
107271	Clean up code around 'ns-list-services'
107272
107273	* src/nsfns.m (Fns_list_services): Remove unreachable code.  In this
107274	branch NS_IMPL_COCOA cannot be defined.
107275	(interpret_services_menu): Define only if called to avoid compiler
107276	warnings about unused static functions.
107277
1072782017-05-21  Philipp Stephani  <phst@google.com>
107279
107280	Remove unused automatic variables
107281
107282	* src/nsterm.m (ns_read_socket):
107283	* src/macfont.m (macfont_open): Remove unused automatic variables.
107284
1072852017-05-21  Philipp Stephani  <phst@google.com>
107286
107287	Nextstep: Replace deprecated enumerators
107288
107289	* src/nsmenu.m (initWithContentRect:styleMask:backing:defer:): Replace
107290	deprecated enumerator.
107291
1072922017-05-21  Philipp Stephani  <phst@google.com>
107293
107294	Nextstep: remove some deprecated method calls
107295
107296	* src/nsterm.m (mouseDown:):
107297	* src/nsmenu.m (runMenuAt:forFrame:keymaps:): Remove call to
107298	deprecated method.  The return value is always nil.
107299	* src/macfont.m (mac_font_shape_1): Replace call to deprecated method.
107300
1073012017-05-21  Philipp Stephani  <phst@google.com>
107302
107303	Remove trailing semicolons in method definitions
107304
107305	These semicolons are ignored and cause compiler warnings.
107306
107307	* src/nsimage.m (setPixelAtX:Y:toRed:green:blue:alpha:):
107308	* src/nsterm.m (init, updateFrameSize:):
107309	(setFrame:): Remove trailing semicolon.
107310
1073112017-05-21  Philipp Stephani  <phst@google.com>
107312
107313	Remove calls to deprecated setUsesScreenFonts
107314
107315	* src/macfont.m (mac_screen_font_get_metrics): Don't call setUsesScreenFonts.
107316	(mac_font_shape_1): Remove screen_font_p parameter.
107317	(mac_screen_font_shape): Remove screen_font_p argument.
107318
1073192017-05-21  Philipp Stephani  <phst@google.com>
107320
107321	Make a function static that isn't used outside this file
107322
107323	* src/kqueue.c (kqueue_directory_listing): Make static.
107324
1073252017-05-21  Philipp Stephani  <phst@google.com>
107326
107327	Use NSCharacterCollection instead of CTCharacterCollection
107328
107329	This should not cause behavior changes, but fixes a compiler warning
107330	due to implicit conversions between the enums.
107331
107332	* src/macfont.m (macfont_cache, macfont_lookup_cache)
107333	(macfont_get_glyph_for_cid, macfont_get_uvs_table)
107334	(macfont_variation_glyphs): Use NSCharacterCollection.
107335
1073362017-05-21  Philipp Stephani  <phst@google.com>
107337
107338	Remove unused function print_regions
107339
1073402017-05-21  Philipp Stephani  <phst@google.com>
107341
107342	Declare Nextstep unexec functions in lisp.h
107343
107344	This removes compiler warnings about missing prototypes on macOS.
107345
1073462017-05-21  Philipp Stephani  <phst@google.com>
107347
107348	Nextstep: Use instancetype explicit return type
107349
107350	This removes compiler warnings on macOS and improves type safety.
107351
107352	* src/nsterm.m (initFrameFromEmacs:):
107353	(menuDown:):
107354	(toolbarClicked:):
107355	(toggleToolbar:):
107356	(setMiniwindowImage:):
107357	(initFrame:window:):
107358	(condemn, reprieve, setPosition:portion:whole:):
107359	(repeatScroll:):
107360	* src/nsmenu.m (initWithTitle:):
107361	(initWithTitle:frame:):
107362	(initForView:withIdentifier:):
107363	(init, initWithContentRect:styleMask:backing:defer:):
107364	(initFromContents:isQuestion:):
107365	* src/nsimage.m (allocInitFromFile:):
107366	(initFromXBM:width:height:fg:bg:):
107367	(setXBMColor:):
107368	(initForXPMWithDepth:width:height:): Use instancetype as return
107369	type instead of implicit id.
107370
1073712017-05-21  Tino Calancha  <tino.calancha@gmail.com>
107372
107373	* lisp/emacs-lisp/package.el (package-delete): Delete readme file as well.
107374
1073752017-05-21  Alan Mackenzie  <acm@muc.de>
107376
107377	Enhance mode-line percentage offset facility, with "%o" and "%q"
107378
107379	"%o" will display the percentage "travel" of the window through the buffer.
107380	"%q" will display a combination of the percentage offsets of the top and
107381	bottom of the window.  The new user option mode-line-percent-position will
107382	facilitate selecting a setting for this part of the mode line.
107383
107384	* lisp/bindings.el (mode-line-percent-position): New customizable user option.
107385	(mode-line-position): Use mode-line-percent-position in place of "%p", etc.
107386
107387	* src/xdisp.c (decode_mode_spec): Add handlers for "%o" and "%q".
107388
107389	* doc/lispref/modes.texi (Mode Line Variables): Document
107390	mode-line-percent-position.
107391	(%-Constructs): Document %o and %q.
107392
107393	* etc/NEWS: Add an entry for these new facilities.
107394
1073952017-05-21  Paul Eggert  <eggert@cs.ucla.edu>
107396
107397	Work around macOS bug in create_process, too
107398
107399	* src/process.c (create_process) [DARWIN_OS]:
107400	Reset SIGCHLD after vfork here, too.
107401
1074022017-05-21  Paul Eggert  <eggert@cs.ucla.edu>
107403
107404	Work around macOS bug with vforked child
107405
107406	* src/callproc.c (call_process) [DARWIN_OS]:
107407	Include workaround for apparent macOS bug.
107408
1074092017-05-21  Paul Eggert  <eggert@cs.ucla.edu>
107410
107411	Pacify --enable-gcc-warnings without modules
107412
107413	* src/print.c (print_vectorlike): New function, taken from
107414	part of print_object.  This one is indented properly, and
107415	pacifies --enable-gcc-warnings by using a default case
107416	instead of listing all the enum values, sometimes
107417	incompletely.
107418	(print_object): Use it.
107419
1074202017-05-21  Paul Eggert  <eggert@cs.ucla.edu>
107421
107422	Remove DARWIN_OS_CASE_SENSITIVE_FIXME code
107423
107424	It does not appear to be needed (Bug#24441).
107425	* etc/PROBLEMS: Remove DARWIN_OS_CASE_SENSITIVE_FIXME stuff.
107426	* src/fileio.c (file_name_case_insensitive_p):
107427	Remove DARWIN_OS_CASE_SENSITIVE_FIXME code.
107428
1074292017-05-21  Paul Eggert  <eggert@cs.ucla.edu>
107430
107431	Narrow DARWIN_OS_CASE_SENSITIVE_FIXME to 1 choice
107432
107433	* etc/PROBLEMS: Document this (Bug#24441).
107434	* src/fileio.c (file_name_case_insensitive_p): Prefer pathconf
107435	with _PC_CASE_SENSITIVE, if it works, to
107436	DARWIN_OS_CASE_SENSITIVE_FIXME code.
107437	Support just one method for DARWIN_OS_CASE_SENSITIVE_FIXME,
107438	which matches the Apple documentation more precisely.
107439
1074402017-05-21  Tom Tromey  <tom@tromey.com>
107441
107442	Fix mhtml-mode fontification bug
107443
107444	Bug#26922
107445	* lisp/textmodes/mhtml-mode.el (mhtml-syntax-propertize): Call
107446	sgml-syntax-propertize-inside if not in a submode.
107447	* test/manual/indent/html-multi-4.html: New file.
107448
1074492017-05-21  Ryan  <rct@thompsonclan.org>  (tiny change)
107450
107451	Fix ido-enable-dot-prefix for empty choice (Bug#26997)
107452
107453	* lisp/ido.el (ido-set-matches-1): Only check first character of
107454	item if it's non-empty.
107455
1074562017-05-21  Ari Roponen  <ari.roponen@gmail.com>
107457
107458	* lisp/svg.el (svg-line): Fix x/y typo.  (Bug#26953)
107459
1074602017-05-21  Glenn Morris  <rgm@gnu.org>
107461
107462	Prevent loading vc-bzr writing to ~/.bzr.log
107463
107464	* lisp/vc/vc-bzr.el (vc-bzr-status-switches): Disable bzr logging.
107465
1074662017-05-21  Glenn Morris  <rgm@gnu.org>
107467
107468	Prevent running vc-tests writing to ~/.bzr.log
107469
107470	* test/lisp/vc/vc-tests.el (vc-test--create-repo)
107471	(vc-test--register, vc-test--working-revision)
107472	(vc-test--checkout-model): Set temporary BZR_HOME, to disable logging.
107473
1074742017-05-21  Noam Postavsky  <npostavs@gmail.com>
107475
107476	Don't end non-hook variable with "-hook" (Bug#26623)
107477
107478	* lisp/follow.el (follow-inside-post-command-hook-call): Renamed from
107479	follow-inside-post-command-hook, update uses.
107480
1074812017-05-21  Charles A. Roelli  <charles@aurox.ch>
107482
107483	Fix macOS mouse movement
107484
107485	* lisp/frame.el (ns-set-mouse-absolute-pixel-position): New
107486	function (Lisp).
107487	(set-mouse-absolute-pixel-position): Change it to call
107488	`ns-set-mouse-absolute-pixel-position' on macOS.
107489	* src/nsfns.m (Fns_set_mouse_absolute_pixel_position): New
107490	function.
107491	* src/nsterm.h (NS_PARENT_WINDOW_TOP_POS): Use the primary
107492	screen's height as a base for calculating global coordinates.
107493	* src/nsterm.m (frame_set_mouse_pixel_position): Fix it in macOS.
107494	* test/lisp/mouse-tests.el (bug26816-mouse-frame-movement): Test
107495	movement of mouse relative to frame.
107496
1074972017-05-21  Alan Third  <alan@idiocy.org>
107498
107499	Show tooltip on correct screen (bug#26905)
107500
107501	* src/nsfns.m (compute_tip_xy): Find the correct screen for the
107502	tooltip and constrain it to that screen.
107503
1075042017-05-21  Andreas Politz  <politza@hochschule-trier.de>
107505
107506	Don't save unrelated buffers before recompiling directory (Bug#25964)
107507
107508	* lisp/emacs-lisp/bytecomp.el (byte-recompile-directory): Only save
107509	buffers visiting lisp files under the directory being compiled.
107510
1075112017-05-20  Paul Eggert  <eggert@cs.ucla.edu>
107512
107513	Minor fixes for arity ranges in emacs modules
107514
107515	* src/emacs-module.c (module_make_function):
107516	Check that arities fit into fixnums, for func-arity’s benefit.
107517	(funcall_module): Avoid unnecessary conversion to EMACS_INT.
107518	(module_function_arity): Allow arities greater than SHRT_MAX.
107519
1075202017-05-20  Philipp Stephani  <phst@google.com>
107521
107522	Reimplement module functions
107523
107524	Instead of a lambda, create a new type containing all data required to
107525	call the function, and support it in the evaluator.  Because this type
107526	now also needs to store the function documentation, it is too big for
107527	Lisp_Misc; use a pseudovector instead.  That also has the nice benefit
107528	that we don't have to add special support to the garbage collector.
107529
107530	Since the new type is user-visible, give it a predicate.
107531
107532	Now we can easily support 'help-function-args' and 'func-arity'; add
107533	unit tests for these.
107534
107535	* src/lisp.h (allocate_module_function, MODULE_FUNCTIONP)
107536	(XMODULE_FUNCTION): New pseudovector type 'module function'.
107537
107538	* src/eval.c (FUNCTIONP): Also treat module functions as functions.
107539	(funcall_lambda, Ffuncall, eval_sub): Add support for calling module
107540	functions.
107541	(Ffunc_arity): Add support for detecting the arity of module
107542	functions.
107543
107544	* src/emacs-module.c (module_make_function): Adapt to new structure.
107545	Return module function object directly instead of wrapping it in a
107546	lambda; remove FIXME.
107547	(funcall_module): New function to call module functions.  Replaces
107548	`internal--module-call' and is called directly from eval.c.
107549	(syms_of_module): Remove internal helper function, which is no longer
107550	needed.
107551	(module_function_arity): New helper function.
107552
107553	* src/data.c (Ftype_of): Adapt to new implementation.
107554	(Fmodule_function_p, syms_of_data): New user-visible function.  Now
107555	that module functions are first-class objects, they deserve a
107556	predicate.  Define it even if not compiled with --enable-modules so
107557	that Lisp code doesn't have to check for the function's existence.
107558
107559	* src/doc.c (Fdocumentation): Support module functions.
107560
107561	* src/print.c (print_object): Adapt to new implementation.
107562
107563	* src/alloc.c (mark_object): Specialized garbage collector support is
107564	no longer needed.
107565
107566	* lisp/help.el (help-function-arglist): Support module functions.
107567	While there, simplify the arity calculation by using `func-arity',
107568	which does the right thing for all kinds of functions.
107569
107570	* test/data/emacs-module/mod-test.c: Amend docstring so we can test
107571	the argument list.
107572
107573	* test/src/emacs-module-tests.el (mod-test-sum-docstring): Adapt to
107574	new docstring.
107575	(mod-test-non-local-exit-signal-test): Because `internal--module-call'
107576	is gone, the backtrace has changed and no longer leaks the
107577	implementation.
107578	(module--func-arity): New test for `func-arity'.
107579	(module--help-function-arglist): New test for `help-function-arglist'.
107580
1075812017-05-20  Eli Zaretskii  <eliz@gnu.org>
107582
107583	Avoid crashes in GC due to unescaped characters warning
107584
107585	* src/lread.c (load_warn_unescaped_character_literals): Don't cons
107586	Lisp objects from stack-based variables.  (Bug#26961)
107587
1075882017-05-20  Charles A. Roelli  <charles@aurox.ch>
107589
107590	New commands: find-library-other-window, find-library-other-frame
107591
107592	* lisp/emacs-lisp/find-func.el (find-library-other-window)
107593	(find-library-other-frame): New commands to complement the
107594	existing 'find-library' command.  (Bug#26712)
107595	(read-library-name): New function to read a library name.
107596	* etc/NEWS: Mention 'find-library-other-window' and
107597	'find-library-other-frame'.
107598
1075992017-05-20  Eli Zaretskii  <eliz@gnu.org>
107600
107601	Fix automatic hscrolling of only the current line
107602
107603	* src/xdisp.c (display_line): When hscrolling only the current
107604	line, increment iterator's first_visible_x and last_visible_x
107605	values to account for the hscroll.  This propagates the hscroll
107606	effect on the iterator geometry all the way down to the
107607	subroutines called by display_line, and avoids scrolling bugs
107608	under large hscroll values.  (Bug#26994)
107609
1076102017-05-20  Paul Eggert  <eggert@cs.ucla.edu>
107611
107612	Add handlerlist assertion to module code
107613
107614	* src/emacs-module.c (module_reset_handlerlist):
107615	Check handlerlist.  Suggested by Philipp Stephani in:
107616	https://lists.gnu.org/r/emacs-devel/2017-05/msg00521.html
107617
1076182017-05-20  Paul Eggert  <eggert@cs.ucla.edu>
107619
107620	Port --enable-gcc-warnings to clang 3.9.1
107621
107622	* configure.ac (WERROR_CFLAGS): Omit -Wmissing-braces for Clang,
107623	to shut off a false alarm.  Problem reportd by Philipp Stephani in:
107624	https://lists.gnu.org/r/emacs-devel/2017-05/msg00521.html
107625
1076262017-05-20  Noam Postavsky  <npostavs@gmail.com>
107627
107628	Limit integers printed as characters (Bug#16828)
107629
107630	* lisp/simple.el (eval-expression-print-maximum-character): New
107631	variable.
107632	(eval-expression-print-format): Only display value as character if
107633	it's less than or equal to `eval-expression-print-maximum-character'.
107634	(eval-expression-get-print-arguments): Check
107635	eval-expression-print-maximum-character, allow negative arg to
107636	override it.
107637	(eval-expression):
107638	* lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
107639	(elisp--eval-last-sexp-print-value): Handle new variable.
107640	* doc/emacs/building.texi (Lisp Eval): Document new variable and
107641	behavior.
107642	* etc/NEWS: Announce it.
107643	* test/lisp/progmodes/elisp-mode-tests.el
107644	(eval-last-sexp-print-format-small-int)
107645	(eval-last-sexp-print-format-small-int-echo)
107646	(eval-last-sexp-print-format-large-int)
107647	(eval-last-sexp-print-format-large-int-echo):
107648	* test/lisp/simple-tests.el (eval-expression-print-format-small-int)
107649	(eval-expression-print-format-small-int-echo)
107650	(eval-expression-print-format-large-int)
107651	(eval-expression-print-format-large-int-echo): New tests.
107652
1076532017-05-20  Noam Postavsky  <npostavs@gmail.com>
107654
107655	Refactor lisp eval result printing
107656
107657	* lisp/simple.el (eval-expression-print-format): Don't check
107658	`standard-output' or `current-prefix-arg'.
107659	(eval-expression-get-print-arguments): New function, centralizes
107660	decision about how to print results of `eval-expression' and
107661	`eval-last-sexp'.
107662	(eval-expression):
107663	* lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp-print-value):
107664	Use it.
107665
1076662017-05-19  Paul Eggert  <eggert@cs.ucla.edu>
107667
107668	Check that signed right shift is arithmetic
107669
107670	* src/data.c (ash_lsh_impl): Verify that signed right shift is
107671	arithmetic; if we run across a compiler that uses a logical shift
107672	we’ll need to complicate the code before removing this
107673	compile-time check.  Help the compiler do common subexpression
107674	elimination better.
107675
1076762017-05-19  Paul Eggert  <eggert@cs.ucla.edu>
107677
107678	Minor .gitignore fixes
107679
107680	* .gitignore: modules/mod-test/Makefile was renamed to
107681	test/data/emacs-module/Makefile.
107682	Omit [0-9]*.core, subsumed by *.core.
107683	test/indent/*.new was renamed to test/manual/indent/*.new.
107684	Add *.swp, for Vim.
107685
1076862017-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
107687
107688	* lisp/emacs-lisp/package.el: Quote `package-desc' in docstrings
107689
1076902017-05-19  Eli Zaretskii  <eliz@gnu.org>
107691
107692	Describe problems with Microsoft Intellipoint
107693
107694	* etc/PROBLEMS: Describe problems with Microsoft Intellipoint and
107695	mouse-2 events.  For the details, see
107696	https://lists.gnu.org/r/help-emacs-windows/2017-05/msg00009.html.
107697
1076982017-05-19  Nick Helm  <nick@tenpoint.co.nz>  (tiny change)
107699
107700	Fix turning off whitespace-mode
107701
107702	* lisp/whitespace.el (whitespace-display-char-on): Correct the way
107703	the original buffer-display-table is saved and restored when
107704	global-whitespace-mode is active.  (Bug#26892)
107705
107706	* test/lisp/whitespace-tests.el
107707	(whitespace-tests-whitespace-mode-on): New function.
107708	(whitespace-tests-display-tables): New test.
107709
1077102017-05-19  Michael Albinus  <michael.albinus@gmx.de>
107711
107712	Minor tweaks in tramp-tests.el
107713
107714	* test/lisp/net/tramp-tests.el (tramp--test-afp-or-smb-p): New defun.
107715	(tramp-test05-expand-file-name-relative): Use it.
107716	(tramp-test38-unload): Run only in batch mode.
107717
1077182017-05-19  Michael Albinus  <michael.albinus@gmx.de>
107719
107720	Fix a problem with OpenSSH 7 in Tramp
107721
107722	* lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options): Set also
107723	"ConnectTimeout" during test.  Otherwise, OpenSSH 7 will hang.
107724
1077252017-05-19  Jean-Christophe Helary  <jean.christophe.helary@gmail.com>
107726
107727	Improve documentation of 'split-string'
107728
107729	* doc/lispref/strings.texi (Creating Strings): Rearrange text to
107730	make it more readable.  (Bug#26925)
107731
1077322017-05-19  Ruslan Bekenev  <furyinbox@gmail.com>
107733
107734	Fix typos in doc strings
107735
107736	* lisp/mail/rfc2231.el (rfc2231-encode-string):
107737	* lisp/mail/rfc2047.el (rfc2047-encode-parameter):
107738	* lisp/mail/rfc2045.el (rfc2045-encode-string): Fix typos in doc
107739	strings.  (Bug#26103)
107740
1077412017-05-19  Philipp Stephani  <phst@google.com>
107742
107743	Fix module tests on some systems
107744
107745	If dladdr(3) isn't available or didn't work, the printed
107746	representation of a module function will not include the file name,
107747	but only the address.  Make the tests pass in that case.
107748
107749	* test/src/emacs-module-tests.el (module-function-object): Fix match for
107750	module function printed representation
107751
1077522017-05-19  Jean-Christophe Helary  <jean.christophe.helary@gmail.com>
107753
107754	Add an optional arguments to string-trim
107755
107756	* lisp/emacs-lisp/subr-x.el (string-trim-left, string-trim-right)
107757	(string-trim): Add optional args that serve as defaults per the
107758	original behavior.  (Bug#26908)
107759
1077602017-05-19  Stephen Berman  <steve@rosalinde.fritz.box>
107761
107762	Fix typo in last change to auto-hscroll-mode
107763
107764	* lisp/cus-start.el (standard): Fix typo in value of auto-hscroll-mode.
107765
1077662017-05-19  Eli Zaretskii  <eliz@gnu.org>
107767
107768	Support remote editing in emacsclient via Tramp
107769
107770	* lib-src/emacsclient.c (main, decode_options)
107771	(print_help_and_exit, longopts): New option '--tramp' / '-T' which
107772	specifies how emacs should use tramp to find remote files.
107773
107774	* doc/emacs/misc.texi (TCP Emacs server): New subsection describing
107775	the various knobs to tune server.el for TCP opereation.
107776	(emacsclient Options): Reference "TCP Emacs server" from description of
107777	--server-file.  Document the new '--tramp' / '-T' options.
107778	* doc/emacs/emacs.texi (Top): Update the top-level menu.
107779
107780	* etc/NEWS: Mention the new option.
107781
1077822017-05-19  Eli Zaretskii  <eliz@gnu.org>
107783
107784	* lisp/replace.el (query-replace-regexp-eval): Doc fix.
107785
1077862017-05-19  Paul Eggert  <eggert@cs.ucla.edu>
107787
107788	Attempt to work around macOS vfork bug
107789
107790	Problem reported by YAMAMOTO Mitsuharu in:
107791	https://lists.gnu.org/r/emacs-devel/2017-05/msg00342.html
107792	This is related to the fix for Bug#26397.
107793	* src/callproc.c (call_process_cleanup, call_process) [!MSDOS]:
107794	Report internal error if wait_for_termination fails.
107795	* src/sysdep.c (get_child_status): Return -1 if waitpid is
107796	buggy, instead of aborting.
107797	(wait_for_termination): Return bool success value.
107798	All callers changed.
107799
1078002017-05-19  Eli Zaretskii  <eliz@gnu.org>
107801
107802	Adjust defcustom form for 'auto-hscroll-mode'
107803
107804	* lisp/cus-start.el (standard) <auto-hscroll-mode>: Adjust the
107805	defcustom form.  Suggested by Stephen Berman <stephen.berman@gmx.net>.
107806
1078072017-05-19  Paul Eggert  <eggert@cs.ucla.edu>
107808
107809	Fix DARWIN_OS_CASE_SENSITIVE_FIXME==2 false alarm
107810
107811	* src/fileio.c (file_name_case_insensitive_p):
107812	Don’t compile the (DARWIN_OS_CASE_SENSITIVE_FIXME == 2)
107813	code unless DARWIN_OS_CASE_SENSITIVE_FIXME is 2.
107814	Problem reported by Philipp Stephani in:
107815	https://lists.gnu.org/r/emacs-devel/2017-05/msg00495.html
107816
1078172017-05-19  Paul Eggert  <eggert@cs.ucla.edu>
107818
107819	Port --enable-gcc-warnings to clang 3.9.1
107820
107821	* configure.ac (WERROR_CFLAGS): Omit -Wdouble-promotion if clang.
107822	Problem reported by Philipp Stephani in:
107823	https://lists.gnu.org/r/emacs-devel/2017-05/msg00495.html
107824
1078252017-05-19  Paul Eggert  <eggert@cs.ucla.edu>
107826
107827	Clean up compiler warning in emacs-module.c
107828
107829	* src/emacs-module.c (MODULE_SETJMP_1): Use the local var
107830	instead of leaving it unused, to pacify picky compilers.
107831	(module_reset_handlerlist): Now takes a dummy pointer to a struct
107832	handler *, instead of a dummy pointer to an int.  All uses changed.
107833
1078342017-05-19  Philipp Stephani  <phst@google.com>
107835
107836	Clean up some compiler warnings
107837
107838	* src/sysdep.c (system_process_attributes) [DARWIN_OS]:
107839	Remove unused locals.
107840
1078412017-05-18  Eli Zaretskii  <eliz@gnu.org>
107842
107843	Support hscrolling only the current line
107844
107845	* src/xdisp.c (hscrolling_current_line_p): New function.
107846	(init_iterator): If auto-hscrolling just the current line, don't
107847	increment the iterator's first_visible_x and last_visible_x
107848	variables.
107849	(hscroll_window_tree): Recompute window's hscroll when moving
107850	vertically to another screen line.
107851	(redisplay_window): If we are hscrolling only the current line,
107852	disable the optimizations that rely on the current matrix being
107853	up-to-date.
107854	(display_line): Accept an additional argument CURSOR_VPOS, the
107855	vertical position of the current screen line which might need
107856	hscrolling; all callers changed.  Compute first_visible_x and
107857	last_visible_x specially when auto-hscrolling current line, by
107858	repeating the calculation that is done in init_iterator in other
107859	modes.
107860	(syms_of_xdisp) <auto-hscroll-mode>: No longer boolean, it can now
107861	accept a 3rd value 'current-line, to turn on the mode where
107862	only the current line is hscrolled.
107863
107864	* etc/NEWS: Mention the new auto-hscroll-mode value.
107865
1078662017-05-18  Eli Zaretskii  <eliz@gnu.org>
107867
107868	Fix last change in line-move-finish
107869
107870	* lisp/simple.el (line-move-finish): Fix last change.  This corrects a
107871	regression in C-n and C-p when lines are truncated, introduced by the
107872	change in 2017-05-10.
107873
1078742017-05-18  Simen Heggestøyl  <simenheg@gmail.com>
107875
107876	Expand docstring for CSS mode
107877
107878	* lisp/textmodes/css-mode.el (css-completion-at-point, css-mode):
107879	Expand docstrings.
107880
1078812017-05-18  Tino Calancha  <tino.calancha@gmail.com>
107882
107883	Use the expression angle units while simplifying it
107884
107885	Don't use the angle mode, use the angle units included
107886	in the expression instead (Bug#23889).
107887	* lisp/calc/calc-alg.el (calc-input-angle-units): New defun.
107888	(math-simplify): Use it.
107889	* lisp/calc/calc-forms.el (math-to-hms, math-from-hms):
107890	Don't use calc-angle-mode if math-simplifying-units is non-nil.
107891	* lisp/calc/calc-math.el (calcFunc-nroot, math-from-radians)
107892	(math-to-radians-2, math-from-radians-2): Don't convert angle
107893	to radians if math-simplifying-units is non-nil.
107894	* test/lisp/calc/calc-tests.el (test-calc-23889): Add test.
107895
1078962017-05-18  Tino Calancha  <tino.calancha@gmail.com>
107897
107898	Revert "Ignore angle mode while simplifying units"
107899
107900	This reverts commit 713e922243fb60d850f7b0ff83f3e2a3682f1832.
107901	This commit causes Bug#25652.
107902
1079032017-05-17  Paul Eggert  <eggert@cs.ucla.edu>
107904
107905	Avoid undefined behavior in struct sockaddr
107906
107907	Problem noted by Philipp Stephani in:
107908	https://lists.gnu.org/r/emacs-devel/2017-05/msg00391.html
107909	* src/conf_post.h (ATTRIBUTE_MAY_ALIAS, DECLARE_POINTER_ALIAS):
107910	New macros.
107911	* src/process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr)
107912	(connect_network_socket, network_interface_info)
107913	(server_accept_connection): Use it when aliasing non-char objects.
107914
1079152017-05-17  Stefan Monnier  <monnier@iro.umontreal.ca>
107916
107917	* lisp/vc/smerge-mode.el (smerge-refine-regions): Work in multi-bufs
107918
107919	Rename from smerge-refine-subst.  Allow the `beg's to be markers.
107920	Add autoload cookie.
107921	(smerge--refine-forward): Rename from smerge-refine-forward.
107922	(smerge--refine-chopup-region): Rename from smerge-refine-chopup-region.
107923	Assume that its `beg` arg is a marker.
107924	(smerge--refine-highlight-change): Rename from
107925	smerge-refine-highlight-change.  Remove `buf` arg.
107926	(smerge-refine-subst): Redefine as an obsolete alias.
107927
1079282017-05-17  Paul Eggert  <eggert@cs.ucla.edu>
107929
107930	Work around AddressSanitizer bug with vfork
107931
107932	Problem reported by Jim Meyering in:
107933	https://lists.gnu.org/r/emacs-devel/2017-05/msg00246.html
107934	* src/conf_post.h (vfork) [ADDRESS_SANITIZER]: Define to fork.
107935	Unfortunately with the AddressSanitizer in Fedora 25 x86-64, the
107936	vforked child messes up the parent’s shadow memory.  This is too
107937	bad, as we’d rather have AddressSanitizer catch memory-access bugs
107938	related to vfork.
107939
1079402017-05-17  Paul Eggert  <eggert@cs.ucla.edu>
107941
107942	Catch IPv4/IPv6 issues at compile time
107943
107944	* src/process.c (connect_network_socket): Use verify,
107945	not eassert, so that any problems are caught at compile-time.
107946	Avoid dodgy cast by using a local var of the correct type.
107947
1079482017-05-17  Paul Eggert  <eggert@cs.ucla.edu>
107949
107950	Pacify --enable-gcc-warnings --with-x-toolkit=no
107951
107952	* src/composite.c (autocmp_chars) [!HAVE_WINDOW_SYSTEM]:
107953	Avoid unused local.
107954
1079552017-05-17  Glenn Morris  <rgm@gnu.org>
107956
107957	* admin/update_autogen (commit): Pull before push.
107958
1079592017-05-17  Glenn Morris  <rgm@gnu.org>
107960
107961	autoload-rubric no longer provides a feature by default
107962
107963	* lisp/emacs-lisp/autoload.el (autoload-rubric):
107964	Stop providing a feature unless explicitly requested.
107965	(autoload-find-generated-file): Update autoload-rubric call.
107966
1079672017-05-17  Eli Zaretskii  <eliz@gnu.org>
107968
107969	Remove redundant code in connect_network_socket
107970
107971	* src/process.c (connect_network_socket) [HAVE_GETSOCKNAME]:
107972	Remove redundant type-casting and variables.  Don't call
107973	'getsockname' to find the port for AF_LOCAL sockets.
107974	[AF_INET6]: Add an assertion to verify that the ports in the IPv4
107975	and IPv6 structures are at the same offset and have the same size.
107976
1079772017-05-16  Paul Eggert  <eggert@cs.ucla.edu>
107978
107979	Fix minor timezone memory leak
107980
107981	* src/editfns.c (wall_clock_tz): Remove; unused.
107982
1079832017-05-16  Paul Eggert  <eggert@cs.ucla.edu>
107984
107985	Do not discard AddressSanitizer stderr
107986
107987	* src/emacs.c (close_output_streams) [ADDRESS_SANITIZER]:
107988	Do not close stderr.
107989
1079902017-05-16  Paul Eggert  <eggert@cs.ucla.edu>
107991
107992	Simplify procname code to avoid GCC bug
107993
107994	* src/process.c (server_accept_connection): Simplify and avoid
107995	multiple calls and struct literals in the last case of a switch.
107996	The old code ran afoul of GCC bug 80659, which caused an internal
107997	compiler error.  Problem reported by Jim Meyering in:
107998	https://lists.gnu.org/r/emacs-devel/2017-05/msg00182.html
107999	https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80659
108000
1080012017-05-16  Paul Eggert  <eggert@cs.ucla.edu>
108002
108003	Pacify GCC 7 with --enable-gcc-warnings
108004
108005	* src/regex.c (regex_compile): Swap labels, so that the
108006	FALLTHROUGH immediately precedes the case label.
108007
1080082017-05-16  Paul Eggert  <eggert@cs.ucla.edu>
108009
108010	Merge with gnulib, pacifying GCC 7
108011
108012	This incorporates:
108013	2017-05-16 manywarnings: update for GCC 7
108014	2017-05-15 sys_select: Avoid "was expanded before it was required"
108015	* configure.ac (nw): Suppress GCC 7’s new -Wduplicated-branches and
108016	-Wformat-overflow=2 options, due to too many false alarms.
108017	* doc/misc/texinfo.tex, lib/strftime.c, m4/manywarnings.m4:
108018	Copy from gnulib.
108019	* m4/gnulib-comp.m4: Regenerate.
108020	* src/coding.c (decode_coding_iso_2022):
108021	Fix bug uncovered by -Wimplicit-fallthrough.
108022	* src/conf_post.h (FALLTHROUGH): New macro.
108023	Use it to mark all switch cases that fall through.
108024	* src/editfns.c (styled_format): Use !, not ~, on bool.
108025	* src/gtkutil.c (xg_check_special_colors):
108026	When using sprintf, don’t trust Gtk to output colors in [0, 1] range.
108027	(xg_update_scrollbar_pos): Avoid use of possibly-uninitialized bool;
108028	this bug was actually caught by Clang.
108029	* src/search.c (boyer_moore):
108030	Tell GCC that CHAR_BASE, if nonzero, must be a non-ASCII character.
108031	* src/xterm.c (x_draw_glyphless_glyph_string_foreground):
108032	Tell GCC that glyph->u.glyphless.ch must be a character.
108033
1080342017-05-16  Michael Albinus  <michael.albinus@gmx.de>
108035
108036	Make autoloading Tramp more robust
108037
108038	* lisp/net/tramp.el (tramp-file-name-for-operation):
108039	Use `default-directory' where appropriate.
108040	(tramp-file-name-handler): Do not autoload.
108041	(tramp-autoload-file-name-handler): Reintroduce function.
108042	(tramp-register-autoload-file-name-handlers): Use it.
108043
1080442017-05-16  Michael Albinus  <michael.albinus@gmx.de>
108045
108046	Extend tramp-tests.el
108047
108048	* test/lisp/net/tramp-tests.el (tramp-change-syntax):
108049	Remove declaration, not needed anymore.
108050	(tramp-test05-expand-file-name-relative): New test.
108051	(tramp-test10-write-region): Extend test.
108052
1080532017-05-16  Michael Albinus  <michael.albinus@gmx.de>
108054
108055	* lisp/net/tramp.el: Avoid recursive load of Tramp.  (Bug#26943)
108056
1080572017-05-16  Noam Postavsky  <npostavs@gmail.com>
108058
108059	Make `indent-line-to' respect field boundaries (Bug#26891)
108060
108061	* lisp/indent.el (indent-line-to): Use `back-to-indentation' instead
108062	of `backward-to-indentation'.
108063
1080642017-05-16  Noam Postavsky  <npostavs@gmail.com>
108065
108066	Make sure indent-sexp stops at end of sexp (Bug#26878)
108067
108068	* lisp/emacs-lisp/lisp-mode.el (indent-sexp): Check endpos before
108069	indenting.
108070	* test/lisp/emacs-lisp/lisp-mode-tests.el (indent-sexp-stop): New
108071	test.
108072
1080732017-05-16  Glenn Morris  <rgm@gnu.org>
108074
108075	Stop some epg tests failing on rhel7 with gpg 2.0.22 (bug#23619)
108076
108077	* test/lisp/epg-tests.el (with-epg-tests):
108078	Also set GNUPGHOME in the environment of child processes.
108079	This avoids problems if gpg does not pass --homedir to spawned agent.
108080
1080812017-05-16  Glenn Morris  <rgm@gnu.org>
108082
108083	Add oldxmenu to system-configuration-features
108084
108085	* configure.ac (HAVE_OLDXMENU): New.
108086	(emacs_config_features): Add oldxmenu.
108087
1080882017-05-15  Ted Zlatanov  <tzz@lifelogs.com>
108089
108090	* .gitlab-ci.yml: Adjust disclaimer as per RMS.
108091
1080922017-05-15  Eli Zaretskii  <eliz@gnu.org>
108093
108094	Remove unneeded stuff from nt/inc/sys/time.h
108095
108096	* nt/inc/sys/time.h (_TIMEVAL_DEFINED, struct timevat, timerisset)
108097	(timercmp, timerclear): Don't define.  Instead, include the system
108098	header sys/time.h, and add only the interval timers stuff.  This
108099	avoids compiler warnings about 'gettimeofday's prototype, and also
108100	avoids redefinition of macros from system headers.
108101
1081022017-05-15  Paul Eggert  <eggert@cs.ucla.edu>
108103
108104	Fix address violation found by AddressSanitizer
108105
108106	* src/process.c (connect_network_socket):
108107	Use struct sockaddr_storage, not struct sockaddr_in, to store info
108108	about a socket address.  Problem reported by Philipp Stephani in:
108109	https://lists.gnu.org/r/emacs-devel/2017-05/msg00314.html
108110	This fix is based on a patch by Philipp in:
108111	https://lists.gnu.org/r/emacs-devel/2017-05/msg00357.html
108112
1081132017-05-14  Gemini Lasswell  <gazally@runbox.com>
108114
108115	Make edebug-step-in work on generic methods (Bug#22294)
108116
108117	* lisp/emacs-lisp/edebug.el (edebug-match-cl-generic-method-args):
108118	New function to implement the edebug-form-spec property of
108119	the symbol cl-generic-method-args.
108120	(edebug-instrument-function): If the function is a generic
108121	function, find and instrument all of its methods. Return a list
108122	instead of a single symbol.
108123	(edebug-instrument-callee): Now returns a list. Update docstring.
108124	(edebug-step-in): Handle the list returned by edebug-instrument-callee.
108125	* lisp/emacs-lisp/cl-generic.el (cl-defmethod): Use name and
108126	cl-generic-method-args in its Edebug spec.
108127	* lisp/emacs-lisp/eieio-compat.el (defmethod): Use name and
108128	cl-generic-method-args in its Edebug spec.
108129	* lisp/subr.el (method-files): New function.
108130	* test/lisp/subr-tests.el (subr-tests--method-files--finds-methods)
108131	(subr-tests--method-files--nonexistent-methods): New tests.
108132
1081332017-05-14  Paul Eggert  <eggert@cs.ucla.edu>
108134
108135	Merge from gnulib
108136
108137	This incorporates:
108138	2017-05-14 same-inode: Adapt for windows-stat-inodes
108139	2017-05-14 windows-stat-inodes: New module
108140	2017-05-14 stat-time: Adapt for windows-stat-timespec
108141	* lib/gnulib.mk.in: Regenerate.
108142	* lib/stat-time.h, lib/sys_types.in.h, m4/sys_types_h.m4:
108143	Copy from gnulib.
108144
1081452017-05-14  Eli Zaretskii  <eliz@gnu.org>
108146
108147	Remove gettimeofday from w32 sources
108148
108149	* lib-src/ntlib.c (gettimeofday):
108150	* nt/inc/sys/time.h (gettimeofday, struct timezone): Remove unused
108151	function 'gettimeofday' and all of its supporting code.
108152
1081532017-05-14  Eli Zaretskii  <eliz@gnu.org>
108154
108155	Fix the MS-Windows build
108156
108157	* nt/inc/sys/time.h (gettimeofday):
108158	* src/w32.c (gettimeofday): Adjust signature to match Gnulib.
108159
1081602017-05-14  Eli Zaretskii  <eliz@gnu.org>
108161
108162	More accurate documentation of the ':box' face attribute
108163
108164	* doc/lispref/display.texi (Face Attributes): Fix the description
108165	of negative width of the ':box' attribute.  (Bug#26920)
108166
1081672017-05-14  Paul Eggert  <eggert@cs.ucla.edu>
108168
108169	Merge from gnulib
108170
108171	This incorporates:
108172	2017-05-13 largefile: Simplify
108173	2017-05-13 largefile: Improve and document
108174	2017-05-13 truncate: New module
108175	2017-05-13 windows-stat-timespec: New module
108176	2017-05-13 windows-stat-override: New module
108177	2017-05-11 getopt-posix: port to mingw
108178	2017-05-11 gettimeofday: Increase precision on mingw
108179	2017-05-10 time: Fix missing initialization of HAVE_TIMEZONE_T
108180	2017-05-10 Implement a way to opt out from MSVC support
108181	2017-05-09 tzset: Expand comment about TZ problem on native Windows
108182	* build-aux/config.guess, lib/dup2.c, lib/fcntl.c, lib/fsync.c:
108183	* lib/getdtablesize.c, lib/getopt.c, lib/gettimeofday.c:
108184	* lib/mktime.c, lib/stat-time.h, lib/sys_stat.in.h, lib/unistd.in.h:
108185	* lib/utimens.c, m4/gettimeofday.m4, m4/largefile.m4:
108186	* m4/sys_stat_h.m4, m4/sys_time_h.m4, m4/time_h.m4, m4/time_rz.m4:
108187	* m4/unistd_h.m4: Copy from gnulib.
108188	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
108189
1081902017-05-14  Marcin Borkowski  <mbork@mbork.pl>
108191
108192	Merge branch 'fix/bug-21072'
108193
1081942017-05-14  Ted Zlatanov  <tzz@lifelogs.com>
108195
108196	* .gitlab-ci.yml: Add setup for GitLab CI builds.
108197
1081982017-05-13  Tak Kunihiro  <tkk@misasa.okayama-u.ac.jp>
108199
108200	New minor mode 'pixel-scroll-mode'
108201
108202	* lisp/pixel-scroll.el: New file.
108203
108204	* etc/NEWS: Mention pixel-scroll-mode.
108205
1082062017-05-13  Philipp  <phst@google.com>
108207
108208	Make `old-style-backquotes' variable internal
108209
108210	* src/lread.c (load_warn_old_style_backquotes, Fload, read1)
108211	(syms_of_lread): Rename `old-style-backquotes' to
108212	`lread--old-style-backquotes', and clarify that it's for internal
108213	use only.
108214	* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Rename
108215	variable.
108216	* test/src/lread-tests.el (lread-tests--old-style-backquotes): Add
108217	unit test.
108218	* test/lisp/emacs-lisp/bytecomp-tests.el
108219	(bytecomp-tests--old-style-backquotes): Add unit test.
108220
1082212017-05-13  Philipp Stephani  <phst@google.com>
108222
108223	Improve unescaped character literal warnings
108224
108225	* src/lread.c (load_warn_unescaped_character_literals)
108226	(syms_of_lread):
108227	lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Improve
108228	formatting of unescaped character literal warnings.
108229
108230	* test/src/lread-tests.el (lread-tests--unescaped-char-literals):
108231	test/lisp/emacs-lisp/bytecomp-tests.el
108232	(bytecomp-tests--unescaped-char-literals): Adapt unit tests.
108233
1082342017-05-12  Alan Mackenzie  <acm@muc.de>
108235
108236	Fontify C++ for loop variable as variable, even when followed by parentheses
108237
108238	In the following: "for (auto *Friend : Class->friends()) {", "Friend" was
108239	getting fontified as a function, due to insufficient checking of the tokens
108240	between it and "()".
108241
108242	* lisp/progmodes/cc-langs.el (c-:-op-cont-tokens, c-:-op-cont-regexp): New
108243	lang-consts/vars.
108244
108245	* lisp/progmodes/cc-engine.el (c-forward-declarator): After finding a putative
108246	declarator's identifier, check for a ":" token inside a for's parentheses, and
108247	abort the search for "(" if this is found.
108248
1082492017-05-12  Michael Albinus  <michael.albinus@gmx.de>
108250
108251	Make Tramp backward compatible
108252
108253	* lisp/net/tramp-cmds.el (tramp-change-syntax):
108254	Set tramp-autoload cookie.
108255
108256	* lisp/net/tramp-compat.el: Run `tramp-change-syntax' at
108257	startup, if necessary.
108258
108259	* lisp/net/tramp.el (tramp-syntax): Use `tramp-compat-user-error'.
108260	(tramp-register-autoload-file-name-handlers): Do not mark
108261	`operations' for `tramp-file-name-handler'.
108262	(tramp-register-file-name-handlers): Remove also
108263	`tramp-autoload-file-name-handler' for backward compatibility.
108264	(tramp-register-foreign-file-name-handler): Use `delete-dups'.
108265
108266	* test/lisp/net/tramp-tests.el (tramp-change-syntax): Declare.
108267
1082682017-05-12  Noam Postavsky  <npostavs@gmail.com>
108269
108270	Modify `beginning-of-defun-comments'
108271
108272	* lisp/emacs-lisp/lisp.el (beginning-of-defun-comments): Try not to stop
108273	in the middle of a multiline comment.
108274
1082752017-05-12  Noam Postavsky  <npostavs@gmail.com>
108276
108277	Fix elisp-tests-with-temp-buffer compilation
108278
108279	* test/lisp/emacs-lisp/lisp-tests.el (elisp-tests-with-temp-buffer):
108280	Don't refer to the =!NAME= as "markers" since they produce variables
108281	with just plain positions, not marker objects.  Explicitly specify
108282	that CONTENTS is evaluated at compile time.  Don't re-evaluate
108283	CONTENTS at runtime.  Fix debug specification.  Suppress warnings due
108284	to BODY not using =!NAME= variables.
108285	(elisp-test-point-position-regex): Rename from
108286	`elisp-test-point-marker-regex'.
108287	(mark-defun-test-buffer): Wrap in `eval-and-compile'.
108288
1082892017-05-12  Noam Postavsky  <npostavs@gmail.com>
108290
108291	* lisp/emacs-lisp/lisp.el (mark-defun): Simplify moving the point.
108292
1082932017-05-12  Marcin Borkowski  <mbork@mbork.pl>
108294
108295	Fix Bug#21072 and rework `mark-defun'
108296
108297	* test/lisp/progmodes/elisp-mode-tests.el (mark-defun-test-buffer):
108298	  New variable
108299	(mark-defun-no-arg-region-inactive)
108300	(mark-defun-no-arg-region-active)
108301	(mark-defun-arg-region-active)
108302	(mark-defun-pos-arg-region-inactive)
108303	(mark-defun-neg-arg-region-inactive, mark-defun-bob): Add tests for
108304	the new `mark-defun'.
108305
108306	* lisp/emacs-lisp/lisp.el (beginning-of-defun--in-emptyish-line-p):
108307	  New function.
108308	(beginning-of-defun-comments): New function.
108309	(mark-defun): Fix bug#21072, also rewrite large parts of `mark-defun'
108310	to accept a numerical prefix argument.
108311
1083122017-05-12  Alfred M. Szmidt  <ams@gnu.org>
108313
108314	* lisp/mail/rmail.el (rmail-ignored-headers): Add 3 headers to ignore.
108315
1083162017-05-12  Eli Zaretskii  <eliz@gnu.org>
108317
108318	Improve doc strings in net-utils.el
108319
108320	* lisp/net/net-utils.el (ifconfig, iwconfig, netstat, arp)
108321	(route, traceroute, nslookup, ftp, smbclient)
108322	(smbclient-list-shares, finger, whois)
108323	(network-connection-to-service, network-service-connection)
108324	(network-connection-reconnect): Improve doc strings.
108325
1083262017-05-12  Andrew Robbins  <contact@andrewrobbins.info>
108327
108328	Extend DNS lookup commands to allow specifying the name server
108329
108330	* lisp/net/net-utils.el (ffap-string-at-point): Removed due to
108331	'net-utils-machine-at-point' obviating this autoloaded
108332	function (Bug#25426).
108333	(dig-program-options): New customization variable.
108334	(nslookup-host, dns-lookup-host, run-dig): Can now specify
108335	optional name server argument interactively (by prefix arg) and
108336	non-interactively.
108337
108338	* etc/NEWS: Mention the extension of DNS lookup commands.
108339
1083402017-05-12  Glenn Morris  <rgm@gnu.org>
108341
108342	Don't hard-code loaddefs files in lisp/Makefile
108343
108344	* lisp/Makefile.in (loaddefs): New variable.
108345	(AUTOGENEL): Use $loaddefs, and include directory.
108346	(bootstrap-clean): Update for AUTOGENEL change.
108347
1083482017-05-11  Katsumi Yamaoka  <yamaoka@jpl.org>
108349
108350	Kill modified buffers silently when quitting (bug#26862)
108351
108352	* lisp/gnus/gnus-start.el (gnus-clear-system): Run do-auto-save to make
108353	sure that latest drafts are saved, and kill modified buffers silently.
108354
1083552017-05-10  Perry E. Metzger  <perry@piermont.com>
108356
108357	Implement 1-based column numbering in mode line
108358
108359	* src/xdisp.c (decode_mode_spec): Implement the %C construct.
108360
108361	* lisp/bindings.el (column-number-indicator-zero-based): New
108362	defcustom.
108363	(mode-line-position): Use %C when
108364	column-number-indicator-zero-based is nil.
108365
108366	* src/xdisp.c (syms_of_xdisp) <frame-title-format>:
108367	* src/buffer.c (syms_of_buffer) <mode-line-format>:
108368	* doc/lispref/modes.texi (%-Constructs):
108369	* doc/lispref/frames.texi (Frame Titles): Document the %C
108370	construct.
108371
108372	* doc/emacs/display.texi (Optional Mode Line): Document
108373	'column-number-indicator-zero-based'.
108374
108375	* etc/NEWS: Mention 'column-number-indicator-zero-based' and the
108376	%C construct.
108377
1083782017-05-10  Eli Zaretskii  <eliz@gnu.org>
108379
108380	Ensure cursor's foreground color is in sync with 'default' face
108381
108382	* src/w32term.c (x_set_cursor_gc): Don't reuse cursor GC if its
108383	foreground color is different from the background of the glyph
108384	string's face.  (Bug#26851)
108385
1083862017-05-10  Eli Zaretskii  <eliz@gnu.org>
108387
108388	Fix vertical cursor motion when columns are of unequal size
108389
108390	* lisp/simple.el (line-move-finish): In line-move-visual mode, use
108391	vertical-motion to move to the goal column, as the goal column
108392	should in that case be interpreted in units of frame's canonical
108393	character width.  (Bug#26852)
108394
1083952017-05-10  Glenn Morris  <rgm@gnu.org>
108396
108397	Fix finding test .el files
108398
108399	* test/Makefile.in (ELFILES): Exclude the data/ directory.
108400	* test/src/lread-tests.el (lread-test-bug26837): Revert previous.
108401
1084022017-05-10  Tino Calancha  <tino.calancha@gmail.com>
108403
108404	Tweak a recent test
108405
108406	This test fails in my local machine because the data files
108407	are compiled, and the test doesn't expect that.
108408	* test/src/lread-tests.el (lread-test-bug26837): Match a suffix
108409	ending with '.elc' when the data files are compiled.
108410
1084112017-05-10  Glenn Morris  <rgm@gnu.org>
108412
108413	Put license information in each generated uni-*.el
108414
108415	* admin/unidata/unidata-gen.el (unidata-gen-file):
108416	Get Copyright line from copyright.html.
108417	Put information in file header, not separate README.
108418	(unidata-gen-charprop): Mention the source location.
108419	* lisp/international/README: Remove file.
108420
1084212017-05-10  Noam Postavsky  <npostavs@gmail.com>
108422
108423	Fix lisp-indent-region and indent-sexp (Bug#26619)
108424
108425	The new lisp-indent-region introduced in 2017-04-22 "Add new
108426	`lisp-indent-region' that doesn't reparse the code." is broken because
108427	it doesn't save the calculated indent amounts for already seen sexp
108428	depths.  Fix this by unifying the indent-sexp and lisp-indent-region
108429	code.  Furthermore, only preserve position 2 of the running parse
108430	when the depth doesn't change.
108431	* lisp/emacs-lisp/lisp-mode.el (lisp-ppss): Use an OLDSTATE that
108432	corresponds with the start point when calling parse-partial-sexp.
108433	(lisp-indent-state): New struct.
108434	(lisp-indent-calc-next): New function, extracted from indent-sexp.
108435	(indent-sexp, lisp-indent-region): Use it.
108436	(lisp-indent-line): Take indentation, instead of parse state.
108437	* test/lisp/emacs-lisp/lisp-mode-tests.el
108438	(lisp-mode-tests--correctly-indented-sexp): New constant.
108439	(lisp-indent-region, lisp-indent-region-defun-with-docstring):
108440	(lisp-indent-region-open-paren, lisp-indent-region-in-sexp): New
108441	tests.
108442
1084432017-05-10  Dmitry Gutov  <dgutov@yandex.ru>
108444
108445	Simplify url-encode-url and add a test
108446
108447	* lisp/url/url-util.el (url-encode-url): Simplify.
108448	url-generic-parse-url copes with multibyte strings just fine
108449	(https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24117#185).
108450
108451	* test/lisp/url/url-parse-tests.el
108452	(url-generic-parse-url/multibyte-host-and-path): New test.
108453
1084542017-05-10  Glenn Morris  <rgm@gnu.org>
108455
108456	More informative error when required feature missing
108457
108458	* src/fns.c (Frequire): Include file name in missing feature error.
108459	* doc/lispref/loading.texi (Named Features): Don't quote actual error.
108460
1084612017-05-10  Glenn Morris  <rgm@gnu.org>
108462
108463	Put re-loaded file back at start of load-history (bug#26837)
108464
108465	* src/lread.c (readevalloop): Fix the "whole buffer" check to
108466	operate in the correct buffer.
108467	(Feval_buffer): Move point back to the start after checking
108468	for lexical binding.
108469	* test/src/lread-tests.el (lread-test-bug26837): New test.
108470	* test/data/somelib.el, test/data/somelib2.el: New test data files.
108471
1084722017-05-09  Eli Zaretskii  <eliz@gnu.org>
108473
108474	Improve documentation of 'gnutls-verify-error'
108475
108476	* lisp/net/gnutls.el (gnutls-verify-error): Improve and expand
108477	doc string.  (Bug#26845)
108478
1084792017-05-09  Glenn Morris  <rgm@gnu.org>
108480
108481	Don't duplicate autoload code in package.el
108482
108483	* lisp/emacs-lisp/autoload.el (autoload-rubric): Add a package option.
108484	* lisp/emacs-lisp/package.el (autoload-rubric): Declare.
108485	(package-autoload-ensure-default-file): Use autoload-rubric.
108486
1084872017-05-09  Michael Albinus  <michael.albinus@gmx.de>
108488
108489	* test/lisp/net/tramp-tests.el: Keep additional test.
108490
1084912017-05-09  Marcin Borkowski  <mbork@mbork.pl>
108492
108493	Add elisp-tests-with-temp-buffer, a new testing macro
108494
108495	* test/lisp/emacs-lisp/lisp-tests.el
108496	(elisp-test-point-marker-regex) New variable.
108497	(elisp-tests-with-temp-buffer): New macro to help test functions
108498	moving the point and/or mark.
108499
1085002017-05-09  Noam Postavsky  <npostavs@gmail.com>
108501
108502	Revert "Output number of characters added to file (Bug#354)"
108503
108504	The extra message text turned out to be quite annoying in practice,
108505	and is generally more trouble than it's worth.  Also revert several
108506	related changes.
108507
108508	Partially revert "Handle `write-region' messages in Tramp properly"
108509	Revert "New var write-region-verbose, default nil"
108510	Revert "* src/fileio.c (write_region): Don't say "1 characters".  (Bug#26796)"
108511	Revert "Minor tuneup of write-region change"
108512	Revert "Adjust write-region so file name is at the beginning again"
108513	Revert "Fix handling of non-integer START param to write-region"
108514	Revert "Output number of characters added to file (Bug#354)"
108515
108516	* doc/emacs/files.texi (Misc File Ops):
108517	* etc/NEWS:
108518	* lisp/epa-file.el (epa-file-write-region):
108519	* lisp/gnus/mm-util.el (mm-append-to-file):
108520	* lisp/jka-compr.el (jka-compr-write-region):
108521	* lisp/net/ange-ftp.el (ange-ftp-write-region):
108522	* lisp/net/tramp-adb.el (tramp-adb-handle-write-region):
108523	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
108524	* lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
108525	* lisp/net/tramp-smb.el (tramp-smb-handle-write-region):
108526	* lisp/net/tramp.el (tramp-handle-write-region-message):
108527	* src/fileio.c (write_region, syms_of_fileio):
108528	* test/lisp/net/tramp-tests.el (tramp-test10-write-region): Remove
108529	extra characters from file writing messages.
108530
1085312017-05-09  Noah Friedman  <friedman@splode.com>
108532
108533	(ybuffer-list): $alist must be ptr-unmasked at the end of the loop,
108534	because $ptr is modified by ygetptr and we use $ptr immediately at the
108535	beginning.
108536
1085372017-05-08  Ken Brown  <kbrown@cornell.edu>
108538
108539	Skip a test from filenotify-tests.el on Cygwin
108540
108541	* test/lisp/filenotify-tests.el (file-notify-test02-rm-watch):
108542	Skip the last part of the test on Cygwin; it fails due to timing
108543	issues.
108544	(file-notify--test-read-event):  Remove `sit-for' that was added
108545	for Cygwin.
108546
1085472017-05-08  Paul Eggert  <eggert@cs.ucla.edu>
108548
108549	Merge from gnulib
108550
108551	This incorporates:
108552	2017-05-08 intprops: don’t depend on ‘verify’
108553	2017-05-07 utimens: on native Windows, improve resolution if fd < 0
108554	2017-05-07 utimens: Improve error code on native Windows
108555	* lib/intprops.h, lib/utimens.c: Copy from gnulib.
108556
1085572017-05-08  Wilson Snyder  <wsnyder@wsnyder.org>
108558
108559	Fix various verilog-mode.el issues.
108560
108561	* lisp/progmodes/verilog-mode.el (verilog-read-decls): Fix SystemVerilog
108562	2012 import breaking AUTOINST.  Reported by Johannes Schaefer.
108563	(verilog-auto-wire-type, verilog-insert-definition): Fix AUTOWIRE using
108564	logic in top-level non-SystemVerilog module, bug1142.  Reported by Marcin K.
108565	(verilog-define-abbrev-table) (verilog-mode-abbrev-table): Don't expand
108566	abbrev inside comment/strings, bug1102. Reported by Slava Yuzhaninov.
108567	(verilog-auto): Fix AUTORESET widths pulling from AUTOREGINPUT,
108568	msg2143. Reported by Galen Seitz.
108569	(verilog-modify-compile-command): Fix expansion of __FLAGS__ when
108570	compile-command is globally set, bug1119.  Reported by Galen Seitz.
108571
1085722017-05-08  Michael Albinus  <michael.albinus@gmx.de>
108573
108574	Handle `write-region' messages in Tramp properly
108575
108576	* lisp/net/tramp.el (tramp-handle-write-region-message): New defsubst.
108577	* lisp/net/tramp-adb.el (tramp-adb-handle-write-region):
108578	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
108579	* lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
108580	* lisp/net/tramp-smb.el (tramp-smb-handle-write-region): Use it.
108581
108582	* lisp/net/tramp.el (tramp-password-prompt-regexp)
108583	(tramp-completion-mode-p):
108584	* lisp/net/tramp-cmds.el (tramp-reporter-dump-variable)
108585	(tramp-append-tramp-buffers):
108586	* lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
108587	Use `bound-and-true-p'.
108588
108589	* lisp/net/tramp-compat.el (tramp-compat-delete-file):
108590	Don't check for `boundp' anymore.
108591
108592	* test/lisp/net/tramp-tests.el (ert-x): Require it.
108593	(tramp--test-messages): New defvar.
108594	(tramp-test10-write-region): Extend test.
108595
1085962017-05-08  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
108597
108598	Fix glyph string generation for multi-font compositions (Bug#26742)
108599
108600	* src/xdisp.c (glyph_string_containing_background_width): New function.
108601	(draw_glyphs): Use it to get correct background width.
108602	(compute_overhangs_and_x): Don't change x in the middle of composite
108603	characters.
108604
1086052017-05-07  Philipp Stephani  <phst@google.com>
108606
108607	Fix all unescaped character literals
108608
1086092017-05-07  Alan Mackenzie  <acm@muc.de>
108610
108611	CC Mode internal cache: Handle a cache pos being inside a two-char construct.
108612
108613	Cache c-state-semi-nonlit-pos-cache was failing when a cache position was,
108614	e.g., between the two characters of an opening comment "/*", and additionally
108615	there were an odd number of quote marks (apostrophes) in the comment.  This
108616	happened in .../src/xdisp.c in the Emacs master branch around 2017-05-02 at
108617	buffer position 615001.
108618
108619	* lisp/progmodes/cc-defs.el (c-emacs-features): Repurpose symbol
108620	pps-extended-state to mean that there are at least 11 elements in the parser
108621	state.
108622
108623	* lisp/progmodes/cc-engine.el (c-cache-to-parse-ps-state)
108624	(c-parse-ps-state-to-cache): Rewrite these to use enhanced cache element list
108625	types which indicate potentially being inside two-char constructs.
108626	(c-parse-ps-state-below): Rewrite to use the new versions of the above two
108627	functions.
108628
1086292017-05-07  Glenn Morris  <rgm@gnu.org>
108630
108631	Silence an mh-compat compiler warning
108632
108633	* lisp/mh-e/mh-compat.el (mh-url-unreserved-chars): Always define.
108634
1086352017-05-07  Glenn Morris  <rgm@gnu.org>
108636
108637	Evaluate mh-require when compiling
108638
108639	* lisp/mh-e/mh-alias.el, lisp/mh-e/mh-folder.el:
108640	* lisp/mh-e/mh-gnus.el, lisp/mh-e/mh-search.el:
108641	Evaluate mh-require when compiling, as require is automatically.
108642	* lisp/mh-e/mh-gnus.el: No longer disable byte-compilation.
108643
1086442017-05-07  Glenn Morris  <rgm@gnu.org>
108645
108646	Remove obsolete method of changing byte-compile-dest-file
108647
108648	* lisp/emacs-lisp/bytecomp.el (byte-compile-dest-file):
108649	Define unconditionally.
108650
1086512017-05-07  Paul Eggert  <eggert@cs.ucla.edu>
108652
108653	New var write-region-verbose, default nil
108654
108655	By popular demand, write-region char counts are now off by default
108656	(Bug#26796).
108657	* src/fileio.c (write-region-verbose): New Lisp var.
108658	(write_region): Output char count only if the var is non-nil.
108659	* doc/emacs/files.texi (Misc File Ops), etc/NEWS: Document this.
108660
1086612017-05-07  Glenn Morris  <rgm@gnu.org>
108662
108663	Write autoloads file atomically
108664
108665	* lisp/emacs-lisp/autoload.el (autoload--save-buffer):
108666	New function, to save buffer atomically.
108667	(autoload-save-buffers, update-directory-autoloads):
108668	Use autoload--save-buffer.
108669	* lisp/Makefile.in ($(lisp)/loaddefs.el):
108670	No longer write to a temp file by hand.
108671
1086722017-05-07  Glenn Morris  <rgm@gnu.org>
108673
108674	Write autoloads file once only
108675
108676	* lisp/emacs-lisp/autoload.el (autoload-find-generated-file):
108677	Simplify.  Don't bother about ensuring the output file exists.
108678	(autoload-generated-file): Add doc.
108679	(autoload-ensure-writable): Update doc.
108680	(autoload-ensure-file-writeable): Handle non-existing file.
108681	(autoload-ensure-default-file): Remove function.
108682
1086832017-05-07  Paul Eggert  <eggert@cs.ucla.edu>
108684
108685	Port .gdbinit to GDB 7.11.1 + Python 2.7.12
108686
108687	* src/.gdbinit (Lisp_Object_Printer.to_string):
108688	Explicitly convert integer val to 'int', so that
108689	older GDBs do not complain about the conversion.
108690	* src/lisp.h (Lisp_Object) [CHECK_LISP_OBJECT_TYPE]:
108691	Give the struct a tag, so that older GDB pretty-printers have a
108692	tag to hang their hat on.
108693
1086942017-05-06  Paul Eggert  <eggert@cs.ucla.edu>
108695
108696	Pretty-print const Lisp_Objects in .gdbinit
108697
108698	* src/.gdbinit (Emacs_Pretty_Printers.__call__):
108699	Compare unqualified type to Lisp_Object, to do the right thing
108700	when the expression has type ‘Lisp_Object const’.
108701	Problem reported by Eli Zaretskii in:
108702	https://lists.gnu.org/r/emacs-devel/2017-05/msg00138.html
108703
1087042017-05-06  Paul Eggert  <eggert@cs.ucla.edu>
108705
108706	Pacify GCC setjmp/longjmp warning
108707
108708	* src/eval.c (internal_lisp_condition_case): Do not modify local
108709	var VAR, to pacify GCC’s setjmp/longjmp warning which in some
108710	cases mistakenly diagnoses VAR possibly being modified between a
108711	setjmp and a longjmp.
108712
1087132017-05-06  Philipp  <phst@google.com>
108714
108715	Fix bootstrap build of files.el
108716
108717	* lisp/files.el (file-name-non-special): Don't use cl-letf.
108718
1087192017-05-06  Eli Zaretskii  <eliz@gnu.org>
108720
108721	Fix last change for MS-Windows
108722
108723	* test/src/emacs-module-tests.el (module-function-object): Port to
108724	MS-Windows.
108725
1087262017-05-06  Philipp Stephani  <phst@google.com>
108727
108728	Introduce new misc type for module function
108729
108730	This resolves a couple of FIXMEs in emacs-module.c.
108731
108732	* src/lisp.h (MODULE_FUNCTIONP, XMODULE_FUNCTION): New functions.
108733
108734	* src/alloc.c (make_module_function): New function.
108735	(mark_object): GC support.
108736
108737	* src/data.c (Ftype_of, syms_of_data): Handle module function type.
108738
108739	* src/print.c (print_object): Print support for new type.
108740
108741	* src/emacs-module.c (module_make_function, Finternal_module_call):
108742	Use new module function type, remove FIXMEs.
108743	(module_format_fun_env): Adapt and give it external linkage.
108744
108745	* test/src/emacs-module-tests.el (module-function-object): Add unit
108746	test.
108747
1087482017-05-06  Philipp Stephani  <phst@google.com>
108749
108750	Fix quoted files for 'verify-visited-file-modtime'
108751
108752	Fixes Bug#25951.
108753
108754	* lisp/files.el (file-name-non-special): Set the file name for the
108755	correct buffer.
108756
108757	* test/lisp/files-tests.el (files-tests--file-name-non-special--buffers):
108758	Add unit test.
108759	(files-tests--with-advice, files-tests--with-temp-file): New helper
108760	macros.
108761
1087622017-05-06  Eli Zaretskii  <eliz@gnu.org>
108763
108764	* src/fileio.c (write_region): Don't say "1 characters".  (Bug#26796)
108765
1087662017-05-06  Eli Zaretskii  <eliz@gnu.org>
108767
108768	Turn on GC_CHECK_MARKED_OBJECTS by default under ENABLE_CHECKING
108769
108770	* src/alloc.c (GC_CHECK_MARKED_OBJECTS): Define to 1 by default of
108771	ENABLE_CHECKING is defined.
108772	(mark_object): Test for GC_CHECK_MARKED_OBJECTS being non-zero,
108773	instead of being defined.
108774
1087752017-05-06  Tom Tromey  <tom@tromey.com>
108776
108777	Fix erc-join with channel password
108778
108779	Bug#25349
108780	* lisp/erc/erc-join.el (erc-autojoin-after-ident): Switch order of
108781	server names.
108782	(erc-autojoin-channels, erc-autojoin-add, erc-autojoin-remove):
108783	Likewise.
108784	(erc-server-join-channel): Move to erc.el.
108785	* lisp/erc/erc.el (erc-server-join-channel): Move from erc-join.el.
108786	(erc-cmd-JOIN): Use erc-server-join-channel.
108787
1087882017-05-06  Tino Calancha  <tino.calancha@gmail.com>
108789
108790	Ensure the created temp file in a test is new
108791
108792	* test/lisp/buff-menu-tests.el (buff-menu-24962): Use `make-temp-file'
108793	to create the temp file.
108794
1087952017-05-06  Glenn Morris  <rgm@gnu.org>
108796
108797	Decruftify dns-mode.el a little bit
108798
108799	* lisp/textmodes/dns-mode.el (dns-mode-control-entities):
108800	New constant.
108801	(dns-mode-control-entity, dns-mode-bad-control-entity)
108802	(dns-mode-type, dns-mode-class): New faces.
108803	(dns-mode-control-entity-face, dns-mode-bad-control-entity-face)
108804	(dns-mode-type-face, dns-mode-class): Make these variables use the
108805	new faces, and mark as obsolete.
108806	(dns-mode-font-lock-keywords): Use dns-mode-control-entities.
108807
1088082017-05-06  Paul Eggert  <eggert@cs.ucla.edu>
108809
108810	Pretty-print Lisp_Object values in GDB
108811
108812	* src/.gdbinit: Add a pretty-printer for Lisp_Object values.  Now,
108813	GDB displays them as "XIL(0xXXX)" rather than displaying them
108814	as "..." when CHECK_LISP_OBJECT_TYPE is in effect and as "DDDDD"
108815	otherwise.
108816
1088172017-05-05  Peder O. Klingenberg  <peder@klingenberg.no>
108818
108819	Tweak dns-mode font-lock
108820
108821	* lisp/textmodes/dns-mode.el (dns-mode-font-lock-keywords):
108822	Highlight $TTL as a control entity.  (Bug#26780)
108823
1088242017-05-05  Glenn Morris  <rgm@gnu.org>
108825
108826	Fontify the doc-string in some CL forms as such
108827
108828	* lisp/emacs-lisp/lisp-mode.el (defconstant, defparameter):
108829	Add the doc-string-elt property.  (Bug#26778)
108830
1088312017-05-05  Glenn Morris  <rgm@gnu.org>
108832
108833	* lisp/emacs-lisp/cl-lib.el (cl-mapcar): Remove recent autoload cookie.
108834
1088352017-05-05  Dmitry Gutov  <dgutov@yandex.ru>
108836
108837	cl-defmethod: Make the edebug spec more technically correct
108838
108839	* lisp/emacs-lisp/cl-generic.el (cl-defmethod): Denote the
108840	edebug spec part for qualifiers as [&rest atom], per
108841	https://lists.gnu.org/r/emacs-devel/2017-05/msg00053.html.
108842
1088432017-05-05  Mike Kupfer  <mkupfer@alum.berkeley.edu>
108844
108845	Fix MH-E not to load cl at runtime (Bug#25552)
108846
108847	* lisp/mh-e/mh-acros.el (defun-mh): Check at runtime, not
108848	compile time, whether the target is bound.
108849	* lisp/mh-e/mh-compat.el: Enable compilation.  Pull in
108850	mh-acros at compile time.
108851	Authored-by: Glenn Morris <rgm@gnu.org>, Noam Postavsky
108852	<npostavs@users.sourceforge.net>
108853
1088542017-05-04  Jean-Christophe Helary  <jean.christophe.helary@gmail.com>
108855
108856	Multiline support in NS "Open Selected File" service.
108857
108858	* lisp/term/ns-win.el (ns-open-file-service): new function. Wraps the
108859	original call in a (split-string) to create as many calls as there
108860	are lines.
108861	(ns-spi-service-call): Call `ns-open-file-service' instead of
108862	`dnd-open-file'.
108863
1088642017-05-04  Göktuğ Kayaalp  <self@gkayaalp.com>
108865
108866	Require cl-lib at runtime in vc-hg
108867
108868	* lisp/vc/vc-hg.el: Require cl-lib at runtime as well (bug#26609).
108869
1088702017-05-04  Tino Calancha  <tino.calancha@gmail.com>
108871
108872	Inherit incompatible/obsolete package faces from error
108873
108874	Don't use the same face for installed packages as for incompatible
108875	or obsolete ones.
108876	* lisp/emacs-lisp/package.el (package-status-incompat): Inherit from error.
108877
1088782017-05-04  Michael Albinus  <michael.albinus@gmx.de>
108879
108880	Set process property `adjust-window-size-function' to `ignore' in Tramp
108881
108882	* lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
108883	(tramp-adb-maybe-open-connection):
108884	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
108885	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
108886	(tramp-maybe-open-connection):
108887	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
108888	(tramp-smb-handle-file-acl, tramp-smb-handle-set-file-acl)
108889	(tramp-smb-maybe-open-connection): Set process property
108890	`adjust-window-size-function' to `ignore'.
108891
1088922017-05-04  Nicolas Petton  <nicolas@petton.fr>
108893
108894	* lisp/emacs-lisp/seq.el: Bump seq version.
108895
1088962017-05-04  Damien Cassou  <damien@cassou.me>
108897
108898	Add seq-set-equal-p to test for set equality
108899
108900	* lisp/emacs-lisp/seq.el (seq-set-equal-p): Add function to compare
108901	  two lists as if they were sets.
108902
108903	* test/lisp/emacs-lisp/seq-tests.el (test-seq-set-equal-p): Add test
108904	  for seq-set-equal-p.
108905
1089062017-05-04  Paul Eggert  <eggert@cs.ucla.edu>
108907
108908	Spelling fixes
108909
108910	* lisp/gnus/nndiary.el (nndiary-last-occurrence):
108911	Rename from nndiary-last-occurence.
108912	(nndiary-next-occurrence):
108913	Rename from nndiary-next-occurence.  All uses changed.
108914
1089152017-05-04  Paul Eggert  <eggert@cs.ucla.edu>
108916
108917	Merge from pkg-config
108918
108919	* m4/pkg.m4: Copy from pkg-config 0.29.1.
108920
1089212017-05-04  Tom Tromey  <tom@tromey.com>
108922
108923	Add color highlighting to css-mode
108924
108925	Bug#25525
108926	* lisp/textmodes/css-mode.el (css--color-map): New constant.
108927	(css-value-class-alist): Use css--color-map.
108928	(css--number-regexp, css--percent-regexp)
108929	(css--number-or-percent-regexp, css--angle-regexp): New constants.
108930	(css--color-skip-blanks, css--rgb-color, css--hsl-color): New
108931	functions.
108932	(css--colors-regexp): New constant.
108933	(css--hex-color, css--named-color, css--compute-color)
108934	(css--contrasty-color, css--fontify-colors)
108935	(css--fontify-region): New functions.
108936	(css-mode): Set font-lock-fontify-region-function.
108937	(css-mode-syntax-table): Set syntax on more characters.
108938	(css-fontify-colors): New defcustom.
108939	(scss-mode-syntax-table): Define syntax for ?$ and ?%.
108940	* test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
108941	Update.
108942	(css-test-rgb-parser, css-test-hsl-parser)
108943	(css-test-named-color): New tests.
108944	* etc/NEWS: Add entry.
108945
1089462017-05-03  Michael Albinus  <michael.albinus@gmx.de>
108947
108948	Fix Bug#26763
108949
108950	* lisp/files.el (delete-directory): Call file name handler
108951	with `trash' argument.
108952
108953	* lisp/net/ange-ftp.el (ange-ftp-delete-directory):
108954	* lisp/net/tramp-sh.el (tramp-sh-handle-delete-directory):
108955	Add TRASH arg.  Implement it.  (Bug#26763)
108956	(tramp-get-remote-trash): Check for `delete-by-moving-to-trash'.
108957
108958	* lisp/net/tramp-adb.el (tramp-adb-handle-delete-directory):
108959	* lisp/net/tramp-smb.el (tramp-smb-handle-delete-directory):
108960	Add _TRASH arg.
108961
1089622017-05-03  Paul Eggert  <eggert@cs.ucla.edu>
108963
108964	Use ptrdiff_t, not int, for stack sizes
108965
108966	* src/thread.c (invoke_thread_function):
108967	* src/xterm.c (x_cr_export_frames):
108968	Don’t assume SPECPDL_INDEX fits in ‘int’.
108969
1089702017-05-03  Paul Eggert  <eggert@cs.ucla.edu>
108971
108972	Check list object type if --enable-gcc-warnings
108973
108974	* configure.ac (--enable-check-lisp-object-type):
108975	Default to "yes" if --enable-gcc-warnings is not "no".
108976	* etc/NEWS: Mention this.
108977	* src/eval.c (internal_lisp_condition_case): Fix some glitches
108978	with 'volatile' uncovered by the above: in particular, 'clauses'
108979	should be a pointer to volatile storage on the stack, and need not
108980	be volatile itself.  Use an int, not ptrdiff_t, to count clauses.
108981	Don’t bother gathering binding count if VAR is nil.  Use
108982	more-specific local names to try to clarify what’s going on.
108983
1089842017-05-02  Glenn Morris  <rgm@gnu.org>
108985
108986	Tweak auth-source-pass.el to avoid run-time subr-x
108987
108988	* lisp/auth-source-pass.el (auth-source-pass--parse-data):
108989	Avoid needing subr-x at run-time.
108990
1089912017-05-02  Charles A. Roelli  <charles@aurox.ch>
108992
108993	Constrain non-child frames to screen area in OS X
108994
108995	* src/nsterm.m (constrainFrameRect:toScreen:): Constrain non-child
108996	frames in OS X, if they would otherwise go offscreen.
108997
108998	(Bug#25818)
108999
1090002017-05-02  Michael Albinus  <michael.albinus@gmx.de>
109001
109002	Fix error in completion for separate Tramp syntax
109003
109004	* lisp/net/tramp.el (tramp-completion-file-name-regexp-separate):
109005	Tweak regexp.
109006
109007	* test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
109008	Run method and host name completion for all syntaxes.
109009
1090102017-05-02  Eli Zaretskii  <eliz@gnu.org>
109011
109012	Avoid compilation warnings
109013
109014	* src/w32fns.c (Fx_file_dialog, w32_parse_and_hook_hot_key):
109015	* src/w32term.c (x_draw_glyph_string):
109016	* src/w32fns.c (compute_tip_xy):
109017	* src/w32font.c (w32font_text_extents):
109018	* src/w32menu.c (set_frame_menubar):
109019	* src/search.c (Freplace_match): Avoid compiler warnings in
109020	optimized builds.
109021
1090222017-05-02  Paul Eggert  <eggert@cs.ucla.edu>
109023
109024	Merge from gnulib
109025
109026	This incorporates:
109027	2017-05-02 utimens: port to Emacs + MS-Windows
109028	* lib/utimens.c: Copy from gnulib.
109029
1090302017-05-02  Gemini Lasswell  <gazally@runbox.com>
109031
109032	Fix Edebug specs for 'cl-defmethod' and 'defmethod'
109033
109034	* lisp/emacs-lisp/cl-generic.el (cl-defmethod): Change Edebug spec
109035	to make Edebug generate a new symbol for each method (Bug#24753) and
109036	to support a string following :extra (Bug#23995).
109037	* lisp/emacs-lisp/eieio-compat.el (defmethod): Change Edebug spec to
109038	make Edebug generate a new symbol for each method (Bug#24753).
109039
1090402017-05-02  Eli Zaretskii  <eliz@gnu.org>
109041
109042	Temporary fix for the MS_Windows build
109043
109044	* nt/inc/ms-w32.h (WIN32_LEAN_AND_MEAN): Define to an empty value,
109045	to be consistent with Gnulib's utimens.c.  This is because utimens.c
109046	unconditionally defines WIN32_LEAN_AND_MEAN to an empty value, so the
109047	previous definition here conflicted with that.
109048
1090492017-05-02  Paul Eggert  <eggert@cs.ucla.edu>
109050
109051	Port format-time-string to MS-Windows better
109052
109053	* test/src/editfns-tests.el (format-time-string-with-zone):
109054	Port test cases to MS-Windows.
109055
1090562017-05-02  Paul Eggert  <eggert@cs.ucla.edu>
109057
109058	Merge from gnulib
109059
109060	This incorporates:
109061	2017-05-01 New module 'localtime-buffer'
109062	2017-04-30 utimens: Add support for native Windows
109063	* admin/merge-gnulib (AVOIDED_MODULES): Add tzset.
109064	* configure.ac (tzset): No need for Emacs itself to check now.
109065	* lib/gettimeofday.c, lib/time.in.h, lib/time_rz.c, lib/utimens.c:
109066	* m4/gettimeofday.m4, m4/time_h.m4, m4/time_rz.m4: Copy from gnulib.
109067	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
109068	* lib/localtime-buffer.c, lib/localtime-buffer.h:
109069	* m4/localtime-buffer.m4: New files, copied from gnulib.
109070	* src/editfns.c (init_editfns): Assume tzset is callable.
109071
1090722017-05-01  Dmitry Gutov  <dgutov@yandex.ru>
109073
109074	Speed up project-find-regexp for simple regexps
109075
109076	* lisp/progmodes/xref.el (xref--regexp-syntax-dependent-p):
109077	New function.
109078	(xref--collect-matches): Use it.  Don't try to enable the
109079	appropriate major mode and file-local variables if the regexp
109080	does not depend on the buffer's syntax (bug#26710).
109081	(xref--collect-matches-1): Don't syntax-propertize in that
109082	case either.
109083
1090842017-05-01  Philipp Stephani  <phst@google.com>
109085
109086	Warn about missing backslashes during load
109087
109088	* src/lread.c (load_warn_unescaped_character_literals, Fload, read1)
109089	(syms_of_lread): Warn if unescaped character literals are
109090	found (Bug#20152).
109091	* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Check for
109092	unescaped character literals during byte compilation.
109093	* test/src/lread-tests.el (lread-tests--unescaped-char-literals): New
109094	unit test.
109095	(lread-tests--with-temp-file, lread-tests--last-message): Helper
109096	functions for unit test.
109097	* test/lisp/emacs-lisp/bytecomp-tests.el
109098	(bytecomp-tests--unescaped-char-literals): New unit test.
109099	* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--with-temp-file):
109100	Helper macro for unit test.
109101
1091022017-05-01  Ken Brown  <kbrown@cornell.edu>
109103
109104	* configure.ac: Suggest Mailutils on Cygwin.
109105
1091062017-05-01  Paul Eggert  <eggert@cs.ucla.edu>
109107
109108	Don’t stress-test time zones near the Epoch
109109
109110	* test/src/editfns-tests.el (format-time-string-with-zone)
109111	(format-time-string-with-outlandish-zone): Don’t format
109112	timestamps near the Epoch, as this runs into bugs on MS-Windows,
109113	and we don’t want to worry about those bugs.
109114
1091152017-05-01  Glenn Morris  <rgm@gnu.org>
109116
109117	Tweak vc-tests.el for bzr
109118
109119	* test/lisp/vc/vc-tests.el (vc-test--working-revision):
109120	Handle test environments where HOME does not exist.
109121
1091222017-05-01  Dmitry Gutov  <dgutov@yandex.ru>
109123
109124	vc-git-state: Return `ignored' as appropriate with newer Git
109125
109126	* lisp/vc/vc-git.el
109127	(vc-git--program-version): New variable.
109128	(vc-git--program-version): New function.
109129	(vc-git-state): Use it to choose whether to add '--ignored' (bug#19343).
109130
1091312017-05-01  Dmitry Gutov  <dgutov@yandex.ru>
109132
109133	vc-git-state: Bring back CentOS 6 compatibility
109134
109135	* lisp/vc/vc-git.el (vc-git-state):
109136	Bring back CentOS 6 compatibility (bug#19343).
109137
1091382017-05-01  Martin Rudalics  <rudalics@gmx.at>
109139
109140	Rewrite w32fns.c's `x_set_menu_bar_lines'
109141
109142	* src/w32fns.c (x_set_menu_bar_lines): Redraw frame immediately
109143	regardless of whether menu bar is added or removed.  Clear
109144	under internal border iff a W32 window exists.  Store either 0
109145	or 1 as new parameter value.
109146	(x_change_tool_bar_height): Use FRAME_W32_WINDOW instead of
109147	FRAME_X_WINDOW.
109148
1091492017-05-01  Michael Albinus  <michael.albinus@gmx.de>
109150
109151	Fix filenotify-tests.el for cygwin
109152
109153	* test/lisp/filenotify-tests.el (file-notify--test-read-event):
109154	Add an additional `sit-for'.
109155	(file-notify-test02-rm-watch): Add an additional
109156	`file-notify--test-read-event' call.
109157
1091582017-05-01  Jonathan Ganc  <jonganc@gmail.com>
109159
109160	Speed up vc-git-status and make it more precise
109161
109162	* lisp/vc/vc-git.el (vc-git-state)
109163	(vc-git--git-status-to-vc-state): Update 'vc-git-state' to use
109164	'git status', so that 'vc-git-state' can now return 'ignored',
109165	'conflict', or 'unregistered' when appropriate.  Discussed in
109166	bug#26066.  Fixes bug#19343.
109167
1091682017-05-01  Dmitry Gutov  <dgutov@yandex.ru>
109169
109170	Fix Git revision navigation in currently removed directories
109171
109172	* lisp/vc/vc-git.el (vc-git-next-revision): Use the repo root as
109173	default-directory because FILE's parent directory might not exist
109174	anymore (bug#26345).
109175
1091762017-04-30  Paul Eggert  <eggert@cs.ucla.edu>
109177
109178	Merge from gnulib
109179
109180	This incorporates:
109181	2017-04-30 strftime-fixes: New module
109182	2017-04-30 mktime: Work around TZ problem on native Windows
109183	2017-04-30 ctime, localtime: New modules
109184	2017-04-30 gettimeofday: Provide higher resolution on native Windows
109185	2017-04-29 utime-h: Modernize handling of 'struct utimbuf'
109186	2017-04-29 Make use of module 'utime-h'
109187	2017-04-30 Fix a few typos
109188	* admin/merge-gnulib (AVOIDED_MODULES): Avoid utime-h, too.
109189	* lib/gettimeofday.c, lib/mktime.c, lib/time.in.h, lib/utimens.c:
109190	* m4/gettimeofday.m4, m4/include_next.m4, m4/mktime.m4:
109191	* m4/strftime.m4, m4/time_h.m4, m4/timegm.m4, m4/utimens.m4:
109192	Copy from gnulib.
109193	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
109194
1091952017-04-30  Eli Zaretskii  <eliz@gnu.org>
109196
109197	Don't lose key bindings on mis-spelled text in flyspell-mode
109198
109199	* lisp/textmodes/flyspell.el (flyspell-mouse-map): Bind mouse-2
109200	explicitly.
109201	(make-flyspell-overlay): If the mis-spelled text already has a
109202	'keymap' property, make that keymap the parent of
109203	flyspell-mouse-map, so as not to lose the parent's bindings.
109204	(Bug#26672)
109205
1092062017-04-30  Martin Rudalics  <rudalics@gmx.at>
109207
109208	Fix `delete-frame' behavior including Bug#26682
109209
109210	* src/frame.c (other_frames): Accept two arguments now.  Don't
109211	care about minibuffer window.  Don't care about visibility when
109212	called from delete_frame with FORCE true (Bug#26682).
109213	(delete_frame, Fmake_frame_invisible): Adjust other_frames
109214	calls.
109215	* src/w32term.c (w32_read_socket): Don't add a move frame event
109216	for an invisible frame.
109217	* lisp/frame.el (handle-delete-frame): Don't kill Emacs when
109218	attempting to delete a surrogate minibuffer frame.
109219
1092202017-04-30  Paul Eggert  <eggert@cs.ucla.edu>
109221
109222	Merge from gnulib
109223
109224	This avoids incorporating the following, which I suspect are
109225	more trouble for Emacs than they’re worth:
109226	2017-04-29 stat, fstat: fix time_t etc. on native Windows platforms
109227	* admin/merge-gnulib (AVOIDED_MODULES): Avoid stat, too.
109228	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
109229	* lib/pathmax.h, lib/stat.c, m4/pathmax.m4, m4/stat.m4: Remove.
109230
1092312017-04-30  Paul Eggert  <eggert@cs.ucla.edu>
109232
109233	Fix buffer overflow in make-docfile
109234
109235	* lib-src/make-docfile.c (scan_c_stream): Check for buffer
109236	overflow when reading an identifier.  Use a static buffer for NAME
109237	rather than a small dynamically-allocated buffer.
109238
1092392017-04-30  Paul Eggert  <eggert@cs.ucla.edu>
109240
109241	Merge from gnulib
109242
109243	This incorporates:
109244	2017-04-29 getopt: port to Solaris 10 with circa-1997 glibc getopt.h
109245	* lib/getopt-pfx-ext.h: Copy from gnulib.
109246	* lib/gnulib.mk.in: Regenerate.
109247
1092482017-04-30  Tino Calancha  <tino.calancha@gmail.com>
109249
109250	Fix dependency error during bootstrap
109251
109252	* lisp/files.el: Require pcase and easy-mmode at compile time.
109253
1092542017-04-30  Mats Lidell  <mats.lidell@cag.se>
109255
109256	* etc/tutorials/TUTORIAL.sv: synced with TUTORIAL
109257
1092582017-04-29  Philipp Stephani  <phst@google.com>
109259
109260	Reimplement auto-saving to visited files
109261
109262	This reacts to confusing behavior of 'auto-save-visited-file-name',
109263	cf. Bug#25478.
109264
109265	* lisp/files.el (auto-save-visited-interval): New customization option.
109266	(auto-save-visited-mode): New global minor mode.
109267	(auto-save-visited-file-name): Make obsolete.
109268	(auto-save--timer): New internal helper variable.
109269
109270	* doc/emacs/files.texi (Auto Save Files): Document
109271	'auto-save-visited-mode' instead of obsolete
109272	'auto-save-visited-file-name'.
109273	(Auto Save Control): Document customization option
109274	'auto-save-visited-interval'.
109275
1092762017-04-29  Paul Eggert  <eggert@cs.ucla.edu>
109277
109278	Allow bypassing of some checks when merging
109279
109280	* build-aux/git-hooks/pre-commit: Don't check merged-in changes.
109281
1092822017-04-29  Philipp Stephani  <phst@google.com>
109283
109284	Integrate module test with normal test suite
109285
109286	* test/Makefile.in (ELFILES): Exclude module test if modules aren't
109287	configured.
109288	(EMACS_TEST_DIRECTORY): Expand test directory so that it's set
109289	correctly even if Emacs changes the current directory.
109290	($(srcdir)/src/emacs-module-tests.log)
109291	($(test_module)): Proper dependency tracking for test module.
109292
109293	* test/data/emacs-module/Makefile (ROOT): Adapt to new location.
109294	Remove 'check' target and EMACS variable, which are no longer
109295	necessary.
109296	(SO): Change to include period.
109297
109298	* test/src/emacs-module-tests.el (mod-test): Use EMACS_TEST_DIRECTORY
109299	environment variable to reliably find test data.
109300
109301	* configure.ac (HAVE_MODULES, MODULES_SUFFIX): Add necessary
109302	substitutions.
109303
1093042017-04-28  Glenn Morris  <rgm@gnu.org>
109305
109306	Broaden comint-password-prompt-regexp
109307
109308	* lisp/comint.el (comint-password-prompt-regexp):
109309	Broaden the regexp, for non-English locales.  (Bug#26698)
109310
1093112017-04-28  Stefan Monnier  <monnier@iro.umontreal.ca>
109312
109313	* lisp/auth-source.el (auth-source-backend-parse): `return' -> cl-return.
109314
1093152017-04-28  Bartosz Duszel  <bartosz.duszel@gmail.com>
109316
109317	Don't pass the value of point to 'push-mark', as that's the default.
109318
109319	* lisp/textmodes/bib-mode.el (mark-bib):
109320	* lisp/simple.el (mark-whole-buffer, yank):
109321	* lisp/ses.el (ses--advice-yank, ses-mark-row, ses-mark-column):
109322	* lisp/progmodes/xscheme.el (xscheme-yank):
109323	* lisp/progmodes/verilog-mode.el (verilog-mark-defun):
109324	* lisp/progmodes/perl-mode.el (perl-mark-function):
109325	* lisp/progmodes/pascal.el (pascal-mark-defun):
109326	* lisp/progmodes/meta-mode.el (meta-mark-defun):
109327	* lisp/progmodes/icon.el (mark-icon-function):
109328	* lisp/progmodes/cc-cmds.el (c-mark-function):
109329	* lisp/obsolete/vip.el (ex-goto):
109330	* lisp/obsolete/vi.el (vi-put-before):
109331	* lisp/mouse.el (mouse-yank-primary):
109332	* lisp/menu-bar.el (menu-bar-select-yank):
109333	* lisp/mail/sendmail.el (mail-yank-original):
109334	* lisp/hexl.el (hexl-beginning-of-buffer, hexl-end-of-buffer):
109335	* lisp/emulation/viper-cmd.el (viper-mark-beginning-of-buffer)
109336	(viper-mark-end-of-buffer):
109337	* lisp/cedet/semantic/senator.el (senator-mark-defun):
109338	* lisp/allout.el (allout-mark-topic): Remove unnecessary argument
109339	`(point)' from calls to `push-mark'.  (Bug#25565)
109340
1093412017-04-28  Glenn Morris  <rgm@gnu.org>
109342
109343	Merge from origin/emacs-25
109344
109345	784602b1050 (origin/emacs-25) ; Add release notice
109346	3a34412caae (tag: emacs-25.2) Set Emacs version to 25.2 and update AU...
109347	56a4461a48d ; Move stray item from admin/notes/repo to CONTRIBUTE
109348	2b0d1118199 ; CONTRIBUTE: Remove stray header.
109349	f2ab09ec60d Fix a typo in indexing the user manual
109350	bc55a574235 * lisp/menu-bar.el (kill-this-buffer): Doc fix.  (Bug#26466)
109351	a6d50401b4b Document 'line-pixel-height'
109352	0c55cf43e61 * search.c (Fre_search_forward, Fre_search_backward): Imp...
109353	c7ed57eaef4 Mention that processes start in default-directory (Bug#18...
109354	856ec9ffa1f * src/xdisp.c (vmessage, message): Clarify commentary.
109355	849a0aaa1c9 Belated fixes for admin.el's M-x make-manuals-dist
109356	84938d79698 default-directory: Remark that it must be a directory name
109357	3f0d047d2eb Delete confuse statement in manual
109358	ee1bd94dd0c Improve packaging documentation
109359	fb18bff91f0 Expand manual section on quitting windows
109360	9a737079645 Fix docstring of dabbrev-abbrev-char-regexp
109361	afe8849bac1 * doc/misc/cl.texi (Iteration Clauses): Clarify example (...
109362	ada79442c07 ;* doc/misc/info.texi (Choose menu subtopic): Improve ind...
109363	d38fd9229c0 Narrow scope of modification hook renabling in org-src fo...
109364	e0e9db4c84a ; Spelling fix
109365
109366	# Conflicts:
109367	#	README
109368	#	etc/AUTHORS
109369	#	etc/HISTORY
109370	#	lisp/ldefs-boot.el
109371
1093722017-04-28  Glenn Morris  <rgm@gnu.org>
109373
109374	* doc/misc/auth.texi: Commas don't work in node names.
109375
109376	* test/lisp/auth-source-pass-tests.el: Fix loading of cl-lib.
109377
1093782017-04-28  Paul Eggert  <eggert@cs.ucla.edu>
109379
109380	Test format-time-string with zone arg
109381
109382	* test/src/editfns-tests.el (format-time-string-with-zone)
109383	(format-time-string-with-outlandish-zone): New tests.
109384
1093852017-04-28  Paul Eggert  <eggert@cs.ucla.edu>
109386
109387	Merge from gnulib
109388
109389	This incorporates:
109390	2017-04-24 time_rz: fix heap buffer overflow vulnerability
109391	2017-04-23 stat-time: Update comments.
109392	2017-04-22 ftoastr: cite a newer paper
109393	2017-04-21 gettext-h: Avoid -Wundef warning.
109394	* lib/ftoastr.c, lib/gettext.h, lib/stat-time.h, lib/time_rz.c:
109395	* m4/getopt.m4: Copy from gnulib.
109396	* m4/gnulib-comp.m4: Regenerate.
109397
1093982017-04-27  Damien Cassou  <damien@cassou.me>
109399
109400	auth-source-pass: Add documentation; fix tests and indentation.
109401
109402	* doc/misc/auth.texi: Document new integration with Pass. Use @itemize
109403	  instead of @enumerate.
109404	* lisp/auth-source-pass.el: Fix indentation.
109405	  (auth-source-pass--remove-directory-name): Remove.
109406	* test/lisp/auth-source-pass-tests.el: Adjust test macros.
109407
1094082017-04-27  foudfou  <foudil.newbie+git@gmail.com>
109409
109410	auth-source-pass: Enable finding entries by "host/username"
109411
109412	* lisp/auth-source-pass.el: Enable finding entries by "host/username".
109413	* test/lisp/auth-source-pass-tests.el: Adjust tests to check it.
109414
1094152017-04-27  Damien Cassou  <damien@cassou.me>
109416
109417	Integrate auth-source with password-store
109418
109419	* lisp/auth-source-pass.el: auth-source backend for password-store.
109420	* test/lisp/auth-source-pass-tests.el: Tests for auth-source-pass
109421	  behavior.
109422
1094232017-04-27  Damien Cassou  <damien@cassou.me>
109424
109425	* lisp/auth-source.el: Document parser functions.
109426
1094272017-04-27  Ted Zlatanov  <tzz@lifelogs.com>
109428
109429	auth-source: factor out parsers and add tests
109430
109431	* lisp/auth-source.el: Factor out the source parsers. Clean up comments.
109432	* test/lisp/auth-source-tests.el: Add tests.
109433
1094342017-04-27  Martin Rudalics  <rudalics@gmx.at>
109435
109436	Fix doc and customization type of `window-combination-limit' (Bug#26673)
109437
109438	* src/window.c (Vwindow_combination_limit): Fix doc-string.
109439	* lisp/cus-start.el (window-combination-limit): Fix
109440	customization type.
109441	* doc/lispref/windows.texi (Recombining Windows): Fix
109442	documentation of `window-combination-limit'.
109443
1094442017-04-27  Tino Calancha  <tino.calancha@gmail.com>
109445
109446	Drop face from hi-lock--unused-faces only when used
109447
109448	* lisp/hi-lock.el (hi-lock-set-pattern): If REGEXP is already
109449	highlighted, then push FACE into hi-lock--unused-faces (Bug#26666).
109450	* test/lisp/hi-lock-tests.el (hi-lock-bug26666): Add test.
109451
1094522017-04-26  Alan Third  <alan@idiocy.org>
109453
109454	Fix macOS version check (bug#26664)
109455
109456	* src/nsterm.m (initFrameFromEmacs): Prevent window tabbing mode on
109457	macOS versions 10.12+.
109458
1094592017-04-26  Glenn Morris  <rgm@gnu.org>
109460
109461	Make charprop.el provide a feature
109462
109463	* admin/unidata/unidata-gen.el (unidata-gen-charprop):
109464	Provide a feature.
109465	* lisp/loadup.el: Use the charprop feature.
109466
1094672017-04-26  Glenn Morris  <rgm@gnu.org>
109468
109469	* lisp/loadup.el: Get charprop.el into etc/DOC again.
109470
1094712017-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
109472
109473	* lisp/ido.el (ido-everywhere): Use add-function.
109474
1094752017-04-26  Martin Rudalics  <rudalics@gmx.at>
109476
109477	Try to fix latest fix of w32_mouse_position
109478
109479	* src/w32term.c (w32_mouse_position): Fix a bug introduced by
109480	latest fix and try to make the affected code more rigorous.
109481
1094822017-04-26  Eli Zaretskii  <eliz@gnu.org>
109483
109484	Avoid segfaults when 'find-font' is invoked for a TTY frame
109485
109486	* src/font.c (font_pixel_size): Don't call GUI functions if F is a
109487	text-mode frame.  (Bug#26646)
109488
1094892017-04-26  Michael Albinus  <michael.albinus@gmx.de>
109490
109491	* lisp/net/tramp.el (tramp-set-connection-local-variables-for-buffer):
109492
109493	New defun.
109494
1094952017-04-26  Glenn Morris  <rgm@gnu.org>
109496
109497	* src/Makefile.in (leimdir): Remove variable, no longer used.
109498
1094992017-04-26  Glenn Morris  <rgm@gnu.org>
109500
109501	Generate leim-list via lisp/Makefile, not src/Makefile
109502
109503	* src/Makefile.in ($(leimdir)/leim-list.el): Remove rule.
109504	(emacs$(EXEEXT)): Don't depend on leim-list.
109505	* lisp/Makefile.in ($(lisp)/loaddefs.el): Depend on gen-lisp again.
109506
1095072017-04-25  Alan Third  <alan@idiocy.org>
109508
109509	Fix define for GNUstep builds
109510
109511	* src/nsterm.m (initFrameFromEmacs): Fix the ifdef so that GNUstep
109512	doesn't see the code.
109513
1095142017-04-25  Glenn Morris  <rgm@gnu.org>
109515
109516	Suppress intermittent test failure on hydra
109517
109518	* test/lisp/emacs-lisp/eieio-tests/eieio-test-methodinvoke.el
109519	(eieio-test-method-order-list-6): Skip on hydra.
109520
1095212017-04-25  Alan Third  <alan@idiocy.org>
109522
109523	Fix some NS frame handling issues
109524
109525	* src/nsterm.m (FRAME_DECORATED_FLAGS, FRAME_UNDECORATED_FLAGS): New
109526	defines intended to make things tidier.
109527	(x_set_undecorated): Use the new defines.
109528	(windowWillResize): Don't use new macOS 12+ only feature.
109529	(initFrameFromEmacs): Use the new defines, and disable automatic
109530	window tabbing feature in macOS 12.
109531	(x_set_undecorated, x_set_parent_frame, x_set_no_accept_focus,
109532	x_set_z_group): Add NSTRACE notices.
109533
1095342017-04-25  Glenn Morris  <rgm@gnu.org>
109535
109536	Avoid parallel race condition
109537
109538	* lisp/Makefile.in ($(lisp)/loaddefs.el): Remove gen-lisp for now.
109539
1095402017-04-25  Glenn Morris  <rgm@gnu.org>
109541
109542	Generate each unicode lisp file independently
109543
109544	This is better for parallel builds, eg it eliminates race
109545	conditions from having one process write multiple files.
109546	* admin/unidata/Makefile.in (lparen, unifiles): New variables.
109547	Parse unidata-gen.el, not charprop.el, to get the list of uni- files.
109548	(all): Explicitly list the output lisp files.
109549	(PHONY_EXTRAS): Remove.
109550	(${unidir}/charprop.el): Change rule to just be for this file.
109551	(${unifiles}): New rule to write each unicode lisp file.
109552	(extraclean): Simplify.
109553	* admin/unidata/unidata-gen.el (unidata-gen-charprop):
109554	Quieten in batch mode.
109555	(unidata-gen-files): Remove, no longer used.
109556	* lisp/loadup.el: Update command-line parser.
109557
1095582017-04-25  Glenn Morris  <rgm@gnu.org>
109559
109560	Further refactoring in unidata-gen.el
109561
109562	* admin/unidata/unidata-gen.el (unidata-gen-charprop):
109563	New function, split from unidata-gen-files.
109564	(unidata-gen-files): Use unidata-gen-charprop.
109565
1095662017-04-25  Glenn Morris  <rgm@gnu.org>
109567
109568	Allow unidata-gen-file to work independently
109569
109570	* admin/unidata/unidata-gen.el (unidata-gen-file):
109571	Make it work as a stand-alone function in batch mode.
109572	(unidata-gen-files): Pass extra arguments to unidata-gen-file.
109573
1095742017-04-25  Glenn Morris  <rgm@gnu.org>
109575
109576	Preparatory refactoring in unidata-gen.el
109577
109578	* admin/unidata/unidata-gen.el (unidata-gen-file):
109579	New function, split from unidata-gen-files.
109580	(unidata-gen-files): Use unidata-gen-file.
109581
1095822017-04-25  Glenn Morris  <rgm@gnu.org>
109583
109584	Write each generated character property lisp file only once
109585
109586	* admin/unidata/unidata-gen.el (unidata-file-alist):
109587	Rename from unidata-prop-alist.  All users changed.
109588	Use file name rather than property name as the key.
109589	(unidata-prop-prop): New function.
109590	(unidata-prop-index, unidata-prop-generator, unidata-prop-docstring)
109591	(unidata-prop-describer, unidata-prop-default, unidata-prop-val-list):
109592	Change to parse the argument rather than unidata-prop-alist.
109593	(unidata-gen-table-character, unidata-gen-table)
109594	(unidata-gen-table-symbol, unidata-gen-table-integer)
109595	(unidata-gen-table-numeric, unidata-gen-table-word-list)
109596	(unidata-gen-table-name, unidata-gen-table-decomposition)
109597	(unidata-gen-table-special-casing): Pass index as an argument.
109598	(unidata-check): Adapt to unidata-file-alist.
109599	Pass index to generator functions.
109600	(unidata-gen-files): Adapt to unidata-file-alist.
109601	Write each output file once only.  Overwrite rather than delete.
109602
1096032017-04-25  Andrew G Cohen  <cohen@andy.bu.edu>
109604
109605	Fix requesting sparse articles in gnus
109606
109607	* lisp/gnus/gnus-art.el (gnus-request-article-this-buffer): Delete the
109608	sparse article number from the list, not its id.
109609
1096102017-04-25  Glenn Morris  <rgm@gnu.org>
109611
109612	Don't advertise s_client in tls.el docs
109613
109614	* lisp/net/tls.el (tls-end-of-info, tls-success, tls-untrusted):
109615	Don't mention s_client in docs.
109616
1096172017-04-25  Rob Browning  <rlb@defaultvalue.org>
109618
109619	Remove s_client usage from tls.el
109620
109621	* lisp/net/tls.el (tls-program, tls-checktrust): Remove s_client.
109622	Ref http://bugs.debian.org/766397
109623	https://lists.gnu.org/r/emacs-devel/2014-10/msg00803.html
109624
1096252017-04-25  Glenn Morris  <rgm@gnu.org>
109626
109627	Further robustify cedet bootstrap to loaddefs not yet built
109628
109629	* lisp/cedet/semantic/util.el (semantic-something-to-tag-table):
109630	Avoid void-function error when bootstrapping and semantic/loaddefs.el
109631	does not yet exist.
109632
1096332017-04-24  Alan Third  <alan@idiocy.org>
109634
109635	Fix XBM color rendering in NS port (bug#22060)
109636
109637	src/nsimage.m (setXBMColor): Fix calculation of xbm_fg.
109638
1096392017-04-24  Vibhav Pant  <vibhavp@gmail.com>
109640
109641	Add support for IRCv3 message tags.
109642
109643	* lisp/erc/erc-backend.el:
109644	  erc-response: Add `tags' element.
109645	  Add (erc-parse-tags).
109646	  (erc-parse-server-response): Use (erc-parse-tags) to parse message
109647	  tags (if any), and store them in `erc-resopnse' struct.
109648
109649	* lisp/erc/erc.el: (erc-display-message): Expose message tags with text
109650	  properties of the corresponding message line.
109651
1096522017-04-24  Lars Ingebrigtsen  <larsi@gnus.org>
109653
109654	Add image sizing tests for an image that's narrow
109655
109656	Needlessly refactor tests for clarity
109657
1096582017-04-23  Philipp Stephani  <phst@google.com>
109659
109660	Add missing remappings for Ido mode
109661
109662	Among others, add a remapping for C-x 4 d, cf. Bug#26360.
109663
109664	* lisp/ido.el (ido-mode): Remap missing commands.
109665	(ido-file-internal, ido-visit-buffer): Add support for new
109666	methods.
109667	(ido-display-buffer-other-frame)
109668	(ido-find-alternate-file-other-window, ido-dired-other-window)
109669	(ido-dired-other-frame): New commands.
109670
109671	* test/lisp/ido-tests.el (ido-tests--other-window-frame): Add unit
109672	test for the bindings.
109673
1096742017-04-23  Martin Rudalics  <rudalics@gmx.at>
109675
109676	Let w32_mouse_position pick a child window only if it has a child frame
109677
109678	* src/w32term.c (w32_mouse_position): When using a frame found
109679	by ChildWindowFromPoint make sure it's a child frame (Bug#26615,
109680	maybe).
109681
1096822017-04-23  Noam Postavsky  <npostavs@gmail.com>
109683
109684	Don't require bytecomp for running ert tests
109685
109686	"Fix ert-tests when running compiled" 2016-12-06 accidentally
109687	introduced a dependency on `bytecomp' into `ert'.  As mentioned in
109688	"Avoid ert test failures" 2017-04-18, the accidental dependency of ert
109689	on bytecomp was masked by loading other libraries until recently.
109690
109691	* lisp/emacs-lisp/ert.el (ert--expand-should-1): Only use
109692	`byte-compile-macro-environment' if it's bound.
109693	* test/src/eval-tests.el: Add defvar for dynamic variable
109694	`byte-compile-debug'.
109695
1096962017-04-23  Andrew G Cohen  <cohen@andy.bu.edu>
109697
109698	Eliminate unneeded warp-to-article in gnus article referral
109699
109700	* lisp/gnus/gnus-sum.el (gnus-summary-refer-thread):
109701	(gnus-summary-refer-article): Remove gnus-warp-to article call.
109702
1097032017-04-23  Andrew G Cohen  <cohen@andy.bu.edu>
109704
109705	Allow limiting gnus summary buffers to a thread
109706
109707	* lisp/gnus/gnus-sum.el (gnus-summary-limit-include-thread): Include
109708	an optional argument to allow limiting the summary buffer to just the
109709	thread-related articles.
109710	(gnus-refer-thread-limit-to-thread): Introduce customizable variable
109711	to control whether thread-referral adds the thread to the summary
109712	buffer or limits to just the thread.
109713	(gnus-summary-refer-thread): Use the new variable.
109714
1097152017-04-23  Andrew G Cohen  <cohen@andy.bu.edu>
109716
109717	Correct gnus-newsgroup-limits in gnus when including thread
109718
109719	* lisp/gnus/gnus-sum.el (gnus-summary-limit-include-thread): Should
109720	only add one list of thread-related articles to gnus-newsgroup-limits
109721	rather than two.
109722
1097232017-04-23  Andrew G Cohen  <cohen@andy.bu.edu>
109724
109725	Improve gnus thread matching of similar subjects
109726
109727	* lisp/gnus/gnus-sum.el (gnus-summary-limit-include-thread):
109728	Use the more liberal gnus-general-simplify-subject regexp to
109729	find thread articles with similar subjects.
109730
1097312017-04-22  Noam Postavsky  <npostavs@gmail.com>
109732
109733	Add new `lisp-indent-region' that doesn't reparse the code.
109734
109735	Both `lisp-indent-region' and `lisp-indent-line' now use `syntax-ppss'
109736	to get initial state, so they will no longer indent string literal
109737	contents.
109738
109739	* lisp/emacs-lisp/lisp-mode.el (lisp-ppss): New function, like
109740	`syntax-ppss', but with a more dependable item 2.
109741	(lisp-indent-region): New function, like `indent-region-line-by-line'
109742	but additionally keep a running parse state to avoid reparsing the
109743	code repeatedly.  Use `lisp-ppss' to get initial state.
109744	(lisp-indent-line): Take optional PARSE-STATE argument, pass it to
109745	`calculate-lisp-indent', use `lisp-ppss' if not given.
109746	(lisp-mode-variables): Set `indent-region-function' to
109747	`lisp-indent-region'.
109748
1097492017-04-22  Noam Postavsky  <npostavs@gmail.com>
109750
109751	Remove ignored argument from lisp-indent-line
109752
109753	* lisp/emacs-lisp/lisp-mode.el (lisp-indent-line): Remove WHOLE-EXP
109754	argument, the behavior has long since been handled in
109755	`indent-for-tab-command'.  Also remove redundant `beg' and `shift-amt'
109756	variables and use `indent-line-to'.
109757
1097582017-04-22  Noam Postavsky  <npostavs@gmail.com>
109759
109760	* lisp/emacs-lisp/lisp-mode.el (indent-sexp): Clean up marker.
109761
1097622017-04-22  Noam Postavsky  <npostavs@gmail.com>
109763
109764	Don't reparse the sexp in indent-sexp (Bug#25122)
109765
109766	* lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent): Let
109767	PARSE-START be a parse state that can be reused.
109768	(indent-sexp): Pass the running parse state to calculate-lisp-indent
109769	instead of the sexp beginning position.  Saving the
109770	CONTAINING-SEXP-START returned by `calculate-lisp-indent' is no longer
109771	needed.  Don't bother stopping if we don't descend below init-depth,
109772	since we now alway scan the whole buffer (via syntax-ppss) anyway.
109773	* test/lisp/emacs-lisp/lisp-mode-tests.el (indent-sexp): Add blank
109774	line to test case.
109775
1097762017-04-22  Vibhav Pant  <vibhavp@gmail.com>
109777
109778	Add cond test cases for singleton clauses.
109779
109780	* test/lisp/emacs-lisp/bytecomp-tests.el: Add test cond forms where
109781	  the default clause is a single non-nil expression.
109782
1097832017-04-22  Vibhav Pant  <vibhavp@gmail.com>
109784
109785	b-c--cond-jump-table-info: Use correct body for singleton clauses
109786
109787	* lisp/emacs-lisp/bytecomp.el (byte-compile-cond-jump-table-info):
109788	When a clause's body consists of a single constant expression, use
109789	that expression as the body to be compiled. This fixes switch bytecode
109790	evaluating to nil to such clauses.
109791
1097922017-04-22  Philipp Stephani  <phst@google.com>
109793
109794	ffap: Don't switch window unless needed
109795
109796	When using ffap-other-window, don't change the window configuration
109797	unless a new buffer has actually been created (Bug#25352).
109798
109799	* lisp/ffap.el (ffap-other-frame): Don't change the window
109800	configuration if no new buffer has been created.
109801	* test/lisp/ffap-tests.el (ffap-other-window--bug-25352): Add unit
109802	test.
109803
1098042017-04-22  Alan Mackenzie  <acm@muc.de>
109805
109806	Fix fontification of C++ declaration with type FOO::FOO.
109807
109808	* lisp/progmodes/cc-engine.el (c-find-decl-spots): Initialize
109809	cfd-top-level properly.
109810	(c-forward-decl-or-cast-1): On finding FOO::FOO, check it is followed by "("
109811	before deciding it is a constructor.
109812
109813	* lisp/progmodes/cc-fonts.el (c-font-lock-complex-decl-prepare): Negate the
109814	result of the c-bs-at-toplevel-p call passed to c-font-lock-declarators
109815	(simple bug fix).
109816
1098172017-04-22  Philipp Stephani  <phst@google.com>
109818
109819	Fix usage of FRAME_Z_GROUP
109820
109821	* src/nsterm.m (initFrameFromEmacs:): FRAME_Z_GROUP does not return a
109822	Lisp object, cf. Bug#26597.
109823
1098242017-04-22  Alan Third  <alan@idiocy.org>
109825
109826	Fix GNUstep build
109827
109828	* src/nsfns.m (Fns_frame_z_list_order): Rewrite for GNUstep
109829	compatibility.
109830	* src/nsmenu.m (update_frame_tool_bar): Remove unused variable.
109831
1098322017-04-21  Alan Third  <alan@idiocy.org>
109833
109834	Add no-accept-focus and frame-list-z-order to NS port
109835
109836	* lisp/frame.el (frame-list-z-order): Add NS.
109837	* src/nsfns.m: Add x_set_no_accept_focus to handler struct.
109838	(Fx_create_frame): Handle no-accept-focus parameter.
109839	(ns_window_is_ancestor):
109840	(Fns_frame_list_z_order): New functions.
109841	* src/nsterm.m (x_set_no_accept_focus): New function.
109842	(initFrameFromEmacs): Use EmacsWindow instead of EmacsFSWindow for
109843	non-fullscreen windows.
109844	(EmacsWindow:canBecomeKeyWindow): New function.
109845
1098462017-04-21  Stefan Monnier  <monnier@iro.umontreal.ca>
109847
109848	Improve prefix handling for dash.el
109849
109850	* lisp/emacs-lisp/autoload.el (autoload--make-defs-autoload):
109851	Don't drop dash's "-<letter>" prefixes.
109852
1098532017-04-21  Stefan Monnier  <monnier@iro.umontreal.ca>
109854
109855	* lisp/emacs-lisp/cl-macs.el: Fix symbol-macrolet
109856
109857	Revert 0d112c00ba0ec14bd3014efcd3430b9ddcfe1fc1 (to fix bug#26325)
109858	and use a different fix for bug#26068.
109859	(cl--symbol-macro-key): New function.
109860	(cl--sm-macroexpand, cl-symbol-macrolet): Use it instead of `symbol-name`.
109861	* test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-symbol-macrolet):
109862	Failure is not expected any more.
109863
1098642017-04-21  Eli Zaretskii  <eliz@gnu.org>
109865
109866	Avoid infinite loop in redisplay when header-line-format is invalid
109867
109868	* src/xdisp.c (handle_invisible_prop): Avoid inflooping when the
109869	string has an invalid %-construct in it and is displayed as part
109870	of mode-line or header-line.  (Bug#26586)
109871
1098722017-04-21  Lars Ingebrigtsen  <larsi@gnus.org>
109873
109874	Add tests to check image scaling functionality
109875
109876	This is in preparation to doing further work in this area to avoid
109877	regressions.
109878
109879	* test/data/image/blank-200x100.png: New file for testing
109880	image scaling.
109881
109882	* test/manual/image-size-tests.el: New file.
109883
1098842017-04-21  Lars Ingebrigtsen  <larsi@gnus.org>
109885
109886	Allow svg-image to take all create-image PROPS
109887
109888	* lisp/svg.el (svg-image): Allow passing in PROPS when
109889	creating an image for convenience.
109890
1098912017-04-21  George D. Plymale II  <georgedp@orbitalimpact.com>  (tiny change)
109892
109893	Treat non-erroring lisp call as successful eshell command (Bug#26161)
109894
109895	This lets a compound command like 'cd .. && echo ok' print 'ok',
109896	similar to how most other shells behave.
109897
109898	* lisp/eshell/esh-cmd.el (eshell-exit-success-p): Only check if the
109899	last exit code was zero, rather than first checking whether the last
109900	command returned nil.
109901	(eshell-exec-lisp): Set `eshell-last-command-status' to 1 on error.
109902
1099032017-04-21  Reuben Thomas  <rrt@sc3d.org>
109904
109905	Fix reading of tab settings in whitespace-mode
109906
109907	lisp/whitespace.el (whitespace-indent-tabs-mode)
109908	whitespace-tab-width): Remove these variables. The underlying
109909	variables `indent-tabs-mode' and `tab-width' are already buffer-local
109910	when needed, and whitespace-mode never changes them.
109911	(whitespace-ensure-local-variables): Remove this function, which only
109912	existed to set the above variables.
109913	(whitespace-cleanup-region, whitespace-regexp)
109914	(whitespace-indentation-regexp, whitespace-report-region)
109915	(whitespace-turn-on, whitespace-color-on): Adjust these functions to
109916	use `indent-tabs-mode' and `tab-width' directly, and not call
109917	`whitespace-ensure-local-variables'.
109918
1099192017-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
109920
109921	* lisp/vc/vc-hg.el (vc-hg-state-fast): Fix compiler warning
109922
109923	by simplifying ascii-test.
109924
1099252017-04-20  Vibhav Pant  <vibhavp@gmail.com>
109926
109927	bytecomp: Don't inline functions that use byte-switch (Bug#26518)
109928
109929	* lisp/emacs-lisp/bytecomp.el (byte-compile-unfold-bcf): Don't inline
109930	  FORM if the bytecode uses the byte-switch instruction. It is
109931	  impossible to guess the correct stack depth while inlining such
109932	  bytecode, resulting in faulty code.
109933
1099342017-04-20  Nicolas Petton  <nicolas@petton.fr>
109935
109936	Set Emacs version to 25.2 and update AUTHORS file
109937
109938	* README: Set Emacs version to 25.2.
109939	* etc/HISTORY: Add release log.
109940	* lisp/ldefs-boot.el:
109941	* etc/AUTHORS:
109942	* ChangeLog.2: Update.
109943
1099442017-04-20  Noam Postavsky  <npostavs@gmail.com>
109945
109946	Don't register "def" as an autoload prefix (Bug#26412)
109947
109948	* lisp/emacs-lisp/autoload.el (autoload--make-defs-autoload): Don't
109949	accept "def" as a prefix.
109950
1099512017-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
109952
109953	Use substring completion for Info menus and index
109954
109955	* lisp/info.el (Info-complete-menu-item): Add `category' metadata.
109956	(Info-menu): Simplify now that we use the `default' arg of completing-read.
109957	* lisp/minibuffer.el (completion-category-defaults): Use substring
109958	completion for `info-menu`.
109959
1099602017-04-19  Glenn Morris  <rgm@gnu.org>
109961
109962	Remove some explicit runtime loads of pcase
109963
109964	Pcase is macros, so these should have used eval-when-compile.
109965	Anyway, pcase entry points are autoloaded, so the compiler handles it.
109966	* lisp/profiler.el, lisp/emacs-lisp/eieio-core.el:
109967	* lisp/emacs-lisp/generator.el, lisp/emacs-lisp/subr-x.el:
109968	* lisp/progmodes/xref.el: No need to require pcase.
109969
1099702017-04-19  Glenn Morris  <rgm@gnu.org>
109971
109972	Stop cl-lib loading pcase at runtime
109973
109974	The cause was an unexpanded pcase-defmacro in cl-loaddefs.
109975	* lisp/emacs-lisp/autoload.el (make-autoload):
109976	Treat pcase-defmacro like defmacro.
109977
1099782017-04-19  Alan Third  <alan@idiocy.org>
109979
109980	Note frame documentation exceptions for NS builds
109981
109982	* doc/lispref/frames.texi (Management Parameters, Child Frames): Note
109983	NS differences.
109984
1099852017-04-19  Alan Third  <alan@idiocy.org>
109986
109987	Fix bug introduced by my last commit
109988
109989	* src/nsterm.m (ns_draw_fringe_bitmap): Revert key-mashing accident.
109990
1099912017-04-19  Alan Third  <alan@idiocy.org>
109992
109993	Add new frame functionality to NS port
109994
109995	* lisp/frame.el (frame-restack): Call ns-frame-restack.
109996	* src/keyboard.c (kbd_buffer_get_event) [HAVE_NS]: Enable
109997	MOVE_FRAME_EVENT handling.
109998	* src/frame.h:
109999	* src/frame.c: Enable 'z-group', 'undecorated' and 'parent' frame
110000	definitions.
110001	* src/nsfns.m: Add x_set_z_group, x_set_parent_frame and
110002	x_set_undecorated (Cocoa only) to handler struct.
110003	(Fx_create_frame): Handle 'z-group', 'parent-frame' and 'undecorated'
110004	frame parameter.
110005	(Fns_frame_restack): New function.
110006	* src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar):
110007	FRAME_TOOLBAR_HEIGHT is no longer a variable.
110008	* src/nsterm.h (NS_PARENT_WINDOW_LEFT_POS, NS_PARENT_WINDOW_TOP_POS):
110009	Add #defines to find the screen position of the parent frame.
110010	(NS_TOP_POS): Remove defun.
110011	(EmacsView): Remove redundant toolbar variables and add createToolbar
110012	method.
110013	(FRAME_NS_TITLEBAR_HEIGHT, FRAME_TOOLBAR_HEIGHT): Always calculate the
110014	values instead of storing them in a variable.
110015	* src/nsterm.m (x_set_offset, windowDidMove): Take parent frame
110016	position into account when positioning frames.
110017	(initFrameFromEmacs): Remove toolbar creation code and handle new
110018	frame parameters.
110019	(x_set_window_size): Remove toolbar height calculation.
110020	(x_set_z_group):
110021	(x_set_parent_frame):
110022	(x_set_undecorated) [NS_IMPL_COCOA]: New function.
110023	(x_destroy_window): Detach parent if child closes.
110024	(updateFrameSize): Change NSTRACE message to reflect new reality and
110025	no longer reset frame size.
110026	(windowWillResize): Don’t change NS window name when the titlebar
110027	is invisible.
110028	(createToolbar): Move toolbar creation code into it’s own method.
110029	(toggleFullScreen): FRAME_TOOLBAR_HEIGHT and FRAME_NS_TITLEBAR_HEIGHT
110030	are no longer variables.
110031	(windowDidMove): Fire MOVE_FRAME_EVENT Emacs event.
110032
1100332017-04-19  Glenn Morris  <rgm@gnu.org>
110034
110035	Tweak bytecomp's loading of cl-extra
110036
110037	* lisp/emacs-lisp/bytecomp.el: Don't force load of cl-extra in a
110038	post-bootstrap emacs where cl-loaddefs does exist.
110039
1100402017-04-19  Glenn Morris  <rgm@gnu.org>
110041
110042	Avoid unnecessary loading of subr-x at run-time
110043
110044	* lisp/doc-view.el, lisp/filenotify.el, lisp/info-look.el:
110045	* lisp/svg.el, lisp/emacs-lisp/byte-opt.el, lisp/net/shr.el:
110046	* lisp/textmodes/sgml-mode.el, test/lisp/dom-tests.el:
110047	No need to load subr-x at run-time.
110048	* lisp/gnus/nnheader.el: No need to load subr-x.
110049
1100502017-04-18  michael schuldt  <mbschuldt@gmail.com>  (tiny change)
110051
110052	Use iteration in math-factorial-iter
110053
110054	* lisp/calc/calc-comb.el (math-factorial-iter):
110055	Use iteration instead of recursion to avoid max-specpdl-size problem.
110056
1100572017-04-18  Glenn Morris  <rgm@gnu.org>
110058
110059	* test/lisp/kmacro-tests.el: Require seq, for seq-concatenate.
110060
1100612017-04-18  Glenn Morris  <rgm@gnu.org>
110062
110063	Avoid ert test failures
110064
110065	* lisp/emacs-lisp/ert.el (ert--expand-should-1):
110066	Avoid errors related to undefined byte-compile-macro-environment.
110067	Somehow masked until very recently because loading seq (eg)
110068	loads bytecomp.  http://hydra.nixos.org/build/51730765
110069
1100702017-04-18  Eli Zaretskii  <eliz@gnu.org>
110071
110072	Fix a typo in indexing the user manual
110073
110074	* doc/emacs/cmdargs.texi (General Variables): Fix a horrible typo.
110075
1100762017-04-18  Noam Postavsky  <npostavs@gmail.com>
110077
110078	Fix find-library-name for load-history entries with nil FILE-NAME (Bug#26355)
110079
110080	* lisp/emacs-lisp/find-func.el (find-library--from-load-history):
110081	Rename from find-library--from-load-path.  Check for `load-history'
110082	entries with nil FILE-NAMEs.  Simplify by not double
110083	checking for suffixes and making use of `locate-file'.
110084
1100852017-04-18  Alan Third  <alan@idiocy.org>
110086	    YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
110087
110088	Use vfork if possible on Darwin (bug#26397)
110089
110090
110091	* src/conf_post.h (HAVE_WORKING_VFORK): Don't undef.
110092	(vfork): Don't define.
110093	* src/process.c (create_process) [DARWIN_OS]: Use fork if pty_flag is
110094	set, otherwise vfork.
110095	* src/callproc.c (call_process) [DARWIN_OS]: Use TIOCNOTTY to detach
110096	the controlling terminal instead of setsid.
110097
1100982017-04-18  Fran Litterio  <flitterio@gmail.com>
110099
110100	Small erc-kill-channel fix (bug#23700)
110101
110102	* lisp/erc/erc.el (erc-kill-channel): Handle null erc-default-target.
110103
1101042017-04-18  Glenn Morris  <rgm@gnu.org>
110105
110106	ediff: use user-error rather than debug-ignored-errors
110107
110108	* lisp/vc/ediff-diff.el (ediff-prepare-error-list):
110109	* lisp/vc/ediff-help.el (ediff-help-for-quick-help):
110110	* lisp/vc/ediff-init.el (ediff-barf-if-not-control-buffer)
110111	(ediff-check-version):
110112	* lisp/vc/ediff-merg.el (ediff-shrink-window-C):
110113	* lisp/vc/ediff-mult.el (ediff-draw-dir-diffs, ediff-show-dir-diffs)
110114	(ediff-append-custom-diff, ediff-meta-show-patch)
110115	(ediff-filegroup-action, ediff-show-meta-buffer, ediff-show-registry)
110116	(ediff-get-meta-info, ediff-patch-file-form-meta):
110117	* lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
110118	* lisp/vc/ediff-util.el (ediff-toggle-autorefine)
110119	(ediff--check-ancestor-exists, ediff-toggle-read-only)
110120	(ediff-toggle-wide-display, ediff-toggle-multiframe)
110121	(ediff-toggle-use-toolbar, ediff-toggle-show-clashes-only)
110122	(ediff-next-difference, ediff-previous-difference)
110123	(ediff-pop-diff, ediff-read-file-name, ediff-verify-file-buffer)
110124	(ediff-save-buffer):
110125	* lisp/vc/ediff-wind.el (ediff-make-wide-display):
110126	* lisp/vc/ediff.el (ediff-find-file, ediff-buffers-internal)
110127	(ediff-directories-internal, ediff-directory-revisions-internal)
110128	(ediff-regions-wordwise, ediff-regions-linewise)
110129	(ediff-load-version-control): Use user-error.
110130	(debug-ignored-errors): No longer modify.
110131
1101322017-04-18  Glenn Morris  <rgm@gnu.org>
110133
110134	mh-e: use user-error rather than debug-ignored-errors
110135
110136	* lisp/mh-e/mh-alias.el (mh-alias-grab-from-field):
110137	* lisp/mh-e/mh-utils.el (mh-get-msg-num): Use user-error.
110138	(debug-ignored-errors): No longer modify.
110139
1101402017-04-18  Glenn Morris  <rgm@gnu.org>
110141
110142	ispell.el: use user-error rather than debug-ignored-errors
110143
110144	* lisp/textmodes/ispell.el (ispell-get-word): Use user-error.
110145	(debug-ignored-errors): No longer modify.
110146
1101472017-04-17  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
110148
110149	* src/xterm.c (x_fill_rectangle): Now static.
110150
1101512017-04-17  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
110152
110153	Tighten recently-added UTF-8 check
110154
110155	* src/coding.c (encode_coding_utf_8): Now extern.
110156	* src/terminal.c (terminal_glyph_code) [HAVE_STRUCT_UNIPAIR_UNICODE]:
110157	Check for UTF-8, not just for multibyte.
110158
1101592017-04-17  David Engster  <deng@randomsample.de>
110160
110161	xml: Properly handle symbol-qnames for attribute parsing
110162
110163	* lisp/xml.el (xml-parse-attlist): Do not strip 'symbol-qnames from
110164	  xml-ns argument (reverts aea67018) (Bug#26533).
110165	  (xml-maybe-do-ns): Properly handle default namespace by not
110166	  interning new symbol when 'special' flag is set.
110167
110168	* test/lisp/xml-tests.el (xml-parse-test--namespace-attribute-qnames)
110169	  (xml-parse-namespace-attribute-qnames): Add test for Bug#26533.
110170
1101712017-04-17  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
110172
110173	* src/lisp.h (STRING_SET_CHARS): Simplify assertion.
110174
1101752017-04-17  Eli Zaretskii  <eliz@gnu.org>
110176
110177	Fix assertion violations when displaying thread-related error
110178
110179	* src/process.c (Faccept_process_output): Don't assume a thread's
110180	name is always a string.
110181
1101822017-04-17  Paul Eggert  <eggert@cs.ucla.edu>
110183
110184	dired ‘M’ should not complain about ‘.’ and ‘..’
110185
110186	* lisp/dired-aux.el (dired-do-redisplay):
110187	Allow redisplay of ‘.’ and ‘..’ (Bug#26528).
110188
1101892017-04-17  Paul Eggert  <eggert@cs.ucla.edu>
110190
110191	Remove unused coding enums
110192
110193	* src/coding.h (enum coding_system_type, enum end_of_line_type):
110194	Remove; unused.
110195
1101962017-04-17  Paul Eggert  <eggert@cs.ucla.edu>
110197
110198	Work around bug with unibyte Linux consoles
110199
110200	* src/terminal.c (terminal_glyph_code): Skip the UTF-8 stuff if
110201	the terminal's coding system is unibyte (Bug#26396).
110202
1102032017-04-16  Teemu Likonen  <tlikonen@iki.fi>
110204
110205	Fix org-agenda's command for calendar-lunar-phases
110206
110207	Function org-agenda-phases-of-moon tries to call a non-existing
110208	function calendar-phases-of-moon. The correct function is
110209	calendar-lunar-phases.
110210
1102112017-04-16  Michael Albinus  <michael.albinus@gmx.de>
110212
110213	Tuning for `separate' Tramp syntax
110214
110215	* lisp/net/tramp.el (tramp-method-regexp): Fix it for `separate' syntax.
110216	(tramp-completion-file-name-regexp-separate): Simplify.
110217
110218	* test/lisp/net/tramp-tests.el (tramp-test02-file-name-dissect-separate):
110219	Extend test.
110220
1102212017-04-16  Alan Mackenzie  <acm@muc.de>
110222
110223	Fix bug #26529: C-h k errors with a lambda function bound to a key.
110224
110225	* lisp/help-fns.el (help-fns--signature, describe-function-1): Check
110226	`function' is a symbol before trying to get property `reader-construct' from
110227	it.
110228
1102292017-04-16  Simen Heggestøyl  <simenheg@gmail.com>
110230
110231	Fix highlighting of short selectors in CSS mode
110232
110233	* lisp/textmodes/css-mode.el (css--font-lock-keywords): Highlight
110234	selectors where the part before a colon is only one character long,
110235	such as `a:hover'.
110236
1102372017-04-16  Eli Zaretskii  <eliz@gnu.org>
110238
110239	Fix redisplay performance problems with some fonts
110240
110241	* src/font.c (font_list_entities): Revert part of the changes
110242	introduced on Apr 2, 2014 to fix bug#17125.  It turns out having
110243	zero_vector in the font-cache is an important indication that
110244	cannot be removed.  (Bug#21028)
110245
1102462017-04-16  Eli Zaretskii  <eliz@gnu.org>
110247
110248	Add assertion to STRING_SET_CHARS
110249
110250	* src/lisp.h (STRING_SET_CHARS): Add an assertion and commentary
110251	to prevent incorrect usage.  For details, see this discussion:
110252	https://lists.gnu.org/r/emacs-devel/2017-04/msg00412.html.
110253
1102542017-04-16  Eli Zaretskii  <eliz@gnu.org>
110255
110256	Avoid compilation warnings on MS-Windows
110257
110258	* src/w32term.c (w32_read_socket): Avoid compiler warnings about
110259	parentheses around assignment.
110260	* src/w32fns.c (w32_createwindow): Remove unused variable
110261	dwStyle.  Use "|=" where appropriate.
110262
1102632017-04-16  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
110264
110265	Merge from gnulib
110266
110267	This incorporates:
110268	2017-04-14 intprops: try to avoid tickling similar bugs
110269	2017-04-14 intprops: port to Oracle Studio 12.3 x86
110270	* doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
110271
1102722017-04-15  Martin Rudalics  <rudalics@gmx.at>
110273
110274	Fix bugs in `with-displayed-buffer-window' and `fit-window-to-buffer'
110275
110276	* lisp/window.el (with-displayed-buffer-window): When a
110277	'window-height' action alist entry specifies a function, call
110278	`temp-buffer-window-show' with a '(window-height . t)' dummy
110279	entry so `window--try-to-split-window' will bind
110280	`window-combination-limit' to t and that function does not
110281	resize any other window but the one we split this one off
110282	(Bug#25055, Bug#25179).
110283	(fit-window-to-buffer): Call `window-max-delta' with NOUP t so
110284	we steal space only from windows in the same combination.
110285	Stealing space from other windows would not allow us to return
110286	that space later when this window is deleted (Bug#25055,
110287	Bug#25179).
110288
1102892017-04-15  Glenn Morris  <rgm@gnu.org>
110290
110291	Avoid userlock queries hanging forever in batch mode
110292
110293	* lisp/userlock.el (ask-user-about-lock)
110294	(ask-user-about-supersession-threat): Abort in batch mode.
110295
1102962017-04-14  Martin Rudalics  <rudalics@gmx.at>
110297
110298	Fix segfault when calling frame_ancestor_p (Bug#26493)
110299
110300	* src/xterm.c (handle_one_xevent): Check that hf was not reset
110301	before calling frame_ancestor_p (Bug#26493).
110302
1103032017-04-14  Martin Rudalics  <rudalics@gmx.at>
110304
110305	A few additional copy-edits in documentation of frames
110306
110307	* doc/lispref/frames.texi (Frame Layout)
110308	(Implied Frame Resizing): Windows -> MS-Windows.
110309	(Deleting Frames): Fix typo.
110310
1103112017-04-14  Glenn Morris  <rgm@gnu.org>
110312
110313	Use user-error for some ert.el errors
110314
110315	* lisp/emacs-lisp/ert.el (ert-read-test-name, ert-delete-all-tests)
110316	(ert-results-find-test-at-point-other-window, ert-describe-test):
110317	Use user-error.
110318
1103192017-04-14  Glenn Morris  <rgm@gnu.org>
110320
110321	Use user-error for customize's "invalid face" error
110322
110323	* lisp/cus-edit.el (customize-face): Use user-error.
110324	(debug-ignored-errors): No more need to add "Invalid face".
110325
1103262017-04-14  Glenn Morris  <rgm@gnu.org>
110327
110328	Remove duplicate lisp-eval-defun definition
110329
110330	* lisp/emacs-lisp/lisp-mode.el (lisp-eval-defun):
110331	Autoload rather than defining a stub.
110332
1103332017-04-14  Glenn Morris  <rgm@gnu.org>
110334
110335	* lisp/Makefile.in (check-defun-dups): Ignore obsolete files.
110336
1103372017-04-14  Glenn Morris  <rgm@gnu.org>
110338
110339	Create generated lisp files before main loaddefs.el
110340
110341	This should improve reproducibility of lisp/loaddefs.el.
110342	* lisp/Makefile.in (gen-lisp): New phony target.
110343	($(lisp)/loaddefs.el, compile-main): Depend on gen-lisp.
110344	* src/Makefile.in ($(leimdir)/leim-list.el): Depend on all of ../leim.
110345	* lisp/cedet/semantic.el (semantic-mode):
110346	* lisp/cedet/semantic/fw.el (top-level):
110347	* lisp/emacs-lisp/eieio-core.el (top-level):
110348	Robustify to generated input files maybe not yet existing.
110349
1103502017-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
110351
110352	Fix minor quoting issues in Makefile.in
110353
110354	* Makefile.in (install-arch-dep, uninstall):
110355	Quote EMACS and EMACS_NAME more consistently.
110356
1103572017-04-13  Glenn Morris  <rgm@gnu.org>
110358
110359	* Makefile.in (install-etc): Use existing Makefile variables.
110360
1103612017-04-13  Eli Zaretskii  <eliz@gnu.org>
110362
110363	Minor copyedits of recent changes in documentation
110364
110365	* doc/lispref/frames.texi (Frame Layout, Frame Position)
110366	(Frame Size, Frame Interaction Parameters, Input Focus)
110367	(Raising and Lowering, Child Frames): Improve wording and indexing.
110368	* doc/emacs/cmdargs.texi (Borders X): Improve indexing.
110369
1103702017-04-13  Glenn Morris  <rgm@gnu.org>
110371
110372	Small src/Makefile simplification
110373
110374	* src/Makefile.in ($(lispsource)/international/ucs-normalize.elc)
110375	($(lispsource)/term/ns-win.elc): Combine rules.
110376
1103772017-04-13  Simen Heggestøyl  <simenheg@gmail.com>
110378
110379	Add grid layout module to CSS property list
110380
110381	* lisp/textmodes/css-mode.el (css-property-alist)
110382	(css-value-class-alist): Add new properties and value classes from CSS
110383	Grid Layout Module.
110384
1103852017-04-13  Martin Rudalics  <rudalics@gmx.at>
110386
110387	Describe recent frame and window changes in manuals
110388
110389	* doc/emacs/emacs.texi (Top):
110390	* doc/emacs/cmdargs.texi (Borders X): Clearly separate the terms
110391	"outer border" (for the X border which can be set from within
110392	Emacs) and "external border" (for the border which is added by
110393	the window manager).
110394	* doc/lispref/display.texi (Tooltips): Clarify slightly.
110395	* doc/lispref/elisp.texi (Top): Update node and section names.
110396	* doc/lispref/frames.texi (Frames): Describe difference between
110397	top-level and child frames.
110398	(Frame Layout): Describe outer border.  Add more details about
110399	how Emacs obtains the outer size and position of a frame and
110400	about menu bar/tool bar wrapping.  Add references to new frame
110401	parameters.
110402	(Size and Position): Remove subsection.
110403	(Frame Position): New subsection excerpted from the earlier Size
110404	and Position subsection.  Clarify positioning concepts and
110405	some of their shortcomings.  Describe `move-frame-functions'.
110406	(Frame Size): New subsection excerpted from the earlier Size
110407	and Position subsection.  Describe how to track frame size
110408	changes and the new function `frame-size-changed-p'.
110409	(Position Parameters): Describe child frame positioning.  Warn
110410	about negative offsets.  Describe 'z-group' parameter.
110411	(Size Parameters): Describe 'text-pixels' specification
110412	facility and new 'min-width' and 'min-height' parameters.
110413	(Layout Parameters): Clarify description of 'tool-bar-lines' and
110414	'menu-bar-lines' parameters.
110415	(Frame Interaction Parameters): New subsubsection describing
110416	'parent-frame', 'delete-before', 'mouse-wheel-frame' and
110417	'no-other-frame' parameters.
110418	(Management Parameters): Describe 'skip-taskbar',
110419	'no-focus-on-map', 'no-accept-focus', 'undecorated' and
110420	'override-redirect' parameters.
110421	(Deleting Frames): Describe handling of 'delete-before'
110422	parameter and child frames for `delete-frame' and
110423	`delete-other-frames'.
110424	(Finding All Frames): Describe `frame-list-z-order' and handling
110425	of 'no-other-frame' parameter by `next-frame'.
110426	(Minibuffers and Frames): Minor clarifications.
110427	(Input Focus): Document `x-focus-frame'.  Clarify descriptions
110428	of `focus-in-hook', `focus-out-hook' and `focus-follows-mouse'.
110429	(Visibility of Frames): Describe mapping and how the visibility
110430	of a parent frame affects that of its child frames.
110431	(Raising and Lowering): Describe restacking of frames and
110432	z-groups.
110433	(Child Frames): New section.
110434	* doc/lispref/windows.texi (Selecting Windows): Describe
110435	additional semantics of NORECORD argument of `select-window' and
110436	how `buffer-list-update-hook' can emulate a "select window
110437	hook".
110438	(Mouse Window Auto-selection): New section.
110439
1104402017-04-13  Damien Cassou  <damien@cassou.me>
110441
110442	Fix imenu--sort-by-position for non-pairs parameters (bug#26457)
110443
110444	* lisp/imenu.el (imenu--sort-by-position): Fix to accept lists beyond
110445	  pairs.
110446	* test/lisp/imenu-tests.el: Add 2 tests for `imenu--sort-by-position`.
110447
1104482017-04-13  Eli Zaretskii  <eliz@gnu.org>
110449
110450	Avoid unnecessary regeneration of the entire loaddefs.el
110451
110452	* lisp/Makefile.in (autoloads .PHONY): Add commentary explaining
110453	why $(lisp)/loaddefs.el is a dependency of '.PHONY'.
110454	($(lisp)/loaddefs.el): Copy an existing loaddefs.el to
110455	loaddefs.tmp before running 'batch-update-autoloads' on it, to
110456	avoid slow regeneration of the full contents.  (Bug#26459)
110457	Use 'move-if-change' instead of 'mv', to avoid producing a new
110458	Emacs binary when not necessary.
110459
1104602017-04-13  Dmitry Gutov  <dgutov@yandex.ru>
110461
110462	Handle indentation of nested ternary operators in JS
110463
110464	* lisp/progmodes/js.el (js--looking-at-operator-p):
110465	Handle nested ternary operators.
110466
1104672017-04-12  Eli Zaretskii  <eliz@gnu.org>
110468
110469	Don't call 'kill-this-buffer' outside of menus
110470
110471	* lisp/simple.el (kill-current-buffer): New function.
110472	(completion-list-mode-map): Use it instead of kill-this-buffer.
110473	* lisp/type-break.el (type-break-mode):
110474	* lisp/term/ns-win.el (global-map):
110475	* lisp/progmodes/gdb-mi.el (gdb-memory-mode-map)
110476	(gdb-disassembly-mode-map, gdb-frames-mode-map)
110477	(gdb-locals-mode-map, gdb-registers-mode-map):
110478	* lisp/org/org-mhe.el (org-mhe-follow-link):
110479	* lisp/net/secrets.el (secrets-mode-map):
110480	* lisp/net/eudc.el (eudc-mode-map):
110481	* lisp/net/eudc-hotlist.el (eudc-hotlist-mode-map): Use
110482	kill-current-buffer instead of kill-this-buffer.  (Bug#26466)
110483
1104842017-04-12  Eli Zaretskii  <eliz@gnu.org>
110485
110486	* lisp/menu-bar.el (kill-this-buffer): Doc fix.  (Bug#26466)
110487
1104882017-04-12  Martin Rudalics  <rudalics@gmx.at>
110489
110490	New internal-border face and args for select-window and x-focus-frame
110491
110492	Add `internal-border' face and handle it whenever clearing the
110493	internal border.  If NORECORD equals the symbol
110494	'mark-for-redisplay', `select-window' will not record the window
110495	but still mark it for redisplay.  The new argument NOACTIVATE
110496	for `x-focus-frame' tries to not activate FRAME when set.
110497
110498	* lisp/faces.el (internal-border): New face.
110499	* lisp/mwheel.el (mwheel-scroll): Select window to scroll with
110500	`mark-for-redisplay'.
110501	* lisp/scroll-bar.el (scroll-bar-drag)
110502	(scroll-bar-horizontal-drag, scroll-bar-scroll-down)
110503	(scroll-bar-scroll-up, scroll-bar-toolkit-scroll)
110504	(scroll-bar-toolkit-horizontal-scroll): Select window to scroll
110505	with `mark-for-redisplay'.
110506	* lisp/window.el (handle-select-window): When
110507	`focus-follows-mouse' is not 'auto-raise' try to not activate
110508	FRAME.
110509	* src/dispextern.h (face_id): Add INTERNAL_BORDER_FACE_ID.
110510	* src/frame.c (Fx_focus_frame): New argument NOACTIVATE.
110511	* src/frame.h (x_focus_frame): Update extern declaration.
110512	* src/gtkutil.c (xg_clear_under_internal_border): Remove
110513	function.
110514	(xg_frame_resized, xg_frame_set_char_size): Call
110515	x_clear_under_internal_border.
110516	(xg_tool_bar_callback): Adapt x_focus_frame call.
110517	* src/gtkutil.h (xg_clear_under_internal_border): Remove
110518	declaration.
110519	* src/nsfns.m (x_focus_frame): Add argument NOACTIVATE.
110520	* src/w32fns.c (x_clear_under_internal_border): Fill border
110521	with internal-border background if specified.
110522	* src/w32term.h (x_clear_under_internal_border): Add extern
110523	declaration.
110524	* src/w32term.c (x_after_update_window_line): Fill border
110525	with internal-border background if specified.
110526	(w32_set_vertical_scroll_bar, w32_set_horizontal_scroll_bar)
110527	(x_scroll_bar_clear, w32_read_socket): Call
110528	x_clear_under_internal_border.
110529	(x_focus_frame): New argument NOACTIVATE.
110530	* src/window.c (select_window): Mark WINDOW for redisplay when
110531	NORECORD equals 'mark-for-redisplay'.
110532	(Fselect_window): Update doc-string.
110533	(syms_of_window): Define Qmark_for_redisplay.
110534	* src/xdisp.c (clear_garbaged_frames, echo_area_display)
110535	(redisplay_internal): Call x_clear_under_internal_border.
110536	* src/xfaces.c (lookup_basic_face): Handle `window-divider'
110537	and `internal-border' faces.
110538	(realize_basic_faces): Realize `internal-border' face.
110539	(syms_of_xfaces): Define Qinternal_border.
110540	* src/xfns.c (x_set_internal_border_width): Remove call for
110541	xg_clear_under_internal_border.
110542	(x_focus_frame): New argument NOACTIVATE.  When non-nil try to not
110543	activate frame.
110544	* src/xterm.c (x_fill_rectangle): No more static.
110545	(x_clear_under_internal_border, x_after_update_window_line):
110546	Fill border with internal-border background if specified.
110547	(xt_horizontal_action_hook): Rewrite.
110548	(handle_one_xevent): Call x_clear_under_internal_border.
110549	* src/xterm.h (x_fill_rectangle): Add extern declaration.
110550
1105512017-04-12  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
110552
110553	Port recent frame changes to --enable-gcc-warnings
110554
110555	* src/frame.c (next_frame, prev_frame):
110556	Remove now-redundant assertions.
110557	* src/frame.h (FOR_EACH_FRAME): Assume Vframe_list is nonempty.
110558
1105592017-04-12  Tak Kunihiro  <tkk@misasa.okayama-u.ac.jp>
110560
110561	Scroll right and left using wheel-right and wheel-left.
110562
110563	These changes also make use of touchpad and trackpad (Bug#26347).
110564
110565	* doc/emacs/frames.texi (Mouse Commands): Document horizontal
110566	scrolling using the mouse wheel.
110567
110568	* lisp/mwheel.el (mwheel-scroll): Respond to wheel-right and wheel-left.
110569	(mwheel-tilt-scroll-p, mwheel-flip-direction)
110570	(mwheel-scroll-left-function, mwheel-scroll-right-function): New
110571	defcustoms.
110572	(mouse-wheel-left-event, mouse-wheel-right-event): New variables,
110573	events that calls wheel-left/right.
110574
110575	* etc/NEWS: Mention horizontal scrolling using the mouse wheel.
110576
1105772017-04-12  Eli Zaretskii  <eliz@gnu.org>
110578
110579	* lisp/Makefile.in (autoloads-force): Fix usage of ".PHONY".
110580
1105812017-04-12  Martin Rudalics  <rudalics@gmx.at>
110582
110583	Add new frame parameters and associated functions
110584
110585	Add new frame parameters `undecorated', `override-redirect',
110586	`parent-frame', `skip-taskbar', `no-focus-on-map',
110587	`no-accept-focus', `z-group', `delete-before', `no-other-frame',
110588	`mouse-wheel-frame', `min-width', `min-height'.  Add new
110589	functions `frame-restack' and `frame-list-z-order'.
110590
110591	* lisp/cus-start.el (focus-follows-mouse): Adapt customization
110592	type.
110593	* lisp/frame.el (handle-delete-frame): Handle child and
110594	`delete-before' frames.
110595	(other-frame): Stop looking for other frame after one round.
110596	(frame-list-z-order, frame-restack): New functions.
110597	(delete-other-frames): Handle child frames.
110598	* lisp/frameset.el (frameset-persistent-filter-alist)
110599	(frameset--record-relationships): Handle `delete-before',
110600	`parent-frame' and `mouse-wheel-frame' parameters.  Rename
110601	latter from `frameset--record-minibuffer-relationships'.
110602	(frameset--restore-frame): Handle ‘parent-frame’ parameter
110603	specially.
110604	(frameset-restore): Handle `delete-before', `parent-frame' and
110605	`mouse-wheel-frame' parameters.
110606	* lisp/mwheel.el (mwheel-scroll): Handle `mouse-wheel-frame'
110607	parameter.
110608	* lisp/window.el (window--min-size-ignore-p): Fix doc-string.
110609	(mouse-autoselect-window-select, handle-select-window): Major
110610	rewrite.  Try to not ignore errors.  Handle auto-selection of
110611	child frames and different values of `focus-follows-mouse'.
110612	* src/frame.c (frame_windows_min_size): Handle new `min-width'
110613	and `min-height' frame parameters.
110614	(make_frame): Initialize new frame structure members.
110615	(do_switch_frame): Don't reset internal_last_event_frame for
110616	descendant frames.
110617	(Fframe_parent, frame_ancestor_p, Fframe_ancestor_p): New
110618	functions.
110619	(candidate_frame): Don't return `no-other-frame' frame.
110620	(other_frames): New function replacing other_visible_frames.
110621	(delete_frame): Rewrite.  Handle child and `delete-before' frames.
110622	(Fmake_frame_invisible): Call other_frames.
110623	(store_frame_param): Check `delete-before' and `parent-frame'
110624	parameters for circular dependencies.
110625	(frame_parms, syms_of_frame): Add entries for and define new
110626	frame parameters.
110627	(focus_follows_mouse): New meaningful value `auto-raise'.
110628	* src/frame.h (z_group): New enumeration type.
110629	(frame): New slots parent_frame, undecorated, override_redirect,
110630	skip_taskbar, no_focus_on_map, no_accept_focus, z_group.
110631	(fset_parent_frame): New inlined function.
110632	(FRAME_UNDECORATED, FRAME_OVERRIDE_REDIRECT)
110633	(FRAME_PARENT_FRAME, FRAME_SKIP_TASKBAR, FRAME_NO_FOCUS_ON_MAP)
110634	(FRAME_NO_ACCEPT_FOCUS, FRAME_Z_GROUP, FRAME_Z_GROUP_NONE)
110635	(FRAME_Z_GROUP_ABOVE, FRAME_Z_GROUP_ABOVE_SUSPENDED)
110636	(FRAME_Z_GROUP_BELOW): New macros.
110637	(frame_ancestor_p): Add declaration.
110638	* src/gtkutil.c (xg_create_frame_widgets): Handle
110639	`undecorated' and `override-redirect' frame parameters.
110640	(x_wm_set_size_hint): None for child frames.
110641	(xg_set_undecorated, xg_frame_restack, xg_set_skip_taskbar)
110642	(xg_set_no_focus_on_map, xg_set_no_accept_focus)
110643	(xg_set_override_redirect): New functions.
110644	(xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
110645	Don't let scrollbars obscure child frames.
110646	* src/gtkutil.h: (xg_set_undecorated, xg_frame_restack)
110647	(xg_set_skip_taskbar, xg_set_no_focus_on_map)
110648	(xg_set_no_accept_focus, xg_set_override_redirect): Add extern
110649	declarations.
110650	* src/nsfns.m (ns_frame_parm_handlers): Add entries for new
110651	frame parameters.
110652	(Fx_create_frame): Install `min-width' and `min-height' frame
110653	parameters.
110654	* src/nsterm.m (mouseMoved:): Handle focus_follows_mouse change.
110655	* src/w32fns.c (WS_EX_NOACTIVATE): Define if necessary.
110656	(x_real_positions): Handle child frames.
110657	(x_set_menu_bar_lines): Don't for child frames.
110658	(x_set_undecorated, x_set_parent_frame, x_set_skip_taskbar)
110659	(x_set_no_focus_on_map, x_set_no_accept_focus)
110660	(x_set_z_group): New functions.
110661	(w32_createvscrollbar, w32_createhscrollbar): Don't draw
110662	scroll bars over child frames.
110663	(w32_createwindow): Handle new frame parameters and child frames.
110664	(w32_wnd_proc): Let mouse clicks into a child frame activate
110665	the frame.  Try to handle the `no-accept-focus' parameter.  Do
110666	SetFocus when our window is brought to top or becomes the
110667	foreground window.
110668	(w32_window): Don't initialize menu bar for child frames.
110669	(Fx_create_frame): Handle new frame parameters.
110670	(x_create_tip_frame): Set explicit_parent slot.
110671	(w32_dialog_in_progress): New function.
110672	(Fx_file_dialog): Handle `z-group-above' frames.
110673	(w32_frame_list_z_order, Fw32_frame_list_z_order)
110674	(w32_frame_restack, Fw32_frame_restack): New functions.
110675	(w32_frame_parm_handlers): Add entries for new frame
110676	parameters.
110677	* src/w32font.c (Fx_select_font): Handle `z-group-above'
110678	frames during font selection dialogue.
110679	* src/w32term.c (construct_mouse_wheel): Construct mouse wheel
110680	event from F's w32 window.
110681	(w32_mouse_position): Handle child frames.
110682	(w32_set_vertical_scroll_bar, w32_set_horizontal_scroll_bar):
110683	Don't draw scroll bars over child frames.
110684	(w32_read_socket): Always erase background of child frames.
110685	When generating SELECT_WINDOW_EVENTs handle new value of
110686	`focus-follows-mouse' and handle `no-accept-focus' parameter.
110687	Handle `mouse-wheel-frame' parameter.
110688	(x_calc_absolute_position, x_set_offset, x_set_window_size):
110689	Handle child frames.
110690	(x_make_frame_visible): Handle child frames specially.  Handle
110691	`no-focus-on-map' parameter.
110692	* src/w32term.h (w32_dialog_in_progress): Add external
110693	declaration.
110694	* src/xdisp.c (x_consider_frame_title, prepare_menu_bars): Not
110695	for child frames.
110696	* src/xfns.c (Xm/MwmUtil.h): Include for WM hints.
110697	(PropMotifWmHints, PROP_MOTIF_WM_HINTS_ELEMENTS): Define for
110698	non-Motif, non-GTK case.
110699	(x_real_pos_and_offsets): Handle child frames.
110700	(x_set_undecorated, x_set_parent_frame)
110701	(x_set_no_focus_on_map, x_set_no_accept_focus)
110702	(x_set_override_redirect): New functions.
110703	(x_set_menu_bar_lines): Not for child frames.
110704	(x_window): Handle `undecorated' and `override_redirect' cases.
110705	(Fx_create_frame): Handle new frame parameters.
110706	(frame_geometry): Handle child frames and outer border.
110707	(x_frame_list_z_order, Fx_frame_list_z_order)
110708	(x_frame_restack, Fx_frame_restack): New functions.
110709	(Fx_file_dialog, Fx_select_font): Set x_menu_set_in_use.
110710	(x_frame_parm_handlers): Add entries for new frame parameters.
110711	* src/xmenu.c (x_menu_set_in_use): Handle `z-group-above'
110712	frames.
110713	* src/xterm.c (x_set_frame_alpha): Don't set alpha of parent
110714	for child frames.
110715	(XTmouse_position): Handle child frames.
110716	(x_scroll_bar_create, x_scroll_bar_expose): Don't let scroll
110717	bars obscure child frames.
110718	(handle_one_xevent): Handle child frame positions.  If necessary
110719	set `skip-taskbar' and reassign proper `z-group' when we are
110720	mapped.  When generating SELECT_WINDOW_EVENTs handle new value
110721	of `focus-follows-mouse'.  Handle `mouse-wheel-frame' parameter.
110722	Let mouse clicks into a child frame activate the frame.
110723	(x_calc_absolute_position, x_set_offset): Handle child frames
110724	specially.
110725	(x_set_skip_taskbar, x_set_z_group): New functions.
110726	(x_make_frame_visible): Handle child frames.
110727	(ATOM_REFS_INIT): Add entries for
110728	Xatom_net_wm_state_skip_taskbar, Xatom_net_wm_state_above,
110729	Xatom_net_wm_state_below.
110730	* src/xterm.h (top-level): Declare Xatom_net_wm_state_above,
110731	Xatom_net_wm_state_below and Xatom_net_wm_state_skip_taskbar.
110732	(x_set_skip_taskbar, x_set_z_group): Add extern declarations.
110733
1107342017-04-11  Glenn Morris  <rgm@gnu.org>
110735
110736	Update a package test for hydra
110737
110738	* test/lisp/emacs-lisp/package-tests.el (with-package-test):
110739	Also bind package-gnupghome-dir, see eg
110740	http://hydra.nixos.org/build/51462182 .
110741
1107422017-04-11  Martin Rudalics  <rudalics@gmx.at>
110743
110744	Frame movement, focus and hook related changes
110745
110746	New hook `move-frame-functions'.  Run `focus-in-hook'
110747	after switching to frame that gets focus.  Don't run
110748	XMoveWindow for GTK.
110749
110750	* lisp/frame.el (handle-move-frame, frame-size-changed-p): New
110751	functions.
110752
110753	* src/frame.c (do_switch_frame): Simplify code.
110754	(Fhandle_switch_frame): Switch frame before running
110755	`handle-focus-in'.
110756	(Vfocus_in_hook, Vfocus_out_hook): Clarify doc-strings.
110757	(Vmove_frame_functions): New hook variable.
110758	* src/keyboard.c (kbd_buffer_get_event): Handle
110759	MOVE_FRAME_EVENT.  Handle SELECT_WINDOW_EVENT separately.
110760	(head_table): Add Qmove_frame entry.
110761	(syms_of_keyboard): Add Qmove_frame.
110762	(keys_of_keyboard): Define key for `move-frame'.
110763	* src/termhooks.h (event_kind): Add MOVE_FRAME_EVENT.
110764	* src/w32term.c (w32_read_socket): Create MOVE_FRAME_EVENT.
110765	* src/window.c (run_window_size_change_functions): Record size of
110766	FRAME's minibuffer window too.
110767	* src/xterm.c (handle_one_xevent): Create MOVE_FRAME_EVENT.
110768	(x_set_offset): For GTK call gtk_widget_move instead of
110769	XMoveWindow.
110770
1107712017-04-11  Werner LEMBERG  <wl@gnu.org>
110772
110773	Avoid abort in ftfont.c due to faulty fonts
110774
110775	* src/ftfont.c (ftfont_get_metrics): Try loading the font without
110776	hinting, before aborting.  (Bug#25945)
110777
1107782017-04-11  Eli Zaretskii  <eliz@gnu.org>
110779
110780	Document 'line-pixel-height'
110781
110782	* doc/lispref/display.texi (Size of Displayed Text): Document
110783	line-pixel-height.  Suggested by Tak Kunihiro
110784	<tkk@misasa.okayama-u.ac.jp>.  (Bug#26379)
110785
1107862017-04-11  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
110787
110788	Introduce customizable variable 'package-gnupghome-dir'
110789
110790	* lisp/emacs-lisp/package.el (package-import-keyring)
110791	(package--check-signature-content, package-check-signature):
110792	Use new variable package-gnupghome-dir to control which GnuPG
110793	homedir to use.
110794	* doc/emacs/package.texi: Mention package-gnupghome-dir.
110795	* etc/NEWS: Mention package-gnupghome-dir.
110796
1107972017-04-11  Martin Rudalics  <rudalics@gmx.at>
110798
110799	Set x_gtk_use_window_move by default for fixing bug#25851 and bug#25943
110800
110801	This activates a change that was installed a few weeks ago but whose
110802	ChangeLog was inadvertently dropped during its commit.  The proper
110803	ChangeLog is included below as part of the present commit.
110804
110805	* src/gtkutil.c (xg_set_geometry): When x_gtk_use_window_move
110806	is set avoid calling x_gtk_parse_geometry (Bug#25851).
110807	(x_wm_set_size_hint): When x_gtk_use_window_move is set, set
110808	PPosition, USPosition and USSize flags if requested.
110809	* src/xterm.c (x_set_offset): With GTK when
110810	x_gtk_use_window_move is set, leave it entirely to
110811	gtk_window_move to position the window and skip any
110812	post-adjustments (Bug#25851 and Bug#25943).
110813	(x_gtk_use_window_move): New variable.
110814
1108152017-04-10  Alan Mackenzie  <acm@muc.de>
110816
110817	Fix a loop in C Mode caused by inadequate analysis of comments.
110818
110819	After M-;, and the insertion of the opening "/*", the CC Mode after-change
110820	function got confused, since the new comment opener matched the end of a
110821	subsequent comment, but moving back over that comment did not come back to the
110822	starting point.  Fix this.
110823
110824	* lisp/progmodes/cc-engine.el (c-end-of-macro): Add a limit parameter, wherer
110825	point is left if no end-of-macro is found before it.
110826	(c-forward-sws): Change the `safe-start' mechanism.  Now `safe-start' is
110827	non-nil except where we have an unclosed block comment at the end of a macro.
110828	This enables us to populate the cache more fully, at the cost of some run
110829	time.
110830
1108312017-04-10  Lars Brinkhoff  <lars@nocrew.org>
110832
110833	Add PVSIZE function to return the size of a pseudovector.
110834
110835	* src/lisp.h (PVSIZE): New function.
110836
110837	* src/chartab.c (copy_char_table):
110838	* src/data.c (Ftype_of, Finteractive_form, Faref, Faset):
110839	* src/doc.c (Fdocumentation, store_function_docstring):
110840	* src/eval.c (Fcommandp, funcall_lambda, lambda_arity, Ffetch_bytecode):
110841	* src/fns.c (Flength, Fcopy_sequence):
110842	* src/font.h (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P):
110843	* src/lread.c (substitute_object_recurse):
110844	* src/print.c (print_object):
110845	  Use it.
110846
1108472017-04-10  Michael Albinus  <michael.albinus@gmx.de>
110848
110849	Add Tramp tests
110850
110851	* lisp/net/tramp.el (tramp-syntax): Adapt docstring.
110852
110853	* test/lisp/net/tramp-tests.el
110854	(tramp-test01-file-name-syntax-simplified)
110855	(tramp-test01-file-name-syntax-separate)
110856	(tramp-test02-file-name-dissect-simplified)
110857	(tramp-test02-file-name-dissect-separate): New tests.
110858
1108592017-04-10  Martin Rudalics  <rudalics@gmx.at>
110860
110861	Make sure that `shell' makes BUFFER current
110862
110863	* lisp/shell.el (shell): Restrict scope of recently added
110864	`with-current-buffer' to make sure that BUFFER is current when
110865	`shell' returns.
110866
1108672017-04-10  Jim Blandy  <jimb@red-bean.com>
110868
110869	Default to PCRE syntax when reading .hgignore
110870
110871	* lisp/vc/vc-hg.el (vc-hg--slurp-hgignore-1):
110872	Default to the PCRE syntax (bug#26249).
110873
1108742017-04-09  Michael Albinus  <michael.albinus@gmx.de>
110875
110876	Document Tramp changes
110877
110878	* doc/misc/tramp.texi (Change file name syntax): New node.
110879
110880	* etc/NEWS: Mention `tramp-change-syntax'.
110881
110882	* lisp/net/tramp.el (tramp-file-name-regexp): Reinsert it.
110883	External packages uses it.
110884	(tramp-syntax): Set also `tramp-file-name-regexp'.
110885
1108862017-04-09  Paul Eggert  <eggert@cs.ucla.edu>
110887
110888	Merge from gnulib (Bug#26398)
110889
110890	This incorporates:
110891	2017-04-08 getopt: prefer - to _ in new file names
110892	2017-04-08 getopt: port recent getopt changes to macOS
110893	* .gitignore: Add lib/getopt-cdefs.h.
110894	* lib/getopt-cdefs.in.h: Rename from lib/getopt_cdefs.in.h.
110895	* lib/getopt-core.h: Rename from lib/getopt_core.h.
110896	* lib/getopt-ext.h: Rename from lib/getopt_ext.h.
110897	* lib/getopt-pfx-core.h: Rename from lib/getopt_pfx_core.h.
110898	* lib/getopt-pfx-ext.h: Rename from lib/getopt_pfx_ext.h.
110899	* lib/getopt.in.h, lib/unistd.in.h, m4/getopt.m4:
110900	Copy from Gnulib.
110901	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
110902
1109032017-04-09  Ken Raeburn  <raeburn@raeburn.org>
110904
110905	Write updated loaddefs to a temporary file and rename into place.
110906
110907	In a parallel build, byte compilation can be running at the same times
110908	as loaddefs.el is being regenerated.  However, in a CANNOT_DUMP build,
110909	loaddefs.el is read at startup and must always be in a usable state.
110910
110911	* lisp/Makefile.in ($(lisp)/loaddefs.el): Write generated output to
110912	loaddefs.el.new and then rename it to loaddefs.el.
110913
1109142017-04-09  Glenn Morris  <rgm@gnu.org>
110915
110916	In the manual, mention pops and imaps
110917
110918	* doc/emacs/rmail.texi (Movemail, Remote Mailboxes):
110919	Mention pops and imaps protocols.
110920
1109212017-04-09  Glenn Morris  <rgm@gnu.org>
110922
110923	* doc/emacs/rmail.texi: Prefer @command to @code for movemail.
110924
1109252017-04-09  Sergey Poznyakoff  <gray@gnu.org>
110926
110927	Fix rmail handling of movemail protocols (bug#18278)
110928
110929	* lisp/mail/rmail.el (rmail-remote-proto-p): New function.
110930	(rmail-parse-url): Return protocol in second list element.
110931	Only use passwords with remote mailboxes.
110932	(rmail-insert-inbox-text): Handle non-simple local
110933	mailboxes (maildir, MH, etc.).
110934
1109352017-04-09  Glenn Morris  <rgm@gnu.org>
110936
110937	Fix typos in manual re movemail local mailboxes
110938
110939	* doc/emacs/rmail.texi (Movemail, Other Mailbox Formats):
110940	Fix examples of local mailbox urls.
110941
1109422017-04-08  Glenn Morris  <rgm@gnu.org>
110943
110944	* lisp/gnus/nnmail.el (nnmail-crosspost-link-function): Simplify.
110945
1109462017-04-08  Glenn Morris  <rgm@gnu.org>
110947
110948	Remove references to OS/2 in code, doc, and comments
110949
110950	* lisp/gnus/nnheader.el (nnheader-read-timeout)
110951	(nnheader-file-name-translation-alist): Remove OS/2 case, and simplify.
110952	* lisp/emulation/viper-util.el (viper-color-defined-p):
110953	* lisp/net/pop3.el (pop3-read-timeout):
110954	* lisp/net/imap.el (imap-read-timeout):
110955	* lisp/url/url-privacy.el (url-setup-privacy-info): Remove OS/2 case.
110956	* lisp/emulation/viper-ex.el (viper-glob-function):
110957	* lisp/vc/ediff-util.el (ediff-submit-report): Doc fix.
110958	* lisp/cus-edit.el (custom-display): Remove "pm" (OS/2).
110959	* doc/emacs/msdos-xtra.texi (MS-DOS):
110960	* doc/misc/gnus.texi (Various Various):
110961	* doc/misc/viper.texi (Rudimentary Changes): Remove mentions of OS/2.
110962
1109632017-04-08  Michael Albinus  <michael.albinus@gmx.de>
110964
110965	Tune Tramp syntax
110966
110967	* lisp/net/tramp-cmds.el (tramp-change-syntax):
110968	Use `tramp-syntax-values'.
110969
110970	* lisp/net/tramp-compat.el (tramp-compat-tramp-syntax): New defsubst.
110971
110972	* lisp/net/tramp.el (tramp-syntax): Rename possible values.
110973	(tramp-syntax-values): New defun.
110974	(tramp-prefix-format, tramp-method-regexp)
110975	(tramp-postfix-method-format, tramp-prefix-ipv6-format)
110976	(tramp-postfix-ipv6-format, tramp-postfix-host-format)
110977	(tramp-completion-file-name-regexp): Use `tramp-compat-tramp-syntax'
110978	and changed values.
110979	(tramp-completion-file-name-regexp-default): Rename from
110980	`tramp-completion-file-name-regexp-unified'.  Adapt docstring.
110981	(tramp-completion-file-name-regexp-simplified): Rename from
110982	`tramp-completion-file-name-regexp-old-style'.  Adapt docstring.
110983	(tramp-initial-completion-file-name-regexp):
110984	Use `tramp-completion-file-name-regexp-default'.
110985	(tramp-run-real-handler): Do not autoload any longer.
110986
1109872017-04-08  Mark Oteiza  <mvoteiza@udel.edu>
110988
110989	Replace more nested ifs with cond
110990
110991	This is a continuation of d526047 "Replace more nested ifs with cond".
110992	* lisp/play/dunnet.el (dun-firstword, dun-firstwordl, dun-cat): Use
110993	when and cond where appropriate.
110994
1109952017-04-08  Mark Oteiza  <mvoteiza@udel.edu>
110996
110997	Adjust the edebug spec of if-let*
110998
110999	This was fixed in Bug#24748, but now looking more closely, using gate in
111000	the spec seems correct.  See (info "(elisp) Backtracking").
111001	* lisp/emacs-lisp/subr-x.el (if-let*): Use gate in edebug spec.
111002
1110032017-04-08  Mark Oteiza  <mvoteiza@udel.edu>
111004
111005	Replace some uses of cl-member-if with apply
111006
111007	From the mhtml-mode series.  Some of the uses of cl-lib are not
111008	necessary.
111009	* lisp/align.el: Don't require cl-lib.
111010	(align-region): Use apply instead of cl-member-if.
111011	* lisp/emulation/viper.el: Don't require cl-lib.
111012	(viper-mode, this-major-mode-requires-vi-state): Use apply instead of
111013	cl-member-if.
111014
1110152017-04-08  Philipp Stephani  <phst@google.com>
111016
111017	Validate SPEC of `dolist', cf. Bug#25477.
111018
111019	* lisp/subr.el (dolist): Test type and length of SPEC.
111020	* test/lisp/subr-tests.el (subr-tests--dolist--wrong-number-of-args):
111021	Add unit test.
111022
1110232017-04-08  Philipp Stephani  <phst@google.com>
111024
111025	Add unit test for Bug#26378
111026
111027	* test/lisp/vc/ediff-diff-tests.el
111028	(ediff-diff-tests--ediff-exec-process--nil): New unit test.
111029
1110302017-04-08  Lars Brinkhoff  <lars@nocrew.org>
111031
111032	Fix circular read syntax for records.
111033
111034	* src/lread.c (substitute_object_recurse): Work with records.
111035
111036	* test/src/lread-tests.el (lread-record-1): New test.
111037
1110382017-04-08  Paul Eggert  <eggert@cs.ucla.edu>
111039
111040	Deprecate copy-record in favor of copy-sequence
111041
111042	Since copy-sequence seems to be needed anyway for records, have it
111043	work on records, and remove copy-record as being superfluous.
111044	* doc/lispref/records.texi (Records, Record Functions):
111045	* lisp/emacs-lisp/cl-macs.el (cl-defstruct):
111046	* lisp/emacs-lisp/eieio.el (make-instance, clone):
111047	* test/src/alloc-tests.el (record-3):
111048	Use copy-sequence, not copy-record, to copy records.
111049	* doc/lispref/sequences.texi (Sequence Functions)
111050	(Array Functions): Document that aref and copy-sequence
111051	work on records.
111052	* etc/NEWS: Omit copy-record.
111053	* src/alloc.c (Fcopy_record): Remove.
111054	* src/data.c (Faref): Document that arg can be a record.
111055	* src/fns.c (Fcopy_sequence): Copy records, too.
111056
1110572017-04-08  Paul Eggert  <eggert@cs.ucla.edu>
111058
111059	Fix dependency checking in src/Makefile.in
111060
111061	* src/Makefile.in (AUTO_DEPEND, DEPDIR, DEPFLAGS): Move includes of
111062	dependency files until after ALLOBJS is defined, since it uses ALLOBJS.
111063	Otherwise, some dependencies will be missed.
111064
1110652017-04-08  Paul Eggert  <eggert@cs.ucla.edu>
111066
111067	Minor tuneup of write-region change
111068
111069	* src/fileio.c (write_region): Use SCHARS, not Flength,
111070	on a value known to be a string.
111071
1110722017-04-08  Noam Postavsky  <npostavs@gmail.com>
111073
111074	Adjust write-region so file name is at the beginning again
111075
111076	* lisp/epa-file.el (epa-file-write-region):
111077	* lisp/gnus/mm-util.el (mm-append-to-file):
111078	* lisp/jka-compr.el (jka-compr-write-region):
111079	* lisp/net/ange-ftp.el (ange-ftp-write-region):
111080	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
111081	* lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
111082	* src/fileio.c (write_region): Put file name at the beginning and move
111083	number of characters to the end of the message.
111084
1110852017-04-08  Kaushal Modi  <kaushal.modi@gmail.com>
111086
111087	Check that file argument is a string
111088
111089	* lisp/vc/ediff-diff.el (ediff-exec-process): Check that the argument
111090	  passed to `file-local-copy' is a string (Bug#26378).  Also fix
111091	  the existing comment for this function, and convert it to its
111092	  doc-string.
111093
1110942017-04-08  Noam Postavsky  <npostavs@gmail.com>
111095
111096	Fix handling of non-integer START param to write-region
111097
111098	The previous patch for Bug#354 incorrectly assumed that START would
111099	always be an integer.
111100
111101	* lisp/epa-file.el (epa-file-write-region):
111102	* lisp/jka-compr.el (jka-compr-write-region):
111103	* lisp/net/ange-ftp.el (ange-ftp-write-region):
111104	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
111105	* lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
111106	* src/fileio.c (write_region): Handle nil and string values of START.
111107
1111082017-04-07  Glenn Morris  <rgm@gnu.org>
111109
111110	* lisp/textmodes/rst.el (rst-package-emacs-version-alist): Fixes.
111111
1111122017-04-07  Michael Albinus  <michael.albinus@gmx.de>
111113
111114	Add Tramp versions to `customize-package-emacs-version-alist'
111115
111116	* lisp/net/trampver.el (customize-package-emacs-version-alist):
111117	Add Tramp versions to `customize-package-emacs-version-alist'.
111118
1111192017-04-07  Tom Tromey  <tom@tromey.com>
111120
111121	* lisp/textmodes/rst.el (rst-toc-link-keymap): Move before first use.
111122
1111232017-04-07  Lars Brinkhoff  <lars@nocrew.org>
111124
111125	* doc/lispref/records.texi (Record Functions): fix typo.
111126
1111272017-04-07  Paul Eggert  <eggert@cs.ucla.edu>
111128
111129	More casefiddle minor fixes
111130
111131	* src/casefiddle.c (case_character_impl): Omit unnecessary casts.
111132	(case_character_impl): Avoid reevaluation of CHAR_TABLE_REF.
111133	(GREEK_CAPITAL_LETTER_SIGMA): Fix typo in my previous change.
111134
1111352017-04-07  Jeff Clough  <kb1vqh@gmail.com>
111136
111137	Output number of characters added to file (Bug#354)
111138
111139	* src/fileio.c (write_region):
111140	* lisp/epa-file.el (epa-file-write-region):
111141	* lisp/jka-compr.el (jka-compr-write-region):
111142	* lisp/net/ange-ftp.el (ange-ftp-write-region):
111143	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
111144	* lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
111145	* lisp/gnus/mm-util.el (mm-append-to-file): Functions now output
111146	characters written in addition to file name.
111147	* doc/lispref/files.texi: Added documentation to write-region and
111148	append-to-file describing their output.
111149
1111502017-04-07  Noam Postavsky  <npostavs@users.sourceforge.net>
111151
111152	Fix ‘!NILP (Vpurify_flag)’ assertion failure during temacs bootstrap
111153
111154	The recent changes to src/casefiddle.c cause build failure as seen
111155	below:
111156
111157	    Starting program: /home/npostavs/src/emacs/emacs-bootstrapping/src/temacs
111158		--batch --load loadup bootstrap
111159	    [Thread debugging using libthread_db enabled]
111160	    Using host libthread_db library "/usr/lib/libthread_db.so.1".
111161	    Loading loadup.el (source)...
111162	    Using load-path (/home/npostavs/src/emacs/emacs-bootstrapping/lisp
111163		/home/npostavs/src/emacs/emacs-bootstrapping/lisp/emacs-lisp
111164		/home/npostavs/src/emacs/emacs-bootstrapping/lisp/language
111165		/home/npostavs/src/emacs/emacs-bootstrapping/lisp/international
111166		/home/npostavs/src/emacs/emacs-bootstrapping/lisp/textmodes
111167		/home/npostavs/src/emacs/emacs-bootstrapping/lisp/vc)
111168	    Loading emacs-lisp/byte-run (source)...
111169	    Loading emacs-lisp/backquote (source)...
111170	    Loading subr (source)...
111171	    Loading version (source)...
111172	    Loading widget (source)...
111173	    Loading custom (source)...
111174	    Loading emacs-lisp/map-ynp (source)...
111175	    Loading international/mule (source)...
111176	    Loading international/mule-conf (source)...
111177
111178	    lread.c:3914: Emacs fatal error: assertion failed: !NILP (Vpurify_flag)
111179
111180	    Breakpoint 1, terminate_due_to_signal at emacs.c:363
111181	    363	  signal (sig, SIG_DFL);
111182	    (gdb) bt
111183	    #0  0x0000000000579826 in terminate_due_to_signal at emacs.c:363
111184	    #1  0x000000000060ec33 in die at alloc.c:7352
111185	    #2  0x000000000066db40 in intern_c_string_1 at lread.c:3914
111186	    #3  0x0000000000576884 in intern_c_string at lisp.h:3790
111187	    #4  0x00000000005dc84f in prepare_casing_context at casefiddle.c:69
111188	    #5  0x00000000005dd37f in casify_object at casefiddle.c:311
111189	    #6  0x00000000005dd47f in Fcapitalize at casefiddle.c:356
111190	    #7  0x00000000006325ac in eval_sub at eval.c:2219
111191	    #8  0x0000000000632368 in eval_sub at eval.c:2184
111192	    #9  0x000000000063446c in apply_lambda at eval.c:2875
111193	    #10 0x00000000006329af in eval_sub at eval.c:2294
111194	    #11 0x000000000062d462 in Fprogn at eval.c:449
111195	    #12 0x000000000062d4cf in prog_ignore at eval.c:461
111196	    #13 0x000000000062f19c in Fwhile at eval.c:982
111197	    #14 0x00000000006321f4 in eval_sub at eval.c:2172
111198	    #15 0x000000000062d462 in Fprogn at eval.c:449
111199	    #16 0x000000000062f0c4 in Flet at eval.c:963
111200	    #17 0x00000000006321f4 in eval_sub at eval.c:2172
111201	    #18 0x0000000000632963 in eval_sub at eval.c:2290
111202	    #19 0x000000000062d462 in Fprogn at eval.c:449
111203	    #20 0x000000000062f0c4 in Flet at eval.c:963
111204	    #21 0x00000000006321f4 in eval_sub at eval.c:2172
111205	    #22 0x0000000000668caa in readevalloop at lread.c:1927
111206	    #23 0x0000000000667253 in Fload at lread.c:1332
111207	    #24 0x0000000000632683 in eval_sub at eval.c:2233
111208	    #25 0x0000000000668caa in readevalloop at lread.c:1927
111209	    #26 0x0000000000667253 in Fload at lread.c:1332
111210	    #27 0x0000000000632683 in eval_sub at eval.c:2233
111211	    #28 0x0000000000631be5 in Feval at eval.c:2041
111212	    #29 0x000000000057e1af in top_level_2 at keyboard.c:1121
111213	    #30 0x000000000062ffc7 in internal_condition_case at eval.c:1324
111214	    #31 0x000000000057e1f0 in top_level_1 at keyboard.c:1129
111215	    #32 0x000000000062f51e in internal_catch at eval.c:1091
111216	    #33 0x000000000057e0ea in command_loop at keyboard.c:1090
111217	    #34 0x000000000057d6d5 in recursive_edit_1 at keyboard.c:697
111218	    #35 0x000000000057d8b4 in Frecursive_edit at keyboard.c:768
111219	    #36 0x000000000057b55b in main at emacs.c:1687
111220
111221	    Lisp Backtrace:
111222	    "capitalize" (0xffffcf70)
111223	    "format" (0xffffd130)
111224	    "define-charset" (0xffffd370)
111225	    "while" (0xffffd560)
111226	    "let" (0xffffd7c0)
111227	    "dolist" (0xffffd910)
111228	    "let" (0xffffdb70)
111229	    "load" (0xffffdfe0)
111230	    "load" (0xffffe4a0)
111231
111232	* src/casefiddle.c (syms_of_casefiddle): Declare four new symbols:
111233	Qtitlecase, Qspecial_uppercase, Qspecial_lowercase and
111234	Qspecial_titlecase.
111235	(prepare_casing_context): Use aforementioned symbols.
111236
1112372017-04-07  Paul Eggert  <eggert@cs.ucla.edu>
111238
111239	Merge from gnulib
111240
111241	This merges some getopt fixes from Zack Weinberg, and affects only
111242	non-GNUish platforms.  It incorporates:
111243	2017-04-06 getopt-gnu: omit some duplicate code
111244	2017-04-06 getopt-posix: use angle-bracket include
111245	2017-04-06 getopt: annotate files with relationship to glibc
111246	2017-04-06 getopt: split up getopt.in.h and eliminate __need_getopt
111247	2017-04-06 getopt: better handling of ambiguous options
111248	2017-04-06 getopt: refactor long-option handling
111249	2017-04-06 getopt: tidy up _getopt_initialize a bit
111250	2017-04-06 getopt: merge from glibc: repetition reduction
111251	2017-04-06 getopt: clean up error reporting
111252	2017-04-06 getopt: fix fencepost error in ambiguous-W-option handling
111253	2017-04-06 getopt: clean up getopt.c and getopt1.c file headers
111254	2017-04-06 getopt: harmonize comments with glibc
111255	2017-04-06 getopt: remove USE_NONOPTION_FLAGS
111256	2017-04-06 getopt: tabify, in preparation for merge with glibc
111257	2017-04-06 md5, sha1, sha256, sha512: Add comments re correctness
111258	* build-aux/config.sub, doc/misc/texinfo.tex, lib/getopt.c:
111259	* lib/getopt.in.h, lib/getopt1.c, lib/getopt_int.h, lib/md5.c:
111260	* lib/md5.h, lib/sha1.c, lib/sha1.h, lib/sha256.c, lib/sha256.h:
111261	* lib/sha512.c, lib/sha512.h, lib/unistd.in.h, m4/getopt.m4:
111262	Copy from gnulib.
111263	* lib/getopt_cdefs.in.h, lib/getopt_core.h, lib/getopt_ext.h:
111264	* lib/getopt_pfx_core.h, lib/getopt_pfx_ext.h:
111265	New files, taken from gnulib.
111266	* lib/gnulib.mk.in, m4/gnulib-comp.m4:
111267	Regenerate.
111268
1112692017-04-07  Hong Xu  <hong@topbug.net>
111270
111271	* src/search.c (Fre_search_forward, Fre_search_backward): Improve
111272	doc (Bug#25193).
111273
1112742017-04-07  Noam Postavsky  <npostavs@gmail.com>
111275
111276	Mention that processes start in default-directory (Bug#18515)
111277
111278	* doc/lispref/processes.texi (Synchronous Processes):
111279	(Asynchronous Processes):
111280	* lisp/subr.el (start-process):
111281	* src/callproc.c (call-process): Mention that the subprocess starts in
111282	`default-directory' when local, suggest `start-file-process' and
111283	`process-file' otherwise.
111284
1112852017-04-07  Noam Postavsky  <npostavs@gmail.com>
111286
111287	* src/xdisp.c (vmessage, message): Clarify commentary.
111288
1112892017-04-07  Paul Eggert  <eggert@cs.ucla.edu>
111290
111291	Minor casefiddle.c cleanups
111292
111293	* src/casefiddle.c: Redo recent changes to match GNU style,
111294	and prefer C99-style decls within blocks.
111295	(GREEK_CAPITAL_LETTER_SIGMA): Rename from CAPITAL_SIGMA, so that
111296	we are merely using the Unicode name, and make it a constant
111297	rather than a macro.  All uses changed.
111298	(SMALL_SIGMA): Remove; unused.
111299	(GREEK_SMALL_LETTER_FINAL_SIGMA): Rename from SMALL_FINAL_SIGMA,
111300	and make it a constant rather than a macro.  All uses changed.
111301	(do_casify_multibyte_string): Use ‘verify’ rather than an
111302	unportable static_assertion local.
111303
1113042017-04-07  Paul Eggert  <eggert@cs.ucla.edu>
111305
111306	* lisp/international/README: Update to match current list.
111307
1113082017-04-06  Paul Eggert  <eggert@cs.ucla.edu>
111309
111310	Fix 'make clean' in lib subdirectory
111311
111312	* lib/Makefile.in (clean): Remove *-t files.
111313	(mostlyclean): Remove MOSTLYCLEANFILES that are not *-t files.
111314	This removes files like lib/getopt.h that should be removed
111315	even if this configuration did not need to build them.
111316	(maintainer-clean): Remove TAGS here, not in distclean,
111317	to be consistent with ../src/Makefile.in.
111318
1113192017-04-06  Michael Albinus  <michael.albinus@gmx.de>
111320
111321	Add new Tramp syntax
111322
111323	* lisp/net/tramp-cmds.el (tramp-change-syntax): New defun.
111324
111325	* lisp/net/tramp.el (tramp-syntax): Change default to `def'.
111326	Add :set function.
111327	(tramp-prefix-port-format): Simplify.
111328	(tramp-file-name-regexp-separate): Remove.
111329	(tramp-initial-file-name-regexp)
111330	(tramp-completion-file-name-regexp-old-style)
111331	(tramp-initial-completion-file-name-regexp): New defconst.
111332	(tramp-prefix-format, tramp-prefix-regexp)
111333	(tramp-method-regexp, tramp-postfix-method-format)
111334	(tramp-postfix-method-regexp, tramp-prefix-ipv6-format)
111335	(tramp-prefix-ipv6-regexp, tramp-postfix-ipv6-format)
111336	(tramp-postfix-ipv6-regexp)
111337	(tramp-postfix-host-format, tramp-postfix-host-regexp)
111338	(tramp-remote-file-name-spec-regexp)
111339	(tramp-file-name-structure, tramp-file-name-regexp)
111340	(tramp-completion-file-name-regexp)
111341	(tramp-rfn-eshadow-update-overlay-regexp): Change them to be defuns.
111342	(tramp-tramp-file-p, tramp-find-method)
111343	(tramp-dissect-file-name, tramp-make-tramp-file-name)
111344	(tramp-completion-make-tramp-file-name)
111345	(tramp-rfn-eshadow-update-overlay)
111346	(tramp-register-autoload-file-name-handlers)
111347	(tramp-register-file-name-handlers)
111348	(tramp-unload-file-name-handlers)
111349	(tramp-completion-handle-file-name-all-completions)
111350	(tramp-completion-dissect-file-name, tramp-clear-passwd):
111351	* lisp/net/tramp-ftp.el (tramp-ftp-file-name-handler):
111352	* lisp/net/tramp-sh.el (tramp-sh-handle-vc-registered)
111353	(tramp-compute-multi-hops): Use them.
111354
1113552017-04-06  Michal Nazarewicz  <mina86@mina86.com>
111356
111357	Implement special sigma casing rule  (bug#24603)
111358
111359	In Greek, a sigma character has two lower case forms which depend on
111360	their position in the word.  Implement logic determining it.
111361
111362	* src/casefiddle.c (struct casing_context, case_character_impl): Don’t
111363	assume inword is true when flag is CASE_UP and false when flag is
111364	CASE_DOWN.  For final sigma detection we need this information tracked
111365	reliably;.
111366	(CAPITAL_SIGMA, SMALL_SIGMA, SMALL_FINAL_SIGMA): New macros defining
111367	Unicode code point of different forms of sigma letter.
111368	(case_character): Implement support for final sigma casing.
111369	(do_casify_multibyte_string, do_casify_multibyte_region): Update after
111370	changes to case_character.
111371
111372	* test/src/casefiddle-tests.el (casefiddle-tests-casing): Add test
111373	cases for final sigma.
111374
1113752017-04-06  Michal Nazarewicz  <mina86@mina86.com>
111376
111377	Support casing characters which map into multiple code points  (bug#24603)
111378
111379	Implement unconditional special casing rules defined in Unicode standard.
111380
111381	Among other things, they deal with cases when a single code point is
111382	replaced by multiple ones because single character does not exist (e.g.
111383	‘fi’ ligature turning into ‘FL’) or is not commonly used (e.g. ß turning
111384	into SS).
111385
111386	* admin/unidata/SpecialCasing.txt: New data file pulled from Unicode
111387	standard distribution.
111388	* admin/unidata/README: Mention SpecialCasing.txt.
111389
111390	* admin/unidata/unidata-gen.el (unidata-gen-table-special-casing,
111391	unidata-gen-table-special-casing--do-load): New functions generating
111392	‘special-uppercase’, ‘special-lowercase’ and ‘special-titlecase’
111393	character Unicode properties built from the SpecialCasing.txt Unicode
111394	data file.
111395
111396	* src/casefiddle.c (struct casing_str_buf): New structure for
111397	representing short strings used to handle one-to-many character
111398	mappings.
111399
111400	(case_character_imlp): New function which can handle one-to-many
111401	character mappings.
111402	(case_character, case_single_character): Wrappers for the above
111403	functions.  The former may map one character to multiple (or no)
111404	code points while the latter does what the former used to do (i.e.
111405	handles one-to-one mappings only).
111406
111407	(do_casify_natnum, do_casify_unibyte_string,
111408	do_casify_unibyte_region): Use case_single_character.
111409	(do_casify_multibyte_string, do_casify_multibyte_region): Support new
111410	features of case_character.
111411	* (do_casify_region): Updated to reflact do_casify_multibyte_string
111412	changes.
111413
111414	(casify_word): Handle situation when one character-length of a word
111415	can change affecting where end of the word is.
111416
111417	(upcase, capitalize, upcase-initials): Update documentation to mention
111418	limitations when working on characters.
111419
111420	* test/src/casefiddle-tests.el (casefiddle-tests-char-properties):
111421	Add test cases for the newly introduced character properties.
111422	(casefiddle-tests-casing): Update test cases which are now passing.
111423
111424	* test/lisp/char-fold-tests.el (char-fold--ascii-upcase,
111425	char-fold--ascii-downcase): New functions which behave like old ‘upcase’
111426	and ‘downcase’.
111427	(char-fold--test-match-exactly): Use the new functions.  This is needed
111428	because otherwise fi and similar characters are turned into their multi-
111429	-character representation.
111430
111431	* doc/lispref/strings.texi: Describe issue with casing characters versus
111432	strings.
111433	* doc/lispref/nonascii.texi: Describe the new character properties.
111434
1114352017-04-06  Michal Nazarewicz  <mina86@mina86.com>
111436
111437	Split up casify_region function  (bug#24603)
111438
111439	No functional changes at this time but splitting casify_region into
111440	a function dealing with multibyte and another dealing with unibyte
111441	buffers will make future code changes slightly easier.
111442
111443	* src/casefiddle.c (casify_region): Move most of the code into two
111444	new functions:
111445	(do_casify_multibyte_region, do_casify_unibyte_region): new functions.
111446
1114472017-04-06  Michal Nazarewicz  <mina86@mina86.com>
111448
111449	Add support for title-casing letters  (bug#24603)
111450
111451	* src/casefiddle.c (struct casing_context, prepare_casing_context): Add
111452	titlecase_char_table member.  It’s set to the ‘titlecase’ Unicode
111453	property table if capitalization has been requested.
111454	(case_character): Make use of the titlecase_char_table to title-case
111455	initial characters when capitalising.
111456
111457	* test/src/casefiddle-tests.el (casefiddle-tests--characters,
111458	casefiddle-tests-casing): Update test cases which are now passing.
111459
1114602017-04-06  Michal Nazarewicz  <mina86@mina86.com>
111461
111462	Introduce case_character function
111463
111464	Move single-character casing logic into a separate function so that
111465	it is collected in a single place.  This will make future changes to
111466	the logic easier.  This commit introduces no functionality changes.
111467
111468	* src/casefiddle.c (struct casing_context, prepare_casing_context): New
111469	structure for saving casing context and function to initialize it.
111470	(case_character): New function which cases character base on provided
111471	context.
111472	(do_casify_integer, do_casify_multibyte_string,
111473	do_casify_unibyte_string, casify_object, casify_region): Convert to
111474	use casing_context and case_character.
111475
1114762017-04-06  Michal Nazarewicz  <mina86@mina86.com>
111477
111478	Split casify_object into multiple functions
111479
111480	casify_object had three major cases to cover and those were mostly
111481	independent of each other.  Move those branches to separate function
111482	so it’s easier to comprehend each individual case.
111483
111484	While at it, use somewhat more descriptive ch and cased variable names
111485	rather than c and c1.
111486
111487	This commit introduces no functional changes.
111488
111489	* src/casefiddle.c (casify_object): Split into…
111490	(do_casify_integer, do_casify_multibyte_string,
111491	do_casify_unibyte_string): …new functions.
111492
1114932017-04-06  Lars Brinkhoff  <lars@nocrew.org>
111494
111495	Update documentation for type semantics of records.
111496
111497	* doc/lispref/objects.texi (Record Type): improve description of what
111498	`type-of' returns for records.
111499	(Type Descriptors): new section.
111500	* doc/lispref/elisp.texi: reference it.
111501	* doc/lispref/records.texi (Records): reference it.  Document
111502	behavior when type slot is a record.
111503
111504	* admin/alloc-colors.c (Fmake_record, Frecord): mention type desciptors.
111505
1115062017-04-06  Stefan Monnier  <monnier@iro.umontreal.ca>
111507
111508	* lisp/help-fns.el (describe-symbol): `nil' is not an interesting default.
111509
1115102017-04-06  Tom Tromey  <tom@tromey.com>
111511
111512	require cl-lib to fix fallout from mhtml series
111513
111514	* lisp/align.el, lisp/calc/calc-embed.el, lisp/cedet/semantic.el,
111515	lisp/emulation/viper.el: Require cl-lib.
111516
1115172017-04-06  Ken Raeburn  <raeburn@raeburn.org>
111518
111519	In CANNOT_DUMP builds, allow editing of files named "dump".
111520
111521	* lisp/loadup.el: Perform the "dump" or "bootstrap" actions like
111522	calling dump-emacs only if dump-emacs is defined; otherwise, don't
111523	treat those command-line argument specially.
111524
1115252017-04-06  Ken Raeburn  <raeburn@raeburn.org>
111526
111527	In CANNOT_DUMP builds, don't prepare for unexec.
111528
111529	Having a command-line argument of "dump" or "bootstrap" would trigger
111530	behavior like not installing signal handlers.  In CANNOT_DUMP modes,
111531	we should get signal handlers installed regardless of whatever funny
111532	file names we decide to edit.
111533
111534	src/emacs.c (main) [CANNOT_DUMP]: Don't enable the "dumping"
111535	alterations to initialization that prepares the process for unexec.
111536
1115372017-04-06  Ken Raeburn  <raeburn@raeburn.org>
111538
111539	Allow a CANNOT_DUMP build to use exec-path during bootstrap.
111540
111541	During a bootstrap, loading rmail.el invokes movemail to determine its
111542	flavor, but call-process doesn't work if exec-path is nil.
111543
111544	* lisp/loadup.el: Only clear exec-path if dumping.
111545
1115462017-04-06  Ken Raeburn  <raeburn@raeburn.org>
111547
111548	Fix CANNOT_DUMP build on Darwin/macOS.
111549
111550	* src/conf_post.h (malloc, realloc, free) [DARWIN_OS && emacs &&
111551	CANNOT_DUMP]: Don't define as unexec_malloc, etc.
111552	* src/emacs.c (main): Don't call unexec_init_emacs_zone.
111553
1115542017-04-05  Tom Tromey  <tom@tromey.com>
111555
111556	add two more mhtml tests
111557
111558	* test/manual/indent/html-multi-2.html: New file.
111559	* test/manual/indent/html-multi-3.html: New file.
111560
1115612017-04-05  Tom Tromey  <tom@tromey.com>
111562
111563	enable mhtml-mode by default
111564
111565	* lisp/files.el (auto-mode-alist): Reference mhtml-mode, not
111566	html-mode.
111567	(magic-fallback-mode-alist): Likewise.
111568	* lisp/net/eww.el (eww-view-source): Use mthml-mode.
111569
1115702017-04-05  Tom Tromey  <tom@tromey.com>
111571
111572	add mhtml-mode.el
111573
111574	* etc/NEWS: Update.
111575	* lisp/textmodes/mhtml-mode.el: New file.
111576	* test/manual/indent/html-multi.html: New file.
111577	* test/lisp/textmodes/mhtml-mode-tests.el: New file.
111578	* doc/emacs/text.texi (HTML Mode): Mention mhtml-mode.
111579
1115802017-04-05  Tom Tromey  <tom@tromey.com>
111581
111582	change sgml-mode to help multi-html mode
111583
111584	* lisp/textmodes/sgml-mode.el (sgml-syntax-propertize-rules): New
111585	defconst.
111586	(sgml-syntax-propertize): Use it.
111587	(sgml--find-<>-backward): New function.
111588	(sgml-parse-tag-backward): Use it.
111589
1115902017-04-05  Tom Tromey  <tom@tromey.com>
111591
111592	make js.el respect prog-first-column
111593
111594	* lisp/progmodes/js.el (js--proper-indentation): Call prog-first-column.
111595
1115962017-04-05  Tom Tromey  <tom@tromey.com>
111597
111598	make smie.el respect prog-first-column
111599
111600	* lisp/emacs-lisp/smie.el (smie-indent-bob): Call prog-first-column.
111601
1116022017-04-05  Tom Tromey  <tom@tromey.com>
111603
111604	change viper to use derived-mode-p
111605
111606	* lisp/subr.el (provided-mode-derived-p): New function.
111607	(derived-mode-p): Use it.
111608	* lisp/emulation/viper.el (viper-mode): Use derived-mode-p.
111609	(this-major-mode-requires-vi-state): Use provided-mode-derived-p.
111610	(set-viper-state-in-major-mode): Use derived-mode-p.
111611
1116122017-04-05  Tom Tromey  <tom@tromey.com>
111613
111614	change align to use derived-mode-p
111615
111616	* lisp/align.el (align-region): Use derived-mode-p.
111617
1116182017-04-05  Tom Tromey  <tom@tromey.com>
111619
111620	change org to use derived-mode-p
111621
111622	* lisp/org/org-list.el (org-list-insert-radio-list): Use
111623	derived-mode-p.
111624	* lisp/org/org-table.el (orgtbl-setup, orgtbl-toggle-comment): Use
111625	derived-mode-p.
111626
1116272017-04-05  Tom Tromey  <tom@tromey.com>
111628
111629	change semantic to use derived-mode-p
111630
111631	* lisp/cedet/semantic.el (semantic-new-buffer-fcn): Use derived-mode-p.
111632
1116332017-04-05  Tom Tromey  <tom@tromey.com>
111634
111635	change calc to use derived-mode-p
111636
111637	* lisp/calc/calc-embed.el (calc-embedded-find-modes)
111638	(calc-embedded-make-info): Use derived-mode-p.
111639
1116402017-04-05  Tom Tromey  <tom@tromey.com>
111641
111642	change auto-insert to use derived-mode-p
111643
111644	* lisp/autoinsert.el (auto-insert): Use derived-mode-p.
111645
1116462017-04-05  Paul Eggert  <eggert@cs.ucla.edu>
111647
111648	* lisp/info.el (Info-search): Fix typo in April 1 change.
111649
1116502017-04-05  Paul Eggert  <eggert@cs.ucla.edu>
111651
111652	Minor cleanups related to type-of
111653
111654	* src/data.c (Frecordp): Rename from Frecordp_p, for consistency.
111655	* src/data.c (syms_of_data):
111656	* src/frame.c (syms_of_frame): Put all the primitive type names
111657	together, under the "Types that type-of returns" comment.
111658
1116592017-04-05  Glenn Morris  <rgm@gnu.org>
111660
111661	* doc/lispref/package.texi (Package Archives): Mention https.
111662
1116632017-04-05  Glenn Morris  <rgm@gnu.org>
111664
111665	Advertise https for homepage of gnu.org packages
111666
111667	* lisp/emacs-lisp/package.el (describe-package-1):
111668	Use https, if supported, for the homepage of packages on gnu.org.
111669
1116702017-04-05  Glenn Morris  <rgm@gnu.org>
111671
111672	Default to https for elpa.gnu.org if gnutls available
111673
111674	* lisp/emacs-lisp/package.el (package-archives):
111675	Default to https for elpa.gnu.org if gnutls is available.  Ref:
111676	https://lists.gnu.org/r/emacs-devel/2015-05/msg00130.html
111677
1116782017-04-04  Paul Eggert  <eggert@cs.ucla.edu>
111679
111680	Minor simplifications and doc for records
111681
111682	* doc/lispref/records.texi (Records): Mention size limit.
111683	* etc/NEWS: Mention records.
111684	* src/alloc.c (allocate_pseudovector, allocate_record):
111685	Prefer 'PSEUDOVECTOR_SIZE_MASK' to its definiens.
111686	(allocate_record): Check arg range here, not in callers, as this
111687	simplifies the code.  Use allocate_vectorlike instead of
111688	allocate_vector, to avoid duplicate runtime tests.
111689	(Fmake_record, record): Don't mention PSEUDOVECTOR_SIZE_BITS in
111690	the doc string, as it is not visible to the user.
111691	(Fmake_record, record, Fcopy_record):
111692	Prefer make_lisp_ptr to XSETVECTOR.
111693	(record): Broaden memcpy to copy the type, too.
111694
1116952017-04-04  Eli Zaretskii  <eliz@gnu.org>
111696
111697	Fix recent changes in record data type
111698
111699	* src/alloc.c (Fmake_record, Frecord, Fcopy_record): Avoid
111700	compiler warnings when 'ptrdiff_t' is narrower than 'long int'.
111701
1117022017-04-04  Philipp Stephani  <phst@google.com>
111703
111704	Make subprocess functions resolve the default directory
111705
111706	`call-process' doesn't respect file name handlers in
111707	`default-directory', so `file-name-non-special' has to resolve them
111708	for `process-file', `start-file-process', and
111709	`shell-command' (Bug#25949).
111710
111711	* lisp/files.el (file-name-non-special): Also resolve default
111712	directory for 'process-file', 'start-file-process', and
111713	'shell-command'.
111714	* test/lisp/files-tests.el
111715	(files-tests--file-name-non-special--subprocess): Add unit test.
111716
1117172017-04-04  Philipp Stephani  <phst@google.com>
111718
111719	Make ediff handle remote and quoted file names
111720
111721	Quoted file names need to be unquoted before passed to
111722	subprocesses (Bug#25950).
111723
111724	* lisp/vc/ediff-diff.el (ediff-exec-process): Handle remote and quoted
111725	file names.
111726	* test/lisp/vc/ediff-diff-tests.el
111727	(ediff-diff-tests--ediff-exec-process--quoted-file): Add unit test.
111728
1117292017-04-04  Stefan Monnier  <monnier@iro.umontreal.ca>
111730
111731	Backward compatibility with pre-existing struct instances.
111732
111733	* lisp/emacs-lisp/cl-lib.el (cl--old-struct-type-of): New function.
111734	(cl-old-struct-compat-mode): New minor mode.
111735
111736	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Pass `record' to
111737	cl-struct-define to signal use of record objects.
111738
111739	* lisp/emacs-lisp/cl-preloaded.el (cl--struct-get-class,
111740	cl-struct-define): Enable legacy defstruct compatibility.
111741
111742	* test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-old-struct,
111743	old-struct): New tests.
111744
111745	* doc/lispref/elisp.texi, doc/lispref/records.texi: Document
111746	`old-struct-compat'.
111747
1117482017-04-04  Lars Brinkhoff  <lars@nocrew.org>
111749
111750	Make the URL library use records.
111751
111752	* lisp/url/url.el, lisp/url/url-cache.el, lisp/url/url-dav.el,
111753	lisp/url/url-expand.el, lisp/url/url-file.el, lisp/url/url-imap.el,
111754	lisp/url/url-ldap.el: Use `url-p' instead of `vectorp'.
111755
111756	* lisp/url/url-http.el (url-http): Check for type `url' instead of
111757	`vector'.
111758
1117592017-04-04  Stefan Monnier  <monnier@iro.umontreal.ca>
111760
111761	Make EIEIO use records.
111762
111763	* lisp/emacs-lisp/eieio-compat.el
111764	(eieio--generic-static-object-generalizer): Adjust to new tags.
111765
111766	* lisp/emacs-lisp/eieio-core.el: Use records, and place the class object
111767	directly as tag.
111768	(eieio--object-class): Adjust to new tag representation.
111769	(eieio-object-p): Rewrite, and adapt to new `type-of' behavior.
111770	(eieio-defclass-internal): Use `make-record'.
111771	(eieio--generic-generalizer): Adjust generalizer code accordingly.
111772
111773	* lisp/emacs-lisp/eieio.el (make-instance, clone): Use copy-record.
111774
111775	* lisp/emacs-lisp/pcase.el (pcase-mutually-exclusive-predicates):
111776	Add `recordp'.
111777
111778	* doc/lispref/records.texi, doc/misc/eieio.texi: Update for records.
111779
1117802017-04-04  Lars Brinkhoff  <lars@nocrew.org>
111781
111782	Make cl-defstruct use records.
111783
111784	* lisp/emacs-lisp/cl-extra.el (cl--describe-class)
111785	(cl--describe-class-slots): Use the new `type-of'.
111786
111787	* lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Use type-of.
111788	(cl--generic-struct-specializers): Adjust to new tag.
111789
111790	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): When type is nil, use records.
111791	Use the type symbol as the tag.  Use copy-record to copy structs.
111792	(cl--defstruct-predicate): New function.
111793	(cl--pcase-mutually-exclusive-p): Use it.
111794	(cl-struct-sequence-type): Can now return `record'.
111795
111796	* lisp/emacs-lisp/cl-preloaded.el (cl--make-slot-desc): Adjust ad-hoc
111797	code to new format.
111798	(cl--struct-register-child): Work with records.
111799	(cl-struct-define): Don't touch the tag's symbol-value and
111800	symbol-function slots when we use the type as tag.
111801
111802	* lisp/emacs-lisp/cl-print.el (cl-print-object): Adjust to new tag.
111803
111804	* test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-defstruct-record):
111805	New test.
111806
111807	* doc/lispref/records.texi, doc/misc/cl.texi: Update for records.
111808
1118092017-04-04  Lars Brinkhoff  <lars@nocrew.org>
111810
111811	Add record objects with user-defined types.
111812
111813	* src/alloc.c (allocate_record): New function.
111814	(Fmake_record, Frecord, Fcopy_record): New functions.
111815	(syms_of_alloc): defsubr them.
111816	(purecopy): Work with records.
111817
111818	* src/data.c (Ftype_of): Return slot 0 for record objects, or type
111819	name if record's type holds class.
111820	(Frecordp): New function.
111821	(syms_of_data): defsubr it.  Define `Qrecordp'.
111822	(Faref, Faset): Work with records.
111823
111824	* src/fns.c (Flength): Work with records.
111825
111826	* src/lisp.h (prec_type): Add PVEC_RECORD.
111827	(RECORDP, CHECK_RECORD, CHECK_RECORD_TYPE): New functions.
111828
111829	* src/lread.c (read1): Add syntax for records.
111830
111831	* src/print.c (PRINT_CIRCLE_CANDIDATE_P): Add RECORDP.
111832	(print_object): Add syntax for records.
111833
111834	* test/lisp/emacs-lisp/cl-print-tests.el (cl-print-tests-2):
111835	New test.
111836
111837	* test/src/alloc-tests.el (record-1, record-2, record-3):
111838	New tests.
111839
111840	* doc/lispref/elisp.texi, doc/lispref/objects.texi,
111841	doc/lispref/records.texi: Add documentation for records.
111842
1118432017-04-04  Tino Calancha  <tino.calancha@gmail.com>
111844
111845	Fix a test in python-test.el
111846
111847	Fix a test that breaks the test suite when it is run within a
111848	virtual environment.
111849	See following link for details:
111850	https://lists.gnu.org/r/emacs-devel/2017-03/msg00857.html
111851	* test/lisp/progmodes/python-tests.el
111852	(python-shell-calculate-process-environment-7): Bind
111853	python-shell-virtualenv-root to VIRTUAL_ENV when this var is set; otherwise
111854	bind it to '/env'.
111855
1118562017-04-04  Noam Postavsky  <npostavs@gmail.com>
111857
111858	Throw a `search-failed' derived error in Info search
111859
111860	The original fix for Bug#6106 switched from signaling `search-failed'
111861	to `user-error'.  However, this breaks incremental searching over
111862	multiple nodes because the isearch code doesn't expect a `user-error'.
111863
111864	* src/search.c (syms_of_search): New error, `user-search-failed',
111865	with `user-error' and `search-failed' as parents.
111866	* doc/lispref/errors.texi (Standard Errors): Document it.
111867	* etc/NEWS: Announce it.
111868	* lisp/info.el (Info-search): Use it instead of `user-error' so that
111869	isearch will handle failed searches correctly.
111870
1118712017-04-03  Michael Albinus  <michael.albinus@gmx.de>
111872
111873	Add Tramp test
111874
111875	* doc/misc/tramp.texi (Remote processes): Fix typo.
111876
111877	* lisp/shell.el (shell): Fix typo.
111878
111879	* lisp/net/tramp.el (tramp-set-connection-local-variables): Simplify.
111880
111881	* test/lisp/net/tramp-tests.el (tramp-test30-explicit-shell-file-name):
111882	New test.
111883	(tramp--test-special-characters, tramp--test-utf8): Adapt docstring.
111884	(tramp-test31-vc-registered)
111885	(tramp-test32-make-auto-save-file-name)
111886	(tramp-test33-make-nearby-temp-file)
111887	(tramp-test34-special-characters)
111888	(tramp-test34-special-characters-with-stat)
111889	(tramp-test34-special-characters-with-perl)
111890	(tramp-test34-special-characters-with-ls, tramp-test35-utf8)
111891	(tramp-test35-utf8-with-stat, tramp-test35-utf8-with-perl)
111892	(tramp-test35-utf8-with-ls)
111893	(tramp-test36-asynchronous-requests)
111894	(tramp-test37-recursive-load, tramp-test38-unload): Rename.
111895
1118962017-04-03  Stefan Monnier  <monnier@iro.umontreal.ca>
111897
111898	* lisp/ses.el: Silence byte-compiler warnings.
111899
111900	(ses-jump, ses-recalculate-cell, ses-define-local-printer): Silence
111901	byte-compiler warnings.
111902
1119032017-04-02  Glenn Morris  <rgm@gnu.org>
111904
111905	Belated fixes for admin.el's M-x make-manuals-dist
111906
111907	* admin/admin.el (make-manuals-dist-output-variables): Additions.
111908	(make-manuals-dist--1): Also copy docstyle.texi.
111909
1119102017-04-02  Paul Eggert  <eggert@cs.ucla.edu>
111911
111912	Fix bugs in simplified test dependencies
111913
111914	Problem reported by Glenn Morris in:
111915	https://lists.gnu.org/r/emacs-devel/2017-04/msg00017.html
111916	* test/Makefile.in (LOGFILES, TESTS): Omit leading "./".
111917	(TESTS): Omit unnecessary patsubst.
111918	(test_template): Redo dependency heuristic, hopefully
111919	correctly this time.  It's the .log file that depends,
111920	not the phony test target.  Declare the phonies to be PHONY.
111921	Resurrect the exception for the *-tests subdirectory.
111922	Adjust to the fact that leading "./" is omitted now.
111923
1119242017-04-02  Wilfred Hughes  <me@wilfred.me.uk>
111925
111926	Fix typo in docstring
111927
111928	* lisp/help.el: Fix typo.
111929
1119302017-04-02  Michael Albinus  <michael.albinus@gmx.de>
111931
111932	Apply connecion-local variables for shells
111933
111934	* doc/misc/tramp.texi (Remote processes): Show use of connection-local
111935	variables.  Don't mention Emacs 23 anymore.
111936	(Frequently Asked Questions): Precise Emacs and MS Windows version.
111937
111938	* lisp/files-x.el (connection-local-normalize-criteria):
111939	Suppress nil properties.
111940	(connection-local-set-profiles, with-connection-local-profiles):
111941	Adapt docstring.
111942
111943	* lisp/shell.el (shell): Apply connecion-local variables.
111944
1119452017-04-01  Evgeni Kolev  <evgenysw@gmail.com>  (tiny change)
111946
111947	Propertize only perl prototype chars `][$%&*;+@\' as punctuation
111948
111949	This prevents variables in signatures such as `sub add ($a, $b)' from
111950	being treated as punctuation.
111951	* lisp/progmodes/perl-mode.el (perl-syntax-propertize-function):
111952	Strictly match only prototype characters as punctuation.  (Bug#26037)
111953
1119542017-04-01  Tom Tromey  <tom@tromey.com>
111955
111956	fix two js-mode syntax propertization bugs
111957
111958	Bug#26070:
111959	* lisp/progmodes/js.el (js--syntax-propertize-regexp-regexp): Add
111960	zero-or-one to regular expression.
111961	(js-syntax-propertize-regexp): Update.  Propertize body of regexp
111962	literal up to END.
111963	* test/lisp/progmodes/js-tests.el (js-mode-propertize-bug-1)
111964	(js-mode-propertize-bug-2): New tests.
111965
1119662017-04-01  Paul Eggert  <eggert@cs.ucla.edu>
111967
111968	Simplify test dependency generation
111969
111970	Generate default dependencies by using GNU extensions to ‘make’
111971	rather than via a hacky auxiliary program and script.
111972	* .gitignore: Remove test/make-test-deps.mk.
111973	* test/Makefile.in (ELFILES, LOGFILES, TESTS):
111974	Use :=, not =, to avoid multiple redundant invocations of ‘find’.
111975	(test_template): Infer dependency directly instead of via
111976	make-test-deps.mk.
111977	(check-doit): Prepend ‘@’ to avoid excessively long ‘make’ output.
111978	(clean): No need to clean make-test-deps.mk.
111979	(make-test-deps.mk): Remove rule.
111980	* test/make-test-deps.emacs-lisp: Remove.
111981
1119822017-04-01  Stefan Monnier  <monnier@iro.umontreal.ca>
111983
111984	* test/lisp/emacs-lisp/cl-lib-tests.el: Improve symbol-macrolet tests
111985
111986	(cl-lib-symbol-macrolet): Fix last test so it doesn't break the whole
111987	test suite.
111988	(cl-lib-symbol-macrolet-2): New test.
111989
1119902017-04-01  Tino Calancha  <tino.calancha@gmail.com>
111991
111992	Use only posix options in a ediff-ptch test
111993
111994	* test/lisp/vc/ediff-ptch-tests.el (ediff-ptch-test-bug26084):
111995	Use just "-b" patch option.  Don't assume a particular suffix for
111996	the backup files.
111997
1119982017-04-01  Jarno Malmari  <jarno@malmari.fi>
111999
112000	Initial implementation of HTTP Digest qop for url
112001
112002	This also refactors digest authentication functions in url-auth.el.
112003
112004	* lisp/url/url-auth.el (url-digest-auth, url-digest-auth-create-key):
112005	(url-digest-auth-build-response, url-digest-auth-directory-id-assoc):
112006	(url-digest-auth-name-value-string, url-digest-auth-source-creds):
112007	(url-digest-cached-key, url-digest-cache-key, url-digest-find-creds):
112008	(url-digest-find-new-key, url-digest-prompt-creds): Add new functions
112009	to simplify code and aid in unit testing.
112010	(url-digest-auth-build-response): Hook up new functionality, or fall
112011	back to previous.
112012	(url-digest-auth-make-request-digest-qop):
112013	(url-digest-auth-make-cnonce, url-digest-auth-nonce-count):
112014	(url-digest-auth-name-value-string): Add new helper functions.
112015	* test/lisp/url/url-auth-tests.el (url-auth-test-colonjoin):
112016	(url-auth-test-digest-ha1, url-auth-test-digest-ha2):
112017	(url-auth-test-digest-request-digest): Add a few tests as now more
112018	features are testable via intermediate functions.
112019	(url-auth-test-challenges, url-auth-test-digest-request-digest): Test
112020	the new implementation.  Parts of these were accidentally already
112021	merged in the past.
112022
1120232017-04-01  Tino Calancha  <tino.calancha@gmail.com>
112024
112025	Tweak ediff-ptch test in previous commit a bit more
112026
112027	* test/lisp/vc/ediff-ptch-tests.el (ediff-ptch-test-bug26084):
112028	Apply patches without requiring a shell.  Add some comments.
112029
1120302017-03-31  Glenn Morris  <rgm@gnu.org>
112031
112032	Tweak an ediff-ptch test
112033
112034	* test/lisp/vc/ediff-ptch-tests.el (ediff-ptch-test-bug26084):
112035	Add skip conditions.  Avoid going through shell where not needed.
112036
1120372017-03-31  Michael Albinus  <michael.albinus@gmx.de>
112038
112039	* lisp/net/tramp-smb.el (tramp-smb-errors):
112040
112041	Add "NT_STATUS_PASSWORD_MUST_CHANGE".
112042
1120432017-03-31  Stefan Monnier  <monnier@iro.umontreal.ca>
112044
112045	* test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-symbol-macrolet): New test.
112046
1120472017-03-31  Tino Calancha  <tino.calancha@gmail.com>
112048
112049	dired-mark-suffix: New command
112050
112051	Now dired-mark-extension prepends '.' to extension when not present.
112052	Add command dired-mark-suffix to preserve the previous
112053	behavior (Bug#25942).
112054	* lisp/dired-x.el (dired-mark-suffix): New command;
112055	mark files ending in a given suffix.
112056	(dired--mark-suffix-interactive-spec): New defun.
112057	(dired-mark-extension, dired-mark-suffix): Use it.
112058	* doc/misc/dired-x.texi (Advanced Mark Commands): Update manual.
112059	* test/lisp/dired-x-tests.el: New test suite; add test for these features.
112060
1120612017-03-31  Tino Calancha  <tino.calancha@gmail.com>
112062
112063	default-directory: Remark that it must be a directory name
112064
112065	* src/buffer.c (default-directory): Update docstring (Bug#26272).
112066
1120672017-03-31  Tino Calancha  <tino.calancha@gmail.com>
112068
112069	Delete confuse statement in manual
112070
112071	* doc/misc/cl.texi (For Clauses): Delete confuse statement
112072	and its example (Bug#23550).
112073
1120742017-03-31  Paul Eggert  <eggert@cs.ucla.edu>
112075
112076	Use find -delete if available
112077
112078	This shortens the ‘make’ output and should avoid some
112079	repetitive scanning of directories during a build.
112080	* configure.ac (FIND_DELETE): New var.
112081	* lisp/Makefile.in (compile-always, bootstrap-clean):
112082	* test/Makefile.in (clean, bootstrap-clean): Use it.
112083	* test/Makefile.in (ELCFILES, LOGSAVEFILES): Remove; no longer needed.
112084
1120852017-03-31  Mark Oteiza  <mvoteiza@udel.edu>
112086
112087	Remove gnus-boundp
112088
112089	* lisp/gnus/gnus-start.el (gnus-display-time-event-handler): Use
112090	bound-and-true-p.
112091	* lisp/gnus/gnus-util.el (gnus-boundp): Remove.
112092
1120932017-03-31  Niels Möller  <nisse@lysator.liu.se>  (tiny change)
112094
112095	Stop `fixup-whitespace' adding trailing whitespace (Bug#18783)
112096
112097	* lisp/simple.el (fixup-whitespace): Insert no spaces if point is at
112098	end of line after deleting horizontal whitespace.
112099
1121002017-03-31  Paul Eggert  <eggert@cs.ucla.edu>
112101
112102	* src/inotify.c (add_watch): Add comment.
112103
1121042017-03-31  Andreas Politz  <politza@hochschule-trier.de>
112105
112106	Minor filenotify.el fixes
112107
112108	* lisp/filenotify.el: Require subr-x.
112109	(file-notify-callback): Use equal, not eq.
112110
1121112017-03-31  Noam Postavsky  <npostavs@gmail.com>
112112
112113	Improve packaging documentation
112114
112115	* doc/lispref/package.texi (Packaging Basics):
112116	* doc/lispref/tips.texi (Library Headers): Clarify some header
112117	formats, relation between file headers and package
112118	attributes (Bug#13281).
112119
1121202017-03-31  John Mastro  <john.b.mastro@gmail.com>
112121
112122	Fix a small incompatibility in ibuffer
112123
112124	Translate nil values from column functions to the empty string, so that
112125	subsequent calls to string-width don't signal an error (Bug#26317).
112126	* lisp/ibuffer.el (ibuffer-compile-format): If a column function returns
112127	nil, treat it like the empty string.
112128
1121292017-03-30  Alan Mackenzie  <acm@muc.de>
112130
112131	Fix C++ fontification problems 500 bytes after typing a space, and other bugs
112132
112133	Also implement the "asymmetric space" rule for fontifying otherwise
112134	ambiguous
112135	declarations/expressions.
112136
112137	* lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Don't set
112138	c-new-BEG or c-new-END when there is no need.
112139	(c-forward-decl-or-cast-1): Add "CASE 17.5" to implement the "asymmetric
112140	space" rule.
112141
112142	* lisp/progmodes/cc-fonts.el (c-get-fontification-context): New function,
112143	extracted from c-font-lock-declarations.  Add to this function processing to
112144	make `context' 'decl for lines contained within parens when these are also
112145	declarations.
112146	(c-font-lock-declarations): Call the newly extracted function above in place
112147	of inline code.
112148
112149	* lisp/progmodes/cc-mode.el (c-fl-decl-start): Set point before calling
112150	c-literal-start.
112151
112152	* lisp/progmodes/cc-vars.el (c-asymmetry-fontification-flag): New user option.
112153
112154	* doc/misc/cc-mode.texi (Misc Font Locking): New node documenting the new
112155	"asymmetric fontification" rule, including the variable
112156	c-asymmetric-fontification-flag.
112157
1121582017-03-30  Paul Eggert  <eggert@cs.ucla.edu>
112159
112160	Some inotify cleanup
112161
112162	This catches some problems with integer overflow and races
112163	that I noticed in inotify.c after reviewing the changes
112164	installed to fix Bug#26126.
112165	* src/fns.c, src/lisp.h (equal_no_quit): Now extern.
112166	* src/inotify.c (aspect_to_inotifymask):
112167	Check for cycles and for improper lists.
112168	(make_lispy_mask, lispy_mask_match_p): Remove.
112169	All callers changed to use INTEGER_TO_CONS and CONS_TO_INTEGER.
112170	(inotifyevent_to_event, add_watch):
112171	Don’t assume watch descriptors and cookies fit in fixnums.
112172	(add_watch): Use assoc_no_quit, not Fassoc.
112173	Avoid integer overflow in (very!) long-running processes where
112174	the Emacs watch ID could overflow.  Avoid some duplicate code.
112175	(find_descriptor): New function.
112176	(remove_descriptor): First arg is now the returned value from
112177	find_descriptor, rather than the descriptor.  This way, the
112178	value can be removed without calling Fdelete, which might quit.
112179	Wait until the end (when watch_list is consistent) before signaling
112180	any errors.
112181	(remove_watch, inotify_callback):
112182	Use find_descriptor to avoid the need for Fdelete.
112183	(inotify_callback): Use simpler tests for ioctl failure.
112184	Free temporary buffer if signaled, and put it on the stack if small.
112185	Use ssize_t to index through read results, to avoid a cast.
112186	(valid_watch_descriptor): New function, with a tighter check.
112187	(Finotify_rm_watch, Finotify_valid_p): Use it.
112188	(Finotify_valid_p): Use assoc_no_quit and ass_no_quit instead
112189	of Fassoc.  Do not assume the first assoc succeeds.
112190	* test/src/inotify-tests.el (inotify-valid-p-simple):
112191	Add inotify-valid-p tests, some of which dump core without
112192	the fixes noted above.
112193
1121942017-03-30  Michael Albinus  <michael.albinus@gmx.de>
112195
112196	* lisp/net/tramp-sh.el (tramp-get-remote-locale): Add "C.UTF-8" as candidate.
112197
1121982017-03-30  Stefan Monnier  <monnier@iro.umontreal.ca>
112199
112200	* lisp/cedet/semantic/wisent/wisent.el (wisent-automaton-p): Use obarrayp.
112201
1122022017-03-30  Paul Eggert  <eggert@cs.ucla.edu>
112203
112204	Fix assoc_no_quit so that it does not quit
112205
112206	The problem was that it called Fequal, which can quit.
112207	* src/fns.c (enum equal_kind):
112208	New enum, to be used in place of a boolean.
112209	(equal_no_quit): New function.
112210	(Fmemql, Feql): Use it to compare floats, as a minor tuneup.
112211	(assoc_no_quit): Use it to avoid quitting, the main point here.
112212	(internal_equal): Generalize bool to enum equal_kind arg, so that
112213	there are now 3 possibilities instead of 2.  Do not signal an
112214	error if EQUAL_NO_QUIT.  Put the arg before the depth, since depth
112215	should be irrelevant if the arg is EQUAL_NO_QUIT.  All callers
112216	changed.
112217
1122182017-03-29  Alan Mackenzie  <acm@muc.de>
112219
112220	Amend gitmerge to recognize the injunction "don't merge".
112221
112222	* admin/gitmerge.el (gitmerge-skip-regexp): amend regexp to match "don't" as
112223	well as "do not".
112224
1122252017-03-29  Simen Heggestøyl  <simenheg@gmail.com>
112226
112227	Add one more CSS pseudo-class
112228
112229	* lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add
112230	`focus-within'.
112231
1122322017-03-29  Simen Heggestøyl  <simenheg@gmail.com>
112233
112234	Update list of CSS pseudo-classes
112235
112236	* lisp/textmodes/css-mode.el (css-pseudo-class-ids): Update list of
112237	pseudo-classes.
112238
1122392017-03-29  Noam Postavsky  <npostavs@gmail.com>
112240
112241	Adjust some search failure errors in info.el
112242
112243	* lisp/info.el (Info-select-node): The search for beginning of node is
112244	an internal detail, and is not normally expected to fail, so it should
112245	not be a user error.
112246	(Info-complete-menu-item): Failing to find a menu indicates the user
112247	searched for a menu when there isn't one, so change to `use-error'.
112248
1122492017-03-28  Alan Mackenzie  <acm@muc.de>
112250
112251	* lisp/progmodes/cc-defs.el (c-version):  Restore c-version to 5.33
112252
1122532017-03-28  Paul Eggert  <eggert@cs.ucla.edu>
112254
112255	Don’t mishandle (format "%i" -1.0)
112256
112257	* src/editfns.c (styled_format): Treat %i like %d when converting arg.
112258
1122592017-03-28  Noam Postavsky  <npostavs@gmail.com>
112260
112261	* lisp/emacs-lisp/ert.el (ert-run-tests): Make INTERACTIVE arg optional.
112262
1122632017-03-28  Michael Albinus  <michael.albinus@gmx.de>
112264
112265	* src/inotify.c (Finotify_add_watch): aspect can also be a symbol.
112266
1122672017-03-28  Noam Postavsky  <npostavs@gmail.com>
112268
112269	Don't add `search-failed' to ignored errors in info.el (Bug#6106)
112270
112271	* lisp/info.el: Stop adding `search-failed' to `debug-ignored-errors'.
112272	(Info-select-node, Info-search): Replace (signal 'search-failed ...)
112273	with (user-error "Search failed: "...).
112274
1122752017-03-27  Paul Eggert  <eggert@cs.ucla.edu>
112276
112277	Fix obsolete ‘test/automated’ references
112278
112279	* Makefile.in (mostlyclean, clean, maybeclean_dirs, distclean)
112280	(bootstrap-clean, maintainer-clean):
112281	Clean ‘test’, not ‘test/automated’.  Test for existence of
112282	subdirectory only for ‘test’, not for directories that should
112283	always exist.
112284	* admin/MAINTAINERS, etc/TODO, lisp/emacs-lisp/bytecomp.el:
112285	* lisp/emacs-lisp/seq.el, lisp/emacs-lisp/thunk.el:
112286	* lisp/man.el (Man-parse-man-k):
112287	* lisp/url/url-domsuf.el, make-dist:
112288	* test/file-organization.org:
112289	Fix obsolete references to test/automated.
112290
1122912017-03-27  Katsumi Yamaoka  <yamaoka@jpl.org>
112292
112293	shr-image-fetched: Work for narrowed Gnus article
112294
112295	See <8737e3msun.fsf@gmail.com> of bug#26231 in the bug-gnu-emacs list.
112296
112297	* lisp/net/shr.el (shr-image-fetched): Work for narrowed article.
112298
1122992017-03-27  Michael Albinus  <michael.albinus@gmx.de>
112300
112301	* lisp/net/tramp.el (tramp-file-name-handler): Autoload it.
112302
1123032017-03-27  Eric Abrahamsen  <eric@ericabrahamsen.net>
112304
112305	Expand manual section on quitting windows
112306
112307	* doc/lispref/windows.texi (Quitting Windows): Provide more
112308	  information about the elements of the quit-restore window parameter,
112309	  and how they affect the behavior of quit-restore-window.
112310
1123112017-03-26  Philipp Stephani  <phst@google.com>
112312
112313	Add check for expected backtrace in module calls.
112314
112315	* test/manual/cedet/tests/test.el
112316	(mod-test-non-local-exit-signal-test): Compare actual backtrace to
112317	expected backtrace.
112318
1123192017-03-26  Eli Zaretskii  <eliz@gnu.org>
112320
112321	Fix redisplay glitches due to recent change in redisplay_internal
112322
112323	* src/xdisp.c (redisplay_internal): A better fix for bug#26097.
112324	See https://lists.gnu.org/r/emacs-devel/2017-03/msg00695.html
112325	for the problems caused by the original fix.
112326
1123272017-03-26  Michael Albinus  <michael.albinus@gmx.de>
112328
112329	Fix Bug#26258
112330
112331	* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
112332	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
112333	* lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
112334	* lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
112335	Autoload.  Call `tramp-register-foreign-file-name-handler'.  (Bug#26258)
112336
112337	* lisp/net/tramp.el (tramp-autoload-file-name-handler): Remove.
112338	(tramp-register-autoload-file-name-handlers)
112339	(tramp-register-file-name-handlers): Do not handle
112340	`tramp-autoload-file-name-handler' anymore.  Mark `operations'
112341	the handlers are responsible for.
112342	(tramp-register-foreign-file-name-handler): New defun.
112343
1123442017-03-26  Noam Postavsky  <npostavs@gmail.com>
112345
112346	Fix docstring of dabbrev-abbrev-char-regexp
112347
112348	* lisp/dabbrev.el (dabbrev-abbrev-char-regexp): Using a value of nil
112349	is equivalent to "\\sw\\|\\s_", and has no special behavior.  If the
112350	previous character doesn't match, we search backwards for one that
112351	does, not throw an error.  Replace Lisp example with C based one to
112352	make it clear that "symbol" means a sequence of word and symbol
112353	constituent characters, not a Lisp symbol (Bug#358).
112354
1123552017-03-26  Johan Claesson  <johanclaesson@bredband.net>  (tiny change)
112356
112357	* doc/misc/cl.texi (Iteration Clauses): Clarify example (Bug#19515).
112358
1123592017-03-26  Andreas Politz  <politza@hochschule-trier.de>
112360
112361	Minor fixes for inotify.c and filenotify.el
112362
112363	* lisp/filenotify.el (file-notify--watch-absolute-filename):
112364	Add docstring.
112365	(file-notify-callback): Simplify.
112366
112367	* src/inotify.c (Finotify_add_watch): Adapt docstring.
112368
1123692017-03-26  Andreas Politz  <politza@hochschule-trier.de>
112370
112371	Fix issues regarding inotify file-notification
112372
112373	Remove special code handling the inotify back-end.
112374	* lisp/filenotify.el (file-notify--watch): New struct
112375	representing a file-watch.
112376	(file-notify-descriptors): Use the new struct as hash-value.
112377	(file-notify-handle-event): Check that event is a cons.
112378	(file-notify--rm-descriptor, file-notify--event-watched-file)
112379	(file-notify--event-file-name, file-notify--event-file1-name)
112380	(file-notify-callback, file-notify-add-watch)
112381	(file-notify-rm-watch, file-notify-valid-p): Use new struct.
112382	Remove special code handling inotify descriptors.  Remove code
112383	handling multiple clients per descriptor.
112384	(file-notify--descriptor): Remove unused function.
112385
112386	Let inotify-add-watch return a unique descriptor on every
112387	call, like every other back-end does (Bug#26126).  Prevent
112388	multiple clients from interfering with each other, when
112389	watching a shared descriptor.
112390	* src/inotify.c (watch_list): Extend the format by including a
112391	id and the provided mask.
112392	(INOTIFY_DEFAULT_MASK): Default mask used for all clients.
112393	(make_watch_descriptor): Removed.
112394	(make_lispy_mask, lispy_mask_match_p): New functions.
112395	(inotifyevent_to_event): Match event against the mask provided
112396	by the client.
112397	(add_watch, remove_descriptor, remove_watch): New functions
112398	for managing the watch_list.
112399	(inotify_callback): Use the new functions.
112400	(Finotify_add_watch, Finotify_rm_watch): Remove deprecated
112401	flags from documentation.  Add check for validity of provided
112402	descriptor.  Use the new functions.  Use the default mask.
112403	(INOTIFY_DEBUG): Add new debug conditional.
112404	(inotify-watch-list, inotify-allocated-p): New debug functions.
112405	(symbol_to_inotifymask, syms_of_inotify): Remove deprecated symbols.
112406
112407	* test/lisp/filenotify-tests.el:
112408	(file-notify-test02-rm-watch): Remove expected failure for inotify.
112409
1124102017-03-26  Paul Pogonyshev  <pogonyshev@gmail.com>
112411
112412	* lisp/emacs-lisp/pcase.el (pcase): Comment debug message (Bug#26177).
112413
1124142017-03-25  Jens Uwe Schmidt  <ju.schmidt@gmx.de>  (tiny change)
112415
112416	Stop edebug getting stuck on backquote (Bug#23651)
112417
112418	* lisp/emacs-lisp/edebug.el (edebug-read-sexp): Move forward after
112419	reading backquote or comma.
112420
1124212017-03-25  Eric Abrahamsen  <eric@ericabrahamsen.net>
112422
112423	Expand manual section on quitting windows
112424
112425	* doc/lispref/windows.texi (Quitting Windows): Provide more
112426	  information about the elements of the quit-restore window parameter,
112427	  and how they affect the behavior of quit-restore-window.
112428
1124292017-03-25  Eli Zaretskii  <eliz@gnu.org>
112430
112431	Support in ispell.el multiple dictionaries loaded by Hunspell
112432
112433	* lisp/textmodes/ispell.el (ispell-find-hunspell-dictionaries):
112434	Support Hunspell configurations that load more than one dictionary
112435	by default.  Doc fix.  (Bug#25830)
112436
1124372017-03-25  Michael Albinus  <michael.albinus@gmx.de>
112438
112439	Simplify Tramp autoloading.
112440
112441	* lisp/net/tramp.el (tramp-completion-file-name-handler):
112442	Simplify autoloading.  Give it the `operations' property.
112443	(tramp-completion-handle-expand-file-name): Remove.
112444
1124452017-03-25  Eli Zaretskii  <eliz@gnu.org>
112446
112447	Fix a segfault due to failure to realize some faces
112448
112449	* src/xdisp.c (redisplay_internal): If the frame becomes garbaged
112450	while redisplaying its windows, redisplay all of its windows
112451	again.  (Bug#26097)
112452	(init_iterator): When freeing all realized faces on all frames,
112453	reset the 'face_change' flag of the frame whose window we are
112454	about to iterate.
112455
1124562017-03-25  Philipp Stephani  <phst@google.com>
112457
112458	Use a named function for 'safe-local-variable
112459
112460	This improves the help screen for `version-control' (Bug#25431).
112461
112462	* lisp/files.el (version-control-safe-local-p): New function.
112463	(version-control): Use it.
112464
1124652017-03-25  Eli Zaretskii  <eliz@gnu.org>
112466
112467	;* doc/misc/info.texi (Choose menu subtopic): Improve indexing.  (Bug#26236)
112468
1124692017-03-25  Helmut Eller  <eller.helmut@gmail.com>
112470
112471	Make it easier to abort a series of tests with C-g
112472
112473	* lisp/emacs-lisp/ert.el (ert-run-tests): Add "interactively" arg.  If
112474	interactively is true and a test was aborted then ask if the remaining
112475	tests should be aborted too.
112476	(ert-run-tests-batch, ert-run-tests-interactively): Pass in
112477	interactively arg.
112478
1124792017-03-24  Paul Eggert  <eggert@cs.ucla.edu>
112480
112481	Don’t require chown/chgrp for game installation
112482
112483	Problem reported by Joseph Mingrone in:
112484	https://lists.gnu.org/r/emacs-devel/2017-03/msg00622.html
112485	* lib-src/Makefile.in (exp_archlibdir): Don’t fail if chown or
112486	chgrp fails with update-game-score and the game directory.
112487	Instead, expect the installer to fix this up afterwards.
112488
1124892017-03-24  Stefan Monnier  <monnier@iro.umontreal.ca>
112490
112491	* lisp/emacs-lisp/lisp-mode.el: Don't highlight \( at BOL
112492
112493	(elisp--font-lock-backslash): Extract from lisp-el-font-lock-keywords-2.
112494	Don't highlight \ at BOL.  Don't assume syntax-ppss preserves match-data.
112495
1124962017-03-23  Philipp Stephani  <phst@google.com>
112497
112498	Protect against an infloop in python-mode
112499
112500	There appears to be an edge case caused by using `syntax-ppss' in a
112501	narrowed buffer during JIT lock inside of Python triple-quote strings.
112502	Unfortunately it is impossible to reproduce without manually
112503	destroying the syntactic information in the Python buffer, but it has
112504	been observed in practice.  In that case it can happen that the syntax
112505	caches get sufficiently out of whack so that there appear to be
112506	overlapping strings in the buffer.  As Python has no nested strings,
112507	this situation is impossible and leads to an infloop in
112508	`python-nav-end-of-statement'.  Protect against this by checking
112509	whether the search for the end of the current string makes progress.
112510
112511	* lisp/progmodes/python.el (python-nav-end-of-statement): Protect
112512	against infloop.
112513	* test/lisp/progmodes/python-tests.el
112514	(python-tests--python-nav-end-of-statement--infloop): Add unit test.
112515
1125162017-03-23  Michael Albinus  <michael.albinus@gmx.de>
112517
112518	* doc/lispref/os.texi (File Notifications):
112519
112520	Strengthen the recommendation to use filenotify.el.
112521
1125222017-03-23  Paul Eggert  <eggert@cs.ucla.edu>
112523
112524	Merge from gnulib
112525
112526	This incorporates:
112527	2017-03-22 getopt: merge from glibc
112528	* build-aux/config.sub, lib/getopt.c, lib/getopt.in.h:
112529	* lib/getopt1.c, lib/getopt_int.h: Copy from gnulib.
112530	* lib/gnulib.mk.in: Regenerate.
112531
1125322017-03-23  Michael Albinus  <michael.albinus@gmx.de>
112533
112534	Use lexical-bind in Tramp
112535
112536	* lisp/net/tramp*.el: Add lexical-binding cookie.  Move declarations up.
112537
112538	* lisp/net/tramp-adb.el (tramp-adb-parse-device-names): Use `push'
112539	rather than `add-to-list'.
112540	(tramp-adb-get-device): Remove unused variable.
112541
112542	* lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names): Remove unused
112543	variable.
112544
112545	* lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
112546	(tramp-find-file-name-coding-system-alist): Use `push' rather
112547	than `add-to-list'.
112548
112549	* test/lisp/net/tramp-tests.el: Add lexical-binding cookie.
112550	Require 'dired.  Move declarations up.
112551	(tramp-test32-make-nearby-temp-file): Wrap `make-nearby-temp-file'
112552	and `temporary-file-directory' calls with `with-no-warnings'.
112553	(tramp-test35-asynchronous-requests): Mark unused variable.
112554
1125552017-03-23  Kaushal Modi  <kaushal.modi@gmail.com>
112556	    Noam Postavsky  <npostavs@gmail.com>
112557
112558	Do not include comment start chars in ffap string
112559
112560	* lisp/ffap.el (ffap-string-at-point): If the point is in a comment,
112561	ensure that the returned string does not contain the comment start
112562	characters (especially for major modes that have '//' as comment start
112563	characters).  Otherwise, in a major mode like c-mode, with `ido-mode'
112564	enabled and `ido-use-filename-at-point' set to `guess', doing "C-x
112565	C-f" on a "//foo" comment will initiate an attempt to access a path
112566	"//foo" (Bug#24057).
112567
1125682017-03-23  Martin Rudalics  <rudalics@gmx.at>
112569
112570	c:/Temp/gtk-window-move/ChangeLog.txt
112571
1125722017-03-22  Michael Albinus  <michael.albinus@gmx.de>
112573
112574	Fix filenotify.el issue for kqueue
112575
112576	* lisp/filenotify.el (file-notify-add-watch): Use directory
112577	for remote file name handlers.
112578
112579	* test/lisp/filenotify-tests.el (file-notify-test01-add-watch):
112580	Create/delete temporary file only for "kqueue".
112581	(file-notify-test02-rm-watch): Create/delete temporary files.
112582
1125832017-03-22  Michael Albinus  <michael.albinus@gmx.de>
112584
112585	Extend `file-notify-test02-rm-watch'
112586
112587	* test/lisp/filenotify-tests.el (file-notify-test02-rm-watch):
112588	Expect it failed for inotify.  Divide tests into different
112589	`unwind-protect' clauses.  Check, that removing watch
112590	descriptors out of order do not harm.  (Bug#26126)
112591
1125922017-03-22  Noam Postavsky  <npostavs@gmail.com>
112593
112594	* test/lisp/emacs-lisp/lisp-mode-tests.el (indent-subsexp): Test for Bug#26187
112595
1125962017-03-22  Graham Dobbins  <gdobbins@protonmail.com>  (tiny change)
112597
112598	* lisp/emacs-lisp/lisp-mode.el (indent-sexp): Fix null endpos case
112599
1126002017-03-21  Paul Eggert  <eggert@cs.ucla.edu>
112601
112602	Improve configure --with-pop etc. diagnostics
112603
112604	* configure.ac: Improve diagnostics re --with-pop and
112605	--with-mailutils (Bug#26102).
112606
1126072017-03-21  Eli Zaretskii  <eliz@gnu.org>
112608
112609	Revert "Make --without-pop the default."
112610
112611	This reverts commit 9319de675e395517f9a7b50cae1a3aad9cd0abc2.
112612
1126132017-03-21  Paul Eggert  <eggert@cs.ucla.edu>
112614
112615	Don’t remove dependency files when configuring
112616
112617	Problem reported by Tom Tromey in:
112618	https://lists.gnu.org/r/emacs-devel/2017-03/msg00533.html
112619	* configure.ac: Don’t remove */*.o and */deps/* when
112620	--enable-autodepend is in effect.
112621
1126222017-03-21  Paul Eggert  <eggert@cs.ucla.edu>
112623
112624	Make --without-pop the default.
112625
112626	Suggested by Angelo Graziosi in:
112627	https://lists.gnu.org/r/emacs-devel/2017-03/msg00431.html
112628	* configure.ac: Change the default from --with-pop to
112629	--without-pop.  Adjust diagnostics to match.
112630
1126312017-03-21  Paul Eggert  <eggert@cs.ucla.edu>
112632
112633	Streamline dependency-file generation
112634
112635	* configure.ac (AUTODEPEND_PARENTS): New var.
112636	mkdir the dependency directories here, to simplify ‘make’.
112637	Remove dependency files just before outputting Makefiles, so that
112638	they are preserved if ‘configure’ exits early due to some other problem.
112639	* lib/Makefile.in, lwlib/Makefile.in, oldXMenu/Makefile.in:
112640	* src/Makefile.in: Adjust deps strategies to be similar, as follows:
112641	(MKDEPDIR): Remove.  All uses removed.  This cuts down on the
112642	number of processes spun off by ‘make’.
112643	(clean mostlyclean): Remove $(DEPDIR) contents, not $(DEPDIR) itself.
112644	(distclean): Remove $(DEPDIR) itself.
112645	* lwlib/Makefile.in (all): Move to front, so that depdir includes
112646	do not alter default action.
112647
1126482017-03-21  Paul Eggert  <eggert@cs.ucla.edu>
112649
112650	Port and simplify example sh script
112651
112652	* doc/misc/org.texi (noweb-ref): Simplify shell script example and
112653	don’t use ‘tail -1’, which is not portable.
112654
1126552017-03-21  Noam Postavsky  <npostavs@gmail.com>
112656
112657	Narrow scope of modification hook renabling in org-src fontification
112658
112659	Modification hooks should be enabled while modifying text in the
112660	org-src temp buffer, but in 2017-01-29 "Call modification hooks in
112661	org-src fontify buffers" the hooks were enabled also for modifications
112662	to the original org buffer.  This causes fontification errors when
112663	combined with certain packages, as reported in
112664	https://lists.gnu.org/r/emacs-orgmode/2017-03/msg00420.html.
112665
112666	* lisp/org/org-src.el (org-src-font-lock-fontify-block): Reduce scope
112667	of inhibit-modification-hooks let-binding.
112668
1126692017-03-21  Tino Calancha  <tino.calancha@gmail.com>
112670
112671	epatch: Save right backups in Git multipatches
112672
112673	Multipatches on N Git files save wrong backups for
112674	N-1 files; only the last one has a correct backup (Bug#26084).
112675	* lisp/vc/diff-mode.el (diff-file-junk-re): Add 'Prereq: '
112676	* lisp/vc/ediff-ptch.el (ediff-map-patch-buffer): Use 'diff-file-junk-re'.
112677	* test/lisp/vc/ediff-ptch-tests.el (ediff-ptch-test-bug25010):
112678	Rename from ibuffer-test-bug25010.
112679	(ediff-ptch-test-bug26084): New test.
112680
1126812017-03-21  Michael R. Mauger  <michael@mauger.com>
112682
112683	    * lisp/progmodes/sql.el: Version 3.6
112684
112685	    (sql-login-params): Added :must-match for completition of
112686	    `server' and `database' login parameters.
112687	    (sql-sqlite-login-params, sql-postgres-login-params): Set
112688	    :must-match to `confirm'.
112689	    (sql-get-login-ext): Use :must-match value to control
112690	    `read-file-name' or `completing-read'.
112691	    (sql-connect): Added optional BUF-NAME parameter; Reworked
112692	    connection variable processing; Pass buffer name to
112693	    `sql-product-interactive'.
112694	    (sql-product-interactive): Pass buffer name along.
112695	    (sql-comint): Add optional BUF-NAME and calculate reasonable default.
112696	    (sql-comint-oracle, sql-sybase-comint, sql-comint-informix)
112697	    (sql-comint-sqlite, sql-comint-mysql, sql-comint-solid)
112698	    (sql-comint-ingres, sql-comint-ms, sql-comint-postgres)
112699	    (sql-comint-interbase, sql-comint-db2, sql-comint-linter)
112700	    (sql-comint-vertica): Add optional BUF-NAME, pass to
112701	    `sql-comint'.
112702	    (sql-oracle--list-oracle-name): New function.
112703	    (sql-oracle-list-all): Use it.
112704	    (sql-oracle-completion-object): Enhanced.
112705
1127062017-03-20  Vincent Belaïche  <vincentb1@users.sourceforge.net>
112707
112708	Solve ses-recalculate-cell updating only current line bug.
112709
112710	* lisp/ses.el (ses-recalculate-cell): Add optional argument
112711	ses--curcell to avoid overwriting ses--curcell when function is
112712	called from ses-recalculate-all.  Update docstring accordingly.
112713	(ses-recalculate-all): Call ses-recalculate-cell with argument
112714	ses--curcell to avoid its overwriting.
112715
1127162017-03-20  Paul Eggert  <eggert@cs.ucla.edu>
112717
112718	Fix problem with out-of-date dependencies
112719
112720	Problem reported by Robert Marshall in:
112721	https://lists.gnu.org/r/emacs-devel/2017-03/msg00501.html
112722	Although this problem has been with us for a while, the recent
112723	change from Automake to GNU Make exposed it again.
112724	* configure.ac (AUTO_DEPEND): When autodepending, clean out any
112725	leftover dependency and object files, since the previous sources'
112726	dependencies may disagree with the current ones.  Reconfiguring
112727	typically needs to force a rebuild anyway.
112728
1127292017-03-20  Mark Oteiza  <mvoteiza@udel.edu>
112730
112731	Simpler filter implementation
112732
112733	* lisp/play/dunnet.el (dun-endgame-question): Get or set
112734	dun-endgame-questions one time only.  Use dolist and an index to
112735	prune the list.
112736
1127372017-03-20  Mark Oteiza  <mvoteiza@udel.edu>
112738
112739	* lisp/button.el (forward-button): Use user-error instead.
112740
1127412017-03-19  Paul Eggert  <eggert@cs.ucla.edu>
112742
112743	Merge from gnulib
112744
112745	This gets Emacs working again with HP-UX Itanium cc.
112746	It incorporates:
112747	2017-03-19 stdalign: tweak version# and test for HP-UX IA64
112748	2017-03-18 stdalign: restore previous behavior for HP-UX IA64
112749	2017-03-17 stat-time, timespec: Support header files in C++ mode
112750	2017-03-17 stdalign: Make it work with HP-UX cc
112751	2017-03-17 flexmember: try to detect HP-UX 11.31 cc bug
112752	2017-03-16 stdint: Fix test compilation failure with HP-UX 11 cc.
112753	2017-03-14 gnulib-tool: don't produce tests with only snippets
112754	2017-03-14 limits-h: Make it work with HP-UX cc.
112755	* etc/PROBLEMS: Remove now-obsolete entry for HP-UX 11.31.
112756	* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
112757	* lib/limits.in.h, lib/stat-time.h, lib/stdalign.in.h:
112758	* lib/stdint.in.h, lib/timespec.h, m4/flexmember.m4, m4/stdalign.m4:
112759	Copy from gnulib.
112760
1127612017-03-19  Paul Eggert  <eggert@cs.ucla.edu>
112762
112763	* ChangeLog.2: Merge from emacs-25.
112764
1127652017-03-19  Paul Eggert  <eggert@cs.ucla.edu>
112766
112767	Fixups after merge from emacs-25
112768
112769	* etc/NEWS: Remove stray entry.
112770	* etc/NEWS.25: Copy from Emacs emacs-25 etc/NEWS.
112771	* lisp/textmodes/rst.el (rst-package-emacs-version-alist):
112772	Make it nondecreasing.
112773
1127742017-03-19  Paul Eggert  <eggert@cs.ucla.edu>
112775
112776	Merge from origin/emacs-25
112777
112778	d71e071 Improve documentation of interactive "r".
112779
1127802017-03-19  Paul Eggert  <eggert@cs.ucla.edu>
112781
112782	Merge from origin/emacs-25
112783
112784	a094732 * etc/PROBLEMS: Say that HP-UX cc doesn't work.
112785	1925dd9 Fix duplicate wording in Emacs manual
112786	6de8429 * lisp/paren.el (show-paren--default, show-paren-function): A...
112787	2d671fd Fix wording in Emacs manual
112788	a8766a2 Document how to customize input methods
112789	6eb8995 * lisp/net/eww.el (eww-reload): Doc fix.  (Bug#25981)
112790	aceac95 Fix warning message about native completion (Bug#25984)
112791	a314c1f Clarify documentation of 'raise' and 'height' display specs
112792	f366f6e Mention problems with GPaste in PROBLEMS
112793	6e788ef ; etc/PROBLEMS: Explain about the python+libedit problem (Bug...
112794	6406618 Fix doc strings in info.el
112795	c1ed152 ; * src/keyboard.c (Fposn_at_point): Fix last change.
112796	eed9677 Fix doc string of 'posn-at-point'
112797	0d5957e Documentation fix in elisp reference manual
112798
1127992017-03-19  Paul Eggert  <eggert@cs.ucla.edu>
112800
112801	Merge from origin/emacs-25
112802
112803	ec4226d * lisp/woman.el (woman): Fix docstring prefix arg description.
112804	2b774fa Mention "editor" in Emacs man page header
112805	ae60d0c Document problems with nerd-fonts
112806	2fdb5a9 ; Details about pinning Emacs to w32 task bar
112807	5c3105e * doc/lispref/modes.texi (Derived Modes): Make example more i...
112808	4c51ef4 Clarify what is the "cursor"
112809	8303c32 ; * etc/NEWS: Copyedits.
112810	3f7493e ; Fix a typo in comment
112811	c54cf8d Improve commentary in lisp.h
112812	8b92f86 ; * admin/make-tarball.txt: Cross-reference admin/release-pro...
112813	0ba9932 Disable native completion for ipython (Bug#25067)
112814	38fc456 Fix a typo in ada-mode manual
112815	00e75ba ; * src/coding.c (Fencode_coding_region): Fix a typo in the d...
112816	a541c21 Clarify documentation of 'bufferpos-to-filepos' and 'filepos-...
112817
112818	# Conflicts:
112819	#	etc/NEWS
112820	#	etc/PROBLEMS
112821
1128222017-03-19  Paul Eggert  <eggert@cs.ucla.edu>
112823
112824	Merge from origin/emacs-25
112825
112826	02d9ad8 * admin/make-tarball.txt: Add documentation regarding the rel...
112827
1128282017-03-19  Paul Eggert  <eggert@cs.ucla.edu>
112829
112830	Merge from origin/emacs-25
112831
112832	e1171de * CONTRIBUTE (Documenting your changes): Index new vars/comma...
112833
1128342017-03-19  Paul Eggert  <eggert@cs.ucla.edu>
112835
112836	Merge from origin/emacs-25
112837
112838	ab0a60a ; * CONTRIBUTE (Generating ChangeLog entries): Drop duplicate...
112839	7e02a47 Index byte-compile-debug
112840	7c1e598 Document `byte-compile-debug' in the ELisp manual
112841	4d81eb4 Document variable `byte-compile-debug'
112842	72ef710 Fix call to debugger on assertion failure
112843	ae8264c Call modification hooks in org-src fontify buffers
112844	b3139da ; Fix last change in doc/lispref/strings.texi
112845	c331f39 Improve documentation of 'format' conversions
112846	9f52f67 Remove stale functions from ert manual
112847	c416b14 Fix a typo in Eshell manual
112848	06695a0 ; Fix a typo in ediff-merg.el
112849	954e9e9 Improve documentation of hooks related to saving buffers
112850	9fcab85 Improve documentation of auto-save-visited-file-name
112851	2236c53 fix typo in mailcap-mime-extensions
112852	85a3e4e Fix typos in flymake.el
112853	a1ef10e More NEWS checking for admin.el's set-version
112854
112855	# Conflicts:
112856	#	lisp/emacs-lisp/bytecomp.el
112857
1128582017-03-19  Paul Eggert  <eggert@cs.ucla.edu>
112859
112860	Merge from origin/emacs-25
112861
112862	5569e64 ; Spelling fixes
112863	24a5f57 * lisp/net/eww.el (eww-tag-meta): Handle single quoted URLs (...
112864	9b89896 * lisp/progmodes/sql.el (sql-product-alist): Doc tweak
112865	69b50f5 * lisp/progmodes/sql.el (sql-product-alist): Doc fix.  (Bug#2...
112866	42eae54 Improve documentation of dabbrevs
112867	b0ade0d Clarify that easy-menu-add is a nop (Bug#25382)
112868	3c69f2c * lisp/textmodes/rst.el (rst-package-emacs-version-alist): Fi...
112869
112870	# Conflicts:
112871	#	lisp/textmodes/rst.el
112872
1128732017-03-19  Paul Eggert  <eggert@cs.ucla.edu>
112874
112875	Merge from origin/emacs-25
112876
112877	0e35405 Improve documentation of coding-systems
112878	c2fd04c Improve definition of 'variable-pitch' face on MS-Windows
112879	16fb50d Fix an error message in python.el
112880	a2a2073 Clarify major mode switching
112881	fc38671 Add helpful comment to compile-command's docstring
112882	ee65d85 Fix ':version' of 'select-enable-primary'
112883
1128842017-03-19  Paul Pogonyshev  <pogonyshev@gmail.com>
112885
112886	Fix bug in generator function with pcase (Bug#26068)
112887
112888	* lisp/emacs-lisp/cl-macs.el (cl--sm-macroexpand): Remove some calls
112889	to symbol-name.
112890
1128912017-03-19  Alan Mackenzie  <acm@muc.de>
112892
112893	Fix chaotic indentation of C++ lambda.  Enhance documentation thereof
112894
112895	* lisp/progmodes/cc-engine.el (c-looking-at-inexpr-block): qualify an
112896	invocation of c-on-identifier with a check we're not at the _end_ of an
112897	identifier.
112898
112899	* doc/misc/cc-mode.texi: (Tex title page): Remove @subtitlefont because the
112900	perl versions of texi2dvi haven't implemented it.
112901	(Syntactic Symbols): Note that `inlambda' is also used in C++ Mode, not just
112902	in Pike Mode.
112903	(Statement Block Symbols): Add a section illustrating a C++ lambda function.
112904	(FAQ): Add a question about "excessive" indentation of the contents of a C++
112905	lambda function, and how to get rid of it.
112906
1129072017-03-19  Stefan Monnier  <monnier@iro.umontreal.ca>
112908
112909	Remove unused vars in cl-extra.el and tramp.el.
112910
112911	* lisp/emacs-lisp/cl-extra.el (cl--print-table): Remove unused vars.
112912
112913	* lisp/net/tramp.el (tramp-dissect-file-name): Remove unused `match'.
112914	(outline-regexp, ls-lisp-use-insert-directory-program): Declare.
112915	(tramp-find-foreign-file-name-handler): Mark unused arg, remove unused `v`.
112916
1129172017-03-19  Stefan Monnier  <monnier@iro.umontreal.ca>
112918
112919	Improve describe-symbol's layout of slots when describing types
112920
112921	* lisp/emacs-lisp/cl-extra.el (cl--print-table): New function.
112922	(cl--describe-class-slots): Use it.
112923
1129242017-03-18  Michael Albinus  <michael.albinus@gmx.de>
112925
112926	Fix Bug#26156
112927
112928	* lisp/net/tramp.el (tramp-completion-file-name-handler-alist):
112929	<expand-file-name>: Remove handler.  (Bug#26156)
112930
1129312017-03-18  Stefan Monnier  <monnier@iro.umontreal.ca>
112932
112933	* lisp/obarray.el (obarray-size): Avoid compiler warning.
112934
1129352017-03-18  Eli Zaretskii  <eliz@gnu.org>
112936
112937	Fix last change in lib/Makefile.in
112938
112939	* lib/Makefile.in (srcdir): Define, as including
112940	$(srcdir)/../nt/gnulib-cfg.mk needs that.
112941
1129422017-03-18  Paul Eggert  <eggert@cs.ucla.edu>
112943
112944	* configure.ac: Fix typo in diagnostic.
112945
1129462017-03-18  Paul Eggert  <eggert@cs.ucla.edu>
112947
112948	Port out-of-source builds to windows-nt
112949
112950	Problem reported by Angelo Graziosi in:
112951	https://lists.gnu.org/r/emacs-devel/2017-03/msg00431.html
112952	* lib/Makefile.in: Prepend $(srcdir) to ../nt/gnulib-cfg.mk,
112953	to handle out-of-source builds if windows-nt.
112954
1129552017-03-17  Eli Zaretskii  <eliz@gnu.org>
112956
112957	MS-Windows followup for switch from Automake
112958
112959	* nt/INSTALL:
112960	* nt/INSTALL.W64: Remove references to Automake.  (Bug#26100)
112961
1129622017-03-17  Eli Zaretskii  <eliz@gnu.org>
112963
112964	Improve documentation of interactive "r".
112965
112966	* doc/lispref/commands.texi (Interactive Codes): Mention that mark
112967	must be set for "r" to work.
112968
1129692017-03-17  Paul Eggert  <eggert@cs.ucla.edu>
112970
112971	Fixups for GNU Make switchover
112972
112973	This fixes some minor problems introduced in the recent switch to GNU
112974	Make, discovered by further testing.  Without some of these changes
112975	'make -j' would sometimes have race conditions caused by missing
112976	dependencies.  (Bug#26100)
112977	* .gitignore: Remove src/stamp-h.in, src/stamp-h1.
112978	* Makefile.in ($(MAKEFILE_NAME)): Depend on configure, not
112979	src/config.in, since the former's timestamp now represents
112980	the latter's.
112981	($(srcdir)/configure): Use plain ./autogen.sh, for consistency
112982	with other autogen.sh invocations.
112983	($(srcdir)/src/stamp-h.in):
112984	Remove rule, as this file is no longer created.
112985	* Makefile.in (top_distclean):
112986	* src/Makefile.in (bootstrap-clean):
112987	No need to remove stamp-h1, as that was an Automake byproduct
112988	and Automake is no longer in use.
112989	* lib/Makefile.in, src/Makefile.in:
112990	(AUTOCONF_INPUTS, $(top_srcdir)/configure): Remove.
112991	(../config.status, Makefile): Simplify by limiting dependencies
112992	to files we care about and files in the repository, and by
112993	using just one file to represent the timestamps on multiple
112994	targets updated by the same rule.
112995	* autogen.sh: Do not create or use src/stamp-h.in.
112996	Instead, have 'find' test the two output files directly.
112997
1129982017-03-17  Paul Eggert  <eggert@cs.ucla.edu>
112999
113000	Switch from Automake to GNU Make
113001
113002	Emacs assumes GNU Make, and GNU Make has much of the functionality of
113003	Automake built-in.  The Emacs build process uses Automake primarily
113004	because Emacs uses some Gnulib code and Gnulib formerly required
113005	Automake.  Now that Gnulib no longer requires Automake, Emacs can
113006	stop using Automake and this should simplify Emacs maintenance
113007	in the future (Bug#26100).  Although this patch may look long, most of
113008	it is generated automatically: the changes to build-aux/config.guess,
113009	build-aux/config.sub, build-aux/install-sh, and lib/gnulib.mk.in are
113010	all done by admin/merge-gnulib.
113011	* .gitignore: Remove build-aux/ar-lib, build-aux/compile,
113012	build-aux/config.guess, build-aux/config.sub, build-aux/depcomp,
113013	build-aux/install-sh, build-aux/missing, and lib/Makefile.in,
113014	as they are no longer built by autogen.sh.
113015	Add lib/gnulib.mk, as it is now built by 'configure'.
113016	Remove nt/gnulib.mk, as it is no longer built by 'make'.
113017	* INSTALL.REPO, README, admin/make-tarball.txt:
113018	Remove mention of Automake.
113019	* Makefile.in (AUTOCONF, AUTOMAKE, AUTOHEADER, ACLOCAL, lib)
113020	(AUTOCONF_INPUTS, ACLOCAL_PATH, ACLOCAL_INPUTS)
113021	($(srcdir)/aclocal.m4, AUTOMAKE_INPUTS)
113022	($(srcdir)/lib/Makefile.in, $(srcdir)/nt/gnulib.mk, am--refresh):
113023	Remove.
113024	($(MAKEFILE_NAME)): Depend on lib/gnulib.mk.in.
113025	($(srcdir)/configure, $(srcdir)/src/stamp-h.in)
113026	($(srcdir)/src/config.in):
113027	Use autogen.sh instead of doing it by hand.
113028	* admin/merge-gnulib (AVOIDED_MODULES, avoided_flags)):
113029	New vars, to simplify processing of avoided modules.
113030	(GNULIB_TOOL_FLAGS): Move --avoid flags into AVOIDED_MODULES.
113031	Add --gnu-make, and change makefile name to gnulib.mk.in.
113032	Copy config.guess, config.sub, and install-sh too, since
113033	Automake no longer does that for us.
113034	* admin/notes/copyright:
113035	* admin/update_autogen (genfiles):
113036	Update list of files.
113037	Remove hack for nt/gnulib.mk, a file that is no longer needed.
113038	* autogen.sh (progs): Remove Automake.
113039	(automake_min): Remove.
113040	Build aclocal.m4 so that autoreconf need not use aclocal.
113041	* build-aux/config.guess, build-aux/config.sub:
113042	* build-aux/install-sh:
113043	New files, copied from Gnulib.  These are now updated by
113044	admin/merge-gnulib instead by autogen.sh.
113045	* configure.ac (AC_PROG_MAKE_SET, ACLOCAL_PATH, AM_CONDITIONAL):
113046	Remove.
113047	(AM_INIT_AUTOMAKE, AM_SILENT_RULES): Remove call.
113048	(AC_PROG_CC_C_O): Call this instead of AM_PROG_CC_C_O.
113049	(BUILDING_FOR_WINDOWSNT, HYBRID_MALLOC_LIB): Remove; no longer needed.
113050	(--disable-silent-rules): New option, since Automake no longer
113051	does this for us.
113052	(AM_V, AM_DEFAULT_V): Set unconditionally, and do not bother
113053	with AM_SUBST_NOTMAKE.
113054	(AC_PROG_INSTALL): Add call.
113055	(MAKEINFO): Do not bother with the 'missing' program.
113056	(MAKEINFO, SYSTEM_TYPE): AC_SUBST.
113057	(AC_CONFIG_FILES): Add Makefile, lib/gnulib.mk.
113058	(SUBDIR_MAKEFILES): Remove duplication.
113059	* lib/Makefile.am: Remove, replacing with:
113060	* lib/Makefile.in: New file, with the old Makefile.am contents
113061	and with the following changes:
113062	(AUTOMAKE_OPTIONS, BUILT_SOURCES, CLEANFILES, EXTRA_DIST)
113063	(MOSTLYCLEANDIRS, MOSTLYCLEANFILES, noinst_LIBRARIES, SUFFIXES)
113064	(AM_CFLAGS, DEFAULT_INCLUDES, libegnu_a_SOURCES, libegnu_a_LIBADD)
113065	(EXTRA_libegnu_a_SOURCES, libegnu_a_SHORTNAME, libegnu_a_CPPFLAGS):
113066	Remove.
113067	(VPATH, abs_top_builddir, top_builddir, top_srcdir, all, AM_V_AR)
113068	(AM_V_CC, AM_V_GEN, AM_V_at, DEPDIR, DEPFLAGS, MKDEPDIR, SYSTEM_TYPE)
113069	(libgnu.a, libegnu.a, ETAGS, $(ETAGS), tags, TAGS, clean)
113070	(mostlyclean, distclean, bootstrap-clean, maintainer-clean):
113071	New macros and rules, since Automake no longer does them.
113072	Include ../nt/gnulib-cfg.mk if SYSTEM_TYPE is windows-nt,
113073	instead of including ../nt/gnulib.mk if BUILDING_FOR_WINDOWS_NT.
113074	Include dependency files if AUTO_DEPEND.
113075	(ALL_CFLAGS, AUTOCONF_INPUTS, libgnu_a_OBJECTS, libegnu_a_OBJECTS):
113076	New macros.
113077	(bootstrap-clean): Depend on distclean, not maintainer-clean,
113078	and remove gnulib.mk.
113079	(AUTOCONF_INPUTS, $(top_srcdir)/configure, ../config.status, Makefile):
113080	New macros and rules, copied from ../Makefile.in.
113081	($(libegnu_a_OBJECTS), $(libgnu_a_OBJECTS)): Depend on BUILT_SOURCES.
113082	(.c.o, e-%.o): New generic rules.
113083	* lib/gnulib.mk: Remove.
113084	* lib/gnulib.mk.in: New file, which is built by autogen.sh
113085	and contains much of what used to be in lib/gnulib.mk.
113086	* m4/gnulib-common.m4: Copy from gnulib.
113087	* make-dist: Do not distribute build-aux/compile, build-aux/depcomp,
113088	build-aux/missing, build-aux/ar-lib, lib/Makefile.am, nt/gnulib.mk,
113089	nt/gnulib-modules-to-delete.cfg.  Distribute lib/Makefile.in,
113090	lib/gnulib.mk.in, and nt/gnulib-cfg.mk instead.
113091	* nt/Makefile.in (AM_V_GEN, am__v_GEN_, am__v_GEN_0)
113092	(am__v_GEN_1, ${srcdir}/gnulib.mk): Remove.
113093	* nt/gnulib-cfg.mk: New file, which supersedes ...
113094	* nt/gnulib-modules-to-delete.cfg: ... this file, which is removed.
113095	* src/Makefile.in (ACLOCAL_INPUTS): Remove.
113096	(AUTOCONF_INPUTS): Merge ACLOCAL_INPUTS into it.
113097	($(top_srcdir)/configure, ../config.status, config.in Makefile):
113098	Defer to parent Makefile.
113099
1131002017-03-17  Paul Eggert  <eggert@cs.ucla.edu>
113101
113102	Don't suggest Mailutils on MS-Windows
113103
113104	* configure.ac: Don't suggest GNU Mailutils on MS-Windows, as it
113105	hasn't been ported.
113106
1131072017-03-17  Thien-Thi Nguyen  <ttn@gnu.org>
113108
113109	Fix bug: Range-check integer ‘alpha’ frame parm value
113110
113111	Typo introduced 2013-04-01, "Prefer < to >
113112	in range checks such as 0 <= i && i < N".
113113
113114	* src/frame.c (x_set_alpha): Use ‘ialpha’, not ‘alpha’.
113115
1131162017-03-17  Thien-Thi Nguyen  <ttn@gnu.org>
113117
113118	Fix bug: Range-check integer ‘alpha’ frame parm value
113119
113120	Typo introduced 2013-04-01, "Prefer < to >
113121	in range checks such as 0 <= i && i < N".
113122
113123	* src/frame.c (x_set_alpha): Use ‘ialpha’, not ‘alpha’.
113124
1131252017-03-17  Michael Albinus  <michael.albinus@gmx.de>
113126
113127	Fix Bug#26127
113128
113129	* lisp/filenotify.el (file-notify--rm-descriptor): Check, that
113130	there is a function which could be called.  (Bug#26127)
113131
113132	* test/lisp/filenotify-tests.el (file-notify--test-cleanup):
113133	Clear also `file-notify-descriptors'.
113134	(file-notify--test-make-temp-name): Move up.
113135	(file-notify-test02-rm-watch): New test.
113136	(file-notify-test03-events, file-notify-test04-autorevert)
113137	(file-notify-test05-file-validity)
113138	(file-notify-test06-dir-validity)
113139	(file-notify-test07-many-events, file-notify-test08-backup)
113140	(file-notify-test09-watched-file-in-watched-dir)
113141	(file-notify-test10-sufficient-resources): Rename.
113142
1131432017-03-17  Paul Eggert  <eggert@cs.ucla.edu>
113144
113145	* etc/PROBLEMS: Say that HP-UX cc doesn't work.
113146
1131472017-03-17  Paul Eggert  <eggert@cs.ucla.edu>
113148
113149	Emacs 'movemail' is now a configure-time option
113150
113151	The new configure option --with-mailutils lets the builder say
113152	that Emacs should assume that GNU Mailutils is installed, instead
113153	of continuing to build and install its own limited and insecure
113154	substitute for 'movemail'.
113155	* INSTALL, etc/NEWS, etc/PROBLEMS: Mention --with-mailutils.
113156	* configure.ac: Add --with-mailutils option.
113157	(with_mailutils): New variable.
113158	Do not bother configuring 'movemail' when not building it.
113159	Warn about issues relating to --with-mailutils.
113160	* doc/emacs/rmail.texi (Movemail): Mention --with-mailutils.
113161	(Movemail, Remote Mailboxes): Document port numbers in
113162	POP and IMAP URLs.
113163	* lib-src/Makefile.in (with_mailutils): New macro.
113164	(UTILITIES): Use it.
113165
1131662017-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
113167
113168	Add obarray-size and fix tests accordingly.  Use obarrayp in cedet.
113169
113170	* lisp/obarray.el (obarray-size): New function.
113171
113172	* lisp/cedet/semantic/lex-spp.el (semantic-lex-spp-symbol)
113173	(semantic-lex-spp-save-table, semantic-lex-spp-macros):
113174	* lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
113175	Use obarrayp.
113176
113177	* test/lisp/obarray-tests.el (obarray-make-default-test)
113178	(obarray-make-with-size-test): Use it.
113179
1131802017-03-16  Michael Albinus  <michael.albinus@gmx.de>
113181
113182	Document remote file name syntax change
113183
113184	* doc/emacs/files.texi (Remote Files, Quoted File Names):
113185	* doc/misc/org.texi (dir): Change examples to use a method.
113186
113187	* doc/misc/tramp.texi (Top) [trampf]: Remove macro.  Add
113188	`Testing' menu entry.
113189	(History): Fix typos.  Mention syntax change.
113190	(Configuration, Default Host, File name Syntax)
113191	(File name completion, Frequently Asked Questions):
113192	Change examples to use a method.
113193	(External methods, Default Host, Multi-hops, Remote processes):
113194	Fix typos.
113195	(Default Method): Mention pseudo method "-".
113196	(External packages): Rewrite intention of `non-essential'.
113197
113198	* etc/NEWS: Mark recent Tramp entries as documented.
113199
1132002017-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
113201
113202	(semantic-lex-type-invalid): Fix nested backquote.
113203
113204	* lisp/cedet/semantic/lex.el: Use lexical-binding.
113205	(semantic-lex-type-invalid): Fix nested backquote.
113206	(semantic-lex-map-symbols, semantic-lex-type-symbol)
113207	(semantic-lex-keyword-symbol): Use obarrayp.
113208
1132092017-03-15  Michael Albinus  <michael.albinus@gmx.de>
113210
113211	* lisp/ido.el (ido-read-internal, ido-complete): Do not bind `non-essential'.
113212
1132132017-03-15  Mark Oteiza  <mvoteiza@udel.edu>
113214
113215	Write a named function
113216
113217	* lisp/comint.el (comint-nonblank-p): New function.
113218	(comint-input-filter): Use it.
113219
1132202017-03-15  Mark Oteiza  <mvoteiza@udel.edu>
113221
113222	Replace more nested ifs with cond
113223
113224	This is a continuation of 0db5ba4 "Replace nested ifs with cond".
113225	* lisp/play/dunnet.el (dun-special-object, dun-inven, dun-drop):
113226	(dun-drop-check, dun-swim, dun-break): Use when and cond where
113227	appropriate.
113228	(dun-examine): Fix indentation.
113229	(dun-doverb): Use when.
113230	(dun-read-line): Refactor.
113231
1132322017-03-15  Noam Postavsky  <npostavs@gmail.com>
113233
113234	Recomplexify ‘delete-trailing-whitespace’ by treating \n as whitespace again
113235
113236	Mostly reverts "Simplify ‘delete-trailing-whitespace’ by not treating
113237	\n as whitespace" from 2016-07-04.  Setting \n to non-whitespace
113238	causes the regex engine to backtrack a lot when searching for
113239	"\\s-+$" (Bug#26079).
113240
113241	* lisp/simple.el (delete-trailing-whitespace): Don't change newline
113242	syntax, search for "\\s-$" and then skip backward over trailing
113243	whitespace.
113244
1132452017-03-14  Paul Eggert  <eggert@cs.ucla.edu>
113246
113247	Merge from gnulib
113248
113249	This incorporates:
113250	2017-03-14 snippets: move unadjusted snippet sources to lib
113251	2017-03-14 gnulib-tool: fix typo in comment output
113252	2017-03-14 snippets: work around GNU Make 3.82 VPATH
113253	2017-03-13 gnulib-tool: minor --gnu-make fixups
113254	2017-03-12 gnulib-tool: new option --gnu-make
113255	* .gitignore: Remove lib/arg-nonnull.h, lib/c++defs.h,
113256	lib/warn-on-use.h.  Change exception from
113257	build-aux/snippet/_Noreturn.h to lib/_Noreturn.h.
113258	* admin/authors.el (authors-renamed-files-regexps):
113259	* admin/notes/copyright, make-dist:
113260	The snippet files moved from build-aux/snippet to lib.
113261	* lib/_Noreturn.h: Rename from build-aux/snippet/_Noreturn.h.
113262	* lib/arg-nonnull.h: Rename from build-aux/snippet/arg-nonnull.h.
113263	* lib/c++defs.h: Rename from build-aux/snippet/c++defs.h.
113264	* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
113265	* lib/warn-on-use.h: Rename from build-aux/snippet/warn-on-use.h.
113266
1132672017-03-14  Eli Zaretskii  <eliz@gnu.org>
113268
113269	Fix duplicate wording in Emacs manual
113270
113271	* doc/emacs/programs.texi (Which Function): Delete duplicate
113272	wording.  (Bug#26098)
113273
1132742017-03-14  Michael Albinus  <michael.albinus@gmx.de>
113275
113276	Reenable lost Tramp test case
113277
113278	* test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
113279	Reenable lost test case.
113280
1132812017-03-14  Alan Third  <alan@idiocy.org>
113282
113283	Revert "Remove NSEvent loop from ns_select (bug#25265)"
113284
113285	This reverts commit 3bd2e9e975ed29daaf03ca7559e4664aade0674f.
113286
1132872017-03-14  Alan Third  <alan@idiocy.org>
113288
113289	Revert "Add missing timeout value in ns_select"
113290
113291	This reverts commit a65236214d9202fb69a6ba5169d4ac1a4bcb0b0d.
113292
1132932017-03-14  Alan Third  <alan@idiocy.org>
113294
113295	Remove old macOS compatibility code
113296
113297	* src/nsimage.m, src/nsmenu.m, src/nsterm.m: Remove code only for
113298	macOS versions below 10.6 as they are not supported in Emacs 25+.
113299
1133002017-03-14  Michael Albinus  <michael.albinus@gmx.de>
113301
113302	Tune `tramp-completion-file-name-regexp-unified'
113303
113304	* lisp/net/tramp.el (tramp-completion-file-name-regexp-unified):
113305	Extend this regexp to match also "/".
113306
1133072017-03-14  Tino Calancha  <tino.calancha@gmail.com>
113308
113309	Show ancestor buffer in 3way merges
113310
113311	Add an option ediff-show-ancestor', to control if the ancestor buffer
113312	must be shown in 3way merges (Bug#25493); set it non-nil by default.
113313	Add a toggle to change this option interactively; the original
113314	value of the option is restored on exit.
113315
113316	Update the window setup so that the ancestor buffer is
113317	shown in 3way merges when ediff-show-ancestor is non-nil.
113318
113319	Any operation on ediff windows must take in account the
113320	ancestor window as well, when this is shown.
113321
113322	* lisp/vc/ediff-init.el (ediff-show-ancestor): New option.
113323	(ediff--show-ancestor-orig): New defvar.
113324	* lisp/vc/ediff-wind.el (ediff-window-Ancestor): New defvar.
113325	(ediff-setup-windows-plain-merge, ediff-setup-windows-multiframe-merge):
113326	Display ancestor buffer if ediff-show-ancestor is non-nil.
113327	(ediff-keep-window-config): Expect ancestor window in
113328	ediff-window-config-saved.
113329	(ediff-window-alist): Add entry for the ancestor window.
113330	* lisp/vc/ediff-util.el (ediff-setup-control-buffer):
113331	ediff-window-config-saved contains ancestor window.
113332	(ediff-show-ancestor): Delete this command.
113333	(ediff-setup-keymap): Bind ediff-toggle-show-ancestor to '/' for merge jobs.
113334	(ediff-update-diffs): Compute new diffs using ancestor buffer in 3way merges;
113335	don't cheat it to think that is performing a comparison, that trick is not
113336	necessary anymore: simply call 'ediff-setup-diff-regions-function'
113337	with file-A, file-B and the file ancestor.
113338	(ediff-recenter): Update doc string.  Consider the ancestor buffer.
113339	(ediff--check-ancestor-exists): New defun.
113340	(ediff-toggle-show-ancestor): New command; toggle ediff-show-ancestor.
113341	(ediff--restore-options-on-exit): Restore ediff-show-ancestor on exit.
113342	(ediff-scroll-vertically, ediff-scroll-horizontally)
113343	(ediff-operate-on-windows): Consider the ancestor as well.
113344	* lisp/vc/ediff-help.el (ediff-long-help-message-merge):
113345	List ediff-toggle-show-ancestor.
113346	* doc/misc/ediff.texi (Introduction, Quick Help Commands): Update manual.
113347
1133482017-03-14  Tino Calancha  <tino.calancha@gmail.com>
113349
113350	diff-mode: Improve default faces for buffer ancestor
113351
113352	* lisp/vc/ediff-init.el (ediff-current-diff-Ancestor)
113353	(ediff-fine-diff-Ancestor): Use defaults consistent with
113354	faces for 'ediff-buffer-A' and 'ediff-buffer-B'.
113355
1133562017-03-14  Hong Xu  <hong@topbug.net>
113357
113358	* lisp/paren.el (show-paren--default, show-paren-function): Add docstring.
113359
1133602017-03-13  Paul Eggert  <eggert@cs.ucla.edu>
113361
113362	Fix make-dist typo
113363
113364	* make-dist: Fix typo introduced in the Bug#25895 fix.
113365
1133662017-03-13  Eli Zaretskii  <eliz@gnu.org>
113367
113368	Fix wording in Emacs manual
113369
113370	* doc/emacs/text.texi (Paragraphs): Fix a garbled sentence.
113371	(Bug#26086)
113372
1133732017-03-13  Michael Albinus  <michael.albinus@gmx.de>
113374
113375	etc/NEWS: Remote file names require a method.
113376
1133772017-03-13  Michael Albinus  <michael.albinus@gmx.de>
113378
113379	Require method in remote file name syntax
113380
113381	* lisp/minibuffer.el (completion--nth-completion):
113382	Do not bind `non-essential'.
113383
113384	* lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
113385	* lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
113386	* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
113387	* lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection): Do not call
113388	`tramp-check-proper-method-and-host'.
113389
113390	* lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options): Better traces.
113391	(tramp-maybe-open-connection): Do not use argument for
113392	´tramp-completion-mode-p'.
113393
113394	* lisp/net/tramp.el (tramp-default-method-marker): New defconst.
113395	(tramp-prefix-format, tramp-postfix-method-format)
113396	(tramp-prefix-ipv6-format, tramp-postfix-ipv6-format)
113397	(tramp-prefix-port-format, tramp-postfix-host-format)
113398	(tramp-file-name-regexp, tramp-completion-file-name-regexp):
113399	Use `eq' instead of `eqal'.
113400	(tramp-method-regexp, tramp-domain-regexp)
113401	(tramp-remote-file-name-spec-regexp)
113402	(tramp-file-name-regexp-unified)
113403	(tramp-completion-file-name-regexp-unified)
113404	(tramp-completion-file-name-regexp-separate): Adapt regexp.
113405	(tramp-completion-file-name-handler-alist)
113406	(tramp-run-real-handler): Autoload them.
113407	(tramp-find-method): Handle `tramp-default-method-marker'.
113408	(tramp-check-proper-method-and-host)
113409	(tramp-completion-run-real-handler): Remove them.
113410	(tramp-error-with-buffer, tramp-connectable-p): Do not use
113411	argument for ´tramp-completion-mode-p'.
113412	(tramp-find-foreign-file-name-handler): Remove COMPLETION
113413	argument.  Do not apply heuristic for completion.
113414	(tramp-file-name-handler): Do not modify `non-essential'.
113415	(tramp-completion-file-name-handler): Change implementation.
113416	(tramp-autoload-file-name-handler)
113417	(tramp-completion-handle-file-name-all-completions):
113418	Call `tramp-run-real-handler'.
113419	(tramp-completion-mode-p): Do not autoload.  Remove argument.
113420	Do not apply heuristic for completion.
113421	(tramp-completion-dissect-file-name): Simplify implementation.
113422	(tramp-handle-file-name-as-directory): Call `tramp-connectable-p'.
113423
113424	* test/lisp/net/tramp-tests.el (tramp-test01-file-name-syntax)
113425	(tramp-test02-file-name-dissect)
113426	(tramp-test03-file-name-defaults)
113427	(tramp-test06-directory-file-name): Adapt to the new syntax.
113428	(tramp-test11-copy-file, tramp-test12-rename-file)
113429	(tramp--test-check-files): Deactivate temporarily tests with
113430	quoted file names.
113431	(tramp-test16-directory-files, tramp-test17-insert-directory):
113432	Adapt tests.
113433	(tramp-test24-file-name-completion): Do not check for
113434	completion mode.
113435	(tramp-test31-make-auto-save-file-name): Deactivate temporarily
113436	two tests.
113437
1134382017-03-13  Eli Zaretskii  <eliz@gnu.org>
113439
113440	Fix bidi paragraph direction when inserting text at newline
113441
113442	* src/insdel.c (invalidate_buffer_caches): Invalidate the bidi
113443	paragraph cache when inserting immediately after a newline.
113444	(Bug#26083)
113445
1134462017-03-13  Tino Calancha  <tino.calancha@gmail.com>
113447
113448	* test/lisp/emacs-lisp/cl-print-tests.el (cl-print-tests-1): Fix regexp.
113449
1134502017-03-13  Stefan Monnier  <monnier@iro.umontreal.ca>
113451
113452	* lisp/emacs-lisp/cl-print.el (cl-print-compiled): New variable
113453
113454	(cl-print-object) <compiled-function>: Print the docstring and
113455	interactive form.  Obey cl-print-compiled.
113456
1134572017-03-13  Noam Postavsky  <npostavs@gmail.com>
113458
113459	Fix indent-sexp when called from inside a string (Bug#21343)
113460
113461	* lisp/emacs-lisp/lisp-mode.el (indent-sexp): Get initial syntax parse
113462	state from `syntax-ppss'.
113463
1134642017-03-13  Noam Postavsky  <npostavs@gmail.com>
113465
113466	* lisp/emacs-lisp/lisp-mode.el (indent-sexp): Simplify.
113467
113468	* test/lisp/emacs-lisp/lisp-mode-tests.el (indent-sexp):
113469	(indent-subsexp, indent-sexp-in-string): New tests.
113470
1134712017-03-12  Stefan Monnier  <monnier@iro.umontreal.ca>
113472
113473	Use switch on pseudovector types; plus cleanups along the way
113474
113475	* src/lisp.h (PSEUDOVECTOR_TYPE): New function, extracted from mark_object.
113476	(PSEUDOVECTOR_TYPEP): Change type of `code'.
113477
113478	* src/alloc.c (sweep_vectors): Remove out-of-date assertion.
113479	(mark_object): Use PSEUDOVECTOR_TYPE.
113480
113481	* src/data.c (Ftype_of): Use switch on pvec type.
113482
113483	* src/print.c (print_object): Use switch on pvec type.
113484
113485	* lisp/emacs-lisp/cl-generic.el (cl--generic-typeof-types):
113486	Add recently added types.
113487
1134882017-03-12  Paul Eggert  <eggert@cs.ucla.edu>
113489
113490	Install update-game-score only on request
113491
113492	Most distributions do not install update-game-score properly
113493	due to setuid/setgid complications, so install it only when
113494	the installer specifies a user or group (Bug#25895).
113495	* .gitattributes: Remove lib-src/update-game-score.exe.manifest.
113496	* Makefile.in (gameuser, gamegroup, use_gamedir, PATH_GAME):
113497	New vars.
113498	(epaths-force): Use PATH_GAME.
113499	(uninstall): Remove snake-scores and tetris-scores only if shared.
113500	* configure.ac: Default --with-gameuser to 'no'.
113501	(UPDATE_MANIFEST): Remove.
113502	* etc/NEWS: Mention this.
113503	* lib-src/Makefile.in (UPDATE_MANIFEST): Remove.
113504	(use_gamedir): New macro.
113505	(UTILITIES): Remove update-game-score unless use_gamedir.
113506	(SCRIPTS): Remove $(UPDATE_MANIFEST).
113507	($(DESTDIR)${archlibdir}): Install game directory program and data
113508	only if use_gamedir.
113509	* lib-src/update-game-score.exe.manifest: Remove, as
113510	update-game-score is no longer installed on MS-Windows.
113511	* lisp/play/gamegrid.el (gamegrid-add-score-with-update-game-score):
113512	Use auxiliary program only if setuid or setgid.
113513	* make-dist: Do not distribute update-game-score.exe.manifest.
113514	* src/callproc.c (init_callproc):
113515	Set Vshared_game_score_directory based on PATH_GAME, not DOS_NT.
113516	(syms_of_callproc): Remove unnecessary initialization of
113517	Vshared_game_score_directory.
113518
1135192017-03-12  Simen Heggestøyl  <simenheg@gmail.com>
113520
113521	Add `touch-action' to list of CSS properties
113522
113523	* lisp/textmodes/css-mode.el (css-property-alist): Add `touch-action'
113524	property.
113525
1135262017-03-12  Eli Zaretskii  <eliz@gnu.org>
113527
113528	Teach etags to process ENUM_BF correctly
113529
113530	* lib-src/etags.c (sym_type): New enumeration value st_C_enum_bf.
113531	(hash): Regenerated values for asso_values[] array.
113532	(in_word_set): Update values of TOTAL_KEYWORDS and
113533	MAX_HASH_VALUE.  Add "ENUM_BF" to the wordlist[] array.
113534	(in_enum_bf): New file-global variable.
113535	(consider_token): Skip ENUM_BF if not in a macro definition.
113536	(C_entries): Reset the in_enum_bf flag when past its closing
113537	parenthesis.
113538
113539	* test/manual/etags/ETAGS.good_1:
113540	* test/manual/etags/ETAGS.good_2:
113541	* test/manual/etags/ETAGS.good_3:
113542	* test/manual/etags/ETAGS.good_4:
113543	* test/manual/etags/ETAGS.good_5:
113544	* test/manual/etags/ETAGS.good_6:
113545	* test/manual/etags/CTAGS.good: Adapt to changes in etags.
113546
1135472017-03-12  Michael Albinus  <michael.albinus@gmx.de>
113548
113549	Use path/to/file instead of path/to.file in tramp.texi
113550
113551	* doc/misc/tramp.texi (Configuration, File name Syntax):
113552	Use path/to/file instead of path/to.file.
113553
1135542017-03-12  Paul Eggert  <eggert@cs.ucla.edu>
113555
113556	Remove some stray gnulib files
113557
113558	* admin/merge-gnulib: rm m4/gnulib-tool.m4 too.
113559	(GNULIB_MODULES): Remove unsetenv, as it is not needed and
113560	the --avoid=unsetenv option avoided most of it anyway.
113561	* lib/unsetenv.c, m4/gnulib-tool.m4, m4/setenv.m4: Remove.
113562	* lib/gnulib.mk: Regenerate.
113563
1135642017-03-12  Paul Eggert  <eggert@cs.ucla.edu>
113565
113566	Merge from gnulib
113567
113568	This incorporates:
113569	2017-03-11 gnulib-common.m4: avoid aclocal.m4 bloat
113570	* doc/misc/texinfo.tex, m4/gnulib-common.m4: Copy from gnulib.
113571
1135722017-03-12  Glenn Morris  <rgm@gnu.org>
113573
113574	Remove trivial duplication in epg-config
113575
113576	* lisp/epg-config.el (epg-config--program-alist):
113577	Use epg-gpg-minimum-version.
113578
1135792017-03-12  Glenn Morris  <rgm@gnu.org>
113580
113581	Small epg-find-configuration improvement
113582
113583	* lisp/epg-config.el (epg-find-configuration):
113584	Handle epg-gpg-program customized but not saved.  (Bug#25947)
113585
1135862017-03-11  Stefan Monnier  <monnier@iro.umontreal.ca>
113587
113588	Improve last change
113589
113590	* lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2):
113591	Use ppss to check escaping and add help-echo.
113592
1135932017-03-11  Stefan Monnier  <monnier@iro.umontreal.ca>
113594
113595	Highlight useless backslashes in Elisp strings
113596
113597	* lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2):
113598	Put warning face on backslashes that have no effect.
113599
1136002017-03-11  Eli Zaretskii  <eliz@gnu.org>
113601
113602	Document how to customize input methods
113603
113604	* doc/emacs/mule.texi (Input Methods): Document how to customize
113605	input methods.
113606
1136072017-03-11  Eli Zaretskii  <eliz@gnu.org>
113608
113609	* lisp/net/eww.el (eww-reload): Doc fix.  (Bug#25981)
113610
1136112017-03-11  Eli Zaretskii  <eliz@gnu.org>
113612
113613	Fix generation of nt/gnulib.mk on macOS
113614
113615	* nt/Makefile.in (${srcdir}/gnulib.mk): Don't use the -f- option
113616	to Sed, as that is not portable with non-GNU Sed variants.
113617	(Bug#26043)
113618
1136192017-03-11  Eli Zaretskii  <eliz@gnu.org>
113620
113621	Avoid aborts/assertion violations due to 'vim-empty-lines-mode'
113622
113623	* src/xdisp.c (handle_single_display_spec): If position to be
113624	restored after processing the display property comes from an
113625	overlay, protect against that overlay's end point being outside of
113626	the narrowed region.
113627	Reported by Filipe Silva <filipe.silva@gmail.com> in
113628	https://lists.gnu.org/r/emacs-devel/2017-03/msg00176.html.
113629
1136302017-03-10  Glenn Morris  <rgm@gnu.org>
113631
113632	Small improvement for epa-display-error (bug#24553)
113633
113634	* lisp/epa.el (epa-display-error): Report the actual program in use.
113635
1136362017-03-10  Paul Eggert  <eggert@cs.ucla.edu>
113637
113638	Tweak X toolkit code to pacify modern GCC
113639
113640	* lwlib/lwlib-Xaw.c, lwlib/lwlib-Xm.c, lwlib/lwlib.c:
113641	Don’t include <stdlib.h>, since this code now calls emacs_abort
113642	rather than abort.
113643	* lwlib/lwlib-Xaw.c (make_dialog, xaw_generic_callback)
113644	(wm_delete_window):
113645	* lwlib/lwlib-Xm.c (make_menu_in_widget, do_call):
113646	* lwlib/lwlib.c (instantiate_widget_instance, lw_make_widget):
113647	* lwlib/xlwmenu.c (abort_gracefully, draw_separator)
113648	(separator_height, XlwMenuInitialize):
113649	Use emacs_abort, not abort.  Without this change, some calls
113650	to ‘abort’ were invalid, as stdlib.h was not always included.
113651	* src/widget.c (resources, emacsFrameClassRec):
113652	* src/xfns.c (x_window) [USE_X_TOOLKIT]:
113653	* src/xmenu.c (create_and_show_popup_menu) [USE_X_TOOLKIT]:
113654	* src/xterm.c (emacs_options) [USE_X_TOOLKIT}:
113655	(x_term_init) [USE_X_TOOLKIT]:
113656	Cast string constants to char * to pacify --enable-gcc-warnings.
113657
1136582017-03-10  Michael Albinus  <michael.albinus@gmx.de>
113659
113660	* doc/misc/tramp.texi (Android shell setup): Require adb program
113661
1136622017-03-10  Michael Albinus  <michael.albinus@gmx.de>
113663
113664	Adapt tramp-tests.el
113665
113666	* test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name)
113667	(tramp-test24-file-name-completion): Call
113668	`tramp-completion-mode-p' with argument.
113669
1136702017-03-10  Thien-Thi Nguyen  <ttn@gnu.org>
113671
113672	[doc] Replace bindat example: s/fortune cookie/rfc868 payload/
113673
113674	* doc/lispref/processes.texi (Bindat Examples):
113675	Mention two examples in intro blurb; rewrite first example.
113676
1136772017-03-10  Paul Eggert  <eggert@cs.ucla.edu>
113678
113679	Simplify checks for xdg-open and xdg-email
113680
113681	browse-url's xdg-open detection was too picky on some GNU/Linux
113682	desktops; see Bug#25778.  Simplify the code by assuming xdg-open works
113683	if it is executable, as nowadays this is more likely to be correct than
113684	trying to use heuristics from a few years ago.  Don't test for nohup: it
113685	is ineffective nowadays, as xdg-open's child uses the default action for
113686	SIGHUP even if xdg-open's invoker ignores SIGHUP.  While we're at it,
113687	allow for Wayland here, as "emacs -nw" might be running in a non-X
113688	Wayland terminal.
113689	* lisp/mail/emacsbug.el (report-emacs-bug-can-use-xdg-email):
113690	* lisp/net/browse-url.el (browse-url-can-use-xdg-open):
113691	Simplify to a test for DISPLAY and whether the helper program is
113692	executable.  Allow WAYLAND_DISPLAY as an option.
113693
1136942017-03-09  Vibhav Pant  <vibhavp@gmail.com>
113695
113696	Byte compile cond clauses without any bodies correctly.
113697
113698	* lisp/emacs-lisp/bytecomp.el (byte-compile-cond-jump-table): When a
113699	cond clause has no body, push t on to the stack.
113700
1137012017-03-09  Michael Albinus  <michael.albinus@gmx.de>
113702
113703	Fix bug#23006
113704
113705	* lisp/minibuffer.el (completion--nth-completion):
113706	Let-bind `non-essential'.
113707
113708	* lisp/net/tramp.el (tramp-completion-mode): Fix docstring.
113709	(tramp-completion-mode-p): Optional parameter VEC.  Replace
113710	check for `last-input-event' by analysing VEC argument.
113711	(tramp-error-with-buffer, tramp-file-name-handler)
113712	(tramp-connectable-p, tramp-handle-file-name-as-directory):
113713	* lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
113714
1137152017-03-09  Vibhav Pant  <vibhavp@gmail.com>
113716
113717	etc/NEWS: Add entry for new `switch' bytecode.
113718
1137192017-03-08  Paul Eggert  <eggert@cs.ucla.edu>
113720
113721	* src/data.c (arithcompare): Add comments.
113722
1137232017-03-08  Glenn Morris  <rgm@gnu.org>
113724
113725	Update a cl-print test
113726
113727	* test/lisp/emacs-lisp/cl-print-tests.el (cl-print-tests-1):
113728	Update for recent change in cl-print-object function output.
113729
1137302017-03-08  Sam Steingold  <sds@gnu.org>
113731
113732	Replace change-log-date-face -> change-log-date
113733
113734	This fixes c430f7e23fc2c22f251ace4254e37dea1452dfc3.
113735
1137362017-03-08  Michael Albinus  <michael.albinus@gmx.de>
113737
113738	Fix bug#26011
113739
113740	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
113741	Check, whether file is too large.  (Bug#26011)
113742
1137432017-03-08  Andreas Schwab  <schwab@linux-m68k.org>
113744
113745	* src/data.c (minmax_driver): Use CHECK_NUMBER_OR_FLOAT_COERCE_MARKER.
113746	(Fmax, Fmin): Restore documentation.
113747
113748	* src/data.c (cons_to_unsigned, cons_to_signed, Fstring_to_number): Reorder
113749	comparisons that are written backward.
113750
1137512017-03-08  Thien-Thi Nguyen  <ttn@gnu.org>
113752
113753	[doc elisp] Add some index entries for "old" advice mechanism
113754
113755	* doc/lispref/functions.texi (Porting old advice):
113756	Add one @cindex and two @findex entries.
113757
1137582017-03-08  Paul Eggert  <eggert@cs.ucla.edu>
113759
113760	* etc/NEWS: Adjust to match previous patch.
113761
1137622017-03-08  Paul Eggert  <eggert@cs.ucla.edu>
113763
113764	min and max should not return markers
113765
113766	Problem reported by Glenn Morris in:
113767	https://lists.gnu.org/r/emacs-devel/2017-03/msg00147.html
113768	* src/data.c (minmax_driver): Convert any marker result to an
113769	integer, since some callers assume this.
113770	* test/src/data-tests.el (data-tests-max, data-tests-min):
113771	Test for this.
113772
1137732017-03-08  Stefan Monnier  <monnier@iro.umontreal.ca>
113774
113775	* lisp/emacs-lisp/cl-print.el (cl-print-object): Use #f(..) for functions.
113776
1137772017-03-08  Alan Third  <alan@idiocy.org>
113778
113779	Add missing timeout value in ns_select
113780
113781	* src/nsterm.m (ns_select): Set timeout to distant future when relying
113782	on fd_handler's timeout.
113783
1137842017-03-07  Glenn Morris  <rgm@gnu.org>
113785
113786	* admin/update_autogen: Ensure nt/gnulib.mk exists, for autoreconf.
113787
1137882017-03-07  Paul Eggert  <eggert@cs.ucla.edu>
113789
113790	Remove isnan hack for Solaris 10 gcc 3.4.3
113791
113792	This seems to have been a false alarm (Bug#26018).
113793	* src/data.c (isnan):
113794	* src/floatfns.c (isfinite, isnan):
113795	Use standard implementation if available.
113796
1137972017-03-07  Eli Zaretskii  <eliz@gnu.org>
113798
113799	Support browsing URLs with embedded spaces on MS-Windows
113800
113801	* lisp/net/browse-url.el (browse-url-default-windows-browser):
113802	Unhex %XX hex-encoded characters, as w32-shell-execute doesn't
113803	support that in file:// URLs.  (Bug#26014)
113804
1138052017-03-07  Paul Eggert  <eggert@cs.ucla.edu>
113806
113807	Define copysign on all platforms
113808
113809	* configure.ac (copysign): Remove test.
113810	* src/floatfns.c (signbit): New macro, if not already defined.
113811	(Fcopysign): Use it instead of copysign.
113812	(Fcopysign, syms_of_floatfns): Define the function on all platforms.
113813
1138142017-03-07  Phillip Lord  <phillip.lord@russet.org.uk>
113815
113816	Revert "Replace ldefs-boot with a much smaller file"
113817
113818	This reverts commit c27b645956a11fab1dd8fa189254d525390958f5.
113819
113820	This commit has been reverted because the new mechanism was too
113821	sensitive to changes in the lisp source, generation of new ldefs-boot
113822	files was platform specific and resulted in warnings about undefined
113823	variables.
113824
113825	See also 11436e2890d.
113826
1138272017-03-07  Phillip Lord  <phillip.lord@russet.org.uk>
113828
113829	Revert "Record autoloads till emacs dump"
113830
113831	This reverts commit 72c668a9042ac6475eadedfee5c87fb1e6b2d753.
113832
113833	This commit has been reverted because the new mechanism was too
113834	sensitive to changes in the lisp source, generation of new ldefs-boot
113835	files was platform specific and resulted in warnings about undefined
113836	variables.
113837
113838	See also 11436e2890d.
113839
1138402017-03-07  Phillip Lord  <phillip.lord@russet.org.uk>
113841
113842	Revert "Remove unused ldefs-boot.el"
113843
113844	This reverts commit ef8c9f8fc922b615aca91b47820d1f1900fddc96.
113845
113846	This commit has been reverted because the new mechanism was too
113847	sensitive to changes in the lisp source, generation of new ldefs-boot
113848	files was platform specific and resulted in warnings about undefined
113849	variables.
113850
113851	See also 11436e2890d.
113852
1138532017-03-07  Phillip Lord  <phillip.lord@russet.org.uk>
113854
113855	Revert "Remove conditional includes from bootstrap"
113856
113857	This reverts commit 1b946305182312faa7fcd838caf55dcb07b2ab04.
113858
113859	This commit has been reverted because the new mechanism was too
113860	sensitive to changes in the lisp source, generation of new ldefs-boot
113861	files was platform specific and resulted in warnings about undefined
113862	variables.
113863
113864	See also 11436e2890d.
113865
1138662017-03-07  Phillip Lord  <phillip.lord@russet.org.uk>
113867
113868	Revert "Speed generation of ldefs-boot-auto"
113869
113870	This reverts commit 7b5e1c8238ef961fd3305b1dce053b9bced684ba.
113871
113872	This commit has been reverted because the new mechanism was too
113873	sensitive to changes in the lisp source, generation of new ldefs-boot
113874	files was platform specific and resulted in warnings about undefined
113875	variables.
113876
113877	See also 11436e2890d.
113878
1138792017-03-07  Phillip Lord  <phillip.lord@russet.org.uk>
113880
113881	Revert "Fix minor problems with loaddefs autogeneration"
113882
113883	This reverts commit f2bd2c1e6476acc71e71f6cb2a1c56c5edd900ba.
113884
113885	This commit has been reverted because the new mechanism was too
113886	sensitive to changes in the lisp source, generation of new ldefs-boot
113887	files was platform specific and resulted in warnings about undefined
113888	variables.
113889
1138902017-03-07  Noam Postavsky  <npostavs@gmail.com>
113891
113892	Set default when asking for send-mail-function (Bug#25874).
113893
113894	* lisp/mail/sendmail.el (sendmail-query-user-about-smtp): Pass first
113895	option as default for `completing-read'.
113896
1138972017-03-07  Paul Eggert  <eggert@cs.ucla.edu>
113898
113899	min and max now return one of their arguments
113900
113901	* doc/lispref/numbers.texi (Comparison of Numbers):
113902	* etc/NEWS: Document this.
113903	* src/data.c (Amax, Amin): Remove constants.  All uses removed.
113904	(minmax_driver): New function.
113905	(Fmax, Fmin): Use it instead of arith_driver.
113906	* test/src/data-tests.el (data-tests-max, data-tests-min): New tests.
113907
1139082017-03-06  Alan Third  <alan@idiocy.org>
113909
113910	Remove NSEvent loop from ns_select (bug#25265)
113911
113912	* src/nsterm.m (ns_select): Remove event processing loop and replace
113913	with simple test for a new event.
113914
1139152017-03-06  Eli Zaretskii  <eliz@gnu.org>
113916
113917	A better fix for bug#25845
113918
113919	* src/xdisp.c (font_for_underline_metrics): New function.
113920	* src/dispextern.h: Add its prototype.
113921	* src/xterm.c (x_draw_glyph_string):
113922	* src/w32term.c (x_draw_glyph_string):
113923	* src/nsterm.m (ns_draw_text_decoration): Call it.  This avoids
113924	having identical code 3 times in 3 different files.
113925
1139262017-03-06  Noam Postavsky  <npostavs@gmail.com>
113927
113928	Fix warning message about native completion (Bug#25984)
113929
113930	* lisp/progmodes/python.el (python-shell-completion-native-turn-on-maybe):
113931	The relevant variable is `python-shell-completion-native-enable'.
113932
1139332017-03-06  Tom Tromey  <tom@tromey.com>
113934
113935	Fix typos in EIEIO manual
113936
113937	* doc/misc/eieio.texi (Slot Options, Class Options): Fix typos.
113938
1139392017-03-05  Paul Eggert  <eggert@cs.ucla.edu>
113940
113941	Merge from gnulib
113942
113943	This incorporates:
113944	2017-03-04 dtotimespec: simplify
113945	* lib/dtotimespec.c: Copy from gnulib.
113946
1139472017-03-05  Paul Eggert  <eggert@cs.ucla.edu>
113948
113949	ffloor etc. now accept only floats
113950
113951	* etc/NEWS: Say why.
113952	* src/floatfns.c (Ffceiling, Fffloor, Ffround, Fftruncate):
113953	Require arg to be float.
113954	* test/src/floatfns-tests.el (fround-fixnum): Check this.
113955
1139562017-03-05  Eli Zaretskii  <eliz@gnu.org>
113957
113958	Fix display of cursor on underlined text
113959
113960	* src/nsterm.m (ns_draw_text_decoration):
113961	* src/xterm.c (x_draw_glyph_string):
113962	* src/w32term.c (x_draw_glyph_string): Compute the position and
113963	thickness of the underline by looking for the first glyph of the
113964	run of underlined glyphs that includes the glyph string we are
113965	drawing.  (Bug#25845)
113966
1139672017-03-05  Mark Oteiza  <mvoteiza@udel.edu>
113968
113969	Add more CL concept index items, print Concept Index
113970
113971	* doc/misc/cl.texi: Print concept index.
113972	(Generalized Variables, Variable Bindings):
113973	(Dynamic Bindings, Function Bindings, Macro Bindings, Conditionals):
113974	(Blocks and Exits, Iteration, Multiple Values): Add concept index
113975	items.
113976
1139772017-03-05  Mark Oteiza  <mvoteiza@udel.edu>
113978
113979	Add 'loop facility' to the CL concept index
113980
113981	* doc/misc/cl.texi (Loop Facility): Add "loop facility" as a concept
113982	index item.
113983
1139842017-03-05  martin rudalics  <rudalics@gmx.at>
113985
113986	In `window--display-buffer' fix behavior reported in Bug#25946
113987
113988	* lisp/window.el (window--display-buffer): Set the dedicated
113989	status of the window used and clear its history of previous
113990	buffers also for the case that the window already shows the
113991	buffer to be displayed.  (Bug#25946)
113992
1139932017-03-05  Paul Eggert  <eggert@cs.ucla.edu>
113994
113995	Compare and round more carefully
113996
113997	* etc/NEWS: Document this.
113998	* src/data.c (store_symval_forwarding):
113999	* src/sound.c (parse_sound):
114000	Do not botch NaN comparison.
114001	* src/data.c (cons_to_unsigned, cons_to_signed):
114002	Signal an error if a floating-point arg is not integral.
114003	* src/data.c (cons_to_unsigned, cons_to_signed):
114004	* src/fileio.c (file_offset):
114005	Use simpler overflow check.
114006	* src/dbusbind.c (xd_extract_signed, xd_extract_unsigned):
114007	Avoid rounding error in overflow check.
114008	(Fcar_less_than_car): Use arithcompare directly.
114009	* test/src/charset-tests.el: New file.
114010
1140112017-03-05  Paul Eggert  <eggert@cs.ucla.edu>
114012
114013	Fewer rounding errors with (format "%f" fixnum)
114014
114015	* etc/NEWS: Document this.
114016	* src/editfns.c (styled_format): When formatting integers via a
114017	floating-point format, use long double instead of double
114018	conversion, if long double’s extra precision might help.
114019
1140202017-03-05  Paul Eggert  <eggert@cs.ucla.edu>
114021
114022	* src/floatfns.c (Fftruncate): Simplify via emacs_trunc.
114023
114024	* src/editfns.c (styled_format): Omit unnecessary code for "%0d" etc.
114025
1140262017-03-04  Eli Zaretskii  <eliz@gnu.org>
114027
114028	Clarify documentation of 'raise' and 'height' display specs
114029
114030	* doc/lispref/display.texi (Other Display Specs): Clarify the
114031	effect of 'height' display spec on the following 'raise'.
114032	(Bug#25824)
114033
1140342017-03-04  Eli Zaretskii  <eliz@gnu.org>
114035
114036	Fix header shown by Info 'L' command
114037
114038	* lisp/info.el (Info-history-find-node): A better heading for the
114039	list of visited nodes.  (Bug#25876)
114040
1140412017-03-04  K. Handa  <handa@gnu.org>
114042
114043	Add a section about incorrect Bengali rendering.
114044
1140452017-03-04  Eli Zaretskii  <eliz@gnu.org>
114046
114047	Fix minor problems with loaddefs autogeneration
114048
114049	* admin/ldefs-clean.el (ldefs-clean): Bind coding-system-for-read
114050	and coding-system-for-write, to produce a UTF-8 file with Unix
114051	EOLs on MS-Windows.
114052
114053	* lisp/ldefs-boot-manual.el (image-type): Add autoload cookie.
114054
1140552017-03-04  David Bremner  <david@tethera.net>  (tiny change)
114056
114057	Fix issues with dedicated windows in shr.el
114058
114059	* lisp/net/shr.el (shr-pixel-buffer-width, shr-render-td-1): Make
114060	the window not dedicated, to avoid errors if it was, before
114061	setting its buffer temporarily.  (Bug#25828)
114062
1140632017-03-04  Eli Zaretskii  <eliz@gnu.org>
114064
114065	Mention problems with GPaste in PROBLEMS
114066
114067	* etc/PROBLEMS (GPaste): Mention the problem in yanking caused by
114068	GPaste, and its solution.  (Bug#25902)
114069
1140702017-03-04  Glenn Morris  <rgm@gnu.org>
114071
114072	Avoid duplicate gud menu items with gdb-mi
114073
114074	* lisp/progmodes/gud.el (gud-menu-map): Avoid duplicate "Run"
114075	entries in gdbmi mode.  (Bug#23923)
114076
1140772017-03-03  Paul Eggert  <eggert@cs.ucla.edu>
114078
114079	* src/editfns.c (styled_format): Omit unnecessary code.
114080
1140812017-03-03  Paul Eggert  <eggert@cs.ucla.edu>
114082
114083	logb now works correctly on large integers
114084
114085	* admin/merge-gnulib (GNULIB_MODULES): Add count-leading-zeros.
114086	* etc/NEWS: Document the change.
114087	* lib/count-leading-zeros.c, lib/count-leading-zeros.h:
114088	* m4/count-leading-zeros.m4: New files, copied from Gnulib.
114089	* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
114090	* src/floatfns.c: Include count-leading-zeros.h.
114091	(Flogb): Do not convert fixnum to float before taking the log,
114092	as the rounding error can cause the answer to be off by 1.
114093	* src/lisp.h (EMACS_UINT_WIDTH): New constant.
114094	* test/src/floatfns-tests.el (logb-extreme-fixnum): New test.
114095
1140962017-03-03  Paul Eggert  <eggert@cs.ucla.edu>
114097
114098	Merge from gnulib
114099
114100	This incorporates:
114101	2017-02-25 maintainer-makefile: Fix AC_PROG_SED with autoconf cache.
114102	2017-02-24 ftoastr: port to -Wdouble-promotion
114103	* lib/ftoastr.c, m4/gnulib-common.m4: Copy from gnulib.
114104
1141052017-03-03  Eli Zaretskii  <eliz@gnu.org>
114106
114107	Avoid duplicating characters recorded in macros
114108
114109	* src/keyboard.c (record_char): Don't store in macro definitions
114110	characters that came from executing a macro.  (Bug#25860)
114111
1141122017-03-03  Eli Zaretskii  <eliz@gnu.org>
114113
114114	Fix color component calculations in color.el
114115
114116	* lisp/color.el (color-name-to-rgb): Use 16 bits per color component.
114117	(color-rgb-to-hex): Accept an optional argument
114118	DIGITS-PER-COMPONENT, defaulting to 4, and format the hexadecimal
114119	notation either for 8 or 16 bits per component.  (Bug#25890)
114120	* lisp/net/shr-color.el (shr-color->hexadecimal): Call
114121	color-rgb-to-hex with the optional argument of 2, to match color
114122	processing on the Web.
114123
1141242017-03-03  Tino Calancha  <tino.calancha@gmail.com>
114125
114126	Use lexical binding in benchmark.el
114127
114128	* lisp/emacs-lisp/benchmark.el: Enable lexical binding.
114129	(benchmark-elapse): Use 'declare'.
114130	* test/lisp/emacs-lisp/benchmark-tests.el: Add test suite.
114131
1141322017-03-03  Noam Postavsky  <npostavs@gmail.com>
114133
114134	Switch pp.el to lexical binding
114135
114136	Additionally, do some minor code cleanup.
114137
114138	* lisp/emacs-lisp/pp.el: Set lexical-binding.
114139	(pp-buffer): Use skip-syntax-forward.
114140	(pp-eval-expression): Use push.
114141	(pp-last-sexp): Use with-syntax-table.
114142	* test/lisp/emacs-lisp/pp-tests.el: New tests.
114143
1141442017-03-03  Chunyang Xu  <mail@xuchunyang.me>  (tiny change)
114145
114146	Fix completing-read call in reb-change-syntax
114147
114148	* lisp/emacs-lisp/re-builder.el (reb-change-syntax): Use 'default' arg
114149	of completing-read.
114150
1141512017-03-03  Rolf Ade  <rolf@pointsman.de>  (tiny change)
114152
114153	sql-mode w/ sqlite: In-memory database
114154
114155	Enable the usage of an in-memory database. Prior to this, sql-mode w/
114156	sqlite could only be used with file databases.
114157	* lisp/progmodes/sql.el (sql-get-login-ext): Don't expand an empty
114158	file name provided by the user, but call sub-process sqlite with that,
114159	in which case it uses an in-memory database.
114160
1141612017-03-03  Allen Li  <vianchielfaura@gmail.com>
114162
114163	Stop abbrev-prefix-mark from adding extra newline (Bug#25767)
114164
114165	`abbrev--before-point' does not adjust `pos' to account for when it
114166	deletes the "-" left by abbrev-prefix-mark.  Therefore, when
114167	`abbrev-before-point' goes to restore point, it moves point one
114168	character too far forward.
114169
114170	* lisp/abbrev.el (abbrev--before-point): Adjust pos when deleting "-".
114171
1141722017-03-03  Tino Calancha  <tino.calancha@gmail.com>
114173
114174	* lisp/subr.el (apply-partially): Move to 'Basic Lisp functions' section.
114175
1141762017-03-02  Paul Eggert  <eggert@cs.ucla.edu>
114177
114178	Restore XFLOATINT but with restricted args
114179
114180	Turn instances of extract_float into XFLOAT_DATA when possible,
114181	and to a resurrected XFLOATINT when the arg is a number.
114182	The resurrected XFLOATINT is more like XFLOAT and XINT in
114183	that is valid only if its arg is a number.  This clarifies
114184	the ways in which floats can be extracted at the C level.
114185	* src/editfns.c (styled_format):
114186	* src/floatfns.c (extract_float, Fexpt):
114187	Use XFLOATINT rather than open-coding it.
114188	* src/fns.c (internal_equal):
114189	* src/image.c (imagemagick_load_image):
114190	* src/xdisp.c (resize_mini_window):
114191	Prefer XFLOAT_DATA to extract_float on values known to be floats.
114192	* src/frame.c (x_set_screen_gamma):
114193	* src/frame.h (NUMVAL):
114194	* src/image.c (x_edge_detection, compute_image_size):
114195	* src/lread.c (read_filtered_event):
114196	* src/window.c (Fset_window_vscroll):
114197	* src/xdisp.c (handle_single_display_spec, try_scrolling)
114198	(redisplay_window, calc_pixel_width_or_height, x_produce_glyphs)
114199	(on_hot_spot_p):
114200	Prefer XFLOATINT to extract_float on values known to be numbers.
114201	* src/lisp.h (XFLOATINT): Bring back this function, except
114202	it now assumes its argument is a number.
114203
1142042017-03-02  Glenn Morris  <rgm@gnu.org>
114205
114206	Ert commands to error if no test at point (bug#25931)
114207
114208	* lisp/emacs-lisp/ert.el (ert-results-mode-menu):
114209	Deactivate some items if no test at point.
114210	(ert--results-test-at-point-no-redefinition):
114211	Add option to signal an error rather than return nil.
114212	(ert-results-pop-to-backtrace-for-test-at-point)
114213	(ert-results-pop-to-messages-for-test-at-point)
114214	(ert-results-pop-to-should-forms-for-test-at-point)
114215	(ert-results-describe-test-at-point): Error if no test at point.
114216
1142172017-03-02  Paul Eggert  <eggert@cs.ucla.edu>
114218
114219	Remove XFLOATINT
114220
114221	* src/lisp.h (XFLOATINT): Remove this alias for extract_float.
114222	All callers changed to use extract_float.
114223	* src/frame.h (NUMVAL): Now an inline function, not a macro.
114224
1142252017-03-02  Paul Eggert  <eggert@cs.ucla.edu>
114226
114227	Fix rounding errors in <, =, etc.
114228
114229	* etc/NEWS: Document this.
114230	* src/bytecode.c (exec_byte_code):
114231	* src/data.c (arithcompare):
114232	Do not lose information when comparing floats to integers.
114233	* test/src/data-tests.el (data-tests-=, data-tests-<)
114234	(data-tests->, data-tests-<=, data-tests->=):
114235	Test this.
114236
1142372017-03-02  Eli Zaretskii  <eliz@gnu.org>
114238
114239	Fix display of mouse-highlight produced by overlapping overlays
114240
114241	* src/xfaces.c (face_at_buffer_position): If called to find the
114242	mouse-face, only consider the highest-priority source for that
114243	face, and ignore the rest.  Previously, all the mouse-face
114244	definitions at POS were merged in that case.
114245	* src/xdisp.c (note_mouse_highlight): Record the overlay that
114246	specifies mouse-face _after_ clearing the info about the previous
114247	overlay, so as not to clear the information about the just-recorded
114248	overlay.  (Bug#25906)
114249
1142502017-03-02  Eli Zaretskii  <eliz@gnu.org>
114251
114252	Fix display of strike-through text in variable-height lines
114253
114254	* src/nsterm.m (ns_draw_text_decoration):
114255	* src/xterm.c (x_draw_glyph_string):
114256	* src/w32term.c (x_draw_glyph_string): Fix calculation of the
114257	strike-through y-coordinate for a glyph row which is taller than
114258	the strike-through text.  (Bug#25907)
114259
1142602017-03-02  Martin Rudalics  <rudalics@gmx.at>
114261
114262	Don't call x_net_wm_state for scroll bar windows (Bug#24963, Bug#25887)
114263
114264	* src/xterm.c (handle_one_xevent): For ConfigureNotify events
114265	don't call x_net_wm_state when the window is a scroll bar window.
114266	(Bug#24963, Bug#25887)
114267
1142682017-03-02  Katsumi Yamaoka  <yamaoka@jpl.org>
114269
114270	gnus-summary-select-article-buffer: Don't re-render existing article
114271
114272	* lisp/gnus/gnus-sum.el (gnus-summary-select-article-buffer):
114273	Don't re-render existing article.
114274
1142752017-03-02  Katsumi Yamaoka  <yamaoka@jpl.org>
114276
114277	Don't add debbugs address to message body (bug#25896)
114278
114279	* lisp/gnus/gnus-group.el (gnus-read-ephemeral-bug-group):
114280	Don't add debbugs address to message body (bug#25896), and
114281	don't add it to message header either if it already exists.
114282
1142832017-03-02  Stefan Monnier  <monnier@iro.umontreal.ca>
114284
114285	* lisp/cedet/semantic/db-global.el: Make dynbind use explicit
114286
114287	(semanticdb--ih): Declare.
114288	(semanticdb-enable-gnu-global-databases): Use it instead of `ih'.
114289	(semanticdb-enable-gnu-global-in-buffer, semanticdb-get-database-tables)
114290	(semanticdb-find-tags-for-completion-method): Silence compiler warning.
114291
1142922017-03-02  Stefan Monnier  <monnier@iro.umontreal.ca>
114293
114294	* lisp/help-fns.el (describe-variable): Use cl-print for the value
114295
114296	Use `pp-buffer' rather than `pp' so as to avoid calling prin1 twice.
114297
1142982017-03-02  Glenn Morris  <rgm@gnu.org>
114299
114300	* test/lisp/net/puny-tests.el: New file.
114301
1143022017-03-02  Glenn Morris  <rgm@gnu.org>
114303
114304	Small puny.el fix
114305
114306	* lisp/net/puny.el (puny-decode-string-internal):
114307	Handle strings with no ascii parts.  (Bug#23688)
114308
1143092017-03-02  Glenn Morris  <rgm@gnu.org>
114310
114311	Small recover-this-file improvement
114312
114313	* lisp/files.el (recover-this-file): Explicit error if not
114314	visiting a file.  (Bug#23671)
114315
1143162017-03-01  Glenn Morris  <rgm@gnu.org>
114317
114318	Fix for coding-system completion (bug#23670)
114319
114320	* lisp/international/mule.el (read-buffer-file-coding-system):
114321	Ensure that completion-pcm--delim-wild-regex is enclosed in parens,
114322	so that completion-pcm--pattern->regex can append "*?".
114323
1143242017-03-01  Paul Eggert  <eggert@cs.ucla.edu>
114325
114326	Fix rounding error in ‘ceiling’ etc.
114327
114328	Without this fix, (ceiling most-negative-fixnum -1.0) returns
114329	most-negative-fixnum instead of correctly signaling range-error,
114330	and similarly for floor, round, and truncate.
114331	* configure.ac (trunc): Add a check, since Gnulib’s doc says
114332	‘trunc’ is missing from MSVC 9.  The Gnulib doc says ‘trunc’ is
114333	also missing from some other older operating systems like Solaris
114334	9 which I know we don’t care about any more, so MSVC is the only
114335	reason to worry about ‘trunc’ here.
114336	* src/editfns.c (styled_format): Formatting a float with %c is now an
114337	error.  The old code did not work in general, because FIXNUM_OVERFLOW_P
114338	had rounding errors.  Besides, the "if (FLOATP (...))" was in there
114339	only as a result of my misunderstanding old code that I introduced
114340	2011.  Although %d etc. is sometimes used on floats that represent
114341	huge UIDs or PIDs etc. that do not fit in fixnums, this cannot
114342	happen with characters.
114343	* src/floatfns.c (rounding_driver): Rework to do the right thing
114344	when the intermediate result equals 2.305843009213694e+18, i.e.,
114345	is exactly 1 greater than MOST_POSITIVE_FIXNUM on a 64-bit host.
114346	Simplify so that only one section of code checks for overflow,
114347	rather than two.
114348	(double_identity): Remove.  All uses changed to ...
114349	(emacs_trunc): ... this new function.  Add replacement for
114350	platforms that lack ‘trunc’.
114351	* src/lisp.h (FIXNUM_OVERFLOW_P, make_fixnum_or_float):
114352	Make it clear that the arg cannot be floating point.
114353	* test/src/editfns-tests.el (format-c-float): New test.
114354	* test/src/floatfns-tests.el: New file, to test for this bug.
114355
1143562017-03-01  Glenn Morris  <rgm@gnu.org>
114357
114358	Small help--loaded-p fix
114359
114360	* lisp/help-fns.el (help--loaded-p): Handle entry in load-history
114361	with nil file name.  (Bug#25847)
114362
1143632017-03-01  Leo Liu  <sdl.web@gmail.com>
114364
114365	* src/fns.c (Fbuffer_hash): Doc fix.
114366
1143672017-03-01  Eric Abrahamsen  <eric@ericabrahamsen.net>
114368
114369	Don't use mapconcat with chars in gnus registry marks (Bug#25839)
114370
114371	* lisp/gnus/gnus-registry.el (gnus-registry-article-marks-to-chars):
114372	Instead, use a plain concat, which will create a string out of a list
114373	of characters.
114374
1143752017-03-01  Noam Postavsky  <npostavs@gmail.com>
114376
114377	Fix epg-tests with dummy-pinentry program (Bug#23619)
114378
114379	* test/data/epg/dummy-pinentry: New file.
114380	* test/lisp/epg-tests.el (with-epg-tests): Add it to gpg-agent.conf
114381	when a passphrase is required.  Add debug declaration.  Set
114382	GPG_AGENT_INFO non-destructively.
114383
1143842017-02-28  Phillip Lord  <phillip.lord@russet.org.uk>
114385
114386	Speed generation of ldefs-boot-auto
114387
114388	Previously, generation of ldefs-boot-auto required at least one full
114389	bootstrap and, in extreme cases, two. Now, from build system, it
114390	requires the same time as taken to dump Emacs.
114391
114392	* Makefile.in: Remove all calls, pass to src.
114393	* admin/ldefs-clean.el: Update for changed messages.
114394	* lisp/Makefile.in (compile-first-delete): Add.
114395	* lisp/ldefs-boot-auto.el: Update.
114396	* src/Makefile.in (generate-ldefs-boot): Add.
114397
1143982017-02-28  Phillip Lord  <phillip.lord@russet.org.uk>
114399
114400	Add error handling to magic-mode-alist
114401
114402	* lisp/files.el (set-auto-mode): Add explicit error handling in two
114403	  places.
114404
1144052017-02-28  Phillip Lord  <phillip.lord@russet.org.uk>
114406
114407	Remove conditional includes from bootstrap
114408
114409	Previously, bootstrap-emacs includes optional functionality, depending
114410	on the platform which is not needed for bootstrap function.  As a
114411	result, bootstrap-emacs contains different functions in different
114412	circumstances.  If ldefs-boot-auto.el is generated, then loaded
114413	functions will not be added to ldefs-boot-auto.el, although they may be
114414	required during some builds.  With this change, bootstrap-emacs should
114415	always behave the same way and, therefore, require the same autoloads.
114416
114417	 * lisp/loadup.el: No longer load optional includes during bootstrap
114418	   dumping.
114419	 * lisp/ldefs-boot-auto.el: Regenerate.
114420	 * lisp/ldefs-boot-manual.el: Add two autoloads.
114421
1144222017-02-28  Phillip Lord  <phillip.lord@russet.org.uk>
114423
114424	Do not use find-file non-interactively
114425
114426	 * lisp/international/titdic-cnv.el (miscdic-convert): Use
114427	   insert-file-contents in place of find-file.
114428
1144292017-02-28  Stefan Monnier  <monnier@iro.umontreal.ca>
114430
114431	* src/xdisp.c (overlay_arrows_changed_p): Fix return value and doc
114432
114433	(update_overlay_arrows): Skip non-markers.
114434
1144352017-02-28  Ken Brown  <kbrown@cornell.edu>
114436
114437	Try to avoid hang when logging out of MS-Windows
114438
114439	* src/w32term.c (x_update_window_begin, x_update_window_end)
114440	(my_show_window, my_set_window_pos, my_set_focus)
114441	(my_set_foreground_window, my_destroy_window)
114442	(my_bring_window_to_top, x_iconify_frame): Replace calls to
114443	SendMessage by calls to SendMessageTimeout with a 6-second
114444	timeout.  (Bug#25875)
114445
1144462017-02-28  Stefan Monnier  <monnier@iro.umontreal.ca>
114447
114448	* lisp/textmodes/reftex-toc.el (reftex-re-enlarge): Demote errors.
114449
1144502017-02-28  Stefan Monnier  <monnier@iro.umontreal.ca>
114451
114452	* doc/misc/eieio.texi: Update to account for the cl-generic facilities
114453
114454	(Quick Start, Class Options, Generics): Adjust names for cl-generic.
114455	(Methods): Document cl-defmethod.
114456	Explain in more detail the order in which the various
114457	methods are executed.  Document the conditions under which a method
114458	is redefined.  Remove reference to `eieio-generic-call-arglst`.
114459	Don't document the precise return value of cl-next-method-p.
114460	(Static Methods): Adjust to use `subclass` specializer.
114461	(Method Invocation): Use cl-call-next-method and drop mention of :primary.
114462	(Signal Handling, Signals): Adjust names and args for cl-generic; add
114463	cl-no-primary-method.
114464	(CLOS compatibility, Wish List): Adjust to new featureset.
114465
1144662017-02-28  Stefan Monnier  <monnier@iro.umontreal.ca>
114467
114468	* lisp/cedet/mode-local.el (define-mode-local-override): Declare doctring.
114469
114470	* lisp/nxml/nxml-mode.el (nxml-mode): Use new sgml-syntax-propertize.
114471
1144722017-02-28  Stefan Monnier  <monnier@iro.umontreal.ca>
114473
114474	* lisp/textmodes/sgml-mode.el: syntax-propertize <![CDATA and <?..?>
114475
114476	(sgml-syntax-propertize-function): Mark <![CDATA and <?..?>.
114477	(sgml-syntax-propertize-inside): New fun.
114478
1144792017-02-28  Stefan Monnier  <monnier@iro.umontreal.ca>
114480
114481	* lisp/textmodes/css-mode.el (css-completion-at-point): Auto-insert
114482
114483	": ;" after completing a property.
114484
1144852017-02-28  Tino Calancha  <tino.calancha@gmail.com>
114486
114487	Show Ibuffer and jump to line listing current buffer
114488
114489	* lisp/ibuffer.el (ibuffer-jump): New command (Bug#25577).
114490
1144912017-02-27  Juri Linkov  <juri@linkov.net>
114492
114493	* lisp/vc/add-log.el (change-log-next-buffer): Check if file exists
114494
114495	before adding it to the list of files.
114496
1144972017-02-27  Juri Linkov  <juri@linkov.net>
114498
114499	Put text properties on query-replace separator string instead of "\0"
114500
114501	* lisp/replace.el (query-replace--split-string):
114502	Split at a substring instead of just character.
114503	(query-replace-read-from): Put text properties on the
114504	separator string instead of "\0".  (Bug#25482)
114505
1145062017-02-27  Juri Linkov  <juri@linkov.net>
114507
114508	Add file name and its extension to suggestions in dired-mark-files-regexp
114509
114510	* lisp/dired.el (dired-mark-files-regexp): Add file name
114511	and its extension to the list of suggested defaults.  (Bug#25578)
114512
1145132017-02-27  Chunyang Xu  <mail@xuchunyang.me>  (tiny change)
114514
114515	Prompt default extension in dired-mark-extension
114516
114517	* lisp/dired-x.el (dired-mark-extension): Prompt default extension
114518	based on extension of file at point.  (Bug#25578)
114519
1145202017-02-27  Tino Calancha  <tino.calancha@gmail.com>
114521
114522	Prevent for consing in cl-mapc and cl-mapl
114523
114524	* lisp/emacs-lisp/cl-extra.el (cl--mapcar-many): Add optional arg ACC;
114525	If non-nil, accumulate values in the result (Bug#25826).
114526	(cl-mapc): Do computations inside function instead of call cl-map.
114527	(cl-mapl): Do computations inside function instead of call cl-maplist.
114528	* lisp/emacs-lisp/cl-lib.el (mapcar): Add autoload cookie.
114529	Call cl--mapcar-many with non-nil 3rd argument.
114530	* test/lisp/emacs-lisp/cl-extra-tests.el (cl-extra-test-map)
114531	(cl-extra-test-mapc, cl-extra-test-mapcar, cl-extra-test-mapl)
114532	(cl-extra-test-maplist): New tests.
114533
1145342017-02-27  Tino Calancha  <tino.calancha@gmail.com>
114535
114536	Choose the right target dir on dired operations
114537
114538	Prevent from changing the input target dir
114539	when dired-dwim-target is non-nil (Bug#25609).
114540	* lisp/dired-aux.el (dired-do-create-files):
114541	If dired-dwim-target is non-nil, then bind 'default' to nil.
114542	* test/lisp/dired-tests.el (dired-test-bug25609): Add test.
114543
1145442017-02-27  Stefan Monnier  <monnier@iro.umontreal.ca>
114545
114546	* src/xdisp.c (overlay_arrows_changed_p): Fix last change.
114547
1145482017-02-27  Noam Postavsky  <npostavs@gmail.com>
114549
114550	Don't record eshell/clear "command" in history (Bug#25838)
114551
114552	`eshell/clear' is implemented by sending a series of blank lines,
114553	which is not a useful thing to have in the history.
114554
114555	* lisp/eshell/em-hist.el (eshell-input-filter-default): Use
114556	`string-blank-p' which does check for newlines (even though newlines
114557	have comment-end syntax, not whitespace syntax class).
114558	* lisp/eshell/esh-mode.el (eshell/clear): Remove
114559	`eshell-add-to-history' from `eshell-input-filter-functions' while
114560	sending the blank lines.  This change is needed to solve the bug if
114561	the user customizes `eshell-input-filter' to something that doesn't
114562	filter newlines.
114563
1145642017-02-26  Paul Eggert  <eggert@cs.ucla.edu>
114565
114566	Remove a few unused C functions
114567
114568	* src/eval.c (let_shadows_global_binding_p):
114569	* src/print.c (write_string):
114570	* src/systhread.c (sys_mutex_destroy, sys_thread_equal):
114571	Remove.
114572	* src/print.c (write_string): Rename from write_string_1.
114573	All uses changed.
114574
1145752017-02-26  Eli Zaretskii  <eliz@gnu.org>
114576
114577	Avoid segfault in overlay_arrows_changed_p
114578
114579	* src/xdisp.c (overlay_arrows_changed_p): Fix recent change
114580	to avoid a segfault.
114581
1145822017-02-26  Noam Postavsky  <npostavs@gmail.com>
114583
114584	Don't call package--ensure-init-file if initialized during startup
114585
114586	* lisp/emacs-lisp/package.el (package-initialize): Check
114587	`after-init-time' rather than `load-file-name' to decide if
114588	`package--ensure-init-file' should be called.  Depending on
114589	`load-file-name' will fail if the user calls `pacakge-initialize' in
114590	file which is loaded from the init file (Bug#24643, Bug#25819).
114591
1145922017-02-26  Eli Zaretskii  <eliz@gnu.org>
114593
114594	Fix display of before- and after-strings at invisible text
114595
114596	* src/xdisp.c (next_overlay_string): Don't raise the
114597	ignore_overlay_strings_at_pos_p flag if the iterator is already
114598	set to continue at a buffer position different from the one
114599	where the overlay strings we just processed were loaded.  (Bug#25856)
114600
1146012017-02-26  Michael Albinus  <michael.albinus@gmx.de>
114602
114603	Work on `tramp-completion-mode-p'
114604
114605	* etc/NEWS: Say that `tramp-completion-mode' is obsolete.
114606
114607	* lisp/net/tramp.el (tramp-completion-mode): Make it obsolete.
114608	(tramp-completion-mode-p): Reintroduce the check for 'tab.
114609
1146102017-02-25  Tom Tromey  <tom@tromey.com>
114611
114612	Use font-lock-doc-face in js-mode
114613
114614	Bug#25858:
114615	* lisp/progmodes/js.el (js-font-lock-syntactic-face-function): New
114616	defun.
114617	(js-mode): Use it.
114618	* test/lisp/progmodes/js-tests.el (js-mode-doc-comment-face): New
114619	test.
114620
1146212017-02-25  Noam Postavsky  <npostavs@gmail.com>
114622
114623	Don't use IP 0.0.0.0 for package test server (Bug#22582)
114624
114625	* test/lisp/emacs-lisp/package-resources/package-test-server.py: Set
114626	'server_address' when port number is given on the command line.  Print
114627	IP and port number as a URL, and flush it after printing.
114628	* test/lisp/emacs-lisp/package-tests.el:
114629	(package-test-update-archives-async): Grab the whole URL from server
114630	output.
114631
1146322017-02-25  Tom Tromey  <tom@tromey.com>
114633
114634	Add more branch support to vc-dir
114635
114636	Bug#25859:
114637	* lisp/vc/vc-dir.el (vc-dir-mode-map) Add "B" bindings.
114638	* lisp/vc/vc.el (vc-revision-history): New defvar.
114639	(vc-read-revision): Use vc-revision-history.
114640	(vc-print-branch-log): New function.
114641	* doc/emacs/maintaining.texi (VC Directory Commands): Document new
114642	bindings.
114643	* etc/NEWS: Mention new vc-dir bindings.
114644
1146452017-02-25  Alan Mackenzie  <acm@muc.de>
114646
114647	Allow for the :: operator in C++ "enum class" declarations.
114648
114649	* lisp/progmodes/cc-engine.el (c-backward-typed-enum-colon): Check for
114650	"::".
114651
1146522017-02-25  Michael Albinus  <michael.albinus@gmx.de>
114653
114654	Fix bug#25854
114655
114656	* lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
114657	Simplify error handling for huge inodes.
114658	(tramp-convert-file-attributes): Handle very huge inodes.  (Bug#25854)
114659
1146602017-02-25  Eli Zaretskii  <eliz@gnu.org>
114661
114662	Avoid leaving garbage on screen when using 'raise' display property
114663
114664	* src/xdisp.c (display_line): Reset voffset value of the iterator
114665	when it hits ZV, to avoid "inheriting" it to glyph rows past ZV,
114666	which then leaves stuff on screen that needs to be cleared by
114667	redisplay.  (Bug#25855)
114668
1146692017-02-25  Eli Zaretskii  <eliz@gnu.org>
114670
114671	Fix doc strings in info.el
114672
114673	* lisp/info.el (Info-selection-hook, Info-mode-hook)
114674	(Info-edit-mode-hook): Doc fixes.  (Bug#25794)
114675
1146762017-02-25  Eli Zaretskii  <eliz@gnu.org>
114677
114678	Fix doc string of 'posn-at-point'
114679
114680	* src/keyboard.c (Fposn_at_point): Clarify the doc string.
114681	(Bug#25796)
114682
1146832017-02-25  Peder O. Klingenberg  <peder@klingenberg.no>
114684
114685	New option -u / --suppress-output to emacsclient
114686
114687	* lib-src/emacsclient.c (print_help_and_exit, longopts)
114688	(decode_options, main): Implement new option --suppress-output / -u to
114689	suppress printing of eval-results.
114690	* doc/emacs/misc.texi (emacsclient Options): Document the new
114691	"--suppress-output/-u" options.
114692	* etc/NEWS: Mention the new options.
114693
1146942017-02-25  Noam Postavsky  <npostavs@gmail.com>
114695
114696	Fix scrolling with partial line corner case (Bug#25792)
114697
114698	Also fix up the scrolling tests so that they don't make so many
114699	assumptions about the current window configuration.
114700
114701	* src/xdisp.c (try_window): Take partial line height into account when
114702	comparing cursor position against scroll margin.
114703
114704	* test/manual/scroll-tests.el (scroll-tests-with-buffer-window): Add
114705	HEIGHT argument, to allow setting up window with exact height and
114706	partial line.
114707	(scroll-tests-display-buffer-with-height): New display-buffer action
114708	function.
114709	(scroll-tests-scroll-margin-over-max):
114710	(scroll-tests--scroll-margin-whole-window): Pass HEIGHT to
114711	`scroll-tests--scroll-margin-whole-window'.
114712	(scroll-tests-conservative-show-trailing-whitespace): New test.
114713	(scroll-tests-scroll-margin-negative): Fix line counting.
114714	(scroll-tests--point-in-middle-of-window-p): Set window height
114715	properly.
114716
1147172017-02-25  Tom Tromey  <tom@tromey.com>
114718
114719	Fix indentation error in js.el
114720
114721	* lisp/progmodes/js.el (js--indent-in-array-comp): Wrap forward-sexp
114722	call in condition-case.
114723	* test/lisp/progmodes/js-tests.el (js-mode-indentation-error): New
114724	test.
114725
1147262017-02-24  Tom Tromey  <tom@tromey.com>
114727
114728	add "async" and "await" keywords
114729
114730	* lisp/progmodes/js.el (js--keyword-re): Add async, await.
114731
1147322017-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
114733
114734	Use cl-print for Edebug and EIEIO
114735
114736	* lisp/emacs-lisp/edebug.el (edebug-prin1-to-string): Use cl-print.
114737	(edebug-prin1, edebug-print): Remove.
114738
114739	* lisp/emacs-lisp/eieio.el (object-print): Declare obsolete.
114740	(cl-print-object): Add a method for EIEIO objects.
114741	(eieio-edebug-prin1-to-string): Delete.
114742	(edebug-prin1-to-string): Don't advise any more.
114743
114744	* lisp/emacs-lisp/eieio-datadebug.el (data-debug-insert-object-button):
114745	Replace `object-print' -> `cl-prin1-to-string'.
114746
1147472017-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
114748
114749	Fix left over uses of `call-next-method'
114750
114751	* lisp/cedet/semantic/db-global.el (object-print):
114752	* lisp/cedet/semantic/db.el (object-print): Use `cl-call-next-method'.
114753
1147542017-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
114755
114756	Minor redisplay optimizations
114757
114758	* src/frame.c (Ficonify_frame): No need to redisplay everything.
114759
114760	* src/xdisp.c (overlay_arrows_changed_p): Add `set_redisplay' argument.
114761	(redisplay_internal): Use it to avoid redisplaying everything.
114762	(try_window_id): Use it keep the same behavior as before.
114763
1147642017-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
114765
114766	* lisp/emacs-lisp/cl-print.el: New file
114767
114768	* lisp/emacs-lisp/nadvice.el (advice--where): New function.
114769	(advice--make-docstring): Use it.
114770
114771	* src/print.c (print_number_index): Don't declare here any more.
114772	(Fprint_preprocess): New function.
114773
114774	* test/lisp/emacs-lisp/cl-print-tests.el: New file.
114775
1147762017-02-24  Peder O. Klingenberg  <peder@klingenberg.no>
114777
114778	Make calc's least common multiple positive (bug#25255)
114779
114780	* lisp/calc/calc-comb.el (calcFunc-lcm): Return absolute value.
114781	* doc/misc/calc.texi (Combinatorial Functions): Update for the above.
114782
1147832017-02-24  Tino Calancha  <tino.calancha@gmail.com>
114784
114785	Documentation fix in elisp reference manual
114786
114787	* doc/lispref/macros.texi (Defining Macros): Drop redundant mention
114788	on 'declare' forms (Bug#25846).
114789
1147902017-02-24  Gemini Lasswell  <gazally@runbox.com>
114791
114792	Support read syntax for circular objects in Edebug (Bug#23660)
114793
114794	* lisp/emacs-lisp/edebug.el (edebug-read-special): New name
114795	for edebug-read-function. Handle the read syntax for circular
114796	objects.
114797	(edebug-read-objects): New variable.
114798	(edebug-read-and-maybe-wrap-form1): Reset edebug-read-objects.
114799
114800	* src/lread.c (Fsubstitute_object_in_subtree): Make
114801	substitute_object_in_subtree into a Lisp primitive.
114802
1148032017-02-24  Lixin Chin  <lixinchin@gmail.com>  (tiny change)
114804
114805	Add Conference to the list of valid bibtex entry types
114806
114807	* lisp/textmodes/bibtex.el (bibtex-BibTeX-entry-alist):
114808	Add Conference as a duplicate of InProceedings.  (Bug#25143)
114809
1148102017-02-23  Glenn Morris  <rgm@gnu.org>
114811
114812	* lisp/comint.el (comint-password-prompt-regexp): Add SUDO. (Bug#24817)
114813
1148142017-02-23  Glenn Morris  <rgm@gnu.org>
114815
114816	Small dunnet score file improvements
114817
114818	* lisp/play/dunnet.el (dun-log-file): Switch to per-user default.
114819	(dun-do-logfile): Handle non-existing score file.
114820
1148212017-02-23  Glenn Morris  <rgm@gnu.org>
114822
114823	* lisp/play/dunnet.el (dun-help): Doc fix.
114824
1148252017-02-23  Mark Oteiza  <mvoteiza@udel.edu>
114826
114827	Declare dun-line and dun-line-list
114828
114829	Previously, there were free variables 'line' and 'line-list'.
114830	* lisp/play/dunnet.el (dun-line, dun-line-list): New variables.
114831	(dun-press, dun-vparse, dun-parse2, dun-unix-parse, dun-batch-parse):
114832	(dun-batch-parse2, dun-batch-loop, dun-batch-dos-interface):
114833	(dun-batch-unix-interface): Use them.
114834
1148352017-02-23  Paul Eggert  <eggert@cs.ucla.edu>
114836
114837	Merge from gnulib
114838
114839	This incorporates:
114840	2017-02-16 xbinary-io: rename from xsetmode
114841	2017-02-15 xsetmode: new module
114842	* lib-src/etags.c (main):
114843	* lib-src/hexl.c (main):
114844	* src/emacs.c (main) [MSDOS]:
114845	Prefer set_binary_mode to the obsolescent SET_BINARY.
114846	* lib/binary-io.c, lib/binary-io.h: Copy from gnulib.
114847
1148482017-02-23  Paul Eggert  <eggert@cs.ucla.edu>
114849
114850	hexl: handle large files and I/O errors
114851
114852	* lib-src/hexl.c: Include inttypes.h, for PRIxMAX etc.
114853	Do not include ctype.h, as the code no longer uses isdigit.
114854	(DEFAULT_GROUPING, un_flag, iso_flag, group_by): Now local to ‘main’.
114855	(DEFAULT_BASE, endian): Remove; was not really used.
114856	(usage): Remove; now done by ‘main’, as that’s simpler.
114857	(progname): Now static.
114858	(output_error, hexchar): New functions.
114859	(main): Use them.  Simplify.  Remove "-oct", "-big-endian", and
114860	"-little-endian" options, as they did not work and were not used.
114861	Use SET_BINARY only on stdin, and fopen with "rb" otherwise.
114862	Use SET_BINARY only once on stdout.
114863	Do not assume file offsets fit in ‘long’.
114864	If an I/O error occurs, report it and exit with nonzero status.
114865
1148662017-02-23  Eli Zaretskii  <eliz@gnu.org>
114867
114868	Avoid quitting inside a critical section on MS-Windows
114869
114870	* src/w32uniscribe.c (uniscribe_list_family):
114871	* src/w32font.c (w32font_list_family, w32font_text_extents)
114872	(w32font_list_internal, w32font_match_internal)
114873	(list_all_matching_fonts): Prevent quitting while these functions
114874	cons lists of fonts, to avoid leaving the critical section taken
114875	by the main thread, which will then cause any other thread
114876	attempting to enter the critical section to hang.  (Bug#25279)
114877
1148782017-02-22  Dmitry Gutov  <dgutov@yandex.ru>
114879
114880	Use revision-completion-table in vc-retrieve-tag
114881
114882	* lisp/vc/vc.el (vc-retrieve-tag): Use the
114883	revision-completion-table command for completion (bug#25710).
114884
1148852017-02-22  Stefan Monnier  <monnier@iro.umontreal.ca>
114886
114887	* lisp/emacs-lisp/cl-generic.el (cl--generic-typeof-types): Add `atom'
114888
114889	remove entries whose car can't be returned by type-of.
114890	(cl--generic-all-builtin-types): New var.
114891	(cl-generic-generalizers): Use it to avoid requiring
114892	extra entries in cl--generic-typeof-types.
114893
1148942017-02-22  Noam Postavsky  <npostavs@gmail.com>
114895
114896	Find macro binding for symbol-bound macros too (Bug#6848)
114897
114898	There are 2 ways to bind a macro: with global-set-key or
114899	kmacro-bind-to-key.  The former binds a key to a symbol, while the
114900	latter binds to a lambda.  In 2010-03-03 "Fix keyboard macro key
114901	lookup (Bug#5481)", `insert-kbd-macro' was fixed to detect the lambda
114902	case, but broke the symbol case.
114903
114904	* lisp/macros.el (insert-kbd-macro): Also check for bindings of
114905	MACRONAME.
114906
1149072017-02-22  Stefan Monnier  <monnier@iro.umontreal.ca>
114908
114909	* lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Fix last change
114910
1149112017-02-22  Juri Linkov  <juri@linkov.net>
114912
114913	* lisp/isearch.el (lazy-highlight-max-at-a-time): Doc fix (bug#21092).
114914
1149152017-02-22  Juri Linkov  <juri@linkov.net>
114916
114917	* lisp/isearch.el (isearch-lazy-highlight): New choice ‘all-windows’.
114918
114919	(isearch-lazy-highlight-update): Check it to decide whether to apply
114920	overlays only on the selected window.
114921
114922	* lisp/follow.el (follow-mode): Set isearch-lazy-highlight to ‘all-windows’.
114923	(Bug#17453, bug#21092)
114924
1149252017-02-22  Paul Eggert  <eggert@cs.ucla.edu>
114926
114927	Minor weak hash table performance tweaks
114928
114929	* src/fns.c (make_hash_table): Omit unnecessary assignment to
114930	h->next_weak when the hash table is not weak.
114931	(copy_hash_table): Put the copy next to the original in the
114932	weak_hash_tables list, as this should have better locality
114933	when scanning the weak hash tables.
114934
1149352017-02-22  Paul Eggert  <eggert@cs.ucla.edu>
114936
114937	Use float instead of Lisp_Object for rehash_size
114938
114939	* src/alloc.c (purecopy_hash_table):
114940	* src/fns.c (maybe_resize_hash_table, Fmake_hash_table):
114941	(Fhash_table_rehash_size):
114942	* src/lisp.h (struct Lisp_Hash_Table.rehash_size):
114943	The rehash_size member of struct Lisp_Hash_Table is now a
114944	float, not a Lisp_Object.
114945	* src/alloc.c (purecopy_hash_table): Assign members in order.
114946	* src/fns.c (make_hash_table): Use EMACS_INT for size and
114947	float for rehash_size, instead of Lisp_Object for both.
114948	All callers changed.
114949	* src/lisp.h (DEFAULT_REHASH_SIZE): Now float, not double,
114950	and 1 smaller.
114951	* src/print.c (print_object): Simplify by calling
114952	Fhash_table_rehash_size and Fhash_table_rehash_threshold.
114953	Avoid unnecessary NILP.
114954
1149552017-02-22  Paul Eggert  <eggert@cs.ucla.edu>
114956
114957	Use ptrdiff_t instead of Lisp_Object for collision
114958
114959	* src/alloc.c (purecopy_hash_table): Assign, don’t purecopy.
114960	* src/fns.c (set_hash_next_slot, set_hash_index_slot): Hash index
114961	arg is now ptrdiff_t index (or -1 if empty), not Lisp_Object
114962	integer (or Qnil if empty).  All callers changed.
114963	(larger_vecalloc): New static function.
114964	(larger_vector): Use it.
114965	(HASH_NEXT, HASH_INDEX): Move here from lisp.h.  Return ptrdiff_t
114966	index (or -1) not Lisp_Object integer (or Qnil).  All callers changed.
114967	* src/fns.c (make_hash_table, maybe_resize_hash_table, hash_lookup)
114968	(hash_put, hash_remove_from_table, hash_clear, sweep_weak_table):
114969	* src/profiler.c (evict_lower_half, record_backtrace):
114970	-1, not nil, is now the convention for end of collision list.
114971	* src/fns.c (maybe_resize_hash_table): Avoid double-initialization
114972	of the free list.  Reallocate H->next last, in case other
114973	reallocations exhaust memory.
114974	* src/lisp.h (struct Lisp_Hash_Table): ‘next_free’ is now
114975	ptrdiff_t, not Lisp_Object.  Adjust commentary for ‘next’ and
114976	‘index’, which no longer contain nil.
114977	(HASH_NEXT, HASH_INDEX): Move to src/fns.c.
114978
1149792017-02-22  Paul Eggert  <eggert@cs.ucla.edu>
114980
114981	Hash table threshold is now float, not double
114982
114983	Change default from 0.8 to 0.8125 so it fits in float without
114984	rounding glitches.
114985	* doc/lispref/hash.texi (Creating Hash):
114986	* doc/lispref/objects.texi (Hash Table Type):
114987	* etc/NEWS:
114988	Document change.
114989	* src/fns.c (make_hash_table, maybe_resize_hash_table)
114990	(Fmake_hash_table): Threshold is now float, not double.
114991	Be consistent about how this is rounded.
114992	* src/lisp.h (struct Lisp_Hash_Table.rehash_threshold):
114993	Change back to float, now that the other code rounds consistently.
114994	(DEFAULT_REHASH_THRESHOLD): Now float 0.8125 instead of double 0.8.
114995
1149962017-02-22  Juri Linkov  <juri@linkov.net>
114997
114998	Avoid flicker in lazy-highlight by doing all updates without redisplay.
114999
115000	* lisp/isearch.el (lazy-highlight-max-at-a-time):
115001	Change default value from 20 to nil to not trigger redisplay
115002	between updating iterations.
115003	(lazy-highlight-cleanup): New arg ‘procrastinate’ to not remove
115004	overlays when non-nil.
115005	(isearch-lazy-highlight-new-loop): Call lazy-highlight-cleanup
115006	with non-nil second arg when the search string is not empty.
115007	Run timer with isearch-lazy-highlight-start instead of
115008	isearch-lazy-highlight-update.
115009	(isearch-lazy-highlight-start): New function. (Bug#25751)
115010
1150112017-02-21  Stefan Monnier  <monnier@iro.umontreal.ca>
115012
115013	* lisp/emacs-lisp/autoload.el (make-autoload): Support cl-defgeneric
115014
115015	* lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Tweak for autoloading.
115016
1150172017-02-21  Stefan Monnier  <monnier@iro.umontreal.ca>
115018
115019	* lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Fix duplication
115020
115021	which resulted in incomplete list of parents in one copy of the
115022	cl-structure-class class.
115023
1150242017-02-21  Glenn Morris  <rgm@gnu.org>
115025
115026	Tweak recent custom-reevaluate-setting change
115027
115028	* lisp/custom.el (custom-reevaluate-setting):
115029	Tweak previous change to avoid font-lock init issues.
115030
1150312017-02-21  Glenn Morris  <rgm@gnu.org>
115032
115033	Ensure delayed-init custom variables get marked special
115034
115035	* lisp/custom.el (custom-reevaluate-setting):
115036	If the variable has never been set, defvar it.  (Bug#25770)
115037
1150382017-02-21  Mark Oteiza  <mvoteiza@udel.edu>
115039
115040	Turn on lexical-binding in dunnet.el
115041
115042	* lisp/play/dunnet.el: Turn on lexical-binding.  Re-instate lexical
115043	byte compile warnings.
115044
1150452017-02-21  Mark Oteiza  <mvoteiza@udel.edu>
115046
115047	Make dunnet insertion functions n-ary
115048
115049	* lisp/play/dunnet.el (dun-mprinc, dun-mprincl, dun-minsert):
115050	(dun-minsertl, dun-batch-mprinc, dun-batch-mprincl): Change to accept
115051	any number of arguments.
115052	(dun-parse, dun-describe-room, dun-quit, dun-inven, dun-shake):
115053	(dun-take, dun-go, dun-move, dun-press, dun-score):
115054	(dun-compile-save-out, dun-do-logfile): Collect arguments from
115055	multiple insertion calls into less calls with more args.
115056
1150572017-02-21  Katsumi Yamaoka  <yamaoka@jpl.org>
115058
115059	message-goto-body-1: Fix regexp so as not to match multi-line
115060
115061	* lisp/gnus/message.el (message-goto-body-1):
115062	Fix regexp so as not to match multi-line.
115063
1150642017-02-20  Noam Postavsky  <npostavs@gmail.com>
115065
115066	Simplify cl-get using `plist-member'
115067
115068	* lisp/emacs-lisp/cl-extra.el (cl-get, cl-getf, cl--set-getf): Use
115069	`plist-member' instead of explicit loop.
115070	* test/lisp/emacs-lisp/cl-extra-tests.el: New tests.
115071
1150722017-02-20  Paul Eggert  <eggert@cs.ucla.edu>
115073
115074	Verify xwidget USE_LSB_TAG assumption
115075
115076	* src/xwidget.c (Fxwidget_webkit_execute_script):
115077	Add verification.  Problem reported by Andreas Schwab (Bug#25816#8).
115078
1150792017-02-20  Stefan Monnier  <monnier@iro.umontreal.ca>
115080
115081	* src/insdel.c (make_gap): Improve comment.
115082
1150832017-02-20  Mark Oteiza  <mvoteiza@udel.edu>
115084
115085	Do not use switch-to-buffer for working in a temp buffer
115086
115087	* lisp/play/dunnet.el (dunnet): Use pop-to-buffer-same-window instead,
115088	cf. Bug#22244.
115089	(dun-load-d, dun-eval, dun-save-game, dun-do-logfile): Use
115090	with-temp-buffer instead.
115091
1150922017-02-20  Mark Oteiza  <mvoteiza@udel.edu>
115093
115094	Make dun-room-shorts a defconst
115095
115096	* lisp/play/dunnet.el (dun-room-shorts): Make defconst and collect
115097	initial value into the declaration.
115098	(dun-space-to-hyphen): Remove.
115099
1151002017-02-20  Paul Eggert  <eggert@cs.ucla.edu>
115101
115102	Port xwidget to -DCHECK_LISP_OBJECT_TYPE
115103
115104	* src/xwidget.c (webkit_javascript_finished_cb)
115105	(Fxwidget_webkit_execute_script): Don't assume Lisp_Object is an
115106	integer.  This fix is just a hack; I’ll file a bug report about
115107	the underlying problem.
115108
1151092017-02-20  Katsumi Yamaoka  <yamaoka@jpl.org>
115110
115111	mm-decode.el: Simplify regexp used to search html meta tag
115112
115113	* lisp/gnus/mm-decode.el (mm-add-meta-html-tag, mm-shr):
115114	Simplify regexp used to search html meta tag.
115115
1151162017-02-20  Katsumi Yamaoka  <yamaoka@jpl.org>
115117
115118	mm-shr: Ignore coding-system `ascii'
115119
115120	* lisp/gnus/mm-decode.el (mm-shr): Ignore coding-system `ascii'.
115121
1151222017-02-20  Tom Tromey  <tom@tromey.com>
115123
115124	vc-log-outgoing fixes for git; add binding to vc-dir
115125
115126	* lisp/vc/vc-dir.el (vc-dir-mode-map): Bind "O" to vc-log-outgoing.
115127	* lisp/vc/vc-git.el (vc-git-log-outgoing, vc-git-log-incoming): Use
115128	async execution.
115129	(vc-git-log-view-mode): Also truncate lines for log-outgoing and
115130	log-incoming.
115131	* lisp/vc/vc.el (vc-log-incoming, vc-log-outgoing): Don't pass nil
115132	as remote-location argument.
115133
1151342017-02-20  Tom Tromey  <tom@tromey.com>
115135
115136	Remove stale comments from vc-git and vc-hg
115137
115138	* lisp/vc/vc-git.el (vc-git-retrieve-tag): Remove comment.
115139	* lisp/vc/vc-hg.el (vc-hg-retrieve-tag): Remove comment.
115140
1151412017-02-20  Mark Oteiza  <mvoteiza@udel.edu>
115142
115143	Remove member clone
115144
115145	* lisp/play/dunnet.el (dun-answer): Use member instead.
115146	(dun-members): Remove.
115147
1151482017-02-20  Mark Oteiza  <mvoteiza@udel.edu>
115149
115150	Prefix global var
115151
115152	* lisp/play/dunnet.el (room): Rename to dun-room.
115153	(dun-messages, dunnet, dun-describe-room, dun-drop, dun-move):
115154	(dun-restore, dun-do-logfile, dun-batch-loop): Use new name.
115155
1151562017-02-20  Mark Oteiza  <mvoteiza@udel.edu>
115157
115158	Replace nested ifs with cond
115159
115160	* lisp/play/dunnet.el (dun-messages, dun-describe-room, dun-examine):
115161	(dun-eat, dun-put-objs, dun-turn, dun-press, dun-ls, dun-cd): Use when
115162	and cond where appropriate.
115163	(dun-sauna-heat): Accept sauna level as an argument.  Use cond.
115164	(dun-take): Use null and dun-mprincl.
115165	(dun-inven-weight, dun-load-d): Reformat.
115166	(dun-remove-obj-from-inven, dun-remove-obj-from-room): Nix setq to nil.
115167
1151682017-02-19  Paul Eggert  <eggert@cs.ucla.edu>
115169
115170	Fix glitches in recent hash table changes
115171
115172	* src/fns.c (Fmake_hash_table): Simplify the machine code slightly
115173	by using 0 rather than -1.
115174	* src/lisp.h (struct Lisp_Hash_Table.pure): Now bool rather
115175	than a bitfield, for speed (the bitfield did not save space).
115176	(struct Lisp_Hash_Table.rehash_threshold): Now double rather than
115177	float, since the float caused unwanted rounding errors, e.g.,
115178	(hash-table-rehash-threshold (make-hash-table)) yielded
115179	0.800000011920929 instead of the correct 0.8.
115180
1151812017-02-19  Stefan Monnier  <monnier@iro.umontreal.ca>
115182
115183	* src/insdel.c (make_gap): Increase enough to avoid O(N^2) behavior.
115184
1151852017-02-19  Eli Zaretskii  <eliz@gnu.org>
115186
115187	Avoid aborts during loadup
115188
115189	* src/emacs-module.c (syms_of_module):
115190	* src/image.c (xpm_make_color_table_h): Update calls to
115191	make_hash_table to adjust to a recent change in fns.c.
115192	* src/fns.c (make_hash_table):
115193	* src/lisp.h (make_hash_table): 4th arg is now of type double.
115194
1151952017-02-19  Michael Albinus  <michael.albinus@gmx.de>
115196
115197	Rework connection local variables
115198
115199	For connection local variables interface, `class' is renamed
115200	to `profile'.  All arguments `criteria' are a plist now.
115201
115202	* doc/lispref/variables.texi (Connection Local Variables):
115203	Rewrite.
115204
115205	* lisp/files-x.el (connection-local-profile-alist): Rename
115206	from `connection-local-class-alist'.  Adapt docstring.
115207	(connection-local-criteria-alist): Adapt docstring.
115208	(connection-local-normalize-criteria): New defun.
115209	(connection-local-get-profiles): Rename from
115210	`connection-local-get-classes'.  Rewrite.
115211	(connection-local-set-profiles): Rename from
115212	`connection-local-set-classes'.  Rewrite.
115213	(connection-local-get-profile-variables): Rename from
115214	`connection-local-get-class-variables'.  Rewrite.
115215	(connection-local-set-profile-variables): Rename from
115216	`connection-local-set-class-variables'.  Rewrite.
115217	(hack-connection-local-variables)
115218	(hack-connection-local-variables-apply)): Rewrite.
115219	(with-connection-local-profiles): Rename from
115220	`ith-connection-local-classes'.  Rewrite.
115221
115222	* lisp/net/tramp.el (tramp-set-connection-local-variables):
115223	Compute criteria.
115224
115225	* lisp/net/tramp-cmds.el (tramp-bug):
115226	Use `connection-local-profile-alist'.
115227
115228	* test/lisp/files-x-tests.el (files-x-test--variables1)
115229	(files-x-test--variables2, files-x-test--variables3)
115230	(files-x-test--variables4, files-x-test--criteria1)
115231	(files-x-test--criteria2): Make them a defconst.
115232	(files-x-test--application)
115233	(files-x-test--another-application, files-x-test--protocol)
115234	(files-x-test--user, files-x-test--machine): New defconst.
115235	(files-x-test--criteria): New defvar.
115236	(files-x-test--criteria3): Remove.
115237	(files-x-test-connection-local-set-profile-variables):
115238	Rename from `files-x-test-connection-local-set-class-variables'.
115239	Rewrite.
115240	(files-x-test-connection-local-set-profiles): Rename from
115241	`files-x-test-connection-local-set-classes'.  Rewrite.
115242	(files-x-test-hack-connection-local-variables-apply)  Rewrite.
115243	(files-x-test-with-connection-local-profiles): Rename from
115244	`files-x-test-with-connection-local-classes'.  Rewrite.
115245
1152462017-02-19  Mark Oteiza  <mvoteiza@udel.edu>
115247
115248	Set up combination and random item location
115249
115250	* lisp/play/dunnet.el (dun-combination): Make defconst.
115251	(tloc, tcomb): Remove.  Replace with a top-level form.
115252
1152532017-02-19  Mark Oteiza  <mvoteiza@udel.edu>
115254
115255	Replace movement variables with an alist and accessor
115256
115257	* lisp/play/dunnet.el (north, south, east, west, northeast, southeast):
115258	(northwest, southwest, up, down, in, out): Remove.
115259	(dun-movement-alist): New constant.
115260	(dun-movement): New function.
115261	(dun-n, dun-s, dun-e, dun-w, dun-ne, dun-se, dun-nw, dun-sw, dun-up):
115262	(dun-down, dun-in, dun-out): Use a symbol for indicating movement.
115263	(dun-move, dun-special-move): Translate movement symbol to an
115264	enumeration.
115265
1152662017-02-19  Mark Oteiza  <mvoteiza@udel.edu>
115267
115268	Change top-level setq forms to defvar or defconst
115269
115270	Also collect some code onto fewer lines and reindent.
115271	* lisp/play/dunnet.el (dun-visited, dun-current-room, dun-exitf):
115272	(dun-badcd, dun-computer, dun-floppy, dun-key-level, dun-hole):
115273	(dun-correct-answer, dun-lastdir, dun-numsaves, dun-jar, dun-dead):
115274	(room, dun-numcmds, dun-wizard, dun-endgame-question, dun-logged-in):
115275	(dungeon-mode, dun-unix-verbs, dun-dos-verbs, dun-batch-mode):
115276	(dun-cdpath, dun-cdroom, dun-uncompressed, dun-ethernet):
115277	(dun-restricted, dun-ftptype, dun-endgame, dun-rooms):
115278	(dun-light-rooms, dun-verblist, dun-inbus, dun-nomail, dun-ignore):
115279	(dun-mode, dun-sauna-level, north, south, east, west, northeast):
115280	(southeast, northwest, southwest, up, down, in, out, dungeon-map):
115281	(dun-objnames, obj-special, dun-room-objects, dun-room-silents):
115282	(dun-inventory, dun-objects, dun-object-lbs, dun-object-pts):
115283	(dun-objfiles, dun-perm-objects, dun-physobj-desc, dun-permobj-desc):
115284	(dun-diggables, dun-room-shorts, dun-endgame-questions): Change
115285	declaration to use defvar or defconst.
115286	(dun-doverb, dun-vparse, dun-vparse2, dun-batch-parse):
115287	(dun-batch-parse2): Omit the dun- prefix from arguments dun-ignore
115288	dun-verblist.  Those are now constants and the byte compiler doesn't
115289	allow defconsts in lambda lists.
115290
1152912017-02-19  Mark Oteiza  <mvoteiza@udel.edu>
115292
115293	Move all dunnet globals up to the top
115294
115295	* lisp/play/dunnet.el: Adjust comments to reflect moved forms.
115296	(dun-visited, dun-current-room, dun-exitf):
115297	(dun-badcd, dun-computer, dun-floppy, dun-key-level, dun-hole):
115298	(dun-correct-answer, dun-lastdir, dun-numsaves, dun-jar, dun-dead):
115299	(room, dun-numcmds, dun-wizard, dun-endgame-question, dun-logged-in):
115300	(dungeon-mode, dun-unix-verbs, dun-dos-verbs, dun-batch-mode):
115301	(dun-cdpath, dun-cdroom, dun-uncompressed, dun-ethernet):
115302	(dun-restricted, dun-ftptype, dun-endgame, dun-rooms):
115303	(dun-light-rooms, dun-verblist, dun-inbus, dun-nomail, dun-ignore):
115304	(dun-mode, dun-sauna-level, north, south, east, west, northeast):
115305	(southeast, northwest, southwest, up, down, in, out, dungeon-map):
115306	(dun-objnames, obj-special, dun-room-objects, dun-room-silents):
115307	(dun-inventory, dun-objects, dun-object-lbs, dun-object-pts):
115308	(dun-objfiles, dun-perm-objects, dun-physobj-desc, dun-permobj-desc):
115309	(dun-diggables, dun-room-shorts, dun-endgame-questions): Move to the
115310	top of the file, before any uses.
115311
1153122017-02-19  Michael Albinus  <michael.albinus@gmx.de>
115313
115314	Fix bug#25788
115315
115316	* lisp/net/tramp.el (tramp-autoload-file-name-handler):
115317	Do not load tramp.el just for "/".  (Bug#25788)
115318
1153192017-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
115320
115321	Fix fringe bitmap initialization on MS-Windows
115322
115323	* src/fringe.c (init_fringe_bitmap) [HAVE_NTGUI]: Fix initialization
115324	of fb->bits.  (Bug#25673)
115325
1153262017-02-19  Stefan Monnier  <monnier@iro.umontreal.ca>
115327
115328	Change type of `rehash_threshold' and `pure' fields in hash-tables
115329
115330	* src/lisp.h (struct Lisp_Hash_Table): Change type of
115331	`rehash_threshold' and `pure' fields and move them after `count'.
115332	* src/fns.c (make_hash_table): Change type of `rehash_threshold' and `pure'.
115333	(Fmake_hash_table, Fhash_table_rehash_threshold):
115334	* src/category.c (hash_get_category_set):
115335	* src/xterm.c (syms_of_xterm):
115336	* src/profiler.c (make_log):
115337	* src/print.c (print_object):
115338	* src/alloc.c (purecopy_hash_table, purecopy): Adjust accordingly.
115339
1153402017-02-19  Paul Eggert  <eggert@cs.ucla.edu>
115341
115342	Use 'char *FOO' instead of 'char* FOO'
115343
1153442017-02-19  Mark Oteiza  <mvoteiza@udel.edu>
115345
115346	More json.el changes
115347
115348	* lisp/json.el (json-read-keyword, json-read-number, json-read-object):
115349	(json-read-array): Just use = for char comparison.
115350
1153512017-02-18  Noam Postavsky  <npostavs@gmail.com>
115352
115353	* lisp/woman.el (woman): Fix docstring prefix arg description.
115354
1153552017-02-18  Alan Mackenzie  <acm@muc.de>
115356
115357	Fix edebug-spec on c-lang-defvar.
115358
115359	This allows c-lang-defvars with the symbol 'dont-doc in the place of the
115360	optional documentation to be instrumented for edebug.
115361
115362	lisp/progmodes/cc-langs.el (top-level): Amend the edebug-spec for
115363	c-lang-defvar.
115364	(c-opt-identifier-concat-key, c-decl-prefix-or-start-re): remove redundant
115365	'dont-doc.
115366
1153672017-02-18  Lars Ingebrigtsen  <larsi@gnus.org>
115368
115369	Lists used as plists now have to be an even length
115370
115371	* lisp/net/eww.el (eww-size-text-inputs): `eww-form' isn't a plist.
115372	(eww-process-text-input): Not here, either.
115373
1153742017-02-18  Michael Albinus  <michael.albinus@gmx.de>
115375
115376	Unset `non-essential' in Tramp when not needed anymore
115377
115378	* doc/misc/trampver.texi:
115379	* lisp/net/trampver.el: Change version to "2.3.2-pre".
115380
115381	* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
115382	Use `tramp-completion-mode-p'.
115383
115384	* lisp/net/tramp.el (tramp-file-name-handler): Unset `non-essential'
115385	when file name doesn't match `tramp-completion-file-name-regexp'.
115386
1153872017-02-18  Eli Zaretskii  <eliz@gnu.org>
115388
115389	Automatically regenerate emacs.1 and *.rc files
115390
115391	* Makefile.in (CONFIG_STATUS_FILES_IN): New variable, lists
115392	non-Makefile files produced by config.status.
115393	($(MAKEFILE_NAME)): Depend on $(CONFIG_STATUS_FILES_IN), so that
115394	their targets are regenerated when the source changes.
115395
1153962017-02-18  Alan Mackenzie  <acm@muc.de>
115397
115398	Set the syntax table in AWK Mode.
115399
115400	This is a partial reversion of CC Mode commit on 2016-05-09 17:49:45 +0000.
115401	It fixes bug #25722.
115402
115403	lisp/progmodes/cc-mode.el (awk-mode): Explicitly set the syntax table.
115404
1154052017-02-18  Eli Zaretskii  <eliz@gnu.org>
115406
115407	Mention "editor" in Emacs man page header
115408
115409	* doc/man/emacs.1.in: Mention "editor" in the header line.
115410	(Bug#25771, Bug#25779)
115411
1154122017-02-18  Göktuğ Kayaalp  <self@gkayaalp.com>
115413
115414	Fix Turkish language environment setup
115415
115416	* lisp/language/european.el ("Turkish"): Fix a typo in Turkish
115417	language setup.  (Bug#25763)
115418
1154192017-02-18  Rami Ylimäki  <rami.ylimaki@vincit.fi>
115420
115421	Support 24-bit direct colors on text terminals
115422
115423	* src/term.c (init_tty): Use 24-bit terminal colors if corresponding
115424	foreground and background functions are present in terminal type
115425	definition.
115426	* src/tparam.h: Define prototype for tigetstr.
115427
115428	* lisp/term/tty-colors.el (tty-color-define): Convert color palette
115429	index to pixel value on 16.7M color terminals.
115430	(tty-color-24bit): New function to convert color palette index to
115431	pixel value on 16.7M color terminals.
115432	(tty-color-desc): Don't approximate colors on 16.7M color terminals.
115433	* lisp/term/xterm.el (xterm-register-default-colors): Define all named
115434	TTY colors on 16.7M color terminals.
115435
115436	* doc/misc/efaq.texi (Colors on a TTY): Add instructions on how to
115437	enable direct color TTY mode.
115438	* etc/NEWS: Mention direct color TTY mode and point to FAQ.
115439
1154402017-02-18  Rami Ylimäki  <rami.ylimaki@vincit.fi>
115441
115442	Remove unused TN_max_pairs field
115443
115444	* src/termchar.h (tty_display_info): Remove TN_max_pairs field,
115445	describing maximum number of terminal background/foreground color pairs.
115446	* src/term.c (tty_default_color_capabilities, tty_setup_colors)
115447	(init_tty): Remove references to TN_max_pairs.
115448
1154492017-02-18  Eli Zaretskii  <eliz@gnu.org>
115450
115451	Improve documentation of query-replace-from-to-separator
115452
115453	* doc/emacs/search.texi (Query Replace): Document the meaning of
115454	the nil value of query-replace-from-to-separator.  (Bug#25482)
115455
1154562017-02-18  Eli Zaretskii  <eliz@gnu.org>
115457
115458	Document problems with nerd-fonts
115459
115460	* etc/PROBLEMS (fonts): Describe the potential problems with
115461	nerd-fonts that cause slow display.  (Bug#25697)
115462
1154632017-02-18  Eli Zaretskii  <eliz@gnu.org>
115464
115465	Improve commentary for a recent change in keyboard.c
115466
115467	* src/keyboard.c (Fset__this_command_keys): Add a comment about
115468	the magic 248 value.  (Bug#25612)
115469
1154702017-02-18  Eli Zaretskii  <eliz@gnu.org>
115471
115472	Avoid infloop in rect.el
115473
115474	* lisp/rect.el (rectangle--*-char): Avoid inflooping when called
115475	with argument N whose absolute value is greater than 1.  (Bug#25773)
115476
1154772017-02-18  Eli Zaretskii  <eliz@gnu.org>
115478
115479	Remove annoying warnings about let-binding
115480
115481	* src/data.c (Fmake_variable_buffer_local, Fmake_local_variable):
115482	Remove warnings about making symbols local while let-bound.
115483	(Bug#25561)
115484
1154852017-02-18  Hong Xu  <hong@topbug.net>
115486
115487	Avoid errors when flyspell-generic-check-word-predicate is a lambda.
115488
115489	* lisp/textmodes/flyspell.el (flyspell-auto-correct-word, flyspell-word): Apply
115490	functionp instead of fboundp on
115491	flyspell-generic-check-word-predicate (Bug#25765).
115492
1154932017-02-18  Glenn Morris  <rgm@gnu.org>
115494
115495	Remove the build number from emacs-version variable
115496
115497	It's a largely internal detail that can confuse users.  (Bug#25590)
115498	* lisp/version.el (emacs-build-number): New constant.
115499	(emacs-version): Use emacs-build-number.
115500	* lisp/loadup.el (top-level): When dumping, increment
115501	emacs-build-number rather than emacs-version.
115502	* src/emacs.c (emacs-version): Doc fix.
115503	* doc/lispref/intro.texi (Version Info): Update emacs-version details.
115504	Mention emacs-build-number.
115505	* lisp/gnus/gnus-util.el (gnus-emacs-version):
115506	* lisp/mail/emacsbug.el (report-emacs-bug):
115507	* admin/admin.el (set-version): Update for emacs-version change.
115508
1155092017-02-18  Glenn Morris  <rgm@gnu.org>
115510
115511	Ensure that user-mail-address always has a value
115512
115513	* lisp/startup.el (user-mail-address): Initialize in the normal way.
115514	(command-line): Reset user-mail-address if needed using
115515	standard custom machinery.
115516	* lisp/mail/feedmail.el (feedmail-fiddle-from):
115517	* lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
115518	* lisp/mail/rmailsum.el (rmail-header-summary):
115519	Simplify now that user-mail-address is always set.
115520
1155212017-02-18  Mark Oteiza  <mvoteiza@udel.edu>
115522
115523	Turn on lexical-binding in ruby-mode
115524
115525	* lisp/progmodes/ruby-mode.el: Turn on lexical-binding.
115526	(ruby-font-lock-syntax-table): Use make-syntax-table.
115527	(ruby-mode): 'define-derived-mode' writes the keys for us.
115528
1155292017-02-18  Mark Oteiza  <mvoteiza@udel.edu>
115530
115531	Turn on lexical-binding in elint.el
115532
115533	* lisp/emacs-lisp/elint.el: Quote entry point commands in commentary.
115534	(elint-running, elint-current-pos): Move these dynamic vars to toward
115535	the top of the file.
115536	(elint-check-quote-form): Ignore unused argument.
115537	(elint-check-conditional-form): Remove unused binding.
115538
1155392017-02-18  Gemini Lasswell  <gazally@runbox.com>
115540
115541	* lisp/emacs-lisp/subr-x.el (if-let*): Fix Edebug spec (Bug#24748)
115542
1155432017-02-18  Mark Oteiza  <mvoteiza@udel.edu>
115544
115545	Enable erc-accidental-paste-threshold-seconds by default
115546
115547	* lisp/erc/erc.el (erc-accidental-paste-threshold-seconds): Set
115548	default to 0.2 (Bug#25709).
115549
1155502017-02-17  Michal Nazarewicz  <mina86@mina86.com>
115551
115552	Fix build failure caused by ‘Generate upcase and downcase tables from Unicode’
115553
115554	The [5ec3a584: Generate upcase and downcase tables from Unicode data]
115555	commit broke bootstrap from a truly clean tree (e.g. a fresh clone or
115556	one created with ‘make extraclean’), see
115557	<http://hydra.nixos.org/build/48774928>.
115558
115559	The failure was caused by characters.el trying to read Unicode
115560	property tables which aren’t available so early in the build process.
115561
115562	Wrap the part that requires Unicode property tables in a condition
115563	checking if those are available.  If they aren’t they case and syntax
115564	tables won’t be fully set but later on, the characters.el file will be
115565	evaluated again and this time with Unicode properties available so
115566	final Emacs ends up with the exact same case and syntax tables.
115567
1155682017-02-17  Katsumi Yamaoka  <yamaoka@jpl.org>
115569
115570	mm-add-meta-html-tag: Improve regexp
115571
115572	* lisp/gnus/mm-decode.el (mm-add-meta-html-tag):
115573	Improve regexp to search html meta tag.
115574
1155752017-02-17  Katsumi Yamaoka  <yamaoka@jpl.org>
115576
115577	mm-shr: Prefer charset specified in html meta tag
115578
115579	* lisp/gnus/mm-decode.el (mm-shr): Prefer charset specified in html
115580	meta tag than mail-parse-charset in the case there is no charset spec
115581	in MIME header.
115582
1155832017-02-17  Glenn Morris  <rgm@gnu.org>
115584
115585	Stop duplicating some custom-types in message.el
115586
115587	* lisp/gnus/message.el (user-mail-address, user-full-name):
115588	No need to re-specify custom-type.
115589
1155902017-02-17  Glenn Morris  <rgm@gnu.org>
115591
115592	Whitespace trivia in dunnet.el
115593
115594	* lisp/play/dunnet.el (dun-special-object, dun-put-objs)
115595	(dun-rlogin-endgame): Whitespace trivia.
115596
1155972017-02-17  Glenn Morris  <rgm@gnu.org>
115598
115599	Explicit error on changing case of negative integers
115600
115601	* src/casefiddle.c (casify_object): Reject negative integers:
115602	Emacs characters are positive integers.  (Bug#25684)
115603
1156042017-02-17  Dmitry Gutov  <dgutov@yandex.ru>
115605
115606	Fix buffers update in vc-retrieve-tag
115607
115608	* lisp/vc/vc.el (vc-retrieve-tag): When the granularity is
115609	`repository', use the repository root and pass it to
115610	vc-resynch-buffer (bug#25714).
115611
1156122017-02-16  Paul Eggert  <eggert@cs.ucla.edu>
115613
115614	* src/buffer.h: Fix indenting.
115615
1156162017-02-16  Paul Eggert  <eggert@cs.ucla.edu>
115617
115618	Add sanity checks for Bswitch hash tables
115619
115620	* src/bytecode.c (exec_byte_code) [BYTE_CODE_SAFE]:
115621	Check that operand is a hash table and hashes to ints.
115622
1156232017-02-16  Paul Eggert  <eggert@cs.ucla.edu>
115624
115625	* src/keyboard.c (read_key_sequence): Fix integer-overflow glitch.
115626
1156272017-02-16  Vibhav Pant  <vibhavp@gmail.com>
115628
115629	bytecomp.el: Avoid unnecessary calculation for jump table addresses.
115630
115631	* lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode): Don't do
115632	  redundant operations while calculating the correct jump addresses
115633	  from TAGs in jump tables.
115634
1156352017-02-16  Mark Oteiza  <mvoteiza@udel.edu>
115636
115637	Minor changes in json.el
115638
115639	* lisp/json.el (json-advance): Simpler docstring.
115640	(json-read-escaped-char): Use xdigit subform in rx expression.
115641	(json-read-string): Just use = for char comparison.
115642
1156432017-02-16  Mark Oteiza  <mvoteiza@udel.edu>
115644
115645	Don't expand body inside a let-binding when there are no bindings
115646
115647	* lisp/emacs-lisp/pcase.el (pcase-codegen): Only let-bind if VARS
115648	is non-nil.
115649
1156502017-02-16  Glenn Morris  <rgm@gnu.org>
115651
115652	Handle user-mail-address being the empty string
115653
115654	* lisp/mail/feedmail.el (feedmail-fiddle-from):
115655	* lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
115656	* lisp/mail/rmailsum.el (rmail-header-summary):
115657	Belated update for 2002-09-29 startup.el change, 680ebfa, where
115658	the value of user-mail-address during initialization was changed
115659	from nil to the empty string.
115660
1156612017-02-15  Michael Albinus  <michael.albinus@gmx.de>
115662
115663	Continue to fix bug#25607
115664
115665	* lisp/ido.el (ido-complete): Let-bind `non-essential' to nil.
115666	(ido-file-name-all-completions-1): Do not bind `non-essential'.
115667
115668	* lisp/net/tramp.el: (tramp-completion-file-name-handler):
115669	Improve autoloaded version.
115670	(tramp-completion-file-name-handler): Remove old compat code.
115671	Check only for `tramp-completion-mode-p'.
115672	(tramp-completion-mode-p): Autoload.  Do not check any longer
115673	for `last-input-event'.
115674	(tramp-completion-handle-expand-file-name): Simplify.  (Bug#25607)
115675
1156762017-02-15  Michal Nazarewicz  <mina86@mina86.com>
115677
115678	casing: don’t assume letters are *either* upper- or lower-case  (bug#24603)
115679
115680	A compatibility digraph characters, such as Dž, are neither upper- nor
115681	lower-case.  At the moment however, those are reported as upper-case¹
115682	despite the fact that they change when upper-cased.
115683
115684	Stop checking if a character is upper-case before trying to up-case it
115685	so that title-case characters are handled correctly.  This fixes one of
115686	the issues mentioned in bug#24603.
115687
115688	¹ Because they change when converted to lower-case.  Notice an asymmetry
115689	  in that for a character to be considered lower-case it must not be
115690	  upper-case (plus the usual condition of changing when upper-cased).
115691
115692	* src/buffer.h (upcase1): Delete.
115693	(upcase): Change to upcase character unconditionally just like downcase
115694	does it.  This is what upcase1 was.
115695
115696	* src/casefiddle.c (casify_object, casify_region): Use upcase instead
115697	of upcase1 and don’t check !uppercasep(x) before calling upcase.
115698
115699	* src/keyboard.c (read_key_sequence): Don’t check if uppercase(x), just
115700	downcase(x) and see if it changed.
115701
115702	* test/src/casefiddle-tests.el (casefiddle-tests--characters,
115703	casefiddle-tests-casing): Update test cases which are now passing.
115704
1157052017-02-15  Michal Nazarewicz  <mina86@mina86.com>
115706
115707	Generate upcase and downcase tables from Unicode data  (bug#24603)
115708
115709	Use Unicode data to generate case tables instead of mostly repeating
115710	them in lisp code.  Do that in a way which maps ‘Dz’ (and similar)
115711	digraph to ‘dz’ when down- and ‘DZ’ when upcasing.
115712
115713	https://debbugs.gnu.org/cgi/bugreport.cgi?msg=89;bug=24603 lists all
115714	changes to syntax table and case tables introduced by this commit.
115715
115716	* lisp/international/characters.el: Remove case-pairs defined with
115717	explicit Lisp code and instead use Unicode character properties.
115718
115719	* test/src/casefiddle-tests.el (casefiddle-tests--characters,
115720	casefiddle-tests-casing): Update test cases which are now working
115721	as they should.
115722
1157232017-02-15  Michal Nazarewicz  <mina86@mina86.com>
115724
115725	Add tests for casefiddle.c  (bug#24603)
115726
115727	Fixes cases marked FIXME upcoming in followup commits.
115728
115729	* test/src/casefiddle-tests.el (casefiddle-tests-char-properties,
115730	casefiddle-tests-case-table, casefiddle-tests-casing-character,
115731	casefiddle-tests-casing, casefiddle-tests-casing-byte8,
115732	casefiddle-tests-casing-byte8-with-changes): New tests.
115733	(casefiddle-tests--test-casing): New helper function for runnig
115734	some of the tests.
115735
1157362017-02-15  Michal Nazarewicz  <mina86@mina86.com>
115737
115738	oldXMenu: add missing #include <string.h>
115739
115740	Some of the files in oldXMenu use functions from string.h without
115741	including that header which results in compile warnings:
115742
115743		ChgPane.c:46:5: warning: implicit declaration of function ‘strlen’
115744		ChgPane.c:46:20: warning: incompatible implicit declaration of
115745			built-in function ‘strlen’
115746		ChgSel.c:62:2: warning: implicit declaration of function ‘strlen’
115747		ChgSel.c:62:17: warning: incompatible implicit declaration of built-in
115748			function ‘strlen’
115749		Create.c:220:5: warning: implicit declaration of function ‘strcmp’
115750		InsPane.c:65:5: warning: implicit declaration of function ‘strlen’
115751		InsPane.c:65:20: warning: incompatible implicit declaration of
115752			built-in function ‘strlen’
115753		InsSel.c:68:5: warning: implicit declaration of function ‘strlen’
115754		InsSel.c:68:20: warning: incompatible implicit declaration of built-in
115755			function ‘strlen’
115756		InsSel.c:75:5: warning: implicit declaration of function ‘strcmp’
115757
115758	Add the necessary ‘#include <string.h>’.
115759
115760	oldXMenu/ChgPane.c, oldXMenu/ChgSel.c, oldXMenu/Create.c, oldXMenu/InsPane.c,
115761	oldXMenu/InsSel.c: add missing #include <string.h>
115762
1157632017-02-15  Paul Eggert  <eggert@cs.ucla.edu>
115764
115765	Fixup recent rmail patch
115766
115767	* lisp/mail/rmail.el (rmail-epa-decrypt): Remove unused local.
115768
1157692017-02-15  Richard Stallman  <rms@gnu.org>
115770
115771	Rmail fix
115772
115773	* lisp/mail/rmail.el (rmail-epa-decrypt-1): Include the just-decrypted text
115774	as element 4 of the value.
115775	(rmail-epa-decrypt): Take the text to insert from that element.
115776
1157772017-02-15  Vibhav Pant  <vibhavp@gmail.com>
115778
115779	bytecomp-tests.el: Store all test forms in one constant.
115780
115781	* test/lisp/emacs-lisp/bytecomp-tests.el: Store all test expressions
115782	in a single constant (byte-opt-testsuite-arith-data), add new forms
115783	which generate lapcode with adjacent/redundant tags.
115784
1157852017-02-15  Glenn Morris  <rgm@gnu.org>
115786
115787	Small lispref edit
115788
115789	* doc/lispref/os.texi (User Identification):
115790	Remove extraneous detail about user-mail-address.
115791
1157922017-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
115793
115794	Document fill-separate-heterogeneous-words-with-space (bug#25685)
115795
115796	* doc/lispref/text.texi (Filling):
115797	Document fill-separate-heterogeneous-words-with-space (bug#25685).
115798
1157992017-02-15  Noam Postavsky  <npostavs@gmail.com>
115800
115801	Test comment-multi-line = nil auto fill case too
115802
115803	* test/lisp/progmodes/js-tests.el (js-mode-auto-fill): Test with
115804	`comment-multi-line' both nil and non-nil.
115805	* lisp/newcomment.el (comment-multi-line): Mark safe if it's a
115806	boolean.
115807	* etc/NEWS: Mention that `js-mode' now sets `comment-multi-line'.
115808
1158092017-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
115810
115811	Don't delete leading and trailing space from CJK word (bug#25685)
115812
115813	* lisp/textmodes/fill.el (fill-delete-newlines):
115814	Don't delete leading and trailing space from CJK word.
115815	(fill-separate-heterogeneous-words-with-space):
115816	New user option that controls it (bug#25685).
115817
1158182017-02-15  Juri Linkov  <juri@linkov.net>
115819
115820	‘M-s w RET word C-s’ repeats incremental search.
115821
115822	* lisp/isearch.el (isearch-new-nonincremental): New variable.
115823	(with-isearch-suspended): Bind isearch-new-nonincremental to
115824	isearch-nonincremental, and restore it afterwards.
115825	(isearch-forward-exit-minibuffer, isearch-reverse-exit-minibuffer):
115826	Set isearch-new-nonincremental to nil.  (Bug#25562)
115827
1158282017-02-14  Tom Tromey  <tom@tromey.com>
115829
115830	Make vc-git detect conflict state for vc-dir
115831
115832	* lisp/vc/vc-git.el (vc-git-dir-status-state): New struct.
115833	(vc-git-dir-status-update-file): New function.
115834	(vc-git-after-dir-status-stage, vc-git-dir-status-goto-stage): Use
115835	vc-git-dir-status-state; add 'ls-files-conflict state.
115836	(vc-git-dir-status-files): Create a vc-git-dir-status-state.
115837
1158382017-02-14  Vibhav Pant  <vibhavp@gmail.com>
115839
115840	byte-opt: Replace merged tags in jump tables too. (bug#25716)
115841
115842	* lisp/emacs-lisp/byte-opt.el (byte-optimize-lapcode): While merging
115843	  adjacent tags, make sure that the old tag is replaced in all jump
115844	  tables, if any. This fixes the bytecode VM jumping to the wrong
115845	  address in compiled cond forms where the body of a clause was a loop
115846	  of any sort.
115847
1158482017-02-14  Glenn Morris  <rgm@gnu.org>
115849
115850	Remove overly broad element from default mail-dont-reply-to-names
115851
115852	* lisp/mail/mail-utils.el (mail-dont-reply-to):
115853	Do not include just "user@" in mail-dont-reply-to-names, and simplify.
115854	Ref: lists.gnu.org/archive/html/help-gnu-emacs/2017-02/msg00049.html
115855	* lisp/gnus/message.el (message-dont-reply-to-names): Doc fix.
115856	* doc/misc/message.texi (Wide Reply): Tiny fix re dont-reply-to-names.
115857
1158582017-02-14  Juri Linkov  <juri@linkov.net>
115859
115860	* etc/NEWS: Mention query-replace-from-to-separator.  (Bug#25482)
115861
1158622017-02-13  Arash Esbati  <arash@gnu.org>
115863
115864	Match all characters in optional argument of \documentclass
115865
115866	* lisp/textmodes/reftex.el (reftex-TeX-master-file): Match all
115867	characters in optional argument containing name of the main file.
115868
1158692017-02-13  Vibhav Pant  <vibhavp@gmail.com>
115870
115871	Merge branch 'master' into feature/byte-switch
115872
1158732017-02-13  Katsumi Yamaoka  <yamaoka@jpl.org>
115874
115875	Fix non-ASCII text encoding (bug#25658)
115876
115877	* lisp/gnus/mm-bodies.el (mm-encode-body):
115878	Fix non-ASCII text encoding (bug#25658).
115879
1158802017-02-13  Vibhav Pant  <vibhavp@gmail.com>
115881
115882	test/lisp/emacs-lisp/bytecomp-tests.el: Add more tests for switch.
115883
1158842017-02-13  Stefan Monnier  <monnier@iro.umontreal.ca>
115885
115886	* doc/lispref/modes.texi (Derived Modes): Make example more idiomatic
115887
1158882017-02-13  Glenn Morris  <rgm@gnu.org>
115889
115890	Fix recent bootstrap issue by moving string-to-list
115891
115892	* lisp/international/mule-util.el (string-to-list, string-to-vector):
115893	Move from here...
115894	* lisp/subr.el (string-to-list, string-to-vector): ...to here.
115895	The implementation is trivial and at least string-to-list
115896	has ended up being needed early during bootstrap.
115897
1158982017-02-13  Glenn Morris  <rgm@gnu.org>
115899
115900	Doc fixes related to mail-host-address
115901
115902	* lisp/startup.el (mail-host-address): Doc fix.
115903	* doc/lispref/os.texi (System Environment):
115904	Remove extraneous details of mail-host-address.
115905
1159062017-02-13  Glenn Morris  <rgm@gnu.org>
115907
115908	Simplify time-stamp mail host usage
115909
115910	* lisp/time-stamp.el (time-stamp-mail-host-name): Remove function.
115911	(time-stamp-string-preprocess): Handle "h" (mail host) directly.
115912
1159132017-02-13  Glenn Morris  <rgm@gnu.org>
115914
115915	Doc fix for vhdl-mode re mail-host-address
115916
115917	* lisp/progmodes/vhdl-mode.el (vhdl-file-header): Doc fix.
115918	(mail-host-address): Do not add to vhdl-related custom group,
115919	since vhdl-template-replace-header-keywords doesn't use it.
115920
1159212017-02-13  Mark Oteiza  <mvoteiza@udel.edu>
115922
115923	Substitute leading $HOME/ in xdg-user-dirs
115924
115925	* lisp/xdg.el (xdg--substitute-home-env): New function.
115926	(xdg--user-dirs-parse-line): Use it.
115927	(xdg-user-dir): Expand ~/ in xdg-user-dirs values.
115928
1159292017-02-13  Mark Oteiza  <mvoteiza@udel.edu>
115930
115931	* lisp/buff-menu.el: Turn on lexical-binding.
115932
1159332017-02-13  Juri Linkov  <juri@linkov.net>
115934
115935	* lisp/replace.el (query-replace-from-to-separator): Move propertize
115936
115937	and char-displayable-p test to query-replace-read-from.
115938	Add choice nil to disable this feature.
115939	(query-replace-read-from): Don't reevaluate custom setting.
115940	Use char-displayable-p to test the first non-whitespace character
115941	in query-replace-from-to-separator, use " -> " when fails.
115942	Add prompt for the case when separator is nil but
115943	query-replace-defaults is non-nil.
115944	Remove unused test for regexp-flag.
115945	Thanks to Thierry Volpiatto <thierry.volpiatto@gmail.com>
115946
1159472017-02-13  Karl Fogel  <kfogel@red-bean.com>
115948
115949	Convert more uses of `looking-at' to `following-char'
115950
115951	This follows up to Mark Oteiza's commit of 12 Feb 2017, 14:46:03 UTC
115952	(commit 91478f46238a) with more of the same.
115953
115954	* lisp/bookmark.el (bookmark-send-edited-annotation):
115955	  (bookmark-bmenu-execute-deletions): Replace instances of looking-at
115956	  with char comparisons using following-char.
115957
1159582017-02-12  Paul Eggert  <eggert@cs.ucla.edu>
115959
115960	Fix typos in tests for lax-plist-get etc.
115961
115962	Problem reported by Eli Zaretskii (Bug#25606#62).
115963	* test/src/fns-tests.el (test-cycle-lax-plist-get)
115964	(test-cycle-plist-put, test-cycle-lax-plist-put):
115965	Fix tests to match behavior.
115966
1159672017-02-12  Michael Albinus  <michael.albinus@gmx.de>
115968
115969	Fix bug#25607
115970
115971	* lisp/net/tramp.el (tramp-completion-file-name-handler):
115972	Improve autoloaded version.
115973	(tramp-autoload-file-name-handler): Avoid recursive load.
115974	(tramp-completion-handle-expand-file-name): Handle empty NAME.
115975	(Bug#25607)
115976
1159772017-02-12  Mark Oteiza  <mvoteiza@udel.edu>
115978
115979	Remove server-buffer-clients string from minor-mode-alist
115980
115981	* lisp/server.el: Don't put an element for server-buffer-clients into
115982	minor-mode-alist. (Bug#20201)
115983
1159842017-02-12  Mark Oteiza  <mvoteiza@udel.edu>
115985
115986	Nix some useless uses of looking-at, looking-back
115987
115988	* lisp/allout.el (allout-kill-topic):
115989	(allout-next-topic-pending-encryption):
115990	* lisp/bookmark.el (bookmark-kill-line):
115991	* lisp/cus-edit.el (custom-save-variables, custom-save-faces):
115992	* lisp/cus-theme.el (custom-theme-write-variables):
115993	(custom-theme-write-faces):
115994	* lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
115995	* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer):
115996	* lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-loop):
115997	(checkdoc-interactive-ispell-loop):
115998	(checkdoc-message-interactive-ispell-loop, checkdoc-this-string-valid):
115999	(checkdoc-this-string-valid-engine):
116000	* lisp/emacs-lisp/elint.el (elint-get-top-forms):
116001	* lisp/emulation/viper-cmd.el (viper-backward-indent):
116002	* lisp/image-dired.el (image-dired-delete-char):
116003	* lisp/simple.el (kill-visual-line): Replace instances of looking-at,
116004	looking-back with char comparisons using following-char, preceding-char.
116005
1160062017-02-12  Eli Zaretskii  <eliz@gnu.org>
116007
116008	Clarify what is the "cursor"
116009
116010	* doc/lispref/windows.texi (Window Point): Clarify the notion of
116011	"cursor".
116012
1160132017-02-11  Tom Tromey  <tom@tromey.com>
116014
116015	Recognize JS regexp literals more correctly
116016
116017	Bug#25529
116018	* lisp/progmodes/js.el (js--syntax-propertize-regexp-regexp): New
116019	constant.
116020	(js-syntax-propertize-regexp): Use it.  Remove "end" argument.
116021	(js--syntax-propertize-regexp-syntax-table): Remove.
116022	(js-syntax-propertize): Update.
116023	* test/lisp/progmodes/js-tests.el (js-mode-regexp-syntax-bug-25529):
116024	New test.
116025
1160262017-02-11  Vibhav Pant  <vibhavp@gmail.com>
116027
116028	src/bytecode.c (exec_byte_code): Make hash_code a Lisp_Object.
116029
116030	This avoids using XUINT every time while comparing it with
116031	HASH_HASH (h, i), replacing it with EQ.
116032
1160332017-02-11  Vibhav Pant  <vibhavp@gmail.com>
116034
116035	src/bytecode.c (exec_byte_code): Remove unnecessary (e)assert.
116036
1160372017-02-11  Tom Tromey  <tom@tromey.com>
116038
116039	Fix bug in css--mdn-find-symbol
116040
116041	* lisp/textmodes/css-mode.el (css--mdn-find-symbol): Skip whitespace
116042	before skipping word characters.
116043	test/lisp/textmodes/css-mode-tests.el (css-mdn-symbol-guessing): Add
116044	regression test.
116045
1160462017-02-11  Vibhav Pant  <vibhavp@gmail.com>
116047
116048	src/bytecode.c: Add optional sanity check for jump tables.
116049
116050	* src/bytecode.c (exec_byte_code): When sanity checks are enabled,
116051	  check that the jump table's size is equal to it's count.
116052
1160532017-02-11  Vibhav Pant  <vibhavp@gmail.com>
116054
116055	Merge branch 'master' into feature/byte-switch
116056
116057	* src/bytecode.c: Refactor to follow GNU coding standards
116058
1160592017-02-11  Eli Zaretskii  <eliz@gnu.org>
116060
116061	Fix handling of XBM images on MS-Windows
116062
116063	* src/image.c (xbm_load) [HAVE_NTGUI]: Fix calculation of
116064	'nbytes' when inverting XBM data bits.  (Bug#25661)
116065
1160662017-02-11  Eli Zaretskii  <eliz@gnu.org>
116067
116068	Fix handling of PBM data
116069
116070	* src/image.c (pbm_load): Handle PBM data with no blanks between
116071	individual pixel values correctly.  (Bug#25660)
116072
1160732017-02-10  Noam Postavsky  <npostavs@gmail.com>
116074
116075	Fix warnings in debug tracing code
116076
116077	* src/xdisp.c (dump_glyph, dump_glyph_string):
116078	* src/xfaces.c (dump_realized_face): Cast arguments or adjust format
116079	specifiers to match signedness.
116080
1160812017-02-10  Sam Steingold  <sds@gnu.org>
116082
116083	Extract grep-find-ignored-directories processing from rgrep-default-command
116084
116085	(rgrep-find-ignored-directories): Extract from `rgrep-default-command'.
116086	Some Emacs packages use `grep-find-ignored-directories' to ignore some
116087	directories, so will use this function instead of custom code.
116088	(rgrep-default-command): Use `rgrep-find-ignored-directories'.
116089
1160902017-02-10  Vibhav Pant  <vibhavp@gmail.com>
116091
116092	src/bytecode.c: Avoid comparing values unnecessarily in Bswitch
116093
116094	* src/bytecode.c: (exec_byte_code) While linear searching the jump
116095	  table, compare the value's hash table first to avoid calling
116096	  h->test.cmpfn every time.
116097
1160982017-02-10  Paul Eggert  <eggert@cs.ucla.edu>
116099
116100	Fix a few integer-overflow glitches
116101
116102	* src/composite.c (composition_compute_stop_pos, composition_reseat_it):
116103	* src/dispextern.h (struct composition_it.rule_idx):
116104	* src/keyboard.c (Fset__this_command_keys):
116105	* src/xwidget.c (webkit_js_to_lisp):
116106	Don’t assume object sizes fit in ‘int’.
116107	* src/xwidget.c (Fxwidget_resize):
116108	Don’t assume Emacs integers fit in ‘int’.
116109
1161102017-02-10  Eli Zaretskii  <eliz@gnu.org>
116111
116112	Fix a bug with displaying an image after a TAB
116113
116114	* src/xdisp.c (display_line): Handle TAB at end of screen line
116115	specially only when we are displaying characters.  (Bug#25662)
116116
1161172017-02-10  Eli Zaretskii  <eliz@gnu.org>
116118
116119	Improve commentary in lisp.h
116120
116121	* src/lisp.h: Explain in the comment why enlarging a Lisp_Misc
116122	object is discouraged.
116123
1161242017-02-10  Paul Eggert  <eggert@cs.ucla.edu>
116125
116126	Move cyclic tests to fns-tests.el
116127
116128	* test/src/fns-tests.el (cyc1, cyc2, dot1, dot2): New functions.
116129	(test-cycle-length, test-cycle-safe-length, test-cycle-member)
116130	(test-cycle-memq, test-cycle-memql, test-cycle-assq)
116131	(test-cycle-assoc, test-cycle-rassq, test-cycle-rassoc)
116132	(test-cycle-delq, test-cycle-delete, test-cycle-reverse)
116133	(test-cycle-plist-get, test-cycle-lax-plist-get)
116134	(test-cycle-plist-member, test-cycle-plist-put)
116135	(test-cycle-lax-plist-put, test-cycle-equal, test-cycle-nconc):
116136	New tests.
116137	* test/manual/cyclic-tests.el: File deleted.
116138
1161392017-02-10  Gemini Lasswell  <gazally@runbox.com>
116140
116141	Fix instrumenting code with propertized strings in Edebug
116142
116143	* lisp/emacs-lisp/edebug.el (edebug-read-function): Allow
116144	'read' to decide what is and isn't a syntax error.  (Bug#25068)
116145
1161462017-02-10  Vladimir Panteleev  <vladimir@thecybershadow.net>
116147
116148	Improve fontification in bat-mode
116149
116150	* lisp/progmodes/bat-mode.el (bat-font-lock-keywords): Match
116151	word and symbol constituents when looking for variable names
116152	to fontify; also, correct the syntax table and mark the equal
116153	sign (=) character as punctuation.  Improve fontification
116154	accuracy of iteration/positional variables.
116155	(bat-mode): Set comment-start-skip.  (Bug#25541)
116156
116157	* test/lisp/progmodes/bat-mode-tests.el: New file, tests for
116158	bat-mode.el.
116159
1161602017-02-10  Eli Zaretskii  <eliz@gnu.org>
116161
116162	Restore special setting of this-command-keys by M-x
116163
116164	It was lost when execute-extended-command was reimplemented in Lisp.
116165
116166	* src/keyboard.c (Fset__this_command_keys): New function.
116167	(syms_of_keyboard): Defsubr it.
116168
116169	* lisp/simple.el (execute-extended-command): Set this-command-keys
116170	as novice.el expects.  (Bug#25612)
116171
1161722017-02-09  Juri Linkov  <juri@linkov.net>
116173
116174	* lisp/isearch.el (isearch-search-fun-default): Set isearch-adjusted
116175
116176	to t to display "Pending" in the search prompt for lax
116177	word/symbol search (bug#25562).  Don't use lax for lazy-highlighting
116178	when 'bound' is non-nil.
116179	(word-search-regexp, isearch-symbol-regexp): Don't depend on lax
116180	at the beginning of regexp (bug#22589).
116181
116182	* lisp/info.el (Info-isearch-search):
116183	Use isearch--lax-regexp-function-p.
116184
116185	* doc/emacs/search.texi (Word Search, Symbol Search):
116186	Mention "Pending" prompt for lax word/symbol search.
116187
1161882017-02-09  Vibhav Pant  <vibhavp@gmail.com>
116189
116190	src/bytecode.c (exec_byte_code): Remove unneeded assert.
116191
116192	bytecode.c (exec_byte_code): Use h->count instead of HASH_TABLE_SIZE
116193
1161942017-02-09  Vibhav Pant  <vibhavp@gmail.com>
116195
116196	bytecode.c (exec_byte_code): don't check hash code in linear search.
116197
116198	* src/bytecode.c (exec_byte_code): Don't check that the hash code is
116199	  not nil when linear scanning the jump table. Hash tables for are
116200	  declared with :size as the exact number of cases, so each entry i
116201	  should have a hash code. When BYTE_CODE_SAFE, do it as a sanity
116202	  check.
116203
1162042017-02-09  Tino Calancha  <tino.calancha@gmail.com>
116205
116206	Ibuffer: Update mode documentation
116207
116208	* lisp/ibuffer.el (ibuffer-mode): List newest commands in mode documentation.
116209
1162102017-02-09  Steven Allen  <steven@stebalien.com>  (tiny change)
116211
116212	Fix environment variable for xdg-data-dirs
116213
116214	* lisp/xdg.el (xdg-data-dirs): Use XDG_DATA_DIRS, not XDG_CONFIG_DIRS
116215
1162162017-02-09  Tino Calancha  <tino.calancha@gmail.com>
116217
116218	Ibuffer: Erase output buffer before shell commands
116219
116220	* lisp/ibuf-macs.el (define-ibuffer-op): Add keyword arguments
116221	BEFORE and AFTER; they are forms to run before/after the operation.
116222	* lisp/ibuf-ext.el (ibuffer--maybe-erase-shell-cmd-output):
116223	New defun; if shell-command-dont-erase-buffer is nil, then
116224	erase shell command output buffer.
116225	(ibuffer-do-shell-command-pipe, ibuffer-do-shell-command-file): Use it.
116226
1162272017-02-09  Tino Calancha  <tino.calancha@gmail.com>
116228
116229	Ibuffer: Don't truncate shell command output
116230
116231	* lisp/ibuf-ext.el (ibuffer-do-shell-command-pipe)
116232	(ibuffer-do-shell-command-pipe-replace)
116233	Use 'call-shell-region' (Bug#22679).
116234	(ibuffer-do-shell-command-file): Use call-process-shell-command.
116235	If FILE, the file that the buffer object is visiting,
116236	exists and the buffer is up-to-date, then use
116237	FILE instead of creating a temporary file (Bug#22679).
116238
1162392017-02-09  Vibhav Pant  <vibhavp@gmail.com>
116240
116241	Improve byte-switch execution.
116242
116243	* lisp/emacs-lisp/byte-opt.el,
116244	  lisp/emacs-lisp/bytecomp.el (byte-decompile-bytecode-1),
116245	  (byte-compile-lapcode): Calculate the actual jump address while
116246	  compiling, store it in the jump table.
116247
116248	* src/bytecode.c: Jump to the looked up value directly, do a linear
116249	  search when the number of elements is <= 5.
116250
1162512017-02-09  Noam Postavsky  <npostavs@gmail.com>
116252
116253	Make sure eshell pipelines don't drop data
116254
116255	* lisp/eshell/esh-proc.el (eshell-sentinel): If called while still
116256	handling output of the process, make sure to close the pipes only later,
116257	so that the next process in the pipeline recieves EOF only after getting
116258	all its input (Bug#25549).
116259
1162602017-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
116261
116262	Make mm-shr use mail-parse-charset by default
116263
116264	* lisp/gnus/mm-decode.el (mm-shr): Use mail-parse-charset by default.
116265	This helps an html message with no charset spec to be decoded.
116266
1162672017-02-08  Stephen Berman  <stephen.berman@gmx.net>
116268
116269	describe-char: unambiguous name for inserting ASCII 7
116270
116271	* lisp/descr-text.el (describe-char): Make the input
116272	suggestion for inserting ASCII character 7 by name use the
116273	unambiguous name "BELL (BEL)" (bug#25641).
116274
1162752017-02-08  Michael Albinus  <michael.albinus@gmx.de>
116276
116277	Modify suppressing `vc-refresh-state' in filenotify-tests.el
116278
116279	* test/lisp/filenotify-tests.el (file-notify-test03-autorevert):
116280	Use an advice rather than an alias for suppressing `vc-refresh-state'.
116281
1162822017-02-08  Noam Postavsky  <npostavs@gmail.com>
116283
116284	Disable native completion for ipython (Bug#25067)
116285
116286	* lisp/progmodes/python.el:
116287	(python-shell-completion-native-disabled-interpreters): Add "ipython".
116288
1162892017-02-07  Michael Albinus  <michael.albinus@gmx.de>
116290
116291	Suppress undesired error messages in filenotify-tests.el
116292
116293	* test/lisp/filenotify-tests.el (file-notify-test03-autorevert):
116294	Suppress `vc-refresh-state', it produces undesired error messages.
116295
1162962017-02-07  Eli Zaretskii  <eliz@gnu.org>
116297
116298	Fix a typo in ada-mode manual
116299
116300	* doc/misc/ada-mode.texi (Project file variables): Add a missing
116301	right bracket.  Reported by Jean-Christophe Helary
116302	<jean.christophe.helary@gmail.com>.
116303
1163042017-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
116305
116306	Ensure that Gnus bugs show up in the Emacs tracker
116307
116308	* lisp/gnus/gnus.el (gnus-bug-package): Include Emacs in the
116309	package spec.
116310
1163112017-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
116312
116313	Revert "Don't tag Gnus bugs with "gnus""
116314
116315	This reverts commit b6fa58072304c2a24f1fe8a0e06a4739a7f8211b.
116316
116317	The debbugs syntax requires a package name
116318
1163192017-02-07  Vibhav Pant  <vibhavp@gmail.com>
116320
116321	Add tests for checking byte-switch code.
116322
116323	* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-cond): New test,
116324	  test byte-switch bytecode.
116325
1163262017-02-07  Mark Oteiza  <mvoteiza@udel.edu>
116327
116328	Add xdg library
116329
116330	* etc/NEWS: Mention new library.
116331	* lisp/xdg.el: New file.
116332
1163332017-02-07  Paul Eggert  <eggert@cs.ucla.edu>
116334
116335	Do not trick info/dir’s timestamp
116336
116337	* Makefile.in (${srcdir}/info/dir): When making this file, do not
116338	do anything special about its timestamp.  Previously this rule
116339	used move-if-change, which meant that this file’s timestamp could
116340	end up being older than the files it depends on, and this caused
116341	‘make --question info’ to fail, which caused ‘make-dist’ to fail
116342	now that ‘make-dist’ invokes ‘make --question info’.
116343
1163442017-02-07  Paul Eggert  <eggert@cs.ucla.edu>
116345
116346	Make FOR_EACH_TAIL more like other FOR_EACH macros
116347
116348	See comments by Stefan Monnier in:
116349	https://lists.gnu.org/r/emacs-devel/2017-02/msg00181.html
116350	and by Eli Zaretskii in:
116351	https://lists.gnu.org/r/emacs-devel/2017-02/msg00207.html
116352	* src/fns.c (internal_equal): Do not bypass check for depth
116353	overflow when tail-recursing via a dotted list tail or an overlay
116354	plist, to avoid a rare infloop.
116355	* src/lisp.h (FOR_EACH_TAIL, FOR_EACH_TAIL_SAFE): Take TAIL as an
116356	arg, and update it at each iteration, rather than have callers
116357	access it.tail.  All callers changed.
116358	(FOR_EACH_TAIL): Do not check for dotted lists, as this is now
116359	the caller’s responsibility.  All callers changed.
116360	(FOR_EACH_TAIL_CONS): Remove.  All callers changed.
116361	(struct for_each_tail_internal.tail): Remove; no longer needed.
116362	(FOR_EACH_TAIL_INTERNAL): Remove dotted arg, and set the tail
116363	arg each time through the loop.  All callers changed.
116364
1163652017-02-05  Paul Eggert  <eggert@cs.ucla.edu>
116366
116367	Port to clang 3.8.0
116368
116369	It does not allow a for-loop's control var to be an anonymous struct.
116370	* src/lisp.h (struct for_each_tail_internal): New type.
116371	(FOR_EACH_TAIL_INTERNAL): Use it.
116372
1163732017-02-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
116374
116375	Add cyclic-list tests
116376
116377	* test/manual/cycle-tests.el: New file (Bug#25606).
116378
1163792017-02-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
116380
116381	FOR_EACH_TAIL now checks for quit
116382
116383	As per Eli Zaretskii (Bug#25606#20).  Although these calls to
116384	maybe_quit are unnecessary in practice, Eli was not convinced
116385	that the calls are unnecessary.
116386	* src/lisp.h (FOR_EACH_TAIL, FOR_EACH_TAIL_CONS):
116387	Call maybe_quit every so often.
116388	(FOR_EACH_TAIL_INTERNAL): New arg CHECK_QUIT.  All callers changed.
116389
1163902017-02-05  Paul Eggert  <eggert@cs.ucla.edu>
116391
116392	Signal list cycles in ‘length’ etc.
116393
116394	Use macros like FOR_EACH_TAIL instead of maybe_quit to
116395	catch list cycles automatically instead of relying on the
116396	user becoming impatient and typing C-g (Bug#25606).
116397	* src/fns.c (Flength, Fmember, Fmemq, Fmemql, Fassq, Fassoc, Frassq)
116398	(Frassoc, Fdelete, Freverse):
116399	Use FOR_EACH_TAIL instead of maybe_quit.
116400	(Fnreverse): Use simple EQ to check for circular list instead
116401	of rarely_quit, as this suffices in this unusual case.
116402	(Fplist_put, Flax_plist_put, Flax_plist_put):
116403	Use FOR_EACH_TAIL_CONS instead of maybe_quit.
116404	(internal_equal): Use FOR_EACH_TAIL_CONS to check lists, instead
116405	of by-hand tail recursion that did not catch cycles.
116406	* src/fns.c (Fsafe_length, Fplist_get):
116407	* src/xdisp.c (display_mode_element):
116408	Use FOR_EACH_TAIL_SAFE instead of by-hand Floyd’s algorithm.
116409	* src/lisp.h (QUIT_COUNT_HEURISTIC): Remove; no longer needed.
116410	(rarely_quit): Simply count toward USHRT_MAX + 1, since the
116411	fancier versions are no longer needed.
116412	(FOR_EACH_TAIL_CONS, FOR_EACH_TAIL_SAFE)
116413	(FOR_EACH_TAIL_INTERNAL): New macros, the last with definiens
116414	mostly taken from FOR_EACH_TAIL.
116415	(FOR_EACH_TAIL): Rewrite in terms of FOR_EACH_TAIL_INTERNAL.
116416
1164172017-02-05  Paul Eggert  <eggert@cs.ucla.edu>
116418
116419	Simplify use of FOR_EACH_TAIL
116420
116421	* src/data.c (circular_list): New function.
116422	* src/lisp.h (FOR_EACH_TAIL): Use Brent’s algorithm and C99 for-loop
116423	decl, to eliminate the need for the args TAIL, TORTOISE and N, and
116424	to speed things up a bit on typical hosts with optimization.
116425	All uses changed (Bug#25605).
116426
1164272017-02-05  Simen Heggestøyl  <simenheg@gmail.com>
116428
116429	* lisp/textmodes/css-mode.el: Require subr-x at compile time
116430
1164312017-02-05  Eli Zaretskii  <eliz@gnu.org>
116432
116433	Clarify documentation of 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
116434
116435	* doc/lispref/nonascii.texi (Text Representations): Clarify that
116436	'exact' value of QUALITY argument to 'bufferpos-to-filepos' and
116437	'filepos-to-bufferpos' can lead to expensive and slow processing.
116438
116439	* lisp/international/mule-util.el (filepos-to-bufferpos)
116440	(bufferpos-to-filepos): Doc fix.  (Bug#25626)
116441
1164422017-02-05  Vibhav Pant  <vibhavp@gmail.com>
116443
116444	Merge remote-tracking branch 'origin/master' into feature/byte-switch
116445
1164462017-02-05  Vibhav Pant  <vibhavp@gmail.com>
116447
116448	bytecomp.el: Use macroexp-const-p instead of bc-cond-valid-obj2-p.
116449
116450	* lisp/emacs-lisp/bytecomp.el (byte-compile-cond-vars): Use
116451	  (macroexp-cons-p) instead of (byte-compile-cond-valid-obj2-p) to
116452	  make sure that obj1/obj2 can be compared with `eq'.
116453
1164542017-02-05  Vibhav Pant  <vibhavp@gmail.com>
116455
116456	* lisp/emacs-lisp/byte-opt.el (byte-decompile-bytecode-1): Use eq instead of =.
116457
1164582017-02-05  Vibhav Pant  <vibhavp@gmail.com>
116459
116460	bytecomp.el: Inline lapcode containing `byte-switch' correctly.
116461
116462	* lisp/emacs-lisp/bytecomp.el (byte-compile-inline-lapcode):
116463	  Restore value of byte-compile-depth after emitting a jump to a tag
116464	  in a jump table, or default/done tags.
116465	  Set the depth of final tags for byte-switch to nil after emitting
116466	  any jumps to them.
116467
1164682017-02-05  Vibhav Pant  <vibhavp@gmail.com>
116469
116470	byte-opt.el: Replace jump tables while decompiling correctly.
116471
116472	* lisp/emacs-lisp/byte-opt.el (byte-decompile-bytecode-1):
116473	  Don't make a copy of the constant vector, as it isn't used with
116474	  the decompiled lapcode.
116475	  Make sure that the correct lapcode pair/list is being modified while
116476	  replacing the jump table.
116477
1164782017-02-05  Vibhav Pant  <vibhavp@gmail.com>
116479
116480	bytecomp.el: Don't store non-keyword symbols in jump-tables.
116481
116482	* lisp/emacs-lisp/bytecomp.el (byte-compile-cond-valid-obj2-p) return
116483	  nil when OBJ is a non-keyword symbol (i.e a variable), as the jump
116484	  table can only be used when comparing variables with constant values.
116485
1164862017-02-04  Tom Tromey  <tom@tromey.com>
116487
116488	typo fix
116489
116490	(css--colon-inside-selector-p): Fix typo in docstring.
116491
1164922017-02-04  Tom Tromey  <tom@tromey.com>
116493
116494	Set comment-multi-line in js-mode
116495
116496	Bug#6806:
116497	* lisp/progmodes/js.el (js-mode): Set comment-multi-line to t.
116498	* test/lisp/progmodes/js-tests.el (js-mode-auto-fill): New test.
116499
1165002017-02-04  Simen Heggestøyl  <simenheg@gmail.com>
116501
116502	* test/manual/indent/scss-mode.scss: Fix indentation
116503
1165042017-02-04  Simen Heggestøyl  <simenheg@gmail.com>
116505
116506	Fix indentation of multiline CSS property values
116507
116508	* lisp/textmodes/css-mode.el (css-smie-grammar): Give colons belonging
116509	to properties higher precedence.
116510	(css--colon-inside-selector-p, css--colon-inside-funcall): New
116511	functions for helping SMIE during tokenization.
116512	(css-smie--forward-token, css-smie--backward-token): Distinguish
116513	colons belonging to properties from other colons.
116514
116515	* test/manual/indent/css-mode.css: Add tests for the changes above.
116516
116517	* test/manual/indent/scss-mode.scss: Ditto.
116518
1165192017-02-04  Gemini Lasswell  <gazally@runbox.com>
116520
116521	Add tests for lisp/kmacro.el
116522
116523	* test/lisp/kmacro-tests.el: New file.  (Bug#24939)
116524
1165252017-02-04  Eli Zaretskii  <eliz@gnu.org>
116526
116527	Fix autorevert-tests on MS-Windows
116528
116529	* test/lisp/autorevert-tests.el
116530	(auto-revert-test02-auto-revert-deleted-file): Don't check that
116531	auto-revert-use-notify was reset to nil on w32.
116532
1165332017-02-04  Gemini Lasswell  <gazally@runbox.com>
116534
116535	New macro 'ert-with-message-capture'
116536
116537	* lisp/emacs-lisp/ert-x.el (ert-with-message-capture): New macro.
116538	(Bug#25158)
116539
116540	* test/lisp/autorevert-tests.el (auto-revert--wait-for-revert)
116541	(auto-revert-test00-auto-revert-mode)
116542	(auto-revert-test01-auto-revert-several-files)
116543	(auto-revert-test02-auto-revert-deleted-file)
116544	(auto-revert-test03-auto-revert-tail-mode)
116545	(auto-revert-test04-auto-revert-mode-dired):
116546	* test/lisp/filenotify-tests.el (file-notify-test03-autorevert): Use
116547	ert-with-message-capture.
116548
1165492017-02-04  Gemini Lasswell  <gazally@runbox.com>
116550
116551	Avoid invalid read syntax errors due to 'ert-with-test-buffer'
116552
116553	* lisp/emacs-lisp/ert-x.el (ert-with-test-buffer): Fix the
116554	'declare' form.  (Bug#24722)
116555
1165562017-02-04  Eli Zaretskii  <eliz@gnu.org>
116557
116558	Fix a syntax error when evaluating pcase.el under Edebug
116559
116560	* lisp/emacs-lisp/pcase.el (pcase-MACRO): Replace def-edebug-spec
116561	with an explicit 'put' form.  Suggested by Gemini Lasswell
116562	<gazally@runbox.com>.  (Bug#24717)
116563
1165642017-02-04  Gemini Lasswell  <gazally@runbox.com>
116565	    Eli Zaretskii  <eliz@gnu.org>
116566
116567	Change edebug-max-depth from defconst to defcustom
116568
116569	* lisp/emacs-lisp/edebug.el (edebug-max-depth): Add defcustom.
116570	(Bug#24713)
116571
116572	* etc/NEWS: Mention edebug-max-depth.
116573
116574	* doc/lispref/edebug.texi (Checking Whether to Stop): Mention
116575	edebug-max-depth and index it.  Add cross-references for
116576	max-lisp-eval-depth and max-specpdl-size.
116577
1165782017-02-04  Eli Zaretskii  <eliz@gnu.org>
116579
116580	Support options with embedded whitespace in 'dired-listing-switches'
116581
116582	* lisp/dired.el (dired-listing-switches): Document how to quote
116583	options with embedded whitespace.
116584
116585	* lisp/files.el (insert-directory): Use split-string-and-unquote
116586	to support dired-listing-switches that specify command-line
116587	options with embedded spaces.  (Bug#25485)
116588
1165892017-02-04  Gemini Lasswell  <gazally@runbox.com>
116590	    Noam Postavsky  <npostavs@users.sourceforge.net>
116591
116592	Add tests for lisp/emacs-lisp/testcover.el
116593
116594	* test/lisp/emacs-lisp/testcover-tests.el: New file.
116595	* test/lisp/emacs-lisp/testcover-resources/testcases.el: New file.
116596
1165972017-02-04  Eli Zaretskii  <eliz@gnu.org>
116598
116599	Document 'save-some-buffers-default-predicate'
116600
116601	* doc/lispref/files.texi (Saving Buffers):
116602	* doc/emacs/files.texi (Save Commands): Document
116603	save-some-buffers-default-predicate.
116604
1166052017-02-04  Richard Stallman  <rms@gnu.org>
116606
116607	New defcustom 'save-some-buffers-default-predicate'
116608
116609	* lisp/files.el (save-some-buffers-default-predicate): New defcustom.
116610	(save-some-buffers): Use it when PRED is nil or omitted.
116611
1166122017-02-04  Mark Oteiza  <mvoteiza@udel.edu>
116613
116614	Rename to if-let* and when-let*
116615
116616	Make the existing if-let and when-let aliases.
116617	* lisp/emacs-lisp/subr-x.el (if-let*, when-let*): New macros.  Rewrite
116618	docstrings, incorporating that from let* and the existing if-let.
116619	(if-let, when-let, and-let*): Alias them.
116620
1166212017-02-03  Vibhav Pant  <vibhavp@gmail.com>
116622
116623	Revert "Use maphash instead of cl-loop."
116624
116625	This reverts commit bfa88520136dd6b187ba101e6db5a5f8f0d5e874.
116626
1166272017-02-03  Nicolas Petton  <nicolas@petton.fr>
116628
116629	Bump Emacs version to 25.2 RC1
116630
116631	* README:
116632	* configure.ac:
116633	* msdos/sed2v2.inp:
116634	* nt/README.W32: Bump Emacs version.
116635	* lisp/ldefs-boot.el: Update.
116636
1166372017-02-03  Nicolas Petton  <nicolas@petton.fr>
116638
116639	* admin/make-tarball.txt: Add documentation regarding the release banner.
116640
1166412017-02-03  Tino Calancha  <tino.calancha@gmail.com>
116642
116643	* CONTRIBUTE (Documenting your changes): Index new vars/commands in manual.
116644
1166452017-02-03  Paul Eggert  <eggert@cs.ucla.edu>
116646
116647	Re-port alloc.c to Solaris sparc and simplify
116648
116649	alloc.c had bitrotted a bit, and used an undefined symbol
116650	stack_base when Emacs was built on Solaris sparc, leading to
116651	compilation failures.  Also, code related to __builtin_unwind_init
116652	was unnecessarily duplicated.  Fix the bitrot and remove some
116653	duplication.
116654	* src/alloc.c: Remove uses of GC_SAVE_REGISTERS_ON_STACK, since it
116655	is never defined.
116656	(test_setjmp) [!HAVE___BUILTIN_UNWIND_INIT && GC_SETJMP_WORKS]:
116657	Define a no-op dummy, to simplify use.
116658	(test_setjmp) [!GC_SETJMP_WORKS]: Test setjmp_tested_p here rather
116659	than in the caller, to simplify use.
116660	(stacktop_sentry): New type.
116661	(__builtin_unwind_init) [!HAVE___BUILTIN_UNWIND_INIT]: New macro.
116662	(SET_STACK_TOP_ADDRESS): New macro, containing code that was duplicated.
116663	(flush_stack_call_func, Fgarbage_collect): Use it.
116664	(init_alloc): Omit unnecessary initialization.
116665	After dumping, Emacs need not re-test setjmp.
116666
1166672017-02-03  Noam Postavsky  <npostavs@gmail.com>
116668
116669	Add tests for scrolling
116670
116671	* test/manual/scroll-tests.el: New tests for scroll-margin behavior.
116672
1166732017-02-03  Noam Postavsky  <npostavs@gmail.com>
116674
116675	Fix scrolling with partial lines
116676
116677	* src/xdisp.c (partial_line_height): New function.
116678	(try_scrolling):
116679	* src/window.c (window_scroll_pixel_based): Use it for calculating the
116680	pixel scroll margin correctly in a window with partial lines.
116681
1166822017-02-03  Noam Postavsky  <npostavs@gmail.com>
116683
116684	Make limit on scroll-margin variable
116685
116686	* src/xdisp.c (maximum-scroll-margin): New variable.
116687	* lisp/cus-start.el: Make it customizable.
116688	* etc/NEWS: Mention it.
116689	* doc/emacs/display.texi (Auto Scrolling):
116690	* doc/lispref/windows.texi (Textual Scrolling): Document it.
116691	* src/window.c (window_scroll_pixel_based): Use it instead of hardcoding
116692	division by 4 (Bug #5718).
116693
1166942017-02-03  Noam Postavsky  <npostavs@gmail.com>
116695
116696	Don't count mode line for scroll-margin limit
116697
116698	* src/window.c (window_scroll_margin): Use window_box_height to avoid
116699	counting header line, scrollbars for scroll-margin limit (Bug #5718).
116700
1167012017-02-03  Noam Postavsky  <npostavs@gmail.com>
116702
116703	Refactor uses of scroll_margin to a function
116704
116705	Its effective range needs to be clamped between 0 and (window height /
116706	4), so it's better to have this constraint in a single place.
116707
116708	* src/window.c (window_scroll_margin): New function.
116709	(window_scroll_pixel_based, window_scroll_line_based):
116710	(Frecenter, Fmove_to_window_line):
116711	* src/xdisp.c (try_scrolling, try_cursor_movement):
116712	(redisplay_window, try_window, try_window_id): Use it.
116713
1167142017-02-03  Dmitry Gutov  <dgutov@yandex.ru>
116715
116716	(xref-collect-matches): Use '-E' together with '-e'
116717
116718	* lisp/progmodes/xref.el (xref-collect-matches): Use '-E'
116719	together with '-e', as suggested by Noam Postavsky
116720	(https://lists.gnu.org/r/emacs-devel/2017-01/msg00780.html).
116721
1167222017-02-03  Paul Eggert  <eggert@cs.ucla.edu>
116723
116724	Pacify Oracle Studio 12.5
116725
116726	* src/emacs.c (main): Do not silently convert char * to bool.
116727
1167282017-02-02  Paul Eggert  <eggert@cs.ucla.edu>
116729
116730	Fix lisp.h underparenthesization
116731
116732	* src/lisp.h (STACK_CONS, AUTO_STRING_WITH_LEN):
116733	Parenthesize compound literals that are function call args.
116734	Although this does not fix any bugs, it is the proper style for
116735	macro parenthesization as it means this code will continue to
116736	work even if make_lisp_ptr is changed to a macro.
116737
1167382017-02-02  Stefan Monnier  <monnier@iro.umontreal.ca>
116739
116740	* lisp/doc-view.el (doc-view-mode): Don't require a final newline
116741
116742	(doc-view-revert-buffer): Silence overflow warnings.
116743
1167442017-02-02  Paul Eggert  <eggert@cs.ucla.edu>
116745
116746	Merge from gnulib
116747
116748	2017-01-30 Port to PGI 16.10 x86-64
116749	2017-01-20 time_rz: fix comment typo
116750	2017-01-14 strftime: %z is -00 if unknown
116751	This incorporates:
116752	* doc/misc/texinfo.tex, lib/c-ctype.h, lib/strftime.c:
116753	* lib/time-internal.h, lib/verify.h:
116754	Copy from gnulib.
116755
1167562017-02-02  Tino Calancha  <tino.calancha@gmail.com>
116757
116758	Check if there are hunks before kill or refine a hunk
116759
116760	* lisp/vc/diff-mode.el (diff--some-hunks-p): New predicate.
116761	(diff-hunk-kill, diff-file-kill, diff-refine-hunk): Use it (Bug#25571).
116762
1167632017-02-02  Tino Calancha  <tino.calancha@gmail.com>
116764
116765	Ignore error after kill last file or hunk
116766
116767	* lisp/vc/diff-mode.el (diff-hunk-kill): Go to beginning of hunk before kill.
116768	Ignore error after kill last hunk (Bug#25570).
116769	(diff-file-kill): Idem.
116770
1167712017-02-02  Tino Calancha  <tino.calancha@gmail.com>
116772
116773	Show current line highlighted in *Occur* buffer
116774
116775	* lisp/replace.el (list-matching-lines-current-line-face)
116776	(list-matching-lines-jump-to-current-line): New user options.
116777	(occur--orig-line, occur--orig-line-str): New variables.
116778	(occur, occur-engine): Use them.
116779	(occur--final-pos): New variable.
116780	(occur-1): Use it.
116781	(occur-engine): Idem.
116782	Show the current line with 'list-matching-lines-current-line-face'.
116783	Set point on the first matching line after the current one.
116784	* etc/NEWS: Add entry for the new option.
116785
1167862017-02-02  Tino Calancha  <tino.calancha@gmail.com>
116787
116788	Allow occur command to operate on the region
116789
116790	See discussion in:
116791	https://lists.gnu.org/r/emacs-devel/2016-12/msg01084.html
116792	* lisp/replace.el (occur--region-start, occur--region-end)
116793	(occur--matches-threshold): New variables.
116794	(occur-engine): Use them.
116795	(occur): Idem.
116796	Add optional arg REGION; if non-nil occur applies in that region.
116797	* doc/lispintro/emacs-lisp-intro.texi (Keybindings): Update manual
116798	* doc/emacs/search.texi (Other Repeating Search): Idem.
116799
1168002017-02-02  Mark Oteiza  <mvoteiza@udel.edu>
116801
116802	Treat list-buffers-directory as a string
116803
116804	Another step in the long history of list-buffers-directory.  A thread
116805	branch discussing the meaning/use of the variable starts here
116806	https://lists.gnu.org/r/emacs-devel/2009-09/msg00684.html
116807	Also see (info "(elisp) Buffer File Name").
116808	* lisp/buff-menu.el: Relocate special case code into info.el.  Nix
116809	Info-* defvars.
116810	(Buffer-menu--pretty-file-name): Remove special case.  Use
116811	bound-and-true-p.
116812	(Buffer-menu-info-node-description): Remove.
116813	* lisp/ibuffer.el (ibuffer-buffer-file-name): Treat
116814	list-buffers-directory as a string.
116815	* lisp/info.el (Info-node-description): New function.
116816	(Info-select-node): Use it.
116817
1168182017-02-02  Mark Oteiza  <mvoteiza@udel.edu>
116819
116820	Turn on lexical-binding in parse-time.el
116821
116822	* lisp/calendar/parse-time.el: Turn on lexical-binding.
116823	(parse-time-iso8601-regexp, parse-iso8601-time-string): Remove unused
116824	bindings.
116825
1168262017-02-02  Mark Oteiza  <mvoteiza@udel.edu>
116827
116828	Prevent creating thumbnails of all gif frames
116829
116830	With the previous defaults, doing image-dired on a directory with an
116831	animated foo.gif would cause creation of foo.thumb-N.gif for each of
116832	N frames in foo.gif.  By default image-dired looks for foo.thumb.gif, so
116833	there additionally is no usable thumbnail after all the needless effort.
116834	image-dired never handled animation, regardless.
116835	* lisp/image-dired.el: Mention limitation.
116836	(image-dired-cmd-create-thumbnail-options):
116837	(image-dired-cmd-create-temp-image-options):
116838	(image-dired-cmd-create-standard-thumbnail-options): Append [0] to
116839	filename to indicate only converting the 0th frame.
116840	(image-dired-display-image-mode): Don't show a cursor.
116841
1168422017-02-02  Paul Eggert  <eggert@cs.ucla.edu>
116843
116844	Fix quitting bug when buffers are frozen
116845
116846	Problem noted by Eli Zaretskii in:
116847	https://lists.gnu.org/r/emacs-devel/2017-01/msg00721.html
116848	This patch also fixes some other issues in that report.
116849	* src/lisp.h (incr_rarely_quit): Remove.
116850	All callers changed to use rarely_quit directly.
116851	* src/search.c (freeze_buffer_relocation)
116852	(thaw_buffer_relocation): New functions.
116853	(looking_at_1, fast_looking_at, search_buffer):
116854	Use them to fix bug when quitting when buffers are frozen.
116855	* src/sysdep.c (emacs_intr_read): Rename from emacs_nointr_read.
116856	All uses changed.
116857
1168582017-02-02  Paul Eggert  <eggert@cs.ucla.edu>
116859
116860	Revamp quitting and fix infloops
116861
116862	This fixes some infinite loops that cannot be quitted out of,
116863	e.g., (defun foo () (nth most-positive-fixnum '#1=(1 . #1#)))
116864	when byte-compiled and when run under X.  See:
116865	https://lists.gnu.org/r/emacs-devel/2017-01/msg00577.html
116866	This also attempts to keep the performance improvements I recently
116867	added, as much as possible under the constraint that the infloops
116868	must be caught.  In some cases this fixes infloop bugs recently
116869	introduced when I removed immediate_quit.
116870	* src/alloc.c (Fmake_list):
116871	Use rarely_quit, not maybe_quit, for speed in the usual case.
116872	* src/bytecode.c (exec_byte_code):
116873	* src/editfns.c (Fcompare_buffer_substrings):
116874	* src/fns.c (Fnthcdr):
116875	* src/syntax.c (scan_words, skip_chars, skip_syntaxes)
116876	(Fbackward_prefix_chars):
116877	Use rarely_quit so that users can C-g out of long loops.
116878	* src/callproc.c (call_process_cleanup, call_process):
116879	* src/fileio.c (read_non_regular, Finsert_file_contents):
116880	* src/indent.c (compute_motion):
116881	* src/syntax.c (scan_words, Fforward_comment):
116882	Remove now-unnecessary maybe_quit calls.
116883	* src/callproc.c (call_process):
116884	* src/doc.c (get_doc_string, Fsnarf_documentation):
116885	* src/fileio.c (Fcopy_file, read_non_regular, Finsert_file_contents):
116886	* src/lread.c (safe_to_load_version):
116887	* src/sysdep.c (system_process_attributes) [GNU_LINUX]:
116888	Use emacs_read_quit instead of emacs_read in places where
116889	C-g handling is safe.
116890	* src/eval.c (maybe_quit): Move comment here from lisp.h.
116891	* src/fileio.c (Fcopy_file, e_write):
116892	Use emacs_write_quit instead of emacs_write_sig in places where
116893	C-g handling is safe.
116894	* src/filelock.c (create_lock_file): Use emacs_write, not
116895	plain write, as emacs_write no longer has a problem.
116896	(read_lock_data): Use emacs_read, not read, as emacs_read
116897	no longer has a problem.
116898	* src/fns.c (rarely_quit): Move to lisp.h and rename to
116899	incr_rarely_quit.  All uses changed..
116900	* src/fns.c (Fmemq, Fmemql, Fassq, Frassq, Fplist_put, Fplist_member):
116901	* src/indent.c (compute_motion):
116902	* src/syntax.c (find_defun_start, back_comment, forw_comment)
116903	(Fforward_comment, scan_lists, scan_sexps_forward):
116904	Use incr_rarely_quit so that users can C-g out of long loops.
116905	* src/fns.c (Fnconc): Move incr_rarely_quit call to within
116906	inner loop, so that it catches C-g there too.
116907	* src/keyboard.c (tty_read_avail_input): Remove commented-out
116908	and now-obsolete code dealing with interrupts.
116909	* src/lisp.h (rarely_quit, incr_rarely_quit): New functions,
116910	the latter moved here from fns.c and renamed from rarely_quit.
116911	(emacs_read_quit, emacs_write_quit): New decls.
116912	* src/search.c (find_newline, search_buffer, find_newline1):
116913	Add maybe_quit to catch C-g.
116914	* src/sysdep.c (get_child_status): Always invoke maybe_quit
116915	if interruptible, so that the caller need not bother.
116916	(emacs_nointr_read, emacs_read_quit, emacs_write_quit):
116917	New functions.
116918	(emacs_read): Rewrite in terms of emacs_nointr_read.
116919	Do not handle C-g or signals; that is now for emacs_read_quit.
116920	(emacs_full_write): Replace PROCESS_SIGNALS two-way arg
116921	with INTERRUPTIBLE three-way arg.  All uses changed.
116922
1169232017-02-02  Paul Eggert  <eggert@cs.ucla.edu>
116924
116925	Remove immediate_quit.
116926
116927	The old code that sets and clears immediate_quit was
116928	ineffective except when Emacs is running in terminal mode, and
116929	has problematic race conditions anyway, so remove it.  This
116930	will introduce some hangs when Emacs runs in terminal mode,
116931	and these hangs should be fixed in followup patches.
116932	* src/keyboard.c (immediate_quit): Remove.  All uses removed.
116933
1169342017-02-01  Alan Mackenzie  <acm@muc.de>
116935
116936	Allow C++ nested brace-list-entries to be better indented.
116937
116938	This fixes bug #24431.  The key change of this bug fix is correctly analyzing
116939	nested brace lists when the opening element stands on the same line as both
116940	its introductory brace and an enclosing parameter list parenthesis.
116941
116942	* lisp/progmodes/cc-align.el (c-lineup-under-anchor): New line-up function.
116943
116944	* lisp/progmodes/cc-engine.el (c-looking-at-or-maybe-in-bracelist): Accept the
116945	presence of exactly an identifier between an open parenthesis and an open
116946	brace as evidence of the brace starting a brace list.
116947	(c-looking-at-statement-block): New function, extracted from
116948	c-looking-at-inexpr-block.  Enhance it to analyze inner blocks recursively
116949	when needed.
116950	(c-looking-at-inexpr-block): Extract new function (see above) and call it.
116951	(c-add-stmt-syntax): Enhance, with new &optional parameter, to supply the
116952	prime syntactic symbol with a fixed anchor point.  When this is used, restrict
116953	all added syntactic symbols to those having an anchor point on the same line.
116954	Add, in addition to the current additional symbols, c-brace-list-entry when
116955	needed; use c-looking-at-statement-block to determine the latter.
116956	(c-guess-basic-syntax, CASE 9D): Use c-add-stmt-syntax rather than just
116957	c-add-syntax, to assemble the syntactic context of a 'brace-list-entry, thus
116958	getting, possibly, several accompanying syntactic entries.
116959
116960	* lisp/progmodes/cc-styles.el (c-style-alist, "gnu" style): New entry for
116961	'brace-list-intro, namely c-lineup-arglist-intro-after-paren.
116962
116963	* lisp/progmodes/cc-vars.el (c-offsets-alist): Change the factory default
116964	offset for 'brace-list-entry from 0 to c-lineup-under-anchor.
116965
116966	* doc/misc/cc-mode.texi (Syntactic Symbols): Amend the definition of
116967	brace-list-intro.
116968	(Brace List Symbols): Amend the example to show the new analysis of brace
116969	lists when the first element comes on the same line as the opening brace.
116970	(Misc Line-Up): Document the new line-up function c-lineup-under-anchor.
116971
1169722017-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
116973
116974	Revert "DOn't use string-as-unibyte in Gnus"
116975
116976	This reverts commit d1c931009004aef847105b7bac6b6ffafd985b82.
116977
116978	Not all the cases where we had string-as-unibyte were characters,
116979	so this needs to be considered more thoroughly before being redone.
116980
1169812017-02-01  Vibhav Pant  <vibhavp@gmail.com>
116982
116983	Use maphash instead of cl-loop.
116984
116985	* lisp/emacs-lisp/bytecomp.el: (byte-compile-lapcode) Use maphash
116986	  instead of cl-loop
116987
1169882017-02-01  Michael Albinus  <michael.albinus@gmx.de>
116989
116990	Fix a subtle problem in Tramp with timers
116991
116992	* lisp/net/tramp.el (tramp-accept-process-output): Change argument
116993	list.  Make it work when called inside a timer.  See
116994	<https://lists.gnu.org/r/tramp-devel/2017-01/msg00010.html>.
116995
1169962017-01-31  Eli Zaretskii  <eliz@gnu.org>
116997
116998	Index byte-compile-debug
116999
117000	* doc/lispref/compile.texi (Compilation Functions): Index
117001	byte-compile-debug.
117002
1170032017-01-31  Philipp Stephani  <phst@google.com>
117004
117005	Document `byte-compile-debug' in the ELisp manual
117006
117007	* doc/lispref/compile.texi: Document variable `byte-compile-debug'.
117008
1170092017-01-31  Ted Zlatanov  <tzz@lifelogs.com>
117010
117011	read-multiple-choice: explain dialog popups more
117012
117013	* lisp/emacs-lisp/subr-x.el (read-multiple-choice): Explain
117014	when a graphical popup is used and how it can be avoided.
117015
1170162017-01-31  Ted Zlatanov  <tzz@lifelogs.com>
117017
117018	auth-source-user-and-password: add forgotten user parameter
117019
117020		* lisp/auth-source.el (auth-source-user-and-password): Use
117021	          accidentally unused "user" parameter.
117022	          Reported by Oscar Najera <najera.oscar@gmail.com>.
117023
1170242017-01-31  Simen Heggestøyl  <simenheg@gmail.com>
117025
117026	Fix typo in a NEWS entry for CSS mode
117027
1170282017-01-31  Philipp Stephani  <phst@google.com>
117029
117030	Document variable `byte-compile-debug'
117031
117032	* lisp/emacs-lisp/bytecomp.el (byte-compile-debug): Document variable.
117033
1170342017-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
117035
117036	DOn't use string-as-unibyte in Gnus
117037
117038	* lisp/gnus/nnmail.el (nnmail-parse-active): Don't use
117039	string-as-unibyte.
117040	(nnmail-insert-xref): Ditto.
117041
117042	* lisp/gnus/canlock.el (canlock-make-cancel-key): Ditto.
117043
117044	* lisp/gnus/gnus-art.el (gnus-article-browse-html-parts): Ditto.
117045
117046	* lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Ditto.
117047	(gnus-browse-foreign-server): Ditto.
117048	(gnus-browse-foreign-server): Ditto.
117049
117050	* lisp/gnus/gnus-start.el
117051	(gnus-update-active-hashtb-from-killed): Ditto.
117052	(gnus-read-newsrc-el-file): Ditto.
117053
117054	* lisp/gnus/mml.el (mml-generate-mime-1): Ditto.
117055
117056	* lisp/gnus/nnir.el (nnir-get-active): Ditto.
117057	(nnir-get-active): Ditto.
117058
1170592017-01-31  Juri Linkov  <juri@linkov.net>
117060
117061	Allow C-s C-w to yank ' to the search ring in the Gnus article buffer
117062
117063	* lisp/gnus/gnus-art.el (gnus-article-mode-syntax-table): Make
117064	M-. in article buffers work for `foo' strings, and still allow
117065	C-s C-w to yank ' to the search ring (bug#22248).
117066
1170672017-01-31  Paul Eggert  <eggert@cs.ucla.edu>
117068
117069	* src/alloc.c, src/lisp.h: Fix minor glitches in recent changes.
117070
1170712017-01-31  Tino Calancha  <tino.calancha@gmail.com>
117072
117073	* test/lisp/vc/diff-mode-tests.el: Require diff-mode.
117074
1170752017-01-31  Dima Kogan  <dima@secretsauce.net>
117076
117077	New test for diff-mode handling trailing --
117078
117079	test/lisp/vc/diff-mode-tests.el: New test file
117080
1170812017-01-31  Dima Kogan  <dima@secretsauce.net>
117082
117083	Handle patch terminators produced by git and bzr patch export
117084
117085	Patch by Juri Linkov posted in the #9597 bug report
117086
117087	* lisp/vc/diff-mode.el (diff-sanity-check-hunk): Find and ignore
117088	terminator (Bug #9597, #5302)
117089
1170902017-01-31  Dima Kogan  <dima@secretsauce.net>
117091
117092	Revert two accidental commits
117093
117094	This reverts commit f3c77d11af65f3b319b1784b4c3cf08c51aa7997.
117095	This reverts commit 3c941b900007c9e79c00af0f21d88154f6d8af1a.
117096
1170972017-01-31  Dima Kogan  <dima@secretsauce.net>
117098
117099	stash
117100
1171012017-01-31  Dima Kogan  <dima@secretsauce.net>
117102
117103	comint-get-old-input-default: behavior follows docstring
117104
117105	lisp/comint.el (comint-get-old-input-default): Modify behavior to follow
117106	docstring: if `comint-use-prompt-regexp' is nil, then return the CURRENT LINE,
117107	if point is on an output field.
117108
1171092017-01-31  Noam Postavsky  <npostavs@gmail.com>
117110
117111	Fix call to debugger on assertion failure
117112
117113	* lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): The first
117114	argument must be `error', and the second is a list of arguments for
117115	`signal'.
117116
1171172017-01-30  Tom Tromey  <tom@tromey.com>
117118
117119	css-mode documentation lookup feature
117120
117121	* etc/NEWS: Mention new feature.
117122	* lisp/textmodes/css-mode.el (css-mode-map): New defvar.
117123	(css--mdn-lookup-history): New defvar.
117124	(css-lookup-url-format): New defcustom.
117125	(css--mdn-property-regexp, css--mdn-completion-list): New defconsts.
117126	(css--mdn-after-render, css--mdn-find-symbol, css-lookup-symbol): New
117127	defuns.
117128	* test/lisp/textmodes/css-mode-tests.el (css-mdn-symbol-guessing): New
117129	test.
117130
1171312017-01-30  Glenn Morris  <rgm@gnu.org>
117132
117133	edt-mapper: just loading a library should not run code
117134
117135	* lisp/emulation/edt-mapper.el (edt-mapper): New function,
117136	containing code previously at top-level.
117137	* lisp/emulation/edt.el (edt-load-keys): After loading edt-mapper,
117138	run edt-mapper function.
117139
1171402017-01-30  Glenn Morris  <rgm@gnu.org>
117141
117142	mh-compat.el: remove duplicate definition
117143
117144	* lisp/mh-e/mh-compat.el (mh-make-obsolete-variable):
117145	Remove duplicate definition.
117146
1171472017-01-30  Paul Eggert  <eggert@cs.ucla.edu>
117148
117149	Add delq list arg check
117150
117151	* src/fns.c (Fdelq): Check that list is a proper list.
117152	This is more compatible with what ‘delete’ does.
117153
1171542017-01-30  Stefan Monnier  <monnier@iro.umontreal.ca>
117155
117156	* lisp/indent.el (indent-region-line-by-line): New function.
117157
117158	Extracted from indent-region.
117159	(indent-region, indent-region-function): Use it.
117160
1171612017-01-30  Stefan Monnier  <monnier@iro.umontreal.ca>
117162
117163	* lisp/subr.el (string-make-unibyte, string-make-multibyte): Obsolete.
117164
1171652017-01-30  Eli Zaretskii  <eliz@gnu.org>
117166
117167	More fixes to prevent crashes on C-g
117168
117169	* src/fns.c (Fassq, Frassq, Fplist_put): Reset immediate_quit
117170	before returning, to avoid crashes in quit.  (Bug#25566)
117171
1171722017-01-30  Eli Zaretskii  <eliz@gnu.org>
117173
117174	Avoid crashes on C-g in TTY sessions
117175
117176	* src/keyboard.c (handle_interrupt): Don't quit if
117177	waiting_for_input is set, as doing that is "unsafe": it will
117178	abort.  (Bug#25566)
117179
1171802017-01-30  Vibhav Pant  <vibhavp@gmail.com>
117181
117182	* lisp/emacs-lisp/bytecomp.el: Create jump tables with :purecopy t
117183
117184	Merge remote-tracking branch 'origin/master' into feature/byte-switch
117185
1171862017-01-30  Vibhav Pant  <vibhavp@gmail.com>
117187
117188	Fix hash tables not being purified correctly.
117189
117190	* src/alloc.c
117191	(purecopy_hash_table) New function, makes a copy of the given hash
117192	table in pure storage.
117193	Add new struct `pinned_object' and `pinned_objects' linked list for
117194	pinning objects.
117195	(Fpurecopy) Allow purifying hash tables
117196	(purecopy) Pin hash tables that are either weak or not declared with
117197	`:purecopy t`, use purecopy_hash_table otherwise.
117198	(marked_pinned_objects) New function, marks all objects in pinned_objects.
117199	(garbage_collect_1) Use it. Mark all pinned objects before sweeping.
117200	* src/lisp.h: Add new field `pure' to struct `Lisp_Hash_Table'.
117201	* src/fns.c: Add `purecopy' parameter to hash tables.
117202	(Fmake_hash_table): Check for a `:purecopy PURECOPY' argument, pass it
117203	to make_hash_table.
117204	(make_hash_table): Add `pure' parameter, set h->pure to it.
117205	(Fclrhash, Fremhash, Fputhash): Enforce that the table is impure with
117206	CHECK_IMPURE.
117207	* src/lread.c: (read1) Parse for `purecopy' parameter while reading
117208	  hash tables.
117209	* src/print.c: (print_object) add the `purecopy' parameter while
117210	  printing hash tables.
117211	* src/category.c, src/emacs-module.c, src/image.c, src/profiler.c,
117212	  src/xterm.c: Use new (make_hash_table).
117213
1172142017-01-29  Dmitry Gutov  <dgutov@yandex.ru>
117215
117216	Escape dash in xref rgrep regexp
117217
117218	* lisp/progmodes/xref.el (xref-collect-matches): Escape dash
117219	in REGEXP if it's the first character.
117220
1172212017-01-29  Dmitry Gutov  <dgutov@yandex.ru>
117222
117223	Say JavaScript, not Javascript
117224
117225	* lisp/progmodes/js.el (js-mode-map, js-syntax-propertize)
117226	(js-js-error, js-eval, js-set-js-context)
117227	(js--get-js-context):
117228	Refer to the language consistently as JavaScript.
117229
1172302017-01-29  Juanma Barranquero  <lekktu@gmail.com>
117231
117232	lisp/*.el: Fix some warnings
117233
117234	* lisp/battery.el (dbus-get-property):
117235	* lisp/dired-aux.el (format-spec): Declare function.
117236
117237	* lisp/net/zeroconf.el (zeroconf-list-service-names)
117238	(zeroconf-list-service-types, zeroconf-list-services):
117239	Mark unused lexical arg.
117240
117241	* lisp/progmodes/hideshow.el (hs-hide-block-at-point):
117242	* lisp/progmodes/sql.el (sql-end-of-statement):
117243	Pass LIMIT to 'looking-back'.
117244
1172452017-01-29  Noam Postavsky  <npostavs@gmail.com>
117246
117247	Don't warn about obsolete defgenerics when defining them
117248
117249	* lisp/emacs-lisp/cl-generic.el (cl-defgeneric): The declaration code
117250	should run after the definition code (Bug#25556).
117251
1172522017-01-29  Noam Postavsky  <npostavs@gmail.com>
117253
117254	Call modification hooks in org-src fontify buffers
117255
117256	* lisp/org/org-src.el (org-src-font-lock-fontify-block): Let-bind
117257	`inhibit-modification-hooks' to nil, since this function can be called
117258	from jit-lock-function which binds that variable to t (Bug#25132).
117259
1172602017-01-29  Tino Calancha  <tino.calancha@gmail.com>
117261
117262	Fix Bug#25524
117263
117264	* lisp/vc/diff-mode.el (diff-beginning-of-hunk):
117265	Return position at the beginning off the hunk.
117266	(diff-file-junk-re): Add SVN keywords.
117267
1172682017-01-28  Stephen Berman  <stephen.berman@gmx.net>
117269
117270	hl-line.el: Don't try to operate on a killed buffer
117271
117272	* lisp/hl-line.el (hl-line-maybe-unhighlight): Examine only
117273	live buffers (bug#25522).
117274
1172752017-01-28  Mark Oteiza  <mvoteiza@udel.edu>
117276
117277	Use access-file in EWW to check before downloading a file
117278
117279	* lisp/net/eww.el (eww-download): Check accessibility of
117280	eww-download-directory to prevent starting a download that will fail
117281	to write.
117282	* src/fileio.c (Faccess_file): Clarify the use of string argument in
117283	the docstring.
117284
1172852017-01-28  Yuri D'Elia  <wavexx@thregr.org>
117286
117287	Subject: Check Bcc after the Messag hook has run
117288
117289	* lisp/gnus/message.el (message-send): If the hook modifies
117290	the message (mml tags or headers), we should check bcc on the
117291	final message, not on the original.
117292
1172932017-01-28  Eli Zaretskii  <eliz@gnu.org>
117294
117295	Improve documentation of 'format' conversions
117296
117297	* src/editfns.c (Fformat): More accurate description of %g and
117298	effects of the various flags on it.  More accurate description of
117299	integer conversions.
117300
117301	* doc/lispref/strings.texi (Formatting Strings): More accurate
117302	description of %g and effects of the various flags on it.  More
117303	accurate description of integer conversions.  (Bug#25557)
117304
1173052017-01-28  Juanma Barranquero  <lekktu@gmail.com>
117306
117307	test/*.el: Avoid byte-compiler warnings
117308
117309	* test/lisp/abbrev-tests.el (abbrev-table-p-test): Remove unused 'let*'.
117310
117311	* test/lisp/faces-tests.el (faces--test): New customization group.
117312	(faces--test1, faces--test2): Use it.
117313
117314	* test/lisp/ffap-tests.el (ffap-tests-25243):
117315	Call 'mark-whole-buffer' interactively.
117316
117317	* test/lisp/ibuffer-tests.el (ibuffer-filter-groups, ibuffer-filtering-alist)
117318	(ibuffer-filtering-qualifiers, ibuffer-save-with-custom)
117319	(ibuffer-saved-filter-groups, ibuffer-saved-filters): Defvar.
117320	(ibuffer-format-qualifier, ibuffer-unary-operand): Declare.
117321
117322	* test/lisp/minibuffer-tests.el (completion-test1):
117323	Mark unused lexical arguments.
117324
117325	* test/lisp/simple-tests.el (simple-test--dummy-buffer): Wrap result in
117326	'with-no-warnings' to avoid them when the macro is invoked for effect.
117327
117328	* test/lisp/emacs-lisp/cl-seq-tests.el (cl-seq-count-test):
117329	Mark unused lexical arguments.
117330
117331	* test/lisp/emacs-lisp/let-alist-tests.el (let-alist-surface-test):
117332	Mark unused lexical arguments.
117333	(let-alist-cons): Remove unused let binding.
117334
117335	* test/lisp/net/dbus-tests.el (dbus-debug): Defvar.
117336	(dbus-get-unique-name): Declare.
117337
117338	* test/lisp/progmodes/python-tests.el (python-bob-infloop-avoid):
117339	Call 'font-lock-fontify-buffer' interactively.
117340
117341	* test/lisp/textmodes/tildify-tests.el (tildify-space-undo-test--test):
117342	Mark unused lexical argument.
117343
1173442017-01-27  Eli Zaretskii  <eliz@gnu.org>
117345
117346	Restore a test that was removed by a recent commit
117347
117348	* src/fileio.c (Ffile_accessible_directory_p): Don't overwrite the
117349	errno value unless it's necessary.  (Bug#25419)
117350
1173512017-01-27  Mark Oteiza  <mvoteiza@udel.edu>
117352
117353	Fix a couple eww customization types
117354
117355	* lisp/new/eww.el (eww-download-directory, eww-bookmarks-directory):
117356	Change customization type to "directory".
117357
1173582017-01-27  Philipp Stephani  <phst@google.com>
117359
117360	Don't require a shell when loading htmlfontify
117361
117362	* lisp/htmlfontify.el (hfy-which-etags): Don't call a shell for
117363	detecting the etags version (Bug#25468).
117364	* test/lisp/htmlfontify-tests.el (htmlfontify-bug25468): Add unit
117365	test.
117366
1173672017-01-27  Paul Eggert  <eggert@cs.ucla.edu>
117368
117369	Slightly tune file-accessible-directory-p fix
117370
117371	* src/fileio.c (Ffile_accessible_directory_p):
117372	Remove unnecessary test (Bug#25419).
117373
1173742017-01-27  Arash Esbati  <arash@gnu.org>
117375
117376	Add \citetitle to biblatex cite format
117377
117378	* lisp/textmodes/reftex-vars.el (reftex-cite-format-builtin): Add
117379	\citetitle[*] to `reftex-cite-format' and bind them to keys i/I
117380	per user request
117381	https://lists.gnu.org/r/auctex/2017-01/msg00049.html.
117382
1173832017-01-27  Lars Ingebrigtsen  <larsi@gnus.org>
117384
117385	Fix charsets and encodings from non-file MIME parts
117386
117387	* lisp/gnus/mml.el (mml-generate-mime-1): Get the charsets and
117388	encoding right for parts that do not originate from files.
117389
1173902017-01-27  Eli Zaretskii  <eliz@gnu.org>
117391
117392	Fix 'describe-variable' for longish variable values
117393
117394	* lisp/help-fns.el (describe-variable): Don't accidentally remove
117395	the last character of a variable's value.  (Bug#25545)
117396
1173972017-01-27  Vladimir Panteleev  <git@thecybershadow.net>  (tiny change)
117398
117399	Remove stale functions from ert manual
117400
117401	* doc/misc/ert.texi (Useful Techniques when Writing Tests):
117402	Replace ert--mismatch references with its cl-lib replacement,
117403	cl-mismatch.
117404
1174052017-01-27  Eli Zaretskii  <eliz@gnu.org>
117406
117407	Fix a typo in Eshell manual
117408
117409	* doc/misc/eshell.texi (History): Fix a typo.  Reported by Mak
117410	Kolybabi <mak@kolybabi.com>.
117411
1174122017-01-27  Eli Zaretskii  <eliz@gnu.org>
117413
117414	Ensure last line is at window bottom in shell buffers
117415
117416	* lisp/shell.el (shell-mode): Use setq-local.  Set
117417	scroll-conservatively to 101 locally.  See the discussion at
117418	https://lists.gnu.org/r/emacs-devel/2016-12/msg00736.html
117419	for the reasons.
117420
1174212017-01-27  Michael Hoffman  <emacs-hoffman@sneakemail.com>  (tiny change)
117422
117423	Support Bash Ctrl-Z indication of directory name in term.el
117424
117425	* lisp/term/xterm.el (term-emulate-terminal): Do not display ?\032 escape
117426	codes even when 'handled-ansi-message' is non-nil.  (Bug#11919)
117427
1174282017-01-27  Eli Zaretskii  <eliz@gnu.org>
117429
117430	Don't report zero errno for inaccessible directory
117431
117432	* src/fileio.c (Ffile_accessible_directory_p): Report EACCES when
117433	a file handler reports a failure.  (Bug#25419)
117434
1174352017-01-27  Eli Zaretskii  <eliz@gnu.org>
117436
117437	Fix filenotify-tests on MS-Windows
117438
117439	* test/lisp/filenotify-tests.el (file-notify-test04-file-validity)
117440	(file-notify-test05-dir-validity)
117441	(file-notify-test06-many-events)
117442	(file-notify-test08-watched-file-in-watched-dir): Manually remove
117443	the watch descriptor before calling file-notify--test-cleanup-p.
117444	(Bug#25539)
117445
1174462017-01-27  Hong Xu  <hong@topbug.net>
117447
117448	python-mode: Fix detection for opening blocks.
117449
117450	* lisp/progmodes/python.el
117451	(python-info-dedenter-opening-block-positions): There can't be any
117452	back-indented lines between an opening block and the current line.
117453
117454	* test/lisp/progmodes/python-tests.el
117455	(python-indent-electric-colon-4): Add an indent test case where
117456	there is one-more indented previous opening block.
117457
1174582017-01-27  Lars Ingebrigtsen  <larsi@gnus.org>
117459
117460	Fix Message check for bogus domain names
117461
117462	* lisp/gnus/message.el (message-make-fqdn): Fix check for
117463	bogus system names (bug#24570).
117464
1174652017-01-27  Øyvind Stegard  <oyvind@stegard.net>  (tiny change)
117466
117467	Subject: Restore correct Gnus newsgroup name after sending message
117468
117469	* lisp/gnus/gnus-msg.el (gnus-msg-mail): Set the value of
117470	gnus-newsgroup-name in the correct buffer (bug#24329).
117471
1174722017-01-27  Lars Ingebrigtsen  <larsi@gnus.org>
117473
117474	Mention the new Gnus sorting command
117475
1174762017-01-27  Lars Ingebrigtsen  <larsi@gnus.org>
117477
117478	Don't try to find charsets of non-text MIME parts
117479
117480	* lisp/gnus/mml.el (mml-generate-mime-1): It seems nonsensical
117481	to try to determine the charset of non-text message parts, so
117482	skip that (bug#24190).  This will also remove messages like
117483	"bunzip2ing /tmp/acsb.cpio.bz2...done" while sending messages
117484	if you include such files.
117485
1174862017-01-27  Lars Ingebrigtsen  <larsi@gnus.org>
117487
117488	Add new command gnus-article-sort-by-marks
117489
117490	* doc/misc/gnus.texi (Summary Sorting): Mention
117491	gnus-summary-sort-by-marks.
117492
117493	* lisp/gnus/gnus-sum.el (gnus-article-sort-by-marks): New
117494	function (bug#23393).
117495	(gnus-thread-sort-by-marks): Ditto.
117496	(gnus-summary-sort-by-mark): New command suggested by Dan Jacobson.
117497	(gnus-summary-mode-map): Add keystroke.
117498	(gnus-summary-make-menu-bar): Add to menu.
117499
1175002017-01-26  Katsumi Yamaoka  <yamaoka@jpl.org>
117501
117502	Make `C-h b' work correctly in Gnus article buffer (bug#18257)
117503
117504	* lisp/gnus/gnus-art.el (gnus-article-describe-bindings):
117505	Ignore summary commands that aren't bound to
117506	gnus-article-read-summary-keys keys (bug#18257).
117507
1175082017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117509
117510	Fix crossposting in non-primary groups
117511
117512	* lisp/gnus/message.el
117513	(message-cross-post-followup-to-header): Gnus server prefixes
117514	shouldn't be included in the group names (bug#21661).
117515	(message-cross-post-followup-to): Ditto.
117516
1175172017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117518
117519	Gnus doc clarification
117520
117521	* doc/misc/gnus.texi (Unavailable Servers): Explicitly say
117522	that "unreachable" is the same as disabling it (bug#21630).
117523
1175242017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117525
117526	Remove dead code from rfc2047
117527
117528	* lisp/mail/rfc2047.el (rfc2047-fold-field): Remove dead code.
117529
117530	It's been disabled since 2005, when I made the change with the
117531	following comment.
117532
117533	(rfc2047-encode-message-header): Disabled header folding -- not
117534	all headers can be folded, and this should be done by the message
117535	composition mode.  Probably.  I think.
117536
1175372017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117538
117539	Fill too long mail headers
117540
117541	* lisp/gnus/message.el (message--fold-long-headers): New
117542	function to fold too-long headers (bug#21608).
117543	(message-send-mail): Use it to fill headers longer than 998
117544	characters (which is the protocol limit).
117545
1175462017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117547
117548	Make nndoc more resilient against corrupted files
117549
117550	* lisp/gnus/nndoc.el (nndoc-possibly-change-buffer): Don't bug
117551	out on invalid files, like invalid .gz files (bug#21538).
117552	This may hinder Gnus from starting up.
117553
1175542017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117555
117556	Respect buffer-local message-fcc-handler-function
117557
117558	* lisp/gnus/message.el (message-do-fcc): Copy the local
117559	variables from the Message buffer so that local settings of
117560	`message-fcc-handler-function' etc are respected (bug#21174).
117561
1175622017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117563
117564	(message-do-fcc): Modernize the code slightly.
117565
117566	* lisp/gnus/message.el (message-do-fcc): Modernize the code slightly.
117567
1175682017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117569
117570	Avoid a regexp overflow in message-goto-body
117571
117572	* lisp/gnus/message.el (message-goto-body-1): Avoid using a
117573	complicated backtracking regexp, because they may overflow on
117574	large headers (bug#21160).
117575
1175762017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117577
117578	Refactor message-goto-body
117579
117580	* lisp/gnus/message.el (message-goto-body-1): Refactor out for reuse.
117581
1175822017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117583
117584	Fix typo in last checkin
117585
117586	* lisp/gnus/nnimap.el (nnimap-shell-program): Document
117587	nnimap-shell-program (bug#20651).
117588
1175892017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117590
117591	Document nnimap-shell-program
117592
117593	* lisp/gnus/nnimap.el (nnimap-shell-program): Document
117594	nnimap-shell-program (bug#20651).
117595
1175962017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117597
117598	Document :shell-command in `make-network-process'
117599
117600	* doc/lispref/processes.texi (Network): Document :shell-command.
117601
117602	* lisp/net/network-stream.el (open-network-stream): Document
117603	the :shell-command parameter (bug#20651).
117604
1176052017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117606
117607	Gnus doc clarification
117608
117609	* lisp/gnus/gnus-sum.el (gnus-summary-save-article): Mention
117610	the gnus-prompt-before-saving variable (bug#20500).
117611
1176122017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117613
117614	Fix the previous mml patch better
117615
117616	* lisp/gnus/mml.el (mml-minibuffer-read-file): Fix the
117617	previous patch in a better way (bug#20480).
117618
1176192017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117620
117621	Give a slight better error message in mml-minibuffer-read-file
117622
117623	* lisp/gnus/mml.el (mml-minibuffer-read-file): Give a slightly
117624	better error message when the user enters nothing (bug#20480).
117625
1176262017-01-26  Vibhav Pant  <vibhavp@gmail.com>
117627
117628	* lisp/emacs-lisp/bytecomp.el:(bc-cond-jump-table-info)add docstring
117629
1176302017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117631
117632	Make eww buffers prettier in the buffer listing
117633
117634	* lisp/net/eww.el (eww-render): Put the currently visited URL
117635	into the buffer listing (bug#23738).
117636	(eww-render): Ditto.
117637
1176382017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117639
117640	Allow mml-attach-file to prompt less
117641
117642	* lisp/gnus/mml.el (mml-attach-file): If given a prefix, don't
117643	prompt for type/description/disposition, but use defaults
117644	(bug#19202).
117645
1176462017-01-26  Lars Ingebrigtsen  <larsi@gnus.org>
117647
117648	Don't allow message-newline-and-reformat to be run outside the body
117649
117650	* lisp/gnus/message.el (message-newline-and-reformat): Error
117651	out if run outside the body of a message (bug#18820).
117652
1176532017-01-26  Vibhav Pant  <vibhavp@gmail.com>
117654
117655	* lisp/emacs-lisp/bytecomp.el: Use correct function to push nil
117656
117657	* lisp/emacs-lisp/bytecomp.el: (byte-compile-cond-jump-table) Use
117658	  byte-compile-constant instead of byte-compile-form to push nil.
117659
1176602017-01-26  Vibhav Pant  <vibhavp@gmail.com>
117661
117662	* lisp/emacs-lisp/disass.el: Fix spacing while showing jump tables
117663
1176642017-01-26  Paul Eggert  <eggert@cs.ucla.edu>
117665
117666	Replace QUIT with maybe_quit
117667
117668	There’s no longer need to have QUIT stand for a slug of C statements.
117669	Use the more-obvious function-call syntax instead.
117670	Also, use true and false when setting immediate_quit.
117671	These changes should not affect the generated machine code.
117672	* src/lisp.h (QUIT): Remove.  All uses replaced by maybe_quit.
117673
1176742017-01-26  Paul Eggert  <eggert@cs.ucla.edu>
117675
117676	A quicker check for quit
117677
117678	On some microbenchmarks this lets Emacs run 60% faster on my
117679	platform (AMD Phenom II X4 910e, Fedora 25 x86-64).
117680	* src/atimer.c: Include keyboard.h, for pending_signals.
117681	* src/editfns.c (Fcompare_buffer_substrings):
117682	* src/fns.c (Fnthcdr, Fmemq, Fmemql, Fassq, Frassq, Fplist_put)
117683	(Fnconc, Fplist_member):
117684	Set and clear immediate_quit before and after loop instead of
117685	executing QUIT each time through the loop.  This is OK for loops
117686	that affect only locals.
117687	* src/eval.c (process_quit_flag): Now static.
117688	(maybe_quit): New function, containing QUIT’s old body.
117689	* src/fns.c (rarely_quit): New function.
117690	(Fmember, Fassoc, Frassoc, Fdelete, Fnreverse, Freverse)
117691	(Flax_plist_get, Flax_plist_put, internal_equal, Fnconc):
117692	Use it instead of QUIT, for
117693	speed in tight loops that might modify non-locals.
117694	* src/keyboard.h (pending_signals, process_pending_signals):
117695	These belong to keyboard.c, so move them here ...
117696	* src/lisp.h: ... from here.
117697	(QUIT): Redefine in terms of the new maybe_quit function, which
117698	contains this macro’s old definiens.  This works well with branch
117699	prediction on processors with return stack buffers, e.g., x86
117700	other than the original Pentium.
117701
1177022017-01-26  Paul Eggert  <eggert@cs.ucla.edu>
117703
117704	Simplify make-list implementation
117705
117706	* src/alloc.c (Fmake_list): Don’t unroll loop, as the complexity
117707	is not worth it these days.
117708
1177092017-01-26  Mark Oteiza  <mvoteiza@udel.edu>
117710
117711	Make use of cl-loop destructuring
117712
117713	* lisp/progmodes/js.el (js--get-tabs): Replace extraneous bits with
117714	destructuring.
117715	(with-js): Add declare forms.
117716
1177172017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117718
117719	Revert "Bind C-c keys in the article buffer"
117720
117721	This reverts commit 6b4195f2ace1f6328c5a833fde40f39babef4fa6.
117722
117723	The commit somehow lead to problems in other parts of Emacs.
117724
1177252017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117726
117727	Document how to quote MML tags
117728
117729	* doc/misc/emacs-mime.texi (MML Definition): Mention how to
117730	quote MML tags (bug#18881).
117731
1177322017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117733
117734	Make address parsing more robust
117735
117736	* lisp/mail/ietf-drums.el (ietf-drums-parse-address): Don't
117737	bug out on addresses like
117738	(ietf-drums-parse-address "\"Foo \"bar\" <larsi@gnus.org>")
117739	(bug#18572).
117740
1177412017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117742
117743	Fix the %P (line number) thing in Gnus summary buffers
117744
117745	* lisp/gnus/gnus-salt.el (gnus-pick-line-number): Remove hack.
117746
117747	* lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Reset the
117748	"pick" mode line number on entry instead of relying in a hack (bug#18311).
117749
1177502017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117751
117752	Fix wrong documentation on nnmairix keystrokes
117753
117754	* doc/misc/gnus.texi (nnmairix keyboard shortcuts): The
117755	nnmairix commands are on G G, not $ (bug#18260).
117756
1177572017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117758
117759	Bind C-c keys in the article buffer
117760
117761	* lisp/gnus/gnus-art.el (gnus-article-mode-map): Also bind the
117762	C-c keys so that they execute in the summary buffer
117763	(bug#18257).  This makes commands like `C-c C-f' work from the
117764	article buffer.
117765
1177662017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117767
117768	Don't mark articles in Gnus as displayed when they aren't
117769
117770	* lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Don't
117771	mark any articles as selected if we're not selecting any
117772	articles (bug#18255).
117773
1177742017-01-25  Vibhav Pant  <vibhavp@gmail.com>
117775
117776	* lisp/emacs-lisp/disass.el: Display jump tables for switch.
117777
117778	* lisp/emacs-lisp/bytecomp.el:Use correct size for switch jump-table
117779
117780	* lisp/emacs-lisp/bytecomp.el: Simplify b-c-cond-valid-obj2-p
117781
117782	* lisp/emacs-lisp/bytecomp.el: Fix byte-switch codegen with symbols.
117783
1177842017-01-25  Vibhav Pant  <vibhavp@gmail.com>
117785
117786	* lisp/emacs-lisp/byte-opt.el: Add support for decompiling switch
117787
117788	* lisp/emacs-lisp/byte-opt.el: (byte-decompile-bytecode-1) When the
117789	  constant encountered precedes a byte-switch op, replace all the
117790	  addresses in the jump table with tags.
117791
1177922017-01-25  Mark Oteiza  <mvoteiza@udel.edu>
117793
117794	Move cXXXr and cXXXXr to subr.el
117795
117796	* etc/NEWS: Mention new core Elisp.
117797	* doc/lispref/lists.texi (List Elements): Document and index the new
117798	functions.
117799	* doc/misc/cl.texi (List Functions): Change "defines" to "aliases".
117800	* lisp/subr.el (caaar, caadr, cadar, caddr, cdaar, cdadr, cddar)
117801	(cdddr, caaaar caaadr, caadar, caaddr, cadaar, cadadr, caddar):
117802	(cadddr, cdaaar, cdaadr, cdadar, cdaddr, cddaar, cddadr, cdddar):
117803	(cddddr): New functions.
117804	* lisp/emacs-lisp/cl-lib.el (cl-caaar, cl-caadr, cl-cadar, cl-caddr):
117805	(cl-cdaar, cl-cdadr, cl-cddar cl-cdddr, cl-caaaar cl-caaadr):
117806	(cl-caadar, cl-caaddr, cl-cadaar, cl-cadadr, cl-caddar, cl-cadddr):
117807	(cl-cdaaar, cl-cdaadr, cl-cdadar, cl-cdaddr, cl-cddaar, cl-cddadr):
117808	(cl-cdddar, cl-cddddr): Alias to new subr functions.
117809	* lisp/emacs-lisp/cl.el (cl-unload-function): Remove cXXXr and cXXXXr
117810	elements.
117811
1178122017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117813
117814	Only save .newsrc file if the native method is NNTP
117815
117816	* lisp/gnus/gnus-start.el (gnus-save-newsrc-file): Only save
117817	the .newsrc file if the native select method is NNTP
117818	(bug#18198).  This avoids problems with invalid IMAP group
117819	names and the like in the .newsrc file.
117820
1178212017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117822
117823	Only save .newsrc file if the native method is NNTP
117824
117825	* lisp/gnus/gnus-start.el (gnus-save-newsrc-file): Only save
117826	the .newsrc file if the native select method is NNTP
117827	(bug#18198).  This avoids problems with invalid IMAP group
117828	names and the like in the .newsrc file.
117829
1178302017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117831
117832	Gnus custom spec fix
117833
117834	* lisp/gnus/gnus-art.el (gnus-signature-limit): Fix customize
117835	spec to match the doc string (bug#17679).
117836
1178372017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117838
117839	Clarify confusing Gnus error message
117840
117841	* lisp/gnus/gnus-topic.el (gnus-topic-unindent): Clarify
117842	confusing error message (bug#17677).
117843
1178442017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117845
117846	Make C-u C-x m work with Message as documented
117847
117848	* lisp/gnus/message.el (message-mail): Respect the CONTINUE
117849	parameter (bug#17175).
117850
1178512017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117852
117853	Fix problem with auto-mode and dir-locals-collect-variables
117854
117855	* lisp/files.el (dir-locals-collect-variables): When run from
117856	auto-mode, the file in question may not be an absolute path
117857	name (bug#24016).
117858
117859	Example backtrace:
117860
117861	Debugger entered--Lisp error: (args-out-of-range "compile-1st-in-loa
117862	  dir-locals-collect-variables(((emacs-lisp-mode (indent-tabs-mode))
117863	  hack-dir-local-variables()
117864	  hack-local-variables(no-mode)
117865	  run-mode-hooks(diff-mode-hook)
117866	  diff-mode()
117867	  mm-display-inline-fontify((#<buffer  *mm*-923037> ("text/x-diff" (
117868
1178692017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117870
117871	Attach text files correctly in Message
117872
117873	* lisp/gnus/mml.el (mml-generate-mime-1): Detect which coding
117874	system has been used in attached text files, and don't try to
117875	do any encoding of these files (bug#13808).
117876
1178772017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117878
117879	Build fix for older gnutls versions
117880
117881	* src/gnutls.c (emacs_gnutls_handle_error):
117882	GNUTLS_E_PREMATURE_TERMINATION is apparently only present in
117883	gnutls-3.
117884
1178852017-01-25  Tino Calancha  <tino.calancha@gmail.com>
117886
117887	ediff-difference-vector-alist: Drop duplicated definition
117888
117889	* lisp/vc/ediff-init.el (ediff-difference-vector-alist):
117890	Drop duplicated definition.
117891	(ediff-difference-vector-A, ediff-difference-vector-B)
117892	(ediff-difference-vector-C, ediff-difference-vector-Ancestor):
117893	Move definition before 'ediff-difference-vector-alist'.
117894
1178952017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117896
117897	Revert "nnimap.el: support additional expunge options"
117898
117899	This reverts commit 4e9baea6aba1633074889339dcc7cdc9d73880d3.
117900
117901	The patch broke fetching new mail:
117902
117903	Debugger entered--Lisp error: (error "Format specifier doesn’t match argument type")
117904	  format("%d .*\n" (t ("OK" ("HIGHESTMODSEQ" "914696") "Expunge" "completed.") ("VANISHED" "1825937") ("0" "RECENT")))
117905	  (looking-at (format "%d .*\n" sequence))
117906	  (not (looking-at (format "%d .*\n" sequence)))
117907	  (progn (while (and (not (bobp)) (progn (forward-line -1) (looking-at "\\*\\|[0-9]+ OK NOOP")))) (not (looking-at (format "%d .*\n" sequence))))
117908
1179092017-01-25  Nikolaus Rath  <Nikolaus@rath.org>
117910
117911	nnimap.el: support additional expunge options
117912
117913	* lisp/gnus/nnimap.el (nnimap-close-group)
117914	(nnimap-request-expire-articles, nnimap-delete-article)
117915	(nnimap-request-scan): add new 'never, 'immediate, and 'on-exit
117916	settings for nnimap-expunge (bug#20670).
117917
1179182017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117919
117920	Don't tag Gnus bugs with "gnus"
117921
117922	* lisp/gnus/gnus-msg.el (gnus-bug): Remove the bug package tags.
117923
117924	* lisp/gnus/gnus.el (gnus-bug-package): Removed; Gnus doesn't
117925	have its own package any more in the bug tracker.
117926
1179272017-01-25  Lars Ingebrigtsen  <larsi@gnus.org>
117928
117929	Tweak TLS error messaging on closed connections
117930
117931	* src/gnutls.c (emacs_gnutls_handle_error): Demote the normal
117932	peer-closed-connection "The TLS connection was non-properly
117933	terminated" message to a lower level so that it isn't shown to
117934	the user by default.
117935
1179362017-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
117937
117938	Avoid having eww unexpectedly open external browsers
117939
117940	* lisp/net/eww.el (eww-render): Instead of opening unsupported
117941	content types like audio/mpeg directly in an external browser
117942	(which can be very confusing especially when something
117943	redirects to a file like that), just display a simple
117944	interstitial that people can choose to click on or not
117945	(bug#22671).
117946
1179472017-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
117948
117949	When opening new eww buffers, use buffer names based on the host name
117950
117951	* lisp/net/eww.el (eww-browse-url): When opening in a new
117952	window, use a buffer name based on the host name (bug#23738).
117953	(eww--dwim-expand-url): Refactored out into its own function
117954	for easier reuse.
117955
1179562017-01-24  David Engster  <deng@randomsample.de>
117957
117958	xml: Fix parsing of default namespace with quoted names
117959
117960	* lisp/xml.el (xml-parse-attlist): Properly extract namespace when
117961	  parsing is done with quoted symbol names (bug#23440).
117962	* test/lisp/xml-tests.el (xml-parse-test--default-namespace-qnames)
117963	  (xml-parse-test-default-namespace-qnames): Test for the above.
117964
1179652017-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
117966
117967	Fix rendering of some complex SVG images
117968
117969	* lisp/net/shr.el (shr-parse-image-data): Don't transform
117970	SVG->DOM->XML unless we're blocking images, as this is apt to
117971	destroy the SVG (bug#24111).
117972
1179732017-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
117974
117975	Clarify the last clarification
117976
117977	* lisp/net/shr.el (shr-width): Clarify the interaction with
117978	`shr-use-fonts' (bug#24928).
117979
1179802017-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
117981
117982	shr-width doc clarification
117983
117984	* lisp/net/shr.el (shr-width): Clarify the interaction with
117985	`shr-use-fonts' (bug#24928).
117986
1179872017-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
117988
117989	Allow passing in max-width/height
117990
117991	* lisp/net/shr.el (shr-rescale-image): Allow passing in
117992	max-width/height (bug#25287).
117993
1179942017-01-24  Stefan Monnier  <monnier@iro.umontreal.ca>
117995
117996	* lisp/progmodes/vhdl-mode.el: Avoid add-to-list on local vars
117997
117998	Require `cl' for `pushnew'.
117999	(vhdl-scan-project-contents, vhdl-compose-wire-components)
118000	(vhdl-uniquify): Use `pushnew' instead of `add-to-list'.
118001
1180022017-01-24  Noam Postavsky  <npostavs@gmail.com>
118003
118004	Fix comment detection on open parens
118005
118006	Characters having both open paren syntax and comment start syntax were
118007	being detected as open parens even when they should have been part a
118008	comment starter (Bug#24870).
118009
118010	* src/syntax.c (in_2char_comment_start): New function, extracted from
118011	`scan_sexps_forward'.
118012	(scan_sexps_forward): Add check for a 2-char comment starter before the
118013	loop.  Inside the loop, do that check after incrementing the 'from'
118014	character index.  Move the single char comment syntax cases into the
118015	switch instead of special casing them before.
118016	* test/src/syntax-tests.el (parse-partial-sexp-paren-comments):
118017	(parse-partial-sexp-continue-over-comment-marker): New tests.
118018
1180192017-01-23  Alan Mackenzie  <acm@muc.de>
118020
118021	Give , and .@ doc strings.  Fixes bug #24561.
118022
118023	Also make *Help* links to ``' possible.  Also make usable as such doc strings
118024	on the function-documentation property of a symbol.
118025
118026	* lisp/emacs-lisp/backquote.el (top-level): Give , and '@ doc strings on the
118027	function-documentation property.  Also give these symbols a reader-construct
118028	property.
118029
118030	* lisp/help-fns.el (describe-function): Allow the function-documentation
118031	property to work.  Use princ rather than prin1 to print the function's name
118032	when it has a reader-construct property.
118033	(help-fns-signature): Don't insert `high-usage' for a reader-construct.
118034	(describe-function-1): Adapt to process documentation on the
118035	function-documentation property.  Print "a reader construct" when appropriate.
118036
118037	* lisp/help-mode.el (help-xref-symbol-regexp): Amend this regexp also to match
118038	``'.
118039
1180402017-01-22  Paul Eggert  <eggert@cs.ucla.edu>
118041
118042	Improve uses of CHECK_LIST etc.
118043
118044	* src/eval.c (FletX): Report an error for invalid constructs like
118045	‘(let* (a . 0))’, so that ‘let*’ is more consistent with ‘let’.
118046	(lambda_arity): Use plain CHECK_CONS.
118047	* src/fns.c (CHECK_LIST_END): Move from here to lisp.h.
118048	(Fcopy_alist): Remove unnecessary CHECK_LIST call, since
118049	concat does that for us.
118050	(Fnthcdr, Fmember, Fmemql, Fdelete, Fnreverse):
118051	Use CHECK_LIST_END, not CHECK_LIST_CONS.  This hoists a
118052	runtime check out of the loop.
118053	(Fmemq): Simplify and use CHECK_LIST_END instead of CHECK_LIST.
118054	(Fassq, Fassoc, Frassq, Frassoc):
118055	Simplify and use CHECK_LIST_END instead of CAR.
118056	(assq_no_quit, assoc_no_quit): Simplify and assume proper list.
118057	(Fnconc): Use plain CHECK_CONS, and do-while instead of while loop.
118058	* src/fontset.c (Fnew_fontset):
118059	* src/frame.c (Fmodify_frame_parameters):
118060	Use CHECK_LIST_END at end, rather than CHECK_LIST at start, for a
118061	more-complete check.
118062	* src/gfilenotify.c (Fgfile_add_watch):
118063	Omit unnecessary CHECK_LIST, since Fmember does that for us.
118064	* src/lisp.h (lisp_h_CHECK_LIST_CONS, CHECK_LIST_CONS):
118065	Remove; no longer used.
118066	(CHECK_LIST_END): New inline function.
118067
1180682017-01-22  Tino Calancha  <tino.calancha@gmail.com>
118069
118070	Prevent to use tabulated-list--near-rows unbound
118071
118072	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
118073	Make sure 'tabulated-list--near-rows' is bound before use it (Bug#25506).
118074
1180752017-01-22  Juri Linkov  <juri@linkov.net>
118076
118077	* lisp/simple.el (region-bounds): New function.
118078
118079	(region-noncontiguous-p): Use it.
118080	https://lists.gnu.org/r/emacs-devel/2017-01/msg00044.html
118081
1180822017-01-21  Alan Mackenzie  <acm@muc.de>
118083
118084	Fix low-level handling of (big) C macros.
118085
118086	In particular, ensure that a comment detected by its syntax is not a CPP
118087	construct marked with generic comment delimiter syntax-table text
118088	properties.
118089
118090	* lisp/progmodes/cc-engine.el (c-beginning-of-macro, c-end-of-macro): Set
118091	c-macro-cache-syntactic to nil when the cached macro changes.
118092	(c-syntactic-end-of-macro, c-no-comment-end-of-macro)
118093	(c-state-semi-pp-to-literal, c-state-full-pp-to-literal)
118094	(c-state-pp-to-literal, c-parse-ps-state-to-cache)
118095	(c-state-cache-non-literal-place, c-literal-limits, c-literal-start)
118096	(c-determine-limit): When checking a parse syntax for a comment, check that
118097	we're not in a CPP construct marked by syntax-table generic comment delimiter
118098	text property.
118099	(c-state-pp-to-literal): Change from a defsubst to a defun.
118100
118101	* lisp/progmodes/cc-mode.el (c-neutralize-syntax-in-and-mark-CPP): Check a
118102	parse syntax as described above under cc-engine.el.
118103
1181042017-01-21  Vibhav Pant  <vibhavp@gmail.com>
118105
118106	* lisp/emacs-lisp/bytecomp.el: Remove unused debugging statements.
118107
1181082017-01-21  Noam Postavsky  <npostavs@gmail.com>
118109
118110	Don't wait for frame to become visible
118111
118112	* src/xterm.c (x_make_frame_visible): Remove code that waits for the
118113	frame to become visible.  We have to deal with invisible frames anyway,
118114	the loop could sometimes before the frame turned visible, and for some
118115	window managers (e.g., XMonad, i3wm) it caused Emacs to get stuck in a
118116	busy loop (Bug#24091).
118117
1181182017-01-21  Tino Calancha  <tino.calancha@gmail.com>
118119
118120	diff-hunk-kill independent of point inside headers
118121
118122	Make diff-apply-hunk and diff-hunk-kill independent of the point
118123	position in a diff header (Bug#17544).
118124	This change allows to apply hunks in order.  It also makes possible to
118125	press M-k repeatedly to kill hunks in the order they appear in the buffer.
118126	See discussion on #Bug25105.
118127	* lisp/vc/diff-mode.el (diff-file-junk-re):
118128	Move definition before it's used.
118129	(diff--at-diff-header-p): New predicate; return non-nil when point
118130	is inside a hunk header, a file header, or within a line
118131	matching diff-file-junk-re.
118132	(diff-beginning-of-hunk): Use it.
118133	Check if the point is inside a diff header, in the middle of a hunk,
118134	or before the first hunk.
118135	(diff-apply-hunk): Call diff-beginning-of-hunk with non-nil arg
118136	before apply the hunk.
118137	(diff-hunk-kill, diff-file-kill):
118138	Call diff-beginning-of-hunk with non-nil arg after kill the hunks.
118139	(diff-post-command-hook): Call diff-beginning-of-hunk with non-nil argument.
118140
1181412017-01-20  Eli Zaretskii  <eliz@gnu.org>
118142
118143	Improve documentation of hooks related to saving buffers
118144
118145	* lisp/files.el (write-file-functions, write-contents-functions)
118146	(before-save-hook, after-save-hook): Note that these are only used
118147	by save-buffer.
118148
118149	* doc/lispref/backups.texi (Auto-Saving):
118150	* doc/lispref/files.texi (Saving Buffers): Mention that
118151	save-related hooks are not run by auto-saving.  (Bug#25460)
118152
1181532017-01-20  Eli Zaretskii  <eliz@gnu.org>
118154
118155	Improve documentation of auto-save-visited-file-name
118156
118157	* doc/emacs/files.texi (Auto Save Files): Mention subtle
118158	differences between saving the buffer and auto-saving with
118159	auto-save-visited-file-name set non-nil.  (Bug#25478)
118160
1181612017-01-20  Noam Postavsky  <npostavs@gmail.com>
118162
118163	Fix free var FOO-mode-{syntax,abbrev}-table warnings
118164
118165	* lisp/emacs-lisp/derived.el (define-derived-mode): Unconditionally
118166	defvar the syntax and abbrev tables so that the compiler will know that
118167	they are dynamically bound variables (Bug#25446).
118168
1181692017-01-19  Vibhav Pant  <vibhavp@gmail.com>
118170
118171	* lisp/emacs-lisp/bytecomp.el: Fix errors with matching quoted forms
118172
118173	* lisp/emacs-lisp/bytecomp.el: (byte-compile-cond-jump-table-info)
118174	  eval obj2 to avoid quoted forms being stored as is.
118175
1181762017-01-19  Vibhav Pant  <vibhavp@gmail.com>
118177
118178	lisp/emacs-lisp/bytecomp.el: Use byte-switch only for quoted symbols
118179
1181802017-01-19  Vibhav Pant  <vibhavp@gmail.com>
118181
118182	* lisp/emacs-lisp/bytecomp.el: Add default-case for last cond clause.
118183
118184	* lisp/emacs-lisp/bytecomp.el: (byte-compile-cond-jump-table) Add
118185	default-case for last cond clause.
118186
1181872017-01-19  Philipp Stephani  <phst@google.com>
118188
118189	Check that variable lists are actually lists
118190
118191	'let' and 'let*' document that their first argument has to be a list,
118192	but don't check for that; instead, they allow (and silently ignore)
118193	other types.  Introduce an explicit type check.
118194
118195	* src/eval.c (Flet, FletX): Check that the variable list is indeed a
118196	list.
118197	* test/src/eval-tests.el: Add unit tests.
118198
1181992017-01-19  Vibhav Pant  <vibhavp@gmail.com>
118200
118201	Add type checking for Bswitch, when enabled at compile time.
118202
118203	* src/bytecode.c: (exec_byte_code) If BYTE_CODE_SAFE is enabled at
118204	  compile time, use CHECK_TYPE to verify that the jump table is a hash table.
118205
1182062017-01-19  Vibhav Pant  <vibhavp@gmail.com>
118207
118208	Use byte-switch for all symbols.
118209
118210	* lisp/emacs-lisp/bytecomp.el: (byte-compile-cond-valid-obj2-p) Return
118211	  t for all symbols (instead for just keywords)
118212
1182132017-01-19  Noam Postavsky  <npostavs@gmail.com>
118214
118215	Avoid inefficient regex in diff-refine-hunk (Bug#25410)
118216
118217	* lisp/vc/diff-mode.el (diff--forward-while-leading-char): New function.
118218	(diff-refine-hunk): Use it instead of trying to match multiple lines
118219	with a single lines.
118220
1182212017-01-18  Eli Zaretskii  <eliz@gnu.org>
118222
118223	Remove lock file when auto-saving into the visited file
118224
118225	* src/fileio.c (write_region): When auto-saving into the visited
118226	file, unlock the file whenever we mark the buffer unmodified.
118227	(Bug#25470)
118228
1182292017-01-18  Vibhav Pant  <vibhavp@gmail.com>
118230
118231	* src/bytecode.c: (exec_byte_code) Use hash_lookup for Bswitch
118232
118233	Fgethash type checks the provided table object, which is unnecessary
118234	for compiled bytecode.
118235
1182362017-01-18  Tom Tromey  <tom@tromey.com>
118237
118238	fix typo in mailcap-mime-extensions
118239
118240	* lisp/net/mailcap.el (mailcap-mime-extensions): Use "text/x-patch",
118241	not "test/x-patch".  (Bug#25472)
118242
1182432017-01-18  Lele Gaifax  <lele@metapensiero.it>  (tiny change)
118244
118245	Fix typos in flymake.el
118246
118247	* lisp/progmodes/flymake.el (flymake-check-patch-master-file-buffer):
118248	Spelling fixes in the doc string.
118249
1182502017-01-18  Eli Zaretskii  <eliz@gnu.org>
118251
118252	Fix a bug with signaling a thread that waits for condvar
118253
118254	* src/thread.c (lisp_mutex_lock_for_thread): New function,
118255	with all the guts of lisp_mutex_lock.
118256	(lisp_mutex_lock): Call lisp_mutex_lock_for_thread.
118257	(condition_wait_callback): Don't call post_acquire_global_lock
118258	before locking the mutex, as that could cause a signaled thread to
118259	exit prematurely, because the condvar's mutex is recorded to be
118260	not owned by any thread, and with-mutex wants to unlock it as part
118261	of unwinding the stack in response to the signal.
118262
1182632017-01-18  Eli Zaretskii  <eliz@gnu.org>
118264
118265	Rudimentary error handling for non-main threads
118266
118267	* src/thread.c (last_thread_error): New static variable.
118268	(syms_of_threads): Staticpro it.
118269	(record_thread_error, Fthread_last_error): New functions.
118270	(syms_of_threads): Defsubr Fthread_last_error.
118271
118272	* doc/lispref/threads.texi (Basic Thread Functions): Document
118273	thread-last-error.
118274
118275	* test/src/thread-tests.el (thread-errors, thread-signal-early)
118276	(threads-condvar-wait): Test the values returned by
118277	thread-last-error.
118278
1182792017-01-17  Tom Tromey  <tom@tromey.com>
118280
118281	Add info-lookup help for gdb-script-mode
118282
118283	Bug#25464:
118284	* lisp/info-look.el (info-lookup-guess-gdb-script-symbol): New
118285	function.
118286	Add help for gdb-script-mode.
118287
1182882017-01-17  Tom Tromey  <tom@tromey.com>
118289
118290	Treat ":root" as a css-selector
118291
118292	* lisp/textmodes/css-mode.el (css--font-lock-keywords): Recognize bare
118293	":root" as selector.
118294
1182952017-01-17  Tom Tromey  <tom@tromey.com>
118296
118297	Fix JS regexp literal syntax propertization in expressions
118298
118299	Bug#25465:
118300	* lisp/progmodes/js.el (js-syntax-propertize): Recognize a regexp
118301	literal after "!", "&", and "|".
118302	test/lisp/progmodes/js-tests.el (js-mode-regexp-syntax): New test.
118303
1183042017-01-17  Glenn Morris  <rgm@gnu.org>
118305
118306	More NEWS checking for admin.el's set-version
118307
118308	* admin/admin.el (set-version): Warn if temporary NEWS markup
118309	still present in release candidates.
118310
1183112017-01-17  Mark Oteiza  <mvoteiza@udel.edu>
118312
118313	Mark unused arguments and remove unused variables
118314
118315	* lisp/play/dunnet.el (dun-mode, dun-die, dun-inven, dun-try-take):
118316	(dun-dig, dun-type, dun-n, dun-s, dun-e, dun-w, dun-ne, dun-se):
118317	(dun-nw, dun-sw, dun-up, dun-down, dun-in, dun-out, dun-long):
118318	(dun-swim, dun-score, dun-flush, dun-piss, dun-sleep, dun-drive):
118319	(dun-superb, dun-power, dun-unix-parse, dun-bin, dun-fascii):
118320	(dun-ftpquit, dun-ftphelp, dun-uexit, dun-pwd, dun-dos-parse):
118321	(dun-dos-invd, dun-dos-spawn, dun-dos-exit, dun-dos-nil):
118322	(dungeon-nil): Mark arguments as unused.
118323	(dun-drop, dun-objnum-from-args, dun-get-path, dun-ftp):
118324	(dun-restore): Remove unused variable.
118325
1183262017-01-17  Michael Albinus  <michael.albinus@gmx.de>
118327
118328	Fix auto-save-file-name problem in Tramp on MS Windows
118329
118330	* lisp/files.el (make-auto-save-file-name): Use `file-remote-p'
118331	rather than an ange-ftp regexp.
118332
118333	* lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
118334	Fix a problem when running on MS Windows.
118335
118336	* test/lisp/net/tramp-tests.el (tramp-test31-make-auto-save-file-name):
118337	Adapt test.
118338
1183392017-01-17  Michael Albinus  <michael.albinus@gmx.de>
118340
118341	Fix auto-save-file-name problem in Tramp on MS Windows. Do not merge
118342
118343	* lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
118344	Fix a problem when running on MS Windows.
118345
1183462017-01-17  Paul Eggert  <eggert@cs.ucla.edu>
118347
118348	Merge from origin/emacs-25
118349
118350	42614fa Update remaining copyright years with admin.el M-x set-copyright
118351	f17a006 * lisp/ffap.el (ffap-lax-url): Bump :version after recent cha...
118352
1183532017-01-17  Mark Oteiza  <mvoteiza@udel.edu>
118354
118355	Nix some uses of eval
118356
118357	* lisp/play/dunnet.el: Fix triple negative.
118358	(dun-doverb): Use funcall instead of eval.
118359	(dun-echo): Just call dun-mprinc.
118360	(dun-save-val): Just bind value without eval.
118361
1183622017-01-17  Tom Tromey  <tom@tromey.com>
118363
118364	Fix comment in css-mode.el
118365
118366	* lisp/textmodes/css-mode.el: Remove obsolete comment.
118367
1183682017-01-16  Vibhav Pant  <vibhavp@gmail.com>
118369
118370	update branch
118371
1183722017-01-16  Ian Dunn  <dunni@gnu.org>  (tiny change)
118373
118374	* lisp/net/eww.el (eww-tag-meta): Handle single quoted URLs (Bug#25445).
118375
1183762017-01-15  Noam Postavsky  <npostavs@gmail.com>
118377
118378	Improve ffap-gopher-at-point handling of long lines
118379
118380	* lisp/ffap.el (ffap-gopher-regexp): Only match the KEY part.  Note
118381	setting to nil is now supported.
118382	(ffap--gopher-var-on-line): New function.
118383	(ffap-gopher-at-point): Use it instead of the old ffap-gopher-regexp
118384	which could overflow the regexp stack on long lines (Bug#25391).  Use
118385	`let-alist' instead of calling `set' on local variables.
118386	* test/lisp/ffap-tests.el (ffap-gopher-at-point): New test.
118387
1183882017-01-15  Vibhav Pant  <vibhavp@gmail.com>
118389
118390	* lisp/emacs-lisp/byte-opt.el: Optimize how tags are checked for use.
118391
118392	* lisp/emacs-lisp/byte-opt.el: (byte-optimize-lapcode): Return nil instantly on
118393	  finding the tag in a jump table.
118394
1183952017-01-15  Vibhav Pant  <vibhavp@gmail.com>
118396
118397	* lisp/emacs-lisp/bytecomp.el: Add documentation, remove code duplication
118398
1183992017-01-14  Vibhav Pant  <vibhavp@gmail.com>
118400
118401	Add new 'switch' byte-code.
118402
118403	'switch' takes two arguments from the stack: the variable to test, and
118404	a jump table (implemented as a hash-table with the appropriate :test
118405	function). By looking up the value of the variable in the hash table,
118406	the interpreter can jump to the label pointed to by the value, if any.
118407	This implementation can only be used for `cond' forms of the type
118408	`(cond ((test x 'foo) 'bar) ...)`, such that the function `test` and
118409	variable `x` is same for all clauses.
118410
118411	* lisp/emacs-lisp/bytecomp.el:
118412
118413	  * Add (byte-compile-cond-valid-obj2-p), (byte-compile-cond-vars),
118414	    (byte-compile-cond-jump-table-info), (byte-compile-jump-table-add-tag),
118415	    (byte-compile-cond-jump-table), byte-compile-jump-tables.
118416
118417	  * Add defcustom `byte-compile-cond-use-jump-table'.
118418
118419	  * (byte-compile-cond): Use them.
118420
118421	  * (byte-compile-lapcode): Patch tags present in jump tables, if any.
118422
118423	* lisp/emacs-lisp//byte-opt.el: (byte-optimize-lapcode): Add checks to
118424	  some peephole optimizations to prevent them from messing up any code
118425	  involving `byte-switch`.
118426
118427	* src/bytecode.c: (exec_byte_code): Add bytecode Bswitch.
118428
1184292017-01-14  Alan Third  <alan@idiocy.org>
118430
118431	Fix NS main thread check (bug#25265)
118432
118433	* src/nsterm.m (ns_read_socket, ns_select): Replace mainThread with
118434	isMainThread.
118435
1184362017-01-14  Stefan Monnier  <monnier@iro.umontreal.ca>
118437
118438	* lisp/progmodes/sql.el (sql-product-alist): Doc tweak
118439
118440	`:sqli-comint-func' does not have to be a symbol.
118441
1184422017-01-14  Alan Mackenzie  <acm@muc.de>
118443
118444	Correct c-parse-state-get-strategy for moving HERE backward into a macro.
118445
118446	* lisp/progmodes/cc-engine.el (c-parse-state-get-strategy): When HERE is below
118447	its previous value, we chose strategy 'forward, and the new HERE is in a
118448	(different) macro, ensure the returned START-POINT is not above the start of
118449	the macro.
118450
1184512017-01-14  Eli Zaretskii  <eliz@gnu.org>
118452
118453	Include "Date:" in mail messages filed by 'sendmail-send-it'
118454
118455	* lisp/mail/sendmail.el (mail-do-fcc): Insert a 'Date:' header
118456	into the filed message.  In the outgoing message, sendmail will
118457	add the date, but the composed message body doesn't have it.
118458	(Bug#25436)
118459
1184602017-01-14  Eli Zaretskii  <eliz@gnu.org>
118461
118462	* lisp/progmodes/sql.el (sql-product-alist): Doc fix.  (Bug#25440)
118463
1184642017-01-14  Dmitry Gutov  <dgutov@yandex.ru>
118465
118466	Remove leftover references to log-view-message-face
118467
118468	* lisp/vc/vc-bzr.el (vc-bzr-log-view-mode): Use log-view-message.
118469
118470	* lisp/vc/vc-git.el (vc-git-root-log-format): Same.
118471
118472	* lisp/vc/vc-hg.el (vc-hg-root-log-format): Same.
118473
1184742017-01-13  Phillip Lord  <phillip.lord@russet.org.uk>
118475
118476	Record autoloads till emacs dump
118477
118478	* admin/ldefs-clean.el (ldefs-clean-up): Record autoloads till emacs dump
118479	* lisp/ldefs-boot-auto.el (batch-byte-compile): Update
118480
118481	Previously, autoloads were collected till loaddefs.el was generated as
118482	part of the build. However, bootstrap-emacs does not load
118483	loaddefs (rather it is dumped), hence we must record autoloads until the
118484	full emacs binary is dumped.
118485
1184862017-01-13  Tom Tromey  <tom@tromey.com>
118487
118488	Add chained indentation to js-mode
118489
118490	Bug#20896
118491	* lisp/progmodes/js.el (js-chain-indent): New variable.
118492	(js--skip-term-backward, js--skip-terms-backward)
118493	(js--chained-expression-p): New functions.
118494	(js--proper-indentation): Call js--chained-expression-p.
118495	* test/manual/indent/js-chain.js: New file.
118496	* test/manual/indent/js.js: Add (non-)chained indentation test.
118497
1184982017-01-13  Tom Tromey  <tom@tromey.com>
118499
118500	Fix js-mode indentation bug
118501
118502	Bug#15582:
118503	* lisp/progmodes/js.el (js--find-newline-backward): New function.
118504	(js--continued-expression-p): Use it.
118505	* test/manual/indent/js.js: Add new test.
118506
1185072017-01-13  Tom Tromey  <tom@tromey.com>
118508
118509	Fix definition of EMACS in test/manual/indent/Makefile
118510
118511	* test/manual/indent/Makefile (EMACS): Add one more "..".
118512
1185132017-01-13  Tom Tromey  <tom@tromey.com>
118514
118515	Add .jsx to auto-mode-alist
118516
118517	Bug#25389:
118518	* lisp/files.el (auto-mode-alist): Add entry for .jsx.
118519
1185202017-01-13  Tom Tromey  <tom@tromey.com>
118521
118522	Fix two js-mode filling bugs
118523
118524	Bug#19399 and Bug#22431:
118525	* lisp/progmodes/js.el (js-mode): Set comment-line-break-function and
118526	c-block-comment-start-regexp.
118527	* test/lisp/progmodes/js-tests.el: New file.
118528
1185292017-01-13  Eli Zaretskii  <eliz@gnu.org>
118530
118531	Fix last change
118532
118533	* test/src/thread-tests.el (threads-condvar-wait): Revert
118534	previous change.  Make sure no other threads from previous
118535	tests are running, to avoid interfering with our thread counts.
118536
1185372017-01-13  Eli Zaretskii  <eliz@gnu.org>
118538
118539	Fix the new condvar test
118540
118541	* test/src/thread-tests.el (threads-condvar-wait): Enlarge the
118542	time we sleep in the main thread to let the other thread
118543	process notifications.
118544
1185452017-01-13  Eli Zaretskii  <eliz@gnu.org>
118546
118547	Minor improvements in the new condvar test
118548
118549	* test/src/thread-tests.el (threads-test-condvar-wait): Use
118550	with-mutex instead of emulating it inline.
118551	(threads-condvar-wait): Improve comments.  Check that the new
118552	thread is alive before waiting for it to become blocked on the
118553	conditional variable.
118554
1185552017-01-13  Eli Zaretskii  <eliz@gnu.org>
118556
118557	Fix a bug in waiting for condition variable
118558
118559	* src/thread.c (lisp_mutex_lock, lisp_mutex_unlock)
118560	(lisp_mutex_unlock_for_wait, condition_wait_callback)
118561	(condition_notify_callback): Improve commentary.
118562	(condition_wait_callback): Call post_acquire_global_lock before
118563	attempting to lock the mutex, to make sure the lock's owner is
118564	recorded correctly.
118565
118566	* test/src/thread-tests.el (threads-condvar-wait): New test.
118567
1185682017-01-13  Eli Zaretskii  <eliz@gnu.org>
118569
118570	Improve documentation of dabbrevs
118571
118572	* doc/emacs/abbrevs.texi (Dynamic Abbrevs): Add a cross reference
118573	to "Dabbrev Customization".
118574	(Dabbrev Customization): More details about the default value of
118575	dabbrev-abbrev-char-regexp and use cases when it might not be good
118576	enough.  (Bug#25432)
118577
1185782017-01-13  Katsumi Yamaoka  <yamaoka@jpl.org>
118579
118580	Fix last change of dd80ee6 (was: mm-uu.el: Don't dissect patch part)
118581
1185822017-01-13  Katsumi Yamaoka  <yamaoka@jpl.org>
118583
118584	mm-uu.el: Don't dissect patch part
118585
118586	This fixes a bug that the patch part is broken in the article
118587	<87inpjzhpb.fsf@users.sourceforge.net> in the bug-gnu-emacs list.
118588
118589	* lisp/gnus/mm-uu.el (mm-uu-dissect-text-parts):
118590	Don't dissect patch part.
118591
1185922017-01-13  Dmitry Lazurkin  <dilaz03@gmail.com>
118593
118594	Fix extracting async def type and name in python mode imenu
118595
118596	* lisp/progmodes/python.el (python-imenu--get-defun-type-name):
118597	New function.
118598	(python-imenu--build-tree): Use python-imenu--get-defun-type-name for
118599	extract async or simple def type and name at current
118600	position (Bug#24820).
118601	* test/lisp/progmodes/python-tests.el (python-imenu-create-index-1):
118602	(python-imenu-create-flat-index-1): Add async def's.
118603
1186042017-01-13  Katsumi Yamaoka  <yamaoka@jpl.org>
118605
118606	Remove garbage from Content-Transfer-Encoding value (bug#25420)
118607
118608	* lisp/mail/ietf-drums.el (ietf-drums-strip-cte): New function.
118609	(ietf-drums-remove-garbage): New function.
118610	(ietf-drums-remove-whitespace): Remove CR as well.
118611
118612	* lisp/mail/mail-parse.el (mail-header-strip-cte):
118613	Alias to ietf-drums-strip-cte.
118614
118615	* lisp/gnus/gnus-art.el (article-decode-charset):
118616	* lisp/gnus/gnus-sum.el (gnus-summary-enter-digest-group):
118617	* lisp/gnus/mm-decode.el (mm-dissect-buffer):
118618	* lisp/gnus/nndoc.el (nndoc-decode-content-transfer-encoding)
118619	(nndoc-rfc822-forward-generate-article):
118620	* lisp/mh-e/mh-mime.el (mh-decode-message-body):
118621	Replace mail-header-strip with mail-header-strip-cte.
118622
1186232017-01-13  Paul Eggert  <eggert@cs.ucla.edu>
118624
118625	Restore behavior of ‘./autogen.sh autoconf git’
118626
118627	* autogen.sh: Do both autoconf and git setup when invoked
118628	as ‘./autogen.sh autoconf git’.  Avoid unnecessary newline in chatter.
118629	Mention new --no-check option in usage message.  (Bug#25359)
118630
1186312017-01-12  Glenn Morris  <rgm@gnu.org>
118632
118633	* autogen.sh: Simplify argument parsing.
118634
1186352017-01-12  Noam Postavsky  <npostavs@gmail.com>
118636
118637	Clarify that easy-menu-add is a nop (Bug#25382)
118638
118639	* lisp/emacs-lisp/easymenu.el (easy-menu-add): Make it into an alias of
118640	`ignore', like `easy-menu-remove'.
118641
1186422017-01-12  Glenn Morris  <rgm@gnu.org>
118643
118644	* lisp/textmodes/rst.el (rst-package-emacs-version-alist): Fix entry.
118645
1186462017-01-11  Glenn Morris  <rgm@gnu.org>
118647
118648	* autogen.sh: Add --no-check option.  (Bug#25359)
118649
1186502017-01-11  Glenn Morris  <rgm@gnu.org>
118651
118652	Convert some network test failures to skipping
118653
118654	These tests intermittently fail on hydra.nixos.org for unclear
118655	reasons related to starting the external process.
118656	This isn't an Emacs issue, and the failures cause noise on
118657	the emacs-buildstatus list.  (Bug#24503)
118658	* test/lisp/net/network-stream-tests.el (echo-server-nowait)
118659	(connect-to-tls-ipv4-nowait): Skip rather than fail if the
118660	external process fails to start properly.
118661
1186622017-01-11  Eli Zaretskii  <eliz@gnu.org>
118663
118664	Revert "Add DNS keywords and remove duplications"
118665
118666	This reverts commit 1cb9aa5b14867983d0013a61709b4d0af18364ff.
118667
1186682017-01-11  Alexander Kuleshov  <kuleshovmail@gmail.com>
118669
118670	Add DNS keywords and remove duplications
118671
118672	* lisp/textmodes/dns-mode.el (dns-mode-types): Add two TLSA and
118673	NSEC" DNS related keywords and remove duplication of "NSAP".
118674
1186752017-01-11  Alexander Kuleshov  <kuleshovmail@gmail.com>
118676
118677	Add DNS keywords and remove duplications
118678
118679	* lisp/textmodes/dns-mode.el (dns-mode-types): Add two TLSA and
118680	NSEC" DNS related keywords and remove duplication of "NSAP".
118681
1186822017-01-11  Alan Mackenzie  <acm@muc.de>
118683
118684	Handle syntactic WS cache properties more accurately at buffer changes.
118685
118686	This fixes bug #25362.
118687
118688	* lisp/progmodes/cc-engine.el (c-sws-lit-type, c-sws-lit-limits)
118689	(c-invalidate-sws-region-before, c-invalidate-sws-region-after-del)
118690	(c-invalidate-sws-region-after-ins): New variables and functions.
118691	(c-invalidate-sws-region-after): Change from a defsubst to a defun.
118692	Also pass
118693	it the standard OLD-LEN argument.  Call both
118694	c-invalidate-sws-region-after-{ins,del} to check for "dangerous" WS
118695	cache
118696	properties.
118697
118698	* lisp/progmodes/cc-langs.el (c-block-comment-ender-regexp): New language
118699	variable.
118700
118701	* lisp/progmodes/cc-mode.el (c-before-change): Call
118702	c-invalidate-sws-region-before.
118703	(c-after-change): Pass old-len to c-invalidate-sws-region-after.
118704
1187052017-01-11  Michael Albinus  <michael.albinus@gmx.de>
118706
118707	Support stat 8.26 in Tramp
118708
118709	* lisp/net/tramp-sh.el (tramp-get-remote-stat): Use QUOTING_STYLE
118710	environment variable of newer coreutils.  (Bug#23422)
118711
1187122017-01-10  Eli Zaretskii  <eliz@gnu.org>
118713
118714	Improve documentation of coding-systems
118715
118716	* doc/lispref/nonascii.texi (Coding System Basics): Mention
118717	'prefer-utf-8'.  Index it and 'undecided'.
118718	(Encoding and I/O): Fix a typo.
118719	(User-Chosen Coding Systems): Improve the documentation of
118720	ACCEPT-DEFAULT-P argument to select-safe-coding-system.  Document
118721	select-safe-coding-system-function.
118722	(Specifying Coding Systems): Document coding-system-require-warning.
118723
1187242017-01-10  Paul Eggert  <eggert@cs.ucla.edu>
118725
118726	Merge from gnulib
118727
118728	This incorporates:
118729	2017-01-09 maint: time stamp -> timestamp
118730	2017-01-07 stdioext: Port to Minix 3.2 and newer
118731	2017-01-06 glob, intprops, xalloc: work around Clang bug
118732	2017-01-02 revert copyright-year change to synced files
118733	* doc/misc/texinfo.tex, lib/fpending.c, lib/intprops.h, lib/mktime.c:
118734	* lib/stat-time.h, lib/stdio-impl.h, lib/time.in.h, lib/timespec.h:
118735	* lib/utimens.c, lib/xalloc-oversized.h:
118736	Copy from gnulib.
118737
1187382017-01-10  Eli Zaretskii  <eliz@gnu.org>
118739
118740	Don't use unsafe encoding for the bookmark file
118741
118742	* lisp/bookmark.el (bookmark-write-file): Handle the case when the
118743	explicitly specified encoding of the bookmark file cannot encode the
118744	additional bookmarks just added.  (Bug#25365)
118745
1187462017-01-09  Eli Zaretskii  <eliz@gnu.org>
118747
118748	Improve definition of 'variable-pitch' face on MS-Windows
118749
118750	* lisp/faces.el (variable-pitch): Don't specify too many
118751	attributes of the font, otherwise faces that request different
118752	weight or slant or size will not get them.
118753
1187542017-01-09  Eli Zaretskii  <eliz@gnu.org>
118755
118756	Fix an error message in python.el
118757
118758	* lisp/progmodes/python.el (python-shell-get-process-or-error):
118759	Don't repeat the same key binding twice.  (Bug#25405)
118760
1187612017-01-09  Phillip Lord  <phillip.lord@russet.org.uk>
118762
118763	Remove unused ldefs-boot.el
118764
118765	 * lisp/ldefs-boot.el: Remove
118766
118767	This file was not removed as reported in c27b645956a11, but accidentally
118768	left.
118769
1187702017-01-09  Noam Postavsky  <npostavs@gmail.com>
118771	    Eli Zaretskii  <eliz@gnu.org>
118772
118773	Use expanded stack during regex matches
118774
118775	While the stack is increased in main(), to allow the regex stack
118776	allocation to use alloca we also need to modify regex.c to actually take
118777	advantage of the increased stack, and not limit stack allocations to
118778	SAFE_ALLOCA bytes.
118779
118780	* src/regex.c (MATCH_MAY_ALLOCATE): Remove obsolete comment about
118781	allocations in signal handlers which no longer happens and correct
118782	description about when and why MATCH_MAY_ALLOCATE should be defined.
118783	(emacs_re_safe_alloca): New variable.
118784	(REGEX_USE_SAFE_ALLOCA): Use it as the limit of stack allocation instead
118785	of MAX_ALLOCA.
118786	(emacs_re_max_failures): Rename from `re_max_failures' to avoid
118787	confusion with glibc's `re_max_failures'.
118788	* src/emacs.c (main): Increase the amount of fixed 'extra' bytes we add
118789	to the stack.  Instead of changing emacs_re_max_failures based on the
118790	new stack size, just change emacs_re_safe_alloca; emacs_re_max_failures
118791	remains constant regardless, since if we run out stack space SAFE_ALLOCA
118792	will fall back to heap allocation.
118793
1187942017-01-09  Noam Postavsky  <npostavs@gmail.com>
118795
118796	Fix computation of regex stack limit
118797
118798	The regex stack limit was being computed as the number of stack entries,
118799	whereas it was being compared with the current size as measured in
118800	bytes.  This could cause indefinite looping when nearing the stack limit
118801	if re_max_failures happened not to be a multiple of sizeof
118802	fail_stack_elt_t (Bug #24751).
118803
118804	* src/regex.c (GROW_FAIL_STACK): Compute both current stack size and
118805	limit as numbers of stack entries.
118806
1188072017-01-08  Alan Third  <alan@idiocy.org>
118808
118809	Remove apploopnr
118810
118811	* src/nsterm.m (ns_select, ns_read_socket): Remove apploopnr and only
118812	allow app loop to run in main thread.
118813
1188142017-01-08  Glenn Morris  <rgm@gnu.org>
118815
118816	Remove unused configure output variable
118817
118818	* configure.ac (GNULIB_MK):
118819	* Makefile.in (gnulib_mk): Remove, no longer used.
118820
1188212017-01-08  Glenn Morris  <rgm@gnu.org>
118822
118823	Fix automake dependencies
118824
118825	* Makefile.in (AUTOMAKE_INPUTS): Add nt/gnulib.mk.  (Bug#25372)
118826	All platforms need this file to exist.
118827
1188282017-01-08  Paul Eggert  <eggert@cs.ucla.edu>
118829
118830	Remove unnecessary blankp code
118831
118832	* src/character.c (blankp): Remove redundant code that slows Emacs
118833	down a bit.  The caller already does the test.
118834
1188352017-01-08  Stefan Merten  <stefan@merten-home.de>
118836
118837	* lisp/textmodes/rst.el: Fix rst-forward-indented-block.
118838
118839	* lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
118840	(rst-svn-timestamp)
118841	(rst-official-version, rst-official-cvs-rev)
118842	(rst-package-emacs-version-alist): Maintain version numbers.
118843	(rst-forward-indented-block): Fix. Start searching at next
118844	line again. Fixes fontification of comments continuing on the
118845	same line they started.
118846
1188472017-01-08  Paul Eggert  <eggert@cs.ucla.edu>
118848
118849	Remove @SET_MAKE@ from manually-maintained files
118850
118851	Emacs now assumes GNU Make, so @SET_MAKE@ is no longer needed.
118852	* Makefile.in, lwlib/Makefile.in, nextstep/Makefile.in:
118853	* src/Makefile.in: Remove @SET_MAKE@.
118854
1188552017-01-07  Michael Albinus  <michael.albinus@gmx.de>
118856
118857	Fix a problem with `start-file-process' in Tramp
118858
118859	* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
118860	`start-file-process' shall work when `non-essential' is
118861	non-nil, but there is already an established connection.
118862	<https://github.com/company-mode/company-mode/issues/462>
118863
1188642017-01-07  Rolf Ade  <rolf@pointsman.de>  (tiny change)
118865
118866	Fix selecting SQLite database files with sql-mode (Bug#23566)
118867
118868	* lisp/progmodes/sql.el (sql-sqlite-login-params): Allow any name as
118869	SQLite database file name, by default.
118870	(sql-get-login-ext): Fixed read-file-name arguments to provide
118871	path completion even if a database name pattern is customized and to
118872	allow creation of new SQLite database files.
118873
1188742017-01-07  Noam Postavsky  <npostavs@gmail.com>
118875
118876	Clarify major mode switching
118877
118878	* doc/emacs/modes.texi (Major Modes):
118879	* doc/lispref/modes.texi (Modes, Major Modes): Explictly say that each
118880	buffer has exactly one major mode and can't be "turned off", only
118881	switched away from (Bug#25357).
118882
1188832017-01-07  Noam Postavsky  <npostavs@gmail.com>
118884
118885	Add helpful comment to compile-command's docstring
118886
118887	* lisp/progmodes/compile.el (compile-command): Mention trailing space in
118888	docstring (Bug#25337).
118889
1188902017-01-07  Eli Zaretskii  <eliz@gnu.org>
118891
118892	Specify encoding of the bookmark file
118893
118894	* lisp/bookmark.el (bookmark-insert-file-format-version-stamp):
118895	Accept an argument CODING and include a 'coding:' cookie in the
118896	bookmark file preamble.
118897	(bookmark-upgrade-file-format-from-0): Call
118898	'bookmark-insert-file-format-version-stamp' with the file buffer's
118899	encoding, as detected when it was read.
118900	(bookmark-file-coding-system): New variable.
118901	(bookmark-load): Set bookmark-file-coding-system to the encoding
118902	of the loaded file.
118903	(bookmark-write-file): Bind coding-system-for-write to either the
118904	user setting via "C-x RET c" or to the existing file encoding,
118905	defaulting to 'utf-8-emacs'.  Update the value of
118906	bookmark-file-coding-system.  (Bug#25365)
118907
1189082017-01-07  Eli Zaretskii  <eliz@gnu.org>
118909
118910	Avoid infloop in 'ispell-region'
118911
118912	* lisp/textmodes/ispell.el (ispell-begin-skip-region-regexp):
118913	Protect against 'ispell-skip-region-alist' being nil.  Reported by
118914	Ernest Adrogué <nfdisco@gmail.com>, see
118915	https://lists.gnu.org/r/help-gnu-emacs/2017-01/msg00007.html.
118916
1189172017-01-06  Philipp Stephani  <phst@google.com>
118918
118919	Add support for Unicode whitespace in [:blank:]
118920
118921	See Bug#25366.
118922
118923	* src/character.c (blankp): New function for checking Unicode
118924	horizontal whitespace.
118925	* src/regex.c (ISBLANK): Use 'blankp' for non-ASCII horizontal
118926	whitespace.
118927	(BIT_BLANK): New bit for range table.
118928	(re_wctype_to_bit, execute_charset): Use it.
118929	* test/lisp/subr-tests.el (subr-tests--string-match-p--blank): Add
118930	unit test for [:blank:] character class.
118931	* test/src/regex-tests.el (test): Adapt unit test.
118932	* doc/lispref/searching.texi (Char Classes): Document new Unicode
118933	behavior for [:blank:].
118934
1189352017-01-06  Eli Zaretskii  <eliz@gnu.org>
118936
118937	Fix ':version' of 'select-enable-primary'
118938
118939	* lisp/select.el (select-enable-primary): Fix a typo in
118940	':version'.  (Bug#25375)
118941
1189422017-01-06  Stefan Monnier  <monnier@iro.umontreal.ca>
118943
118944	(feedmail-deduce-address-list): Avoid add-to-list on local variables.
118945
118946	Author:
118947
118948	* lisp/mail/feedmail.el (feedmail-deduce-address-list):
118949	Avoid add-to-list on local variables.
118950
1189512017-01-06  Noam Postavsky  <npostavs@gmail.com>
118952
118953	Fix isearch handling of C-u C-u...
118954
118955	* lisp/isearch.el: Add `isearch-scroll' property to
118956	universal-argument-more so that `isearch-allow-scroll' will apply to it
118957	as well.
118958	(isearch-pre-command-hook): Let `isearch-allow-prefix' apply to
118959	`universal-argument-more' as well (Bug#25302).
118960
1189612017-01-05  Paul Eggert  <eggert@cs.ucla.edu>
118962
118963	Shorten autogen.sh script
118964
118965	* autogen.sh: Use a shorter script, as some 'sed' implementations
118966	mishandle long scripts.
118967
1189682017-01-05  Eli Zaretskii  <eliz@gnu.org>
118969
118970	Yet another fix for autogen.sh
118971
118972	* autogen.sh (gnulib.mk): Make the Sed script more portable.
118973
118974	* nt/Makefile.in (${srcdir}/gnulib.mk): Adapt the Sed command to
118975	the changes in autogen.sh.
118976
1189772017-01-05  Eli Zaretskii  <eliz@gnu.org>
118978
118979	* autogen.sh (gnulib.mk): Another attempt to fix macOS build.
118980
1189812017-01-05  Eli Zaretskii  <eliz@gnu.org>
118982
118983	Fix dependencies of nt/gnulib.mk
118984
118985	* Makefile.in ($(srcdir)/nt/gnulib.mk): Avoid circular dependency
118986	of nt/gnulib.mk on lib/Makefile.in.
118987
1189882017-01-05  Eli Zaretskii  <eliz@gnu.org>
118989
118990	Unbreak macOS build
118991
118992	* autogen.sh (gnulib.mk): Don't use non-portable extensions of GNU
118993	Sed.
118994
1189952017-01-05  Johan Claesson  <johanclaesson@bredband.net>  (tiny change)
118996
118997	Fix term.el handling of ^Z-sequences spanning chunks
118998
118999	Bash will after each command send ?\032 and the current directory "/tmp"
119000	to inform term.el.  Bash output is buffered in 4096 bytes chunks.  If a
119001	command outputs roughly 4096 bytes then the end of the first chunk will
119002	be "/tm" (Bug#13350).
119003
119004	* lisp/term.el (term-emulate-terminal): Change the regexp to find the
119005	end of the ?\032 sequence to use \n instead of $, the latter can match
119006	end of string as well.
119007
1190082017-01-05  Mark Oteiza  <mvoteiza@udel.edu>
119009
119010	Turn on lexical-binding in mb-depth.el
119011
119012	* lisp/mb-depth.el: Turn on lexical-binding.
119013	(minibuffer-depth-setup): Bind things used multiple times.
119014
1190152017-01-04  Alan Third  <alan@idiocy.org>
119016
119017	Revert "Rework NS event handling (bug#25265)"
119018
119019	This reverts commit e0e5b0f4a4ce1d19ee0240c514dedd873d4165dc.
119020
1190212017-01-04  Glenn Morris  <rgm@gnu.org>
119022
119023	Update remaining copyright years with admin.el M-x set-copyright
119024
119025	* etc/refcards/ru-refcard.tex (cyear): Set to 2017.
119026
1190272017-01-04  Glenn Morris  <rgm@gnu.org>
119028
119029	* lisp/ffap.el (ffap-lax-url): Bump :version after recent change.
119030
1190312017-01-04  Paul Eggert  <eggert@cs.ucla.edu>
119032
119033	Port recent autogen.sh changes to Darwin
119034
119035	Problem reported by Sam Steingold (Bug#25347).
119036	* autogen.sh: Don't assume 'sed -f-' reads a script from stdin, as
119037	POSIX does not require it and it does not work on Darwin.
119038
1190392017-01-04  Stefan Monnier  <monnier@iro.umontreal.ca>
119040
119041	Avoid add-to-list on local variables
119042
119043	* lisp/gnus/nnir.el: Use lexical-binding and cl-lib.
119044	(nnir-retrieve-headers): Use pcase.
119045	(nnir-search-thread): Avoid add-to-list on local variables.
119046
119047	* lisp/gnus/smime.el: Use lexical-binding and cl-lib.
119048	(smime-verify-region): Avoid add-to-list on local variables.
119049
119050	* lisp/mail/undigest.el: Use lexical-binding and cl-lib.
119051	(rmail-digest-parse-mime, rmail-digest-rfc1153)
119052	(rmail-digest-parse-rfc934): Avoid add-to-list on local variable.
119053
119054	* lisp/net/ldap.el (ldap-search): Move init into declaration.
119055
119056	* lisp/net/newst-backend.el (newsticker--cache-add):
119057	Avoid add-to-list on local variables; Simplify code with `assq'.
119058
119059	* lisp/net/zeroconf.el: Use lexical-binding and cl-lib.
119060	(dbus-debug): Remove declaration, unused.
119061	(zeroconf-service-add-hook, zeroconf-service-remove-hook)
119062	(zeroconf-service-browser-handler, zeroconf-publish-service):
119063	Avoid add-to-list and *-hook on local variables.
119064
119065	* lisp/org/org-archive.el (org-all-archive-files):
119066	* lisp/org/org-agenda.el (org-agenda-get-restriction-and-command):
119067	Avoid add-to-list on local variables.
119068
119069	* lisp/org/ox-publish.el (org-publish--run-functions): New function.
119070	(org-publish-projects): Use it to avoid run-hooks on a local variable.
119071	(org-publish-cache-file-needs-publishing): Avoid add-to-list on
119072	local variables.
119073
119074	* lisp/progmodes/ada-prj.el: Use setq instead of (set '...).
119075	(ada-prj-load-from-file): Avoid add-to-list on local variables.
119076
119077	* lisp/progmodes/ada-xref.el (ada-initialize-runtime-library): Simplify.
119078	(ada-gnat-parse-gpr, ada-parse-prj-file-1)
119079	(ada-xref-find-in-modified-ali): Avoid add-to-list on local variables.
119080
119081	* lisp/progmodes/idlw-shell.el (idlwave-shell-update-bp-overlays):
119082	Avoid add-to-list on local variables.
119083
1190842017-01-04  Mark Oteiza  <mvoteiza@udel.edu>
119085
119086	Turn on lexical-binding in md4.el
119087
119088	* lisp/md4.el: Turn on lexical-binding.
119089	* test/lisp/md4-tests.el: New file.
119090
1190912017-01-03  Stefan Merten  <stefan@merten-home.de>
119092
119093	Lots of refactorings and a few minor improvements.
119094
119095	User visible improvements and changes:
119096	* Improve and debug `rst-forward-section` and `rst-backward-section`.
119097	* Auto-enumeration may be used with all styles for list insertion.
119098	* Improve and debug `rst-toc-insert`.
119099	* Adapt change in Emacs to use customization group `text` instead of `wp`.
119100	* Bind `n` and `p` in `rst-toc-mode`.
119101	* `z` in `toc-mode` returns to the previous window configuration.
119102	* Require Emacs version >= 24.1.
119103
119104	Lots of refactorings including:
119105	* Silence byte compiler.
119106	* Use lexical binding.
119107	* Use `cl-lib`.
119108	* Add tests and raise test coverage.
119109
1191102017-01-03  Stefan Monnier  <monnier@iro.umontreal.ca>
119111
119112	(cl-defstruct): Improve error message for slots w/o value (bug#25312)
119113
119114	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Don't signal an error but
119115	emit a warning for those coders who forgot to put a default value in
119116	their slot.
119117
1191182017-01-03  Philipp Stephani  <p.stephani2@gmail.com>
119119
119120	Small patch for ffap.el
119121
119122	* lisp/ffap.el (ffap-alist): Document that ffap sets the match data
119123	while walking 'ffap-alist'.
119124
1191252017-01-03  Eli Zaretskii  <eliz@gnu.org>
119126
119127	Generate nt/gnulib.mk from lib/gnulib.mk
119128
119129	This was proposed by Paul Eggert <eggert@cs.ucla.edu>,
119130	with the purpose of avoiding manual maintenance of
119131	nt/gnulib.mk.
119132
119133	* nt/gnulib-modules-to-delete.cfg: New file.
119134	* nt/Makefile.in (AM_V_GEN, am__v_GEN_, am__v_GEN_0)
119135	(am__v_GEN_1): New variables.
119136	(${srcdir}/gnulib.mk): Rules to generate gnulib.mk from
119137	lib/gnulib.mk and list of modules in gnulib-modules-to-delete.cfg.
119138
119139	* make-dist (nt): Add gnulib-modules-to-delete.cfg to the list of
119140	files to link.
119141	* configure.ac (GNULIB_MK): Compute the value according to $opsys.
119142	* autogen.sh: Create nt/gnulib.mk if it doesn't exist, before
119143	running autoreconf.
119144	* Makefile.in (gnulib_mk): New variable.
119145	($(srcdir)/nt/gnulib.mk): Rule to produce it.
119146	(AUTOMAKE_INPUTS): Use $(gnulib_mk) instead of a literal file
119147	name.
119148	* .gitignore: Add nt/gnulib.mk.
119149
119150	* src/w32.c (acl_errno_valid): Implement it here, as we no longer
119151	build the acl-permissions module from Gnulib.
119152
1191532017-01-03  Noam Postavsky  <npostavs@gmail.com>
119154
119155	Handle multibyte chars spanning chunks in term.el
119156
119157	* lisp/term.el (term-terminal-undecoded-bytes): New variable.
119158	(term-mode): Make it buffer local.  Don't make `term-terminal-parameter'
119159	buffer-local twice.
119160	(term-emulate-terminal): Check for bytes of incompletely decoded
119161	characters, and save them until the next call when they can be fully
119162	decoded (Bug#25288).
119163
1191642017-01-03  Michael Albinus  <michael.albinus@gmx.de>
119165
119166	Finish work on filenotify-tests.el
119167
119168	* test/lisp/filenotify-tests.el (file-notify--test-monitors):
119169	New variable.
119170	(file-notify--test-cleanup, file-notify--test-monitor): Use it.
119171	(file-notify--test-read-event, file-notify-test02-events)
119172	(file-notify-test04-file-validity): Handle "gvfs-monitor-dir.exe".
119173	(file-notify-test03-autorevert)
119174	(file-notify-test08-watched-file-in-watched-dir):
119175	Set `file-notify--test-desc' for proper work of
119176	`file-notify--test-monitor'.  (Bug#21804)
119177
1191782017-01-02  Michael Albinus  <michael.albinus@gmx.de>
119179
119180	Check also for "gvfs-monitor-dir.exe" in Tramp
119181
119182	* lisp/net/tramp-sh.el (tramp-get-remote-gvfs-monitor-dir): Check also
119183	for "gvfs-monitor-dir.exe".
119184
1191852017-01-02  Eli Zaretskii  <eliz@gnu.org>
119186
119187	Fix compilation --without-x
119188
119189	* src/composite.c (autocmp_chars) [HAVE_WINDOW_SYSTEM]: Call
119190	font_range only if it is compiled in.  (Bug#25334)
119191
1191922017-01-02  Sašo Živanović  <saso.zivanovic@guest.arnes.si>
119193
119194	Fix RefTeX to show table of contents for dtx files (tiny change)
119195
119196	* lisp/textmodes/reftex.el (reftex-compile-variables): Change the
119197	  section regexp so that it accepts lines starting with the comment
119198	  character. (tiny change)
119199	* lisp/textmodes/reftex-parse.el (reftex-parse-from-file): Filter
119200	  gathered toc entries, accepting a commented entry if and only if the
119201	  source file is a ".dtx" file. (tiny change)
119202
1192032017-01-02  Paul Eggert  <eggert@cs.ucla.edu>
119204
119205	Remove mistakenly-added files
119206
119207	Problem reported by Glenn Morris in:
119208	https://lists.gnu.org/r/emacs-devel/2017-01/msg00008.html
119209	* lisp/gnus/gnus-ems.el, lisp/gnus/gnus-sync.el:
119210	* lisp/gnus/messcompat.el, lisp/nxml/nxml-glyph.el:
119211	* lisp/nxml/nxml-uchnm.el, lisp/obsolete/awk-mode.el:
119212	* lisp/obsolete/iso-acc.el, lisp/obsolete/iso-insert.el:
119213	* lisp/obsolete/iso-swed.el, lisp/obsolete/resume.el:
119214	* lisp/obsolete/scribe.el, lisp/obsolete/spell.el:
119215	* lisp/obsolete/swedish.el, lisp/obsolete/sym-comp.el:
119216	Remove files that were added by mistake during a merge.
119217
1192182017-01-01  Noam Postavsky  <npostavs@gmail.com>
119219
119220	Warn about incomplete untarring of link files
119221
119222	The current tar-mode doesn't really support unpacking symlinks, it
119223	simply creates an empty file of the same name.
119224
119225	* lisp/tar-mode.el (tar--describe-as-link): New function extracted from
119226	`tar--check-descriptor'.
119227	(tar-untar-buffer): Use it to warn about imperfectly untarred link
119228	files.
119229
1192302017-01-01  Noam Postavsky  <npostavs@gmail.com>
119231
119232	Remove sh-mode's skeleton-end-hook
119233
119234	* lisp/progmodes/sh-script.el (sh-mode): Remove local setting of
119235	`skeleton-end-hook', `skeleton-insert' already does `newline-and-indent'
119236	and also respects `skeleton-end-newline' (Bug#16634).
119237
1192382017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
119239
119240	* nt/gnulib.mk (stdint.h): Update to match lib/gnulib.mk here.
119241
1192422017-01-01  Mark Oteiza  <mvoteiza@udel.edu>
119243
119244	Add term/tmux.el
119245
119246	Since tmux version 2.1, new tmux terminfos are shipped due to oddities
119247	with xterm and screen terminfos.  This is simply a duplication of
119248	term/screen.el with screen -> tmux.
119249	* lisp/term/tmux.el: New file.
119250
1192512017-01-01  Philipp Stephani  <phst@google.com>
119252
119253	Fix encoding of JSON surrogate pairs
119254
119255	JSON requires that such pairs be treated as UTF-16 surrogate pairs, not
119256	individual code points; cf. Bug #24784.
119257
119258	* lisp/json.el (json-read-escaped-char): Fix decoding of surrogate
119259	pairs.
119260	(json--decode-utf-16-surrogates): New defun.
119261
119262	* test/lisp/json-tests.el (test-json-read-string): Add test for
119263	surrogate pairs.
119264
1192652017-01-01  Michael Albinus  <michael.albinus@gmx.de>
119266
119267	Remove tramp-gw.el, which was synced from emacs-25 by accident
119268
1192692017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
119270
119271	Do not use Gnulib’s m4/wint_t.m4.
119272
119273	* admin/merge-gnulib: Remove m4/wint_t.m4 when merging.
119274	Fix typo so that warn-on-use.m4 is removed too.
119275	* configure.ac (gt_TYPE_WINT_T): New macro, replacing Gnulib’s.
119276	* m4/wint_t.m4: Remove.
119277
1192782017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
119279
119280	Merge from gnulib, continued
119281
119282	* m4/wint_t.m4: New file, copied from gnulib.
119283
1192842017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
119285
119286	Update copyright year to 2017 in master
119287
119288	Run admin/update-copyright in the master branch.  This fixes files
119289	that were not already fixed in the emacs-25 branch before it was
119290	merged here.
119291
1192922017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
119293
119294	Remove test/automated detritus from merge
119295
1192962017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
119297
119298	Merge from gnulib
119299
119300	This incorporates:
119301	2016-12-19 stdint: Fix WINT_MAX to match wint_t on mingw
119302	2016-12-18 getopt: Fix link error for users of getopt() in <unistd.h>
119303	2016-12-17 getlogin: Port to newer mingw
119304	2016-12-17 stdint: Fix WINT_MAX to match wint_t on MSVC
119305	2016-12-17 Avoid redefinition errors on MSVC
119306	* lib/getopt.in.h, lib/stdint.in.h, lib/stdio.in.h, lib/unistd.in.h:
119307	* m4/stdint.m4, m4/unistd_h.m4:
119308	Copy from gnulib.
119309	* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
119310	Plus, this commit updates the indenting on copyright notices to
119311	match that of gnulib.
119312
1193132017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
119314
119315	Merge from origin/emacs-25
119316
119317	2e2a806 Fix copyright years by hand
119318	5badc81 Update copyright year to 2017
119319
1193202017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
119321
119322	Merge from origin/emacs-25
119323
119324	665be69 ; Update ChangeLog.2 and AUTHORS files
119325
119326	# Conflicts:
119327	#	etc/AUTHORS
119328
1193292017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
119330
119331	Merge from origin/emacs-25
119332
119333	697167b ; Improve wording of previous change in variables.texi
119334	d7973e8 Document 'default-toplevel-value' and 'set-default-toplevel-v...
119335	8b71826 Don't modify minibuffer variables globally
119336	5b5e036 Revert to pre-25.1 behavior in ffap
119337	19994a1 * lisp/ffap.el: Fix obsolete comment referencing ffap-bug.
119338	3ace730 Attempt to fix 64-bit AIX build
119339	f69bd79 Clarify usage of 'ediff-cleanup-hook' (Bug#24675)
119340	c04ac8a Document that variable binding order is unspecified
119341	272554a * lisp/desktop.el (desktop-buffers-not-to-save): Doc fix.
119342	08de101 Fix M-x hints on Mac port
119343	86a297a Work around reporting a dpi change in apply_xft_settings
119344	cf1f985 ; lisp/skeleton.el (skeleton-insert): Fix typo in last change
119345	9e1209d Amend the version number of CC Mode 5.33 -> 5.32.99.  Don't m...
119346	88cdf14 Improve skeleton docstrings
119347
1193482017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
119349
119350	Merge from origin/emacs-25
119351
119352	4179238 Improve documentation of 'w32-scroll-lock-modifier'
119353
1193542017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
119355
119356	Merge from origin/emacs-25
119357
119358	9adb101 Document 'describe-fontset'
119359	229315c ; Add missing symbol quoting.
119360	3d94931 Repair desktop restoration on text terminals
119361	43022f9 Ignore forward-sexp-function in js-mode indentation code
119362	b19fb49 Improve documentation of 'define-coding-system'
119363	467768f Fix Bug#25162
119364	6db78ae Fix a typo in define-abbrev-table
119365	5f7d906 Bump makeinfo requirement from 4.7 to 4.13
119366	442e2f6 Fixes related to select-enable-clipboard
119367	e4ac450 Define struct predicate before acccesors
119368	08decbd Doc fix for vc-git
119369	5531e75 Further improve make-dist checking
119370	953bf67 Improve previous make-dist change
119371	129645a Make make-dist --snapshot do some sanity checks
119372
119373	# Conflicts:
119374	#	lisp/menu-bar.el
119375
1193762017-01-01  Alan Mackenzie  <acm@muc.de>
119377
119378	Give eval-and-compile a correct edebug spec.  Fixes bug #16184 properly.
119379
119380	* lisp/emacs-lisp/edebug.el (edebug_offset_indices): Revert abortive commit
119381	from Thu Dec 29 09:22:36 2016 +0000 which didn't really fix the bug.
119382
119383	* lisp/emacs-lisp/byte-run.el (eval-and-compile): Change the edebug spec from
119384	t to (&rest def-form).
119385
1193862017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
119387
119388	Fix copyright years by hand
119389
119390	These are dates that admin/update-copyright did not update, or
119391	updated incorrectly.
119392
1193932017-01-01  Paul Eggert  <eggert@cs.ucla.edu>
119394
119395	Update copyright year to 2017
119396
119397	Run admin/update-copyright.
119398
1193992016-12-31  Paul Eggert  <eggert@cs.ucla.edu>
119400
119401	Clarify internal_catch etc.
119402
119403	The recent change to internal_catch and friends relied on some
119404	confusion I introduced to the code in 2013.  Attempt to fix
119405	the confusion by clarifying the code instead.  This saves an
119406	instruction and a load dependency in the typical case.
119407	* src/eval.c (internal_catch, internal_condition_case)
119408	(internal_condition_case_1, internal_condition_case_2)
119409	(internal_condition_case_n): Undo the previous change.  Instead,
119410	use use ‘c’ rather than ‘handlerlist’ in the typical case.
119411	Also, use ‘eassert’ rather than ‘clobbered_eassert’ when possible.
119412
1194132016-12-31  Ken Brown  <kbrown@cornell.edu>
119414
119415	Further improve filenotify-tests.el
119416
119417	* test/lisp/filenotify-tests.el
119418	(file-notify--test-read-event): Adapt to file monitors of type
119419	GFamFileMonitor, which occur on Cygwin.
119420	(file-notify--test-monitor): Update doc string.
119421
1194222016-12-31  Paul Eggert  <eggert@cs.ucla.edu>
119423
119424	* src/xdisp.c (string_from_display_spec): Simplify.
119425
1194262016-12-31  Alan Third  <alan@idiocy.org>
119427
119428	Rework NS event handling (bug#25265)
119429
119430	* src/nsterm.m (unwind_apploopnr): Remove.
119431	(ns_read_socket): Remove references to apploopnr.  Make processing the
119432	NS event loop conditional on being in the main thread.
119433	(ns_select): Remove references to apploopnr.  Remove all fd_handler
119434	related stuff.  Check if there are events waiting on the NS event
119435	queue rather than running the event loop.  Remove unused variables and
119436	code.
119437	(fd_handler): Remove.
119438	(ns_term_init): Remove creation of fd_handler thread.
119439	(hold_event, EmacsApp:sendEvent, EmacsView:mouseMoved,
119440	EmacsView:windowDidExpose): Remove send_appdefined.
119441	(ns_send_appdefined): Always check the event queue for
119442	applicationDefined events rather than relying on send_appdefined var.
119443	* src/nsterm.h: Remove reference to fd_handler method.
119444
1194452016-12-31  Philipp Stephani  <phst@google.com>
119446
119447	Checkdoc: use syntax functions instead of regex
119448
119449	In checkdoc.el, get rid of the error-prone regex to find definition
119450	forms, and use existing syntax-based navigation functions instead.
119451	This fixes a corner case with one-argument `defvar' forms.
119452
119453	* lisp/emacs-lisp/checkdoc.el (checkdoc--next-docstring): New function.
119454	(checkdoc-next-docstring, checkdoc-defun): Use it.
119455	* test/lisp/emacs-lisp/checkdoc-tests.el (checkdoc-tests--next-docstring):
119456	Add unit test.
119457
1194582016-12-31  Eli Zaretskii  <eliz@gnu.org>
119459
119460	Don't define NOMINMAX on MS-Windows
119461
119462	* src/callproc.c (NOMINMAX) [WINDOWSNT]: Don't define.  This is no
119463	longer needed with the current sources and MinGW headers, while
119464	defining NOMINMAX causes an annoying compiler warning.
119465
1194662016-12-31  Chris Gregory  <czipperz@gmail.com>  (tiny change)
119467
119468	Simplify code in eval.c that calls 'setjmp'
119469
119470	* src/eval.c (internal_catch, internal_condition_case)
119471	(internal_condition_case_1, internal_condition_case_2)
119472	(internal_condition_case_n): Factor out the common tail of the
119473	functions.
119474
1194752016-12-31  Chris Gregory  <czipperz@gmail.com>  (tiny change)
119476
119477	Simplify code in 'string_from_display_spec'
119478
119479	* src/xdisp.c (string_from_display_spec): Eliminate a redundant
119480	test before the loop.
119481
1194822016-12-31  Eli Zaretskii  <eliz@gnu.org>
119483
119484	Serialize random number generation on MS-Windows
119485
119486	* src/w32.c (rand_as183): New function.
119487	(random): Use it instead of MS runtime's 'rand'.  This avoids
119488	producing separate and identical random series in each Lisp
119489	thread.
119490	(srandom): Modify to supply 3 seed values to 'rand_as183'.
119491
1194922016-12-31  Michael Albinus  <michael.albinus@gmx.de>
119493
119494	* src/gfilenotify.c (Fgfile_monitor_name): Return interned symbol.
119495
1194962016-12-30  Ken Raeburn  <raeburn@raeburn.org>
119497
119498	Don't call xg_select for a NextStep build.
119499
119500	NextStep builds use glib but don't use xg_select.
119501
119502	* src/process.c (wait_reading_process_output): Don't call xg_select
119503	for a NextStep build.
119504
1195052016-12-30  Ken Raeburn  <raeburn@raeburn.org>
119506
119507	Increase the obarray size.
119508
119509	In a typical GNU/Linux/X11 build, we wind up with over 15k symbols by
119510	the time we've started.  The old obarray size ensured an average chain
119511	length of 10 or more.
119512
119513	* src/lread.c (OBARRAY_SIZE): Increase to 15121.
119514
1195152016-12-30  Ken Raeburn  <raeburn@raeburn.org>
119516
119517	Initialize thread support for Xlib.
119518
119519	* src/xterm.c (x_initialize) [THREADS_ENABLED]: Call XInitThreads
119520	before doing anything else with X.
119521
1195222016-12-30  Paul Eggert  <eggert@cs.ucla.edu>
119523
119524	Rename primary_thread to main_thread
119525
119526	This avoids the confusion of using two different phrases "main thread"
119527	and "primary thread" internally to mean the same thing.  See:
119528	https://lists.gnu.org/r/emacs-devel/2016-12/msg01142.html
119529	* src/thread.c (main_thread): Rename from primary_thread,
119530	since the new name no longer clashes with main_thread_id
119531	and Emacs internals normally call this the "main thread".
119532	(init_main_thread): Rename from init_primary_thread.
119533	(main_thread_p): Rename from primary_thread_p.
119534	All uses changed.
119535
1195362016-12-30  Paul Eggert  <eggert@cs.ucla.edu>
119537
119538	Rename main_thread to main_thread_id and simplify
119539
119540	* src/emacs-module.c: Include syssignal.h, for main_thread_id.
119541	[HAVE_PTHREAD]: Do not include pthread.h.
119542	(main_thread): Remove.  All uses replaced by main_thread_id,
119543	or by dwMainThreadId on NT.  Since the HAVE_PTHREAD code is now using
119544	the main_thread_id established by sysdep.c, there is no need for a
119545	separate copy of the main thread ID here.
119546	(module_init): Remove.  All uses removed.
119547	* src/sysdep.c (main_thread_id) [HAVE_PTHREAD]:
119548	Rename from main_thread.  All uses changed.  Now extern.
119549
1195502016-12-30  Michael Albinus  <michael.albinus@gmx.de>
119551
119552	* src/gfilenotify.c (Fgfile_monitor_name): Return a symbol.
119553
1195542016-12-30  Paul Eggert  <eggert@cs.ucla.edu>
119555
119556	* src/sysdep.c (deliver_process_signal): Improve comment.
119557
1195582016-12-30  Alan Mackenzie  <acm@muc.de>
119559
119560	CC Mode: Fix the fontification of a spuriously recognized enum member.
119561
119562	The "enum" was in an argument list, but triggered the fontification of a
119563	following identifier in the function block as though it were in an enum
119564	declaration.
119565
119566	* lisp/progmodes/cc-fonts.el (c-font-lock-enum-body): New function.
119567	(c-basic-matchers-after): Replace the inline stanza for enum elements with a
119568	call to c-font-lock-enum-body.
119569
119570	* lisp/progmodes/cc-langs.el (c-enum-clause-introduction-re): New language
119571	variable.
119572
1195732016-12-30  Nicolas Petton  <nicolas@petton.fr>
119574
119575	Bump Emacs version to 25.1.91
119576
119577	* README:
119578	* configure.ac:
119579	* msdos/sed2v2.inp:
119580	* nt/README.W32: Bump Emacs version.
119581	* lisp/ldefs-boot.el: Update.
119582
1195832016-12-30  Eli Zaretskii  <eliz@gnu.org>
119584
119585	Attempt to fix crashes with threads in GTK builds
119586
119587	* src/xgselect.c (xg_select): Call pselect via thread_select, not
119588	directly, to avoid running Lisp (via unblock_input) when more than
119589	one thread could be running.  (Bug#25247)
119590	* src/process.c (wait_reading_process_output) [HAVE_GLIB]: Call
119591	xg_select directly instead of through thread_select.
119592	* src/xgselect.h (xg_select): Last 2 arguments are no longer
119593	'const', for consistency with thread_select.
119594
1195952016-12-30  Arash Esbati  <arash.esbati@gmail.com>
119596
119597	Add entry for biblatex
119598
119599	* lisp/textmodes/reftex-vars.el (reftex-cite-format-builtin): Add
119600	entry for biblatex macros.
119601
1196022016-12-30  Alan Mackenzie  <acm@muc.de>
119603
119604	Backport: Remove an ambiguity from defvar's doc string.  Fixes bug #25292.
119605
119606	The ambiguity was whether INITVALUE is evaluated when it's not going to be
119607	used to set SYMBOL's value.
119608
119609	* src/eval.c (defvar): Rewrite a paragraph of the doc string.
119610
119611	(cherry picked from commit 8295e97f18490a535d1188a3daf0b0fd1bf4fa0d)
119612
1196132016-12-30  Tino Calancha  <tino.calancha@gmail.com>
119614
119615	ffap-string-at-point: Limit max length of active region
119616
119617	Prevents that 'ffap-guesser' waste time checking large strings
119618	which are likely not valid candidates (Bug#25243).
119619	* lisp/ffap.el (ffap-max-region-length): New variable.
119620	(ffap-string-at-point): Use it.
119621	* test/lisp/ffap-tests.el: New test suite.
119622	(ffap-tests-25243): Add test for this bug.
119623
1196242016-12-30  Thien-Thi Nguyen  <ttn@gnu.org>
119625
119626	last-chance: Also ignore NEWS files + typo fixes
119627
119628	* admin/last-chance.el: Fix typo in copyright notice.
119629	(last-chance-uninteresting-regexps): Add entry to match NEWS files.
119630	(last-chance-cleanup): Fix typo in docstring.
119631
1196322016-12-29  Mike Kupfer  <mkupfer@alum.berkeley.edu>
119633
119634	* lisp/mh-e/mh-e.el (mh-fetch-x-image-url): Fix a docstring typo.
119635
1196362016-12-29  Alan Mackenzie  <acm@muc.de>
119637
119638	Remove an ambiguity from defvar's doc string.  Fixes bug #25292.
119639
119640	The ambiguity was whether INITVALUE is evaluated when it's not going to be
119641	used to set SYMBOL's value.
119642
119643	* src/eval.c (defvar): Rewrite a paragraph of the doc string.
119644
1196452016-12-29  Michael Albinus  <michael.albinus@gmx.de>
119646
119647	Improve filenotify-tests.el
119648
119649	* src/inotify.c (Finotify_valid_p):
119650	* src/kqueue.c (Fkqueue_valid_p):
119651	* src/w32notify.c (Fw32notify_valid_p):
119652	* src/gfilenotify.c (Fgfile_valid_p): Fix typo in docstring.
119653	(Fgfile_monitor_name): New defun.
119654	(syms_of_gfilenotify): Declare Sgfile_monitor_name.
119655
119656	* test/lisp/filenotify-tests.el	(file-notify--test-read-event):
119657	New defun, derived from `file-notify--test-read-event-timeout'.
119658	Replace all calls of `read-event' by this.
119659	(file-notify--test-timeout): Fix docstring.
119660	(file-notify--test-monitor): New defun.
119661	(file-notify--deftest-remote): Do not bind
119662	`file-notify--test-read-event-timeout' anymore.
119663	(file-notify-test00-availability): Print also monitor, if existent.
119664	(file-notify--test-with-events): Add an additional
119665	`file-notify--test-read-event' call, in order to get it work
119666	after `file-notify-add-watch'.  Remove special timeout for cygwin.
119667	(file-notify-test02-events): Make a better check for cygwin.
119668	(file-notify-test06-many-events): Improve event list for cygwin.
119669	(file-notify-test08-watched-file-in-watched-dir): Add cygwin case.
119670
1196712016-12-29  Alan Mackenzie  <acm@muc.de>
119672
119673	Partially correct fontification of "(b*3)", and the like, in C++ Mode
119674
119675	This problem is caused by the fundamental ambiguity in C++ between
119676	argument declarations and initialization clauses.
119677
119678	* lisp/progmodes/cc-fonts.el (c-font-lock-declarations): If we have an open
119679	paren preceded by an arithmetic operator, we give this the context nil, not
119680	'arglist.
119681
119682	* lisp/progmodes/cc-langs.el (c-arithmetic-operators, c-arithmetic-op-regexp):
119683	New lang consts and vars.
119684
1196852016-12-29  Alan Mackenzie  <acm@muc.de>
119686
119687	Initialize edebug-offset-indices to a cons, not nil.  Fixes bug #16184.
119688
119689	This is because there are times when this variable is changed by setcar before
119690	an atom is pushed onto it by debug-enter.  This happens, for example, whilst
119691	instrumenting c-font-lock-declarations in .../lisp/progmodes/cc-fonts.el.
119692
119693	* lisp/emacs-lisp/edebug.el (edebug-offset-indices): initialize to '(0).
119694
1196952016-12-28  Stefan Monnier  <monnier@iro.umontreal.ca>
119696
119697	* lisp/emacs-lisp/inline.el: Fix apply-conversion (bug#25280)
119698
119699	(inline--dont-quote): Quote the function with #' when passing it to `apply'.
119700	Cherry picked from commit e6161f648903d821865b9610b3b6aa0f82a5dcb7.
119701
1197022016-12-27  Michael Albinus  <michael.albinus@gmx.de>
119703
119704	Release Tramp 2.3.1
119705
119706	* doc/misc/trampver.texi:
119707	* lisp/net/trampver.el: Change version to "2.3.1".
119708
119709	* lisp/net/tramp.el (tramp-eshell-directory-change): Add it to
119710	`eshell-mode-hook' but `eshell-first-time-mode-hook'.
119711
119712	* lisp/net/tramp-compat.el (tramp-compat-file-name-quoted-p)
119713	(tramp-compat-file-name-quote)
119714	(tramp-compat-file-name-unquote): Embed them in `eval-and-compile'.
119715
1197162016-12-27  Paul Eggert  <eggert@cs.ucla.edu>
119717
119718	Simplify prog1 implementation
119719
119720	Inspired by a suggestion from Chris Gregory in:
119721	https://lists.gnu.org/r/emacs-devel/2016-12/msg00965.html
119722	On my platform, this generates exactly the same machine insns.
119723	* src/eval.c (prog_ignore): Rename from unwind_body, since
119724	it’s more general than that.  All callers changed.
119725	(Fprog1): Simplify by using prog_ignore.
119726	(Fwhile): Clarify by using prog_ignore.
119727
1197282016-12-27  Stefan Monnier  <monnier@iro.umontreal.ca>
119729
119730	* lisp/emacs-lisp/inline.el: Fix apply-conversion (bug#25280)
119731
119732	(inline--dont-quote): Quote the function with #' when passing it to `apply'.
119733
1197342016-12-27  Mark Oteiza  <mvoteiza@udel.edu>
119735
119736	Remove a use of lexical-let
119737
119738	* lisp/gnus/message.el (message-completion-function): Just use let,
119739	since the file now uses lexical-binding.
119740
1197412016-12-27  Ken Brown  <kbrown@cornell.edu>
119742
119743	Improve filenotify-tests.el on Cygwin (Bug #21804)
119744
119745	* test/lisp/filenotify-tests.el [CYGWIN]
119746	(file-notify--test-read-event-timeout): Increase.
119747	(file-notify--test-with-events): Add delay before executing body.
119748	(file-notify-test02-events, file-notify-test04-file-validity):
119749	Adjust expected results.
119750
1197512016-12-27  Eli Zaretskii  <eliz@gnu.org>
119752
119753	Fix expand-file-name on DOS_NT systems when /: escaping is used
119754
119755	* src/fileio.c (Fexpand_file_name) [DOS_NT]: Don't expand "~" in
119756	file names escaped by "/:".  Don't recursively expand
119757	default-directory escaped with "/:" which is not followed by a
119758	drive spec.  (Bug#25183)
119759
1197602016-12-27  Bake Timmons  <65pandas@gmail.com>
119761
119762	Fix `mail-sources' value of `(group)' in Gnus manual (bug#25275)
119763
119764	* doc/misc/gnus.texi (Mail Source Specifiers):
119765	Replace wrong `mail-sources' value of `(group)' in Gnus manual with
119766	the correct `((group))' value.  (bug#25275) (tiny change)
119767
1197682016-12-27  Bake Timmons  <65pandas@gmail.com>
119769
119770	Fix bug in customizing `mail-sources' variable (bug#25274)
119771
119772	* lisp/gnus/mail-source.el (mail-sources): Use list instead of cons
119773	for lone argument. (bug#25274) (tiny change)
119774
1197752016-12-26  Philipp Stephani  <phst@google.com>
119776
119777	Checkdoc: Don't require a space before an arg list
119778
119779	See Bug#24998.
119780
119781	* lisp/emacs-lisp/checkdoc.el (checkdoc-defun-regexp): Don't require a
119782	space before a argument list.
119783	* test/lisp/emacs-lisp/checkdoc-tests.el (checkdoc-tests--bug-24998):
119784	Add unit test.
119785
1197862016-12-26  Eli Zaretskii  <eliz@gnu.org>
119787
119788	Document 'default-toplevel-value' and 'set-default-toplevel-value'
119789
119790	* doc/lispref/variables.texi (Default Value): Document
119791	'default-toplevel-value' and 'set-default-toplevel-value'.
119792
1197932016-12-25  Michihito Shigemura  <m_shigemura@shigemk2.com>  (tiny change)
119794
119795	Add zshrc and zshenv detection to sh-mode (bug#25217)
119796
119797	* lisp/progmodes/sh-script.el (sh-mode): Add zsh string-match
119798
1197992016-12-25  Paul Eggert  <eggert@cs.ucla.edu>
119800
119801	Fix typo in lisp.h reordering patch
119802
119803	* src/lisp.h (XUNTAG) [!USE_LSB_TAG]: Remove duplicate defn.
119804	Reported by Eli Zaretskii (Bug#25128#19).
119805
1198062016-12-25  Paul Eggert  <eggert@cs.ucla.edu>
119807
119808	regex.h now includes sys/types.h
119809
119810	* src/dired.c, src/emacs.c, src/search.c, src/syntax.c, src/thread.h:
119811	Do not include sys/types.h; no longer needed.
119812	* src/regex.h: Include <sys/types.h>, as that's what Gnulib and
119813	glibc regex.h does, and POSIX has blessed this since 2008.
119814
1198152016-12-25  Paul Eggert  <eggert@cs.ucla.edu>
119816
119817	Reorder lisp.h to declare types before using them
119818
119819	This puts basic functions for types to be after the corresponding
119820	type definitions.  This is a more-common programming style in C,
119821	and will make it easier to port Emacs to gcc
119822	-fcheck-pointer-bounds, since the functions now have access to the
119823	corresponding types' sizes.  This patch does not change the code;
119824	it just moves declarations and definitions and removes
119825	no-longer-needed forward declarations (Bug#25128).
119826	* src/buffer.c, src/data.c, src/image.c:
119827	Include process.h, for PROCESSP.
119828	* src/buffer.h (BUFFERP, CHECK_BUFFER, XBUFFER):
119829	* src/process.h (PROCESSP, CHECK_PROCESS, XPROCESS):
119830	* src/termhooks.h (TERMINALP, XTERMINAL):
119831	* src/window.h (WINDOWP, CHECK_WINDOW, XWINDOW):
119832	* src/thread.h (THREADP, CHECK_THREAD, XTHREAD, MUTEXP, CHECK_MUTEX)
119833	(XMUTEX, CONDVARP, CHECK_CONDVAR, XCONDVAR):
119834	Move here from lisp.h.
119835	* src/intervals.h: Include buffer.h, for BUFFERP.
119836	Include lisp.h, for Lisp_Object.
119837	* src/lisp.h: Reorder declarations and definitions as described
119838	above.  Move thread includes to be later, so that they can use the
119839	reordered definitions.  Move some symbols to other headers (noted
119840	elsewhere).  Remove forward decls that are no longer needed.
119841	* src/thread.h: Include systhread.h here, not in lisp.h,
119842	since lisp.h itself does not need systhread.h.
119843
1198442016-12-25  Leo Liu  <sdl.web@gmail.com>
119845
119846	Don't modify minibuffer variables globally
119847
119848	* lisp/files.el (cd): Use setq-local instead.  (Bug#25260)
119849
1198502016-12-25  Dima Kogan  <dima@secretsauce.net>
119851
119852	diff-mode auto-refines only after a successful motion
119853
119854	Prior to this patch (if enabled) auto-refinement would kick in after all
119855	hunk navigation commands, even if the motion failed.  This would result
119856	in a situation where the hunk navigation would signal an error and beep,
119857	but yet still accomplish potentially useful work, by auto-refining.
119858	This patch moves the auto-refinement code to only run when a motion was
119859	successful
119860
119861	* lisp/vc/diff-mode.el (diff--internal-hunk-next,
119862	  diff--internal-hunk-prev): Removed auto-refinement-triggering code
119863	* lisp/vc/diff-mode.el (diff--wrap-navigation): Added
119864	  auto-refinement-triggering code
119865
1198662016-12-25  Dima Kogan  <dima@secretsauce.net>
119867
119868	diff-mode is able to better handle file headers
119869
119870	This fixes a regression introduced in
119871
119872	  https://git.savannah.gnu.org/gitweb/?p=emacs.git;a=commit;h=2c8a7e50d24daf19ea7d86f1cfeaa98a41c56085
119873
119874	This bug was filed in
119875
119876	  https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25105
119877
119878	Patches generated from a VCS such as git contain a patch message at the
119879	start, and diff-mode is now once-again able to properly able to ignore
119880	this message when issuing navigation commands around the message.
119881
119882	* lisp/vc/diff-mode.el (diff-beginning-of-file-and-junk): More
119883	  thoroughly ignore the header when looking for a beginning of file
119884	  diffs.
119885
1198862016-12-25  Paul Eggert  <eggert@cs.ucla.edu>
119887
119888	Use libpng-config --ldflags, not --libs
119889
119890	Problem reported by James K. Lowden (Bug#25268).
119891	* configure.ac (LIBPNG): Pass --ldflags, not --libs, to libpng-config.
119892
1198932016-12-24  Eli Zaretskii  <eliz@gnu.org>
119894
119895	Revert to pre-25.1 behavior in ffap
119896
119897	* lisp/ffap.el (ffap-lax-url): Change the default to t, to produce
119898	the same behavior as in Emacs 24.x.  (Bug#25264)
119899	Explain the trade-offs of customizing this in the doc string.
119900
1199012016-12-24  Noam Postavsky  <npostavs@gmail.com>
119902
119903	* lisp/ffap.el: Fix obsolete comment referencing ffap-bug.
119904
1199052016-12-24  Noam Postavsky  <npostavs@gmail.com>
119906
119907	Remove redundant `save-match-data' in whitespace.el
119908
119909	* lisp/whitespace.el (whitespace-cleanup, whitespace-cleanup-region):
119910	(whitespace-report-region): Remove redundant `save-match-data' calls.
119911
1199122016-12-24  Noam Postavsky  <npostavs@gmail.com>
119913
119914	Fix whitespace eob cleanup
119915
119916	* lisp/whitespace.el (whitespace-empty-at-eob-regexp): Match any number
119917	of empty lines at end of buffer.
119918	* test/lisp/whitespace-tests.el (whitespace-cleanup-eob): New test.
119919	(whitespace-tests--cleanup-string): New helper function for tests.
119920
1199212016-12-24  Hong Xu  <hong@topbug.net>
119922
119923	Fix timezone detection of parse-iso8601-time-string
119924
119925	* lisp/calendar/parse-time.el (parse-iso8601-time-string): Fix timezone
119926	parsing.  Add a doc string.  (Bug#25086)
119927	* src/editfns.c (Fdecode-time): Doc fix.
119928	* doc/misc/emacs-mime.texi (time-date): Add an example for
119929	parse-iso8601-time-string.
119930	* test/lisp/calendar/parse-time-tests.el (parse-time-tests): Add
119931	tests for parse-iso8601-time-string.
119932
1199332016-12-24  Paul Eggert  <eggert@cs.ucla.edu>
119934
119935	Simplify exec_byte_code via moving decls etc.
119936
119937	* src/bytecode.c (exec_byte_code): Simplify, mostly by moving
119938	initializers into decls, and by omitting some unnecessary changes
119939	to ‘top’.
119940
1199412016-12-24  Paul Eggert  <eggert@cs.ucla.edu>
119942
119943	Remove interpreter’s byte stack
119944
119945	This improves performance overall on my benchmark on x86-64,
119946	since the interpreted program-counter resides in a machine
119947	register rather than in RAM.
119948	* etc/DEBUG, src/.gdbinit: Remove xbytecode GDB command, as there
119949	is no longer a byte stack to decode.
119950	* src/bytecode.c (struct byte_stack, byte_stack_list)
119951	(relocate_byte_stack): Remove.  All uses removed.
119952	(FETCH): Simplify now that pc is now local (typically, in a
119953	register) and no longer needs to be relocated.
119954	(CHECK_RANGE): Remove.  All uses now done inline, in a different way.
119955	(BYTE_CODE_QUIT): Remove; now done by op_relative_branch.
119956	(exec_byte_code): Allocate a copy of the function’s bytecode,
119957	so that there is no problem if GC moves it.
119958	* src/lisp.h (struct handler): Remove byte_stack member.
119959	All uses removed.
119960	* src/thread.c (unmark_threads): Remove.  All uses removed.
119961	* src/thread.h (struct thread_state): Remove m_byte_stack_list member.
119962	All uses removed.  m_stack_bottom is now the first non-Lisp field.
119963
1199642016-12-24  Paul Eggert  <eggert@cs.ucla.edu>
119965
119966	BYTE_CODE_SAFE typo fix
119967
119968	* src/bytecode.c (FETCH): Depend on the value of BYTE_CODE_SAFE,
119969	not on whether it is defined.
119970
1199712016-12-24  Paul Eggert  <eggert@cs.ucla.edu>
119972
119973	BYTE_CODE_SAFE cleanups
119974
119975	* src/bytecode.c (BYTE_MAINTAIN_TOP): Remove; no longer needed.
119976	(struct byte_stack) [BYTE_MAINTAIN_TOP]:
119977	Remove unused members ‘top’ and ‘bottom’.
119978	(exec_byte_code): Nest inside { } to avoid GCC warning about
119979	jumping over declaration when compiled with -DBYTE_CODE_SAFE.
119980
1199812016-12-24  Thien-Thi Nguyen  <ttn@gnu.org>
119982
119983	last-chance: new utility lib for dangling deterrence
119984
119985	* admin/last-chance.el: New file.
119986
1199872016-12-24  Paul Eggert  <eggert@cs.ucla.edu>
119988
119989	Use max_align_t instead of void *
119990
119991	* src/thread.c (run_thread): Don’t assume void * is aligned enough.
119992
1199932016-12-23  Eli Zaretskii  <eliz@gnu.org>
119994
119995	Attempt to fix 64-bit AIX build
119996
119997	* src/unexaix.c (make_hdr, copy_text_and_data, write_segment): Fix
119998	type-casts that assumed 32-bit pointers.  (Bug#25141)
119999
1200002016-12-23  Philipp Stephani  <phst@google.com>
120001
120002	Clarify usage of 'ediff-cleanup-hook' (Bug#24675)
120003
120004	* doc/misc/ediff.texi (Hooks): Clarify usage of 'ediff-cleanup-hook'
120005
1200062016-12-23  Philipp Stephani  <phst@google.com>
120007
120008	Document that variable binding order is unspecified
120009
120010	* doc/lispref/variables.texi (Local Variables):
120011	* doc/misc/cl.texi (Modify Macros): Document that binding order in 'let' and
120012	'cl-letf' is unspecified.
120013
1200142016-12-23  Eli Zaretskii  <eliz@gnu.org>
120015
120016	Prevent infloops in redisplay due to truncate-lines and overlays
120017
120018	* src/xdisp.c (hscroll_window_tree): Avoid inflooping in
120019	redisplay_window when a screen line ends in an overlay string with
120020	a newline.  (Bug#25246)
120021
1200222016-12-23  Philipp Stephani  <phst@google.com>
120023
120024	Treat incomplete integer literals as errors
120025
120026	See Bug#25120.
120027
120028	* src/lread.c (read_integer): Treat incomplete integer literals as errors.
120029	* test/src/lread-tests.el (lread-empty-int-literal): New unit test for
120030	incomplete integer literals.
120031
1200322016-12-23  Eli Zaretskii  <eliz@gnu.org>
120033
120034	* lisp/desktop.el (desktop-buffers-not-to-save): Doc fix.
120035
1200362016-12-23  Stefan Monnier  <monnier@IRO.UMontreal.CA>
120037
120038	Fix M-x hints on Mac port
120039
120040	* lisp/simple.el (execute-extended-command--shorter): Call
120041	input-pending-p to trigger input processing on some systems, such
120042	as Mac port.  (Bug#23002)
120043
1200442016-12-23  Michael Albinus  <michael.albinus@gmx.de>
120045
120046	* test/lisp/net/tramp-tests.el (tramp--test-check-files): Make it robust.
120047
1200482016-12-23  Eli Zaretskii  <eliz@gnu.org>
120049
120050	Avoid aborts due to unaligned byte stack of threads
120051
120052	* src/thread.c (run_thread): Make sure the pointers to thread byte
120053	stack are properly aligned.  (Bug#25247)
120054
1200552016-12-22  Paul Eggert  <eggert@cs.ucla.edu>
120056
120057	Pacify --enable-gcc-warnings
120058
120059	* src/charset.c (load_charset_map):
120060	* src/coding.c (decode_coding_object):
120061	* src/frame.c (make_frame):
120062	* src/window.c (Frecenter):
120063	Mark locals with UNINIT to silence false alarms from
120064	-Wmaybe-uninitialized.
120065	* src/lisp.h (SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD)
120066	(SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD):
120067	Check and assume that values are nonnull.  This pacifies
120068	-Wmaybe-uninitialized in Fmake_variable_buffer_local and
120069	Fmake_local_variable.
120070
1200712016-12-22  Eli Zaretskii  <eliz@gnu.org>
120072
120073	Fix last change with thread marking under GC_CHECK_MARKED_OBJECTS
120074
120075	* src/thread.c (primary_thread_p): New function.
120076	* src/alloc.c (mark_object): Use 'primary_thread_p' to bypass tests
120077	meant for thread objects allocated dynamically.
120078	* src/thread.h (primary_thread_p): Add prototype.
120079
1200802016-12-22  Martin Rudalics  <rudalics@gmx.at>
120081
120082	Work around reporting a dpi change in apply_xft_settings
120083
120084	* src/xsettings.c (apply_xft_settings): Don't report a change
120085	when dpi settings do not differ substantially.
120086
1200872016-12-22  Noam Postavsky  <npostavs@gmail.com>
120088
120089	Use completion-at-point in verilog-mode
120090
120091	There were some functions in verilog-mode that implemented in-buffer
120092	completion, but this needlessly duplicates completion-at-point
120093	functionality, and the popup window management had problems
120094	(see Bug #23842).  We need to keep them for backwards compatibility with
120095	older emacs versions, but use completion-at-point if available.
120096
120097	* lisp/progmodes/verilog-mode.el (verilog-toggle-completions): Mark as
120098	obsolete if completion-cycle-threshold is available.
120099	(verilog-mode-map, verilog-menu): Bind completion-at-point and
120100	completion-help-at-point in preference to verilog-complete-word and
120101	verilog-show-completions, respectively.
120102	(verilog-mode): Add verilog-completion-at-point to
120103	completion-at-point-functions.
120104	(verilog-completion-at-point): New function.
120105	(verilog-show-completions, verilog-complete-word): Use it to avoid code
120106	duplication.
120107
1201082016-12-21  Reuben Thomas  <rrt@sc3d.org>
120109
120110	Keep default CASECHARS/NOT-CASECHARS for ispell built-in dictionaries
120111
120112	* lisp/textmodes/ispell.el (ispell-set-spellchecker-params): Do not
120113	override CASECHARS and NOT-CASECHARS.  The ispell dictionaries
120114	retain their hardwired values, and all other dictionaries are given
120115	sensible defaults.
120116
1201172016-12-21  Stefan Monnier  <monnier@iro.umontreal.ca>
120118
120119	* lisp/textmodes/tex-mode.el (tex-compile-commands): Add luatex
120120	and xetex commands.
120121
1201222016-12-21  Eli Zaretskii  <eliz@gnu.org>
120123
120124	Fix aborts in GC under GC_CHECK_MARKED_OBJECTS
120125
120126	* src/alloc.c (mark_object) [GC_CHECK_MARKED_OBJECTS]: Don't abort
120127	for thread objects.  They are marked via the all_threads list, and
120128	therefore don't need to be inserted into the red-black tree, so
120129	mem_find will never find them.  Reported by Daniel Colascione
120130	<dancol@dancol.org> in
120131	https://lists.gnu.org/r/emacs-devel/2016-12/msg00817.html.
120132
1201332016-12-21  Stefan Monnier  <monnier@iro.umontreal.ca>
120134
120135	* src/data.c (Fmake_variable_frame_local): Remove
120136
120137	* src/lisp.h (struct Lisp_Buffer_Local_Value): Remove `frame_local'.
120138
120139	* src/data.c (swap_in_symval_forwarding, set_internal)
120140	(set_symbol_trapped_write, make_blv, Fmake_variable_buffer_local)
120141	(Fmake_local_variable, Fkill_local_variable, Flocal_variable_p):
120142	Don't pay attention to ->frame_local any more.
120143	(syms_of_data): Remove Qtrapping_frame_local and don't defsubr
120144	Smake_variable_frame_local.
120145
120146	* etc/NEWS (Incompatible Lisp Changes in Emacs 26.1): Announce removal
120147	of make-variable-frame-local.
120148
120149	* lisp/help-fns.el (describe-variable): Don't handle the now impossible
120150	frame-local case.
120151
120152	* lisp/subr.el (make-variable-frame-local): Remove obsolescence data.
120153
120154	* src/frame.c (store_frame_param):
120155	* src/eval.c (specbind): Don't pay attention to ->frame_local any more.
120156
120157	* src/widget.c (first_frame_p): Remove, unused.
120158
1201592016-12-21  Paul Eggert  <eggert@cs.ucla.edu>
120160
120161	Port dumping better to WSL
120162
120163	Problem reported by Angelo Graziosi in:
120164	https://lists.gnu.org/r/emacs-devel/2016-12/msg00822.html
120165	* src/sysdep.c (disable_address_randomization):
120166	Detect buggy platforms where 'personality' always returns 0.
120167
1201682016-12-21  Michael Albinus  <michael.albinus@gmx.de>
120169
120170	Remove gateway methods in Tramp
120171
120172	* doc/misc/tramp.texi (Top, Configuration): Remove section
120173	`Gateway methods', insert section `Firewalls' in menu.
120174	(History): Gateways are removed now.
120175	(Gateway methods): Remove section.
120176	(Multi-hops, Traces and Profiles): Don't reference to gateways anymore.
120177	(Firewalls): New section.
120178
120179	* etc/NEWS: Gateway methods in Tramp have been removed.
120180
120181	* lisp/net/tramp.el (tramp-methods): Adapt docstring.
120182	(tramp-file-name-port, tramp-accept-process-output): Simplify.
120183
120184	* lisp/net/tramp-gw.el: Remove.
120185
120186	* lisp/net/tramp-sh.el (tramp-gw-tunnel-method)
120187	(tramp-gw-socks-method): Remove declarations.
120188	(tramp-methods) <scp, scpx, ssh, sshx, telnet, nc, plink, pscp>:
120189	Remove `tramp-gw-args' and `tramp-default-port'.  (Bug#18967)
120190	(tramp-do-copy-or-rename-file-out-of-band)
120191	(tramp-compute-multi-hops, tramp-maybe-open-connection):
120192	Remove gateway support.
120193
120194	* test/lisp/net/tramp-tests.el (tramp-test03-file-name-defaults):
120195	Remove gateway tests.
120196
1201972016-12-20  Alan Mackenzie  <acm@muc.de>
120198
120199	Amend the version number of CC Mode 5.33 -> 5.32.99.  Don't merge to trunk.
120200
120201	lisp/progmodes/cc-defs.el: Amend the version number.
120202	etc/NEWS: Add an item explaining the change.
120203
1202042016-12-20  Tino Calancha  <tino.calancha@gmail.com>
120205
120206	files-test-read-file-in-: Delete temporary dir on exit
120207
120208	* test/lisp/files-tests.el (files-test-read-file-in-~):
120209	Create subdir inside dir.
120210
1202112016-12-20  Christopher Genovese  <genovese@cmu.edu>
120212
120213	ibuffer: New filters and commands
120214
120215	Add several new filters and improve documentation.
120216	See discussion on:
120217	https://lists.gnu.org/r/emacs-devel/2016-11/msg00399.html
120218	* lisp/ibuf-ext.el: Add paragraph to file commentary.
120219	(ibuffer-saved-filters, ibuffer-filtering-qualifiers)
120220	(ibuffer-filter-groups): Update doc string.
120221	(ibuffer-unary-operand): Add new function that transparently
120222	handles 'not' formats for compound filters.
120223	(ibuffer-included-in-filter-p): Handle 'not' fully; update doc string.
120224	(ibuffer-included-in-filter-p-1): Handle 'and' compound filters.
120225	(ibuffer-decompose-filter): Handle 'and' as well,
120226	and handle 'not' consistently with other uses.
120227	(ibuffer-and-filter): New defun analogous to 'ibuffer-or-filter'.
120228	(ibuffer--or-and-filter): New defun.
120229	(ibuffer-or-filter, ibuffer-and-filter): Use it.
120230	(ibuffer-format-qualifier): Handle 'and' filters as well.
120231	(ibuffer-filter-by-basename, ibuffer-filter-by-file-extension)
120232	(ibuffer-filter-by-directory, ibuffer-filter-by-starred-name)
120233	(ibuffer-filter-by-modified, ibuffer-filter-by-visiting-file):
120234	Add new pre-defined filters.
120235	(ibuffer-filter-chosen-by-completion): Add new interactive command
120236	for easily choosing a filter from the descriptions.
120237	* lisp/ibuffer.el (ibuffer-mode-map):
120238	Bind ibuffer-filter-by-basename, ibuffer-filter-by-file-extension,
120239	ibuffer-filter-by-starred-name, ibuffer-filter-by-modified,
120240	ibuffer-filter-by-visiting-file to '/b', '/.', '/*', '/i', '/v'
120241	respectively; bind 'ibuffer-or-filter', 'ibuffer-and-filter',
120242	'ibuffer-pop-filter' ,'ibuffer-pop-filter-group' and
120243	'ibuffer-filter-disable' to '/|', '/&', '/<up>', '/S-<up>'
120244	and '/ DEL' respectively.
120245	* test/lisp/ibuffer-tests.el (ibuffer-autoload): Add appropriate
120246	skip specification.
120247	Add menu entries for the new filters.
120248	(ibuffer-filter-inclusion-1, ibuffer-filter-inclusion-2
120249	ibuffer-filter-inclusion-3, ibuffer-filter-inclusion-4
120250	ibuffer-filter-inclusion-5, ibuffer-filter-inclusion-6
120251	ibuffer-filter-inclusion-7, ibuffer-filter-inclusion-8
120252	ibuffer-decompose-filter, ibuffer-and-filter
120253	ibuffer-or-filter): Add new tests; they are skipped unless
120254	ibuf-ext is loaded.
120255
1202562016-12-20  Mark Oteiza  <mvoteiza@udel.edu>
120257
120258	Update NEWS
120259
120260	* etc/NEWS (Image-Dired): New section.
120261
1202622016-12-20  Mark Oteiza  <mvoteiza@udel.edu>
120263
120264	Recognize graphicsmagick in image-dired
120265
120266	* lisp/image-dired.el (image-dired-cmd-create-thumbnail-program):
120267	(image-dired-cmd-create-thumbnail-options):
120268	(image-dired-cmd-create-temp-image-program):
120269	(image-dired-cmd-create-temp-image-options):
120270	(image-dired-cmd-create-standard-thumbnail-options):
120271	(image-dired-cmd-rotate-thumbnail-program):
120272	(image-dired-cmd-rotate-thumbnail-options): Account for existence of
120273	gm(1) executable.
120274
1202752016-12-20  Noam Postavsky  <npostavs@gmail.com>
120276
120277	Improve skeleton docstrings
120278
120279	* lisp/skeleton.el (skeleton-end-newline): Remove mention of
120280	`skeleton-end-hook', its default code was moved into `skeleton-insert'.
120281	(skeleton-insert): Mention `skeleton-end-newline' and move reference to
120282	`skeleton-end-hook' above the explanation of skeleton syntax.
120283
1202842016-12-20  Mark Oteiza  <mvoteiza@udel.edu>
120285
120286	Implement asynchronous thumbnail generation in image-dired
120287
120288	Additionally, all FOO-options defcustoms that were in fact shell command
120289	strings have been converted to argument lists.  Another method for
120290	shrinking PNG thumbs with optipng(1) has been added.
120291	* lisp/image-dired.el: Remove TODO item in commentary.
120292	(image-dired-cmd-create-thumbnail-options):
120293	(image-dired-cmd-create-temp-image-options):
120294	(image-dired-cmd-rotate-thumbnail-options):
120295	(image-dired-cmd-rotate-original-options):
120296	(image-dired-cmd-write-exif-data-options):
120297	(image-dired-cmd-read-exif-data-options): Convert to argument lists.
120298	(image-dired-cmd-pngnq-program, image-dired-cmd-pngcrush-program):
120299	Change string type to file.
120300	(image-dired-cmd-create-standard-thumbnail-command): Remove.
120301	(image-dired-cmd-pngnq-options):
120302	(image-dired-cmd-create-standard-thumbnail-options):
120303	(image-dired-cmd-optipng-program, image-dired-cmd-optipng-options):
120304	New defcustoms.
120305	(image-dired-queue, image-dired-queue-active-jobs):
120306	(image-dired-queue-active-limit): New variables.
120307	(image-dired-pngnq-thumb, image-dired-pngcrush-thumb):
120308	(image-dired-optipng-thumb): New functions.
120309	(image-dired-create-thumb-1): Renamed from image-dired-create-thumb.
120310	Use start-process instead of call-process.  Set file modes.  Trigger
120311	PNG file optimization in process sentinel.
120312	(image-dired-thumb-queue-run, image-dired-create-thumb): New functions.
120313	(image-dired-display-thumbs):
120314	(image-dired-create-thumbs): Don't expect call-process return value.
120315	(image-dired-display-image, image-dired-rotate-thumbnail): Use
120316	start-process instead of call-process.
120317	(image-dired-rotate-original, image-dired-set-exif-data):
120318	(image-dired-get-exif-data): Adapt to arguments being an arg list.
120319
1203202016-12-19  Andreas Schwab  <schwab@linux-m68k.org>
120321
120322	Protect change of window's buffer in vertical-motion against unwinds (bug#25209)
120323
120324	* src/indent.c (restore_window_buffer): New function.
120325	(Fvertical_motion): Use it to restore window's buffer.
120326
1203272016-12-19  Glenn Morris  <rgm@gnu.org>
120328
120329	Improve default load-path for uninstalled CANNOT_DUMP builds
120330
120331	* src/lread.c (load_path_default) [CANNOT_DUMP]:
120332	Use build load-path if we seem to be running uninstalled.  (Bug#24974)
120333	I think this became an issue several years ago when we stopped
120334	using EMACSLOADPATH in the Makefiles; however this change should
120335	improve the CANNOT_DUMP uninstalled case in general.
120336
1203372016-12-19  Eli Zaretskii  <eliz@gnu.org>
120338
120339	Improve documentation of 'w32-scroll-lock-modifier'
120340
120341	* doc/emacs/msdos.texi (Windows Keyboard): Document how to set up
120342	w32-scroll-lock-modifier so that Scroll Lock toggles the LED.
120343
120344	* src/w32fns.c (syms_of_w32fns) <w32-scroll-lock-modifier>: Doc
120345	fix.  (Bug#25204)
120346
1203472016-12-19  Eli Zaretskii  <eliz@gnu.org>
120348
120349	Document 'describe-fontset'
120350
120351	* doc/emacs/mule.texi (Fontsets): Document 'describe-fontset'.
120352	(Bug#25216)
120353
1203542016-12-19  Eli Zaretskii  <eliz@gnu.org>
120355
120356	Document 'describe-fontset'
120357
120358	* doc/emacs/mule.texi (Fontsets): Document 'describe-fontset'.
120359	(Bug#25216)
120360
1203612016-12-19  Eli Zaretskii  <eliz@gnu.org>
120362
120363	Fix crashes upon C-g on Posix TTY frames
120364
120365	* src/thread.h (struct thread_state): New member not_holding_lock.
120366	(maybe_reacquire_global_lock): Add prototype.
120367	* src/thread.c: Include syssignal.h.
120368	(maybe_reacquire_global_lock): New function.
120369	(really_call_select): Set the not_holding_lock member of the
120370	thread state before releasing the lock, and rest it after
120371	re-acquiring the lock when the select function returns.  Block
120372	SIGINT while doing this to make sure we are not interrupted on TTY
120373	frames.
120374	* src/sysdep.c (block_interrupt_signal, restore_signal_mask): New
120375	functions.
120376	* src/syssignal.h (block_interrupt_signal, restore_signal_mask):
120377	Add prototypes.
120378	* src/keyboard.c (read_char) [THREADS_ENABLED]: Call
120379	maybe_reacquire_global_lock.  (Bug#25178)
120380
1203812016-12-19  Sam Steingold  <sds@gnu.org>
120382
120383	avoid Eager macro-expansion failure: (void-function string-to-list)
120384
120385	* lisp/loadup.el [ns]: "ucs-normalize" uses `string-to-list' which is defined
120386	  in "mule-util", so we have to load "mule-util" before "ucs-normalize",
120387	  otherwise I get "Eager macro-expansion failure" on "make bootstrap"
120388
1203892016-12-19  Michael Albinus  <michael.albinus@gmx.de>
120390
120391	Fix Bug#24980
120392
120393	* lisp/ido.el (ido-add-virtual-buffers-to-list):
120394	Suppress Tramp invocation.  (Bug#24980)
120395
1203962016-12-18  Philipp Stephani  <phst@google.com>
120397
120398	Add a new compile error regexp for Clang includes
120399
120400	Clang uses a slight variation of GCC's include format, causing includes
120401	to be treated as warnings instead of informational messages.  Use a new
120402	regular expression instead.
120403
120404	* lisp/progmodes/compile.el
120405	(compilation-error-regexp-alist-alist): New element
120406	`clang-include' for Clang-style "included from" lines.
120407	* test/lisp/progmodes/compile-tests.el
120408	(compile-tests--test-regexps-data): Add unit test.
120409
1204102016-12-18  Alan Third  <alan@idiocy.org>
120411
120412	Reinstate ispell character offset (bug#25219)
120413
120414	* lisp/textmodes/ispell.el (ispell-process-line): insert -1 where
120415	ispell-offset used to be.
120416
1204172016-12-18  Mark Oteiza  <mvoteiza@udel.edu>
120418
120419	Bind new image-mode scroll commands in image-dired
120420
120421	* lisp/image-dired.el (image-dired-display-image-mode-map): Add bindings
120422	to new image-mode commands.
120423
1204242016-12-18  Noam Postavsky  <npostavs@gmail.com>
120425
120426	Fix rx-any with range with ?\] and ?-
120427
120428	* lisp/emacs-lisp/rx.el: Make sure not to produce a circular
120429	list (Bug#25123).
120430	* test/lisp/emacs-lisp/rx-tests.el (rx-char-any): New test.
120431
1204322016-12-18  Mark Oteiza  <mvoteiza@udel.edu>
120433
120434	Use floor of mtime instead of rounding for thumb property
120435
120436	This seems to be the correct thing to do, at least more in line with
120437	what at least one other implementation does.  Anything using
120438	gnome-desktop [0] effectively does the same, as
120439	gnome_desktop_thumbnail_is_valid applies atol(3) to mtime for
120440	comparison and time_t on GNU/Linux is a signed int.
120441	[0] https://git.gnome.org/browse/gnome-desktop/
120442	* lisp/image-dired.el (image-dired-create-thumb): Use floor here.
120443
1204442016-12-17  Reuben Thomas  <rrt@sc3d.org>
120445
120446	Fix spelling mistake in private defun name (Bug#25218)
120447
120448	lisp/textmodes/flyspell.el (flyspell-ajust-cursor-point): Rename to
120449	`flyspell-adjust-cursor-point'.
120450
1204512016-12-17  Reuben Thomas  <rrt@sc3d.org>
120452
120453	Remove XEmacs support from flyspell.el (Bug#25218)
120454
120455	lisp/textmodes/flyspell.el (flyspell-prog-mode, flyspell-mode-on):
120456	(flyspell-word, flyspell-delete-region-overlays):
120457	(flyspell-correct-word-before-point): Remove XEmacs support.
120458	(flyspell-xemacs-popup): Remove XEmacs-specific defun.
120459
1204602016-12-17  Michael Albinus  <michael.albinus@gmx.de>
120461
120462	More tests for Tramp
120463
120464	* lisp/net/tramp.el (tramp-drop-volume-letter): Handle quoted
120465	file names.
120466
120467	* lisp/net/tramp-sh.el (tramp-make-copy-program-file-name): Quote file
120468	name properly.
120469
120470	* test/lisp/net/tramp-tests.el (tramp-test05-expand-file-name):
120471	Mark quoted file name as absolute.  (Bug#25183)
120472	(tramp--test-windows-nt-and-batch)
120473	(tramp--test-windows-nt-and-pscp-psftp-p): New defuns.
120474	(tramp--test-windows-nt-or-smb-p): Rename from
120475	`tramp--test-smb-windows-nt-p'.  Adapt callees.
120476	(tramp--test-check-files): Improve checks for environment variables.
120477	(tramp-test33-special-characters)
120478	(tramp-test33-special-characters-with-stat)
120479	(tramp-test33-special-characters-with-perl)
120480	(tramp-test33-special-characters-with-ls, tramp-test34-utf8)
120481	(tramp-test34-utf8-with-stat, tramp-test34-utf8-with-perl)
120482	(tramp-test34-utf8-with-ls): Add more checks for skip.
120483
1204842016-12-17  Eli Zaretskii  <eliz@gnu.org>
120485
120486	Fix comments
120487
120488	* src/thread.h (struct thread_state): Fix comments.
120489	* src/process.c (wait_reading_process_output): Fix a typo in
120490	commentary.
120491
1204922016-12-17  Eli Zaretskii  <eliz@gnu.org>
120493
120494	Repair desktop restoration on text terminals
120495
120496	* lisp/desktop.el (desktop-restoring-frameset-p): Test for the GUI
120497	frame here, instead of in desktop-restoring-frameset.  That's
120498	because desktop-read wants to know whether frameset will actually
120499	be restored, and has fallback procedures up its sleeve when it
120500	won't be; these fallbacks need to be invoked when the frameset is
120501	not going to be restored.  (Bug#24298)
120502
1205032016-12-17  Eli Zaretskii  <eliz@gnu.org>
120504
120505	Fix crashes on MS-Windows during dumping
120506
120507	* src/unexw32.c (get_section_info): Make extra_bss_size be the
120508	maximum of extra_bss_size and extra_bss_size_static.  This avoids
120509	computing the size of the output file smaller than it actually
120510	needs to be, which then causes copy_executable_and_dump_data to
120511	write beyond the requested size of the file mapping, thus relying
120512	on the OS roundup to page boundary to save us from ourselves.  See
120513	https://lists.gnu.org/r/emacs-devel/2016-12/msg00642.html
120514	for the details.
120515
120516	* lib/stdio-impl.h: Revert the workaround fix of not including
120517	errno.h for MinGW.
120518
1205192016-12-17  Dmitry Gutov  <dgutov@yandex.ru>
120520
120521	Ignore forward-sexp-function in js-mode indentation code
120522
120523	* lisp/progmodes/js.el (js--multi-line-declaration-indentation)
120524	(js--maybe-goto-declaration-keyword-end):
120525	Bind forward-sexp-function to nil (bug#25215).
120526
1205272016-12-16  Mark Oteiza  <mvoteiza@udel.edu>
120528
120529	Be more selective clearing the image cache
120530
120531	* lisp/image-dired.el (image-dired-create-thumbs):
120532	(image-dired-rotate-thumbnail, image-dired-refresh-thumb): Only clear
120533	the current thumbnail file from the image cache.
120534
1205352016-12-16  Eli Zaretskii  <eliz@gnu.org>
120536
120537	Unbreak the MinGW build
120538
120539	* lib/stdio-impl.h [__MINGW32__]: Don't include errno.h.  Without
120540	this, temacs crashes while dumping.
120541
1205422016-12-16  Nicolas Petton  <nicolas@petton.fr>
120543
120544	Make seq-into return the sequence when no conversion needed
120545
120546	* lisp/emacs-lisp/seq.el (seq-into): Do not convert the sequence when
120547	  no conversion is needed.
120548	* test/lisp/emacs-lisp/seq-tests.el (test-seq-into-and-identity): Add
120549	  a regression test checking for identity.
120550
1205512016-12-16  Eli Zaretskii  <eliz@gnu.org>
120552
120553	Improve documentation of 'define-coding-system'
120554
120555	* lisp/international/mule.el (define-coding-system): Warn against
120556	possible infinite recursion in pre-write-conversion and
120557	post-read-conversion functions.  (Bug#25203)
120558
1205592016-12-16  Mark Oteiza  <mvoteiza@udel.edu>
120560
120561	New commands image-scroll-left and image-scroll-right
120562
120563	* etc/NEWS: Mention them.
120564	* lisp/image-mode.el (image-scroll-left, image-scroll-right): New
120565	functions.
120566
1205672016-12-16  Mark Oteiza  <mvoteiza@udel.edu>
120568
120569	More image-dired refactoring
120570
120571	* lisp/image-dired.el (image-dired-thumbnail-mode):
120572	(image-dired-display-image-mode): Add :group 'image-dired so
120573	customize-mode works.
120574	(image-dired-display-image): Rearrange.
120575	(image-dired-copy-with-exif-file-name): This map is for side effect.
120576	(image-dired-dired-edit-comment-and-tags): Just use #'identity.
120577
1205782016-12-16  Mark Oteiza  <mvoteiza@udel.edu>
120579
120580	* lisp/image-dired.el: Turn on lexical-binding.
120581
1205822016-12-16  Mark Oteiza  <mvoteiza@udel.edu>
120583
120584	Teach image-dired to also generate large thumbs
120585
120586	* lisp/image-dired.el (image-dired-thumbnail-storage): Add
120587	standard-large option.
120588	(image-dired-thumb-size): Add condition for standard-large storage.
120589	(image-dired-insert-thumbnail): Check for new option.  Change
120590	thumbnail path conditionally.
120591	(image-dired-thumb-size): New function.
120592	(image-dired-create-thumb, image-dired-line-up-dynamic): Use it.
120593
1205942016-12-15  Paul Eggert  <eggert@cs.ucla.edu>
120595
120596	Merge from gnulib
120597
120598	This incorporates:
120599	2016-12-14 xalloc-oversized: check for PTRDIFF_MAX too
120600	2016-12-12 fpending: port to native Windows with MSVC
120601	* .gitignore: Do not ignore lib/stdio-impl.h.
120602	* lib/fpending.c, lib/xalloc-oversized.h, m4/fpending.m4:
120603	Copy from gnulib.
120604	* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
120605	* lib/stdio-impl.h:
120606	New file, copied from gnulib.
120607	* nt/gnulib.mk (EXTRA_DIST): Add stdio-impl.h.
120608
1206092016-12-15  Paul Eggert  <eggert@cs.ucla.edu>
120610
120611	* etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
120612	Append newline.
120613
1206142016-12-15  Mark Oteiza  <mvoteiza@udel.edu>
120615
120616	Don't abuse princ and spam messages
120617
120618	* lisp/image-dired.el (image-dired-format-properties-string): Nix princ.
120619	(image-dired-display-thumb-properties):
120620	(image-dired-dired-display-properties): Nix princ.  Bind
120621	message-log-max to nil.
120622
1206232016-12-15  Mark Oteiza  <mvoteiza@udel.edu>
120624
120625	Inherit things from special-mode and image-mode
120626
120627	* lisp/image-dired.el: Require image-mode library.
120628	(image-dired-thumbnail-mode-map): Remove superfluous binding.
120629	(image-dired-display-image-mode-map): Remove superfluous binding.
120630	Add movement remaps from image-mode-map.
120631	(image-dired-thumbnail-mode): Derive from special-mode.
120632	(image-dired-display-image-mode): Derive from special-mode. Call
120633	image-mode-setup-winprops.
120634
1206352016-12-15  Mark Oteiza  <mvoteiza@udel.edu>
120636
120637	Fix some image-dired customization types
120638
120639	* lisp/image-dired.el (image-dired): Add info link to defgroup.
120640	(image-dired-dir, image-dired-gallery-dir): Set type to directory.
120641	(image-dired-db-file, image-dired-temp-image-file):
120642	(image-dired-cmd-create-thumbnail-program):
120643	(image-dired-cmd-create-temp-image-program):
120644	(image-dired-cmd-rotate-thumbnail-program):
120645	(image-dired-cmd-rotate-original-program):
120646	(image-dired-temp-rotate-image-file):
120647	(image-dired-cmd-write-exif-data-program):
120648	(image-dired-cmd-read-exif-data-program): Set type to file.
120649	(image-dired-create-thumb, image-dired-line-up-dynamic): Check storage
120650	type at runtime, since setting image-dired-thumb-size does not
120651	automatically set image-dired-thumb-width and image-dired-thumb-height.
120652
1206532016-12-15  Eli Zaretskii  <eliz@gnu.org>
120654
120655	Prevent crashes in xg_select due to concurrency
120656
120657	* src/xgselect.c (xg_select): Don't call Glib functions that use
120658	'context' if we failed to acquire it.  This means some other
120659	thread owns the context, in which case both using the context and
120660	calling block_input/unblock_input will step on that thread's toes
120661	and eventually lead to crashes.  (Bug#25172)
120662
1206632016-12-15  Nicolas Petton  <nicolas@petton.fr>
120664
120665	Fix circular list handling in seq-mapn
120666
120667	* lisp/emacs-lisp/seq.el (seq-mapn): Do not copy list arguments.
120668	* test/lisp/emacs-lisp/seq-tests.el (test-seq-mapn-circular-lists):
120669	  Add a regression test.
120670
1206712016-12-15  Michael Albinus  <michael.albinus@gmx.de>
120672
120673	Check in tramp-tests.el, that environment variables are set correctly
120674
120675	* test/lisp/net/tramp-tests.el (tramp--test-check-files):
120676	Check also, that environment variables are set correctly.
120677
1206782016-12-15  Dominique Quatravaux  <dominique.quatravaux@epfl.ch>  (tiny change)
120679
120680	Protect environment variables with double quotes in Tramp
120681
120682	* lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
120683	Protect environment variables with double quotes.
120684
1206852016-12-15  Tino Calancha  <tino.calancha@gmail.com>
120686
120687	* lisp/ibuf-macs.el (define-ibuffer-filter): Wrap ,@body in a progn.
120688
1206892016-12-15  Mark Oteiza  <mvoteiza@udel.edu>
120690
120691	* lisp/image-dired.el (image-dired-create-thumb): Create parent directories.
120692
1206932016-12-14  Mark Oteiza  <mvoteiza@udel.edu>
120694
120695	* lisp/image-mode.el (image-mode-winprops-alist): Add docstring.
120696
1206972016-12-14  Mark Oteiza  <mvoteiza@udel.edu>
120698
120699	Recognize pngnq or pngnq-s9
120700
120701	* lisp/image-dired.el (image-dired-cmd-pngnq-program): Also consider
120702	pngnq-s9 as a possible executable.
120703
1207042016-12-14  Mark Oteiza  <mvoteiza@udel.edu>
120705
120706	Update standard image-dired thumbnail location
120707
120708	* lisp/image-dired.el (image-dired-thumb-name): Conform to the latest
120709	standard: consider XDG_CACHE_HOME, falling back on ~/.cache.
120710
1207112016-12-14  Mark Oteiza  <mvoteiza@udel.edu>
120712
120713	Reset window scroll when displaying an image
120714
120715	When viewing a large image full size and scrolling, for instance, to
120716	the lower right corner, then selecting a much smaller image in the
120717	thumbnail buffer, the window stays scrolled so the new image is out of
120718	the window.  One must scroll back to the "origin" to view the new
120719	displayed image, or just kill the image-dired-display-image buffer and
120720	try again.  This fixes the issue.
120721	* lisp/image-dired.el (image-dired-display-window-width):
120722	(image-dired-display-window-height): Operate on a window as argument.
120723	(image-dired-display-image): Bind (image-dired-display-window) and use
120724	it. Set window vscroll and hscroll to zero when refreshing the
120725	buffer's contents.
120726
1207272016-12-14  Mark Oteiza  <mvoteiza@udel.edu>
120728
120729	More image-dired polish
120730
120731	* lisp/image-dired.el (image-dired-file-name-at-point): New function.
120732	(image-dired-thumbnail-mode, image-dired-display-image-mode): Disable
120733	undo list. Add image-dired-file-name-at-point to
120734	file-name-at-point-functions to facilitate find-file and friends.
120735	(image-dired-thumbnail-display-external):
120736	(image-dired-dired-display-external): Use start-process instead, to
120737	avoid needlessly blocking and using a shell.
120738
1207392016-12-13  Phillip Lord  <phillip.lord@russet.org.uk>
120740
120741	Replace ldefs-boot with a much smaller file
120742
120743	 * Makefile.in (bootstrap-build,generate-ldefs-boot): New targets.
120744	   (bootstrap): Depend on bootstrap-build.
120745	 * admin/ldefs-clean.el: New file.
120746	 * lisp/Makefile.in (compile-first): Depend on loaddefs.el
120747	 * lisp/ldefs-boot.el: Remove.
120748	 * lisp/ldefs-boot-auto.el: New file.
120749	 * lisp/ldefs-boot-manual.el: New file.
120750	 * lisp/loadup.el: Load ldefs-boot-manual.el.
120751	 * src/emacs.c (generating_ldefs_boot): New variable.
120752	   (main): Check whether we are generating ldefs.
120753	 * src/eval.c (autoload-do-load): Dump autoload forms to stderr when
120754	   requested.
120755	 * src/lisp.h (generating_ldefs_boot): New variable.
120756	 * admin/gitmerge.el, admin/make-tarball.txt, admin/notes/copyright,
120757	   lisp/Makefile.in, lisp/cus-dep.el, lisp/emacs-lisp/elint.el,
120758	   lisp/finder.el, lisp/loadup.el, msdos/mainmake.v2: Update reference to
120759	   ldefs-boot.
120760	 * admin/update_autogen: Alter mechanism for ldefs-boot generation.
120761
1207622016-12-13  Reuben Thomas  <rrt@sc3d.org>
120763
120764	Remove support for aspell < 0.60 (from 2004)
120765
120766	lisp/textmodes/ispell.el (ispell-check-version): Require Aspell 0.60.
120767	(ispell-aspell-dictionary-alist): Remove check that we have Aspell 0.60.
120768
1207692016-12-13  Reuben Thomas  <rrt@sc3d.org>
120770
120771	Minor docstring and comment fixes to ispell.el
120772
120773	lisp/textmodes/ispell.el (ispell-aspell-dictionary-alist): Mention
120774	ispell-aspell-dictionary-alist, not ispell-dictionary-alist.
120775	(ispell-set-spellchecker-params): Change double-single quotes to
120776	single single quotes in comment.
120777
1207782016-12-13  Reuben Thomas  <rrt@sc3d.org>
120779
120780	Remove unused variable
120781
120782	* lisp/textmodes/ispell.el (current-ispell-directory): Remove.
120783
1207842016-12-13  Reuben Thomas  <rrt@sc3d.org>
120785
120786	Remove XEmacs-specific ispell-with-no-warnings
120787
120788	* lisp/textmodes/ispell.el (ispell-with-no-warnings): Remove this
120789	defmacro, needed only for XEmacs.
120790	(ispell-command-loop, ispell-message): Use with-no-warnings directly.
120791
1207922016-12-13  Reuben Thomas  <rrt@sc3d.org>
120793
120794	Remove meaningless defconst ispell-version
120795
120796	* lisp/textmodes/ispell.el (ispell-version): Since ispell.el is now
120797	firmly part of Emacs, and the version hasn’t changed since 2003, and
120798	isn’t used anywhere, remove it.  3rd-party code can better use the
120799	Emacs version, or feature or function checks.
120800	(ispell-check-version): No longer report ispell.el version.
120801
1208022016-12-13  Reuben Thomas  <rrt@sc3d.org>
120803
120804	Remove boundp test for always-bound symbol
120805
120806	* lisp/textmodes/ispell.el (ispell-message): mail-yank-prefix is
120807	defvar’d at the top of the file, so remove a test to see if it is
120808	bound.
120809
1208102016-12-13  Reuben Thomas  <rrt@sc3d.org>
120811
120812	Remove support for ispell < 3.1.12
120813
120814	* lisp/textmodes/ispell.el (ispell-offset): Remove.
120815	(ispell-check-version): Require ispell >= 3.1.12, released in 1994.
120816	(ispell-process-line): No longer use ispell-offset.
120817
1208182016-12-13  Reuben Thomas  <rrt@sc3d.org>
120819
120820	Remove unused constant
120821
120822	* lisp/textmodes/ispell.el (ispell-required-version): Remove.
120823
1208242016-12-13  Reuben Thomas  <rrt@sc3d.org>
120825
120826	Remove support for old versions of supercite and GNUS from ispell.el
120827
120828	* lisp/textmodes/ispell.el (ispell-message): Require supercite >= 3.0
120829	and GNUS >= 5.  Not exactly the bleeding edge!
120830
1208312016-12-13  Reuben Thomas  <rrt@sc3d.org>
120832
120833	Remove remaining mentions of XEmacs from ispell.el
120834
120835	* lisp/textmodes/ispell.el (ispell-valid-dictionary-list):
120836	(ispell-add-per-file-word-list): Remove mentions of XEmacs from
120837	comments.
120838
1208392016-12-13  Reuben Thomas  <rrt@sc3d.org>
120840
120841	Remove XEmacs-specific minibuffer handling code from ispell.el
120842
120843	* lisp/textmodes/ispell.el (ispell-init-process): Assume we are not in
120844	XEmacs.
120845
1208462016-12-13  Reuben Thomas  <rrt@sc3d.org>
120847
120848	Remove XEmacs-specific horizontal scrollbar handling in ispell.el
120849
120850	* lisp/textmodes/ispell.el (ispell-command-loop): Remove
120851	XEmacs-specific code.
120852
1208532016-12-13  Reuben Thomas  <rrt@sc3d.org>
120854
120855	Remove XEmacs-specific code dealing with enable-multibyte-characters
120856
120857	* lisp/textmodes/ispell.el (ispell-decode-string):
120858	(ispell-init-process):  Remove XEmacs-specific guard.
120859
1208602016-12-13  Reuben Thomas  <rrt@sc3d.org>
120861
120862	Remove XEmacs-specific code from ispell.el
120863
120864	* lisp/textmodes/ispell.el (ispell-menu-xemacs): Remove
120865	(ispell-menu-map-needed): Remove XEmacs-specific check.
120866	(ispell-word): Remove XEmacs-specific extent code.
120867	(ispell-init-process): Remove XEmacs workaround for local add-hook.
120868	Assume we have set-process-query-on-exit-flag.
120869	(ispell-kill-ispell, ispell-change-dictionary): Remove XEmacs
120870	workaround for called-interactively-p.
120871
1208722016-12-13  Reuben Thomas  <rrt@sc3d.org>
120873
120874	Remove some commented-out code
120875
120876	lisp/textmodes/ispell.el (ispell-process)
120877	ispell-valid-dictionary-list): Remove commented-out code.
120878
1208792016-12-13  Reuben Thomas  <rrt@sc3d.org>
120880
120881	Remove XEmacs and old Emacs highlighting code
120882
120883	* lisp/textmodes/ispell.el
120884	(ispell-highlight-spelling-error-xemacs): Remove.
120885	(ispell-highlight-spelling-error): Assume display-color-p exists.
120886
1208872016-12-13  Reuben Thomas  <rrt@sc3d.org>
120888
120889	Assume Emacs supports [:alpha:] in regexps
120890
120891	* lisp/textmodes/ispell.el (ispell-emacs-alpha-regexp): Remove.
120892	(ispell-set-spellchecker-params): Remove tests of
120893	ispell-emacs-alpha-regexp.
120894
1208952016-12-13  Reuben Thomas  <rrt@sc3d.org>
120896
120897	Remove some XEmacs-specific code from ispell.el
120898
120899	* lisp/textmodes/ispell.el: Remove XEmacs menubar setup.
120900	(ispell-int-char): Remove.
120901
1209022016-12-13  Reuben Thomas  <rrt@sc3d.org>
120903
120904	Generalize over-specific documentation
120905
120906	* lisp/textmodes/ispell.el (ispell-personal-dictionary): Rather than
120907	document precise personal wordlist filenames for only two supported
120908	spelling checkers, simply say that the default personal dictionary
120909	depends on the chosen spelling checker.  The user can check the
120910	spelling checker’s documentation if necessary.  This is simpler, and
120911	works for other supported (and future, or unknown) spelling checkers.
120912
1209132016-12-13  Reuben Thomas  <rrt@sc3d.org>
120914
120915	Remove tests for built-in functions
120916
120917	* lisp/textmodes/ispell.el (buffer-substring-no-properties): Remove
120918	back-up definition.
120919	(ispell-add-per-file-word-list): Remove tests for comment-padright and
120920	comment-normalize-vars.
120921
1209222016-12-13  Reuben Thomas  <rrt@sc3d.org>
120923
120924	Remove unused ispell-looking-back
120925
120926	* lisp/textmodes/ispell.el (ispell-looking-back): Remove unused alias.
120927
1209282016-12-13  Reuben Thomas  <rrt@sc3d.org>
120929
120930	Assume we have version<= for checking ispell version
120931
120932	* lisp/textmodes/ispell.el (ispell-check-minver): Remove.
120933	(ispell-check-version): Use version<= directly.
120934
1209352016-12-13  Reuben Thomas  <rrt@sc3d.org>
120936
120937	Remove ispell.el pre-GNU Emacs comments
120938
120939	* lisp/textmodes/ispell.el (Commentary): Remove original maintainer
120940	  details, as Emacs version, bug report address and so forth should be
120941	  used instead for this version.  Remove in-line change history; use
120942	  git instead.
120943
1209442016-12-13  Mark Oteiza  <mvoteiza@udel.edu>
120945
120946	More small fixes for image-dired
120947
120948	* lisp/image-dired.el: Fix commentary to refer to correct Emacs manual
120949	node.
120950	(image-dired--with-db-file): Add declare forms.
120951	(image-dired-hidden-p): Rewrite with cl-loop.  It's not necessary to
120952	run through the whole list.
120953
1209542016-12-13  Mark Oteiza  <mvoteiza@udel.edu>
120955
120956	Remove image-dired-kill-buffer-and-window
120957
120958	This breaks window layout, especially when quitting a
120959	image-dired-display-image-mode buffer.
120960	* lisp/image-dired.el (image-dired-thumbnail-mode-map):
120961	(image-dired-display-image-mode-map): Replace in keymap and menu items
120962	bindings to image-dired-kill-buffer-and-window with quit-window.
120963	(image-dired-kill-buffer-and-window): Remove.
120964
1209652016-12-13  Mark Oteiza  <mvoteiza@udel.edu>
120966
120967	Replace image-dired-setup-dired-keybindings with a minor mode
120968
120969	* lisp/image-dired.el (image-dired-thumbnail-mode): Fix docstring to
120970	remove mention of nonexistent image-dired-dired and to refer to the
120971	new minor mode.
120972	(image-dired-minor-mode-map): New keymap assimilated from
120973	image-dired-setup-dired-keybindings.  In the future, the keymap parent
120974	should be removed, and perhaps also the duplicate bindings that
120975	already exist in dired-mode-map.
120976	(image-dired-setup-dired-keybindings): Remove.  Replace with an
120977	obsolete function alias.
120978	(image-dired-minor-mode): New minor mode, assuming the role of
120979	image-dired-setup-dired-keybindings.
120980
1209812016-12-13  Paul Eggert  <eggert@cs.ucla.edu>
120982
120983	* test/src/regex-resources/PTESTS: Convert to UTF-8.
120984
1209852016-12-13  Noam Postavsky  <npostavs@gmail.com>
120986
120987	Clarify thread-signal semantics
120988
120989	* doc/lispref/threads.texi (Basic Thread Functions): Explain that the
120990	thread will be signaled as soon as possible.
120991
1209922016-12-13  Noam Postavsky  <npostavs@gmail.com>
120993
120994	Clean up var watcher disabling on thread switching
120995
120996	* src/data.c (Fset_default): Move code into new C level function,
120997	`set_default_internal'.
120998	(set_default_internal): New function, like `Fset_default' but also takes
120999	additional bindflag parameter.
121000	(set_internal): Only call `notify_variable_watchers' if bindflag is not
121001	SET_INTERNAL_THREAD_SWITCH.
121002	* src/eval.c (do_specbind, do_one_unbind): Add bindflag parameter,
121003	passed on to set_internal and set_default_internal.  Adjust callers.
121004	(rebind_for_thread_switch, unbind_for_thread_switch): Pass
121005	SET_INTERNAL_THREAD_SWITCH to do_specbind, do_one_unbind instead of
121006	temporarily adjusting symbol's trapped_write field.
121007
1210082016-12-13  Glenn Morris  <rgm@gnu.org>
121009
121010	Minor fix for define-derived-mode
121011
121012	* lisp/emacs-lisp/derived.el (define-derived-mode):
121013	Do not let eg eval-defun reset the values of syntax or abbrev tables,
121014	since they might have been defined externally.  (Bug#16160)
121015
1210162016-12-12  Paul Eggert  <eggert@cs.ucla.edu>
121017
121018	* build-aux/git-hooks/pre-commit: Add whitespace comment.
121019
1210202016-12-12  Clément Pit--Claudel  <clement.pitclaudel@live.com>
121021
121022	Move backtrace to ELisp using a new mapbacktrace primitive
121023
121024	* src/eval.c (get_backtrace_starting_at, backtrace_frame_apply)
121025	(Fmapbacktrace, Fbacktrace_frame_internal): New functions.
121026	(get_backtrace_frame, Fbacktrace_debug): Use `get_backtrace_starting_at'.
121027
121028	* lisp/subr.el (backtrace--print-frame): New function.
121029	(backtrace): Reimplement using `backtrace--print-frame' and `mapbacktrace'.
121030	(backtrace-frame): Reimplement using `backtrace-frame--internal'.
121031
121032	* lisp/emacs-lisp/debug.el (debugger-setup-buffer): Pass a base to
121033	`mapbacktrace' instead of searching for "(debug" in the output of
121034	`backtrace'.
121035
121036	* test/lisp/subr-tests.el (subr-test-backtrace-simple-tests)
121037	(subr-test-backtrace-integration-test): New tests.
121038
121039	* doc/lispref/debugging.texi (Internals of Debugger): Document
121040	`mapbacktrace' and missing argument BASE of `backtrace-frame'.
121041
1210422016-12-12  Paul Eggert  <eggert@cs.ucla.edu>
121043
121044	Use C99 syntax for font drivers
121045
121046	Problem reported by Daniel Colascione in:
121047	https://lists.gnu.org/r/emacs-devel/2016-12/msg00515.html
121048	* src/ftcrfont.c (ftcrfont_driver):
121049	* src/ftfont.c (ftfont_driver):
121050	* src/ftxfont.c (ftxfont_driver):
121051	* src/macfont.m (macfont_driver):
121052	* src/nsfont.m (nsfont_driver):
121053	* src/xfont.c (xfont_driver):
121054	* src/xftfont.c (xftfont_driver):
121055	Use C99 syntax, not the old GNU C syntax.
121056
1210572016-12-12  Glenn Morris  <rgm@gnu.org>
121058
121059	Obsolete gs.el
121060
121061	* lisp/gs.el: Move to lisp/obsolete.  (Bug#1524)
121062	* doc/lispref/display.texi (Image Formats): Remove postscript.
121063	(PostScript Images): Remove section.
121064	* doc/lispref/elisp.texi: Update menu.
121065
1210662016-12-12  Glenn Morris  <rgm@gnu.org>
121067
121068	Un-revert recent Ffset change
121069
121070	* src/data.c (Ffset): Reinstate the check for "nil".
121071
1210722016-12-12  Glenn Morris  <rgm@gnu.org>
121073
121074	Minor advice.el fix
121075
121076	* lisp/emacs-lisp/advice.el (ad-preactivate-advice):
121077	Avoid setting the function definition of nil.
121078	This was happening during bootstrap of org-compat.el,
121079	apparently due to eager macro expansion of code behind
121080	a (featurep 'xemacs) test.
121081
1210822016-12-12  Eli Zaretskii  <eliz@gnu.org>
121083
121084	Make etags-tests work in out-of-tree builds
121085
121086	* test/lisp/progmodes/etags-tests.el (etags-bug-158)
121087	(etags-bug-23164): Make them work in an out-of-tree build.
121088	Reported by Ken Brown <kbrown@cornell.edu>.
121089
1210902016-12-12  Eli Zaretskii  <eliz@gnu.org>
121091
121092	Avoid crashing if a new thread is signaled right away
121093
121094	* src/thread.c (post_acquire_global_lock): Don't raise the pending
121095	signal if the thread's handlers were not yet set up, as that will
121096	cause Emacs to exit with a fatal error.  This can happen if a
121097	thread is signaled as soon as make-thread returns, before the new
121098	thread had an opportunity to acquire the global lock, set up the
121099	handlers, and call the thread function.
121100
121101	* test/src/thread-tests.el (thread-signal-early): New test.
121102
1211032016-12-12  Eli Zaretskii  <eliz@gnu.org>
121104
121105	Fix point motion in cloned buffers
121106
121107	* src/thread.c (post_acquire_global_lock): Call
121108	set_buffer_internal_2 instead of tricking set_buffer_internal_1
121109	into resetting the current buffer even if it didn't change.  This
121110	avoids bug#25165, caused by failing to record the modified values
121111	of point and mark, because current_buffer was set to NULL.  Also,
121112	don't bother re-setting the buffer if there was no thread switch,
121113	as that just wastes cycles.
121114	* src/buffer.c (set_buffer_internal_2): New function, with most of
121115	the body of set_buffer_internal_1, but without the test for B
121116	being identical to the current buffer.
121117	(set_buffer_internal_1): Call set_buffer_internal_2 if B is not
121118	identical to the current buffer.
121119	* src/buffer.h (set_buffer_internal_2): Add prototype.
121120
121121	* test/src/thread-tests.el (thread-sticky-point): New test.
121122
1211232016-12-12  Michael Albinus  <michael.albinus@gmx.de>
121124
121125	Further improvements in Tramp's file name unquoting
121126
121127	* lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy)
121128	(tramp-adb-handle-write-region): Unquote localname.
121129	(tramp-adb-handle-copy-file): Implement direct copy on remote device.
121130	(tramp-adb-handle-rename-file): Quote arguments, add "-f" to force.
121131
121132	* lisp/net/tramp.el (tramp-file-name-unquote-localname): New defun.
121133	(tramp-handle-file-name-case-insensitive-p):
121134	* lisp/net/tramp-gvfs.el (tramp-gvfs-get-file-attributes)
121135	(tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
121136	(tramp-gvfs-maybe-open-connection):
121137	* lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
121138	* lisp/net/tramp-smb.el (tramp-smb-get-share)
121139	(tramp-smb-get-localname): Use it.
121140
121141	* test/lisp/net/tramp-tests.el (tramp--test-docker-p): New defun.
121142	(tramp--test-special-characters, tramp-test34-utf8)
121143	(tramp-test34-utf8-with-stat, tramp-test34-utf8-with-perl)
121144	(tramp-test34-utf8-with-ls): Use it.
121145
1211462016-12-12  Martin Rudalics  <rudalics@gmx.at>
121147
121148	Strengthen conditions for resizing sibling windows (Bug#25169)
121149
121150	* lisp/window.el (window-resize, delete-window): Resize other siblings
121151	only if `window-combination-resize' equals t (Bug#25169).
121152
1211532016-12-12  Noam Postavsky  <npostavs@gmail.com>
121154
121155	Quote filenames containing '~' in prompts
121156
121157	When in a directory named '~', the default value given by
121158	`read-file-name' should be quoted by prepending '/:', in order to
121159	prevent it from being interpreted as referring to the $HOME
121160	directory (Bug#16984).
121161
121162	* lisp/minibuffer.el (minibuffer-maybe-quote-filename): New function.
121163	(completion--sifn-requote, read-file-name-default): Use it instead of
121164	`minibuffer--double-dollars'.
121165	* test/lisp/files-tests.el (files-test-read-file-in-~): Test it.
121166
1211672016-12-11  Eli Zaretskii  <eliz@gnu.org>
121168
121169	Undo part of last change
121170
121171	* src/thread.h:
121172	* src/keyboard.c:
121173	* src/keyboard.h: Undo part of last change:
121174	input_available_clear_time is again a global variable.
121175
1211762016-12-11  Eli Zaretskii  <eliz@gnu.org>
121177
121178	Avoid aborts when a thread signals an error
121179
121180	* src/thread.h (struct thread_state): Add members
121181	m_waiting_for_input and m_input_available_clear_time.
121182	(waiting_for_input, input_available_clear_time): New macros.
121183	* src/keyboard.c (waiting_for_input, input_available_clear_time):
121184	Remove; they are now macros that reference the current thread.
121185	(Bug#25171)
121186	* src/w32select.c: Don't include keyboard.h.
121187
121188	* test/src/thread-tests.el (thread-errors): New test.
121189
1211902016-12-11  Philipp Stephani  <phst@google.com>
121191
121192	Clean up compile-tests.el
121193
121194	Switch to lexical binding.  Make checkdoc happy.
121195
121196	* test/lisp/progmodes/compile-tests.el (compile--test-error-line)
121197	(compile-test-error-regexps): Instead of checking a single Boolean
121198	value, use `should' for each attribute of the message to be compared.
121199	(compile-tests--test-regexps-data): Document sixth list element
121200	TYPE.
121201
1212022016-12-11  Michael Albinus  <michael.albinus@gmx.de>
121203
121204	Fix Bug#25162
121205
121206	* doc/emacs/files.texi (Reverting): Document
121207	auto-revert-remote-files and auto-revert-verbose.
121208
121209	* lisp/autorevert.el (auto-revert-verbose, auto-revert-mode)
121210	(auto-revert-tail-mode, global-auto-revert-mode): Fix docstring.
121211
1212122016-12-11  Glenn Morris  <rgm@gnu.org>
121213
121214	Fix a typo in define-abbrev-table
121215
121216	* lisp/abbrev.el (define-abbrev-table): Fix typo in docstring handling.
121217
1212182016-12-11  Glenn Morris  <rgm@gnu.org>
121219
121220	Improve previous cperl-mode change
121221
121222	* lisp/progmodes/cperl-mode.el (cperl-mode-abbrev-table):
121223	Improve previous change.
121224
1212252016-12-11  Glenn Morris  <rgm@gnu.org>
121226
121227	Mark default cperl abbrevs as system ones
121228
121229	* lisp/progmodes/cperl-mode.el (cperl-mode):
121230	Mark our abbrevs as system ones.  (Bug#10934)
121231
1212322016-12-11  Glenn Morris  <rgm@gnu.org>
121233
121234	Revert earlier Ffset change
121235
121236	* src/data.c (Ffset): Allow nil again, since it caused
121237	eager macro-expansion failures.
121238
1212392016-12-11  Glenn Morris  <rgm@gnu.org>
121240
121241	Tweaks for message bogus address detection
121242
121243	* lisp/gnus/message.el (message-bogus-recipient-p):
121244	Do not require "@", since some mailers deliver to local addresses
121245	without one.  (Bug#23054)
121246	Move "@.*@" from here...
121247	(message-bogus-addresses): ...to here, so it can be customized.
121248
1212492016-12-11  Glenn Morris  <rgm@gnu.org>
121250
121251	Do not allow nil to be defined as a function
121252
121253	* lisp/emacs-lisp/byte-run.el (defun):
121254	* src/data.c (Ffset): Do not allow "nil".  (Bug#25110)
121255
1212562016-12-11  Glenn Morris  <rgm@gnu.org>
121257
121258	Bump makeinfo requirement from 4.7 to 4.13
121259
121260	* configure.ac: Bump makeinfo version requirement from 4.7 to 4.13.
121261	We need at least 4.8, and that may be buggy, so go for the last
121262	of the 4 series, which is 8 years old.  (Bug#25108)
121263
1212642016-12-11  Glenn Morris  <rgm@gnu.org>
121265
121266	Fixes related to select-enable-clipboard
121267
121268	* lisp/menu-bar.el (clipboard-yank, clipboard-kill-ring-save)
121269	(clipboard-kill-region):
121270	* lisp/eshell/esh-io.el (eshell-virtual-targets)
121271	(eshell-clipboard-append):
121272	Replace option gui-select-enable-clipboard with
121273	select-enable-clipboard; renamed October 2014.  (Bug#25145)
121274
1212752016-12-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
121276
121277	Add some sanity checking of defun arglist
121278
121279	* lisp/emacs-lisp/byte-run.el (defun):
121280	Check for malformed argument lists.  (Bug#15715)
121281
1212822016-12-11  Matt Armstrong  <marmstrong@google.com>  (tiny change)
121283
121284	Minor shell-mode fix for zsh
121285
121286	* lisp/shell.el (shell-mode): Prevent shell-dirstack-query
121287	becoming confused by zsh abbreviations.  (Bug#24632)
121288
1212892016-12-10  Noam Postavsky  <npostavs@gmail.com>
121290
121291	Define struct predicate before acccesors
121292
121293	The accessor functions use the predicate function, which causes problems
121294	when reloading after unload-feature: the compiler-macro property is
121295	still present on the predicate symbol, and the compiler fails to find
121296	the definition when trying to inline it into the accessor
121297	function (Bug#25088).
121298
121299	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Move predicate definition
121300	before field accessor definitions.
121301
1213022016-12-10  Andreas Schwab  <schwab@linux-m68k.org>
121303
121304	* Makefile.in (install-etc): Don't prepend $(DESTDIR) to commands in
121305	system unit file.
121306
1213072016-12-10  Eli Zaretskii  <eliz@gnu.org>
121308
121309	Support concurrency in Emacs Lisp
121310
121311	Merge branch 'test-concurrency'
121312
121313	* src/thread.c:
121314	* src/thread.h:
121315	* src/systhread.c:
121316	* src/systhread.h: New files.
121317	* src/xgselect.c (xg_select): Avoid using SAFE_NALLOCA and use
121318	xnmalloc unconditionally.
121319	* src/window.c (struct save_window_data): Rename current_buffer to
121320	f_current_buffer.
121321	* src/w32proc.c (sys_select): Change the function signature to
121322	closer fit 'pselect' on Posix hosts.
121323	* src/search.c:
121324	* src/regex.h: Convert some globals to macros that reference
121325	thread-specific values.
121326	* src/process.c (pset_thread, add_non_keyboard_read_fd)
121327	(add_process_read_fd, add_non_blocking_write_fd)
121328	(recompute_input_desc, compute_input_wait_mask)
121329	(compute_non_process_wait_mask, compute_non_keyboard_wait_mask)
121330	(compute_write_mask, clear_waiting_thread_info)
121331	(update_processes_for_thread_death, Fset_process_thread)
121332	(Fprocess_thread): New functions.
121333	(enum fd_bits): New enumeration.
121334	(fd_callback_data): Add 'thread' and 'waiting_thread', rename
121335	'condition' to 'flags'.
121336	(set_process_filter_masks, create_process, create_pty)
121337	(Fmake_serial_process, finish_after_tls_connection)
121338	(connect_network_socket, deactivate_process)
121339	(server_accept_connection, wait_reading_process_output)
121340	(Fcontinue_process, Fstop_process, keyboard_bit_set)
121341	(add_timer_wait_descriptor, add_keyboard_wait_descriptor)
121342	(delete_keyboard_wait_descriptor): Use the new functions instead
121343	of manipulating fd flags and masks directly.
121344	(syms_of_process): Defsubr the new primitives.
121345	* src/print.c (print_object): Print threads, mutexes, and
121346	conditional variables.
121347	* src/lisp.h (enum pvec_type): New values PVEC_THREAD, PVEC_MUTEX,
121348	and PVEC_CONDVAR.
121349	(XTHREAD, XMUTEX, XCONDVAR, THREADP, MUTEXP, CONDVARP)
121350	(CHECK_THREAD, CHECK_MUTEX, CHECK_CONDVAR): New inline functions.
121351	(XSETTHREAD, XSETMUTEX, XSETCONDVAR): New macros.
121352	(struct handler): Add back byte_stack.  Rename lisp_eval_depth to
121353	f_lisp_eval_depth.
121354	* src/eval.c (specpdl_kind, specpdl_arg, do_specbind)
121355	(rebind_for_thread_switch, do_one_unbind)
121356	(unbind_for_thread_switch): New functions.
121357	(init_eval): 'handlerlist' is not malloc'ed.
121358	(specbind): Call do_specbind.
121359	(unbind_to): Call do_one_unbind.
121360	(mark_specpdl): Accept 2 arguments.
121361	(mark_specpdl): Mark the saved value in a let-binding.
121362	* src/emacs.c (main): Call init_threads_once, init_threads, and
121363	syms_of_threads.
121364	* src/data.c (Ftype_of): Support thread, mutex, and condvar
121365	objects.
121366	(Fthreadp, Fmutexp, Fcondition_variable_p): New functions.
121367	(syms_of_data): DEFSYM and defsubr new symbols and primitives.
121368	* src/bytecode.c (struct byte_stack, FETCH, CHECK_RANGE)
121369	(BYTE_CODE_QUIT): Add back.
121370	(exec_byte_code): Add back byte stack manipulation.
121371	* src/alloc.c (cleanup_vector): Handle threads, mutexes, and
121372	conditional variables.
121373	(mark_stack): Now extern; accept additional argument 'bottom'.
121374	(flush_stack_call_func): New function.
121375	(garbage_collect_1): Call mark_threads and unmark_threads.  Don't
121376	mark handlers.
121377	* src/.gdbinit (xbytecode): Add back.
121378
121379	* test/src/thread-tests.el: New tests.
121380	* test/src/data-tests.el (binding-test-manual)
121381	(binding-test-setq-default, binding-test-makunbound)
121382	(binding-test-defvar-bool, binding-test-defvar-int)
121383	(binding-test-set-constant-t, binding-test-set-constant-nil)
121384	(binding-test-set-constant-keyword)
121385	(binding-test-set-constant-nil): New tests.
121386
121387	* doc/lispref/processes.texi (Processes and Threads): New
121388	subsection.
121389	* doc/lispref/threads.texi: New file
121390	* doc/lispref/elisp.texi (Top): Include it.
121391	* doc/lispref/objects.texi (Thread Type, Mutex Type)
121392	(Condition Variable Type): New subsections.
121393	(Type Predicates): Add thread-related predicates.
121394	* doc/lispref/objects.texi (Editing Types):
121395	* doc/lispref/elisp.texi (Top): Update higher-level menus.
121396
121397	* etc/NEWS: Mention concurrency features.
121398
1213992016-12-10  Eli Zaretskii  <eliz@gnu.org>
121400
121401	Fix error messages in thread.c
121402
121403	* src/thread.c (lisp_mutex_unlock, Fcondition_wait)
121404	(Fcondition_notify, Fthread_join): Fix error messages.
121405
1214062016-12-10  Eli Zaretskii  <eliz@gnu.org>
121407
121408	Improve doc strings in thread.c
121409
121410	* src/thread.c (Fmake_condition_variable, Fcondition_wait)
121411	(Fcondition_notify, Fcondition_mutex, Fcondition_name, Fmake_thread)
121412	(Fthread_join, Fall_threads): Doc fixes.
121413
1214142016-12-10  Eli Zaretskii  <eliz@gnu.org>
121415
121416	Fix building with check-lisp-object-type
121417
121418	* src/thread.c (mark_one_thread): Use NILP to compare with
121419	m_saved_last_thing_searched, which is a Lisp object.  Reported by
121420	Andreas Politz <politza@hochschule-trier.de>.
121421
1214222016-12-10  Eli Zaretskii  <eliz@gnu.org>
121423
121424	Documentation and commentary improvements
121425
121426	* src/lisp.h:
121427	* src/regex.c:
121428	* src/xgselect.c (xg_select): Improve commentary and formatting.
121429
121430	* doc/lispref/objects.texi (Thread Type, Mutex Type)
121431	(Condition Variable Type): New subsections.
121432	(Type Predicates): Add thread-related predicates.
121433	* doc/lispref/objects.texi (Editing Types):
121434	* doc/lispref/elisp.texi (Top): Update higher-level menus.
121435
1214362016-12-09  Michael Albinus  <michael.albinus@gmx.de>
121437
121438	Fix further problems with quoted file names in Tramp
121439
121440	* lisp/net/tramp.el (tramp-quoted-name-p, tramp-quote-name)
121441	(tramp-unquote-name): Move defsubst ...
121442	* lisp/net/tramp-compat.el (tramp-compat-file-name-quoted-p)
121443	(tramp-compat-file-name-quote)
121444	(tramp-compat-file-name-unquote): ... here. Adapt callees.
121445
121446	* lisp/net/tramp-cache.el (tramp-flush-file-property)
121447	(tramp-flush-directory-property):
121448	* lisp/net/tramp-gvfs.el (tramp-gvfs-url-file-name):
121449	* lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
121450	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-file)
121451	(tramp-smb-handle-substitute-in-file-name)
121452	(tramp-smb-get-share, tramp-smb-get-localname): Handle quoted files.
121453
1214542016-12-09  Eli Zaretskii  <eliz@gnu.org>
121455
121456	*src/sysdep.c: Fix a comment.
121457
1214582016-12-09  Eli Zaretskii  <eliz@gnu.org>
121459
121460	Fix compilation error on Fedora 24
121461
121462	* src/sysdep.c [HAVE_H_ERRNO]: Remove declaration of h_errno.
121463	Reported by Paul Eggert <eggert@cs.ucla.edu>.
121464
1214652016-12-09  Eli Zaretskii  <eliz@gnu.org>
121466
121467	Fix compilation warnings due to prototype of thread_select
121468
121469	* src/thread.h <int select_func>: Make the 5th and 6th arguments
121470	be 'const'.
121471	* src/process.c [WINDOWSNT]:
121472	* src/w32proc.c: Make the 5th and 6th argument to sys_select be
121473	'const'.
121474
1214752016-12-09  Eli Zaretskii  <eliz@gnu.org>
121476
121477	Fix compilation on Debian GNU/Linux
121478
121479	* src/thread.h: Include sys/types.h, for ssize_t that regex.h
121480	uses.  Reported by Robert Marshall <robert.marshall@codethink.co.uk>.
121481
1214822016-12-09  Eli Zaretskii  <eliz@gnu.org>
121483
121484	Fix subtle errors with let-binding of localized variables
121485
121486	* src/eval.c (do_specbind): Don't require a "symbol" that is
121487	actually a cons cell, in order to call set-default, as there are
121488	no longer such bindings.  This makes do_specbind work like the
121489	pre-concurrency implementation in specbind for bindings of
121490	forwarded symbols.  Use specpdl_kind to access the type of the
121491	binding.
121492	(specpdl_kind): New function.
121493
1214942016-12-09  Michael Albinus  <michael.albinus@gmx.de>
121495
121496	Document file-name-quote, file-name-unquote and file-name-quoted-p
121497
121498	* doc/lispref/files.texi (File Name Expansion):
121499	* etc/NEWS: Mention file-name-quote, file-name-unquote and
121500	file-name-quoted-p.
121501
121502	* lisp/files.el (file-name-non-special): Revert using
121503	file-name-quote, file-name-unquote and file-name-quoted-p.
121504
1215052016-12-09  Noam Postavsky  <npostavs@gmail.com>
121506
121507	Fix bad quoting of python-shell-interpreter
121508
121509	`python-shell-calculate-command' was using `shell-quote-argument' as if
121510	it was generating a shell command, but its callers don't pass the result
121511	to a shell, and they expect to parse it with `split-string-and-unquote'.
121512	This caused problems depending on the flavor of shell quoting in
121513	effect (Bug#25025).
121514
121515	* lisp/progmodes/python.el (python-shell-calculate-command): Use
121516	`combine-and-quote-strings' to quote the interpreter, so that it can be
121517	parsed by `python-shell-make-comint' successfully using
121518	`split-string-and-unquote'.
121519
1215202016-12-09  Paul Eggert  <eggert@cs.ucla.edu>
121521
121522	* src/lisp.h (struct terminal): Remove unnecessary forward decl.
121523
1215242016-12-08  Paul Eggert  <eggert@cs.ucla.edu>
121525
121526	Make read1 more reentrant
121527
121528	This is needed if ‘read’ is called soon after startup, before the
121529	Unicode tables have been set up, and it reads a \N escape and
121530	needs to look up a value the Unicode tables, a lookup that in turn
121531	calls read1 recursively.  Although this change doesn’t make ‘read’
121532	fully reentrant, it’s good enough to handle this case.
121533	* src/lread.c (read_buffer_size, read_buffer): Remove static vars.
121534	(grow_read_buffer): Revamp to use locals, not statics, and to
121535	record memory allocation un the specpdl.  All callers changed.
121536	(read1): Start with a stack-based buffer, and use the heap
121537	only if the stack buffer is too small.  Use unbind_to to
121538	free any heap buffer allocated.  Use bool for boolean.
121539	Redo symbol loop so that only one call to grow_read_buffer
121540	is needed.
121541	(init_obarray): Remove no-longer-needed initialization.
121542
1215432016-12-08  Eli Zaretskii  <eliz@gnu.org>
121544
121545	Fix compilation warnings
121546
121547	* src/thread.c (Fmake_thread): Call emacs_abort, to avoid
121548	compilation warning.
121549
1215502016-12-08  Paul Eggert  <eggert@cs.ucla.edu>
121551
121552	Fix unlikely substitute-command-keys memory leak
121553
121554	* src/doc.c (Fsubstitute_command_keys):
121555	Free buffer when unwinding.
121556
1215572016-12-08  Michael Albinus  <michael.albinus@gmx.de>
121558
121559	Add file-name-quoted-p, file-name-quote, file-name-unquote
121560
121561	* lisp/files.el (file-name-quoted-p, file-name-quote)
121562	(file-name-unquote): New defsubst.
121563	(find-file--read-only, find-file-noselect)
121564	(file-name-non-special): Use them.
121565
1215662016-12-08  Eli Zaretskii  <eliz@gnu.org>
121567
121568	Add a NEWS entry.
121569
1215702016-12-08  Glenn Morris  <rgm@gnu.org>
121571
121572	Minor fix for symbol-file
121573
121574	* lisp/subr.el (symbol-file): Avoid false matches with "require"
121575	elements in load-history.  (Bug#25109)
121576
1215772016-12-08  Glenn Morris  <rgm@gnu.org>
121578
121579	Doc fix for vc-git
121580
121581	* lisp/vc/vc-git.el (vc-git-region-history): Add a doc string.
121582
1215832016-12-08  Tino Calancha  <tino.calancha@gmail.com>
121584
121585	Fix Bug#24962
121586
121587	* lisp/buff-menu.el (list-buffers--refresh):
121588	List buffers with name starting with " " if they visit a file.
121589	* test/lisp/buff-menu-tests.el (buff-menu-24962):
121590	Update test result as pass.
121591
1215922016-12-08  Tino Calancha  <tino.calancha@gmail.com>
121593
121594	ediff-fixup-patch-map: Improve prompt
121595
121596	* lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
121597	Make clear in the prompt when we are applying a multi patch.
121598
1215992016-12-08  Glenn Morris  <rgm@gnu.org>
121600
121601	Retain message logging in map-y-or-n-p
121602
121603	* lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
121604	Stop disabling logging to Messages buffer.  (Bug#13326)
121605
1216062016-12-08  Glenn Morris  <rgm@gnu.org>
121607
121608	Doc fix for recent change
121609
121610	* lisp/simple.el (region-modifiable-p): Doc fix.
121611
1216122016-12-08  Glenn Morris  <rgm@gnu.org>
121613
121614	Quieten make-dist default operation
121615
121616	* make-dist: Add --verbose option.  Default to quieter operation.
121617
1216182016-12-08  Glenn Morris  <rgm@gnu.org>
121619
121620	Further improve make-dist checking
121621
121622	* make-dist: Print status messages when checking.
121623
1216242016-12-08  Glenn Morris  <rgm@gnu.org>
121625
121626	Improve previous make-dist change
121627
121628	* make-dist: Let make check the info files more thoroughly.
121629
1216302016-12-08  Glenn Morris  <rgm@gnu.org>
121631
121632	Make make-dist --snapshot do some sanity checks
121633
121634	* make-dist: Snapshot mode no longer disables checks.
121635	Checks now includes checks for freshness.  (Bug#25084)
121636	Checks now exits with an error if problems were found.
121637
1216382016-12-07  Tino Calancha  <tino.calancha@gmail.com>
121639
121640	Fix regression introduced by commit 7b1e97f
121641
121642	* lisp/ibuf-ext.el (ibuffer-decompose-filter): Use cdr instead
121643	of cadr; required after commit 20f5a5b.
121644
1216452016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
121646
121647	Put post-25 ChangeLog entries into ChangeLog.3
121648
121649	* ChangeLog.2: Copy from emacs-25 branch.
121650	* ChangeLog.3: New file, with changes only in master.
121651	* Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump from 2 to 3.
121652
1216532016-12-07  Eli Zaretskii  <eliz@gnu.org>
121654
121655	Fix network streams.
121656
121657	The original code messed up flags in fd_callback_data[], and also
121658	didn't call add_process_read_fd for process-related file descriptors.
121659
1216602016-12-07  Eli Zaretskii  <eliz@gnu.org>
121661
121662	Minimize spurious diffs from master.
121663
1216642016-12-06  Eli Zaretskii  <eliz@gnu.org>
121665
121666	Fix the test suite
121667
121668	* test/automated/bindings.el: Contents moved to
121669	test/src/data-tests.el.
121670	* test/automated/threads.el: Moved to test/src/thread-tests.el.
121671
1216722016-12-06  Eli Zaretskii  <eliz@gnu.org>
121673
121674	Fix a typo in bytecode.c.
121675
1216762016-12-05  Eli Zaretskii  <eliz@gnu.org>
121677
121678	Fix compilation problems.
121679
121680	Fix merged code in process.c and eval.c.
121681
1216822016-12-04  Eli Zaretskii  <eliz@gnu.org>
121683
121684	Merge branch 'concurrency'
121685
121686	Conflicts (resolved):
121687		configure.ac
121688		src/Makefile.in
121689		src/alloc.c
121690		src/bytecode.c
121691		src/emacs.c
121692		src/eval.c
121693		src/lisp.h
121694		src/process.c
121695		src/regex.c
121696		src/regex.h
121697
1216982015-11-02  Eli Zaretskii  <eliz@gnu.org>
121699
121700	Fix the MS-Windows build
121701
121702	* src/thread.h [WINDOWSNT]: Include sys/socket.h.
121703
121704	* src/sysselect.h: Don't define fd_set and FD_* macros for
121705	MS-Windows here.
121706	* src/w32.h: Define them here.
121707
121708	* src/process.h (sys_select): Declare prototype.
121709
121710	* src/sysdep.c:
121711	* src/process.c:
121712	* src/filelock.c:
121713	* src/emacs.c:
121714	* src/callproc.c: Move inclusion of sys/select.h after lisp.h.
121715	* nt/inc/socket.h: Include w32.h instead of sysselect.h
121716
1217172015-11-01  Ken Raeburn  <raeburn@raeburn.org>
121718
121719	merge from trunk
121720
1217212013-10-19  Barry O'Reilly  <gundaetiapo@gmail.com>
121722
121723	* src/eval.c (unbind_for_thread_switch): Fix iteration over the
121724	specpdl stack.
121725
1217262013-10-18  Tom Tromey  <tromey@redhat.com>
121727
121728	change condition-variablep to condition-variable-p
121729
1217302013-09-01  Eli Zaretskii  <eliz@gnu.org>
121731
121732	Fix crashes when unbind_for_thread_switch signals an error.
121733
121734	 src/eval.c (unbind_for_thread_switch): Accept a 'struct
121735	 thread_state *' argument and use specpdl_ptr and specpdl of that
121736	 thread.  Fixes crashes if find_symbol_value signals an error.
121737	 src/thread.c (post_acquire_global_lock): Update current_thread
121738	 before calling unbind_for_thread_switch.  Pass the previous thread
121739	 to unbind_for_thread_switch.
121740
1217412013-08-31  Eli Zaretskii  <eliz@gnu.org>
121742
121743	Improve MS-Windows implementation of threads.
121744
121745	 src/systhread.c (sys_cond_init): Set the 'initialized' member to
121746	 true only if initialization is successful.  Initialize wait_count
121747	 and wait_count_lock.
121748	 (sys_cond_wait, sys_cond_signal, sys_cond_broadcast): If
121749	 'initialized' is false, do nothing.
121750	 (sys_cond_wait): Fix the implementation to avoid the "missed
121751	 wakeup" bug: count the waiting threads, and reset the broadcast
121752	 event once the last thread was released.
121753	 (sys_cond_signal, sys_cond_broadcast): Use SetEvent instead of
121754	 PulseEvent.  Don't signal the event if no threads are waiting.
121755	 (sys_cond_destroy): Only close non-NULL handles.
121756	 (sys_thread_create): Return zero if unsuccessful, 1 if successful.
121757	 src/systhread.h (w32thread_cond_t): New member 'initialized'.
121758	 Rename waiters_count and waiters_count_lock to wait_count and
121759	 wait_count_lock, respectively.
121760
1217612013-08-30  Eli Zaretskii  <eliz@gnu.org>
121762
121763	Enable thread support in the MS-Windows build.
121764
121765	 src/systhread.h (w32thread_critsect, w32thread_cond_t, sys_mutex_t)
121766	 (sys_cond_t, sys_thread_t) [WINDOWSNT]: New data types.
121767	 src/systhread.c (sys_mutex_init, sys_mutex_lock, sys_mutex_unlock)
121768	 (sys_mutex_destroy, sys_cond_init, sys_cond_wait)
121769	 (sys_cond_signal, sys_cond_broadcast, sys_cond_destroy)
121770	 (sys_thread_self, sys_thread_equal, w32_beginthread_wrapper)
121771	 (sys_thread_create, sys_thread_yield) [WINDOWSNT]: New functions.
121772
121773	 configure.ac (THREADS_ENABLED): Enable threads for MinGW, even
121774	 if pthreads is not available.
121775
1217762013-08-27  Tom Tromey  <tromey@redhat.com>
121777
121778	use condition-notify in the docs, not condition-signal
121779
121780	zap until-condition docs
121781
121782	zap until-condition
121783
121784	rename thread-blocker to thread--blocker
121785
121786	remove binding_symbol
121787
121788	fix style of threadp, mutexp, and condition-variable-p
121789
121790	make thread_check_current_buffer return bool
121791
121792	add a comment before flush_stack_call_func
121793
121794	fix whitespace_regexp warning
121795
1217962013-08-26  Eli Zaretskii  <eliz@gnu.org>
121797
121798	Fix MS-Windows build.
121799
121800	 src/callproc.c:
121801	 src/emacs.c:
121802	 src/filelock.c:
121803	 src/process.c:
121804	 src/sysdep.c:
121805	 src/w32.c: Reshuffle Windows-specific headers to avoid errors with
121806	 redefinition of fd_set etc.
121807	 src/process.c: Don't use num_pending_connects when
121808	 NON_BLOCKING_CONNECT is not defined.
121809	 src/sysselect.h: Move definitions of FD_* macros and of SELECT_TYPE
121810	 here from w32.h.
121811	 src/w32proc.c (sys_select): Adjust the argument types to what
121812	 thread.h expects.
121813
121814	 nt/inc/sys/socket.h: Include stdint.h.  Include sysselect.h instead
121815	 of w32.h.
121816
1218172013-08-26  Tom Tromey  <tromey@redhat.com>
121818
121819	use record_unwind_protect_void, avoid warning
121820
121821	implement --enable-threads and a thread-less mode
121822
1218232013-08-25  Tom Tromey  <tromey@redhat.com>
121824
121825	merge from trunk
121826
1218272013-08-20  Tom Tromey  <tromey@redhat.com>
121828
121829	fix up some merge errors in process.c
121830
121831	remove a dead function
121832	clean up a fixme I added in create_pty during the merge
121833
1218342013-08-20  Tom Tromey  <tromey@redhat.com>
121835
121836	merge from trunk
121837
1218382013-07-26  Tom Tromey  <tromey@redhat.com>
121839
121840	merge from trunk
121841
1218422013-07-13  Tom Tromey  <tromey@redhat.com>
121843
121844	Merge from trunk
121845
1218462013-07-12  Tom Tromey  <tromey@redhat.com>
121847
121848	Use thread_alive_p in a couple more spots
121849
1218502013-07-07  Tom Tromey  <tromey@redhat.com>
121851
121852	fix xfree bug in run_thread
121853
121854	this fixes run_thread to account for the dummy slot
121855	in specpdl
121856
1218572013-07-07  Tom Tromey  <tromey@redhat.com>
121858
121859	merge from trunk
121860
121861	this merges frmo trunk and fixes various build issues.
121862	this needed a few ugly tweaks.
121863	this hangs in "make check" now
121864
1218652013-07-06  Tom Tromey  <tromey@redhat.com>
121866
121867	add assertion to flush_stack_call_func
121868
121869	functions called via flush_stack_call_func are assumed
121870	to return with the global lock held again, and with
121871	current_thread reset.  this assertion verifies part of this
121872
1218732013-07-06  Tom Tromey  <tromey@redhat.com>
121874
121875	call init_primary_thread from init_threads
121876
1218772013-07-05  Tom Tromey  <tromey@redhat.com>
121878
121879	avoid SAFE_ALLOCA
121880
121881	avoid SAFE_ALLOCA in xgselect.c.
121882	in this code it is just as easy to always use malloc;
121883	and it avoids thread-switching problems, as the safe-alloca
121884	stuff implicitly refers to the current thread
121885
1218862013-07-05  Tom Tromey  <tromey@redhat.com>
121887
121888	avoid current_thread sometimes
121889
121890	this tweaks thread.c to use 'self' instead of current_thread
121891	in a couple spots.  this is clearer and more robust
121892
1218932013-07-05  Tom Tromey  <tromey@redhat.com>
121894
121895	initialize saved_value
121896
121897	initialize the saved_value field in all needed cases
121898	also, add an assertion to do_one_unbind
121899
1219002013-07-04  Tom Tromey  <tromey@redhat.com>
121901
121902	fix buglet in test case
121903
1219042013-07-04  Tom Tromey  <tromey@redhat.com>
121905
121906	unlink thread later
121907
121908	unlink thread from global list later
121909	also remove some unnecessary destruction code
121910
1219112013-07-04  Tom Tromey  <tromey@redhat.com>
121912
121913	introduce thread_alive_p macro
121914
121915	This introduces the thread_alive_p macro and changes
121916	thread-alive-p to use it.  This is a minor cleanup.
121917	It also changes all-threads to ignore dead threads.
121918
1219192013-07-03  Tom Tromey  <tromey@redhat.com>
121920
121921	Don't call unbind_for_thread_switch in run_thread
121922
121923	This removes the call to unbind_for_thread_switch from run_thread.
121924	This isn't necessary because acquire_global_lock does it properly.
121925
1219262013-07-03  Tom Tromey  <tromey@redhat.com>
121927
121928	remove unused field from struct thread_state
121929
121930	Fix a comment.
121931
1219322013-06-13  Tom Tromey  <tromey@redhat.com>
121933
121934	merge from trunk
121935
1219362013-06-06  Tom Tromey  <tromey@redhat.com>
121937
121938	fix a few latent issues in the thread patch
121939
121940	* we called unbind_for_thread_switch unconditionally, but this
121941	  is wrong if the previous thread exited
121942	* likewise, exiting a thread should clear current_thread
121943	* redundant assignment in run_thread
121944	* clean up init_threads - no need to re-init the primary thread
121945
121946	This patch still sometimes causes weird hangs in "make check".
121947	However, I think that is a kernel bug, since Emacs enters the zombie
121948	state but its parent process hangs in wait.  This shouldn't happen.
121949
1219502013-06-04  Tom Tromey  <tromey@redhat.com>
121951
121952	update eval.c to make it build again after the merge
121953
1219542013-06-03  Tom Tromey  <tromey@redhat.com>
121955
121956	merge from trunk; clean up some issues
121957
1219582013-03-18  Tom Tromey  <tromey@redhat.com>
121959
121960	don't let kill-buffer kill a buffer if it is current in any thread
121961
1219622013-03-18  Tom Tromey  <tromey@redhat.com>
121963
121964	fix process bugs
121965
121966	Fix some process-related bugs, mostly thinkos from the conversion to
121967	recording fd state as flags.
121968	This now passes the test suite without hanging.
121969
1219702013-03-17  Tom Tromey  <tromey@redhat.com>
121971
121972	merge from trunk
121973
1219742013-03-08  Tom Tromey  <tromey@redhat.com>
121975
121976	merge from trunk
121977
1219782013-01-16  Tom Tromey  <tromey@redhat.com>
121979
121980	merge from trunk
121981
1219822013-01-06  Tom Tromey  <tromey@redhat.com>
121983
121984	merge from trunk
121985
1219862012-12-23  Tom Tromey  <tromey@redhat.com>
121987
121988	mention let bindings and lack of other ways to rewind
121989
1219902012-12-17  Tom Tromey  <tromey@redhat.com>
121991
121992	Remove bit accidentally left over from the merge
121993
121994	merge from trunk
121995
1219962012-09-04  Tom Tromey  <tromey@redhat.com>
121997
121998	merge from trunk
121999
122000	link from thread docs to match data
122001
1220022012-08-27  Tom Tromey  <tromey@redhat.com>
122003
122004	cannot thread-join the current thread
122005
122006	fix test suite for condition-variable-p name change
122007
122008	add tests for variable bindings
122009
1220102012-08-25  Tom Tromey  <tromey@redhat.com>
122011
122012	minor update to thread-join docs
122013
1220142012-08-24  Tom Tromey  <tromey@redhat.com>
122015
122016	minor documentation updates
122017
1220182012-08-23  Tom Tromey  <tromey@redhat.com>
122019
122020	document until-condition
122021
122022	first draft of threads documentation
122023
122024	rename condition-variablep to condition-variable-p
122025
122026	document process-thread and set-process-thread
122027
1220282012-08-20  Tom Tromey  <tromey@redhat.com>
122029
122030	pass the thread name to the OS if possible
122031
122032	use prctl to pass the thread name to the OS, if possible
122033
1220342012-08-20  Tom Tromey  <tromey@redhat.com>
122035
122036	add convenience macros with-mutex and until-condition
122037
122038	with-mutex is a safe way to run some code with a mutex held.
122039	until-condition is a safe way to wait on a condition variable.
122040
1220412012-08-20  Tom Tromey  <tromey@redhat.com>
122042
122043	Merge from trunk
122044
1220452012-08-19  Tom Tromey  <tromey@redhat.com>
122046
122047	another docstring fixlet
122048
122049	minor docstring fixup
122050
122051	add condition-mutex and condition-name
122052
122053	ensure name of a thread is a string
122054
122055	ensure name of a mutex is a string
122056
122057	use NILP
122058
1220592012-08-19  Tom Tromey  <tromey@redhat.com>
122060
122061	condition variables
122062
122063	This implements condition variables for elisp.
122064	This needs more tests.
122065
1220662012-08-19  Tom Tromey  <tromey@redhat.com>
122067
122068	comment fixes
122069
1220702012-08-19  Tom Tromey  <tromey@redhat.com>
122071
122072	refactor systhread.h
122073
122074	This refactors systhread.h to move the notion of a "lisp mutex"
122075	into thread.c.  This lets us make make the global lock and
122076	post_acquire_global_lock static.
122077
1220782012-08-17  Tom Tromey  <tromey@redhat.com>
122079
122080	write docstrings for the thread functions
122081
122082	declare unbind_for_thread_switch and rebind_for_thread_switch in lisp.h
122083
1220842012-08-15  Tom Tromey  <tromey@redhat.com>
122085
122086	add test case for I/O switching
122087
1220882012-08-15  Tom Tromey  <tromey@redhat.com>
122089
122090	process changes
122091
122092	This changes wait_reading_process_output to handle threads better.  It
122093	introduces a wrapper for select that releases the global lock, and it
122094	ensures that only a single thread can select a given file descriptor
122095	at a time.
122096
122097	This also adds the thread-locking feature to processes.  By default a
122098	process can only have its output accepted by the thread that created
122099	it.  This can be changed using set-process-thread.  (If the thread
122100	exits, the process is again available for waiting by any thread.)
122101
122102	Note that thread-signal will not currently interrupt a thread blocked
122103	on select.  I'll fix this later.
122104
1221052012-08-15  Tom Tromey  <tromey@redhat.com>
122106
122107	Prepare process.c for threads by not having global select masks.
122108	The next step is to make it so selects can choose fds by thread.
122109
1221102012-08-15  Tom Tromey  <tromey@redhat.com>
122111
122112	fix a latent bug in process.c
122113
122114	* src/process.c (wait_reading_process_output): Check Writeok bits,
122115	not write_mask.
122116
1221172012-08-15  Tom Tromey  <tromey@redhat.com>
122118
122119	This adds thread-blocker, a function to examine what a thread is
122120	blocked on.  I thought this would be another nice debugging addition.
122121
122122	This adds names to mutexes.  This seemed like a nice debugging
122123	extension.
122124
122125	This adds some tests of the threading code.
122126
1221272012-08-15  Tom Tromey  <tromey@redhat.com>
122128
122129	This supplies the mutex implementation for Emacs Lisp.
122130
122131	A lisp mutex is implemented using a condition variable, so that we can
122132	interrupt a mutex-lock operation by calling thread-signal on the
122133	blocking thread.  I did things this way because pthread_mutex_lock
122134	can't readily be interrupted.
122135
1221362012-08-15  Tom Tromey  <tromey@redhat.com>
122137
122138	This adds most of the thread features visible to emacs lisp.
122139
122140	I roughly followed the Bordeaux threads API:
122141
122142	http://trac.common-lisp.net/bordeaux-threads/wiki/ApiDocumentation
122143
122144	... but not identically.  In particular I chose not to implement
122145	interrupt-thread or destroy-thread, but instead a thread-signaling
122146	approach.
122147
122148	I'm still undecided about *default-special-bindings* (which I did not
122149	implement).  I think it would be more emacs-like to capture the let
122150	bindings at make-thread time, but IIRC Stefan didn't like this idea
122151	the first time around.
122152
122153	There are one or two semantics issues pointed out in the patch where I
122154	could use some advice.
122155
1221562012-08-15  Tom Tromey  <tromey@redhat.com>
122157
122158	This turns thread_state into a pseudovector and updates various bits
122159	of Emacs to cope.
122160
1221612012-08-15  Tom Tromey  <tromey@redhat.com>
122162
122163	This introduces some new functions to handle the specpdl.  The basic
122164	idea is that when a thread loses the interpreter lock, it will unbind
122165	the bindings it has put in place.  Then when a thread acquires the
122166	lock, it will restore its bindings.
122167
122168	This code reuses an existing empty slot in struct specbinding to store
122169	the current value when the thread is "swapped out".
122170
122171	This approach performs worse than my previously planned approach.
122172	However, it was one I could implement with minimal time and
122173	brainpower.  I hope that perhaps someone else could improve the code
122174	once it is in.
122175
1221762012-08-15  Tom Tromey  <tromey@redhat.com>
122177
122178	This introduces the low-level system threading support.  It also adds
122179	the global lock.  The low-level support is a bit over-eager, in that
122180	even at the end of the present series, it will not all be used.  I
122181	think thiat is ok since I plan to use it all eventually -- in
122182	particular for the emacs lisp mutex implementation.
122183
122184	I've only implemented the pthreads-based version.  I think it should
122185	be relatively clear how to port this to other systems, though.
122186
122187	I'd also like to do a "no threads" port that will turn most things
122188	into no-ops, and have thread-creation fail.  I was thinking perhaps
122189	I'd make a future (provide 'threads) conditional on threads actually
122190	working.
122191
122192	One other minor enhancement available here is to make it possible to
122193	set the name of the new thread at the OS layer.  That way gdb, e.g.,
122194	could display thread names.
122195
1221962012-08-15  Tom Tromey  <tromey@redhat.com>
122197
122198	This parameterizes the GC a bit to make it thread-ready.
122199
122200	The basic idea is that whenever a thread "exits lisp" -- that is,
122201	releases the global lock in favor of another thread -- it must save
122202	its stack boundaries in the thread object.  This way the boundaries
122203	are always available for marking.  This is the purpose of
122204	flush_stack_call_func.
122205
122206	I haven't tested this under all the possible GC configurations.
122207	There is a new FIXME in a spot that i didn't convert.
122208
122209	Arguably all_threads should go in the previous patch.
122210
1222112012-08-15  Tom Tromey  <tromey@redhat.com>
122212
122213	This introduces a thread-state object and moves various C globals
122214	there.  It also introduces #defines for these globals to avoid a
122215	monster patch.
122216
122217	The #defines mean that this patch also has to rename a few fields
122218	whose names clash with the defines.
122219
122220	There is currently just a single "thread"; so this patch does not
122221	impact Emacs behavior in any significant way.
122222
1222232016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
122224
122225	Merge from origin/emacs-25
122226
122227	eeecac7 Fix minor quoting problems in doc strings
122228
1222292016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
122230
122231	Merge from origin/emacs-25
122232
122233	35ce3fb Don't assume window-point and point are the same
122234
1222352016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
122236
122237	Merge from origin/emacs-25
122238
122239	ba2847f ; * lisp/vc/ediff-util.el (ediff-janitor): Fix last change.  ...
122240	8b43f97 * lisp/vc/ediff-util.el (ediff-janitor): Doc fix.  (Bug#25046)
122241	c20035c ; * doc/emacs/programs.texi (Man Page): Fix last change.
122242	93d8346 Improve indexing of 'man'
122243
1222442016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
122245
122246	Merge from origin/emacs-25
122247
122248	d31298d Fix documentation of `window-combination-resize'
122249	2086f4c Typo fixes in elisp manual
122250
1222512016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
122252
122253	Merge from origin/emacs-25
122254
122255	3980903 ; Update ChangeLog.2, etc/AUTHORS and ldef-boot.el for Emacs ...
122256	5878abf Fix 'expand-file-name' during startup on MS-Windows
122257
1222582016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
122259
122260	Merge from origin/emacs-25
122261
122262	9a857b9 * admin/authors.el (authors-renamed-files-alist): Addition.
122263	6d27423 Tweak refcard note about documentation location
122264	e46a134 Improve treatment of Fortran's "class is"
122265
1222662016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
122267
122268	Merge from origin/emacs-25
122269
122270	93c0f51 Handle TeX comments when making new paragraph
122271	e0884f1 Restore keystroke echo in 'C-q'
122272	a6213ce Improve documentation of 'current-word'
122273	0828126 Fix a typo in an Eshell defcustom
122274	2e361c7 Minor copyedits of electric-pair-mode
122275	7499ee8 ; Minor copyedit in the Emacs manual
122276	45b652b Fix documentation of 'invocation-directory'
122277	7f43d7c * admin/authors.el (authors-aliases): Add an entry.
122278	ba48880 ; Fix pl-refcard.tex
122279
1222802016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
122281
122282	Merge from origin/emacs-25
122283
122284	7287e96 ; * src/lread.c (openp): Correct an inaccuracy in commentary.
122285
1222862016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
122287
122288	Merge from origin/emacs-25
122289
122290	3d63b48 Update ChangeLog files and authors.el
122291	9d30264 Fix menu bindings of Dired 'A' and 'Q' commands
122292	a725592 Avoid errors in shr-pixel-column due to dedicated windows
122293	3138598 Update format-time-string documentation
122294
1222952016-12-07  Sam Steingold  <sds@gnu.org>
122296
122297	delete-trailing-whitespace: handle read-only text in buffer
122298
122299	* lisp/simple.el (region-modifiable-p): New function.
122300	(delete-trailing-whitespace): Use it to avoid trying to delete read-only text.
122301
1223022016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
122303
122304	Fix minor quoting problems in doc strings
122305
1223062016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
122307
122308	Fix --enable-gcc-warnings --with-ns on Fedora
122309
122310	* src/Makefile.in (NON_OBJC_CFLAGS): New macro.
122311	(ALL_OBJC_CFLAGS): Use it.
122312	(EMACS_CFLAGS): New macro, with most of the old ALL_CFLAGS.
122313	(ALL_CFLAGS, ALL_OBJC_FLAGS): Use it.
122314
1223152016-12-07  Michael Albinus  <michael.albinus@gmx.de>
122316
122317	Fix problems in quoting Tramp file names
122318
122319	* lisp/net/tramp.el (tramp-get-remote-tmpdir): Add also hop to result.
122320	(tramp-unquote-shell-quote-argument): New defun.
122321	(tramp-shell-quote-argument):
122322	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
122323	(tramp-make-copy-program-file-name):
122324	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
122325	(tramp-smb-handle-file-acl, tramp-smb-handle-set-file-acl)
122326	(tramp-smb-shell-quote-argument): Use it.
122327
1223282016-12-07  Tino Calancha  <tino.calancha@gmail.com>
122329
122330	ibuffer-map-deletion-lines: Re-included it
122331
122332	It was deleted in previous commit, but it's referenced
122333	by the macro 'define-ibuffer-op'.
122334	* lisp/ibuffer.el (ibuffer-map-deletion-lines): Reinclude it.
122335
1223362016-12-07  Tino Calancha  <tino.calancha@gmail.com>
122337
122338	ibuffer-unmark-all: simplify code
122339
122340	* lisp/ibuffer.el (ibuffer-map-deletion-lines): Delete it.
122341	(ibuffer-unmark-all): Simplify code.
122342
1223432016-12-07  Tino Calancha  <tino.calancha@gmail.com>
122344
122345	define-ibuffer-filter: Discard wrong filters
122346
122347	* lisp/ibuf-macs.el (define-ibuffer-filter): Do not store
122348	in 'ibuffer-filtering-qualifiers' a wrong filter (Bug#25042).
122349	* test/lisp/ibuffer-tests.el (ibuffer-test-Bug25042): Add test.
122350
1223512016-12-07  Philipp Stephani  <p.stephani2@gmail.com>
122352
122353	* lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Fix docstring
122354
122355	so that it matches the actual implementation.
122356	See https://lists.gnu.org/r/help-gnu-emacs/2016-04/msg00071.html
122357
1223582016-12-07  Tino Calancha  <tino.calancha@gmail.com>
122359
122360	ibuffer-decompose-filter-group avoid unwanted side effects
122361
122362	* lisp/ibuf-ext.el (ibuffer-delete-alist): Remove it.
122363	(ibuffer-remove-alist): New defun; it supersedes 'ibuffer-delete-alist'.
122364	All callers changed (Bug#25058).
122365	* test/lisp/ibuffer-tests.el (ibuffer-test-Bug25058): Add test.
122366
1223672016-12-07  Tino Calancha  <tino.calancha@gmail.com>
122368
122369	ibuffer-unmark-backward: Unmark the region when is active
122370
122371	* lisp/ibuffer.el (ibuffer-unmark-backward):
122372	Use 'ibuffer-get-region-and-prefix'; call 'ibuffer-unmark-forward'
122373	with the region boundary as the first 2 arguments (Bug#24987).
122374
1223752016-12-07  Nicolas Petton  <nicolas@petton.fr>
122376
122377	Docstring improvement for seq-some (bug#25129)
122378
122379	* lisp/emacs-lisp/seq.el (seq-some): Make the docstring less confusing
122380	  regarding the returned value.
122381
1223822016-12-07  Tino Calancha  <tino.calancha@gmail.com>
122383
122384	dired-unmark-backward: Unmark the region when is active
122385
122386	* lisp/dired.el (dired-unmark-backward): Call 'dired-unmark' with
122387	a non-nil second argument (Bug#24986).
122388
1223892016-12-07  Tino Calancha  <tino.calancha@gmail.com>
122390
122391	New test file for ediff
122392
122393	Fix previous commit.
122394	* test/lisp/vc/ediff-ptch-tests.el: New test.
122395
1223962016-12-07  Tino Calancha  <tino.calancha@gmail.com>
122397
122398	ediff-context-diff-label-regexp: Detect the end of second file
122399
122400	* lisp/vc/ediff-ptch.el (ediff-context-diff-label-regexp): Skip
122401	'\n' in file names (Bug#25010).
122402	* test/lisp/vc/ediff-ptch-tests.el: New file.
122403	(ibuffer-test-bug25010): Add test for Bug#25010.
122404
1224052016-12-07  Tino Calancha  <tino.calancha@gmail.com>
122406
122407	ibuffer-decompose-filter: Avoid side effects on error
122408
122409	* lisp/ibuf-ext.el (ibuffer-decompose-filter):
122410	Update 'ibuffer-filtering-qualifiers' only if there is no error (Bug#24997).
122411	* test/lisp/ibuffer-tests.el (ibuffer-test-Bug24997):
122412	Update test result as pass.
122413
1224142016-12-07  Tino Calancha  <tino.calancha@gmail.com>
122415
122416	ibuffer: compare marks with EQ
122417
122418	* lisp/ibuffer.el:
122419	(ibuffer-update-title-and-summary)
122420	(ibuffer-redisplay-current)
122421	(ibuffer-buffer-name-face, ibuffer-unmark-all)
122422	(ibuffer-count-deletion-lines, ibuffer-buffer-names-with-mark):
122423	Use 'eq' instead of 'char-equal' when comparing mark characters
122424	(Bug#25000).
122425	* test/lisp/ibuffer-tests.el (ibuffer-test-Bug25000):
122426	Update test result as pass.
122427
1224282016-12-07  Christopher Genovese  <genovese@cmu.edu>
122429
122430	ibuffer-saved-filters: Remove extra nesting level
122431
122432	Fix Bug#25049.
122433	* lisp/ibuf-ext.el (ibuffer-saved-filters): Remove extra
122434	nesting level; add transparent setter to adjust old-format values;
122435	update doc string.
122436	(ibuffer-save-filters): Remove extra level of nesting
122437	in ibuffer-saved-filters values when saving new filters.
122438	(ibuffer-old-saved-filters-warning): New variable with
122439	clickable message with repair options to be displayed
122440	as a warning if 'ibuffer-repair-saved-filters' detects
122441	a format mismatch.
122442	(ibuffer-repair-saved-filters): Add new command to check and
122443	repair saved filters format.
122444	(ibuffer-included-in-filter-p, ibuffer-decompose-filter):
122445	Change access of saved filter data (cadr->cdr) to account
122446	for reduced nesting.
122447	* test/lisp/ibuffer-tests.el (ibuffer-save-filters):
122448	New test; check that filters are saved in the proper format.
122449
1224502016-12-06  Paul Eggert  <eggert@cs.ucla.edu>
122451
122452	Clean out some IRIX cruft
122453
122454	* etc/MACHINES: Remove obsolete discussion of IRIX.
122455	* src/process.c (allocate_pty) [__sgi]: Remove SGI-specific code.
122456	(create_process) [HAVE_PTYS]: Don't worry about IRIX.
122457	* src/syntax.c (scan_sexps_forward): Remove obsolete comment.
122458	* src/unexelf.c [__sgi]: Don't include <syms.h>.
122459	(unexec) [__sgi]: Remove SGI-specific code.
122460
1224612016-12-06  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
122462
122463	Simplify FUNCTIONP implementation
122464
122465	* src/bytecode.c (exec_byte_code):
122466	* src/image.c (parse_image_spec):
122467	Prefer FUNCTIONP (x) to !NILP (Ffunctionp (x)).
122468	* src/eval.c (FUNCTIONP): Move here ...
122469	* src/lisp.h: ... from here.  No longer inline, as that
122470	bloats the text and does not help speed (at least on my platform).
122471	(functionp): Remove this name, since callers use FUNCTIONP.
122472
1224732016-12-06  Noam Postavsky  <npostavs@gmail.com>
122474
122475	Don't assume window-point and point are the same
122476
122477	The function `cursor-sensor--detect' calls `bobp' to decide whether to
122478	check properties at (1- (window-point)).  However, (window-point) may be
122479	at beginning of buffer, even if (point) is not.  In this case an
122480	`args-out-of-range' error will be signaled (Bug#25104).
122481
122482	* lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Check the
122483	value of (window-point) against (point-min), rather than (bobp) to
122484	decide if (1- (window-point)) is accessible.
122485
1224862016-12-06  Noam Postavsky  <npostavs@gmail.com>
122487
122488	Give test-completion's PREDICATE the hashtable key
122489
122490	For hashtable entries with symbol keys, `test-completion' would convert
122491	the key to a string before calling PREDICATE, unlike `try-completion'
122492	and `all-completions'.
122493
122494	* src/minibuf.c (Ftest_completion): Pass original key from hashtable.
122495
1224962016-12-06  Noam Postavsky  <npostavs@gmail.com>
122497
122498	Give test-completion's PREDICATE full alist entry
122499
122500	Since 2016-06-26 "Fix test-completion with completion-regexp-list", when
122501	calling test-completion with an alist collection, the predicate was
122502	recieving the string value instead of the alist entry (Bug#24966).
122503
122504	* src/minibuf.c (Ftest_completion): Don't modify the found element, just
122505	test STRING against `completion-regexp-list'.
122506	* test/src/minibuf-tests.el: New tests for `try-completion',
122507	`all-completions', and `test-completion'.
122508
1225092016-12-06  Noam Postavsky  <npostavs@gmail.com>
122510
122511	Fix ert-tests when running compiled
122512
122513	* test/lisp/emacs-lisp/ert-tests.el (ert-test-deftest): Don't test for
122514	specific macroexpansion, just check result of evaluation.
122515	(ert-test-record-backtrace): Don't hardcode representation of closure in
122516	expected backtrace, this lets the test succeed even when the test code
122517	is compiled.
122518
122519	* lisp/emacs-lisp/ert.el (ert--expand-should-1): Also pass
122520	`byte-compile-macro-environment' to `macroexpand', this allows the
122521	`should' macro to properly handle macroexpansion of macros that were
122522	defined in the same file when it's being compiled (Bug #17851).
122523
1225242016-12-06  Glenn Morris  <rgm@gnu.org>
122525
122526	Make "g" in vc push/pull buffers re-push/pull
122527
122528	* lisp/vc/vc-bzr.el (vc-bzr--pushpull):
122529	* lisp/vc/vc-git.el (vc-git--pushpull):
122530	* lisp/vc/vc-hg.el (vc-hg--pushpull):
122531	Set compile-command so that "g" works.  (Bug#11446)
122532
1225332016-12-06  Paul Eggert  <eggert@cs.ucla.edu>
122534
122535	Change two _Noreturn functions to return void
122536
122537	This is a bit clearer than _Noreturn functions that (do not)
122538	return a non-void type.
122539	* src/callproc.c (call_process) [MSDOS]:
122540	Use 'status' local to record status.
122541	(child_setup): Return CHILD_SETUP_TYPE.
122542	* src/data.c, src/lisp.h (wrong_type_argument): Return void.
122543	All callers changed.
122544	* src/lisp.h (CHILD_SETUP_TYPE): New macro.
122545
1225462016-12-05  Paul Eggert  <eggert@cs.ucla.edu>
122547
122548	Fix GPG bug introduced by Oct file-missing change
122549
122550	Problem with visiting nonexistent .gpg file
122551	reported by Herbert J Skuhra.
122552	* lisp/epa-file.el (epa-file--find-file-not-found-function):
122553	(epa-file-insert-file-contents, epa-file-write-region):
122554	Signal file-missing or file-error instead of epa-error.
122555
1225562016-12-05  Glenn Morris  <rgm@gnu.org>
122557
122558	Tweak recent flymake change
122559
122560	* lisp/progmodes/flymake.el (flymake-report-fatal-status):
122561	Avoid double message when flymake-log-level >= 0.
122562	* doc/misc/flymake.texi (Customizable variables):
122563	No longer mention flymake-gui-warnings-enabled.
122564
1225652016-12-05  Katsumi Yamaoka  <yamaoka@jpl.org>
122566
122567	Make TAB and M-TAB run widget-forward and widget-backward (bug#25091)
122568
122569	* lisp/gnus/mm-decode.el (mm-convert-shr-links): Avoid `shr-next-link'
122570	and `shr-previous-link' so TAB and M-TAB run `widget-forward' and
122571	`widget-backward' instead (bug#25091).
122572
1225732016-12-05  Michael Albinus  <michael.albinus@gmx.de>
122574
122575	Remove compat code in Tramp
122576
122577	* lisp/net/tramp.el (tramp-parse-time-months): Remove.
122578
122579	* lisp/net/tramp-compat.el (top): Require parse-time.
122580
122581	* lisp/net/tramp-smb.el (tramp-smb-read-file-entry):
122582	Use `parse-time-months'.
122583
1225842016-12-05  Martin Rudalics  <rudalics@gmx.at>
122585
122586	Don't try to split side windows in ibuffer (Bug#25115)
122587
122588	* lisp/ibuffer.el (ibuffer-confirm-operation-on): Don't try to
122589	split a side window (Bug#25115).
122590
1225912016-12-04  Paul Eggert  <eggert@cs.ucla.edu>
122592
122593	* src/lisp.h: Update comment to kick -Og down the road.
122594
1225952016-12-04  Mark Oteiza  <mvoteiza@udel.edu>
122596
122597	More image-dired refactoring
122598
122599	* lisp/image-dired.el: Remove TODO comment. This appears to have been
122600	implemented in 5d7433a "image-dired: Signal an error before calling a
122601	missing executable".
122602	(image-dired-cmd-create-standard-thumbnail-command): Use %p specifier.
122603	Add :version.
122604	(image-dired-display-thumbs, image-dired-create-thumbs): Use dolist and
122605	when. Remove superfluous call to image-dired-thumb-name. Move single nil
122606	binding and setq into dolist form.
122607
1226082016-12-04  Michael Albinus  <michael.albinus@gmx.de>
122609
122610	Implement quoting the local part of a remote file name
122611
122612	* doc/emacs/files.texi (Quoted File Names):
122613	* etc/NEWS: Mention quoting the local part of a remote file name.
122614
122615	* lisp/net/tramp.el (tramp-dissect-file-name): Check with
122616	`tramp-tramp-file-p'.
122617	(tramp-quoted-name-p, tramp-quote-name, tramp-unquote-name):
122618	New defsubst.
122619	(tramp-handle-substitute-in-file-name)
122620	(tramp-handle-make-auto-save-file-name): Handle quoted files.
122621	(tramp-shell-quote-argument): Unquote argument.
122622
122623	* lisp/net/tramp-sh.el (tramp-sh-handle-file-truename):
122624	Handle quoted files.
122625
122626	* test/lisp/net/tramp-tests.el (tramp--test-expensive-test): New defvar.
122627	(tramp--test-make-temp-name): New argument QUOTED.
122628	(tramp-test01-file-name-syntax)
122629	(tramp-test02-file-name-dissect)
122630	(tramp-test04-substitute-in-file-name)
122631	(tramp-test05-expand-file-name, tramp-test07-file-exists-p)
122632	(tramp-test08-file-local-copy)
122633	(tramp-test09-insert-file-contents)
122634	(tramp-test10-write-region, tramp-test11-copy-file)
122635	(tramp-test12-rename-file, tramp-test13-make-directory)
122636	(tramp-test14-delete-directory, tramp-test15-copy-directory)
122637	(tramp-test16-directory-files)
122638	(tramp-test17-insert-directory)
122639	(tramp-test18-file-attributes)
122640	(tramp-test19-directory-files-and-attributes)
122641	(tramp-test20-file-modes, tramp-test21-file-links)
122642	(tramp-test22-file-times, tramp-test23-visited-file-modtime)
122643	(tramp-test24-file-name-completion, tramp-test25-load)
122644	(tramp-test26-process-file, tramp-test27-start-file-process)
122645	(tramp-test28-shell-command, tramp-test30-vc-registered)
122646	(tramp-test31-make-auto-save-file-name)
122647	(tramp--test-check-files)
122648	(tramp-test35-asynchronous-requests): Test also quoted file names.
122649	(tramp--test-shell-command-to-string-asynchronously): Rename.
122650	(tramp-test29-environment-variables): Use it.
122651
1226522016-12-04  Tino Calancha  <tino.calancha@gmail.com>
122653
122654	Fix typo in dired-omit-case-fold-p
122655
122656	* lisp/dired-x.el (dired-omit-case-fold-p):
122657	Write 'file-name-case-insensitive-p' instead of
122658	'file-name-case-sensitive-p'.
122659	Add declaration of 'file-name-case-insensitive-p'.
122660
1226612016-12-04  Simen Heggestøyl  <simenheg@gmail.com>
122662
122663	Add HTML5 attributes for the input element
122664
122665	* lisp/textmodes/sgml-mode.el (html-tag-alist): Add HTML5 attributes
122666	for the input element.
122667
1226682016-12-03  Glenn Morris  <rgm@gnu.org>
122669
122670	Obsolete sc-load-hook in favor of eval-after-load
122671
122672	* lisp/mail/supercite.el (sc-load-hook): Make obsolete.
122673	* doc/misc/sc.texi (Getting Connected, Filling Cited Text):
122674	No longer mention sc-load-hook.
122675
1226762016-12-03  Glenn Morris  <rgm@gnu.org>
122677
122678	Obsolete calendar-load-hook in favor of eval-after-load
122679
122680	* lisp/calendar/calendar.el (calendar-load-hook): Make obsolete.
122681	(calendar): Doc fix - no longer mention calendar-load-hook.
122682	* doc/emacs/cal-xtra.texi (Calendar Customizing):
122683	No longer mention calendar-load-hook.
122684	* doc/lispintro/emacs-lisp-intro.texi (X11 Colors):
122685	Replace calendar-load-hook in example with with-eval-after-load.
122686
1226872016-12-03  Glenn Morris  <rgm@gnu.org>
122688
122689	Fix markup in read-multiple-choice doc (Bug#25102)
122690
122691	* lisp/emacs-lisp/subr-x.el (read-multiple-choice): Doc fix.
122692
1226932016-12-03  Glenn Morris  <rgm@gnu.org>
122694
122695	Stop flymake using dialog boxes for errors (Bug#16622)
122696
122697	* lisp/progmodes/flymake.el (flymake-gui-warnings-enabled):
122698	Mark as obsolete.
122699	(flymake-display-warning): Turn into an obsolete alias.
122700	(flymake-report-fatal-status): Just use message for a warning that
122701	was formerly displayed by default.
122702
1227032016-12-03  Mark Oteiza  <mvoteiza@udel.edu>
122704
122705	Clean up keymap and menu code in image-dired
122706
122707	A function to populate these maps is not necessary, just define the maps
122708	once and for all.
122709	* lisp/image-dired.el (image-dired-show-all-from-dir): Make prompt
122710	clearer and in the spirit of dired's.
122711	(image-dired-define-display-image-mode-keymap):
122712	(image-dired-define-thumbnail-mode-keymap): Remove.
122713	(image-dired-thumbnail-mode-map):
122714	(image-dired-thumbnail-mode-line-up-map):
122715	(image-dired-thumbnail-mode-tag-map): Assimilate all define-key and mode
122716	menu code from the aforementioned removed functions.  Reorder so that
122717	the definitions are inherited properly.
122718	(image-dired-display-current-image-sized): Fix erroneous message.
122719	(image-dired-thumbnail-mode):
122720	(image-dired-display-image-mode): Remove defunct call.
122721
1227222016-12-03  Michael Albinus  <michael.albinus@gmx.de>
122723
122724	Mention `file-name-case-insensitive-p' as magic file name
122725
122726	* doc/lispref/files.texi (Magic File Names):
122727	Mention `file-name-case-insensitive-p'.
122728
122729	* doc/lispref/variables.texi (Connection Local Variables):
122730	Fix typo.
122731
1227322016-12-03  Mark Oteiza  <mvoteiza@udel.edu>
122733
122734	Clean up uses of cl-foo in image-dired
122735
122736	Both instances here are just emulating cl-find-if.
122737	* lisp/image-dired.el: Use cl-lib at compile time.
122738	(image-dired-dired-toggle-marked-thumbs): Don't need let* at the top.
122739	Replace the cl-foo instances with equivalent cl-loops.
122740
1227412016-12-03  Eli Zaretskii  <eliz@gnu.org>
122742
122743	Avoid compilation warnings in nt/*.c files
122744
122745	* nt/cmdproxy.c (fail, vfprintf, fprintf, printf, warn)
122746	(console_event_handler): Add prototypes.
122747	(canon_filename, skip_space, skip_nonspace, get_next_token)
122748	(batch_file_p, search_dir, make_absolute, try_dequote_cmdline)
122749	(spawn, get_env_size): Now static.
122750	* nt/ddeclient.c (DdeCallback): Provide prototype.
122751	* nt/addpm.c (DdeCallback): Provide prototype.
122752	(add_registry): Now static.
122753
1227542016-12-02  Mark Oteiza  <mvoteiza@udel.edu>
122755
122756	Display window before calculating width
122757
122758	* lisp/image-dired.el (image-dired-display-thumbs): Display the buffer
122759	before calling image-dired-line-up and friends, which in turn calculate
122760	the window width. Otherwise, the thumbnail layout will be wrong in
122761	a side-by-side split.
122762
1227632016-12-02  Mark Oteiza  <mvoteiza@udel.edu>
122764
122765	Use pop-to-buffer-same-window
122766
122767	* lisp/image-dired.el (image-dired-dired-with-window-configuration):
122768	(image-dired-dired-edit-comment-and-tags): Instead of switch-to-buffer,
122769	use pop-to-buffer-same-window cf. Bug#22244.
122770	(image-dired-forward-image, image-dired-backward-image): Ignore unused.
122771
1227722016-12-02  Noam Postavsky  <npostavs@gmail.com>
122773
122774	Document watchpoints
122775
122776	* doc/lispref/debugging.texi (Variable Debugging):
122777	* doc/lispref/variables.texi (Watching Variables): New section.
122778	* etc/NEWS: Add entry for watchpoints
122779
1227802016-12-02  Noam Postavsky  <npostavs@gmail.com>
122781
122782	Add tests for watchpoints
122783
122784	* test/src/data-tests.el (data-tests-variable-watchers):
122785	(data-tests-local-variable-watchers): New tests.
122786
1227872016-12-02  Noam Postavsky  <npostavs@gmail.com>
122788
122789	Ensure redisplay using variable watcher
122790
122791	This replaces looking up the variable name in redisplay--variables when
122792	setting it.
122793
122794	* lisp/frame.el: Replace redisplay--variables with add-variable-watcher
122795	calls.
122796	* src/xdisp.c (Fset_buffer_redisplay): Rename from maybe_set_redisplay,
122797	set the redisplay flag unconditionally.
122798	(Vredisplay__variables): Remove it.
122799	* src/data.c (set_internal): Remove maybe_set_redisplay call.
122800
1228012016-12-02  Noam Postavsky  <npostavs@gmail.com>
122802
122803	Add function to trigger debugger on variable write
122804
122805	* lisp/emacs-lisp/debug.el (debug-on-variable-change):
122806	(debug--variable-list):
122807	(cancel-debug-on-variable-change): New functions.
122808	(debugger-setup-buffer): Add watchpoint clause.
122809
1228102016-12-02  Noam Postavsky  <npostavs@gmail.com>
122811
122812	Show watchpoints when describing variables
122813
122814	* src/data.c (Fget_variable_watchers): New function.
122815	* lisp/help-fns.el (describe-variable): Use it to detect watching
122816	functions.
122817
1228182016-12-02  Noam Postavsky  <npostavs@gmail.com>
122819
122820	Add lisp watchpoints
122821
122822	This allows calling a function whenever a symbol-value is changed.
122823
122824	* src/lisp.h (lisp_h_SYMBOL_TRAPPED_WRITE_P):
122825	(SYMBOL_TRAPPED_WRITE_P): New function/macro.
122826	(lisp_h_SYMBOL_CONSTANT_P): Check for SYMBOL_NOWRITE specifically.
122827	(enum symbol_trapped_write): New enumeration.
122828	(struct Lisp_Symbol): Rename field constant to trapped_write.
122829	(make_symbol_constant): New function.
122830
122831	* src/data.c (Fadd_variable_watcher, Fremove_variable_watcher):
122832	(set_symbol_trapped_write, restore_symbol_trapped_write):
122833	(harmonize_variable_watchers, notify_variable_watchers): New functions.
122834
122835	* src/data.c (Fset_default): Call `notify_variable_watchers' for trapped
122836	symbols.
122837	(set_internal): Change bool argument BIND to 3-value enum and call
122838	`notify_variable_watchers' for trapped symbols.
122839
122840	* src/data.c (syms_of_data):
122841	* src/data.c (syms_of_data):
122842	* src/font.c (syms_of_font):
122843	* src/lread.c (intern_sym, init_obarray):
122844	* src/buffer.c (syms_of_buffer): Use make_symbol_constant.
122845
122846	* src/alloc.c (init_symbol):
122847	* src/bytecode.c (exec_byte_code): Use SYMBOL_TRAPPED_WRITE_P.
122848	* src/data.c (Fmake_variable_buffer_local, Fmake_local_variable):
122849	(Fmake_variable_frame_local):
122850	* src/eval.c (Fdefvaralias, specbind): Refer to Lisp_Symbol's
122851	trapped_write instead of constant.
122852	(Ffuncall): Move subr calling code into separate function.
122853	(funcall_subr): New function.
122854
1228552016-12-02  Glenn Morris  <rgm@gnu.org>
122856
122857	Starting doc of user options with "*" is long obsolete
122858
122859	* lisp/battery.el (battery-upower-device): Doc fix.
122860
1228612016-12-02  Nicolas Petton  <nicolas@petton.fr>
122862
122863	Fix bug#25087
122864
122865	* etc/themes/manoj-dark-theme.el: Fix two typos.
122866
122867	(cherry picked from commit 66d6e7e9ecf5e481f8c2c3a4f88411f66c869a6e)
122868
1228692016-12-02  Reuben Thomas  <rrt@sc3d.org>
122870
122871	Fix docstrings to have a complete sentence in first line
122872
122873	* lisp/dired-x.el (dired-omit-case-fold, dired-omit-case-fold-p): Fix
122874	docstrings.
122875
1228762016-12-02  Reuben Thomas  <rrt@sc3d.org>
122877
122878	Remove obsolete comments and commented code from dired-x.el
122879
122880	* lisp/dired-x.el (dired-mark-sexp): Remove a query from 1993 and its
122881	1997 answer about whether dired-mark-sexp is used.
122882	* lisp/dired-x.el (dired-buffers-for-dir-exact): Remove this function
122883	commented out since before dired-x.el was added to RCS in 1994.
122884
1228852016-12-02  Reuben Thomas  <rrt@sc3d.org>
122886
122887	Remove pre-customize dired-x.el documentation
122888
122889	* lisp/dired-x.el (Commentary): Remove USAGE section explaining how to
122890	use dired-x from .emacs.  It is now fully customizable.
122891	* lisp/dired-x.el (dired-guess-shell-alist-user): Remove explanation of
122892	how to set this custom variable in .emacs.  It should be customized.
122893
1228942016-12-02  Reuben Thomas  <rrt@sc3d.org>
122895
122896	Allow files to be matched case-sensitively in dired-x
122897
122898	* lisp/dired-x.el (dired-mark-unmarked-files): Add an argument which
122899	controls case folding for matching the regex (Bug#18716).
122900	(dired-omit-case-fold): New variable.  Defaults to `t' on case-sensitive
122901	systems, `nil' otherwise.
122902	(dired-mark-omitted, dired-omit-expunge): Use dired-omit-case-fold.
122903	* doc/misc/dired-x.texi, etc/NEWS: Document dired-omit-case-fold.
122904
1229052016-12-02  Reuben Thomas  <rrt@sc3d.org>
122906
122907	Add support for curly quotation marks to electric-pair-mode
122908
122909	* lisp/elec-pair.el (electric-pair-pairs, electric-pair-text-pairs): Add
122910	entries for left/right single/double quotation marks, from
122911	electric-quote-chars. Note that this is safe for single quotation marks,
122912	unlike with the ASCII apostrophe, since, although the right quotation
122913	mark can be used as an apostrophe, it is the left quotation mark that is
122914	typed to get a pair (Bug#24901).
122915
1229162016-12-02  Nicolas Petton  <nicolas@petton.fr>
122917
122918	Fix bug#25087
122919
122920	* etc/themes/manoj-dark-theme.el: Fix two typos.
122921
1229222016-12-02  Michael Albinus  <michael.albinus@gmx.de>
122923
122924	Handle quoted file names in Tramp
122925
122926	* lisp/net/tramp.el (tramp-file-name-handler): Handle also the
122927	case the file name is quoted.  This is not trapped by the
122928	reassigned `tramp-file-name-regexp' anymore.
122929
1229302016-12-02  Evgeny Zajcev  <lg.zevlg@gmail.com>
122931
122932	* lisp/battery.el: Add 'battery-upower' -- very fast battery status.
122933
1229342016-12-02  Evgeny Zajcev  <lg.zevlg@gmail.com>
122935
122936	Support for rawrgb images using imagemagick
122937
122938	* src/image.c (imagemagick_load_image): Set wand size before loading
122939	blob when ':width' and ':height' are provided.
122940
122941	* lisp/image.el (image-format-suffixes): Add 'image/x-rgb'.
122942
1229432016-12-02  Nikolay Kudryavtsev  <nikolay.kudryavtsev@gmail.com>
122944
122945	Fix 'sql-connect' on first invocation
122946
122947	* lisp/progmodes/sql.el (sql-connect): Reorder code which sets
122948	param-var.  (Bug#19452)
122949
1229502016-12-02  Eli Zaretskii  <eliz@gnu.org>
122951
122952	* lisp/vc/ediff-util.el (ediff-janitor): Doc fix.  (Bug#25046)
122953
1229542016-12-02  Eli Zaretskii  <eliz@gnu.org>
122955
122956	Improve indexing of 'man'
122957
122958	* doc/emacs/programs.texi (Man Page): Index 'man', not
122959	'manual-entry', as the latter is an alias for the former.
122960	Suggested by Hong Xu <hong@topbug.net>.  (Bug#25033)
122961
1229622016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
122963
122964	Port to Sun C 5.14
122965
122966	Backport from master.  Sun C 5.14 supports C11 but not GCC
122967	extensions, and so refuses to compile Emacs without this patch.
122968	* src/alloc.c (lmalloc, lrealloc): Don't use INT_ADD_WRAPV on
122969	size_t, as in general this macro is restricted to signed types.
122970
1229712016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
122972
122973	Fix type typo on Solaris
122974
122975	* src/sysdep.c (system_process_attributes) [SOLARIS2 && HAVE_PROCFS]:
122976	Fix type mismatch, caught by --enable-check-lisp-object-type.
122977
1229782016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
122979
122980	Merge from gnulib
122981
122982	This incorporates:
122983	2016-11-27 md4,md5,sha*: tune for recent glibc _STRING_INLINE_unaligned
122984	2016-11-21 snippet/c++defs: Simplify _GL_CXXALIAS_* macros.
122985	* build-aux/snippet/c++defs.h:
122986	* lib/md5.c, lib/sha1.c, lib/sha256.c, lib/sha512.c:
122987	Copy from gnulib.
122988
1229892016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
122990
122991	Make struct font_drivers read-only
122992
122993	This simplifies the code a bit, and makes the structs more
122994	shareable and less likely to become corrupt.
122995	* src/alloc.c (cleanup_vector):
122996	* src/font.c (valid_font_driver, font_prepare_cache)
122997	(font_finish_cache, font_get_cache, font_clear_cache)
122998	(register_font_driver, font_update_drivers):
122999	* src/font.h (struct font, struct font_driver_list)
123000	(valid_font_driver):
123001	struct font_drivers are now const.
123002	* src/font.c, src/ftcrfont.c, src/ftfont.c, src/nsfont.m, src/xfont.c:
123003	Omit no-longer-necessary decls.
123004	* src/ftcrfont.c (syms_of_ftcrfont):
123005	* src/ftxfont.c (syms_of_ftxfont):
123006	* src/xftfont.c (syms_of_xftfont):
123007	Omit no-longer-necessary initialization code.
123008	* src/ftcrfont.c (ftcrfont_driver):
123009	* src/ftfont.c (ftfont_driver):
123010	* src/ftxfont.c (ftxfont_driver):
123011	* src/macfont.m (macfont_driver):
123012	* src/nsfont.m (nsfont_driver):
123013	* src/xfont.c (xfont_driver):
123014	* src/xftfont.c (xftfont_driver):
123015	Use C99-style initializer for ease of maintenance, and make it const.
123016	* src/ftcrfont.c, src/ftxfont.c, src/xftfont.c:
123017	Refer to functions like ftfont_text_extents directly.
123018	* src/ftfont.c (ftfont_get_cache, ftfont_list, ftfont_list_family)
123019	(ftfont_has_char, ftfont_encode_char, ftfont_text_extents)
123020	(ftfont_get_bitmap, ftfont_anchor_point, ftfont_otf_capability)
123021	(ftfont_variation_glyphs, ftfont_filter_properties)
123022	(ftfont_combining_capability):
123023	* src/xfont.c (xfont_get_cache):
123024	Now extern, so that other modules’ struct font_drivers can use
123025	them directly.
123026	* src/macfont.m (macfont_descriptor_entity):
123027	* src/nsfont.m (nsfont_open):
123028	Use constant directly; this is clearer.
123029
1230302016-12-01  Richard Stallman  <rms@gnu.org>
123031
123032	Fix mail-combine-fields
123033
123034	* lisp/mail/sendmail.el (mail-combine-fields): Call `save-excursion' to
123035	avoid losing our place in the search loop.
123036
123037	(cherry picked from commit 5fbba6cceaf843cfca449eb000a0a65243b61808)
123038
1230392016-12-01  Helmut Eller  <eller.helmut@gmail.com>
123040
123041	Forth related improvements for etags
123042
123043	Generate correct tags names for things like "(foo)".
123044	Previously "(foo" created.
123045
123046	Fix a bug where a tag for "-bar" was created when encountering things
123047	like "create-bar".
123048
123049	Recognize more words from the Forth-2012 Standard.
123050
123051	* lib-src/etags.c (Forth_words): Check for whitespace after defining
123052	words.  Create tag with make_tag instead of get_tag to avoid notiname
123053	which isn't appropriate for Forth.
123054
123055	* test/manual/etags/forth-src/test-forth.fth: Add some test cases.
123056	* test/manual/etags/ETAGS.good_1:
123057	* test/manual/etags/ETAGS.good_2:
123058	* test/manual/etags/ETAGS.good_3:
123059	* test/manual/etags/ETAGS.good_4:
123060	* test/manual/etags/ETAGS.good_5:
123061	* test/manual/etags/ETAGS.good_6:
123062	* test/manual/etags/CTAGS.good: Adapt to the changes in etags.c and
123063	new test cases.
123064
1230652016-12-01  Eli Zaretskii  <eliz@gnu.org>
123066
123067	Fix bugs with buffer-local tags tables
123068
123069	* lisp/progmodes/etags.el (visit-tags-table): After
123070	'visit-tags-table-buffer' returns, retrieve the value of
123071	'tags-file-name' from the buffer we started in.  Force
123072	recomputation of 'tags-completion-table' next time it is used,
123073	since the list of tags table has changed.
123074	(visit-tags-table-buffer): Accept an additional optional argument
123075	CBUF, the buffer in which to start processing, and switch to that
123076	buffer if CBUF is non-nil.  All callers changed to supply a
123077	non-nil CBUF when they call 'visit-tags-table-buffer' in a loop.
123078	Doc fix.
123079	(tags-completion-table): Accept an optional argument, the buffer
123080	for which to build 'tags-completion-table', and build that
123081	buffer's completion table.
123082	(tags-lazy-completion-table): Pass the current buffer to
123083	'tags-completion-table'.
123084	(tags-file-name): Don't say in the doc string that setting this
123085	variable directly is enough; say that 'visit-tags-table' should be
123086	used for that.  (Bug#158)  (Bug#17326)  (Bug#23164)
123087
123088	* doc/emacs/maintaining.texi (Select Tags Table): Delete the
123089	advice to set 'tags-file-name' directly.
123090
123091	* test/lisp/progmodes/etags-tests.el: New tests.
123092
1230932016-12-01  Martin Rudalics  <rudalics@gmx.at>
123094
123095	Fix documentation of `window-combination-resize'
123096
123097	* src/window.c (Vwindow_combination_resize): Fix doc-string.
123098	* doc/lispref/windows.texi (Recombining Windows): Fix
123099	documentation of `window-combination-resize'.
123100
1231012016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
123102
123103	* src/lisp.h (LISP_INITIALLY_ZERO): Remove.
123104
123105	All uses replaced by LISPSYM_INITIALLY.
123106
1231072016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
123108
123109	Make Cairo safer for --enable-gcc-warnings
123110
123111	* src/image.c (xcolor_to_argb32, pbm_load, jpeg_load_body, gif_load):
123112	Avoid overflow warnings about ‘0xff << 24’.
123113	(xpm_load, gif_load): Avoid unnecessary casts.
123114	(gif_load): Fewer ifdefs.
123115
1231162016-11-30  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
123117
123118	Fix Condition in kbd_buffer_store_buffered_event (bug#19547).
123119
123120	* src/keyboard.c (kbd_buffer_store_buffered_event): Should be NILP and not
123121	!NILP.
123122
1231232016-11-29  Noam Postavsky  <npostavs@gmail.com>
123124
123125	Fix previous commit
123126
123127	* lisp/vc/diff-mode.el (diff-refine-hunk): Make sure to go to beginning
123128	of hunk before calling `diff-hunk-style'.
123129
1231302016-11-29  Noam Postavsky  <npostavs@gmail.com>
123131
123132	* lisp/vc/diff-mode.el (diff-refine-hunk): Remove redundant variable.
123133
1231342016-11-29  Glenn Morris  <rgm@gnu.org>
123135
123136	Use archive-mode for .cbr files
123137
123138	* lisp/files.el (auto-mode-alist): Add cbr.  (Bug#24994)
123139
1231402016-11-29  Paul Eggert  <eggert@cs.ucla.edu>
123141
123142	Pacify Sun C 5.14
123143
123144	* src/lisp.h (enum Lisp_Save_Type): Put SAVE_UNUSED,
123145	SAVED_INTEGER, SAVE_FUNCPOINTER, SAVE_POINTER, and SAVE_OBJECT
123146	into this enum rather than into an anonymous enum.  This avoids
123147	diagnostics from Sun C 5.14 and is a bit clearer anyway.
123148
1231492016-11-29  Paul Eggert  <eggert@cs.ucla.edu>
123150
123151	Adjust lwlib to recent config.h change
123152
123153	* lwlib/lwlib-Xaw.c: Include <stdlib.h> for 'abort' (Bug#24506).
123154
1231552016-11-29  Paul Eggert  <eggert@cs.ucla.edu>
123156
123157	* src/eval.c (clobbered_eassert): Check E's syntax.
123158
1231592016-11-29  Michael Albinus  <michael.albinus@gmx.de>
123160
123161	Improve user retrieval from auth-source in Tramp
123162
123163	* lisp/net/tramp.el (tramp-read-passwd, tramp-clear-passwd):
123164	Use user for auth-source request only in case it exists.
123165
1231662016-11-29  Katsumi Yamaoka  <yamaoka@jpl.org>
123167
123168	shr.el: Don't render a normal table twice
123169
123170	* lisp/net/shr.el (shr-collect-extra-strings-in-table):
123171	Don't render a table if it is called for the first time,
123172	IOW, recognize it to never be invalid (bug#25051).
123173
1231742016-11-29  Bogdan Creanga  <bogdan.creanga@gmail.com>  (tiny change)
123175
123176	Typo fixes in elisp manual
123177
123178	* doc/lispref/sequences.texi: Add missing '4' in result (Bug#25047).
123179	* doc/lispref/strings.texi (Text Comparison): Avoid duplicate
123180	definitions of 'string-prefix-p' and 'string-suffix-p'.
123181	* doc/lispref/symbols.texi (Definitions): Pluralize 'definitions'.
123182
1231832016-11-28  Dima Kogan  <Dmitriy.Kogan@jpl.nasa.gov>
123184
123185	Improve diff-mode navigation/manipulation
123186
123187	This is Bug #17544.
123188
123189	Navigation and use of diff buffers had several annoying corner cases
123190	that this patch fixes.  These corner cases were largely due to
123191	inconsistent treatment of file headers.  Say you have a diff such as
123192	this:
123193
123194	 --- aaa
123195	 +++ bbb
123196	 @@ -52,7 +52,7 @@
123197	 hunk1
123198	 @@ -74,7 +74,7 @@
123199	 hunk2
123200	 --- ccc
123201	 +++ ddd
123202	 @@ -608,6 +608,6 @@
123203	 hunk3
123204	 @@ -654,7 +654,7 @@
123205	 hunk4
123206
123207	The file headers here are the '---' and '+++' lines.  With the point on
123208	such a line, hunk operations would sometimes refer to the next hunk and
123209	sometimes to the previous hunk.  Most of the time it would be the
123210	previous hunk, which is not what the user would expect.  This patch
123211	consistently treats such headers as the next hunk.  So with this patch,
123212	if the point is on the '--- ccc' line, the point is seen as referring to
123213	hunk3.
123214
123215	Specific behaviors this fixes are:
123216
123217	1. It should be possible to place the point in the middle of a diff
123218	buffer, and press M-k repeatedly to kill hunks in the order they appear
123219	in the buffer.  With the point on hunk1, M-k M-k would kill hunk1 then
123220	hunk2.  With the point on hunk3, it would kill hunk3 then hunk4; this is
123221	fine.  However, with the point on hunk2, it'd kill hunk2 then hunk1.
123222	This is fixed by this patch.
123223
123224	2. Similarly, it should be possible to apply hunks in order.  Previously
123225	with the point at the start, C-c C-a would apply the hunk1, then move
123226	the point to the first @@ header, and thus C-c C-a would try to apply
123227	the same hunk again.
123228
123229	* lisp/vc/diff-mode.el (diff--wrap-navigation): New function to add better
123230	navigation logic to diff-{hunk,file}-{next,prev}.
123231	(diff-hunk-next, diff-hunk-prev):
123232	(diff-file-next, diff-file-prev): Better navigation logic if
123233	skip-hunk-start is true, which happens when called interactively.
123234	(diff-bounds-of-hunk, diff-find-source-location):
123235	(diff-apply-hunk, diff-current-defun, diff-refine-hunk): Small tweaks to
123236	improve hunk navigation.
123237
1232382016-11-28  Noam Postavsky  <npostavs@gmail.com>
123239
123240	Upcase Path and ComSpec in process-environment
123241
123242	Since 2016-07-18 "Keep w32 environment settings internal only", the
123243	upcasing of environment variables "Path" and "ComSpec" occurred after
123244	initializing process-environment.  This meant that Lisp code trying to
123245	override "PATH" environment had no effect (Bug #24956).
123246
123247	* src/w32.c (init_environment): Upcase the "Path" and "ComSpec" entries
123248	in Vprocess_environment.
123249
1232502016-11-28  Philipp Stephani  <phst@google.com>
123251
123252	Guard terminal parameter in XTerm mouse mode
123253
123254	It has been observed (in the HTerm terminal emulator) that the
123255	event stored in the 'xterm-mouse-last-down' terminal parameter gets
123256	overwritten during a mouse drag operation, causing Emacs to attempt to
123257	synthesize the non-existing <drag-mouse-0> event.  Copy the event into
123258	the terminal parameter to protect against such modifications.
123259
123260	* lisp/xt-mouse.el (xterm-mouse-translate-1): Guard against modification
123261	of input event list.
123262
1232632016-11-28  Paul Eggert  <eggert@cs.ucla.edu>
123264
123265	Fix template for module functions
123266
123267	Reported by Syohei YOSHIDA (Bug#24932).
123268	* modules/modhelp.py (TEMPLATES):
123269	c_func’s 2nd arg is ptrdiff_t, not int.
123270
1232712016-11-27  Paul Eggert  <eggert@cs.ucla.edu>
123272
123273	Pacify gcc -Wswitch.
123274
123275	* src/keyboard.c (kbd_buffer_store_buffered_event):
123276	Move initialization into default case.
123277
1232782016-11-27  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
123279
123280	Reuse already existing lisp symbols for ignore_event (bug#19547).
123281
123282	* lisp/subr.el (while-no-input-ignore-events): Use them instead.
123283	* src/keyboard.c (kbd_buffer_store_buffered_event):
123284	Use help-echo for HELP_EVENT, iconify-frame for ICONIFY_EVENT,
123285	and make-frame-visible for DEICONIFY_EVENT.
123286	(syms_of_keyboard): Remove unneeded symbols.
123287
1232882016-11-27  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
123289
123290	Allow configuring which event throw-on-input should ignore (bug#19547).
123291
123292	* src/keyboard.c (kbd_buffer_store_buffered_event):
123293	Translate event to corresponding symbol from `while-no-input-ignore-events`
123294	and check them with Fmemq.
123295	(syms_of_keyboard): Declare new lisp variable `while-no-input-ignore-events`
123296	and its symbols.
123297
123298	* lisp/subr.el (while-no-input-ignore-events): Add default values.
123299
123300	* doc/lispref/commands.texi (Event Input Misc):
123301	Document while-no-input-ignore-events.
123302	* etc/NEWS: Same.
123303
1233042016-11-26  Tino Calancha  <tino.calancha@gmail.com>
123305
123306	ash, lsh avoid code duplication
123307
123308	See discussion in:
123309	https://lists.gnu.org/r/emacs-devel/2016-11/msg00469.html
123310	* src/data.c (ash_lsh_impl): New function.
123311	(ash, lsh): Use it.
123312
1233132016-11-26  Simen Heggestøyl  <simenheg@gmail.com>
123314
123315	Add will change module to CSS property list
123316
123317	* lisp/textmodes/css-mode.el (css-property-alist)
123318	(css-value-class-alist): Add new property and value class from CSS
123319	Will Change Module.
123320
1233212016-11-26  Paul Eggert  <eggert@cs.ucla.edu>
123322
123323	Don't access pointers to freed storage in regex.c
123324
123325	Remove __BOUNDED_POINTERS__ code, which does not work with
123326	-fcheck-pointer-bound and which has undefined behavior anyway.
123327	Problem found when trying to port to gcc -fcheck-pointer-bounds.
123328	(This code was removed from glibc and gnulib regex.c many years ago.)
123329	* src/regex.c (ELSE_EXTEND_BUFFER_HIGH_BOUND): Remove.
123330	(EXTEND_BUFFER): Use a more-portable approach that avoids
123331	undefined behavior due to inspecting pointers to freed storage.
123332
1233332016-11-25  Paul Eggert  <eggert@cs.ucla.edu>
123334
123335	Port build to gcc -fcheck-pointer-bounds
123336
123337	This does not let Emacs run, just build.
123338	* lib-src/etags.c (main):
123339	* lib-src/profile.c (main):
123340	Use return, not exit.
123341	* src/bytecode.c (BYTE_CODE_THREADED) [__CHKP__]:
123342	Do not define, as -fcheck-pointer-bounds is incompatible with taking
123343	addresses of labels.
123344	* src/menu.c (Fx_popup_dialog): Use eassume, not eassert,
123345	to pacify gcc -fcheck-pointer-bounds -Wnull-dereference.
123346
1233472016-11-25  Tino Calancha  <tino.calancha@gmail.com>
123348
123349	* lisp/emacs-lisp/subr-x.el (hash-table-keys, hash-table-values): Use cl-loop.
123350
1233512016-11-25  Simen Heggestøyl  <simenheg@gmail.com>
123352
123353	* lisp/rot13.el: Use lexical-binding
123354
1233552016-11-25  Mark Oteiza  <mvoteiza@udel.edu>
123356
123357	Add "using" to cl-loop debug spec (Bug#24750)
123358
123359	* lisp/emacs-lisp/cl-macs.el (cl-loop): Add element to account for
123360	"using" hash table clause.
123361
1233622016-11-25  Hong Xu  <hong@topbug.net>  (tiny change)
123363
123364	Allow user control of progress messages in cpp.el
123365
123366	* lisp/progmodes/cpp.el (cpp-message-min-time-interval): New defcustom.
123367	(cpp-progress-time): Use 'cpp-message-min-time-interval'.  Improve
123368	the doc string.
123369	(cpp-highlight-buffer): Use 'cpp-progress-message' instead of
123370	'message' to print messages.  (Bug#24861)
123371
1233722016-11-25  Wojciech Gac  <wojciech.s.gac@gmail.com>  (tiny change)
123373
123374	New input method 'polish-prefix'
123375
123376	* lisp/leim/quail/latin-pre.el ("polish-prefix"): New input
123377	method.  (Bug#24967)
123378
123379	* etc/NEWS: Mention the new input method.
123380
1233812016-11-25  Damien Cassou  <damien@cassou.me>
123382
123383	* lisp/isearch.el: Add 'provide'.  (Bug#25026)
123384
1233852016-11-25  Philippe Vaucher  <philippe.vaucher@gmail.com>
123386
123387	Add missing 'provide's in preloaded packages
123388
123389	* lisp/composite.el:
123390	* lisp/replace.el:
123391	* lisp/textmodes/text-mode.el: Add provide statement.  (Bug#24985)
123392
1233932016-11-24  Alan Mackenzie  <acm@muc.de>
123394
123395	Handle correctly an (undocumented) bare mode in hack-local-variables.
123396
123397	lisp/files.el (hack-local-variables-prop-line): When a file's first line
123398	contains only a mode specification without the string "mode:", return the mode
123399	symbol only when `handle-mode' is t.
123400
1234012016-11-23  Dima Kogan  <dima@secretsauce.net>
123402
123403	Clarify ediff-directories prompt
123404
123405	* lisp/vc/ediff-mult.el (ediff-filegroup-action):
123406	* lisp/vc/ediff.el (ediff-directories,ediff-directory-revisions,
123407	ediff-directories3, ediff-merge-directories,
123408	ediff-merge-directories-with-ancestor, ediff-merge-directory-revisions,
123409	ediff-merge-directory-revisions-with-ancestor): Clarify prompt message for
123410	filename filter in interactive ediff. The new message makes it clear what is
123411	being filtered
123412
1234132016-11-23  Tino Calancha  <tino.calancha@gmail.com>
123414
123415	* test/lisp/ibuffer-tests.el (ibuffer-test-Bug24997): Add test for Bug#24997.
123416
1234172016-11-23  Ulf Jasper  <ulf.jasper@web.de>
123418
123419	Fix Bug#24199.
123420
123421	* lisp/calendar/icalendar.el (icalendar--do-create-ical-alarm): Quote
123422	  bracket in doc string (make checkdoc happy).
123423	  (icalendar-import-buffer),
123424	  (icalendar-import-buffer),
123425	  (icalendar--convert-ical-to-diary),
123426	  (icalendar--add-diary-entry): Rename argument diary-file to
123427	  diary-filename (make checkdoc happy).
123428	  (icalendar--convert-recurring-to-diary): Take care of byday-clause
123429	  in monthly recurring events.  Actually fix Bug#24199.
123430
123431	* test/lisp/calendar/icalendar-tests.el (icalendar-import-bug-24199): New.
123432
1234332016-11-23  Tino Calancha  <tino.calancha@gmail.com>
123434
123435	* test/lisp/ibuffer-tests.el (ibuffer-test-Bug25000): Add test for Bug25000.
123436
1234372016-11-22  Philipp Stephani  <phst@google.com>
123438
123439	Comint: new user option for C-c M-r and C-c M-s
123440
123441	This option allows the user to specify where to place point after these
123442	commands.
123443
123444	* lisp/comint.el (comint-move-point-for-matching-input): New user option.
123445	(comint-previous-matching-input-from-input): Use user option.
123446
1234472016-11-22  Michael Albinus  <michael.albinus@gmx.de>
123448
123449	Add tramp-eshell-directory-change to eshell-first-time-mode-hook
123450
123451	* lisp/net/tramp.el (tramp-eshell-directory-change): Add it also to
123452	`eshell-first-time-mode-hook'.
123453
1234542016-11-22  Michael Albinus  <michael.albinus@gmx.de>
123455
123456	Dump also connection local variables in Tramp bug reports
123457
123458	* lisp/net/tramp-cmds.el (tramp-bug, tramp-append-tramp-buffers):
123459	Dump also connection local variables.
123460
1234612016-11-21  Mark Oteiza  <mvoteiza@udel.edu>
123462
123463	Make sure elided long buffer names have ellipses added (Bug#24972)
123464
123465	* lisp/ibuffer.el (ibuffer-compile-make-eliding-form): Restore the
123466	string concat, and chop "strvar" less the width of the ellipsis.
123467	(ibuffer-compile-make-substring-form): Add space as padding, to fix
123468	off-by-one in alignment.
123469
1234702016-11-21  Tino Calancha  <tino.calancha@gmail.com>
123471
123472	Buffer-menu-no-header: Detect a fake header
123473
123474	* lisp/buff-menu.el (Buffer-menu-no-header): Use
123475	'tabulated-list-header-overlay-p' (Bug#24855).
123476
1234772016-11-21  Tino Calancha  <tino.calancha@gmail.com>
123478
123479	buff-menu: Add command to unmark all buffers
123480
123481	Bind 'U' in buff-menu, bs and electric-buff-menu to commands
123482	to unmark all buffers (Bug#24880).
123483	* lisp/emacs-lisp/tabulated-list.el (tabulated-list-header-overlay-p):
123484	New predicate; return non-nil if tabulated-list has a fake header.
123485	* lisp/buff-menu.el (Buffer-menu-unmark-all-buffers):
123486	New command; remove all flags that use a particular mark from all the lines.
123487	Bind it to 'M-DEL'.
123488	(Buffer-menu-unmark-all):
123489	New command; remove all flags from all the lines.  Bind it to 'U'.
123490	(Buffer-menu-marker-char, Buffer-menu-del-char): New variables.
123491	(Buffer-menu-delete, Buffer-menu-mark): Use them.
123492	(Buffer-menu-mode-map): Update menus.
123493	(Buffer-menu-mode): Update mode doc.
123494	* lisp/bs.el (bs-unmark-all, bs-unmark-previous): New commands.
123495	(bs-mode-map): Bind them to 'U' and '<backspace>' respectively.
123496	(bs-mode): Update mode doc.
123497	* lisp/ebuff-menu.el (electric-buffer-menu-mode-map):
123498	Bind Buffer-menu-unmark-all to 'U' and Buffer-menu-unmark-all-buffers
123499	to 'M-DEL'.
123500	(bs--down, bs-down, bs--up, bs-up, bs-unmark-current, bs-mark-current):
123501	Use point instead of cursor in doc string.
123502	(electric-buffer-list): Update mode doc.
123503	* doc/emacs/buffers.texi (Several Buffers): Mention Buffer-menu-unmark-all
123504	and Buffer-menu-unmark-all-buffers.
123505
1235062016-11-21  Mark Oteiza  <mvoteiza@udel.edu>
123507
123508	Revert "* lisp/htmlfontify.el (hfy-force-fontification): Use font-lock-ensure."
123509
123510	This reverts commit 10efaf718c5258af0ba62077cf4e2aaf9fb90227.
123511
1235122016-11-21  Mark Oteiza  <mvoteiza@udel.edu>
123513
123514	Port htmlfontify to cl-lib
123515
123516	* lisp/htmlfontify.el: (hfy-box-to-border-assoc, hfy-box-to-style):
123517	(hfy-decor, hfy-face-to-style-i, hfy-face-at, hfy-merge-adjacent-spans):
123518	(hfy-fontify-buffer, htmlfontify-string, hfy-mark-tag-names): Replace
123519	instances of cl aliases with their cl-lib counterparts.
123520
1235212016-11-21  Mark Oteiza  <mvoteiza@udel.edu>
123522
123523	* lisp/htmlfontify.el (hfy-force-fontification): Use font-lock-ensure.
123524
1235252016-11-21  Paul Eggert  <eggert@cs.ucla.edu>
123526
123527	Fix another CANNOT_DUMP problem
123528
123529	Reported by Robert Pluim in:
123530	https://lists.gnu.org/r/emacs-devel/2016-11/msg00468.html
123531	* src/emacs.c (might_dump) [CANNOT_DUMP]: Move enum decl from here ...
123532	* src/lisp.h: ... to here.
123533
1235342016-11-21  Mark Oteiza  <mvoteiza@udel.edu>
123535
123536	Add further consideration to string-width (Bug#24972)
123537
123538	* lisp/ibuffer.el (ibuffer-compile-make-eliding-form):
123539	(ibuffer-compile-make-substring-form): Use truncate-string-to-width.
123540
1235412016-11-21  Katsumi Yamaoka  <yamaoka@jpl.org>
123542
123543	Don't collect strings existing out of <tr>...</tr>
123544
123545	* lisp/net/shr.el (shr-collect-extra-strings-in-table):
123546	Don't collect strings existing out of <tr>...</tr> to avoid
123547	duplication with what `shr-tag-table' renders.
123548
1235492016-11-20  Katsumi Yamaoka  <yamaoka@jpl.org>
123550
123551	* lisp/gnus/gnus-mh.el (gnus-summary-save-in-folder): Slightly change
123552	the last commit.
123553
1235542016-11-20  Mike Kupfer  <m.kupfer@acm.org>
123555
123556	Add a variable to pass additional options to rcvstore
123557
123558	* lisp/gnus/gnus-mh.el (gnus-rcvstore-options): New variable.
123559	(gnus-summary-save-in-folder): Include gnus-rcvstore-options in
123560	the arguments that are passed to rcvstore.
123561
123562	cf. <nntp://news.gmane.org/gmane.emacs.gnus.general/87263>
123563	and followups, i.e., ding mailing list.
123564
1235652016-11-20  Paul Eggert  <eggert@cs.ucla.edu>
123566
123567	Fix undefined refs on some GNU/Linux hosts
123568
123569	Problem reported by Ken Raeburn in:
123570	https://lists.gnu.org/r/emacs-devel/2016-11/msg00463.html
123571	* src/emacs.c (heap_bss_diff) [CANNOT_DUMP]: Remove, as this is
123572	not needed in the CANNOT_UNDUMP case.  All uses removed.  This
123573	removes unwanted references to my_endbss and my_endbss_static,
123574	which are not optimized away on some platforms.
123575
1235762016-11-20  Paul Eggert  <eggert@cs.ucla.edu>
123577
123578	Make CANNOT_DUMP work better on GNU/Linux
123579
123580	Clean up some of the bitrot affecting the CANNOT_DUMP code.  This
123581	lets the build succeed again, and fixes the testing framework so
123582	that most test cases now pass.  About twenty test cases still
123583	fail, though, and we still have Bug#24974.
123584	* configure.ac (CANNOT_DUMP): Now empty if CANNOT_DUMP.
123585	(SYSTEM_MALLOC): Now true if CANNOT_DUMP.  There should no longer
123586	be any point to messing with a private memory allocator unless
123587	Emacs is dumping.
123588	* src/alloc.c (alloc_unexec_pre, alloc_unexec_post, check_pure_size):
123589	* src/image.c (reset_image_types):
123590	* src/lastfile.c (my_endbss, _my_endbss, my_endbss_static):
123591	Do not define if CANNOT_DUMP.
123592	* src/emacs.c (might_dump) [CANNOT_DUMP]: Now always false and local.
123593	(daemon_pipe) [!WINDOWSNT]: Now static.
123594	* test/Makefile.in (mostlyclean): Remove *.tmp files.
123595	(make-test-deps.mk): Elide CANNOT_DUMP chatter.
123596
1235972016-11-20  Paul Eggert  <eggert@cs.ucla.edu>
123598
123599	* src/xdisp.c (block_buffer_flips, unblock_buffer_flips): Now static.
123600
1236012016-11-20  Paul Eggert  <eggert@cs.ucla.edu>
123602
123603	Pacify --enable-gcc-warnings CANNOT_DUMP=yes
123604
123605	* src/editfns.c (dump_tz_string) [CANNOT_DUMP || !HAVE_TZSET]:
123606	Do not define.  If defining, do it in a smaller scope.
123607
1236082016-11-20  Mark Oteiza  <mvoteiza@udel.edu>
123609
123610	* lisp/ibuffer.el (ibuffer-compile-format): Use string-width instead of length
123611
1236122016-11-20  Eli Zaretskii  <eliz@gnu.org>
123613
123614	Fix redrawing non-selected frame after resize on MS-Windows
123615
123616	* src/xdisp.c (redisplay_internal): If all the frames were
123617	successfully updated, reset the "garbaged" flag of each frame, to
123618	make sure it doesn't stay set.
123619
123620	* src/w32term.c (w32_read_socket): Don't clear the frame if it's
123621	"garbaged", since expose_frame won't redraw the foreground then.
123622	(Bug#24642)
123623
1236242016-11-20  Michael Albinus  <michael.albinus@gmx.de>
123625
123626	Add file-local-name
123627
123628	* doc/lispref/files.texi (Magic File Names): Add `file-local-name'.
123629	(Unique File Names): Use it.
123630
123631	* etc/NEWS: Mention `file-local-name'.
123632
123633	* lisp/files.el (file-local-name): New defun.
123634	(file-expand-wildcards):
123635	* lisp/eshell/em-tramp.el (eshell/su, eshell/sudo):
123636	* lisp/eshell/esh-ext.el (eshell-remote-command):
123637	* lisp/eshell/esh-proc.el (eshell-gather-process-output):
123638	* lisp/org/ob-core.el (org-babel-local-file-name):
123639	* lisp/progmodes/gud.el (gud-common-init, gud-format-command):
123640	* lisp/progmodes/python.el (python-shell-send-file):
123641	* lisp/shell.el (shell):
123642	* lisp/vc/ediff-diff.el (ediff-same-file-contents):
123643	* lisp/vc/vc-git.el (vc-git-checkin): Use it.
123644
1236452016-11-20  Tino Calancha  <tino.calancha@gmail.com>
123646
123647	* lisp/ibuffer.el (ibuffer-formats): Mention locked column in doc string.
123648
1236492016-11-19  Tino Calancha  <tino.calancha@gmail.com>
123650
123651	* src/editfns.c (format-time-string): Mention %q in doc string.
123652
1236532016-11-19  Paul Eggert  <eggert@cs.ucla.edu>
123654
123655	Document format-time-string %q
123656
123657	* doc/lispref/os.texi (Time Parsing):
123658	* etc/NEWS: Document new %q functionality taken from gnulib.
123659
1236602016-11-19  Paul Eggert  <eggert@cs.ucla.edu>
123661
123662	Merge from gnulib
123663
123664	This incorporates:
123665	2016-11-15 sys_time: add gnulib::timeval for C++
123666	2016-11-14 snippet/c++defs: fix real-floating arg functions in C++ mode
123667	2016-11-13 strftime: don't use __THROW
123668	2016-11-12 strftime: tune %q
123669	2016-11-12 Merge strftime.c changes from glibc
123670	2016-11-09 manywarnings: fix -Wno-missing-field-initializers detection
123671	2016-11-05 strftime,strptime: support %q to represent the quarter
123672
123673	The glibc changes in turn incorporate the following strftime.c changes:
123674	2015-10-20 Convert misc function definitions to prototype style
123675	2015-09-26 [BZ #18985] out of range data to strftime() causes segfault
123676	2010-01-09 Add support for XPG7 testing
123677	2009-10-30 Implement Burmese language locale for Myanmar
123678	2008-06-13 [BZ #6612] pass reference to tzset_called around
123679	2007-10-16 [BZ #5184] Add tzset_called argument
123680
123681	* build-aux/snippet/c++defs.h, lib/strftime.c, lib/sys_time.in.h:
123682	* m4/manywarnings.m4: Copy from gnulib.
123683
1236842016-11-19  Paul Eggert  <eggert@cs.ucla.edu>
123685
123686	Merge from origin/emacs-25
123687
123688	07f45d7 ; Spelling fix
123689	1a210f0 * admin/release-process: Update versions and blocking bug num...
123690	36bafc9 Improve documentation of functions that accept time values
123691
123692	# Conflicts:
123693	#	admin/release-process
123694	#	src/editfns.c
123695
1236962016-11-19  Paul Eggert  <eggert@cs.ucla.edu>
123697
123698	Merge from origin/emacs-25
123699
123700	4af5981 Add a comment in generated refcards about the source
123701	ef880a5 ; * etc/refcards/calccard.tex: Remove obsolete comment.
123702	4887e7c js-mode: Fix indent problem after a regexp
123703	e992ac0 Fix sluggish display of symbols in UTF-8 language environment
123704	1fc101b Don't confuse how Texinfo outputs @var with the input
123705	91aa5d1 * doc/lispref/display.texi (Scroll Bars): * doc/lispref/frame...
123706	f758fcd * doc/emacs/cmdargs.texi (Initial Options): Copyedit for --da...
123707	5b0cddd More fixes in copyright notices in etc/refcards/
123708	f994c20 Update copyright text in refcards
123709	9ad2ae7 Fix Outline command names
123710	26c3554 Send text received by bracketed paste to process
123711	db0b58d Correct the statement about programming modes always running ...
123712	78aece4 Improve documentation of 'occur'
123713	eb364fd Do call debugger on failed cl-assert
123714	3ef4ee8 Avoid infloop in python
123715	8da810f Don't refer to obsolete FEATURE-unload-hook
123716	4f478ca Improve documentation of dabbrevs
123717	7272e5d * lisp/chistory.el (list-command-history): Doc fix.  (Bug#24890)
123718	89b7482 * lisp/simple.el (set-mark-command): Doc fix.  (Bug#24890)
123719	3b199f7 Improve documentation of some Help commands
123720	93d3a0e Fix documentation of yes-or-no prompts
123721	af04919 Fix documentation of partial completion style
123722	ed80184 Fix documentation of the mode line on emacsclient frames
123723	e6be855 Fix description of 'C-z' in User manual
123724	16f7007 Improve and clarify documentation of Outline Mode
123725	31d93aa Add Emacs version number to nt/README.W32
123726	0b6b815 Fix python-mode hideshow regexp
123727	dc152c5 Modernize usage of 'macOS' in doc and comments
123728	84c5343 Prefer comments /* like this */ in C code
123729	bb61e50 * doc/lispref/loading.texi (Autoload): Better link (Bug#24845).
123730	3ef86fd Clarify documentation of face attribute functions
123731	de51d59 ; * nt/README.W32: Minor copyedits.
123732	db436e9 Don't call debug on failed cl-assert
123733
123734	# Conflicts:
123735	#	doc/emacs/cmdargs.texi
123736	#	etc/NEWS
123737	#	etc/PROBLEMS
123738	#	lisp/auth-source.el
123739	#	lisp/net/tramp-sh.el
123740
1237412016-11-19  Mark Oteiza  <mvoteiza@udel.edu>
123742
123743	Port RefTeX to cl-lib
123744
123745	* lisp/textmodes/reftex-auc.el:
123746	* lisp/textmodes/reftex-cite.el: Use cl-lib.
123747	(reftex-do-citation, reftex-create-bibtex-file): Substitute cl-lib
123748	macros.
123749	* lisp/textmodes/reftex-dcr.el: Use cl-lib.
123750	(reftex-view-regexp-match): Substitute cl-lib macro.
123751	* lisp/textmodes/reftex-global.el: Use cl-lib.
123752	(reftex-find-duplicate-labels, reftex-renumber-simple-labels):
123753	(reftex-translate): Substitute cl-lib macros.
123754	* lisp/textmodes/reftex-index.el: Use cl-lib.
123755	(reftex-index, reftex-index-select-tag, reftex-index-mode-map):
123756	(reftex-index-next-phrase, reftex-index-phrases-info):
123757	(reftex-query-index-phrase): Substitute cl-lib macros.
123758	* lisp/textmodes/reftex-parse.el: Use cl-lib.
123759	(reftex-parse-from-file, reftex-where-am-I, reftex-what-macro):
123760	(reftex-nth-arg, reftex-init-section-numbers, reftex-section-number):
123761	Substitute cl-lib macros.
123762	* lisp/textmodes/reftex-ref.el: Use cl-lib.
123763	(reftex-uniquify-label, reftex-offer-label-menu): Substitute cl-lib
123764	macros.
123765	* lisp/textmodes/reftex-sel.el: Use cl-lib.
123766	(reftex-select-shared-map): Set keymap parent to special-mode-map.
123767	Flatten loop and remove digits and hyphen definitions from the map.
123768	(reftex-select-label-mode-map):
123769	(reftex-select-bib-mode-map): Use cl-lib macro, and flatten other loop.
123770	(reftex-insert-docstruct, reftex-select-unmark): Use cl-lib macros.
123771	* lisp/textmodes/reftex-vars.el (reftex-vref-is-default): Use
123772	cl-pushnew.
123773	* lisp/textmodes/reftex.el: Use cl-lib.
123774	(reftex-docstruct-symbol): Use cl-incf.
123775	(reftex-ref-style-toggle): Replace add-to-list with append.
123776	(reftex-compile-variables): Use cl-lib macros, and functions with
123777	compiler macros. cl-first is just an alias.
123778	(reftex-parse-args, reftex-scanning-info-available-p):
123779	(reftex-select-external-document, reftex-get-file-buffer-force): Use
123780	cl-lib macros.
123781	(reftex-isearch-minor-mode): Replace add-to-list with append.
123782
1237832016-11-19  Tino Calancha  <tino.calancha@gmail.com>
123784
123785	ibuffer-exchange-filters: Simplify code
123786
123787	* lisp/ibuf-ext.el (ibuffer-exchange-filters): Use cl-rotatef.
123788
1237892016-11-19  Eli Zaretskii  <eliz@gnu.org>
123790
123791	Implement getrlimit and setrlimit for MS-Windows
123792
123793	* src/w32heap.c (getrlimit, setrlimit): New functions.
123794	Include w32.h.
123795	* src/emacs.c (main): Use 'rlim_t', not 'long', for values that
123796	should be compatible with 'struct rlimit' members.
123797
123798	* nt/inc/sys/resource.h: New header file.
123799
123800	* nt/mingw-cfg.site (ac_cv_func_getrlimit, ac_cv_func_setrlimit):
123801	Set to "yes".
123802
1238032016-11-18  Mark Oteiza  <mvoteiza@udel.edu>
123804
123805	Move key mappings into reftex-mode-map defvar
123806
123807	* lisp/textmodes/reftex.el (reftex-mode-map): Assimilate top-level
123808	key mappings.
123809	(reftex-reset-mode): Just use dolist.
123810
1238112016-11-18  Mark Oteiza  <mvoteiza@udel.edu>
123812
123813	Derive reftex-index-mode from special-mode
123814
123815	* lisp/textmodes/reftex-index.el (reftex-index-mode-map): Flatten
123816	loop.  Remove digit keys and hyphen, as reftex-index-mode is derived
123817	from special-mode now.
123818	(reftex-index-mode): Derive from special-mode.
123819	(reftex-index-phrases-mode-map): Flatten loop. Fix erroneous docstring.
123820
1238212016-11-18  Mark Oteiza  <mvoteiza@udel.edu>
123822
123823	Clean up reftex-toc-mode-map
123824
123825	* lisp/textmodes/reftex-toc.el: Remove cl.
123826	(reftex-toc-mode-map): Flatten loop.  Remove mapping digit keys and
123827	hyphen, as reftex-toc-mode is derived from special-mode nowadays.
123828
1238292016-11-18  Philipp Stephani  <phst@google.com>
123830
123831	Prevent dubious argument lists
123832
123833	See Bug#24912 and Bug#24913.
123834
123835	* src/eval.c (funcall_lambda): Detect more dubious argument lists.
123836	* lisp/emacs-lisp/bytecomp.el (byte-compile-check-lambda-list): Detect
123837	more dubious argument lists.
123838	* test/src/eval-tests.el (eval-tests--bugs-24912-and-24913): Add unit
123839	test.
123840
1238412016-11-18  Tino Calancha  <tino.calancha@gmail.com>
123842
123843	Add test suite for buff-menu.el
123844
123845	* test/lisp/buff-menu-tests.el: New file.
123846	(buff-menu-24962): Add test for Bug#24962.
123847
1238482016-11-18  Wojciech Gac  <wojciech.s.gac@gmail.com>  (tiny change)
123849
123850	Add cyrillic-tuvan input method
123851
123852	* lisp/leim/quail/cyrillic.el ("cyrillic-tuvan"): New input
123853	method.  (Bug#24942)
123854
123855	* etc/NEWS: Mention addition of 'cyrillic-tuvan' input method.
123856
1238572016-11-18  Alexander Gramiak  <agrambot@gmail.com>
123858
123859	Extend 'indent-relative' when its arg is non-nil
123860
123861	* lisp/indent.el (indent-relative-maybe): New obsolete alias.
123862	(indent-relative-first-indent-point): Renamed from
123863	'indent-relative-maybe'.
123864	(indent-relative): Now accepts an additional optional argument.
123865	The first argument was renamed to FIRST-ONLY.  Doc fix.  Support
123866	the additional arg.  (Bug#24766)
123867
1238682016-11-17  Dmitry Gutov  <dgutov@yandex.ru>
123869
123870	Add example for bug#24854
123871
123872	* test/manual/indent/js.js: Add example for bug#24854.
123873
1238742016-11-17  Mark Oteiza  <mvoteiza@udel.edu>
123875
123876	Port registry.el the rest of the way to cl-lib
123877
123878	This file already is using cl-lib functions at runtime; eieio ultimately
123879	loads cl-lib, which explains why doing so wasn't an issue.
123880	* lisp/registry.el: Require cl-lib.
123881	(registry-db, registry--match, registry-search, registry-delete):
123882	(registry-insert, registry-reindex): Replace cl macros with cl-lib ones.
123883	(registry-collect-prune-candidates): Replace cl function with cl-lib one.
123884
1238852016-11-17  Mark Oteiza  <mvoteiza@udel.edu>
123886
123887	Fix arglist in python.el (Bug#24762)
123888
123889	* lisp/progmodes/python.el: Remove unneeded second args.
123890	(python-define-auxiliary-skeleton): DOC arg should be &optional.
123891
1238922016-11-17  Simen Heggestøyl  <simenheg@gmail.com>
123893
123894	Add tests for rot13.el
123895
123896	* lisp/rot13.el (rot13): Docstring correction.
123897
123898	* test/lisp/rot13-tests.el: New file with tests for rot13.el.
123899
1239002016-11-17  Michael Albinus  <michael.albinus@gmx.de>
123901
123902	Fix Bug#24947 (Tramp + ido)
123903
123904	* lisp/ido.el (ido-read-internal): Prevent eager Tramp connection.
123905
123906	* lisp/net/tramp.el (tramp-handle-file-name-case-insensitive-p):
123907	Run remote tests only if a connection is established only.  (Bug#24947)
123908
1239092016-11-16  Ken Brown  <kbrown@cornell.edu>
123910
123911	Unbreak the build on Darwin (Bug#24957)
123912
123913	* src/fileio.c (file_name_case_insensitive_p) [DARWIN_OS]: Fix
123914	mistakes in recent commit.
123915
1239162016-11-16  Nicolas Petton  <nicolas@petton.fr>
123917
123918	Do not use map.el in seq-tests.el
123919
123920	* test/lisp/emacs-lisp/seq-tests.el: Do not use map.el.  map.el was
123921	introduced in Emacs 25.1, but seq.el is also available in GNU ELPA for
123922	Emacs 24.5.
123923
1239242016-11-16  Tino Calancha  <tino.calancha@gmail.com>
123925
123926	Update parameter :version to 26.1 in several defcustom
123927
123928	Following defcustom where added or modified for 25.2 release.
123929	In fact all these changes belong to 26.1 release.
123930	* lisp/battery.el (battery-linux-sysfs-regexp)
123931	* lisp/comint.el (comint-password-prompt-regexp)
123932	* lisp/dired.el (dired-always-read-filesystem)
123933	* lisp/image.el (image-scaling-factor)
123934	* lisp/ibuf-ext.el (ibuffer-never-search-content-name)
123935	(ibuffer-never-search-content-mode)
123936	* lisp/mouse.el (mouse-select-region-move-to-beginning)
123937	* lisp/net/net-utils.el (iwconfig-program, iwconfig-program-options)
123938	(netstat-program, route-program, route-program-options)
123939	* lisp/net/sieve-manage.el (sieve-manage-default-stream)
123940	* lisp/progmodes/grep.el (grep-save-buffers)
123941	* lisp/vc/add-log.el (change-log-directory-files)
123942	* lisp/url/url-vars.el (url-user-agent)
123943	* lisp/vc/vc-hg.el (vc-hg-symbolic-revision-styles)
123944	(vc-hg-use-file-version-for-mode-line-version)
123945	(vc-hg-parse-hg-data-structures)
123946	* lisp/wdired.el (wdired-create-parent-directories)
123947	* lisp/faces.el (homoglyph, nobreak-hyphen, read-multiple-choice-face)
123948	* lisp/gnus/gnus-art.el (gnus-article-encrypt-protocol)
123949	(gnus-button-url-regexp)
123950	* lisp/window.el (switch-to-buffer-preserve-window-point)
123951	* lisp/ibuffer.el (ibuffer-formats, ibuffer-locked-char)
123952	(ibuffer-locked-buffer)
123953	* lisp/textmodes/flyspell.el (flyspell-sort-corrections-function)
123954	* lisp/emacs-lisp/edebug.el (edebug-sit-on-break)
123955	* lisp/gnus/message.el (message-user-fqdn)
123956	* lisp/simple.el (shell-command-dont-erase-buffer)
123957	(extended-command-suggest-shorter)
123958	* lisp/net/shr.el (shr-use-fonts)
123959	* lisp/files.el (mounted-file-systems, kill-emacs-query-functions)
123960
1239612016-11-15  Glenn Morris  <rgm@gnu.org>
123962
123963	Add --new-daemon, which runs in the foreground and does not fork
123964
123965	This is intended for modern init systems such as systemd,
123966	which manage many of the traditional aspects of daemon behavior
123967	themselves.  (Bug#2677)
123968	* src/emacs.c (daemon_type): New integer.
123969	(usage, standard_args): Add --old-daemon and --new-daemon.
123970	(main): Handle --old-daemon and --new-daemon arguments.
123971	Restrict all the forking and complicated daemon stuff to old-daemon.
123972	(Fdaemon_initialized): Handle new-style daemon.
123973	* src/lisp.h (IS_DAEMON, DAEMON_RUNNING) [!WINDOWNT]:
123974	Replace daemon_pipe with daemon_type.
123975	* doc/emacs/cmdargs.texi (Initial Options):
123976	* doc/emacs/glossary.texi (Glossary):
123977	* doc/emacs/misc.texi (Emacs Server):
123978	* doc/lispref/display.texi (Window Systems):
123979	* doc/lispref/os.texi (Startup Summary): Related doc updates.
123980	* etc/NEWS: Mention this.
123981	* etc/emacs.service: Use Type=simple and --new-daemon.
123982
1239832016-11-15  Glenn Morris  <rgm@gnu.org>
123984
123985	* src/emacs.c (usage_message): Mention named daemon.  (Bug#24949)
123986	* doc/man/emacs.1.in: Likewise.
123987
1239882016-11-15  Ken Brown  <kbrown@cornell.edu>
123989
123990	Simplify case-insensitivity checks on Mac OS X
123991
123992	* src/fileio.c (file_name_case_insensitive_p): Try skipping the
123993	Darwin code and instead using pathconf with _PC_CASE_SENSITIVE.
123994	Leave in two alternatives conditionally compiled based on
123995	DARWIN_OS_CASE_SENSITIVE_FIXME in case pathconf doesn't work.
123996
123997	* etc/PROBLEMS: Mention the possible problem with pathconf on
123998	Mac OS X.
123999
1240002016-11-15  Glenn Morris  <rgm@gnu.org>
124001
124002	* src/emacs.c (sort_args): Warn about multiple matches.
124003
1240042016-11-15  Michael Albinus  <michael.albinus@gmx.de>
124005
124006	Implement file name handler for `file-name-case-insensitive-p'
124007
124008	* doc/lispref/files.texi (Truenames): `file-name-case-insensitive-p'
124009	is also applicable for remote hosts.
124010
124011	* lisp/net/tramp.el (tramp-methods): Improve docstring.
124012	(tramp-file-name-for-operation): Add `file-name-case-insensitive-p'.
124013	(tramp-handle-file-name-case-insensitive-p): New defun.
124014
124015	* lisp/net/tramp-smb.el (tramp-methods) <smb>:
124016	Add `tramp-case-insensitive' entry.
124017
124018	* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
124019	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
124020	* lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
124021	* lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
124022	<file-name-case-insensitive-p>: Add handler.  (Bug#22300, Bug#24441)
124023
1240242016-11-15  Mark Oteiza  <mvoteiza@udel.edu>
124025
124026	Nix more uses of default-FOO variables (Bug#24946)
124027
124028	* lisp/cedet/semantic/util-modes.el (semantic-stickyfunc-mode):
124029	Check for header-line-format instead.
124030	* lisp/emulation/viper.el (viper-load-custom-file): Reference
124031	major-mode instead.
124032	* lisp/mail/feedmail.el (feedmail-fill-to-cc-fill-column): Use
124033	fill-column instead.
124034
1240352016-11-15  Simen Heggestøyl  <simenheg@gmail.com>
124036
124037	Complete the name of PostgreSQL databases
124038
124039	* lisp/progmodes/sql.el (sql-postgres-login-params): Complete database
124040	name.
124041	(sql-postgres-list-databases): New function returning a list of
124042	available PostgreSQL databases.
124043
124044	* test/lisp/progmodes/sql-tests.el: New file with tests for sql.el.
124045
1240462016-11-14  Sam Steingold  <sds@gnu.org>
124047
124048	add `vc-git-print-log-follow' and use it in `vc-git-print-log'
124049
124050	When `vc-git-print-log-follow' is true and all files are
124051	non-directory, pass "--follow" to "git log".
124052	This works around bug#8756 and bug#16422.
124053
1240542016-11-14  Sam Steingold  <sds@gnu.org>
124055
124056	`toggle-truncate-lines' obsoletes `gnus-summary-toggle-truncation'
124057
124058	vc-git-print-log: pass "--follow" to "log" to handle renamed files
124059
1240602016-11-14  Eli Zaretskii  <eliz@gnu.org>
124061
124062	Revert "Improve case-insensitive checks (Bug#24441)"
124063
124064	This reverts commit 2f5e0b1bf7b0ac4f450847db34d599a072020600.
124065	I see no reason for removing code, documentation, and comments
124066	in the original commit.
124067
1240682016-11-14  Wilson Snyder  <wsnyder@wsnyder.org>
124069
124070	Update verilog-mode.el
124071
124072	* lisp/progmodes/verilog-mode.el (verilog-read-decls)
124073	(verilog-calc-1): Fix "default clocking" indentation and
124074	preventing AUTOs from working, bug1084.  Reported by Alan Morgan.
124075	(verilog-diff-report): Fix `verilog-diff-report'
124076	not returning bad status on differences, bug1087.  Reported by
124077	Eric Jackowski.
124078	(verilog-auto-inst-param-value)
124079	(verilog-auto-inst-param-value-type, verilog-read-sub-decls)
124080	(verilog-read-sub-decls-expr, verilog-read-sub-decls-gate)
124081	(verilog-read-sub-decls-line, verilog-read-sub-decls-sig)
124082	(verilog-read-sub-decls-type): When
124083	`verilog-auto-inst-param-value-type' is set, which is now the
124084	default, AUTOINPUT etc will now substitute parameter types from
124085	submodules, bug1061.  Reported by Brad Dobbie.
124086	(verilog-auto-reset, verilog-backward-case-item)
124087	(verilog-extended-case-re, verilog-read-always-signals-recurse):
124088	Fix indentation of randcase, bug1072. Reported by David Rogoff.
124089	(verilog-read-sub-decls-expr)
124090	(verilog-sig-multidim-string): Fix AUTOINST ordering of dimensions
124091	in generated comments, bug1057. Reported by Kaushal Modi.
124092	(verilog-auto-wire-comment, verilog-insert-definition):
124093	Add `verilog-auto-wire-comment' to suppress wire comments. Reported by
124094	Eric Jackowski.
124095	(verilog-extended-complete-re): Fix indentation
124096	of class static functions, bug1053. Reported by Gregory
124097	Czajkowski.
124098	(verilog-module-filenames): Support tramp for
124099	finding verilog modules. Reported by Nevada Sanchez.
124100
1241012016-11-14  Paul Eggert  <eggert@cs.ucla.edu>
124102
124103	Improve case-insensitive checks (Bug#24441)
124104
124105	* doc/lispref/files.texi (Truenames): Simplify documentation,
124106	to avoid giving too much platform-specific information that
124107	may not be accurate anyway.
124108	* src/fileio.c (file_name_case_insensitive_p): Use pathconf with
124109	_PC_CASE_SENSITIVE if _PC_CASE_INSENSITIVE is not available.
124110	Otherwise if one approach fails (e.g., with errno == EINVAL), fall
124111	back on an alternative rather than returning false.  Try skipping
124112	the Darwin code, as it (1) no longer seems to be needed and (2)
124113	does not seem to match the Apple documentation.  Leave in two
124114	alternatives conditionally compiled based on
124115	DARWIN_OS_CASE_SENSITIVE_FIXME in case (1) or (2) is incorrect.
124116
1241172016-11-14  Eli Zaretskii  <eliz@gnu.org>
124118
124119	Fix documentation changes of connection-local variables
124120
124121	* etc/NEWS: Fix last change.
124122	* doc/lispref/variables.texi (Connection Local Variables): Minor fixes.
124123	* doc/lispref/elisp.texi (Top): Update the master menu.
124124
1241252016-11-14  Michael Albinus  <michael.albinus@gmx.de>
124126
124127	Implement connection-local variables
124128
124129	* doc/lispref/variables.texi (Connection Local Variables): New section.
124130
124131	* etc/NEWS: Mention connection-local variables.
124132
124133	* lisp/files-x.el (enable-connection-local-variables)
124134	(connection-local-variables-alist, connection-local-class-alist)
124135	(connection-local-criteria-alist): New defvars.
124136	(connection-local-get-classes)
124137	(connection-local-get-class-variables): New defsubst.
124138	(connection-local-set-classes)
124139	(connection-local-set-class-variables)
124140	(hack-connection-local-variables)
124141	(hack-connection-local-variables-apply): New defuns.
124142	(with-connection-local-classes): New defmacro.
124143
124144	* lisp/net/tramp.el (tramp-set-connection-local-variables): New defun.
124145
124146	* lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
124147	* lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
124148	* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
124149	* lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection): Use it.
124150
124151	* test/lisp/files-x-tests.el: New file.
124152
1241532016-11-14  Tino Calancha  <tino.calancha@gmail.com>
124154
124155	tabulated-list: extend truncation into next align-right column
124156
124157	See discussion on:
124158	https://lists.gnu.org/r/emacs-devel/2016-10/msg01101.html
124159	* lisp/emacs-lisp/tabulated-list.el
124160	(tabulated-list--near-rows): New variable.
124161	(tabulated-list-print, tabulated-list-set-col): Use it.
124162	(tabulated-list--col-local-max-widths): New defsubst.
124163	(tabulated-list-print-col): Use it.  If the next column is
124164	align-right, and has some space left then don't truncate to width,
124165	use some of the available space from the next column.
124166
1241672016-11-13  Katsumi Yamaoka  <yamaoka@jpl.org>
124168
124169	* lisp/net/shr.el (shr-collect-extra-strings-in-table): Fix indentation.
124170
124171	* lisp/net/shr.el (shr-tag-table): Avoid duplication of images.
124172	(shr-collect-extra-strings-in-table): Render images as well.
124173
1241742016-11-13  Ken Brown  <kbrown@cornell.edu>
124175
124176	Use the new 'file-name-case-insensitive-p' function
124177
124178	* lisp/international/mule.el (auto-coding-alist-lookup):
124179	* lisp/files.el (file-truename):
124180	(abbreviate-file-name, set-auto-mode, file-relative-name):
124181	* lisp/emacs-lisp/package.el (package-untar-buffer): Use
124182	'file-name-case-insensitive-p' instead of 'system-type' to test
124183	case-insensitivity.
124184
1241852016-11-13  Glenn Morris  <rgm@gnu.org>
124186
124187	Include a systemd user unit file.  (Bug#16507)
124188
124189	* etc/emacs.service: New file.
124190	* doc/emacs/misc.texi (Emacs Server): Mention systemcl --user.
124191	* Makefile.in (libdir): New, set by configure.
124192	(systemdunitdir): New variable.
124193	(install-etc, uninstall): Handle the emacs.service file.
124194
1241952016-11-13  Paul Eggert  <eggert@cs.ucla.edu>
124196
124197	Port --enable-gcc-warnings to Ubuntu 16.10
124198
124199	* src/gmalloc.c: Include <stdlib.h>, so it declares
124200	hybrid_aligned_alloc (the definiens of the aligned_alloc macro),
124201	so that GCC doesn't complain that hybrid_aligned_alloc is
124202	defined without being declared.
124203
1242042016-11-13  Ken Brown  <kbrown@cornell.edu>
124205
124206	Silence tramp warning
124207
124208	* lisp/net/tramp.el (tramp-file-name-for-operation): Add
124209	'file-name-case-insensitive-p' as a known file primitive.
124210	(Bug#24936)
124211
1242122016-11-12  Ken Brown  <kbrown@cornell.edu>
124213
124214	Check case-sensitivity when renaming files
124215
124216	* src/fileio.c (file_name_case_insensitive_p)
124217	(Ffile_name_case_insensitive_p):  New functions.
124218	(Frename_file): Allow renames that simply change case when the
124219	FILE argument is on a case-insensitive filesystem.  (Bug#24441)
124220
124221	* lisp/dired-aux.el (dired-do-create-files): Use
124222	'file-name-case-insensitive-p' instead of 'system-type' to check
124223	for case-insensitivity.  (Bug#24441)
124224
124225	* doc/lispref/files.texi (Truenames): Document
124226	'file-name-case-insensitive-p'.
124227
1242282016-11-12  Ken Brown  <kbrown@cornell.edu>
124229
124230	Unbreak the build on Cygwin
124231
124232	* configure.ac (system_malloc) [CYGWIN]: Unset.
124233
1242342016-11-11  Mark Oteiza  <mvoteiza@udel.edu>
124235
124236	Update chart.el
124237
124238	* lisp/emacs-lisp/chart.el (chart-mode): Derive from special-mode.
124239	(chart-draw): Wrap in with-silent-modifications.  Instead of inserting a
124240	fixed number of newlines, use window-height.
124241	(chart-bar):
124242	(chart-trim): Use dolist.
124243	(chart-file-count): The previous implementation was buggy and missed
124244	extensions.  Use file-name-extension instead to detect file extensions.
124245	Also use dolist and cl-incf to reduce verbosity.
124246
1242472016-11-11  Katsumi Yamaoka  <yamaoka@jpl.org>
124248
124249	* lisp/net/shr.el (shr--preferred-image): Add CR to whitespace regexps.
124250	(shr-collect-extra-strings-in-table):
124251	Render extra tables in an invalid html as well.
124252
1242532016-11-10  Katsumi Yamaoka  <yamaoka@jpl.org>
124254
124255	* lisp/net/shr.el (shr--preferred-image): Ignore whitespace (bug#24893).
124256
1242572016-11-09  Eli Zaretskii  <eliz@gnu.org>
124258
124259	Resurrect 'memory-limit' on MS-Windows
124260
124261	* nt/mingw-cfg.site (ac_cv_func_sbrk): Set to "yes", otherwise
124262	'memory-limit' will produce a trivial and useless result on Windows.
124263
1242642016-11-09  Mark Oteiza  <mvoteiza@udel.edu>
124265
124266	Update quickurl.el
124267
124268	* lisp/net/quickurl.el (quickurl-format-function):
124269	(quickurl-sort-function): Use named function.
124270	(quickurl-list-mode-map): Remove lines that are extraneous now that the
124271	parent mode is special-mode.
124272	(quickurl-format-url, quickurl-sort-urls): New functions.
124273	(quickurl-read, quickurl): Use defun, as no cl-defun feature appears to
124274	be used.
124275	(quickurl-list-mode): Derive from special-mode.  Nix setting
124276	buffer-read-only: special-mode does that.
124277	(quickurl-list-populate-buffer): Use dolist instead.
124278	(quickurl-list-quit): Use quit-window.  It looks like this was written
124279	before the quit-window rewrite.  quit-window is very useful now.
124280
1242812016-11-09  Michael Albinus  <michael.albinus@gmx.de>
124282
124283	Refine multi-hop specs in Tramp
124284
124285	* lisp/net/tramp.el (tramp-tramp-file-p): Suppress "/:" and "/c:".
124286
124287	* test/lisp/net/tramp-tests.el
124288	(tramp-test01-file-name-syntax): Multi-hop specs don't need a
124289	method.  "/h:" is allowed on non MS Windows.
124290
1242912016-11-08  Daniel Colascione  <dancol@dancol.org>
124292
124293	Avoid infloop in python
124294
124295	Fix bug#24905
124296
124297	* lisp/progmodes/python.el (python-info-docstring-p): Improve
124298	infloop avoidance: replace (bobp) with generic test for
124299	forward progress.
124300	* test/lisp/progmodes/python-tests.el (python-bob-infloop-avoid): Add
124301	test for bug#24905
124302
1243032016-11-08  Daniel Colascione  <dancol@dancol.org>
124304
124305	Make gnus/message.el work correctly under lexical binding
124306
124307	* lisp/gnus/message.el (message-send-mail): Rename `arg' to
124308	`_' to shut up the byte compiler.
124309	(sha1-maximum-internal-length, smtpmail-smtp-server)
124310	(smtpmail-smtp-service): add missing defvars
124311
1243122016-11-08  Michael Albinus  <michael.albinus@gmx.de>
124313
124314	Fix Bug#24889
124315
124316	* lisp/net/tramp.el (tramp-file-name-regexp): Make it a
124317	defvar.  Fix docstring.
124318	(tramp-completion-file-name-handler-alist): Fix docstring.
124319	(tramp-register-file-name-handlers): Reassign
124320	`tramp-file-name-regexp' to the car of
124321	`tramp-file-name-structure'.  (Bug#24889)
124322
1243232016-11-08  Paul Eggert  <eggert@cs.ucla.edu>
124324
124325	Port to FreeBSD 11 AMD
124326
124327	Problem reported by Ashish Shukla (Bug#24892).  I tested
124328	this on FreeBSD 11 x86-64 with HAVE_SBRK manually undefined.
124329	* configure.ac (system_malloc): Set to 'yes' if there is no sbrk.
124330	(sbrk): Check whether it exists.
124331	* src/alloc.c (my_heap_start) [!GNU_LINUX]:
124332	Do not define, since this function is now used only on GNU/Linux,
124333	and sbrk might not exist on other platforms.
124334	(malloc_initialize_hook) [!GNU_LINUX]:
124335	Do not call my_heap_start, since its side effect will never be used.
124336	(Fmemory_limit) [!HAVE_SBRK]: Do not call sbrk.
124337	* src/unexelf.c (unexec) [!HAVE_SBRK]: Assume that nothing like
124338	sbrk exists.
124339
1243402016-11-08  Paul Eggert  <eggert@cs.ucla.edu>
124341
124342	Port emacsclient to FreeBSD 11 etc.
124343
124344	* lib-src/emacsclient.c: Include <string.h>.  This is needed on
124345	platforms like FreeBSD 11 that use code involving strlen etc., and
124346	because <config.h> no longer includes string.h.
124347
1243482016-11-07  Mark Oteiza  <mvoteiza@udel.edu>
124349
124350	Prescribe history for read-regexp in query-replace
124351
124352	In the fix for bug#24580, the history argument for read-regexp was
124353	removed erroneously; read-regexp's history argument defaults to
124354	regexp-history, not minibuffer-history.
124355	* lisp/replace.el (query-replace-read-from): Tell read-regexp to use
124356	minibuffer-history.  Fixes bug#24873.
124357
1243582016-11-07  Mark Oteiza  <mvoteiza@udel.edu>
124359
124360	Remove obsolete default-FOO variables
124361
124362	* etc/NEWS: Indicate the removed variables.
124363	* lisp/emacs-lisp/edebug.el (edebug-outside-mark): Fix comment.
124364	* lisp/subr.el (default-mode-line-format, default-header-line-format):
124365	(default-line-spacing, default-abbrev-mode, default-ctl-arrow):
124366	(default-truncate-lines, default-left-margin, default-tab-width):
124367	(default-case-fold-search, default-left-margin-width):
124368	(default-right-margin-width, default-left-fringe-width):
124369	(default-right-fringe-width, default-fringes-outside-margins):
124370	(default-scroll-bar-width, default-vertical-scroll-bar):
124371	(default-indicate-empty-lines, default-indicate-buffer-boundaries):
124372	(default-fringe-indicator-alist, default-fringe-cursor-alist):
124373	(default-scroll-up-aggressively, default-scroll-down-aggressively):
124374	(default-fill-column, default-cursor-type):
124375	(default-cursor-in-non-selected-windows):
124376	(default-buffer-file-coding-system, default-major-mode):
124377	(default-enable-multibyte-characters): Remove obsolete declarations.
124378	* src/buffer.c (default-mode-line-format, default-header-line-format):
124379	(default-line-spacing, default-abbrev-mode, default-ctl-arrow):
124380	(default-truncate-lines, default-left-margin, default-tab-width):
124381	(default-case-fold-search, default-left-margin-width):
124382	(default-right-margin-width, default-left-fringe-width):
124383	(default-right-fringe-width, default-fringes-outside-margins):
124384	(default-scroll-bar-width, default-vertical-scroll-bar):
124385	(default-indicate-empty-lines, default-indicate-buffer-boundaries):
124386	(default-fringe-indicator-alist, default-fringe-cursor-alist):
124387	(default-scroll-up-aggressively, default-scroll-down-aggressively):
124388	(default-fill-column, default-cursor-type):
124389	(default-cursor-in-non-selected-windows):
124390	(default-buffer-file-coding-system, default-major-mode):
124391	(default-enable-multibyte-characters): Remove.
124392	* src/fileio.c (choose_write_coding_system): Fix comment.
124393	* src/lisp.h (DEFVAR_BUFFER_DEFAULTS): Remove.
124394
1243952016-11-07  Eli Zaretskii  <eliz@gnu.org>
124396
124397	Improve the tutorial
124398
124399	* etc/tutorials/TUTORIAL: Minor copyedits.  (Bug#24890)
124400	* etc/tutorials/TUTORIAL.he: Follow suit.
124401
1244022016-11-06  Paul Eggert  <eggert@cs.ucla.edu>
124403
124404	Restore file descriptor limit in subprocesses
124405
124406	Problem reported by Philipp Stephani (Bug#24869).
124407	* src/callproc.c (child_setup) [!DOS_NT]:
124408	Call restore_nofile_limit in the child.
124409	* src/process.c (nofile_limit) [HAVE_SETRLIMIT]: New static var.
124410	(restore_nofile_limit): New function.
124411	(init_process_emacs) [HAVE_SETRLIMIT]: Set the new var.
124412
1244132016-11-06  Mark Oteiza  <mvoteiza@udel.edu>
124414
124415	Remove some subr.el functions obsoleted in 22.1
124416
124417	* etc/NEWS: Document removed functions.  Also mention the "face"
124418	variables that have been removed recently.
124419	* lisp/subr.el (window-dot, set-window-dot, read-input, show-buffer):
124420	(eval-current-buffer, string-to-int, insert-string, makehash): Remove.
124421
1244222016-11-05  Paul Eggert  <eggert@cs.ucla.edu>
124423
124424	Prefer comments /* like this */ in C code
124425
1244262016-11-05  Johan Bockgård  <bojohan@gnu.org>
124427
124428	* lisp/subr.el (copy-tree): Handle vector in cdr. (Bug#24876)
124429
1244302016-11-05  Nick Terrell  <nickrterrell@gmail.com>  (tiny change)
124431
124432	Support zstd compressed files
124433
124434	* lisp/jka-cmpr-hook.el (jka-compr-compression-info-list): Add
124435	zstd compression info: <http://facebook.github.io/zstd/>.
124436	(jka-compr-mode-alist-additions): Handle .tzst suffix for zstd
124437	compressed tar archives.  (Bug#24853)
124438
1244392016-11-05  Eli Zaretskii  <eliz@gnu.org>
124440
124441	Enlarge DUMPED_HEAP_SIZE
124442
124443	* src/w32heap.c (DUMPED_HEAP_SIZE) [_WIN64 || WIDE_EMACS_INT]:
124444	Enlarge to 21MB.  Reported by Richard Copley <rcopley@gmail.com>.
124445
1244462016-11-04  Paul Eggert  <eggert@cs.ucla.edu>
124447
124448	Update from gnulib
124449
124450	This incorporates:
124451	2016-11-03 intprops: port to older XL C
124452	* lib/intprops.h: Copy from gnulib.
124453
1244542016-11-04  Paul Eggert  <eggert@cs.ucla.edu>
124455
124456	Merge from origin/emacs-25
124457
124458	acae275 ; Spelling fixes
124459	d8fac73 Update README for precompiled windows Emacs.
124460	23570fd Clarify documentation of 'vc-responsible-backend' wrt symlinks
124461	f708cb2 Clarify doc string of 'transpose-sexps'
124462	cd05b1d Fix docstring of 'browse-url-firefox-new-window-is-tab'
124463	bdc89eb Improve documentation of 'font-lock-remove-keywords'
124464	4a0c590 Fix documentation of the command summary key
124465	0221b7a Mark relocation workarounds with REL_ALLOC
124466
1244672016-11-04  Paul Eggert  <eggert@cs.ucla.edu>
124468
124469	Merge from origin/emacs-25
124470
124471	dbb3410 python.el: Fix detection of native completion in Python 3 (bu...
124472	91c97b6 * Makefile.in (install-arch-indep): Skip etc/refcards/emacsve...
124473	9c1cb8d * lisp/subr.el (set-transient-map): Exit for unbound events (...
124474	9c247d2 Update category-table for Chinese characters
124475	43986d1 Inhibit buffer relocation during regex searches
124476	fee4cef Revert fixes to allocation of regex matching
124477
1244782016-11-04  Mark Oteiza  <mvoteiza@udel.edu>
124479
124480	Fix references to long obsoleted functions/aliases
124481
124482	* doc/lispintro/emacs-lisp-intro.texi (Miscellaneous):
124483	* doc/misc/cl.texi (Conditionals):
124484	* doc/misc/speedbar.texi (Major Display Modes): Use string-to-number,
124485	not string-to-int.
124486	* lisp/emulation/viper.el (viper-go-away): Use major-mode, not
124487	default-major-mode.
124488	* lisp/textmodes/reftex-toc.el (reftex-toc-visit-location): show-window
124489	here is not a function call, but shorten the binding names anyways.
124490	Also, use pop-to-buffer-same-window instead of switch-to-buffer cf
124491	Bug#22244.
124492	* lisp/textmodes/sgml-mode.el (html-tag-alist): Use read-string, not
124493	read-input.
124494
1244952016-11-04  Mark Oteiza  <mvoteiza@udel.edu>
124496
124497	* lisp/emacs-lisp/pcase.el (pcase-dolist): Add a docstring.
124498
1244992016-11-04  Katsumi Yamaoka  <yamaoka@jpl.org>
124500
124501	* lisp/net/shr.el (shr-collect-extra-strings-in-table) New function
124502	that gathers extra strings in an invalid html.  (bug#24831)
124503	(shr-tag-table): Use it.
124504
1245052016-11-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>
124506
124507	Add 'x-ctrl-keysym' support on X window system
124508
124509	* src/xterm.c (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers):
124510	Support 'x-ctrl-keysym'.
124511	(syms_of_xterm): DEFSYM "ctrl" and put a proper modifier-value
124512	property on it.
124513	<x-ctrl-keysym>: New DEFVAR_LISP.
124514	<x-alt-keysym, x-hyper-keysym, x-meta-keysym, x-super-keysym>: Doc
124515	fix.  (Bug#24822)
124516
124517	* etc/NEWS: Mention the addition of 'x-ctrl-keysym'.
124518
124519	* doc/lispref/os.texi (X11 Keysyms): Document 'x-ctrl-keysym'.
124520
1245212016-11-04  Alexander Gramiak  <agrambot@gmail.com>
124522
124523	Improve autoload error reporting
124524
124525	* src/eval.c (Fautoload_do_load): Include the absolute file name
124526	in the error message.
124527
1245282016-11-03  Reuben Thomas  <rrt@sc3d.org>
124529
124530	Stop force parameter of whitespace-report-region having global effect
124531
124532	* lisp/whitespace.el (whitespace-report-region): Force parameter
124533	previously changed whitespace-style globally.  Fix this, and use
124534	whitespace-active-style, to take account of any changes the user may
124535	have made.  Simplify the documentation: the force parameter simply
124536	forces all classes of whitespace problem to be considered.
124537	(Bug#24745)
124538
1245392016-11-03  Reuben Thomas  <rrt@sc3d.org>
124540
124541	Document use of `tab-width'
124542
124543	* lisp/whitespace.el: When talking about `8 or more spaces', mention
124544	`tab-width' instead of 8.  (Bug#24745)
124545
1245462016-11-03  Reuben Thomas  <rrt@sc3d.org>
124547
124548	Make whitespace-report-region respect current settings
124549
124550	* lisp/whitespace.el (whitespace-report-region): Make it respect
124551	whitespace-style, including any additions made by the force parameter.
124552	This means that the function does not return t unless a whitespace
124553	problem that the user cares about is reported.  (Bug#24745)
124554
1245552016-11-03  Reuben Thomas  <rrt@sc3d.org>
124556
124557	Fix whitespace-space-after-tab-regexp
124558
124559	* lisp/whitespace.el (whitespace-space-after-tab-regexp)
124560	(whitespace-regexp): Match all the spaces after tabs for highlighting,
124561	not just the first tab-width.  Fix whitespace-space-after-tab::space
124562	version so that it requires at least tab-width spaces, not just 1.
124563	(Bug#24745)
124564
1245652016-11-03  Reuben Thomas  <rrt@sc3d.org>
124566
124567	Remove duplicate documentation
124568
124569	* lisp/whitespace.el: Remove duplicate documentation from the Commentary
124570	  section which duplicate and in some places contradict (due to being
124571	  out of date) the docstrings (Bug#24745).
124572
1245732016-11-03  Reuben Thomas  <rrt@sc3d.org>
124574
124575	Fix bob/eob checks
124576
124577	* lisp/whitespace.el (whitespace-empty-at-bob-regexp)
124578	(whitespace-empty-at-eob-regexp, whitespace-cleanup): Make `empty' checks
124579	work at beginning & end of buffer in whitespace-report-region, and only
124580	there (i.e. they will never match in regions that don't include the
124581	start or end of the buffer).  (Bug#24745)
124582
1245832016-11-03  Tino Calancha  <tino.calancha@gmail.com>
124584
124585	(thing-at-point 'list) return nil if no list at point
124586
124587	* lisp/thingatpt.el (thing-at-point-bounds-of-list-at-point):
124588	Check first if we are at the beginning of a top-level sexp (Bug#24627).
124589	If point is inside a comment or string, look for a list out of the
124590	comment/string.
124591	Escape '[' in doc string.
124592	* test/lisp/thingatpt-tests.el (thing-at-point-bug24627): Update
124593	expected test result as pass.
124594
1245952016-11-02  Mark Oteiza  <mvoteiza@udel.edu>
124596
124597	Remove antlr face aliases obsoleted in 22.1
124598
124599	* lisp/progmodes/antlr-mode.el: Remove obsolete aliases
124600	(antlr-default-face, antlr-keyword-face, antlr-syntax-face):
124601	(antlr-ruledef-face, antlr-tokendef-face, antlr-ruleref-face):
124602	(antlr-tokenref-face, antlr-literal-face):
124603	(antlr-literal-face): Remove.
124604	(antlr-font-lock-additional-keywords): Use face symbols instead.
124605
1246062016-11-02  Daniel Colascione  <dancol@dancol.org>
124607
124608	Revert "Disable bracketed paste in a terminal in char mode"
124609
124610	This change causes regressions, and besides, disabling BPM frame-wide
124611	for the sake of one buffer is the wrong solution.
124612
124613	This reverts commit cf566b46a6cf85c6d54d0b0db80e32ed6ae8d1ca.
124614
1246152016-11-02  Mark Oteiza  <mvoteiza@udel.edu>
124616
124617	Revert change to eww-suggest-uris
124618
124619	The introduced append is ugly and can yield '(nil); doing delq on it
124620	would be hacks on hacks.
124621	* lisp/net/eww.el: Require cl-lib at run time.
124622	(eww-suggest-uris): Restore eww-current-url, reverting previous change.
124623	(eww): Remove erroneous append.
124624	(eww-open-in-new-buffer): Check if the return from eww-suggested-uris is
124625	equal to eww-current-url, which is nil anyways if we are not in an EWW
124626	buffer.
124627
1246282016-11-02  Mark Oteiza  <mvoteiza@udel.edu>
124629
124630	Add eww-open-in-new-buffer to EWW
124631
124632	* doc/misc/eww.texi (Basic): Document new command and key.
124633	* etc/NEWS: Mention new key and its purpose.
124634	* lisp/net/eww.el (eww-suggest-uris): Remove eww-current-url.
124635	(eww): Append (eww-current-url) to the prompt defaults.
124636	(eww-open-in-new-buffer): New command.
124637	(eww-mode-map): Bind it and add a menu item.
124638
1246392016-11-02  Mark Oteiza  <mvoteiza@udel.edu>
124640
124641	Migrate auth-source to cl-lib
124642
124643	* lisp/auth-source.el: Use cl-lib.
124644	(auth-source-read-char-choice, auth-source-backend-parse-parameters):
124645	(auth-source-search): Replace cl calls with cl-lib ones.
124646	(auth-source-netrc-cache):
124647	(auth-source-forget+): Use cl-do-symbols instead.
124648	(auth-source-specmatchp, auth-source-netrc-parse):
124649	(auth-source-netrc-search, auth-source-netrc-create):
124650	(auth-source-netrc-saver, auth-source-secrets-listify-pattern):
124651	(auth-source-secrets-search, auth-source-secrets-create):
124652	(auth-source-macos-keychain-search, auth-source--decode-octal-string):
124653	(auth-source-macos-keychain-search-items, auth-source-plstore-search):
124654	(auth-source-plstore-create): Replace cl calls with cl-lib ones.
124655
1246562016-11-01  Lars Ingebrigtsen  <larsi@gnus.org>
124657
124658	Don't segfault on timed-out TLS connections
124659
124660	* src/process.c (finish_after_tls_connection): Check that the
124661	file descriptor is still alive before proceeding (bug#24811).
124662	Also clean up the code slightly.
124663
1246642016-11-01  Eli Zaretskii  <eliz@gnu.org>
124665
124666	Support 'TARGETS' in clipboard selections on MS-Windows
124667
124668	* src/w32select.c (Fw32_selection_targets): New function.
124669
124670	* lisp/term/w32-win.el (w32--get-selection): Call
124671	'w32-selection-targets' to obtain the list of data formats
124672	available in the clipboard.
124673
1246742016-11-01  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
124675
124676	Fix documentation for 'eudc-options-file'
124677
124678	* doc/misc/eudc.texi (The Server Hotlist): Update the default
124679	value of 'eudc-options-file'.
124680
1246812016-11-01  Tibor Csögör  <tibi@tiborius.net>
124682
124683	Fix documentation of 'eudc-inline-expansion-format'
124684
124685	* doc/misc/eudc.texi (Inline Query Expansion): Fix the default value of
124686	'eudc-inline-expansion-format'. (Bug#24840)
124687
1246882016-10-31  Mark Oteiza  <mvoteiza@udel.edu>
124689
124690	Turn on lexical-binding in some more libs
124691
124692	* lisp/calendar/icalendar.el:
124693	* lisp/emacs-lisp/regexp-opt.el:
124694	* lisp/emacs-lisp/timer.el:
124695	* lisp/gnus/message.el:
124696	* lisp/hex-util.el: Turn on lexical-binding.
124697
1246982016-10-31  Mark Oteiza  <mvoteiza@udel.edu>
124699
124700	Turn on lexical-binding in some net libs
124701
124702	* lisp/net/dbus.el: Turn on lexical-binding.
124703	(dbus-list-hash-table, dbus-list-known-names):
124704	(dbus-introspect-get-node-names, dbus-introspect-get-interface-names):
124705	(dbus-introspect-get-method-names, dbus-introspect-get-signal-names):
124706	(dbus-introspect-get-property-names):
124707	(dbus-introspect-get-argument-names, dbus-get-all-properties):
124708	(dbus-property-handler, dbus-get-all-managed-objects):
124709	(dbus-managed-object-handler): Replace add-to-list with push. Add
124710	nreverse in some places where the APPEND argument of add-to-list was
124711	used.
124712	* lisp/net/network-stream.el: Turn on lexical-binding.
124713	* lisp/net/newsticker.el: Turn on lexical-binding.
124714	* lisp/net/shr.el: Turn on lexical-binding.
124715	(shr-make-placeholder-image): Remove unused variable binding.
124716	(shr-inspect-table): Replace ignored bindings with underscore.
124717
1247182016-10-31  Mark Oteiza  <mvoteiza@udel.edu>
124719
124720	Turn on lexical-binding in some url libs
124721
124722	* lisp/url/url-auth.el:
124723	* lisp/url/url-expand.el:
124724	* lisp/url/url-future.el:
124725	* lisp/url/url-parse.el:
124726	* lisp/url/url-util.el: Turn on lexical-binding.
124727
1247282016-10-31  Johan Bockgård  <bojohan@gnu.org>
124729
124730	* lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet): Fix debug spec
124731
124732	(Bug#24733)
124733
1247342016-10-30  Alan Mackenzie  <acm@muc.de>
124735
124736	Handle chars of syntax word which are also flagged as comment delimiters
124737
124738	src/syntax.c (scan_sexps_forward): When chars of syntax word are also flagged
124739	as the start/end of two char comment delimiters, recognize a comment delimiter
124740	in preference to a portion of a word.  This fixes bug #24767.
124741
1247422016-10-29  Daniel Colascione  <dancol@dancol.org>
124743
124744	Speed up initialization by preferring /dev/urandom to GnuTLS
124745
124746	* src/sysdep.c (init_random): Try /dev/urandom before GnuTLS.
124747
1247482016-10-29  José L. Doménech  <domenechjosel@gmail.com>
124749
124750	Quote file names in dired compression commands
124751
124752	* lisp/dired-aux.el (dired-do-compress-to): Change the string
124753	used as shell command for compression by quoting the filenames
124754	used for input and output (Bug #24620).
124755
1247562016-10-29  Eli Zaretskii  <eliz@gnu.org>
124757
124758	Avoid errors in posn-at-point for large images
124759
124760	* src/keyboard.c (Fposn_at_point): If pos-visible-in-window-p
124761	returns a 6-member list for a partially visible glyph, pass the
124762	sum of Y and RTOP to posn-at-x-y, since that's where the visible
124763	portion of that glyph begins on display.  (Bug#24804)  (Bug#21832)
124764	(Bug#23809)
124765
1247662016-10-29  Eli Zaretskii  <eliz@gnu.org>
124767
124768	Unbreak MS-Windows build
124769
124770	* src/w32term.c (XCreateGC): Second argument is now HWND, and its
124771	name is "wignore".
124772	(x_set_cursor_gc, x_set_mouse_face_gc)
124773	(x_draw_glyph_string_background, x_draw_glyph_string_bg_rect)
124774	(x_draw_image_glyph_string, x_draw_stretch_glyph_string): Don't
124775	use s->window, which doesn't exist anymore.
124776
124777	* src/w32term.h (XCreateGC): Adjust prototype.
124778
1247792016-10-28  Daniel Colascione  <dancol@dancol.org>
124780
124781	Add double-buffering support to reduce flicker
124782
124783	* src/dispextern.h (struct glyph_string): Remove window member
124784	(block_buffer_flips, unblock_buffer_flips)
124785	(buffer_flipping_blocked_p): Declare.
124786
124787	* src/xterm.h (struct x_display_info): New member supports_xdbe.
124788	(struct x_output): New members draw_desc and need_buffer_flip.
124789	(FRAME_X_DRAWABLE, FRAME_X_RAW_DRAWABLE)
124790	(FRAME_X_DOUBLE_BUFFERED_P)
124791	(FRAME_X_NEED_BUFFER_FLIP): New macros.
124792	(set_up_x_back_buffer, tear_down_x_back_buffer)
124793	(initial_set_up_x_back_buffer): Declare.
124794
124795	* src/xterm.c: Include Xdbe.h.
124796	(x_begin_cr_clip, x_fill_rectangle, x_draw_rectangle)
124797	(x_draw_vertical_window_border, x_update_end)
124798	(x_setup_relief_color, x_draw_relief_rect)
124799	(x_draw_fringe_bitmap, x_shift_glyphs_for_insert)
124800	(x_scroll_run, x_draw_hollow_cursor, x_draw_bar_cursor): Use
124801	FRAME_X_DRAWABLE instead of FRAME_X_WINDOW; rename local
124802	variables appropriately; substitute calls to XClearArea with
124803	x_clear_area, which DTRT for double buffering.
124804	(x_clear_window, x_clear_area): In double-buffering mode, use
124805	rect-drawing X functions instead of XClearWindow and
124806	XClearArea, which always operate on the front buffer.
124807	(show_back_buffer): New function.
124808	(XTframe_up_to_date): Call show_back_buffer when done.
124809	(x_clear_frame, x_clear_frame_area): Remove obsolete calls to
124810	gtk_widget_queue_draw to refresh scroll bars; scroll bars are
124811	now independent X windows.
124812	(handle_one_xevent): Call font_drop_xrender_surfaces when
124813	XftDraw might need regenerating; perform buffer flip when
124814	responding to Expose events; issue front-buffer clearing
124815	commands as stopgap while we wait for redisplay.
124816	Call flush_dirty_back_buffers.
124817	(x_make_frame_visible): Un-bitrot comment; move XSETFRAME
124818	earlier in function.
124819	(x_free_frame_resources): Call tear_down_x_back_buffer when
124820	destroying frame.
124821	(x_term_init): Attempt to initialize double buffer extension.
124822	(x_flip_and_flush): New function.
124823	(x_redisplay_interface): Point to x_flip_and_flush instead of
124824	x_flip directly.
124825	(flush_dirty_back_buffers): New function.
124826	(x_create_terminal): Register buffer_flipping_unblocked_hook.
124827
124828	* src/xftfont.c (xftfont_drop_xrender_surfaces): Use
124829	FRAME_X_DRAWABLE instead of FRAME_X_WINDOW.
124830	(xftfont_draw): Call x_mark_frame_dirty.
124831	(xftfont_drop_xrender_surfaces): New function.
124832	(syms_of_xftfont): Register it.
124833
124834	* src/xfont.c (xfont_draw): Use FRAME_X_DRAWABLE instead of
124835	FRAME_X_WINDOW.
124836
124837	* src/xfns.c: Include Xdbe.h.
124838	(x_set_inhibit_double_buffering, set_up_x_back_buffer)
124839	(Fx_double_buffered_p): New functions.
124840	(x_window): Call initial_set_up_x_back_buffer.
124841	(x_make_gc): Use FRAME_X_DRAWABLE instead of FRAME_X_WINDOW.
124842	(Fx_create_frame): Configure `inhibit-double-buffering'
124843	frame parameter.
124844	(x_create_tip_frame): Call initial_set_up_x_back_buffer.
124845	(x_frame_parm_handlers): Register
124846	x_set_inhibit_double_buffering.
124847	(syms_of_xfns): Register Sx_double_buffered_p.
124848	(x_mark_frame_dirty): Define.
124849
124850	* src/xfaces.c (x_create_gc): Use FRAME_X_DRAWABLE instead of
124851	FRAME_X_WINDOW.
124852
124853	* src/xdisp.c (remember_mouse_glyph, init_glyph_string): Use
124854	FRAME_X_DRAWABLE instead of FRAME_X_WINDOW.
124855	(redisplay_internal): Restart redisplay if a frame is garbaged
124856	during updating; explain why. Block buffer flips
124857	during redisplay.
124858	(redisplay_preserve_echo_area): Block buffer flip during call
124859	to redisplay_internal.
124860	(buffer_flip_blocked_depth): New variable.
124861	(block_buffer_flips, unblock_buffer_flips)
124862	(buffer_flipping_blocked_p): New functions.
124863	(init_glyph_string): Stop setting window member of struct
124864	glyph_string.
124865
124866	* src/w32fns.c (w32_frame_parm_handlers): Add placeholder for
124867	x_set_inhibit_double_buffering.
124868
124869	* src/termhooks.h (struct terminal): Add
124870	buffer_flipping_unblocked_hook.
124871
124872	* src/nsfns.m (ns_frame_parm_handlers): Add placeholder for
124873	x_set_inhibit_double_buffering.
124874
124875	* src/image.c (x_create_bitmap_from_data)
124876	(x_create_bitmap_from_file, x_create_x_image_and_pixmap)
124877	(Create_Pixmap_From_Bitmap_Data)
124878	(x_create_bitmap_from_xpm_data, xpm_load, gs_load): Use
124879	FRAME_X_DRAWABLE instead of FRAME_X_WINDOW; rename local
124880	variables appropriately.
124881
124882	* src/gtkutil.c: Include Xdbe.h.
124883	(xg_get_widget_from_map): Forward declare.
124884	(xg_clear_under_internal_border): Remove obsolete calls to
124885	refresh scroll bars.
124886	(xg_create_frame_widgets): Call initial_set_up_x_back_buffer.
124887	(xg_free_frame_widgets): Call tear_down_x_back_buffer; reset
124888	FRAME_X_DRAWABLE as well as FRAME_X_WINDOW and for the
124889	same reason.
124890	(xg_set_background_color): Set scroll bar background colors.
124891	(xg_finish_scroll_bar_creation): New function with common
124892	logic of xg_create_scroll_bar, xg_create_horizontal_scroll_bar. Force
124893	scroll bars to be real X11 windows.
124894	(xg_create_scroll_bar, xg_create_horizontal_scroll_bar): Call
124895	xg_finish_scroll_bar_creation.
124896	(xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
124897	Remove obsolete calls to refresh scroll bars; fix comments.
124898
124899	* src/ftxfont.c (ftxfont_get_gcs, ftxfont_draw_bitmap,
124900	(ftxfont_draw_background): Use FRAME_X_DRAWABLE instead of
124901	FRAME_X_WINDOW.
124902
124903	* src/frame.c (frame_parms): Add table entry for new
124904	`inhibit-double-buffering' frame parameter
124905	(syms_of_frame): Register Qinhibit_double_buffering.
124906
124907	* src/font.h (struct font_driver): Add new `flush_frame_caches' hook.
124908	(font_drop_xrender_surfaces): Declare.
124909
124910	* src/font.c (font_drop_xrender_surfaces): New function.
124911
124912	* src/Makefile.in (XDBE_LIBS, XDBE_CFLAGS): Substitute.
124913
124914	* etc/NEWS: Mention use of double buffering
124915
124916	* doc/lispref/frames.texi (Management Parameters): Document
124917	`inhibit-double-buffering' frame parameters.
124918	(Visibility of Frames): Document `x-double-buffered-p'.
124919
124920	* configure.ac: Check for the X double buffer extension
124921
1249222016-10-28  Michael Albinus  <michael.albinus@gmx.de>
124923
124924	Improve result of `auth-source-search' in Tramp
124925
124926	* lisp/net/tramp.el (tramp-read-passwd): Require :secret and
124927	:user in result of `auth-source-search'.
124928
1249292016-10-27  Mark Oteiza  <mvoteiza@udel.edu>
124930
124931	Fix avl-tree alias docstrings
124932
124933	* lisp/emacs-lisp/avl-tree.el (avl-tree--node-branch):
124934	(avl-tree-stack-p, avl-tree-create):
124935	(avl-tree-compare-function): Add calling convention to docstrings.
124936
1249372016-10-27  Paul Eggert  <eggert@cs.ucla.edu>
124938
124939	Update from gnulib
124940
124941	This incorporates:
124942	2016-10-16 qsort_r: Fix macrology for platforms that lack the function.
124943	2016-10-13 stdint: port SIZE_MAX to glibc s390
124944	2016-10-11 maint: remove stray space after "." in AC_DEFINE comment.
124945	* lib/gnulib.mk: Regenerate.
124946	* lib/stdlib.in.h, m4/st_dm_mode.m4, m4/stdint.m4, m4/stdlib_h.m4:
124947	* m4/utimes.m4: Copy from gnulib.
124948
1249492016-10-27  Paul Eggert  <eggert@cs.ucla.edu>
124950
124951	electric-quote-chars fixups
124952
124953	* lisp/electric.el (electric-quote-chars): Check types and safety
124954	more carefully.
124955	(electric-quote-post-self-insert-function): Use more-mnemonic locals.
124956	Omit no-longer-necessary runtime error diagnostic.
124957
1249582016-10-27  Göktuğ Kayaalp  <self@gkayaalp.com>
124959
124960	New user variable 'electric-quote-chars'
124961
124962	* doc/emacs/text.texi (Quotation Marks), etc/NEWS: Document this.
124963	* lisp/electric.el (electric-quote-chars): New defcustom.
124964	(electric-quote-post-self-insert-function): Use it.
124965
1249662016-10-27  Tino Calancha  <tino.calancha@gmail.com>
124967
124968	Add more tests for Bug#24627
124969
124970	* test/lisp/thingatpt-tests.el (thing-at-point-bug24627):
124971	Add tests for 'list-at-point'.
124972
1249732016-10-26  Filipp Gunbin  <fgunbin@fastmail.fm>
124974
124975	* lisp/shell.el (shell--unquote&requote-argument): Match data misuse
124976
124977	* lisp/shell.el (shell--unquote&requote-argument): Fix
124978	off-by-one thinko.  Don't use match data after a failed string-match.
124979
1249802016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
124981
124982	* src/xwidget.c (webkit_js_to_lisp): Now static.
124983
1249842016-10-25  Ricardo Wurmus  <rekado@elephly.net>
124985
124986	xwidget: Map "previous-line" and "next-line" to scroll
124987
124988	* lisp/xwidget.el: Map "previous-line" and "next-line" to scrolling
124989	procedures.
124990
1249912016-10-25  Ricardo Wurmus  <rekado@elephly.net>
124992
124993	xwidget: Bind "beginning-of-buffer" and "end-of-buffer"
124994
124995	* lisp/xwidget.el: Rebind "beginning-of-buffer" and "end-of-buffer" to
124996	"xwidget-webkit-scroll-top" and "xwidget-webkit-scroll-bottom",
124997	respectively.
124998	(xwidget-webkit-scroll-top,
124999	xwidget-webkit-scroll-bottom): New procedures.
125000
1250012016-10-25  Ricardo Wurmus  <rekado@elephly.net>
125002
125003	Implement zoom for WebKit widget.
125004
125005	* src/xwidget.c (xwidget-webkit-zoom): New procedure.
125006	* lisp/xwidget.el: Bind "+" and "-" to zoom in and out, respectively.
125007	(xwidget-webkit-zoom): Declare procedure.
125008	(xwidget-webkit-zoom-in, xwidget-webkit-zoom-out): New procedures.
125009
1250102016-10-25  Ricardo Wurmus  <rekado@elephly.net>
125011
125012	Dynamically resize WebKit widget.
125013
125014	* lisp/xwidget.el (xwidget-webkit-auto-adjust-size,
125015	xwidget-webkit-adjust-size-in-frame): New procedures.
125016	(xwidget-webkit-new-session): Remove hint to resize widget with `a'.
125017	(xwidget-webkit-adjust-size-dispatch): Resize current webkit widget.
125018	(xwidget-webkit-adjust-size-to-window): Make non-interactive,
125019	add widget and window as arguments.
125020	(xwidget-webkit-callback): Use xwidget-webkit-adjust-size-to-window.
125021
1250222016-10-25  Ricardo Wurmus  <rekado@elephly.net>
125023
125024	Let initial WebKit view fill window
125025
125026	* lisp/xwidget.el (xwidget-webkit-new-session): Change default size of
125027	WebKit widget to window size.
125028
1250292016-10-25  Ricardo Wurmus  <rekado@elephly.net>
125030
125031	xwidget: Remove title hack.
125032
125033	* src/xwidget.c (xwidget-webkit-get-title): Remove procedure.
125034	* lisp/xwidget.el (xwidget-webkit-get-title,
125035	xwidget-webkit-execute-script-rv): Remove procedures.
125036
1250372016-10-25  Ricardo Wurmus  <rekado@elephly.net>
125038
125039	xwidget: Get URL asynchronously.
125040
125041	* lisp/xwidget.el (xwidget-webkit-current-url): Kill URL in callback.
125042
1250432016-10-25  Ricardo Wurmus  <rekado@elephly.net>
125044
125045	xwidget: Get selection with asynchronous JavaScript
125046
125047	* lisp/xwidget.el (xwidget-webkit-get-selection): Add PROC argument to
125048	process selection.
125049	(xwidget-webkit-copy-selection-as-kill): Kill selection in callback.
125050
1250512016-10-25  Ricardo Wurmus  <rekado@elephly.net>
125052
125053	xwidget: Add function to find element by CSS selector
125054
125055	* lisp/xwidget.el (xwidget-webkit-show-element): New procedure.
125056
1250572016-10-25  Ricardo Wurmus  <rekado@elephly.net>
125058
125059	xwidget: Simplify functions to scroll to elements
125060
125061	* lisp/xwidget.el (xwidget-webkit-show-named-element,
125062	xwidget-webkit-show-id-element,
125063	xwidget-webkit-show-id-or-named-element): Simplify functions by
125064	scrolling exclusively with JavaScript.
125065
1250662016-10-25  Ricardo Wurmus  <rekado@elephly.net>
125067
125068	xwidget: Get title via asynchronous JavaScript.
125069
125070	* lisp/xwidget.el (xwidget-webkit-callback): Get document title
125071	asynchronously.
125072
1250732016-10-25  Ricardo Wurmus  <rekado@elephly.net>
125074
125075	xwidget: Do not use `xwidget-execute-script-rv' to insert string
125076
125077	* lisp/xwidget.el (xwidget-webkit-insert-string): Obtain JavaScript
125078	return value via callback instead of using
125079	`xwidget-webkit-execute-script-rv'.
125080
1250812016-10-25  Ricardo Wurmus  <rekado@elephly.net>
125082
125083	Remove scrolled window container around WebKit widget
125084
125085	The WebKit widget can scroll on its own and does not need to wrapped
125086	with a scrolled window container.
125087
125088	* src/xwidget.h: Remove struct member widgetscrolledwindow_osr.
125089	* src/xwidget.c: Remove widgetscrolledwindow_osr.
125090	(xwidget-set-adjustment): Remove.
125091	(xwidget-resize): Resize Webkit widget last.
125092	* lisp/xwidget.el (xwidget-set-adjustment): Remove.
125093	(xwidget-webkit-scroll-up, xwidget-webkit-scroll-down,
125094	xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward):
125095	Implement scrolling via JavaScript.
125096
1250972016-10-25  Ricardo Wurmus  <rekado@elephly.net>
125098
125099	xwidget: Pass JavaScript return value to optional callback procedure
125100
125101	* lisp/xwidget.el (xwidget-webkit-execute-script): Accept optional
125102	callback argument.
125103	(xwidget-webkit-callback): Handle "javascript-callback" event type.
125104	* src/xwidget.c (xwidget-webkit-execute-script): Accept optional
125105	argument FUN, a Lisp procedure to execute on the JavaScript return
125106	value.
125107	(store_xwidget_js_callback_event, webkit_javascript_finished_cb,
125108	webkit_js_to_lisp): New procedures.
125109
1251102016-10-25  Ricardo Wurmus  <rekado@elephly.net>
125111
125112	xwidget: Use WebKit2 API
125113
125114	* configure.ac: Check for webkit2gtk-4.0.
125115	* src/xwidget.c: Adjust to use WebKit2 API.
125116	* lisp/xwidget.el (xwidget-webkit-callback): Adjust matches for
125117	`xwidget-event-type'.
125118
1251192016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
125120
125121	Merge from origin/emacs-25
125122
125123	4c3f738 Comment for bug#24793
125124
1251252016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
125126
125127	Merge from origin/emacs-25
125128
125129	96ac0c3 Yet another fix for using pointers into buffer text
125130	1047496 Another fix for using pointer to buffer text
125131	3121992 Fix Bug#24478
125132
1251332016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
125134
125135	Merge from origin/emacs-25
125136
125137	ee04aed Fix handling of buffer relocation in regex.c functions
125138	71ca4f6 Avoid relocating buffers while libxml2 reads its text
125139	1b3fc8a ; Remove redundant code in gmalloc.c
125140	9afea93 Attempt to catch reads from a buffer that is relocated
125141
1251422016-10-25  Nicolas Petton  <nicolas@petton.fr>
125143
125144	Minor fix in the documentation of seq-random-elt
125145
125146	* doc/lispref/sequences.texi (Sequence Functions): Remove false
125147	  sentence.
125148
1251492016-10-25  Eli Zaretskii  <eliz@gnu.org>
125150
125151	Minor copyedits in documentation of 'seq-random-elt'
125152
125153	* doc/lispref/sequences.texi (Sequence Functions): Fix markup in
125154	last change.  Use 2 spaces between sentences.
125155
1251562016-10-25  Nicolas Petton  <nicolas@petton.fr>
125157
125158	* lisp/emacs-lisp/seq.el (seq-random-elt): Fix docstring.
125159
1251602016-10-25  Damien Cassou  <damien@cassou.me>
125161
125162	Add seq-random-elt to seq.el
125163
125164	* lisp/emacs-lisp/seq.el (seq-random-elt): Add function to return a
125165	  random element from it's sequence parameter.
125166
125167	* test/lisp/emacs-lisp/seq-tests.el (test-seq-random-elt-take-all
125168	  test-seq-random-elt-return-nil): Test the new function
125169
125170	* doc/lispref/sequences.texi: Document the new function
125171
1251722016-10-24  Ken Brown  <kbrown@cornell.edu>
125173
125174	* configure.ac: Stop using mmap for buffers on Cygwin.
125175
1251762016-10-24  Nicolas Petton  <nicolas@petton.fr>
125177
125178	* lisp/emacs-lisp/seq.el (seq-let): Fix debug spec (Bug#24738)
125179
1251802016-10-24  Karl Chen  <Karl.Chen@quarl.org>
125181
125182	Don't prompt user when killing Flymake processes
125183
125184	* lisp/progmodes/flymake.el (flymake-start-syntax-check-process):
125185	Don’t prompt the user when killing Flymake processes.
125186
125187	* doc/misc/flymake.texi (Starting the syntax check process):
125188	Document new behavior.
125189
1251902016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
125191
125192	* src/regex.c (re_search_2): Use UNINIT, not IF_LINT.
125193
125194	This finishes the merge of the recent emacs-25 regex changes into
125195	master.
125196
1251972016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
125198
125199	Merge from origin/emacs-25
125200
125201	50fa7d6 ;* src/w32heap.c: Fix typo and wording of the comments.
125202	6f1325e electric-quote mode no longer worries about coding
125203	c2a1792 * src/regex.c (re_search_2): Make new code safe for -Wjump-mi...
125204	f6134bb Port to GCC 6.2.1 + --enable-gcc-warnings
125205	b2ba630 Explain how to debug emacsclient lisp errors
125206	9da53e2 Let describe-function work for lambda again
125207	5c2da93 Fix kill-line's docstring
125208	ad66b3f Fix handling of allocation in regex matching
125209	5a26c9b * lisp/electric.el (electric-quote-mode): Improve doc (Bug#24...
125210	3877c91 vc-region-history: Search just on lines intersecting the region
125211	8988327 Fix documentation of 'alist-get'
125212	b6998ea * src/regex.h (re_match_object): Improve commentary.
125213
125214	# Conflicts:
125215	#	etc/NEWS
125216	#	lisp/help-fns.el
125217
1252182016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
125219
125220	Merge from origin/emacs-25
125221
125222	8ad0d7d ; Fix quoting in etc/NEWS
125223	6b9dee1 Change Tramp version to "2.2.13.25.2"
125224	62f2684 * lisp/emacs-lisp/autoload.el (update-directory-autoloads): F...
125225	b2f32e4 Don't scan compiled module files for autoloads
125226	9a758b4 Fix Bug#24698
125227	baa8ba4 * lisp/subr.el (start-process): Doc fix.  (Bug#24693)
125228	e535ca4 Fix display of vc-dir CVS file statuses in subdirectories
125229	12da149 Update URL of MS-Windows optional DLLs
125230	2331056 Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...
125231	a4285bc * lisp/simple.el (process-menu-mode, list-processes--refresh)...
125232	b0c447e * lisp/ibuf-ext.el (ibuffer-do-shell-command-file): Fix non-f...
125233	cf3c19b * lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (B...
125234
125235	# Conflicts:
125236	#	doc/misc/trampver.texi
125237	#	etc/NEWS
125238	#	lisp/net/tramp-sh.el
125239	#	lisp/net/trampver.el
125240
1252412016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
125242
125243	Merge from origin/emacs-25
125244
125245	b73f466 * lisp/cus-start.el (exec-path): Handle nil elements.  (Bug#2...
125246	55ebb70 Catch the imenu-unavailable error in sh-mode completion table
125247	993acb5 ; Minor fix for last change in characters.el
125248	30c4bb5 More char-width fixes
125249	4eb4463 Fix char-width-table values for some Emoji
125250	528997d Keep point when switching from and to *terminal* buffer
125251	2130005 * INSTALL: Use correct Emacs release number 25.
125252	10835b1 Avoid crashes due to objects read with the #n=object form
125253	4de671d Improve doc string of 'completion-at-point-functions'
125254	ceb46f0 Fix crash in evaluating functions
125255	d8374c4 * src/filelock.c (current_lock_owner): Update comment.
125256
1252572016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
125258
125259	Merge from origin/emacs-25
125260
125261	2deb20c Port last_marked change to full-program optimizers
125262	27eb668 Adapt GDB scripts to '--enable-check-lisp-object-type' builds
125263	dac64e3 Avoid optimizing out the last_marked[] array
125264
1252652016-10-22  Noam Postavsky  <npostavs@gmail.com>
125266
125267	Avoid infinite hscrolling in redisplay
125268
125269	* src/xdisp.c (redisplay_internal): Add a counter to avoid horizontal
125270	scrolling (e.g., caused by pre-redisplay-functions) triggering infinite
125271	redisplay (Bug #24633).
125272
1252732016-10-22  Michael Albinus  <michael.albinus@gmx.de>
125274
125275	Fix error codes in Tramp
125276
125277	* lisp/net/tramp-compat.el (tramp-compat-user-error): New defsubst,
125278	taken from tramp.el.
125279	(tramp-file-missing): New defconst.
125280
125281	* lisp/net/tramp.el (tramp-user-error): Remove it.
125282	(tramp-check-proper-method-and-host)
125283	(tramp-dissect-file-name, tramp-debug-message)
125284	(tramp-handle-shell-command):
125285	* lisp/net/tramp-adb.el (tramp-adb-handle-shell-command):
125286	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler):
125287	Use `tramp-compat-user-error'.
125288
125289	* lisp/net/tramp.el (tramp-handle-insert-file-contents)
125290	(tramp-handle-load):
125291	* lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
125292	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-local-copy)
125293	* lisp/net/tramp-sh.el (tramp-sh-handle-file-local-copy):
125294	* lisp/net/tramp-smb.el (tramp-smb-handle-file-local-copy):
125295	Use `tramp-file-missing'.  (Bug#24714)
125296
125297	* lisp/net/tramp-sh.el (tramp-sh-handle-add-name-to-file):
125298	* lisp/net/tramp-smb.el (tramp-smb-handle-make-symbolic-link):
125299	Use `file-already-exists'.
125300
1253012016-10-22  Jorgen Schaefer  <contact@jorgenschaefer.de>
125302
125303	Autoload all commands from misc.el
125304
125305	Only two of the commands there were autoloaded, one of which is an
125306	easter egg.
125307	* lisp/misc.el (copy-from-above-command):
125308	* lisp/misc.el (zap-up-to-char):
125309	* lisp/misc.el (mark-beginning-of-buffer):
125310	* lisp/misc.el (mark-end-of-buffer):
125311	* lisp/misc.el (upcase-char):
125312	* lisp/misc.el (forward-to-word):
125313	* lisp/misc.el (backward-to-word):
125314	Add autoload cookie.
125315
1253162016-10-22  Martin Rudalics  <rudalics@gmx.at>
125317
125318	On terminal frames ignore minibuffer frame parameter (Bug#24758)
125319
125320	* src/frame.c (Fmake_terminal_frame): Don't complain when the
125321	caller asks for a deviant minibuffer setting (Bug#24758).
125322
1253232016-10-21  Paul Eggert  <eggert@cs.ucla.edu>
125324
125325	New error file-missing
125326
125327	This fixes a recently-introduced bug in delete-directory,
125328	where the code assumes the C locale when determining
125329	whether a file-error corresponds to a missing file (Bug#24714).
125330	* doc/lispref/errors.texi (Standard Errors):
125331	* doc/lispref/files.texi (Changing Files):
125332	* etc/NEWS:
125333	Document this.
125334	* doc/lispref/loading.texi (How Programs Do Loading):
125335	Say "a file-error" rather than "the error file-error" since
125336	it might be a file-missing now.
125337	* lisp/emacs-lisp/bytecomp.el (byte-compile-file):
125338	* lisp/epa-file.el (epa-file--find-file-not-found-function):
125339	(epa-file-insert-file-contents, epa-file-write-region):
125340	* lisp/ffap.el (find-file-at-point, dired-at-point):
125341	* lisp/jka-compr.el (jka-compr-insert-file-contents)
125342	(jka-compr-insert-file-contents):
125343	* lisp/net/ange-ftp.el (ange-ftp-barf-if-not-directory)
125344	(ange-ftp-insert-file-contents, ange-ftp-copy-file-internal):
125345	* lisp/progmodes/etags.el (visit-tags-table):
125346	* lisp/url/url-handlers.el (url-copy-file):
125347	* src/fileio.c (report_file_errno):
125348	Signal file-missing if appropriate.
125349	* lisp/epa-file.el (epa-file-insert-file-contents):
125350	* lisp/jka-compr.el (jka-compr-insert-file-contents):
125351	Don't assume file-error is a leaf in the error hierarchy.
125352	* lisp/files.el (files--force):
125353	* lisp/gnus/nnmaildir.el (nnmaildir--enoent-p):
125354	* lisp/jka-compr.el (jka-compr-insert-file-contents):
125355	Use file-missing to detect whether the file is missing.
125356	* lisp/url/url-handlers.el (url-copy-file):
125357	Signal file-already-exists if appropriate.
125358	* src/fileio.c (syms_of_fileio): Define file-missing.
125359
125360	2016-10-18  Paul Eggert  <eggert@cs.ucla.edu>
125361
1253622016-10-21  Mark Oteiza  <mvoteiza@udel.edu>
125363
125364	Teach browse-url to open man page urls
125365
125366	* lisp/net/browse-url.el (browse-url-man-function): New custom option.
125367	(browse-url): Add a condition to catch links matching "^man:".
125368	(browse-url-man): New function.
125369
1253702016-10-21  Eli Zaretskii  <eliz@gnu.org>
125371
125372	Improve fontification of footnote references in Info buffers
125373
125374	* lisp/info.el (Info-fontify-node): Don't fontify random numbers
125375	in parentheses as if they were footnote references.  See
125376	https://lists.gnu.org/r/bug-texinfo/2016-10/msg00007.html
125377	for the details.
125378
1253792016-10-20  Philipp Stephani  <phst@google.com>
125380
125381	Minor fixes to cc-mode-tests.el
125382
125383	See Bug#24747.
125384
125385	* test/lisp/progmodes/cc-mode-tests.el: Rename from cc-mode.el; fix typo in
125386	file-local variable; add comments to make checkdoc happy.
125387
1253882016-10-20  Michael Albinus  <michael.albinus@gmx.de>
125389
125390	* etc/NEWS: Fix typos.  Remove entries backported to Emacs 25.2.
125391
1253922016-10-20  Michael Albinus  <michael.albinus@gmx.de>
125393
125394	Document, how to suppress iTerm2 shell integration in Tramp
125395
125396	* doc/misc/tramp.texi (Frequently Asked Questions):
125397	Suppress iTerm2 shell integration.
125398
1253992016-10-20  Tino Calancha  <tino.calancha@gmail.com>
125400
125401	cl-seq: Remove max limit on input sequence length
125402
125403	* lisp/emacs-lisp/cl-seq.el (cl-fill, cl-replace, cl-delete)
125404	(cl--position, cl-nsubstitute, cl-substitute, cl-remove):
125405	Remove limit on maximum length for the input sequence
125406	(#Bug24264).
125407	* test/lisp/emacs-lisp/cl-seq-tests.el: Update test expected result as passed.
125408
1254092016-10-19  Mark Oteiza  <mvoteiza@udel.edu>
125410
125411	Derive dig-mode from special-mode
125412
125413	* lisp/net/dig.el: Remove unused cl dependency.  Remove top level
125414	mode-class assignment.
125415	(dig-mode-map): Unmap g, as dig has no notion of reverting the buffer.
125416	(dig-mode): Derive from special-mode.
125417	(dig-exit): Use quit-window instead.
125418	(dig): Use pop-to-buffer-same-window.  Remove redundant assignments.
125419	(query-dig): Use pop-to-buffer-same-window.
125420
1254212016-10-18  Johan Bockgård  <bojohan@gnu.org>
125422
125423	cl-defstruct: Fix debug spec and check of slot options
125424
125425	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Improve checking of slot
125426	option syntax.  Fix debug spec.  (Bug#24700)
125427
1254282016-10-18  Johan Bockgård  <bojohan@gnu.org>
125429
125430	isearch: Fix bug in defstruct syntax
125431
125432	* lisp/isearch.el (isearch--state): Use correct form of defstruct slot
125433	options.  (Bug#24685)
125434
1254352016-10-18  Mark Oteiza  <mvoteiza@udel.edu>
125436
125437	Add an option for eshell-input-filter
125438
125439	* etc/NEWS: Document changes.
125440	* lisp/eshell/em-hist.el (eshell-input-filter): Set value to function
125441	symbol.  Change type to a radio for choosing functions.  Refer to both
125442	new functions.
125443	(eshell-input-filter-default): New function.  Same body as the previous
125444	value of eshell-input-filter.
125445	(eshell-input-filter-initial-space): New function.
125446
1254472016-10-18  Paul Eggert  <eggert@cs.ucla.edu>
125448
125449	delete-directory no longer errors when racing
125450
125451	Problem reported by Glenn Morris for package-test.el (Bug#24714).
125452	* doc/lispref/files.texi (Create/Delete Dirs), etc/NEWS: Document this.
125453	* lisp/files.el (files--force): New function.
125454	(delete-directory): Use it to avoid error in this case.
125455
1254562016-10-17  Yuri Khan  <yuri.v.khan@gmail.com>  (tiny change)
125457
125458	Support Shift selection in nxml-mode commands
125459
125460	* lisp/nxml/nxml-mode.el (nxml-forward-balanced-item)
125461	(nxml-up-element, nxml-backward-up-element, nxml-down-element)
125462	(nxml-backward-down-element, nxml-forward-element)
125463	(nxml-backward-element, nxml-forward-paragraph)
125464	(nxml-backward-paragraph): Use "^p" as the interactive spec, to
125465	support shift-selection.
125466
1254672016-10-17  Mark Oteiza  <mvoteiza@udel.edu>
125468
125469	Simplify some loops and cons
125470
125471	* lisp/net/mailcap.el: Replace cl with cl-lib.
125472	(mailcap--get-user-mime-data, mailcap--set-user-mime-data):
125473	(mailcap-parse-mailcaps, mailcap-parse-mailcap-extras):
125474	(mailcap-possible-viewers): Use push and dolist where possible.
125475	(mailcap-viewer-passes-test): Remove unused binding.
125476	(mailcap-add-mailcap-entry): Use push.
125477	(mailcap-mime-info): Remove unused binding.  Use push.
125478	(mailcap-parse-mimetypes): Use dolist.
125479
1254802016-10-17  Mark Oteiza  <mvoteiza@udel.edu>
125481
125482	Turn on lexical-binding in auth-source
125483
125484	* lisp/auth-source.el: Turn on lexical-binding.
125485	(auth-source-netrc-parse, auth-source-netrc-normalize):
125486	(auth-source-token-passphrase-callback-function):
125487	(auth-source-netrc-create, auth-source-secrets-search):
125488	(auth-source-macos-keychain-search-items):
125489	(auth-source-plstore-search): Use let instead of lexical-let.
125490
1254912016-10-17  Martin Rudalics  <rudalics@gmx.at>
125492
125493	Fix frame focus redirection with shared minibuffer windows (Bug#24500)
125494
125495	* src/frame.c (do_switch_frame): Redirect frame focus also when
125496	the frame switched to has its minibuffer window on the selected
125497	frame.
125498	* src/window.c (candidate_window_p): To qualify as candidate
125499	it's not sufficient for the window's frame to just share the
125500	minibuffer window - it must be active as well.
125501
1255022016-10-17  Eli Zaretskii  <eliz@gnu.org>
125503
125504	Fix time-related data types in 2 editfns.c functions
125505
125506	* src/editfns.c (format_time_string, Fcurrent_time_zone): Pass a
125507	pointer to 'time_t' value to 'emacs_localtime_rz' and 'gmtime_r',
125508	instead of relying on struct timespec's 'tv_sec' member to be of
125509	compatible type.
125510
1255112016-10-16  Martin Rudalics  <rudalics@gmx.at>
125512
125513	Document atomic windows in Elisp manual (Bug#18170)
125514
125515	* lisp/window.el (display-buffer-in-atom-window): If no `side'
125516	alist entry was specified, use `below' as the doc tells.
125517	* doc/lispref/elisp.texi (Atomic Windows): Add menu entry.
125518	* doc/lispref/windows.texi (Atomic Windows): New section.
125519	(Window Parameters): Update reference.
125520
1255212016-10-16  Paul Eggert  <eggert@cs.ucla.edu>
125522
125523	New face homoglyph
125524
125525	Suggested by Eli Zaretskii, from a feature request by
125526	Alan Mackenzie (Bug#24468).
125527	* doc/emacs/display.texi (Standard Faces, Text Display):
125528	* etc/NEWS: Document this.
125529	* etc/themes/dichromacy-theme.el, etc/themes/leuven-theme.el:
125530	* etc/themes/light-blue-theme.el, etc/themes/manoj-dark-theme.el:
125531	* etc/themes/tango-dark-theme.el, etc/themes/tango-theme.el:
125532	* etc/themes/wombat-theme.el:
125533	Customize homoglyph to be the same as escape-glyph.
125534	* lisp/cus-theme.el (custom-theme--listed-faces):
125535	Add homoglyph.
125536	* lisp/faces.el (homoglyph): New face.
125537	* lisp/startup.el (startup--setup-quote-display): Use it.
125538
1255392016-10-16  Paul Eggert  <eggert@cs.ucla.edu>
125540
125541	Port to Ubuntu 16.10, which needs gcc -nopie
125542
125543	* configure.ac (emacs_cv_prog_cc_no_pie): Rename from
125544	emacs_cv_prog_cc_nopie.  All usages changed.  Check for -no-pie in
125545	preference to -nopie (Bug#24682).
125546
1255472016-10-16  Michael Albinus  <michael.albinus@gmx.de>
125548
125549	Fix bug#24665 in Tramp
125550
125551	* doc/misc/tramp.texi (External methods): Do not confuse
125552	method names.  (Bug#24665)
125553
1255542016-10-15  Sam Steingold  <sds@gnu.org>
125555
125556	use full time objects (lists) instead of floats when possible
125557
125558	* lisp/midnight.el (midnight-buffer-display-time): Remove
125559	(clean-buffer-list): Use float time only for time comparison
125560
1255612016-10-15  Sam Steingold  <sds@gnu.org>
125562
125563	Save and restore buffer-display-time
125564
125565	* lisp/desktop.el (desktop-locals-to-save): Add `buffer-display-time'
125566	(desktop-read): Set `desktop-file-modtime' before loading the desktop file
125567	(desktop-create-buffer): Adjust `buffer-display-time' for the downtime
125568
1255692016-10-15  Philipp Stephani  <phst@google.com>
125570
125571	Disable bracketed paste in a terminal in char mode
125572
125573	In char mode, a terminal doesn't accept bracketed paste events,
125574	therefore we should disable them; see Bug#24639.  To decouple the XTerm
125575	management from term.el, introduce a per-buffer setting to disable
125576	bracketed paste for that buffer.  If bracketed paste is inhiited for at
125577	least one buffer in a terminal, it is disabled for the whole terminal.
125578
125579	* lisp/term/xterm.el (xterm-inhibit-bracketed-paste-mode): New mode to
125580	inhibit XTerm bracketed paste per buffer.
125581	(xterm--buffer-terminals, xterm--update-bracketed-paste)
125582	(xterm--bracketed-paste-possible, xterm--is-xterm): New helper
125583	functions.
125584	(xterm--init-bracketed-paste-mode): Remove unused helper
125585	function.
125586	(terminal-init-xterm): Update bracketed paste status when
125587	initializing an XTerm and on window configuration change.
125588
125589	* lisp/term.el (term-char-mode, term-line-mode): Inhibit XTerm
125590	bracketed paste in char mode.
125591
1255922016-10-15  Dima Kogan  <dima@secretsauce.net>
125593
125594	Undo the effect of CapsLock when other modifiers are present
125595
125596	* src/keyboard.c (make_lispy_event): Effectively undo the effect
125597	of CapsLock if any modifiers other than Shift are present in a key.
125598	(Bug#24456)
125599
1256002016-10-15  Simen Heggestøyl  <simenheg@gmail.com>
125601
125602	Add tests for foreign completions in CSS mode
125603
125604	* test/lisp/textmodes/css-mode-tests.el
125605	(css-test-foreign-completions): New test for
125606	`css--foreign-completions'.
125607	(css-test-complete-selector-tag): Rename test.
125608	(css-test-complete-selector-class): New test testing completion of
125609	class names in selectors.
125610	(css-test-complete-selector-id): New test testing completion of IDs in
125611	selectors.
125612
1256132016-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
125614
125615	Cosmetic change to last mm-url change
125616
125617	* lisp/gnus/mm-url.el (mm-url-encode-multipart-form-data):
125618	Tweak last change slightly for more readability.
125619
1256202016-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
125621
125622	Fix problem with submitting binary data via HTTP forms
125623
125624	* lisp/gnus/mm-url.el (mm-url-encode-multipart-form-data):
125625	Document the parameters, clean up the code, and make uploading
125626	binary data really work (which it didn't if the binary bits
125627	were in the last part of the data).
125628
1256292016-10-13  Mark Oteiza  <mvoteiza@udel.edu>
125630
125631	* lisp/time.el (display-time-string-forms): Fix custom type.
125632
1256332016-10-13  Mark Oteiza  <mvoteiza@udel.edu>
125634
125635	Derive Man and WoMan modes from special-mode
125636
125637	* lisp/man.el (Man-mode-map): Set parent to map composed from both
125638	button-buffer-map and special-mode-map.  Remove redundant bindings.
125639	Fix menu to refer to the quit-window command.
125640	(Man-mode): Derive from special-mode.  Fix docstring.  Remove redundant
125641	buffer-read-only binding.
125642	(Man-quit): Remove.
125643	* lisp/woman.el (woman-really-find-file): Use setq-local.
125644	(woman-mode-map): Refer to woman-mode in docstring.
125645	(woman-mode): Derive from special-mode.  Document woman-mode-map in
125646	docstring.  Use setq-local where possible; imenu-generic-expression is
125647	already buffer-local.
125648	(woman-negative-vertical-space): Replace unused binding with _.
125649
1256502016-10-13  Philipp Stephani  <phst@google.com>
125651
125652	Fix crash in evaluating functions
125653
125654	See Bug#24673
125655
125656	* src/eval.c (funcall_lambda): Fix crash for bogus functions such
125657	as (closure).
125658
125659	* test/src/eval-tests.el (eval-tests--bug24673): Add test.
125660
1256612016-10-13  Tino Calancha  <tino.calancha@gmail.com>
125662
125663	Add test for Bug#24627
125664
125665	* test/lisp/thingatpt-tests.el (thing-at-point-bug24627): New test.
125666
1256672016-10-12  Eli Zaretskii  <eliz@gnu.org>
125668
125669	* lib-src/etags.c (invalidate_nodes): Remove a redundant nullp test.
125670
1256712016-10-11  Paul Eggert  <eggert@cs.ucla.edu>
125672
125673	Work around Samba bug with ':' in symlink contents
125674
125675	* src/filelock.c (current_lock_owner): When reading the contents
125676	of a lock, treat the UTF-8 for U+F022 as if it were ':' (Bug#24656).
125677
1256782016-10-11  Stefan Monnier  <monnier@iro.umontreal.ca>
125679
125680	If autoloads buffer is unchanged, mark it as such (bug#23692)
125681
125682	* lisp/emacs-lisp/autoload.el (update-directory-autoloads):
125683	If autoloads buffer is unchanged, mark it as such (bug#23692).
125684
1256852016-10-11  Michael Albinus  <michael.albinus@gmx.de>
125686
125687	Use "26.1" version string in Tramp, fix some comments
125688
125689	* lisp/net/tramp-gvfs.el (tramp-gvfs-methods):
125690	* lisp/net/tramp-sh.el (tramp-remote-process-environment):
125691	Use "26.1" version string.
125692
1256932016-10-10  Tino Calancha  <tino.calancha@gmail.com>
125694
125695	form-at-point work for all kind of THINGS
125696
125697	* lisp/thingatpt.el (form-at-point):
125698	Use thing-at-point--read-from-whole-string only if thing-at-point
125699	returns a string (Bug#24605).
125700
1257012016-10-10  Eli Zaretskii  <eliz@gnu.org>
125702
125703	Fix compilation warnings on MS-Windows
125704
125705	* src/w32.c (_ANONYMOUS_UNION, _ANONYMOUS_STRUCT): Remove
125706	definitions of these macros, which seem to be unneeded and cause
125707	compiler warnings.
125708	* src/fileio.c (NOMINMAX): Avoid compiler warnings about unused
125709	macros.
125710	* src/firstfile.c (dummy_main_reference): Rename from 'dummy' and
125711	make it external, to avoid compiler warning.
125712
1257132016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
125714
125715	Spelling and clarity fixes
125716
1257172016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
125718
125719	Merge from origin/emacs-25
125720
125721	4f406e9 CC Mode manual: remove reference to former Emacs variable las...
125722	44e402e Allow to disable compaction of font caches
125723	4ff4b66 Allow selection of font for symbols as in Emacs 24.x
125724	c03d44b ; Fix last commit
125725	d4be4f3 ; Fix indexing in lispref manual
125726	ed399f2 ; Minor improvement in documentation of generators
125727	197a6bc Fix horizontal scrolling during Isearch
125728	3566644 Fix infloop in redisplay due to truncated lines and invisible...
125729
125730	# Conflicts:
125731	#	etc/NEWS
125732
1257332016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
125734
125735	Merge from origin/emacs-25
125736
125737	c4a5e7e Improve documentation of 'menu-bar-open'
125738
1257392016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
125740
125741	Merge from origin/emacs-25
125742
125743	4b347fe Clarify that doc fixes are okay in feature freeze
125744	01669ad Avoid crashes when setting the cursor
125745	f2144ee Restore 'command-debug-status' functionality
125746	ec6e4b9 ; Minor addition to CONTRIBUTE
125747
1257482016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
125749
125750	Merge from origin/emacs-25
125751
125752	74b4f13 Document nil args of compare-buffer-substrings
125753	9fc81bc * doc/misc/message.texi (Bcc Warning): Fix markup.
125754	95baa25 * doc/misc/message.texi (Bcc Warning): Document mml-secure-sa...
125755
1257562016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
125757
125758	Merge from origin/emacs-25
125759
125760	f1247f0 * lisp/frame.el (blink-cursor-delay): Doc fix.  (Bug#24372)
125761	ace7f14 * lisp/gnus/gnus-art.el (gnus-button-handle-library): Fix typo.
125762	bbf1ffd Regexp Functions doc minor fixes
125763
1257642016-10-08  Philipp Stephani  <phst@google.com>
125765
125766	Don’t consider nested let-alist forms
125767
125768	See Bug#24641.
125769
125770	* lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Don’t
125771	consider symbols in nested ‘let-alist’ forms.
125772
125773	* test/lisp/emacs-lisp/let-alist-tests.el
125774	(let-alist--deep-dot-search--nested): Add a unit test.
125775
1257762016-10-08  Alain Schneble  <a.s@realize.ch>
125777
125778	Support SIGTRAP in kill emulation on Windows
125779
125780	* src/w32proc.c (sys_kill): Translate SIGTRAP signal into a call to
125781	'DebugBreakProcess' to cause a breakpoint exception to occur in the
125782	specified process.  On Windows versions prior to Windows XP that do
125783	not support 'DebugBreakProcess' return -1 and set errno to ENOTSUP
125784	(as opposed to EINVAL before this change).
125785	* src/w32proc.c: Add typedef for 'DebugBreakProcess' function pointer
125786	and global variable to track state of run-time dynamic linking of this
125787	function.
125788
125789	* etc/NEWS: Add entry to document that 'signal-process' now supports
125790	SIGTRAP.
125791
1257922016-10-08  Eli Zaretskii  <eliz@gnu.org>
125793
125794	Deprecate 'wp' group and introduce a new group 'text'
125795
125796	* lisp/textmodes/tildify.el (tildify):
125797	* lisp/textmodes/text-mode.el (text-mode-hook):
125798	* lisp/textmodes/table.el (table):
125799	* lisp/textmodes/rst.el (rst):
125800	* lisp/textmodes/refer.el (refer):
125801	* lisp/textmodes/refbib.el (refbib):
125802	* lisp/textmodes/picture.el (picture):
125803	* lisp/textmodes/nroff-mode.el (nroff):
125804	* lisp/textmodes/enriched.el (enriched):
125805	* lisp/textmodes/bib-mode.el (bib):
125806	* lisp/progmodes/ebnf2ps.el (ebnf2ps):
125807	* lisp/nxml/rng-valid.el (relax-ng):
125808	* lisp/view.el (view):
125809	* lisp/ps-print.el (ps-print):
125810	* lisp/printing.el (printing):
125811	* lisp/outline.el (outlines):
125812	* lisp/lpr.el (lpr):
125813	* lisp/delim-col.el (columns): Use 'text' group instead of 'wp'.
125814	* lisp/cus-edit.el (wp): Remove the "text" tag.
125815	(text): New defgroup, inherits from the deprecated 'wp'.
125816	(outlines): Remove, in favor of the definition in outline.el.
125817	(tex): Inherit from 'text'.
125818	Suggested by Drew Adams <drew.adams@oracle.com>.  (Bug#24549)
125819
1258202016-10-08  Laimonas Vėbra  <laimonas.vebra@yahoo.com>  (tiny change)
125821
125822	Extend dictionary and library-directory handling for Ispell
125823
125824	* lisp/textmodes/ispell.el (ispell-check-version): Allow
125825	overriding LIBDIR via the variable defined by LIBRARYVAR (usually
125826	ISPELL_DICTDIR).
125827	(ispell-valid-dictionary-list): If the -d option to Ispell
125828	specifies an absolute file name, use that regardless of
125829	ispell-library-directory.  (Bug#24439)
125830
1258312016-10-07  Tassilo Horn  <tsdh@gnu.org>
125832
125833	Fix unescaped \begin{...} in docstring
125834
125835	* lisp/textmodes/reftex-cite.el (reftex-bib-or-thebib): Fix unescaped
125836	\begin{...} in docstring.
125837
1258382016-10-06  Noah Friedman  <friedman@splode.com>
125839
125840	Update comment.
125841
1258422016-10-06  Eli Zaretskii  <eliz@gnu.org>
125843
125844	Fix compilation with MinGW runtime 3.22.2 and w32api 3.18.2
125845
125846	* nt/inc/ms-w32.h (_WIN32_WINNT) [!MINGW_W64]: Undefine before
125847	defining to avoid redefinition warnings.
125848
125849	* nt/inc/sys/stat.h (_SYS_STAT_H, _INC_STAT_H): Define, to avoid
125850	inclusion of sys/stat.h from the system headers, which could then
125851	lead to compilation errors due to redefinition of 'struct stat'
125852	etc.  This is needed because latest versions of MinGW runtime
125853	include sys/stat.h from wchar.h.
125854
125855	* src/image.c (__MINGW_MAJOR_VERSION) [WINDOWSNT]: Temporarily
125856	redefine to 4 to avoid conflict between 2 definitions of
125857	MemoryBarrier.  (Bug#24613)
125858
1258592016-10-05  Mark Oteiza  <mvoteiza@udel.edu>
125860
125861	* lisp/url/url-parse.el (url-generic-parse-url): Unquote macro URL argument.
125862
1258632016-10-05  Mark Oteiza  <mvoteiza@udel.edu>
125864
125865	Autoload entry point testcover-start
125866
125867	* lisp/emacs-lisp/testcover.el: Add autoload cookie for
125868	testcover-start.
125869
1258702016-10-05  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
125871
125872	Bump version of ntlm.el to 2.1.0
125873
125874	* lisp/net/ntlm.el: Bump version to 2.1.0.
125875
1258762016-10-05  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
125877
125878	lisp/net/ntlm.el: Fix comment and docstring formatting
125879
1258802016-10-05  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
125881
125882	lisp/net/ntlm.el: Match Mozilla Type 1 and 3 message behavior
125883
125884	* lisp/net/ntlm.el (ntlm-build-auth-request): Only set
125885	"negotiate domain supplied" bit when a domain is supplied.  Do
125886	not set "negotiate workstation supplied" bit.
125887	(ntlm-build-auth-response): Set domain to empty string by
125888	default.  Set workstation name to "WORKSTATION".  Set flags to
125889	logical and of Type 1 and Type 2 message flags.  Remove four
125890	trailing 0 bytes.  Always set LM response.  Hard-code domain
125891	offset.  Reorder buffer fields.
125892
1258932016-10-05  Martin Rudalics  <rudalics@gmx.at>
125894
125895	Document return value of `display-buffer-in-side-window'
125896
125897	* doc/lispref/windows.texi (Displaying Buffers in Side Windows):
125898	* lisp/window.el (display-buffer-in-side-window): Describe
125899	return value of `display-buffer-in-side-window'.
125900
1259012016-10-05  Eli Zaretskii  <eliz@gnu.org>
125902
125903	Improve wording in side windows documentation
125904
125905	* doc/lispref/windows.texi (Displaying Buffers in Side Windows)
125906	(Side Window Options and Functions)
125907	(Frame Layouts with Side Windows): Minor wording improvements.
125908
1259092016-10-05  Martin Rudalics  <rudalics@gmx.at>
125910
125911	Document and fix some bugs with side windows
125912
125913	Add a documentation for side windows and fix some bugs
125914	found when testing their behavior.  Also add a new window
125915	parameter `no-delete-other-window', a new `display-buffer'
125916	alist member called `window-parameters', and functions to
125917	toggle and reverse side windows on a frame.  Add new function
125918	`window-swap-states' to exchange states of two live windows.
125919
125920	* lisp/window.el (display-buffer-in-atom-window): Use
125921	`split-window-no-error'.
125922	(window-sides-vertical): Maybe change layouts when setting this
125923	variable.
125924	(window-sides-reversed): New option.
125925	(window-sides-slots): Rewrite doc-string and help echoes.
125926	(window-sides-shown): New buffer-local variable set when showing
125927	a buffer in a side window.
125928	(window--sides-inhibit-check): New variable.
125929	(window--sides-reverse-on-frame-p, window-toggle-side-windows)
125930	(window--sides-reverse-all, window--sides-reverse-frame)
125931	(window--sides-reverse-side, window--sides-reverse)
125932	(window--sides-verticalize-frame, window--sides-verticalize)
125933	(window--sides-check-failed): New functions.
125934	(window--side-window-p): Remove function.
125935	(window--major-non-side-window): Rename to `window-main-window',
125936	adjust callers, rewrite doc-string.
125937	(window--major-side-window): Rename to
125938	`window--make-major-side-window-next-to', adjust caller, fix
125939	doc-string.
125940	(display-buffer-in-major-side-window): Rename to
125941	`window--make-major-side-window', adjust
125942	caller, rewrite doc-string.  Make `window-side' and
125943	`window-slot' parameters persistent (Bug#23858).  Don't set
125944	`delete-window' parameter.  Add `preserve-size' entry to ALIST.
125945	(delete-side-window): Remove function.
125946	(display-buffer-in-side-window): Fix doc-string.  Don't set
125947	`delete-window' parameter.  Add `preserve-size' entry to ALIST.
125948	(window--side-check): Rename to window--sides-check.  Rewrite
125949	completely.  Adjust caller.
125950	(window-resize-no-error): Don't describe PIXELWISE argument.
125951	(adjust-window-trailing-edge): Fix bug that disallowed
125952	re-enlarging windows that were too small.
125953	(window-deletable-p): Don't tell that a minibuffer window on a
125954	non-minibuffer-only frame can be deleted.  Fix doc-string.
125955	(delete-window): Handle deleting a side window here (the
125956	`delete-window' parameter is no more set for side windows).
125957	(delete-other-windows): Handle ‘no-delete-other-window'
125958	parameter. Don't treat side windows separately (see discussion
125959	of Bug#24368) but keep optimization that makes the main window
125960	the root window of its frame.
125961	(switch-to-prev-buffer, switch-to-next-buffer): Handle side
125962	windows and buffers shown in side windows separately.
125963	(split-window-no-error): New function.
125964	(window--state-get-1): Use right buffer when storing window
125965	point and start positions and WRITABLE is nil (Bug#24368).
125966	(window--state-put-1): Fix handling of `window-combination-limit'.
125967	Use `split-window-no-error'.
125968	(window--state-put-2): Try to restore windows with preserved
125969	size to their original size.  Fix bug where a fixed window's width
125970	was not preserved.
125971	(window-state-put): When reducing an internal window to a live
125972	one, don't choose a side window.
125973	(window-swap-states): New function.
125974	(window-splittable-p): Don't call `window--side-window-p'.
125975	(window--display-buffer): Handle `window-parameters' ALIST entry.
125976	Minor rewrite.
125977	(display-buffer): Mention `window-parameters' entry in
125978	doc-string.
125979	(display-buffer-at-bottom): Call `split-window-no-error'.
125980
125981	* doc/lispref/elisp.texi (Top): New section "Side Windows".
125982	* doc/lispref/windows.texi (Deleting Windows): Fix descriptions
125983	of `delete-window' and `delete-other-windows' wrt window
125984	parameters and side windows.
125985	(Display Action Functions): Mention `window-parameters' ALIST
125986	entry.
125987	(Side Windows): New section (Bug#18170).
125988	(Window Configurations): Describe new function `window-swap-states'.
125989	(Window Parameters): Say that functions may behave specially when
125990	their homonymous window parameter has been set.  Mention new
125991	parameter `no-delete-other-window'.  Add cross reference for
125992	`window-side' and `window-slot' parameters.
125993
1259942016-10-04  John Wiegley  <johnw@newartisans.com>
125995
125996	Add documentation note from Alex
125997
1259982016-10-04  Mark Oteiza  <mvoteiza@udel.edu>
125999
126000	Avoid dynamic binding on a symbol
126001
126002	Instead, bind history in the default minibuffer-history.
126003	Fixes bug#24580.
126004	* lisp/replace.el (query-replace-read-from): Let-bind
126005	minibuffer-history.  Change read-regexp and read-from-minibuffer's
126006	HISTORY arguments to nil so that they use minibuffer-history.
126007
1260082016-10-03  Stefan Monnier  <monnier@iro.umontreal.ca>
126009
126010	* src/fileio.c (Finsert_file_contents): Fix hook handling (bug#24340)
126011
126012	* src/fileio.c (Finsert_file_contents): Run before-change-hooks before
126013	deleting the old buffer content.
126014	* src/lisp.h (del_range_byte):
126015	* src/insdel.c (del_range_byte): Drop the last argument.
126016	* src/fns.c (Fbase64_encode_region): Adjust accordingly.
126017
1260182016-10-03  Tino Calancha  <tino.calancha@gmail.com>
126019
126020	Ibuffer: 'w' and 'B' default to buffer at current line
126021
126022	See discussion in:
126023	https://lists.gnu.org/r/emacs-devel/2016-09/msg00384.html
126024	* lisp/ibuffer.el (ibuffer--near-buffers): New defun;
126025	return buffers near current line.
126026	* lisp/ibuf-ext.el (ibuffer-copy-buffername-as-kill): Use it.
126027	Add argument ARG; if a non-zero integer, return next ARG buffers.
126028	Otherwise return the marked buffers.
126029	If there are not marked buffers, return buffer at current line
126030	without prompting the user.
126031	Use ibuffer-get-marked-buffers instead of ibuffer-map-marked-lines.
126032	Append to kill ring when last command was a kill-region.
126033	(ibuffer-copy-filename-as-kill): Idem.
126034	Simplify the code.
126035	Use ibuffer-buffer-file-name instead of buffer-file-name to
126036	include buffers in Dired mode.
126037
1260382016-10-03  Tino Calancha  <tino.calancha@gmail.com>
126039
126040	dired-mark-extension: Unmark if called with C-u prefix
126041
126042	See discussion in #Bug2518 and:
126043	https://lists.gnu.org/r/emacs-devel/2016-09/msg00711.html
126044	* lisp/dired-x.el (dired-mark-extension):
126045	Update interactive calls: a prefix arg C-u unmark files;
126046	a prefix C-u C-u prompt for MARKER-CHAR and mark files with it.
126047	(dired-mark-sexp):
126048	Show in the prompt that we are unmarking if called with a prefix argument.
126049	* doc/misc/dired-x.texi (Advanced Mark Commands):
126050	Update documentation for 'dired-mark-extension'.
126051
1260522016-10-02  Karl Fogel  <kfogel@red-bean.com>
126053
126054	Document yank behavior in the right place
126055
126056	* lisp/simple.el (yank): Document the handling of the
126057	`yank-handled-properties' and `yank-excluded-properties' variables,
126058	and the `yank-handler' text property.
126059	(yank-pop): Refer to `yank' now (bug#286)
126060
126061	* lisp/subr.el (insert-for-yank): Refer to `yank' now.
126062	(insert-for-yank-1): Refer to `insert-for-yank' now.
126063
126064	See this thread for discussion:
126065
126066	  https://lists.gnu.org/r/emacs-devel/2016-09/threads.html#00329
126067	  From: Karl Fogel
126068	  To: Emacs Devel
126069	  Subject: Question about intended behavior of 'insert-for-yank-1'.
126070	  Date: Mon, 12 Sep 2016 00:17:14 -0500
126071	  Message-ID: <874m5lr92d.fsf@red-bean.com>
126072
1260732016-10-02  Philipp Stephani  <phst@google.com>
126074
126075	Restart blink cursor timers on interval changes
126076
126077	This prevents surprising behavior when timer interval customizations are
126078	only applied whenever the timers happen to be restarted (see Bug#24372).
126079
126080	* lisp/frame.el (blink-cursor--start-idle-timer)
126081	(blink-cursor--start-timer): New functions.
126082	(blink-cursor-start, blink-cursor-check, blink-cursor-mode): Use
126083	the new helper functions.
126084	(blink-cursor-delay, blink-cursor-interval): Restart timers when
126085	the value is changed.
126086
1260872016-10-01  Philipp Stephani  <phst@google.com>
126088
126089	Use a simple keyword for a non-nil argument
126090
126091	The second argument of `run-with-idle-timer' is Boolean, i.e. only nil
126092	and non-nil values are distinguished.  Passing a number here is
126093	confusing.  Pass a descriptive symbol instead.
126094
126095	* lisp/frame.el (blink-cursor-mode, blink-cursor-check): Use
126096	:repeat symbol instead of number for second argument of
126097	`run-with-idle-timer'
126098
1260992016-10-01  Philipp Stephani  <phst@google.com>
126100
126101	Make querying to kill processes customizable
126102
126103	Introduce a new customization option, `confirm-kill-processes', that
126104	users can set to nil if they don't want Emacs to nag them about killing
126105	processes.
126106
126107	* lisp/files.el (confirm-kill-processes): New customization option.
126108	(save-buffers-kill-emacs): Use customization option.
126109
126110	* test/lisp/files-tests.el
126111	(files-test--save-buffers-kill-emacs--confirm-kill-processes): Add
126112	test for new customization option.
126113
126114	* doc/emacs/entering.texi (Exiting): Document new user option.
126115
126116	* doc/lispref/processes.texi (Query Before Exit): Document new
126117	user option.
126118
126119	* etc/NEWS: Document new user option.
126120
1261212016-10-01  Eli Zaretskii  <eliz@gnu.org>
126122
126123	Set :version of 'debugger-stack-frame-as-list'
126124
126125	* lisp/cus-start.el (debugger-stack-frame-as-list): Give value to
126126	the ':version' attribute.
126127
1261282016-10-01  Eli Zaretskii  <eliz@gnu.org>
126129
126130	Bump Emacs version to 26.0.50
126131
126132	* README:
126133	* configure.ac:
126134	* etc/NEWS:
126135	* etc/refcards/ru-refcard.tex:
126136	* msdos/sed2v2.inp:
126137	* src/msdos.c: Increment Emacs version to 26.0.50.
126138	* etc/NEWS.25: New file, copied from etc/NEWS with post-25.1 stuff
126139	moved to etc/NEWS.
126140
1261412016-10-01  Eli Zaretskii  <eliz@gnu.org>
126142
126143	Avoid compilation warning on MinGW
126144
126145	* src/w32.c: Include string.h, needed for the prototype of
126146	'strerror', shadowed by 'sys_strerror'.  This avoids a compiler
126147	warning about "no previous prototype".  The string.h header
126148	must be included after ms-w32.h, but before "#undef strerror".
126149
1261502016-09-30  Alan Third  <alan@idiocy.org>
126151
126152	Fix compatibility with macOS 10.12 pmset (bug#24537)
126153
126154	* lisp/battery.el (battery-pmset): Recognize and ignore battery id if
126155	present in output.
126156
1261572016-09-30  Paul Eggert  <eggert@cs.ucla.edu>
126158
126159	Limit <config.h>’s includes
126160
126161	This follows up on recent problems with the fact that config.h
126162	includes stdlib.h etc.; some files need to include stdlib.h later.
126163	config.h generally should limit itself to includes that are
126164	universally safe; outside of MS-Windows, only stdbool.h makes
126165	the cut among the files currently included.  So, move the
126166	other includes to just the files that need them (Bug#24506).
126167	* configure.ac (config_opsysfile): Remove, as this generic hook
126168	is no longer needed.
126169	* lib-src/etags.c, src/unexmacosx.c, src/w32.c, src/w32notify.c:
126170	* src/w32proc.c (_GNU_SOURCE):
126171	Remove, as it’s OK for config.h to do this now.
126172	* src/conf_post.h: Include <ms-w32.h>, instead of the generic
126173	config_opsysfile, for simplicity as this old way of configuring is
126174	now done only for the MS-Windows port.  Do not include <ms-w32.h>
126175	if DEFER_MS_W32_H, for the benefit of the few files that want its
126176	effects later.  Do not include <alloca.h>, <string.h>, or
126177	<stdlib.h>.  Other files modified to include these headers as
126178	needed, or to not include headers that are no longer needed.
126179	* src/lisp.h: Include <alloca.h> and <string.h> here, since
126180	some of the inline functions need them.
126181	* src/regex.c: Include <alloca.h> if not emacs.  (If emacs,
126182	we can rely on SAFE_ALLOCA.)  There is no longer any need to
126183	worry about HAVE_ALLOCA_H.
126184	* src/unexmacosx.c: Rely on config.h not including stdlib.h.
126185	* src/w32.c, src/w32notify.c, src/w32proc.c (DEFER_MS_W32_H):
126186	Define before including <config.h> first, and include <ms-w32.h>
126187	after the troublesome headers.
126188
1261892016-09-30  Vasilij Schneidermann  <v.schneidermann@gmail.com>
126190
126191	New user option 'debugger-stack-frame-as-list'
126192
126193	* src/eval.c (syms_of_eval) <debugger-stack-frame-as-list>: New
126194	variable.
126195	* lisp/cus-start.el (standard): Add debugger-stack-frame-as-list.
126196	* lisp/emacs-lisp/debug.el (debugger-setup-buffer): Adjust
126197	backtrace processing for the value of debugger-stack-frame-as-list.
126198	* lisp/emacs-lisp/edebug.el (edebug-backtrace): Adjust backtrace
126199	processing for the value of debugger-stack-frame-as-list.
126200	* doc/lispref/debugging.texi (Internals of Debugger): Document
126201	debugger-stack-frame-as-list.
126202	* etc/NEWS: Mention 'debugger-stack-frame-as-list'.
126203
1262042016-09-30  Aurelien Aptel  <aaptel@suse.com>
126205
126206	* src/alloc.c: call only non-null finalizers
126207
1262082016-09-30  Eli Zaretskii  <eliz@gnu.org>
126209
126210	Avoid compiler warnings in image.c on MS-Windows
126211
126212	* src/image.c (DrawText, g_type_init) [WINDOWSNT]: Avoid compiler
126213	warning about unused macros.
126214
1262152016-09-30  Paul Rankin  <hello@paulwrankin.com>
126216
126217	* lisp/outline.el (outline-invisible-p): Only return `t' for
126218	the 'outline property.
126219
1262202016-09-29  Paul Eggert  <eggert@cs.ucla.edu>
126221
126222	Fix problems found by static checking --with-ns
126223
126224	This is for Fedora 24 when configured with --enable-gcc-warnings.
126225	Although it does not fix all the problems, it fixes many of them.
126226	* src/frame.c (XParseGeometry):
126227	* src/nsterm.m (mouseDown:):
126228	Mark locals with UNINIT to pacify --enable-gcc-warnings.
126229	* src/image.c (PIX_MASK_DRAW, DefaultDepthOfScreen):
126230	Remove unused macros.
126231	(slurp_file xbm_scan, xbm_read_bitmap_data, xbm_load_image)
126232	(xbm_file_p, xbm_load, xpm_scan, xpm_make_color_table_v)
126233	(xpm_put_color_table_v, xpm_get_color_table_v)
126234	(xpm_make_color_table_h, xpm_put_color_table_h)
126235	(xpm_get_color_table_h, xpm_load_image, xpm_load)
126236	(pbm_next_char, pbm_scan_number, pbm_load, svg_load)
126237	(svg_load_image):
126238	* src/nsfns.m (x_get_string_resource):
126239	* src/nsimage.m (ns_image_from_XBM):
126240	Fix pointer signedness problems.
126241	* src/image.c (xpm_load_image, x_build_heuristic_mask, pbm_load)
126242	(imagemagick_load_image): Omit unused locals.
126243	* src/nsfns.m (ns_send_types, ns_return_types, ns_drag_types)
126244	(Fx_open_connection):
126245	* src/nsfont.m (ns_antialias_threshold):
126246	Move extern decl to nsterm.h so it can be checked.
126247	* src/nsmenu.m (svcsMenu, dockMenu):
126248	Move to the only file that uses them, so they can be static.
126249	* src/nsterm.h (find_and_call_menu_selection):
126250	* src/nsterm.m (x_set_frame_alpha):
126251	Omit duplicate decls.
126252	* src/nsterm.h (ns_dump_glyphstring): Mark as EXTERNALLY_VISIBLE.
126253	* src/nsfns.m (ns_tooltip, ns_display_info_for_name)
126254	(ns_set_name_as_filename, x_set_menu_bar_lines)
126255	(x_set_tool_bar_lines, x_set_internal_border_width):
126256	* src/nsterm.m (ns_drag_types, ns_draw_text_decoration):
126257	Now static.
126258	* src/nsfns.m (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp):
126259	* src/nsterm.m (ns_free_indexed_color, ns_color_to_lisp):
126260	Remove; unused.
126261	* src/nsfont.m (ns_dump_glyphstring):
126262	* src/nsterm.m (hide_bell, ns_get_color, ns_color_to_lisp)
126263	(ns_clear_frame, keyDown:):
126264	Fix signedness problem with printf arg.
126265	* src/nsterm.h (ns_input_events, ns_finish_events):
126266	* src/nsterm.m (ns_finish_events, hide_bell):
126267	Prototype the decls.
126268	* src/nsterm.m (NSMenuDidBeginTrackingNotification):
126269	Omit unnecessary decl.
126270	(dockMenu):
126271	(mainMenu) [NS_IMPL_COCOA]: Now static, and in this file.
126272	(ns_dumpglyphs_box_or_relief, changeFont:, initFrameFromEmacs:)
126273	(toggleFullScreen:): Use FACE_FROM_ID instead of
126274	FACE_FROM_ID_OR_NULL in contexts where the caller expects the
126275	result to be non-null.
126276	(applicationShouldTerminate:): Fix misleading indentation.
126277
1262782016-09-28  Mark Oteiza  <mvoteiza@udel.edu>
126279
126280	Turn on more lexical-binding
126281
126282	* lisp/dom.el:
126283	* lisp/faces.el:
126284	* lisp/htmlfontify.el: Turn on lexical-binding.
126285	(htmlfontify-string): Use pushnew instead of add-to-list.
126286	* lisp/info-xref.el:
126287	* lisp/isearch.el:
126288	* lisp/man.el:
126289	* lisp/ps-def.el:
126290	* lisp/ps-print.el:
126291	* lisp/replace.el: Turn on lexical-binding.  Require cl-lib at compile
126292	time.
126293	(multi-occur): Use cl-pushnew instead of add-to-list.
126294	(replace-match-string-symbols): Remove unused lexical variable.
126295	(replace-search, replace-highlight): Fix argument shadowing.
126296	* lisp/sort.el:
126297	* lisp/xml.el: Turn on lexical-binding.
126298	(xml--parse-buffer): Use push instead of add-to-list.
126299	* lisp/xt-mouse.el: Turn on lexical-binding.
126300
1263012016-09-27  Michael Albinus  <michael.albinus@gmx.de>
126302
126303	* admin/notes/bug-triage: Do not mention closed bugs
126304
126305	* admin/notes/bug-triage: Do not mention closed bugs, they are
126306	suppressed by default in debbugs-{gnu,org}.
126307
1263082016-09-27  Michael Albinus  <michael.albinus@gmx.de>
126309
126310	* etc/PROBLEMS: Remove problem Bug#22814, again.
126311
1263122016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
126313
126314	Stick with debbugs-supported tags in triage
126315
126316	* admin/notes/bug-triage: Stick to the tag "unreproducible", which
126317	debbugs supports, rather than suggesting "doneunreproducible" or
126318	"unreproducable".
126319
1263202016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
126321
126322	Merge from origin/emacs-25
126323
126324	9fc9988 Improve documentation of 'expand-abbrev' and wrapper hooks
126325	c14a1d4 Minor copyedits of MS-Windows installation instructions
126326	f281924 Fix display of cursor when 'blink-cursor-delay' has small value
126327
126328	# Conflicts:
126329	#	lisp/minibuffer.el
126330
1263312016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
126332
126333	Merge from origin/emacs-25
126334
126335	0ae9a81 Document 'timerp'
126336	2c72c46 Improve documentation of overlay priorities
126337	f6fa160 Fix 'dired-compress-files'
126338	2b8c5f0 Update commentary of STRING_CHAR and FETCH_MULTIBYTE_CHAR
126339
126340	# Conflicts:
126341	#	lisp/dired.el
126342	#	src/buffer.h
126343	#	src/character.h
126344
1263452016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
126346
126347	Merge from origin/emacs-25
126348
126349	cf9e174 Document the optional zlib library in MS-Windows builds
126350	84eb144 ; * admin/notes/unicode: Mention BidiCharacterTest.txt.
126351	73c67dd Fix tagging of DEFUN by etags
126352	ea1960b Avoid resetting track-mouse by mouse clicks
126353	505fef3 Improve nt/README.W32 instructions
126354	1229cc4 Document that desktop file overrides frame parameters
126355	f0eb70d ; Update ChangeLog.2 and ldef-boot.el for Emacs 25.1 release
126356
126357	# Conflicts:
126358	#	ChangeLog.2
126359	#	admin/notes/unicode
126360	#	lisp/ldefs-boot.el
126361
1263622016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
126363
126364	Merge from origin/emacs-25
126365
126366	0ffc9ce Update admin/authors.el
126367	0ad7410 Update Antinews in ELisp manual
126368	ea0f750 Fix comments on window height macros
126369	0bbdeed Fix 'url-http-create-request' when cookies are used
126370	0045998 Fix cross reference in frames.texi
126371	1392894 ; * etc/DEBUG: Minor copyedits.
126372	304a5c8 ; * etc/DEBUG: Improve documentation of getting control to GDB.
126373	56bf7d7 Fix regexp-opt documentation (bug #17862)
126374	803ad6f ; Fix documentation of seq-subseq
126375	ed4530d * lisp/emacs-lisp/gv.el (gv-ref): Fix example of PLACE in doc...
126376	88ea396 ; Spelling fixes
126377	17197d0 Fix tags-query-replace docstring
126378	80a7f8b Clarify documentation of precision in format specs
126379	88a5052 Improve and clarify documentation of subprocesses
126380	89eb09f * etc/PROBLEMS: Mention gnutls-cli 3.5.3 (Bug#24247).
126381
126382	# Conflicts:
126383	#	etc/PROBLEMS
126384	#	src/process.c
126385
1263862016-09-26  Michael Albinus  <michael.albinus@gmx.de>
126387
126388	* lisp/net/tramp-compat.el (tramp-compat-funcall): Don't use `subrp'.
126389
1263902016-09-24  Eli Zaretskii  <eliz@gnu.org>
126391
126392	Fix 'dired-mark-extension' with prefix argument
126393
126394	* lisp/dired-x.el (dired-mark-extension): Allow to specify
126395	MARKER-CHAR interactively as a string, not as a character's
126396	codepoint.  (Bug#24518)
126397
126398	* doc/misc/dired-x.texi (Advanced Mark Commands): Document the
126399	behavior when invoked with a prefix arg.
126400
1264012016-09-24  Simen Heggestøyl  <simenheg@gmail.com>
126402
126403	Support completion of classes and IDs in CSS mode
126404
126405	* lisp/textmodes/css-mode.el (css-class-list-function): New variable
126406	holding the function to call for retrieving completions of class
126407	names.
126408	(css-id-list-function): New variable holding the function to call for
126409	retrieving completions of IDs.
126410	(css--foreign-completions): New function for retrieving completions
126411	from other buffers.
126412	(css--complete-selector): Support completing HTML class names and IDs
126413	from other buffers in addition to completing HTML tags.
126414
126415	* lisp/textmodes/sgml-mode.el (html--buffer-classes-cache): New
126416	variable holding a cache for `html-current-buffer-classes'.
126417	(html--buffer-ids-cache): New variable holding a cache for
126418	`html-current-buffer-ids'.
126419	(html-current-buffer-classes): New function returning a list of class
126420	names used in the current buffer.
126421	(html-current-buffer-ids): New function returning a list of IDs used
126422	in the current buffer.
126423	(html-mode): Set `css-class-list-function' and `css-id-list-function'
126424	to `html-current-buffer-classes' and `html-current-buffer-ids'
126425	respectively.
126426
1264272016-09-24  Eli Zaretskii  <eliz@gnu.org>
126428
126429	Update test suite files due to removal of test/lisp/legacy
126430
126431	* test/README: Reference file-organization.org.
126432	* test/file-organization.org: Remove the description of files in
126433	the lisp/legacy/ directory.
126434
1264352016-09-24  Eli Zaretskii  <eliz@gnu.org>
126436
126437	Incorporate syntax-tests in lisp-tests.
126438
126439	* test/lisp/emacs-lisp/lisp-tests.el: Add tests from
126440	test/lisp/legacy/syntax-tests.el.
126441	* test/lisp/legacy/syntax-tests.el: File deleted.
126442
1264432016-09-24  Eli Zaretskii  <eliz@gnu.org>
126444
126445	Incorporate occur-tests in replace-tests
126446
126447	* test/lisp/replace-tests.el: Add tests from
126448	test/lisp/legacy/occur-tests.el.
126449	* test/lisp/legacy/occur-tests.el: File deleted.
126450
1264512016-09-24  Eli Zaretskii  <eliz@gnu.org>
126452
126453	Incorporate lexbind-tests.el in bytecomp-test.el
126454
126455	* test/lisp/emacs-lisp/bytecomp-tests.el: Added tests from
126456	test/lisp/legacy/lexbind-tests.el.
126457	* test/lisp/legacy/lexbind-tests.el: File deleted.
126458
1264592016-09-24  Paul Eggert  <eggert@cs.ucla.edu>
126460
126461	Improve integer overflow handling a bit
126462
126463	* src/charset.c (read_hex): Use INT_LEFT_SHIFT_OVERFLOW for clarity.
126464	The machine code is the same on my platform.
126465	* src/doprnt.c (doprnt):
126466	* src/emacs-module.c (module_funcall):
126467	* src/font.c (font_intern_prop):
126468	* src/keyboard.c (Frecursion_depth):
126469	* src/lread.c (read1):
126470	Use WRAPV macros instead of checking overflow by hand.
126471	* src/editfns.c (hi_time, time_arith, decode_time_components):
126472	* src/emacs-module.c (Fmodule_load):
126473	Simplify by using FIXNUM_OVERFLOW_P.
126474	* src/emacs-module.c: Include intprops.h.
126475	* src/xdisp.c (percent99): New function.
126476	(decode_mode_spec): Use it to simplify overflow avoidance and
126477	formatting of %p and %P.
126478
1264792016-09-24  Eli Zaretskii  <eliz@gnu.org>
126480
126481	Incorporate core-elisp-tests in lisp-tests
126482
126483	* test/lisp/emacs-lisp/lisp-tests.el: Added tests from
126484	test/lisp/legacy/core-elisp-tests.el.
126485	* test/lisp/legacy/core-elisp-tests.el: File removed.
126486
1264872016-09-24  Eli Zaretskii  <eliz@gnu.org>
126488
126489	Move coding-tests.el and decoder-test.el to their places
126490
126491	* test/src/coding-tests.el: Added all the tests from
126492	test/lisp/legacy/decoder-tests.el.
126493	* test/lisp/legacy/decoder-tests.el: File deleted.
126494
1264952016-09-23  Vibhav Pant  <vibhavp@gmail.com>
126496
126497	Use correct TYPE value for displaying error messages in (erc-display-message)
126498
1264992016-09-23  Eli Zaretskii  <eliz@gnu.org>
126500
126501	Bump the version to 25.2.50
126502
126503	* README:
126504	* configure.ac:
126505	* etc/NEWS:
126506	* msdos/sed2v2.inp: Increment the Emacs version to 25.2.50.
126507
1265082016-09-22  Tino Calancha  <tino.calancha@gmail.com>
126509
126510	ibuffer-do-view-other-frame: Display each buffer in a new frame
126511
126512	* lisp/ibuffer.el (ibuffer-do-view-1):
126513	When TYPE equals 'other-frame, then display each buffer
126514	in a new frame (Bug#24086).
126515
1265162016-09-22  Paul Eggert  <eggert@cs.ucla.edu>
126517
126518	Update from gnulib
126519
126520	This incorporates:
126521	2016-09-22 stdint: port to GCC 7
126522	2016-09-22 limits-h, stdint: don't assume extensions
126523	* doc/misc/texinfo.tex, m4/limits-h.m4, m4/stdint.m4: Copy from gnulib.
126524
1265252016-09-22  Alan Mackenzie  <acm@muc.de>
126526
126527	* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Fix coding error
126528
1265292016-09-21  Paul Eggert  <eggert@cs.ucla.edu>
126530
126531	Port recent flexmember changes to NetBSD
126532
126533	The NetBSD library supports localtime_rz directly, and without
126534	this change 'configure' omitted the flexmember test that is marked
126535	as conditional on localtime_rz.  Emacs now needs to use
126536	flexmember.m4 even when localtime_rz works.
126537	Problem reported by Thomas Klausner.
126538	* admin/merge-gnulib (GNULIB_MODULES): Add flexmember.
126539	* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
126540
1265412016-09-21  Paul Eggert  <eggert@cs.ucla.edu>
126542
126543	* doc/misc/texinfo.tex: Copy from gnulib.
126544
1265452016-09-21  Michael Albinus  <michael.albinus@gmx.de>
126546
126547	* lisp/net/tramp.el (tramp-clear-passwd): Call also `auth-source-forget'.
126548
1265492016-09-20  Paul Eggert  <eggert@cs.ucla.edu>
126550
126551	Use flexmembers on IBM XL C for AIX
126552
126553	This removes a workaround where Emacs did not use flexible
126554	array members when compiled with IBM XL C.  Instead, avoid
126555	the problem by making the aliasing issues more obvious to
126556	this compiler.
126557	* admin/merge-gnulib: Don’t remove m4/flexmember.m4.
126558	* m4/flexmember.m4: Copy from gnulib.
126559	* configure.ac (AC_C_FLEXIBLE_ARRAY_MEMBER): Remove workaround.
126560	* src/alloc.c (allocate_string_data): Rephrase to avoid aliasing
126561	problem that would otherwise mess up code generated for flexible
126562	array members by IBM XL C for AIX, V12.1.
126563	* src/conf_post.h (FLEXIBLE_ARRAY_MEMBER): Remove; now done
126564	by gnulib code.
126565
1265662016-09-19  Michael Albinus  <michael.albinus@gmx.de>
126567
126568	Fix a problem with Tramp when the temporary dir isn't C:/Temp on w32
126569
126570	* lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name): Don't use
126571	`tramp-drop-volume-letter' any longer, it causes collateral
126572	damages.  Reported by Chris Zheng <chriszheng99@gmail.com>.
126573
1265742016-09-17  Paul Eggert  <eggert@cs.ucla.edu>
126575
126576	Port January __morecore changes to AIX 7.1
126577
126578	* src/vm-limit.c (__MALLOC_HOOK_VOLATILE, __morecore)
126579	(__after_morecore_hook):
126580	* src/ralloc.c (__morecore):
126581	Declare if DOUG_LEA_MALLOC is not defined, not if HAVE_MALLOC_H is
126582	not defined.  <malloc.h> does not declare these in AIX 7.1.
126583
1265842016-09-17  Paul Eggert  <eggert@cs.ucla.edu>
126585
126586	Define _GNU_SOURCE in files delaying config.h
126587
126588	Problem reported by Richard Copley in:
126589	https://lists.gnu.org/r/emacs-devel/2016-09/msg00440.html
126590	* src/w32.c, src/w32notify.c, src/w32proc.c (_GNU_SOURCE):
126591	Define early.
126592
1265932016-09-17  Eli Zaretskii  <eliz@gnu.org>
126594
126595	Update the bidi test code and data
126596
126597	* test/manual/BidiCharacterTest.txt: Import the version from
126598	Unicode Standard 9.0.0.
126599	* test/manual/biditest.el (biditest-generate-testfile): Allow 'x'
126600	in the 4th field of the test data.
126601
1266022016-09-17  Tino Calancha  <tino.calancha@gmail.com>
126603
126604	ibuffer-do-toggle-read-only: Fix unused argument
126605
126606	* lisp/ibuffer.el (ibuffer-do-toggle-read-only): Call
126607	'read-only-mode' with ARG when its an integer.
126608	Clarify the meaning of ARG in doc string.
126609
1266102016-09-17  Alan Mackenzie  <acm@muc.de>
126611
126612	Improve accuracy of line/column numbers in byte compiler's warning messages.
126613
126614	* lisp/emacs-lisp/bytecomp.el (byte-compile-set-symbol-position): ensure new
126615	value of byte-compile-last-position is not lower than old value.
126616	(byte-compile-function-warn): call byte-compile-set-symbol-position.
126617
1266182016-09-17  Michael Albinus  <michael.albinus@gmx.de>
126619
126620	Minor Tramp tweaks
126621
126622	* lisp/net/tramp.el (tramp-get-buffer): Reuse connection
126623	property "process-buffer" if already existing.
126624	(tramp-connectable-p): Suppress debug messages.
126625
1266262016-09-16  Paul Eggert  <eggert@cs.ucla.edu>
126627
126628	Define _GNU_SOURCE in unexmacosx.c
126629
126630	Problem reported by Bob Halley in:
126631	https://lists.gnu.org/r/emacs-devel/2016-09/msg00427.html
126632	* src/unexmacosx.c (_GNU_SOURCE): Define if not already defined.
126633
1266342016-09-16  Alan Mackenzie  <acm@muc.de>
126635
126636	C Mode: Fix mis-fontification of macro invocation as function declaration
126637
126638	This happened with a macro invocation which was followed by a statement block
126639	in braces.
126640
126641	* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): CASE 11: distinguish
126642	between contexts nil and top, being less permissive in the former case.
126643	(c-just-after-func-arglist-p): call c-forward-decl-or-cast-1 with context top.
126644
1266452016-09-16  Eli Zaretskii  <eliz@gnu.org>
126646
126647	Improve the doc string of 'format'
126648
126649	* src/editfns.c (Fformat): Fix ambiguity in the doc string's usage
126650	of a literal period.  (Bug#24407)
126651
1266522016-09-16  Eli Zaretskii  <eliz@gnu.org>
126653
126654	Improve doc strings in whitespace.el
126655
126656	* lisp/whitespace.el (whitespace-mode, whitespace-newline-mode)
126657	(global-whitespace-mode, global-whitespace-newline-mode): Improve
126658	the doc strings.  (Bug#24413)
126659
1266602016-09-16  Eli Zaretskii  <eliz@gnu.org>
126661
126662	Improve detectability of 'next-logical-line' and 'previous-logical-line'
126663
126664	* lisp/simple.el (next-line, previous-line): Mention
126665	'next-logical-line' and 'previous-logical-line' in the doc
126666	strings.  (Bug#24443)
126667
1266682016-09-16  Paul Eggert  <eggert@cs.ucla.edu>
126669
126670	Update from gnulib
126671
126672	This incorporates:
126673	2016-09-16 extensions: fix typo in comment
126674	2016-09-16 stdio: don't redefine __USE_MINGW_ANSI_STDIO
126675	* m4/extensions.m4, m4/stdio_h.m4: Copy from gnulib.
126676
1266772016-09-15  Paul Eggert  <eggert@cs.ucla.edu>
126678
126679	Prefer now-standard int width macros
126680
126681	* src/data.c (ULL_WIDTH):
126682	* src/lisp.h (EMACS_INT_WIDTH, BITS_PER_BITS_WORD):
126683	* src/lread.c (read_integer):
126684	* src/term.c (produce_glyphless_glyph):
126685	* src/xterm.c (x_send_scroll_bar_event):
126686	Use *_WIDTH macros instead of CHAR_BIT * sizeof.
126687	* src/data.c (ULL_WIDTH): Rename from BITS_PER_ULL for consistency
126688	with the *_WIDTH standard macros.  All uses changed.
126689	* src/gmalloc.c (INT_BIT): Remove.  All uses replaced with INT_WIDTH.
126690	* src/lisp.h (EMACS_INT_WIDTH): Rename from BITS_PER_EMACS_INT
126691	for consistency with the *_WIDTH standard macros.  All uses changed.
126692	(BITS_PER_CHAR): Remove; all uses replaced by CHAR_BIT.  This must
126693	be the same as CHAR_WIDTH and avoids confusion with Elisp
126694	char-width, which counts columns not bits.
126695	(BITS_PER_SHORT): Remove; all uses replaced by SHRT_WIDTH.
126696	(BITS_PER_LONG): Remove; all uses replaced by LONG_WIDTH.
126697	* src/lread.c: Do not include limits.h since CHAR_BIT is no longer
126698	used directly.
126699
1267002016-09-15  Paul Eggert  <eggert@cs.ucla.edu>
126701
126702	Update from gnulib
126703
126704	This incorporates:
126705	2016-09-15 stdint: support new _WIDTH macros
126706	2016-09-15 limits-h: new module
126707	2016-09-15 sys_types: avoid glibc 2.25 warnings about major()
126708	2016-09-15 extensions: port to more ISO C TSes
126709	2016-09-13 intprops: new macro TYPE_WIDTH
126710	2016-09-13 extensions: port to recent ISO C TRs
126711	* .gitignore: Add lib/limits.h.
126712	* doc/misc/texinfo.tex, lib/ftoastr.h, lib/intprops.h:
126713	* lib/stdint.in.h, m4/extensions.m4, m4/stdint.m4, m4/stdio_h.m4:
126714	* m4/sys_types_h.m4: Copy from gnulib.
126715	* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
126716	* lib/limits.in.h, m4/limits-h.m4: New files, copie from gnulib.
126717	* nt/gnulib.mk: Merge changes from lib/gnulib.mk.
126718
1267192016-09-15  Michael Albinus  <michael.albinus@gmx.de>
126720
126721	Rework fixing Bug#24432
126722
126723	* lisp/net/tramp.el (tramp-get-buffer): Set connection property
126724	"process-buffer" in order to mark connection as active.
126725
126726	* lisp/net/tramp-cache.el (tramp-get-hash-table)
126727	(tramp-set-connection-property)
126728	(tramp-dump-connection-properties): Do not use "active" property.
126729	(tramp-list-connections): Use "process-buffer" property.
126730
126731	* lisp/net/tramp-cmds.el (tramp-cleanup-connection): Flush process
126732	properties prior deletion of process.
126733
1267342016-09-14  Johan Bockgård  <bojohan@gnu.org>
126735
126736	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix debug spec (Bug#24430).
126737
126738	* lisp/emacs-lisp/edebug.el (defun): Fix debug spec.
126739
1267402016-09-14  Eli Zaretskii  <eliz@gnu.org>
126741
126742	Avoid compiler warning on MS-Windows due to clone_file
126743
126744	* src/fileio.c (clone_file): Condition on !WINDOWSNT, since the
126745	call to it is not compiled in that build, and having it defined
126746	causes compiler warnings.
126747
1267482016-09-14  Eli Zaretskii  <eliz@gnu.org>
126749
126750	Avoid aborts in GC due to abort_on_gc
126751
126752	* src/lisp.h:
126753	* src/print.c (Fprin1_to_string):
126754	* src/eval.c (signal_or_quit):
126755	* src/alloc.c (garbage_collect_1): Remove declarations, setting,
126756	and testing the value of abort_on_gc.  It is no longer needed, and
126757	using it causes rare aborts in GC for no good reason.  (Bug#23912)
126758
1267592016-09-14  Michael Albinus  <michael.albinus@gmx.de>
126760
126761	Fix Bug#24432
126762
126763	* lisp/net/tramp-cache.el (tramp-get-hash-table): Initialize a
126764	connection as inactive.
126765	(tramp-set-connection-property): Make the connection active.
126766	(tramp-dump-connection-properties): Don't save "active" property.
126767	(tramp-list-connections): List only active connections.  (Bug#24432)
126768
1267692016-09-14  Lars Ingebrigtsen  <larsi@gnus.org>
126770
126771	Don't bug out on all-whitespace URLs
126772
126773	* lisp/net/shr.el (shr-expand-url): Don't bug out on
126774	degenerate all-whitespace URLs.
126775
1267762016-09-13  Katsumi Yamaoka  <yamaoka@jpl.org>
126777
126778	sieve-manage.el: Rename sieve-manage-ignore-broken-tls
126779
126780	* lisp/net/sieve-manage.el (sieve-manage-ignore-starttls):
126781	Rename from sieve-manage-ignore-broken-tls.  If it is set,
126782	sieve-manage will never use STARTTLS even if the server says
126783	it is capable (but may be broken).
126784
1267852016-09-13  Paul Eggert  <eggert@cs.ucla.edu>
126786
126787	Port to ISO/IEC TS 18661-1:2014
126788
126789	* src/character.h (CHARACTER_WIDTH): Rename from CHAR_WIDTH.
126790	All uses changed.
126791
1267922016-09-13  Tino Calancha  <tino.calancha@gmail.com>
126793
126794	dired-jump: Expand file-name before dired-goto-file call
126795
126796	Command dired-goto-file requires its argument to be an absolute
126797	file name.  Interactively FILE-NAME is read with read-file-name,
126798	which could return an abbreviated file name (Bug#24409).
126799	* lisp/dired-x.el (dired-jump): Use expand-file-name on FILE-NAME.
126800	Clarify in doc string the meaning of arg FILE-NAME.
126801
1268022016-09-13  Tino Calancha  <tino.calancha@gmail.com>
126803
126804	Add test for Bug#21454
126805
126806	* test/lisp/legacy/files-tests.el (files-test-bug-21454): New test.
126807
1268082016-09-12  Katsumi Yamaoka  <yamaoka@jpl.org>
126809
126810	* lisp/net/sieve-manage.el (sieve-manage-ignore-broken-tls): Add :version.
126811
1268122016-09-12  TSUCHIYA Masatoshi  <tsuchiya@namazu.org>
126813
126814	sieve.el: Make the buffer to edit unmodified initially (bug#24423)
126815
126816	* lisp/net/sieve.el (sieve-edit-script):
126817	Make the buffer to edit be not modified-p initially (bug#24423).
126818
1268192016-09-12  TSUCHIYA Masatoshi  <tsuchiya@namazu.org>
126820
126821	sieve-manage.el: Allow user to avoid STARTTLS capability test (bug#24422)
126822
126823	* lisp/net/sieve-manage.el
126824	(sieve-manage-ignore-broken-tls): New user option.
126825	(sieve-manage-open-server):
126826	Don't test STARTTLS capability if the option is set (bug#24422).
126827
1268282016-09-12  Michal Nazarewicz  <mina86@mina86.com>
126829
126830	Fix compiler thinking width and height may be unitialized in frame.c
126831
126832	This fixes the following warning:
126833
126834		frame.c: In function ‘x_set_frame_parameters’:
126835		frame.c:3329:25: error: ‘width’ may be used uninitialized in
126836			this function [-Werror=maybe-uninitialized]
126837		       adjust_frame_size (f, width_change ? width : -1,
126838	                         ^
126839
126840	* src/frame.c (x_set_frame_parameters): Drop width_changed and
126841	height_changed variables in favor of storing that information in
126842	width and height variables.
126843
1268442016-09-12  Michal Nazarewicz  <mina86@mina86.com>
126845
126846	Fix compiler thinking tmpdir may be unitialized in emacsclient
126847
126848	This fixes the following warning:
126849
126850		emacsclient.c: In function ‘set_local_socket’:
126851		/usr/include/x86_64-linux-gnu/bits/string3.h:111:3: error:
126852			‘tmpdir’ may be used uninitialized in this function
126853			[-Werror=maybe-uninitialized]
126854		   return __builtin___stpcpy_chk (__dest, __src, __bos (__dest));
126855		   ^
126856		emacsclient.c:1197:17: note: ‘tmpdir’ was declared here
126857		     const char *tmpdir;
126858
126859	* lib-src/emacsclient.c (set_local_socket): Get rid of use_tmpdir
126860	variable and instead use tmpdir being non-NULL as sign that it should
126861	be used.
126862
1268632016-09-12  Tino Calancha  <tino.calancha@gmail.com>
126864
126865	image-dired: Signal an error before calling a missing executable
126866
126867	Reverts commit ca473907
126868	Add a defun to check if an executable exists, and call it
126869	on each function using an external program: when the executable
126870	is not available signal an error.
126871	See discussion on:
126872	https://lists.gnu.org/r/emacs-devel/2016-09/msg00135.html
126873	* lisp/image-dired.el (image-dired--check-executable-exists): New defun.
126874	Throw and error when the executable arg is missing.
126875	(image-dired-display-image, image-dired-rotate-thumbnail)
126876	(image-dired-rotate-original, image-dired-set-exif-data)
126877	(image-dired-get-exif-data):
126878	Use it.
126879
1268802016-09-12  Eli Zaretskii  <eliz@gnu.org>
126881
126882	Fix daemon shutdown when emacs-kill-hooks ask questions
126883
126884	* lisp/server.el (server-start): Put the server's kill-emacs-hook
126885	last, to allow other hooks to have a frame to interact with the
126886	user.  (Bug#24326)
126887
1268882016-09-12  Paul Eggert  <eggert@cs.ucla.edu>
126889
126890	* src/casefiddle.c (casify_word): Simplify.
126891
126892	* src/casefiddle.c (casify_word): Return Qnil.
126893
1268942016-09-12  Michal Nazarewicz  <mina86@mina86.com>
126895
126896	Refactor common code in {upcase,downcase,capitalize}-word functions
126897
126898	* src/casefiddle.c (operate_on_word): Removed in favor of…
126899	(casify_word) …new function which does what operate_on_word did plus
126900	what all of the common code from *-word functions.
126901	(upcase-word, downcase-word, capitalize-word): Move code common between
126902	those functions (pretty much the whole body of those functions) into
126903	casify_word and use that instead of now deleted operate_on_word.
126904
1269052016-09-11  Paul Eggert  <eggert@cs.ucla.edu>
126906
126907	* doc/lispref/files.texi: Remove @vindex.
126908
1269092016-09-11  Paul Eggert  <eggert@cs.ucla.edu>
126910
126911	Remove unnecessary ref to coreutils manual
126912
126913	* doc/lispref/files.texi: Document write-region-inhibit-fsync.
126914
1269152016-09-11  Alan Mackenzie  <acm@muc.de>
126916
126917	Correctly fontify C++ direct initializations with parens inside functions
126918
126919	Or, more clearly, when something looks like a function declaration and it's
126920	inside a function, fontify it as a direct initialization.
126921
126922	For this purpose, introduce a "brace stack" for each buffer, where an entry on
126923	the brace stack states how deeply nested a particular position is inside
126924	braces inside a "top level", which includes classes and namespaces.
126925
126926	Also introduce a new "context", "top", with which c-font-lock-declarations
126927	signals to c-forward-decl-or-cast-1 that point is at the top level.
126928
126929	* lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): add
126930	c-truncate-bs-cache.
126931	(c-flat-decl-block-kwds, c-brace-stack-thing-key, c-brace-stack-no-semi-key)
126932	(c-type-decl-operator-prefix-key): new language constants/variables.
126933
126934	* lisp/progmodes/cc-engine.el (c-bs-interval, c-bs-cache, c-bs-cache-limit)
126935	(c-bs-prev-pos, c-bs-prev-stack): New mostly local variables for the brace
126936	stack cache.
126937	(c-init-bs-cache, c-truncate-bs-cache, c-truncate-bs-cache, c-brace-stack-at)
126938	(c-bs-at-toplevel-p): New functions which manipulate the brace stack (cache).
126939	(c-find-decl-prefix-search): Keep track of whether we're at top level.
126940	(c-find-decl-spots): New local variable cfd-top-level which records what it
126941	says.  On calling cfd-fun, pass cfd-top-level as an additional argument.
126942	(c-forward-declarator): Add new element DECORATED to the result list.  Set it
126943	to non-nil when a match for c-type-decl-operator-prefix-key is found.
126944	(c-forward-decl-or-cast-1): Handle the newly introduced context "top".
126945	Introduce "CASE 9.5", which recognizes direct initializations.
126946
126947	* lisp/progmodes/cc-fonts.el (c-font-lock-complex-decl-prepare)
126948	(c-font-lock-enum-tail, c-font-lock-cut-off-declarators)
126949	(c-font-lock-enclosing-decls, c-simple-decl-matchers, c-basic-matchers-after):
126950	Add appropriate `not-top' argument to calls to c-font-lock-declarators.
126951	(c-font-lock-declarators): Additional parameter `not-top'.  Use not-top to
126952	participate in the decision whether to fontify an identifier as a function or
126953	a variable.
126954	(c-font-lock-declarations): The internal lambda function takes an additional
126955	argument `toplev' from c-find-decl-spots, which it uses in determining the
126956	"context" of a declaration.  Add appropriate `not-top' argument to calls to
126957	c-font-lock-declarators.
126958	(c-font-lock-objc-methods): Add extra parameter to internal lambda function,
126959	like for c-font-lock-declarators.
126960
126961	* lisp/progmodes/cc-mode.el (c-basic-common-init): Initialize the brace stack
126962	cache.
126963
1269642016-09-11  Eli Zaretskii  <eliz@gnu.org>
126965
126966	Avoid signaling errors when computing "Stop" in GDB menu
126967
126968	* lisp/progmodes/gdb-mi.el (gdb-show-stop-p): Don't assume
126969	'gdb-running-threads-count' must have a numeric value.
126970	(Bug#24414)
126971
1269722016-09-11  Philipp Stephani  <phst@google.com>
126973
126974	Stop calling ‘byte-compile-log-warning’
126975
126976	For errors, use ‘byte-compile-report-error’ instead so that the error
126977	is registered and causes compilation to fail (Bug#24359).
126978
126979	For warnings, use ‘byte-compile-warn’ instead so that
126980	‘byte-compile-error-on-warn’ is honored (Bug#24360).
126981
126982	* lisp/emacs-lisp/macroexp.el (macroexp--funcall-if-compiled)
126983	(macroexp--warn-and-return): Use ‘byte-compile-warn’ instead of
126984	‘byte-compile-log-warning’.
126985
126986	* lisp/emacs-lisp/bytecomp.el (byte-compile-form, byte-compile-unfold-bcf)
126987	(byte-compile-setq, byte-compile-funcall): Use
126988	‘byte-compile-report-error’ instead of ‘byte-compile-log-warning’.
126989	(byte-compile-log-warning): Convert comment to documentation
126990	string.  Explain that the function shouldn’t be called directly.
126991	(byte-compile-report-error): Add optional FILL argument.
126992
126993	* lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
126994	(cconv--analyze-function, cconv-analyze-form): Use
126995	‘byte-compile-warn’ instead of ‘byte-compile-log-warning’.
126996
126997	* lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand): Use
126998	‘byte-compile-warn’ instead of ‘byte-compile-log-warning’.
126999
127000	* lisp/subr.el (add-to-list): Use ‘byte-compile-report-error’ instead
127001	of ‘byte-compile-log-warning’.
127002	(do-after-load-evaluation): Use ‘byte-compile-warn’ instead of
127003	‘byte-compile-log-warning’.
127004
1270052016-09-10  Paul Eggert  <eggert@cs.ucla.edu>
127006
127007	* etc/NEWS: Remove comment lost in emacs-25 merge.
127008
1270092016-09-10  Paul Eggert  <eggert@cs.ucla.edu>
127010
127011	Document file synchronization issues
127012
127013	* doc/lispref/files.texi (Files and Storage): New section.
127014
1270152016-09-10  Paul Eggert  <eggert@cs.ucla.edu>
127016
127017	copy-file now uses GNU/Linux file cloning
127018
127019	From a suggestion by Kieran Colford (see Bug#23904).
127020	* configure.ac: Check for linux/fs.h.
127021	* src/fileio.c [HAVE_LINUX_FS_H]: Include sys/ioctl.h and linux/fs.h.
127022	(clone_file): New function.
127023	(Fcopy_file): Use it.
127024
1270252016-09-10  Alan Third  <alan@idiocy.org>
127026
127027	Invert y coord of NS image files (bug#7847)
127028
127029	* src/nsterm.m (ns_dumpglyphs_image): Invert y co-ordinate of the image
127030	when compositing.
127031
1270322016-09-10  Noam Postavsky  <npostavs@gmail.com>
127033
127034	Don't require isearch-update before isearch-done
127035
127036	It is useful to be able to call `isearch-done' unconditionally to
127037	ensure a non-isearching state.
127038
127039	* lisp/isearch.el (isearch-done): Check that `isearch--current-buffer'
127040	is a live buffer before using it (Bug #21091).
127041	* test/lisp/isearch-tests.el (isearch--test-done): Test it.
127042
1270432016-09-09  Simen Heggestøyl  <simenheg@gmail.com>
127044
127045	* lisp/emacs-lisp/ring.el: Use lexical-binding
127046
127047	* lisp/emacs-lisp/ring.el (ring-elements): Don't use the RESULT
127048	argument of `dotimes' when the iteration variable isn't referred by
127049	it.
127050	(ring-member): Don't pass nil as the RESULT argument of `dotimes'
127051	since it's the default.
127052
1270532016-09-08  Michal Nazarewicz  <mina86@mina86.com>
127054
127055	Split regex character class test into smaller chunks
127056
127057	Having one test for all character classes it is not always trivial to
127058	determine which class is failing.  This happens when failure is caused
127059	by ‘(should (equal (point) (point-max)))’ not being met.
127060
127061	With per-character class tests, it is immidiatelly obvious which test
127062	causes issues plus tests for all classes are run even if some of them
127063	fail.
127064
127065	* test/src/regex-tests.el (regex-character-classes): Delete and split
127066	into…
127067	(regex-tests-alnum-character-class, regex-tests-alpha-character-class,
127068	regex-tests-ascii-character-class, regex-tests-blank-character-class,
127069	regex-tests-cntrl-character-class, regex-tests-digit-character-class,
127070	regex-tests-graph-character-class, regex-tests-lower-character-class,
127071	regex-tests-multibyte-character-class,
127072	regex-tests-nonascii-character-class,
127073	regex-tests-print-character-class, regex-tests-punct-character-class,
127074	regex-tests-space-character-class,
127075	regex-tests-unibyte-character-class,
127076	regex-tests-upper-character-class, regex-tests-word-character-class,
127077	regex-tests-xdigit-character-class): …new tests.
127078
1270792016-09-08  Michal Nazarewicz  <mina86@mina86.com>
127080
127081	Don’t allocate char-table’s extra slots in regexp-out-charset
127082
127083	* lisp/emacs-lisp/regexp-opt.el (regexp-opt-charset): Do not use
127084	'case-table as charmap char-table’s property.  The function has nothing
127085	to do with casing and in addition using 'case-table causes unnecessary
127086	extra slots to be allocated which ‘regexp-opt-charset’ does not use.
127087
1270882016-09-08  Michal Nazarewicz  <mina86@mina86.com>
127089
127090	Remove dead loop iterations in regex.c
127091
127092	RE_CHAR_TO_MULTIBYTE(c) yields c for ASCII characters and a byte8
127093	character for c ≥ 0x80.  Furthermore, CHAR_BYTE8_P(c) is true only
127094	for byte8 characters.  This means that
127095
127096		c = RE_CHAR_TO_MULTIBYTE (ch);
127097		if (! CHAR_BYTE8_P (c) && re_iswctype (c, cc))
127098
127099	is equivalent to:
127100
127101		c = c;
127102		if (! false && re_iswctype (c, cc))
127103
127104	for 0 ⪬ c < 0x80, and
127105
127106		c = BYTE8_TO_CHAR (c);
127107		if (! true && re_iswctype (c, cc))
127108
127109	for 0x80 ⪬ c < 0x100.  In other words, the loop never executes for
127110	c ≥ 0x80 and RE_CHAR_TO_MULTIBYTE call is unnecessary for c < 0x80.
127111
127112	* src/regex.c (regex_compile): Simplyfy a for loop by eliminating
127113	dead iterations and unnecessary macro calls.
127114
1271152016-09-08  Michal Nazarewicz  <mina86@mina86.com>
127116
127117	Replace decimalnump with alphanumericp
127118
127119	decimalnump was used in regex.c only in ISALNUM macro which ored it with
127120	alphabeticp.  Because both of those functions require Unicode general
127121	category lookup, this resulted in unnecessary lookups (if alphabeticp
127122	return false decimalp had to perform another lookup).  Drop decimalnump
127123	in favor of alphanumericp which combines decimelnump with alphabeticp.
127124
127125	* src/character.c (decimalnump): Remove in favor of…
127126	(alphanumericp): …new function.
127127
127128	* src/regex.c (ISALNUM): Use alphanumericp.
127129
1271302016-09-08  Michal Nazarewicz  <mina86@mina86.com>
127131
127132	Remove inaccurate comment in regex.c
127133
127134	* src/regex.c (regex_compile): Remove comment indicating that wctype of
127135	some character classes may be negative.  All wctypes are in fact
127136	non-negative.
127137
1271382016-09-08  Michal Nazarewicz  <mina86@mina86.com>
127139
127140	STRING_CHAR does not unify characters; update documentation
127141
127142	* src/character.h (STRING_CHAR): Update doc.
127143	* src/buffer.h (FETCH_MULTIBYTE_CHAR): Update doc.  While at it, change
127144	the function to use BYTE_POS_ADDR instead of open-coding it.
127145
1271462016-09-08  Simen Heggestøyl  <simenheg@gmail.com>
127147
127148	Add tests for ring.el
127149
127150	* test/lisp/emacs-lisp/ring-tests.el: New file with tests for ring.el.
127151
1271522016-09-07  Martin Rudalics  <rudalics@gmx.at>
127153
127154	New file test/src/marker-tests.el
127155
1271562016-09-07  Paul Eggert  <eggert@cs.ucla.edu>
127157
127158	Port flexible array members to GCC + valgrind
127159
127160	These changes are needed to conform to the C standard's rule for
127161	allocating structs containing flexible array members.  C11 says
127162	that malloc (offsetof (struct s, m) + n) does not suffice to
127163	allocate a struct with an n-byte tail; instead, malloc’s arg
127164	should be rounded up to the nearest multiple of alignof (struct s).
127165	Although this is arguably a defect in C11, gcc -O2 + valgrind
127166	sometimes complains when this rule is violated, and when debugging
127167	it’s better to keep valgrind happy.
127168	For details please see the thread containing the message at:
127169	https://gcc.gnu.org/ml/gcc-patches/2016-09/msg00416.html
127170	* lib-src/ebrowse.c, src/alloc.c, src/image.c, src/process.c:
127171	Include flexmember.h.
127172	* lib-src/ebrowse.c (add_sym, add_member, make_namespace)
127173	(register_namespace_alias):
127174	* src/alloc.c (SDATA_SIZE, allocate_string_data):
127175	* src/image.c (xpm_cache_color, imagemagick_create_cache):
127176	* src/process.c (Fmake_network_process):
127177	Use FLEXSIZEOF instead of offsetof and addition.
127178	* src/alloc.c (SDATA_SIZE, vector_alignment):
127179	Use FLEXALIGNOF instead of sizeof (ptrdiff_t).
127180	* src/lisp.h (ALIGNOF_STRUCT_LISP_VECTOR):
127181	Remove, as alloc.c can now calculate this on its own.
127182
1271832016-09-07  Paul Eggert  <eggert@cs.ucla.edu>
127184
127185	Update from gnulib
127186
127187	This incorporates:
127188	2016-09-07 flexmember: new macro FLEXALIGNOF
127189	2016-09-07 flexmember: port better to GCC + valgrind
127190	2016-08-18 Port modules to use getprogname explicitly
127191	2016-09-02 manywarnings: add -fno-common
127192	* admin/merge-gnulib (GNULIB_TOOL_FLAGS): Don’t avoid flexmember,
127193	since time_rz now uses part of it.  Instead, remove m4/flexmember.m4.
127194	* configure.ac (AC_C_FLEXIBLE_ARRAY_MEMBER): Define away,
127195	since Emacs assumes C99 and therefore removes m4/flexmember.m4.
127196	* lib/euidaccess.c, lib/group-member.c, lib/time_rz.c:
127197	* m4/manywarnings.m4: Copy from gnulib.
127198	* lib/flexmember.h: New file, from gnulib.
127199	* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
127200
1272012016-09-07  Noam Postavsky  <npostavs@gmail.com>
127202
127203	Don't --load directories
127204
127205	* lisp/startup.el (command-line-1): Only pass expanded FILENAME argument
127206	of --load when it refers to a normal file, since `load' doesn't handle
127207	directories (Bug #16406).
127208
1272092016-09-07  Peder O. Klingenberg  <peder@klingenberg.no>
127210
127211	Avoid error in icalendar--read-element
127212
127213	* lisp/calendar/icalendar.el (icalendar--read-element): Avoid a regex
127214	stack overflow by not using regex to extract values from calendar
127215	events. (Bug#24315)
127216
1272172016-09-07  Kaushal Modi  <kaushal.modi@gmail.com>
127218
127219	Fix back-white <-> black-white typo
127220
127221	* lisp/ps-print.el (ps-begin-job): back-white -> black-white (Bug#24308)
127222
1272232016-09-07  Alan Third  <alan@idiocy.org>
127224
127225	Fix cursor at bottom left of rectangle (bug#24364)
127226
127227	* lisp/rect.el (rectangle--col-pos): Don't assume point at EOL doesn't
127228	require rectangle--point-crutches to be set.
127229
1272302016-09-07  Eli Zaretskii  <eliz@gnu.org>
127231
127232	Fix documentation of convert-standard-filename on MS-Windows
127233
127234	* lisp/files.el (convert-standard-filename): Doc fix.  (Bug#24387)
127235
127236	* etc/NEWS: Suggest a way for mirroring slashes where previously
127237	'convert-standard-filename' was used.
127238
1272392016-09-06  Paul Eggert  <eggert@cs.ucla.edu>
127240
127241	Use DEV_TTY more consistently
127242
127243	* src/conf_post.h (DEV_TTY): Move from here ...
127244	* src/keyboard.c, src/keyboard.h: ... to here, as it doesn’t need
127245	to be visible everywhere.  Make it a constant.
127246	* src/keyboard.c (handle_interrupt, Fset_quit_char):
127247	* src/process.c (create_process): Prefer DEV_TTY to "/dev/tty".
127248
1272492016-09-06  Eli Zaretskii  <eliz@gnu.org>
127250
127251	Avoid assertion violations when using marker positions
127252
127253	* src/intervals.c (set_point_from_marker): If MARKER comes from
127254	another buffer, recalculate its byte position before using it to
127255	set point.
127256	* src/marker.c (set_marker_internal): If POSITION is a marker from
127257	another buffer, recalculate its byte position before using it.
127258	(Bug#24368)
127259
1272602016-09-06  Alan Mackenzie  <acm@muc.de>
127261
127262	* lisp/progmodes/cc-engine.el (c-syntactic-re-search-forward): Fix coding bug
127263
1272642016-09-06  Alan Mackenzie  <acm@muc.de>
127265
127266	New options for handling of literals in c-syntactic-re-search-forward
127267
127268	* lisp/progmodes/cc-engine.el (c-syntactic-re-search-forward): `noerror' can
127269	be given the values `before-literal' and `after-literal', so that when a
127270	search fails, and the `bound' is inside a literal, point is left respectively
127271	before or after that literal.
127272
1272732016-09-05  Eli Zaretskii  <eliz@gnu.org>
127274
127275	Avoid assertion violations when scrolling narrowed buffer
127276
127277	* src/window.c (window_scroll_pixel_based):
127278	* src/xdisp.c (pos_visible_p): Don't allow simulated redisplay to
127279	start outside the accessible portion of the buffer.  This avoids
127280	assertion violations when some Lisp narrows the buffer to less
127281	than the current window, and then attempts to scroll the buffer.
127282
1272832016-09-05  Eli Zaretskii  <eliz@gnu.org>
127284
127285	Treat SIGINT correctly in GUI sessions on MS-Windows
127286
127287	* src/w32proc.c (sys_signal): Don't reject SIGINT, as it is
127288	supported by MS runtime.
127289	* src/term.c (DEV_TTY): Move from here ...
127290	* src/conf_post.h (DEV_TTY): ... to here.  Separate definitions
127291	for WINDOWSNT and for the rest.
127292	* src/keyboard.c (handle_interrupt_signal): Use DEV_TTY instead of
127293	a literal "/dev/tty".
127294
127295	* etc/NEWS: Mention the behavior change.
127296
1272972016-09-04  Alan Third  <alan@idiocy.org>
127298
127299	Fix synthetic bold on macOS retina displays
127300
127301	* src/macfont.m (macfont_draw): Multiply the synthetic bold scaling
127302	factor by the OS window backing scale factor.
127303
1273042016-09-04  Tino Calancha  <tino.calancha@gmail.com>
127305
127306	image-dired: Report when a necessary executable is not found
127307
127308	See discussion on:
127309	https://lists.gnu.org/r/emacs-devel/2016-08/msg00552.html
127310	* lisp/image-dired.el (image-dired-cmd-rotate-original-program)
127311	(image-dired-cmd-create-thumbnail-program)
127312	(image-dired-cmd-create-temp-image-program)
127313	(image-dired-cmd-rotate-thumbnail-program)
127314	(image-dired-cmd-write-exif-data-program)
127315	(image-dired-cmd-read-exif-data-program):
127316	Use executable-find to set the default value of this option.
127317	(image-dired-cmd-rotate-original-program): Idem.
127318	Search for program 'convert' if 'jpegtran' is not available.
127319	(image-dired-cmd-rotate-original-options):
127320	Set the default value consistent with the executable in
127321	image-dired-cmd-rotate-original-program.
127322	(image-dired-create-thumb, image-dired-display-image)
127323	(image-dired-rotate-thumbnail, image-dired-rotate-original)
127324	(image-dired-set-exif-data, image-dired-get-exif-data):
127325	Throw and error when the executable used in the function is missing.
127326	(image-dired-next-line, image-dired-previous-line):
127327	Use 'forward-line'.
127328
1273292016-09-03  Tino Calancha  <tino.calancha@gmail.com>
127330
127331	image-type-from-file-name: Perform a case insensitive match
127332
127333	Fix Bug#24317
127334	* lisp/image.el (image-type-from-file-name): Bind case-fold-search
127335	to a non-nil value to force a case insensitive match.
127336	* lisp/image-dired.el (image-dired-rotate-original):
127337	Use image-type (Bug#24317).
127338	(image-dired-get-exif-file-name): Idem.
127339	Set 'no-exif-data-found' and 'data' in same setq call.
127340	Use file-attribute-modification-time.
127341
1273422016-09-03  Tino Calancha  <tino.calancha@gmail.com>
127343
127344	image-increase-size: Fix non-interactive calls
127345
127346	* lisp/image.el (image-increase-size, image-decrease-size):
127347	Compute a floating point division.
127348	Problem reported in:
127349	https://lists.gnu.org/r/emacs-devel/2016-09/msg00067.html
127350
1273512016-09-03  Robert Cochran  <robert-git@cochranmail.com>
127352
127353	Fix uses of (call-interactively) in lisp/emacs-lisp/checkdoc.el
127354
127355	Passing the prefix argument as the 3rd argument to 'call-interactively'
127356	causes the prefix argument to be interpreted as events, which is not
127357	only wrong, but also causes a type error, as 'current-prefix-arg' can
127358	never be a vector as 'call-interactively' expects.  'call-interactively'
127359	automatically passes its prefix argument to the called function, so just
127360	do that, eliminating faulty behavior.
127361
127362	* lisp/emacs-lisp/checkdoc.el (checkdoc-ispell):
127363	(checkdoc-ispell-current-buffer):
127364	(checkdoc-ispell-interactive):
127365	(checkdoc-ispell-message-text):
127366	(checkdoc-ispell-start):
127367	(checkdoc-ispell-continue):
127368	(checkdoc-ispell-comments):
127369	(checkdoc-ispell-defun):
127370	Do not pass 'current-prefix-arg' to 'call-interactively' as an event
127371	vector; merely allow it to propagate forward to the interactive call.
127372
1273732016-09-03  Richard Stallman  <rms@gnu.org>
127374
127375	Fix mail-combine-fields
127376
127377	* lisp/mail/sendmail.el (mail-combine-fields): Call `save-excursion' to
127378	avoid losing our place in the search loop.
127379
1273802016-09-02  Stefan Monnier  <monnier@iro.umontreal.ca>
127381
127382	Check actual contents before promting about changed file
127383
127384	* lisp/userlock.el (userlock--check-content-unchanged)
127385	(userlock--ask-user-about-supersession-threat): New functions.
127386	* src/filelock.c (lock_file): Use them to avoid spurious prompting.
127387	* doc/lispref/buffers.texi (Modification Time): Update doc of
127388	ask-user-about-supersession-threat.
127389
1273902016-09-02  Michael Albinus  <michael.albinus@gmx.de>
127391
127392	Make a reference to fakecygpty in the Tramp manual
127393
127394	* doc/misc/tramp.texi (Windows setup hints): Make a reference to
127395	fakecygpty on the Emacs Wiki.
127396	(Frequently Asked Questions): Fix url.
127397
1273982016-09-01  Paul Eggert  <eggert@cs.ucla.edu>
127399
127400	Don’t create fd >= FD_SETSIZE
127401
127402	This avoids a potential crash if too many subprocesses (Bug#24325).
127403	* src/process.c [HAVE_SETRLIMIT]: Include <sys/resource.h>.
127404	(init_process_emacs): If ulimit -n is greater than FD_SETSIZE,
127405	set it to FD_SETSIZE.
127406
1274072016-09-01  Alan Mackenzie  <acm@muc.de>
127408
127409	Fix c-declaration-limits to return correct limits in all cases.
127410
127411	This function is the guts of c-indent-defun and c-mark-function.
127412
127413	In particular, when c-defun-tactic is nil, return a correct value rather than
127414	always nil, and when it's 'go-outward, go through an intricate algorithm to
127415	determine the requisite narrowing before the "top-level" defuns go to work.
127416
127417	* lisp/progmodes/cc-cmds.el (c-narrow-to-most-enclosing-decl-block): Enhance
127418	to take additional optional parameter LEVEL, saying how many enclosing levels
127419	of decl-block to narrow to.
127420	(c-declaration-limits): Introduce algorithm to determine narrowing.  Use
127421	c-where-wrt-to-brace-block to determine whether to go back to BOD to determine
127422	lower bound.
127423
1274242016-09-01  Eli Zaretskii  <eliz@gnu.org>
127425
127426	* nt/inc/ms-w32.h (execve) [MINGW_W64]: Make commentary more accurate.
127427
1274282016-09-01  Eli Zaretskii  <eliz@gnu.org>
127429
127430	Avoid compiler warnings with MinGW64 GCC 6
127431
127432	* nt/inc/ms-w32.h (execve) [MINGW_W64]: Make the prototype match
127433	the GCC 6 builtin, to avoid warnings.  For more details, see
127434	https://lists.gnu.org/r/emacs-devel/2016-08/msg00721.html.
127435
1274362016-08-31  Paul Eggert  <eggert@cs.ucla.edu>
127437
127438	Fix over-substitution of quotes on error
127439
127440	Problem reported by Tino Calancha in:
127441	https://lists.gnu.org/r/emacs-devel/2016-09/msg00000.html
127442	* src/print.c (print_error_message):
127443	Substitute quotes in errmsg only when gotten from a property.
127444
1274452016-08-31  Eli Zaretskii  <eliz@gnu.org>
127446
127447	Improve testing of etags
127448
127449	* test/manual/etags/y-src/cccp.c:
127450	* test/manual/etags/y-src/parse.c: Correct #line directives to
127451	allow testing invalidate_nodes in etags.c.
127452	* test/manual/etags/ETAGS.good_1:
127453	* test/manual/etags/ETAGS.good_2:
127454	* test/manual/etags/ETAGS.good_3:
127455	* test/manual/etags/ETAGS.good_4:
127456	* test/manual/etags/ETAGS.good_5:
127457	* test/manual/etags/ETAGS.good_6:
127458	* test/manual/etags/CTAGS.good: Adapt to changes in test files.
127459
1274602016-08-31  Eli Zaretskii  <eliz@gnu.org>
127461
127462	* lib-src/etags.c (invalidate_nodes): Fix another thinko.
127463
1274642016-08-31  Paul Eggert  <eggert@cs.ucla.edu>
127465
127466	Fix etags problems found by static checking
127467
127468	* lib-src/etags.c (invalidate_nodes, put_entry):
127469	Remove now-unnecessary tests for null pointers.  Simplify.
127470	(put_entries): Rewrite to avoid GCC 6.2 warning about
127471	dereferencing null pointer.
127472
1274732016-08-31  Eli Zaretskii  <eliz@gnu.org>
127474
127475	Fix a thinko in etags.c
127476
127477	* lib-src/etags.c (invalidate_nodes): Don't try to dereference
127478	a null pointer.
127479
1274802016-08-31  Eli Zaretskii  <eliz@gnu.org>
127481
127482	Avoid recursive calls in etags
127483
127484	* lib-src/etags.c (stack_entry): New struct.
127485	(push_node, pop_node, put_entry): New functions.
127486	(free_tree, add_node, invalidate_nodes, put_entries): Re-implement
127487	in a non-recursive way, to avoid stack overflow.  (Bug#5847)
127488
1274892016-08-31  Leo Liu  <sdl.web@gmail.com>
127490
127491	Add 451 to url-http-codes
127492
127493	* lisp/url/url-http.el (url-http-codes): Add 451.
127494
1274952016-08-30  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
127496
127497	* src/editfns.c (Fformat_message): Fix doc to match current behavior.
127498
1274992016-08-30  Paul Eggert  <eggert@cs.ucla.edu>
127500
127501	Minor doc quoting fixes
127502
127503	* doc/misc/htmlfontify.texi (Interactive):
127504	* lisp/htmlfontify.el (htmlfontify-buffer):
127505	Spell out character names, for clarity.  The old doc string
127506	generated the *Help* text ‘^L ([FF]) or ¤ (244)’, where ‘[FF]’
127507	stands for a form feed character; this was confusing.
127508	* lisp/electric.el (electric-quote-mode):
127509	* src/doc.c (syms_of_doc):
127510	* src/editfns.c (Fformat_message):
127511	Remove no-longer-necessary ‘\=’s in doc strings.
127512
1275132016-08-30  Paul Eggert  <eggert@cs.ucla.edu>
127514
127515	Update from gnulib
127516
127517	This incorporates:
127518	2016-08-30 intprops: tune INT_NEGATE_OVERFLOW for GCC 5 and 6
127519	2016-08-29 xalloc-oversized.h: port change to GCC 6.2.0
127520	2016-08-29 intprops.h: port recent changes to GCC 6.2.0
127521	2016-08-29 intprops.h: use __typeof__ with GCC 7
127522	2016-08-29 intprops.h, xalloc-oversized.h: work with gcc 7
127523	2016-08-24 intprops: fix paren typo on old platforms
127524	2016-08-24 intprops: port to OpenVMS
127525	* lib/intprops.h, lib/xalloc-oversized.h: Copy from gnulib.
127526
1275272016-08-30  Tassilo Horn  <tsdh@gnu.org>
127528
127529	Fix rules for \phi and \varphi which were reversed
127530
127531	* lisp/leim/quail/latin-ltx.el: Special-case phi/varphi because those
127532	  are reversed in ucs-names.  Also remove FIXME stating sigma/varsigma
127533	  were reversed which is not true (anymore?).
127534
1275352016-08-30  Tassilo Horn  <tsdh@gnu.org>
127536
127537	Fix prettification of \phi, \varphi, and \varsigma
127538
127539	* lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Fix
127540	  prettification of \phi, \varphi, and \varsigma.
127541
127542	Concretely, \phi's symbol was actually varphi, \varphi was missing, and
127543	\varsigma was commented out with a FIXME that it was reversed with
127544	\sigma which it was not.
127545
1275462016-08-30  Karl Fogel  <kfogel@red-bean.com>
127547
127548	Use normal double quotes in TeX / LaTeX comments
127549
127550	* lisp/textmodes/tex-mode.el (tex-insert-quote): When in a comment,
127551	  default to inserting a normal double quote (") instead of TeX-style
127552	  open (``) or close ('') quote marks.
127553
127554	* etc/NEWS (TeX mode): Note the change.
127555
127556	* test/lisp/electric-tests.el (autowrapping-7): Adjust accordingly.
127557
127558	See this thread for discussion:
127559
127560	  https://lists.gnu.org/r/emacs-devel/2016-08/msg00611.html
127561	  From: Karl Fogel <kfogel {_AT_} red-bean.com>
127562	  To: Emacs Development <emacs-devel {_AT_} gnu.org>
127563	  Subject: [PATCH] Have LaTeX mode use normal double quotes in comments.
127564	  Date: Mon, 29 Aug 2016 14:44:12 -0500
127565	  Message-ID: <87twe3icmr.fsf@red-bean.com>
127566
1275672016-08-30  Alan Mackenzie  <acm@muc.de>
127568
127569	Correctly analyze C++ list initialization in member init areas.
127570
127571	* lisp/progmodes/cc-engine.el (c-back-over-list-of-member-inits): Remove a
127572	superfluous call to c-backward-syntactic-ws.
127573	(c-looking-at-or-maybe-in-bracelist): Change calling convention, so that it
127574	reports encountering the Java "new" keyword.  Add, as an alternative, a check
127575	that we can move back over member initializations, and handle this as finding
127576	a brace block.
127577	(c-looking-at-special-brace-list, c-guess-continued-construct): Adapt to the
127578	new calling convention of c-looking-at-or-maybe-in-bracelist.
127579	(c-guess-basic-syntax, CASE 5A.3): Replace lots of inline ad-hoc code with
127580	calls to c-backward-over-enum-header and c-looking-at-or-maybe-in-bracelist,
127581	using the extra info from the value of that function to generate a
127582	topmost-into-cont element where needed (in Java).
127583
127584	* lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Adapt to the new
127585	calling convention of c-looking-at-or-maybe-in-bracelist.
127586
127587	* lisp/progmodes/cc-mode.el (c-fl-decl-start): Adapt to the new calling
127588	convention of c-looking-at-or-maybe-in-bracelist.
127589
1275902016-08-30  Michael Albinus  <michael.albinus@gmx.de>
127591
127592	Use `file-attribute-*' in Tramp
127593
127594	* lisp/net/tramp-compat.el (tramp-compat-file-attribute-type)
127595	(tramp-compat-file-attribute-link-number)
127596	(tramp-compat-file-attribute-user-id)
127597	(tramp-compat-file-attribute-group-id)
127598	(tramp-compat-file-attribute-modification-time)
127599	(tramp-compat-file-attribute-size)
127600	(tramp-compat-file-attribute-modes): New defaliases.
127601
127602	* lisp/net/tramp.el (tramp-handle-file-modes)
127603	(tramp-handle-file-newer-than-file-p)
127604	(tramp-handle-file-regular-p, tramp-handle-file-symlink-p)
127605	(tramp-handle-set-visited-file-modtime)
127606	(tramp-handle-verify-visited-file-modtime)
127607	(tramp-get-local-gid, tramp-check-cached-permissions):
127608	* lisp/net/tramp-adb.el (tramp-adb-handle-file-directory-p)
127609	(tramp-adb-handle-file-truename, tramp-adb-handle-copy-file):
127610	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-delete-directory)
127611	(tramp-gvfs-handle-file-directory-p)
127612	(tramp-gvfs-handle-write-region, tramp-gvfs-get-remote-uid)
127613	(tramp-gvfs-get-remote-gid):
127614	* lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
127615	(tramp-sh-handle-set-visited-file-modtime)
127616	(tramp-sh-handle-verify-visited-file-modtime)
127617	(tramp-sh-handle-file-newer-than-file-p)
127618	(tramp-sh-handle-file-ownership-preserved-p)
127619	(tramp-do-copy-or-rename-file)
127620	(tramp-do-copy-or-rename-file-via-buffer)
127621	(tramp-do-copy-or-rename-file-directly)
127622	(tramp-do-copy-or-rename-file-out-of-band)
127623	(tramp-sh-handle-file-local-copy)
127624	(tramp-sh-handle-write-region):
127625	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
127626	(tramp-smb-handle-copy-file)
127627	(tramp-smb-handle-file-directory-p)
127628	(tramp-smb-handle-file-writable-p)
127629	(tramp-smb-handle-insert-directory): Use them.
127630
1276312016-08-30  Martin Rudalics  <rudalics@gmx.at>
127632
127633	In `pop-to-buffer' handle case where `display-buffer' fails (Bug#24332)
127634
127635	* lisp/window.el (pop-to-buffer): Don't assume that
127636	`display-buffer' has supplied a window (Bug#24332).
127637	Rename BUFFER argument to BUFFER-OR-NAME.
127638	* doc/lispref/windows.texi (Switching Buffers): Fix
127639	`pop-to-buffer' documentation.
127640
1276412016-08-29  Alan Third  <alan@idiocy.org>
127642
127643	Clarify docstrings
127644
127645	* src/nsterm.m: Clarified that ns-x-modifier variables require a symbol.
127646
1276472016-08-29  Michael Albinus  <michael.albinus@gmx.de>
127648
127649	Use `process-live-p' in Tramp
127650
127651	* lisp/net/tramp-compat.el (tramp-compat-process-live-p): New defun.
127652
127653	* lisp/net/tramp.el (tramp-connectable-p, tramp-handle-file-remote-p)
127654	(tramp-handle-file-notify-valid-p)
127655	(tramp-action-process-alive, tramp-action-out-of-band)
127656	(tramp-wait-for-regexp):
127657	* lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
127658	(tramp-adb-maybe-open-connection):
127659	* lisp/net/tramp-cache.el (tramp-get-connection-property):
127660	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
127661	* lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
127662	(tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
127663	* lisp/net/tramp-sh.el (tramp-process-sentinel)
127664	(tramp-sh-handle-file-notify-add-watch)
127665	(tramp-maybe-open-connection):
127666	* lisp/net/tramp-smb.el (tramp-smb-action-with-tar)
127667	(tramp-smb-handle-copy-directory, tramp-smb-action-get-acl)
127668	(tramp-smb-handle-process-file, tramp-smb-action-set-acl)
127669	(tramp-smb-get-cifs-capabilities)
127670	(tramp-smb-get-stat-capability)
127671	(tramp-smb-maybe-open-connection, tramp-smb-wait-for-output)
127672	(tramp-smb-kill-winexe-function): Use it.
127673
1276742016-08-29  Eli Zaretskii  <eliz@gnu.org>
127675
127676	Avoid crashes for invalid value of key modifiers
127677
127678	* src/keyboard.c (parse_solitary_modifier): If the argument SYMBOL
127679	is not a symbol, don't try to recognize it.  See
127680	https://lists.gnu.org/r/emacs-devel/2016-08/msg00502.html
127681	for the details.
127682
127683	* test/src/keymap-tests.el (keymap-where-is-internal-test): New
127684	test, for testing the above fix.
127685
1276862016-08-29  Oleh Krehel  <ohwoeowho@gmail.com>
127687
127688	Make dired-do-compress understand files with spaces in them
127689
127690	* lisp/dired-aux.el (dired-compress-file): Add `shell-quote-argument'
127691	  and `literal' flag to `replace-regexp-in-string'.
127692
1276932016-08-28  Paul Eggert  <eggert@cs.ucla.edu>
127694
127695	* INSTALL.REPO: Suggest Texinfo 4.13 or later.
127696
1276972016-08-28  Simen Heggestøyl  <simenheg@gmail.com>
127698
127699	Add tests for dom.el
127700
127701	* test/lisp/dom-tests.el: New file with tests for dom.el.
127702
1277032016-08-28  Paul Eggert  <eggert@cs.ucla.edu>
127704
127705	Memory allocator alignment fixes
127706
127707	These changes remove some assumptions about heap allocator
127708	alignment that may not be true on unusual platforms.
127709	* src/alloc.c (POWER_OF_2): New macro.
127710	(ROUNDUP): Use it.
127711	(BLOCK_ALIGN): Verify that it is a power of 2.
127712	(aligned_alloc): Check that alignment passed to posix_memalign
127713	satisfies POSIX restrictions.
127714	(lisp_align_malloc): Check that size passed to aligned_alloc
127715	satisfies C11 restrictions.
127716	(MALLOC_IS_GC_ALIGNED): Check that GCALIGNMENT is 8, since the
127717	code has not been verified to work with other GCALIGNMENT values
127718	and the ice is thin here.  On GNU/Linux, malloc can return a value
127719	that is a multiple of 8 but not 16, even though __alignof__
127720	(max_align_t) is 16.  See:
127721	https://gcc.gnu.org/ml/gcc-patches/2016-08/msg01902.html
127722	(lmalloc) [USE_ALIGNED_ALLOC]: Use aligned_alloc only if size
127723	is a multiple of alignment, since C11 says the behavior is
127724	undefined otherwise.
127725	(lmalloc, lrealloc): Don't use INT_ADD_WRAPV on size_t, as in
127726	general this macro is restricted to signed types.  Remove
127727	assertion that the result is a multiple of GCALIGNMENT, as that
127728	need not be true.
127729
1277302016-08-28  Paul Eggert  <eggert@cs.ucla.edu>
127731
127732	Pacify --enable-gcc-warnings for lib-src/pop.c
127733
127734	* lib-src/pop.c: Include c-ctype.h.
127735	(socket_connection): Pacify --enable-gcc-warnings by rewriting to
127736	avoid 'if (v = E) ...'.  Use c_tolower, instead of a combination
127737	of the (undeclared) isupper and tolower.  Fix pointer constness
127738	problem.
127739
1277402016-08-27  Alan Mackenzie  <acm@muc.de>
127741
127742	Handle the C++ "identifiers" "final" and "override" correctly.
127743
127744	This fixes bug #24319, allowing destructors affixed with these identifiers to
127745	be correctly fontified.
127746
127747	* lisp/progmodes/cc-engine.el (c-forward-type, c-forward-decl-or-cast-1):
127748	After reaching the "end" of a type expression, skip over any occurrences of
127749	c-type-decl-suffix-ws-ids-key.
127750
127751	* lisp/progmodes/cc-langs.el (c-type-modifier-kwds): Remove "override" and
127752	"final" from the C++ value.
127753	(c-type-decl-suffix-ws-ids-kwds, c-type-decl-suffix-ws-ids-key): New lang
127754	constants/variables for "final" and "override".
127755
1277562016-08-27  Stefan Monnier  <monnier@iro.umontreal.ca>
127757
127758	* lisp/textmodes/page-ext.el (pages-directory-mode): Use special-mode.
127759
1277602016-08-27  Alan Mackenzie  <acm@muc.de>
127761
127762	Handle template delimiters in C++ member init constructs.
127763
127764	* lisp/progmodes/cc-engine.el (c-back-over-list-of-member-inits): Add
127765	handling for "<....>"s.
127766
1277672016-08-26  Eli Zaretskii  <eliz@gnu.org>
127768
127769	Fix etags test suite messed up by merges from emacs-25
127770
127771	* test/manual/etags/go-src/test.go:
127772	* test/manual/etags/go-src/test1.go: Move from test/etags/.
127773	* test/manual/etags/ruby-src/test1.ru: Replace test1.ruby.
127774	* test/etags/: Directory deleted.
127775
1277762016-08-26  Simen Heggestøyl  <simenheg@gmail.com>
127777
127778	Add "supports" to list of CSS at-rules
127779
127780	* lisp/textmodes/css-mode.el (css-at-ids): Add "supports" at-rule.
127781
1277822016-08-26  Michael Albinus  <michael.albinus@gmx.de>
127783
127784	* lisp/net/tramp-sh.el (tramp-get-remote-perl): Perform a basic check.
127785
127786	(Bug#22478)
127787
1277882016-08-25  Tino Calancha  <tino.calancha@gmail.com>
127789
127790	Rename option to shell-command-dont-erase-buffer
127791
127792	Suggested by Clément Pit--Claudel in:
127793	https://lists.gnu.org/r/emacs-devel/2016-08/msg00487.html
127794	* lisp/simple.el (shell-command-dont-erase-buffer):
127795	(shell-command--save-pos-or-erase):
127796	(shell-command--set-point-after-cmd):
127797	(shell-command-on-region):
127798	* doc/emacs/misc.texi (shell-command-dont-erase-buffer):
127799	* etc/NEWS (Changes in Emacs 25.2):
127800	Rename from shell-command-not-erase-buffer.
127801
1278022016-08-25  Alan Mackenzie  <acm@muc.de>
127803
127804	Fix an infinite loop in C++ Mode when we have "{ .... [ .... }"
127805
127806	* lisp/progmodes/cc-fonts.el (c-font-lock-c++-lambda-captures): In the inner
127807	`while' form's condition, check for "\\s)" rather than merely "\\]", so that
127808	the loop won't hang at a "terminating" paren of a different type (due to the
127809	c-syntactic-re-search-forward at the end of the loop stopping at such
127810	characters).
127811
1278122016-08-25  Tino Calancha  <tino.calancha@gmail.com>
127813
127814	call-shell-region: New defun
127815
127816	Suggested by Stefan Monnier in Bug#22679.
127817	* lisp/subr.el (call-shell-region): New defun; execute a command
127818	in an inferior shell with the buffer region as input.
127819	* lisp/simple.el (shell-command-on-region): Use it.
127820	* lisp/gnus/message.el (message-do-fcc): Idem.
127821	* doc/lispref/processes.texi: Document call-shell-region in the manual.
127822	;* etc/NEWS: Add entry for this new function.
127823
1278242016-08-25  Martin Rudalics  <rudalics@gmx.at>
127825
127826	In ‘clone-indirect-buffer’ fix argument mixup (Bug#24306)
127827
127828	* lisp/simple.el (clone-indirect-buffer): Add value for ACTION
127829	argument in `pop-to-buffer' call (Bug#24306).
127830
1278312016-08-25  Martin Rudalics  <rudalics@gmx.at>
127832
127833	Some fixes around `delete-other-frames' and `next-frame'
127834
127835	* src/frame.c (Fdelete_frame): Clarify doc-string.
127836	* lisp/frame.el (delete-other-frames): Delete other frames on
127837	FRAME's terminal instead of the current terminal.  Delete
127838	non-minibuffer-only surrogate frames too.  See
127839	https://lists.gnu.org/r/emacs-devel/2016-08/msg00467.html
127840	* doc/lispref/frames.texi (Deleting Frames): Minor fixes for
127841	docs of `delete-frame' and `frame-live-p'.  Add entry for
127842	`delete-other-frames'.
127843	(Finding All Frames): Fix doc of `next-frame'.
127844
1278452016-08-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
127846
127847	Find message.el thumbnail toggling
127848
127849	* lisp/gnus/message.el (message-toggle-image-thumbnails):
127850	Don't infloop when toggling thumbnails.
127851
1278522016-08-24  Alan Third  <alan@idiocy.org>
127853
127854	Fix macOS 12 deprecation notices
127855
127856	* src/nsterm.h: Add #defines to allow older versions of macOS to use the
127857	new constant names.
127858	* src/nsmenu.m: Replace old constant names with
127859	new.
127860	(fillWithWidgetValue): Remove calls to deprecated
127861	setMenuChangedMessagesEnabled.
127862	* src/nsterm.m: Replace old constant names with new.
127863	* src/nsfns.m: Replace old constant names with new.
127864
1278652016-08-23  Alan Mackenzie  <acm@muc.de>
127866
127867	Analyze and fontify correctly a C++ `enum' with colon, but lacking a tag.
127868
127869	* lisp/progmodes/cc-engine.el (c-backward-typed-enum-colon): Check for "enum"
127870	directly preceding the colon, and handle it.
127871
1278722016-08-23  Noah Friedman  <friedman@splode.com>
127873
127874	* src/xfns.c (Fx_change_window_property): Modify previous change.
127875	Instead of forcing format to 8 for strings, check that the length of
127876	the string is appropriate for whatever format given.
127877	(Fx_window_property_attributes): If prop isn't found on frame's inner window,
127878	try its outer window.  This mimics the behavior of Fx_window_property.
127879
1278802016-08-23  Lars Ingebrigtsen  <larsi@gnus.org>
127881
127882	Fix invalid image rotations
127883
127884	* lisp/image.el (image-rotate): Limit rotation to 360 degrees.
127885
1278862016-08-23  Tino Calancha  <tino.calancha@gmail.com>
127887
127888	call-process instead of call-process-region with empty region
127889
127890	* lisp/calc/calc-graph.el (calc-graph-show-tty):
127891	Use call-process and shell-command-switch.
127892
1278932016-08-22  Paul Eggert  <eggert@cs.ucla.edu>
127894
127895	Merge from origin/emacs-25
127896
127897	927afa1 ; Update ChangeLog.2 and ldef-boot.el for Emacs 25.1 RC2
127898	6bf83b5 * etc/AUTHORS: Update the AUTHORS file
127899	73cbb81 ; ChangeLog spelling fixes
127900	9b99772 Some assorted documentation clarifications
127901	37d4723 Improve commentary in src/character.h
127902	5ccd593 ; Fix typo in /etc/NEWS
127903	96e3d16 * etc/NEWS: Mention the change in json-encode-string.
127904	2e524034 ; * etc/NEWS: Mention incompatible change in url-http-create...
127905	2e4e74e Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...
127906	66dea65 ; * doc/lispref/windows.texi (Window Parameters): Grammar twe...
127907
127908	# Conflicts:
127909	#	ChangeLog.2
127910	#	lisp/ldefs-boot.el
127911
1279122016-08-22  Paul Eggert  <eggert@cs.ucla.edu>
127913
127914	Merge from origin/emacs-25
127915
127916	66dea65 ; * doc/lispref/windows.texi (Window Parameters): Grammar twe...
127917
1279182016-08-22  Paul Eggert  <eggert@cs.ucla.edu>
127919
127920	Merge from origin/emacs-25
127921
127922	8c2946e In NEWS describe new handling of window margins (Bug#24193)
127923	0cee66c Facultatively ignore margins when splitting and resizing wind...
127924	8d68147 Document CATEGORY arg to modify-category-entry
127925	8342e74 Document char-script-table's effect on word motion
127926	e9ff485 Further fix for 'url-http-create-request' and multibyte strings
127927	0695235 Fix docstring of eval-expression
127928	98b01dd Clarify when 'cursor' property is in effect
127929	75f1882 Convert the remaining strings to unibyte before concatenating
127930	d2db5dd Fix bug with handling the bidi cache
127931	ccd0e92 * doc/lispref/text.texi (Change Hooks): Minor copyedits.
127932	f785ff4 Clarify documentation of before/after-change-functions
127933	3c9cb57 Document use of vectors in keymaps
127934
127935	# Conflicts:
127936	#	src/xdisp.c
127937
1279382016-08-22  Michael Albinus  <michael.albinus@gmx.de>
127939
127940	Handle remote file names in gdb-mi.el
127941
127942	* lisp/progmodes/gdb-mi.el (gdb-jsonify-buffer):
127943	If `default-directory' is remote, full file names are adapted
127944	accordingly.  (Bug#23608)
127945
1279462016-08-22  Eli Zaretskii  <eliz@gnu.org>
127947
127948	Display mini-window resized even when there are several frames
127949
127950	* src/xdisp.c (x_consider_frame_title): Bind inhibit-redisplay to
127951	t to avoid resizing back the mini-window as result of considering
127952	the title of other frames.  (Bug#24285)
127953	(redisplay_window): No need to bind inhibit-redisplay here.
127954
1279552016-08-22  Michael Albinus  <michael.albinus@gmx.de>
127956
127957	Explain gdb warning on remote hosts
127958
127959	* doc/misc/tramp.texi (Remote processes): Explain gdb warning
127960	on remote hosts.  (Bug#4604, Bug#6360, Bug#622569)
127961
1279622016-08-21  Martin Rudalics  <rudalics@gmx.at>
127963
127964	Fix (next-frame nil t) crash (Bug#24281)
127965
127966	* src/frame.c (candidate_frame): Check minibuf argument before
127967	comparing it to zero (Bug#24281).
127968
1279692016-08-21  Noah Friedman  <friedman@splode.com>
127970
127971	Fix interpretation of signed vs unsigned values when retrieving X
127972	Window properties, and make sure the full value is returned when not
127973	parsed.
127974
127975	New subr to export type and format information about X Window
127976	properties to lisp.
127977
127978	* src/xselect.c (selection_data_to_lisp_data): Treat any data as
127979	unsigned unless its actual type is INTEGER.
127980	CARDINALs, in particular, are unsigned.
127981
127982	* src/xfns.c (Fx_change_window_property): If value is a string, ignore
127983	any provided format and force to 8.
127984	(x_window_property_intern): If returning value as a string, the length
127985	is actual_size times the actual format of each element, which is not
127986	necessarily bytes.
127987	(Fx_window_property_attributes): New subr.
127988	(syms_of_xfns): Declare it.
127989
1279902016-08-21  Noam Postavsky  <npostavs@gmail.com>
127991
127992	Improve error when installing non-package dirs
127993
127994	* lisp/emacs-lisp/package.el (package-dir-info): Throw meaningful error
127995	when no file with package info is found (Bug #19851).
127996
1279972016-08-21  Alan Mackenzie  <acm@muc.de>
127998
127999	Adapt CC Mode for C++11 uniform initialization.
128000
128001	For fontification, introduce a new "context", 'non-decl, to be used for
128002	brace
128003	lists; also a new value for the property 'c-type, called 'c-not-decl.
128004
128005	* lisp/progmodes/cc-engine.el (c-back-over-compound-identifier): Check that
128006	an ostensible symbol we're going to move over isn't a keyword.
128007	(c-forward-decl-or-cast-1): CASE 1: Where we have two consecutive identifiers
128008	(hence a declaration), and an unmatched open paren, perform
128009	c-fdoc-shift-type-backwards to recognize the partial construct correctly.
128010	Whilst checking a type decl expression, check for and handle C++11's "copy
128011	initialization", where we have <type>(<constant>).  Recognize
128012	<id><id>(... (where the paren is unclosed) as a declaration.
128013	(c-looking-at-or-maybe-in-bracelist): New function, extracted from
128014	c-inside-bracelist-p.  Recognize as bracelists "{"s which are preceded by
128015	valid tokens other than "=".  Recognize a bracelist when preceded by a
128016	template declaration.
128017	(c-inside-bracelist-p): Call c-looking-at-or-maybe-in-bracelist in place of
128018	much inline code.
128019	(c-looking-at-inexpr-block): Amend so that it won't wrongly recognize an
128020	initialization starting "({" as an in-expression block, by checking for
128021	semicolons, as opposed to commas, separating elements inside it.
128022	(c-guess-continued-construct): (CASE B-2): Recognize a brace-list-open by
128023	calling c-looking-at-or-maybe-in-bracelist rather than checking for a
128024	preceding "=".  (CASE B-5): New code to recognize new construct "return {
128025	...}".
128026	(c-guess-basic-syntax): (CASE 5A.3): Additionally recognize a "{" preceded by
128027	"return", or "{" preceded by <type><identifier> as a bracelist.
128028
128029	* lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Recognize brace
128030	lists, giving them `context' 'non-decl.  Pass over elements of one by regexp
128031	search for "," rather than calling c-forward-decl-or-cast-1.
128032
128033	* lisp/progmodes/cc-langs.el (c-return-kwds, c-return-key): New lang
128034	constants/variables to recognize "return".
128035	(c-pre-id-bracelist-key): New lang constant/variable to recognize tokens
128036	which, when preceding an identifier followed by a brace, signify the brace as
128037	a bracelist.
128038
128039	* lisp/progmodes/cc-mode.el (c-fl-decl-start): When searching outwards for
128040	the start of a "local" declaration, move out from an enclosing brace when
128041	that is the start of a brace list.
128042
1280432016-08-21  Paul Eggert  <eggert@cs.ucla.edu>
128044
128045	Update from gnulib
128046
128047	This incorporates:
128048	2016-08-17 maint: preprocessor changes to support z/OS
128049	2016-08-17 string: rename to avoid '__string'
128050	* doc/misc/texinfo.tex, lib/alloca.in.h, lib/string.in.h:
128051	Copy from gnulib.
128052
1280532016-08-21  Paul Eggert  <eggert@cs.ucla.edu>
128054
128055	Minor text-quoting-style fixes
128056
128057	* src/charset.c (check_iso_charset_parameter):
128058	* src/frame.c (store_frame_param):
128059	* src/xselect.c (x_fill_property_data):
128060	Use grave accent for left single quote in ‘error’ format strings.
128061
1280622016-08-21  Martin Rudalics  <rudalics@gmx.at>
128063
128064	Fix semantics of 'minibuffer' frame parameter
128065
128066	The 'minibuffer' frame parameter is now t for a normal frame
128067	(a frame with a root window plus a minibuffer window) and the
128068	frame's minibuffer window for a minibuffer-less frame (a frame
128069	whose minibuffer window is on another frame).  See also:
128070	https://lists.gnu.org/r/emacs-devel/2016-07/msg01259.html
128071
128072	* src/frame.c (make_frame, make_frame_without_minibuffer)
128073	(make_minibuffer_frame): When assigning the frame's minibuffer
128074	window also store corresponding 'minibuffer' frame parameter.
128075	(store_frame_param): Move the 'minibuffer' parameter checks to
128076	the beginning so we can silently override the value before it
128077	gets stored in the parameter alist.  Fix error handling.
128078	(Fframe_parameters): Return value of 'minibuffer' parameter
128079	unmodified.
128080
128081	* lisp/frameset.el (frameset-filter-minibuffer): When the cdr of
128082	the parameter is a minibuffer window, save (minibuffer . nil)
128083	instead of (minibuffer . t).
128084	(frameset--reuse-frame): To find a non-minibuffer-only frame
128085	look out for a frame whose 'minibuffer' parameter is t instead
128086	of that frame's minibuffer window.
128087	(frameset-minibufferless-first-p): To find a minibuffer-less
128088	frame look out for a frame whose 'minibuffer' parameter is a
128089	window instead of nil.
128090
1280912016-08-20  Alan Mackenzie  <acm@muc.de>
128092
128093	* lisp/progmodes/cc-defs.el (c-safe-scan-lists): Resolve overelaborate "nil"
128094
1280952016-08-20  Alan Mackenzie  <acm@muc.de>
128096
128097	In c-\(go-\)?-\(up-\|down-\)?list-\(forward\|backward\) check limit isn't nil
128098
128099	Check the limit both at macro expansion time (for a hard coded nil) and at run
128100	time in the generated code.  Tidy up these macros generally.
128101
128102	* lisp/progmodes/cc-defs.el (c-safe-scan-lists): Check `limit' is present and
128103	not identically nil before generating a narrow-to-region call.  Generate code
128104	to check `limit' is not nil at run time.
128105	(c-go-list-forward, c-go-list-backward): Remove the generation of redundant
128106	narrow-to-region, instead calling c-safe-scan-lists directly.
128107	(c-go-up-list-forward, c-go-up-list-backward, c-go-down-list-forward)
128108	(c-go-down-list-backward): Invoke the corresponding macros without the "go-"
128109	to determine the destination position instead of generating a redundant
128110	narrow-to-region.
128111
1281122016-08-19  Robert Cochran  <robert-git@cochranmail.com>
128113
128114	* lisp/emacs-lisp/map.el (map--dispatch): Fix docstring
128115
128116	The docstring referenced a non-existant parameter, as well as a
128117	parameter that has been renamed since the docstring was written. Fix
128118	both errors, fixing (Bug#24182).
128119
1281202016-08-19  Alan Mackenzie  <acm@muc.de>
128121
128122	Amend hack-local-variables-prop-line not always to return any mode on line 1.
128123
128124	This fixes bug #24266.
128125
128126	* lisp/files.el (hack-local-variables-prop-line): Change the name of the
128127	parameter mode-only to handle-mode.  Change its meaning, such that it being
128128	set to a value non-nil and not t removes any mode parameter from the result
128129	list.  Leave its values nil and t with the same meanings they had.
128130	(hack-local-variables): Call hack-local-variables-prop-line appropriately.
128131
1281322016-08-19  Daiki Ueno  <ueno@gnu.org>
128133
128134	Improve doc string of epg-*-program
128135
128136	* lisp/epg-config.el (epg-gpg-program, epg-gpgsm-program):
128137	Suggest to use Customize when setting.  (Bug#24229)
128138
1281392016-08-19  Tino Calancha  <tino.calancha@gmail.com>
128140
128141	Add tests for Bug#24264
128142
128143	* test/lisp/emacs-lisp/cl-seq-tests.el (cl-seq-test-bug24264):
128144	Add test for Bug#24264.
128145	(cl-seq-fill-test, cl-seq-replace-test)
128146	(cl-seq-remove-test ,cl-seq-delete-test)
128147	(cl-seq-remove-duplicates-test, cl-seq-substitute-test)
128148	(cl-seq-nsubstitute-test, cl-seq-position-test)
128149	(cl-seq-count-test, cl-seq-mismatch-test)
128150	(cl-seq-search-test, cl-seq-test-bug24264):
128151	Add tests for all functions in the file; test all keywords.
128152
1281532016-08-18  Johan Bockgård  <bojohan@gnu.org>
128154
128155	Fix bug in --eval reply message from server
128156
128157	* lisp/server.el (server-reply-print): Fix check for truncated quote
128158	sequence at end of message. Problem reported in:
128159	https://lists.gnu.org/r/emacs-devel/2016-08/msg00101.html
128160
1281612016-08-18  Eli Zaretskii  <eliz@gnu.org>
128162
128163	Add tests for 'substitute-command-keys'
128164
128165	* test/src/doc-tests.el (doc-test-substitute-command-keys): New
128166	tests.
128167
1281682016-08-18  Oleh Krehel  <ohwoeowho@gmail.com>
128169
128170	lisp/textmodes/table.el (table-generate-source): Fix completing-read call
128171
128172	Doesn't make sense to pass '(("html") ("latex") ("cals")) to
128173	`completing-read'.
128174
1281752016-08-18  Oleh Krehel  <ohwoeowho@gmail.com>
128176
128177	lisp/dired-aux.el (dired-compress-file-suffixes): Add entry for tgz
128178
128179	The previous behavior resulted in a "tgz" -> "tar" -> "tgz" loop,
128180	without any files being extracted.
128181
1281822016-08-18  Andreas Politz  <politza@hochschule-trier.de>
128183
128184	Don't let window start override window point in `window-state-put' (Bug#24240)
128185
128186	* lisp/window.el (window--state-put-2): Set 'noforce argument
128187	when restoring a window's start position.  This avoids that the
128188	effect of `set-window-point' gets overidden by that of
128189	`set-window-start' (Bug#24240).
128190
1281912016-08-17  Alan Mackenzie  <acm@muc.de>
128192
128193	Fontify constructs following "::" in C++ argument lists correctly - part 2.
128194
128195	This fixes bug #24246.
128196
128197	* lisp/progmodes/cc-engine.el (c-find-decl-prefix-search): Put a
128198	`save-match-data' around the new `looking-at' introduced by the previous CC
128199	Mode patch this evening.
128200
1282012016-08-17  Alan Mackenzie  <acm@muc.de>
128202
128203	Fontify constructs following "::" in C++ argument lists correctly.
128204
128205	This fixes bug #24246.
128206
128207	* lisp/progmodes/cc-engine.el (c-find-decl-prefix-search): In the "pseudo
128208	match" loop, test a found string for a match with c-opt-identifier-concat-key
128209	(e.g. with "::").
128210
1282112016-08-17  Paul Eggert  <eggert@cs.ucla.edu>
128212
128213	* src/doc.c (Fsubstitute_command_keys): Clarify GC comments.
128214
1282152016-08-17  K. Handa  <handa@gnu.org>
128216
128217	Fix hz encoding and decoding (bug#23814)
128218
128219	* lisp/language/china-util.el (decode-hz-region): Pay
128220	attention to "~~}" sequence at the end of Chinese character
128221	range.
128222	(hz-category-table): New variable.
128223	(encode-hz-region): Convert non-encodable characters to
128224	\u... and \U...  Preserve ESC on ecoding.  Put
128225	`chinese-gb2312' `charset' text property in advance to force
128226	iso-2022-encoding to select chinese-gb2312 designation.
128227
1282282016-08-17  Tino Calancha  <tino.calancha@gmail.com>
128229
128230	file-attribute-collect: New defun
128231
128232	* lisp/files.el (file-attribute-collect):
128233	Return a sublist of the attributes returned by 'file-attributes'.
128234	Suggested by Ted Zlatanov in:
128235
128236	https://lists.gnu.org/r/emacs-devel/2016-07/msg01195.html
128237
1282382016-08-17  Michael Albinus  <michael.albinus@gmx.de>
128239
128240	Fix Bug#24203
128241
128242	* lisp/comint.el (comint-password-prompt-regexp): Relax regexp.  (Bug#24203)
128243
1282442016-08-16  Karl Fogel  <kfogel@red-bean.com>
128245
128246	Improve doc string.
128247
128248	* src/fileio.c (Ffile_name_as_directory): Be precise about the
128249	conditions under which a slash is appended.
128250
1282512016-08-16  Paul Eggert  <eggert@cs.ucla.edu>
128252
128253	Omit substitute-command-keys code no longer needed
128254
128255	* src/doc.c (Fsubstitute_command_keys):
128256	Remove duplicate initializations.
128257
1282582016-08-16  Tino Calancha  <tino.calancha@gmail.com>
128259
128260	Allow not erase output buffer in shell commands
128261
128262	* lisp/simple.el (shell-command-not-erase-buffer): New option to allow
128263	not erasing the output buffer between shell commands.  Defaults to nil.
128264	(shell-command-on-region): Use it.
128265	(shell-command--save-pos-or-erase): New defun; store a buffer position
128266	if 'shell-command-not-erase-buffer' is non-nil; otherwise
128267	erase the output buffer of the shell command.
128268	(shell-command, shell-command-on-region): Use it.
128269	(shell-command--set-point-after-cmd): New defun;
128270	if 'shell-command-not-erase-buffer' is non-nil, set point
128271	in the output buffer to the position in 'shell-command-saved-pos'.
128272	(shell-command-sentinel, shell-command-on-region): Use it.
128273	* doc/emacs/misc.texi (shell-command-not-erase-buffer):
128274	Document this feature in the manual.
128275	See discussion on:
128276	https://lists.gnu.org/r/emacs-devel/2016-07/msg00610.html
128277
1282782016-08-16  Michael Albinus  <michael.albinus@gmx.de>
128279
128280	Rearrange Tramp manual title page
128281
128282	* doc/misc/tramp.texi: Move @insertcopying out of the title
128283	page.  Do not use @ifnottex anymore.
128284
1282852016-08-15  Glenn Morris  <rgm@gnu.org>
128286
128287	* doc/misc/tramp.texi: Adapt 2016-08-14 change for makeinfo 4.
128288
1282892016-08-15  Alan Mackenzie  <acm@muc.de>
128290
128291	Fix minor bug in c-syntactic-re-search-forward.
128292
128293	Bug was: when NOERROR is neither nil nor t, BOUND is non-nil, PAREN-LEVEL is
128294	non-nil, and the first internal search attempt fails, point wrongly ends up at
128295	BOUND, rather than just before the next closing paren.
128296
128297	* lisp/progmodes/cc-engine.el (c-syntactic-re-search-forward): Guard against
128298	the above situation.
128299
1283002016-08-15  Alan Mackenzie  <acm@muc.de>
128301
128302	Handle C++11 lambda functions.
128303
128304	* lisp/progmodes/cc-engine.el (c-looking-at-inexpr-block): Enhance also to
128305	handle C++ lambda functions.
128306	(c-looking-at-c++-lambda-capture-list): New function.
128307
128308	* lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Recognize the
128309	parameter list of a lambda function and set `context' and
128310	`c-restricted-<>-arglists' suitably for it.
128311	(c-font-lock-c++-lambda-captures): New function.
128312	(c-complex-decl-matchers): Insert c-font-lock-c++-lambda-captures into it.
128313
128314	* lisp/progmodes/cc-langs.el (c-pre-lambda-tokens, c-pre-lambda-tokens-re):
128315	New language constants/variables.
128316	(c-paren-nontype-kwds): Include "noexcept" in the C++ value.
128317
128318	* lisp/progmodes/cc-mode.el (c-fl-decl-start): Handle being in a C++ lambda
128319	function capture list.
128320
1283212016-08-15  Michael Albinus  <michael.albinus@gmx.de>
128322
128323	Fix stale cache problem in Tramp
128324
128325	* lisp/net/tramp-cache.el (tramp-get-connection-property):
128326	Check, that a process as key is still running.  (Bug#22478)
128327
1283282016-08-14  Paul Eggert  <eggert@cs.ucla.edu>
128329
128330	* doc/misc/tramp.texi (Configuration): Fix @xref typo.
128331
1283322016-08-14  Eli Zaretskii  <eliz@gnu.org>
128333
128334	Another fix for scroll-conservatively and overlay strings
128335
128336	* src/xdisp.c (redisplay_window): Handle also the case where the
128337	calculated window-start point has an overlay string touching it.
128338	(Bug#24179)
128339
1283402016-08-14  Michael Albinus  <michael.albinus@gmx.de>
128341
128342	Improve handling of defcustoms in tramp
128343
128344	* doc/misc/tramp.texi: Protect all multi-line examples by
128345	@group ... @end group.  Use proper `custom-set-variables'
128346	examples.  Use consequently @option for user options.  Remove
128347	superfluous @cindex and @vindex entries.
128348	(Top): Remove reference to outdated mail archives.
128349	(Configuration): Tune references.
128350	(Default Method): Make `tramp-default-method' and
128351	`tramp-default-method-alist' a @defopt.
128352	(Default User): Make `tramp-default-user' and
128353	`tramp-default-user-alist' a @defopt.
128354	(Default Host): Make `tramp-default-host' and
128355	`tramp-default-host-alist' a @defopt.
128356
128357	* lisp/net/tramp.el (tramp-mode, tramp-verbose)
128358	(tramp-backup-directory-alist, tramp-auto-save-directory)
128359	(tramp-encoding-shell, tramp-encoding-command-switch)
128360	(tramp-encoding-command-interactive, tramp-default-method)
128361	(tramp-default-method-alist, tramp-default-user)
128362	(tramp-default-user-alist, tramp-default-host)
128363	(tramp-default-host-alist, tramp-default-proxies-alist)
128364	(tramp-save-ad-hoc-proxies)
128365	(tramp-restricted-shell-hosts-alist)
128366	(tramp-local-end-of-line, tramp-rsh-end-of-line)
128367	(tramp-login-prompt-regexp, tramp-shell-prompt-pattern)
128368	(tramp-password-prompt-regexp, tramp-wrong-passwd-regexp)
128369	(tramp-yesno-prompt-regexp, tramp-yn-prompt-regexp)
128370	(tramp-terminal-prompt-regexp)
128371	(tramp-operation-not-permitted-regexp)
128372	(tramp-copy-failed-regexp, tramp-process-alive-regexp)
128373	(tramp-syntax, tramp-chunksize)
128374	(tramp-process-connection-type, tramp-connection-timeout)
128375	(tramp-connection-min-time-diff)
128376	(tramp-completion-reread-directory-timeout):
128377	* lisp/net/tramp-adb.el (tramp-adb-program)
128378	(tramp-adb-connect-if-not-connected, tramp-adb-prompt):
128379	* lisp/net/tramp-cache.el (tramp-connection-properties)
128380	(tramp-persistency-file-name):
128381	* lisp/net/tramp-gvfs.el (tramp-gvfs-methods)
128382	(tramp-gvfs-zeroconf-domain)
128383	(tramp-bluez-discover-devices-timeout):
128384	* lisp/net/tramp-sh.el (tramp-inline-compress-start-size)
128385	(tramp-copy-size-limit, tramp-terminal-type)
128386	(tramp-histfile-override)
128387	(tramp-use-ssh-controlmaster-options, tramp-remote-path)
128388	(tramp-remote-process-environment, tramp-sh-extra-args):
128389	* lisp/net/tramp-smb.el (tramp-smb-program, tramp-smb-acl-program)
128390	(tramp-smb-conf, tramp-smb-winexe-program)
128391	(tramp-smb-winexe-shell-command)
128392	(tramp-smb-winexe-shell-command-switch): Add :require 'tramp.
128393
1283942016-08-13  Paul Eggert  <eggert@cs.ucla.edu>
128395
128396	Minor text-quoting-style fixes
128397
128398	* lisp/cus-edit.el (custom-buffer-create-internal):
128399	* lisp/recentf.el (recentf-edit-list):
128400	Follow text-quoting-style preference when quoting in UI strings.
128401	* src/doc.c (Fsubstitute_command_keys): Don’t say that curved
128402	quotes are substituted for, as this is no longer true.
128403
1284042016-08-13  Paul Eggert  <eggert@cs.ucla.edu>
128405
128406	Fix substitute-command-keys unibyte, alloc bugs
128407
128408	* src/doc.c (Fsubstitute_command_keys): Fix some problems with
128409	unibyte strings and with buffer allocation.  Make strings
128410	multibyte, to avoid problems with unibyte strings that are not
128411	valid UTF-8 (Bug#24206).  Redo buffer allocation so that it is
128412	O(N), not O(N**2).  Avoid going past the end of the input string
128413	when given invalid input.  Avoid some unlikely problems in
128414	accessing the wrong storage after a GC.
128415
1284162016-08-13  Joakim Jalap  <joakim.jalap@fastmail.com>
128417
128418	Fix "C-u" when an input method is active
128419
128420	* lisp/international/quail.el (quail-input-method): Defer to the
128421	input method iff 'overriding-terminal-local-map' is
128422	'universal-argument-map' and the given key has no binding there.
128423	(Bug#22958)
128424
1284252016-08-13  Martin Rudalics  <rudalics@gmx.at>
128426
128427	Fix docs on `display-buffer-below-selected' (Bug#24213)
128428
128429	* lisp/window.el (display-buffer-below-selected): Fix
128430	doc-string (Bug#24213).
128431	* doc/lispref/windows.texi (Display Action Functions): Fix
128432	documentation of `display-buffer-below-selected'.
128433
1284342016-08-12  Tino Calancha  <tino.calancha@gmail.com>
128435
128436	cl-fill: Rename arguments to cl-seq and cl-item
128437
128438	* lisp/emacs-lisp/cl-seq.el (cl-fill):
128439	Rename arguments to 'cl-seq' and 'cl-item' as elsewhere.
128440
1284412016-08-12  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
128442
128443	Fix display.texi typo
128444
128445	* doc/lispref/display.texi (Faces): Fix typo.
128446
1284472016-08-11  Paul Eggert  <eggert@cs.ucla.edu>
128448
128449	Fix process leak with make-network-process
128450
128451	This problem was introduced by the recent async changes (Bug#23808).
128452	* src/process.c (Fmake_process): Move USE_SAFE_ALLOCA later,
128453	so that it follows the start_process_unwind unwind-protect.
128454	Set pid to -1 while the process is being created.
128455	(start_process_unwind): Omit unnecessary emacs_abort test.
128456	(connect_network_socket): Simplify use of counts.  Unwind
128457	bind_polling_period a bit earlier, so that a remove_process
128458	unwind-protect can be added when needed; this is the heart of
128459	the fix.  Undo the unwind-protect just before returning.
128460
1284612016-08-11  Eli Zaretskii  <eliz@gnu.org>
128462
128463	Avoid annoying re-scroll when buffer has many overlay strings
128464
128465	* src/xdisp.c (redisplay_window): Add better recovery from a
128466	situation where window-start is on buffer position which has a
128467	before-string that includes newlines, with the result that point
128468	is not visible in the window, because the display engine starts
128469	displaying with the before-string.  (Bug#24179)
128470
1284712016-08-10  Paul Eggert  <eggert@cs.ucla.edu>
128472
128473	Omit unnecessary process initialization
128474
128475	* src/process.c (make_process, Fmake_process)
128476	(Fmake_pipe_process, Fmake_serial_process)
128477	(Fmake_network_process, server_accept_connection):
128478	Omit unnecessary initialization of already-cleared storage.
128479
1284802016-08-10  Tino Calancha  <tino.calancha@gmail.com>
128481
128482	cl-delete-duplicates: Parse :if to have cl-if bound
128483
128484	* lisp/emacs-lisp/cl-seq.el (cl--delete-duplicates):
128485	We need also to parse keyword :if, otherwise cl-if
128486	is unbound.
128487	This reverts commit:
128488	68fdbeb917b80e29e0b15506f18f7ed41d8ffdfd
128489
1284902016-08-10  Tino Calancha  <tino.calancha@gmail.com>
128491
128492	cl-delete-duplicates: do not parse :if keyword
128493
128494	* lisp/emacs-lisp/cl-seq.el (cl--delete-duplicates):
128495	Parse only the supported keywords.
128496
1284972016-08-10  Michael Albinus  <michael.albinus@gmx.de>
128498
128499	Add compatibility layer for `temporary-file-directory-function'
128500
128501	* lisp/net/tramp-compat.el
128502	(tramp-compat-temporary-file-directory-function): New defalias.
128503
128504	* lisp/net/tramp.el (tramp-handle-make-nearby-temp-file): Use it.
128505
128506	* test/lisp/net/tramp-tests.el (tramp-test32-make-nearby-temp-file):
128507	Skip for older Emacs versions.
128508
1285092016-08-10  Michael Albinus  <michael.albinus@gmx.de>
128510
128511	* lisp/comint.el (comint-password-prompt-regexp): Add "PEM" for OpenVPN.
128512
128513	(Bug#24059)
128514
1285152016-08-10  Vincent Belaïche  <vincentb1@users.sourceforge.net>
128516
128517	Handle nil cell value in compiled printer functions.
128518
128519	* doc/misc/ses.texi (Quick Tutorial): Minor clarification about the
128520	ses-range `!' modifier.
128521	(More on cell printing): Fix this that the fallback printer is
128522	`ses-prin1', not "%S".  That makes a difference for any cell value for
128523	which "%S" would insert a backslash characters.
128524
128525	* lisp/ses.el (ses-local-printer-compile): Handle the nil cell value
128526	--- contrary to emacs-25 branches ses-call-printer does not handle
128527	prior to calling a function printer.  Not doing this would still work
128528	because the compiled function would throw and error and SES would in
128529	the end resort to the ses-prin1 fallback, however this way would not
128530	be in line with the raison d'être of compiling printer which is speed.
128531
1285322016-08-09  Mark Oteiza  <mvoteiza@udel.edu>
128533
128534	Turn on lexical-binding in json.el
128535
128536	Measuring with (benchmark-run 100 (json-read-file "foobar.json"))
128537	showed 12-31% reduction in execution time.
128538	* lisp/json.el: Turn on lexical-binding.
128539
1285402016-08-09  Mark Oteiza  <mvoteiza@udel.edu>
128541
128542	Nudge WoMan toward lexical-binding
128543
128544	* lisp/woman.el (woman-parse-man.conf, woman-manpath-add-locales):
128545	Use cl-pushnew instead of add-to-list.
128546	(woman-justify-list): Rename to woman-justify-styles.
128547	(woman-justify-styles): New array.
128548	(woman-justify, woman-decode-region, woman2-ad, woman2-na): Use it.
128549	(woman-cached-data): Use cl-pushnew instead of add-to-list.
128550
1285512016-08-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
128552
128553	Apply changes from commits 3c97b0f758 and 8a38e948b0 to master branch.
128554
128555	Here follows the logs from the two commits which I apply to master.
128556
128557	commit 3c97b0f7589e06aeb1ab0147f0ee32974c32926d
128558	Author: Vincent Belaïche <vincentb1@users.sourceforge.net>
128559	Date:   Fri Jul 29 13:44:14 2016 +0200
128560
128561	Fix ses-delete-blanks to delete only blanks + documentation.
128562
128563	* doc/misc/ses.texi (Quick Tutorial): Mention the '!'
128564	'ses-range' modifier as an alternative to 'ses+'.
128565	(Advanced Features): Add a refernce to node 'Nonrelocatable
128566	references' concerning function 'ses-rename-cell'.
128567	(Standard formula functions): Mention the '!' 'ses-range'
128568	modifier as an alternative to 'ses-delete-blanks'.
128569	(More on cell printing): Fix fallback printer
128570	definition.  Minor editorial formatting changes.
128571	(Nonrelocatable references): Document the use of
128572	'ses-rename-cell' as a better way to make cell reference
128573	non-relocatable.
128574	(The data area): Document the presence of local printer
128575	definitions in the data area.
128576
128577	* lisp/ses.el (ses-delete-blanks): Do not remove
128578	*error*.  Any error in an argument should propagate into the
128579	using formula rather than being silently hidden !
128580
128581	commit 8a38e948b039516e70176ebe20c5349e2ade6ac5
128582	Author: Vincent Belaïche <vincentb1@users.sourceforge.net>
128583	Date:   Thu Jul 28 19:49:37 2016 +0200
128584
128585	Fix local printer set to left aligned string formatter.
128586
128587	* lisp/ses.el (ses-local-printer-compile): Add missing case
128588	for left-aligned string formatter.
128589
1285902016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
128591
128592	* .dir-locals.el (c-noise-macro-names): Remove NONVOLATILE.
128593
1285942016-08-09  Stefan Monnier  <monnier@iro.umontreal.ca>
128595
128596	* lisp/emacs-lisp/cconv.el: Fix λ-lifting in the presence of shadowing
128597
128598	Change the code which detects and circumvents the case where one of the
128599	variables used in λ-lifting is shadowed, so that it also works when the
128600	shadowing comes before the λ-lifted function (bug#24171).
128601
128602	(cconv--remap-llv): New function, extracted from cconv-convert.
128603	(cconv-convert): Use it, but differently for `let' and `let*'.
128604
1286052016-08-09  Alan Mackenzie  <acm@muc.de>
128606
128607	CC Mode: check for and fix missing call to before_change_functions.
128608
128609	Fixes bug #24094 and bug #24074.
128610
128611	This can happen with `revert-buffer' or sometimes `find-file', when the file
128612	is already in a buffer, but the file has been changed outside of Emacs.
128613
128614	* lisp/progmodes/cc-mode.el (c-after-change): When we detect a missing
128615	invocation of c-before-change-functions, we assume the changed region is the
128616	entire buffer, and call c-before-change explicitly before proceding.
128617
1286182016-08-09  Alan Mackenzie  <acm@muc.de>
128619
128620	Make c-deprepertize-CPP work on deletion/insertion of "s.  Fixes bug #24132.
128621
128622	* lisp/progmodes/cc-mode.el (c-depropertize-CPP): Rewrite function.
128623
1286242016-08-09  Michael Albinus  <michael.albinus@gmx.de>
128625
128626	Support $ENV in Tramp
128627
128628	* doc/misc/tramp.texi (Remote processes): Explain setting $ENV.
128629
128630	* etc/NEWS: Explain the "ENV" environment variable in
128631	`tramp-remote-process-environment'.
128632
128633	* lisp/net/tramp-sh.el (tramp-remote-process-environment): Add "ENV=''".
128634	(tramp-open-shell): Read $ENV value from
128635	`tramp-remote-process-environment'.
128636	(tramp-open-connection-setup-interactive-shell): Set values in
128637	proper order.
128638
1286392016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
128640
128641	Simplify exec_byte_code via moving decls etc.
128642
128643	* src/bytecode.c (exec_byte_code): Simplify, mostly by moving
128644	initializers into decls, and by omitting some unnecessary
128645	changes to ‘top’.  This improves performance a bit on x86-64,
128646	as it happens.
128647
1286482016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
128649
128650	Remove interpreter’s byte stack
128651
128652	This improves performance overall on my benchmark on x86-64,
128653	since the interpreted program-counter resides in a machine
128654	register rather than in RAM.
128655	* etc/DEBUG, src/.gdbinit: Remove xbytecode GDB command, as there
128656	is no longer a byte stack to decode.
128657	* src/bytecode.c (struct byte_stack, byte_stack_list)
128658	(relocate_byte_stack): Remove.  All uses removed.
128659	(FETCH): Simplify now that pc is now local (typically, in a
128660	register) and no longer needs to be relocated.
128661	(CHECK_RANGE): Remove.  All uses now done inline, in a different way.
128662	(BYTE_CODE_QUIT): Remove; now done by op_relative_branch.
128663	(exec_byte_code): Allocate a copy of the function’s bytecode,
128664	so that there is no problem if GC moves it.
128665	* src/lisp.h (struct handler): Remove byte_stack member.
128666	All uses removed.
128667	(SAFE_ALLOCA_LISP_EXTRA): New macro, a generalization of
128668	SAFE_ALLOCA_LISP.
128669	(SAFE_ALLOCA_LISP): Use it.
128670
1286712016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
128672
128673	Remove arbitrary limit on bytecode maxdepth
128674
128675	* src/bytecode.c (exec_byte_code): Remove MAX_ALLOCA-based limit
128676	on bytecode maxdepth, by using SAFE_ALLOCA_LISP instead of alloca.
128677
1286782016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
128679
128680	Tune bytecode quitting
128681
128682	* src/bytecode.c (BYTE_CODE_QUIT): Check for GC, too.  Do the
128683	check only once every 256 times.  This should be good enough, and
128684	improves performance significantly on x86-64 as branch-prediction
128685	typically assumes checking will not be done so the instruction
128686	pipeline stays fuller.
128687	(exec_byte_code): Set up the quit counter.  Don’t call maybe_gc
128688	directly, as BYTE_CODE_QUIT does that now.
128689
1286902016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
128691
128692	Simplify BYTE_CODE_SAFE checking
128693
128694	* src/bytecode.c (BYTE_CODE_SAFE): Default to false, so that it
128695	can be used outside #if.  All uses of ‘defined BYTE_CODE_SAFE’
128696	changed to ‘BYTE_CODE_SAFE’.  Use BYTE_CODE_SAFE in plain
128697	expressions instead of #if expressions when this is easy.
128698	(struct byte_stack) [BYTE_CODE_SAFE]: Remove member ‘bottom’,
128699	as it is no longer needed.
128700	(exec_byte_code): Omit #if BYTE_CODE_SAFE when this is easy.
128701	Simplify stack-overflow checking when BYTE_CODE_SAFE.
128702
1287032016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
128704
128705	Get BYTE_CODE_METER working again
128706
128707	BYTE_CODE_METER hasn’t worked since 2013, and nobody seems to have
128708	noticed.  Perhaps we should remove it?
128709	* src/bytecode.c (METER_2) [BYTE_CODE_METER]:
128710	Use *aref_addr instead of AREF, since it needs to be an lvalue.
128711
1287122016-08-08  Eli Zaretskii  <eliz@gnu.org>
128713
128714	Fix cursor position under scroll-conservatively and overlay strings
128715
128716	* src/xdisp.c (try_scrolling): Handle the case where the last
128717	visible screen line of a window displays a before- or after-string
128718	that takes up the whole screen line, and therefore there's no
128719	place to display the cursor, even though the window does seem to
128720	include the position of point.  (Bug#24179)
128721
1287222016-08-08  Michael Albinus  <michael.albinus@gmx.de>
128723
128724	* lisp/files.el (file-ownership-preserved-p): Fix docstring.  (Bug#23998)
128725
1287262016-08-07  Paul Eggert  <eggert@cs.ucla.edu>
128727
128728	Tune interpretation of integer arglist descriptor
128729
128730	* src/bytecode.c (exec_byte_code):
128731	Simplify and tune when INTEGERP (args_template).
128732
1287332016-08-07  Noam Postavsky  <npostavs@gmail.com>
128734
128735	Fix debugging of string-match-p errors
128736
128737	* src/eval.c (call_debugger): Bind inhibit-changing-match-data to nil so
128738	that debugger code that needs to do regexp match won't break
128739	(Bug #23949, Bug #24166, Bug#16294).
128740
1287412016-08-07  Michael Albinus  <michael.albinus@gmx.de>
128742
128743	Add `make-nearby-temp-file' and `temporary-file-directory'
128744
128745	* doc/lispref/files.texi (Unique File Names):
128746	Introduce `make-nearby-temp-file' and `temporary-file-directory'.
128747	(Magic File Names): Mention `make-nearby-temp-file' and
128748	`temporary-file-directory'.
128749
128750	* etc/NEWS (provided): Mention `make-nearby-temp-file' and
128751	`temporary-file-directory'.
128752
128753	* lisp/files.el (mounted-file-systems): New defcustom.
128754	(temporary-file-directory, make-nearby-temp-file): New defuns.
128755	(normal-backup-enable-predicate): Fix docstring.
128756
128757	* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
128758	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
128759	* lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
128760	* lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
128761	<make-nearby-temp-file, temporary-file-directory>: Add handler.
128762
128763	* lisp/net/tramp.el (tramp-file-name-for-operation):
128764	Add `make-nearby-temp-file' and `temporary-file-directory'.
128765	(tramp-get-remote-tmpdir): Remove compatibility code.
128766	(tramp-handle-temporary-file-directory)
128767	(tramp-handle-make-nearby-temp-file): New defuns.
128768
128769	* lisp/org/ob-core.el (org-babel-local-file-name):
128770	* lisp/progmodes/gud.el (gud-common-init):
128771	* lisp/vc/vc-hooks.el (vc-user-login-name): Use `file-remote-p'.
128772
128773	* lisp/vc/vc-git.el (vc-git-checkin): Handle remote log message.
128774
128775	* test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
128776	Check `tramp--test-enabled'.
128777	(tramp-test18-file-attributes): Add tests for
128778	`file-ownership-preserved-p'.
128779	(tramp-test27-start-file-process, tramp-test28-shell-command):
128780	Reduce timeouts in `accept-process-output'.
128781	(tramp-test--shell-command-to-string-asynchronously): Add timeout.
128782	(tramp-test29-environment-variables): Remove additional sleep calls.
128783	(tramp-test32-make-nearby-temp-file): New test.
128784	(tramp--test-special-characters, tramp--test-utf8): Adapt docstring.
128785	(tramp-test33-special-characters)
128786	(tramp-test33-special-characters-with-stat)
128787	(tramp-test33-special-characters-with-perl)
128788	(tramp-test33-special-characters-with-ls, tramp-test34-utf8)
128789	(tramp-test34-utf8-with-stat, tramp-test34-utf8-with-perl)
128790	(tramp-test34-utf8-with-ls)
128791	(tramp-test35-asynchronous-requests)
128792	(tramp-test36-recursive-load, tramp-test37-unload): Rename.
128793	(tramp--test-ftp-p): Simplify check.
128794	(tramp--test-sh-p): New defun.
128795	(tramp-test20-file-modes, tramp-test22-file-times)
128796	(tramp-test26-process-file, tramp-test27-start-file-process)
128797	(tramp-test28-shell-command)
128798	(tramp-test29-environment-variables)
128799	(tramp-test30-vc-registered)
128800	(tramp-test33-special-characters-with-stat)
128801	(tramp-test33-special-characters-with-perl)
128802	(tramp-test33-special-characters-with-ls)
128803	(tramp-test34-utf8-with-stat, tramp-test34-utf8-with-perl)
128804	(tramp-test34-utf8-with-ls)
128805	(tramp-test35-asynchronous-requests): Use it.
128806
1288072016-08-06  Michael Albinus  <michael.albinus@gmx.de>
128808
128809	Add missing dcstrings in Tramp, remove chec for obsolee methods
128810
128811	* lisp/net/tramp.el (tramp-progress-reporter-update)
128812	(tramp-unload-file-name-handlers, tramp-get-local-uid)
128813	(tramp-get-local-gid, tramp-get-local-locale):
128814	* lisp/net/tramp-adb.el (tramp-adb-ls-date-regexp)
128815	(tramp-adb-ls-toolbox-regexp, tramp-adb-get-ls-command):
128816	* lisp/net/tramp-compat.el (tramp-compat-funcall):
128817	* lisp/net/tramp-ftp.el (tramp-ftp-enable-ange-ftp):
128818	* lisp/net/tramp-gw.el (tramp-gw-process-filter):
128819	* lisp/net/tramp-sh.el (tramp-get-remote-path)
128820	(tramp-get-remote-locale, tramp-get-ls-command)
128821	(tramp-get-ls-command-with-dired)
128822	(tramp-get-ls-command-with-quoting-style)
128823	(tramp-get-ls-command-with-w-option)
128824	(tramp-get-test-nt-command, tramp-get-file-exists-command)
128825	(tramp-get-remote-ln, tramp-get-remote-perl)
128826	(tramp-get-remote-stat, tramp-get-remote-readlink)
128827	(tramp-get-remote-trash, tramp-get-remote-touch)
128828	(tramp-get-remote-gvfs-monitor-dir)
128829	(tramp-get-remote-inotifywait, tramp-get-remote-id)
128830	(tramp-get-remote-uid-with-id)
128831	(tramp-get-remote-uid-with-perl, tramp-get-remote-python)
128832	(tramp-get-remote-uid-with-python, tramp-get-remote-uid)
128833	(tramp-get-remote-gid-with-id)
128834	(tramp-get-remote-gid-with-perl)
128835	(tramp-get-remote-gid-with-python, tramp-get-remote-gid)
128836	(tramp-get-env-with-u-option): Add missing docstrings.
128837
128838	* lisp/net/tramp.el (tramp-obsolete-methods)
128839	(tramp-warned-obsolete-methods): Remove.
128840	(tramp-find-method): Do not check for obsolete methods any longer.
128841
1288422016-08-06  Noam Postavsky  <npostavs@gmail.com>
128843
128844	Make sh-mode always use p-s-lookup-properties
128845
128846	This lets functions which rely on syntax-propertize for parsing
128847	work correctly even before font lock has a chance to run.
128848
128849	* lisp/progmodes/sh-script.el (sh-set-shell): Set
128850	parse-sexp-lookup-properties unconditionally (Bug #4920).
128851
1288522016-08-06  Noam Postavsky  <npostavs@gmail.com>
128853
128854	Fix cl-assert with atomp FORM, non-nil SHOW-ARGS
128855
128856	* lisp/emacs-lisp/cl-macs.el (cl-assert): Don't require that FORM is a
128857	list when showing its (non-existent) arguments (Bug #18587).
128858
1288592016-08-06  Noam Postavsky  <npostavs@gmail.com>
128860
128861	Don't delete selection after indent-rigidly
128862
128863	* lisp/indent.el (indent-rigidly): Pass `deactivate-mark' as the ON-EXIT
128864	function to `set-transient-map', this prevents `delete-selection-mode'
128865	from deleting the text that was just indented (Bug #20408).
128866
1288672016-08-06  Noam Postavsky  <npostavs@gmail.com>
128868
128869	Fix byte-compile of interactive closures
128870
128871	* lisp/emacs-lisp/bytecomp.el (byte-compile--reify-function): Put
128872	bindings after docstring and `interactive' form, if any (Bug #24122).
128873
1288742016-08-06  Noam Postavsky  <npostavs@gmail.com>
128875
128876	Error if --eval arg has text beyond 1 expression
128877
128878	* lisp/startup.el (command-line-1): If --eval argument has more data
128879	than constitutes a single Lisp expression, signal an error (Bug #23159).
128880
1288812016-08-06  Noam Postavsky  <npostavs@gmail.com>
128882
128883	Fix quoted lambda warning from lexical-let
128884
128885	* lisp/emacs-lisp/cl.el (cl--function-convert): Quote the inner lambda
128886	with `function', not `quote' (Bug #11357).
128887
1288882016-08-06  Noam Postavsky  <npostavs@gmail.com>
128889
128890	Make emerge always use shell-quote-argument
128891
128892	* lisp/vc/emerge.el (emerge-metachars): Obsolete.
128893	(emerge-protect-metachars): Delete.
128894	(emerge-make-diff-list, emerge-make-diff3-list): Replace all calls to
128895	`emerge-protect-metachars' with `shell-quote-argument' so that shell
128896	quoting is done the same on all system types (Bug #6136).  Also shell
128897	quote `emerge-diff-program' and `emerge-diff3-program'.
128898
1288992016-08-06  Eli Zaretskii  <eliz@gnu.org>
128900
128901	Fix 'dired-diff' when backup file is in another directory
128902
128903	* lisp/dired-aux.el (dired-diff): Clarify the doc string wrt how
128904	the default for FILE is computed, especially when backup files
128905	are involved.  Support backup files in another directory.
128906	Don't suggest the default FILE if it doesn't exist.  (Bug#24089)
128907
1289082016-08-06  Eli Zaretskii  <eliz@gnu.org>
128909
128910	Fix the 'T' command in Dired with non_ASCII file names
128911
128912	* lisp/dired-aux.el (dired-do-chxxx): Bind coding-system-for-write
128913	to correctly encode file names passed to the invoked PROGRAM.
128914	(Bug#24162)
128915
1289162016-08-05  Noam Postavsky  <npostavs@gmail.com>
128917
128918	* lisp/files.el (version-control): Drop :group vc (Bug #14687)
128919
1289202016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
128921
128922	Merge from origin/emacs-25
128923
128924	d841a03 ; Spelling fix
128925	a6ae479 Post AppDefined events from the main thread ONLY (bug#23934)
128926	d35d398 Update to the AUTHORS file for Bob Weiner
128927	4d2f4df Revert "Fix local printer set to left aligned string formatter."
128928	cd1b4d6 Revert "Fix ses-delete-blanks to delete only blanks + documen...
128929	f7ceb8e Revert "Fix English."
128930	baa7abd Improve doc strings of 'gud-gdb' and 'gdb'
128931	aa4271a Fix doc string of 'minibuffer-message-timeout'
128932	b275cc7 Fix English.
128933	3c97b0f Fix ses-delete-blanks to delete only blanks + documentation.
128934	272391f profiler: document prefix arg for tree expansion
128935	442cc39 Clarify usage of eshell-visual-options
128936	b443c3c Fix comment in files-in-below-directory
128937	8a38e94 Fix local printer set to left aligned string formatter.
128938	0f0b191 ; Fix typos in NEWS
128939	6bdf687 ; * etc/NEWS: Remove temporary marks
128940
1289412016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
128942
128943	Merge from origin/emacs-25
128944
128945	d08afa1 * etc/AUTHORS: Update the AUTHORS file
128946	2668500 ;; * ChangeLog.2: ChangeLog update.
128947	7acfaea ; ChangeLog fixes
128948	97d28b4 * admin/authors.el (authors-valid-file-names): Addition.
128949	9ab52f6 * admin/authors.el: Additions.
128950	0e646c7 Warn about Cairo-related problems
128951	bc4c07f Don't let completion break `declare' handling
128952	66f95e0 Adjust match data before calling after-change-funs
128953	52cf0d5 Do not show string-rectangle preview if minibuffer is empty
128954	6a3d031 * etc/PROBLEMS: Add entry about selection problems under Plas...
128955
128956	# Conflicts:
128957	#	ChangeLog.2
128958	#	src/lisp.h
128959
1289602016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
128961
128962	Merge from origin/emacs-25
128963
128964	9a41cd1 ; Fix typo
128965	9356fe2 Expand FIXME near definition of fboundp
128966	219b39f kill-rectangle should mention killed-rectangle
128967	59fa4c3 Avoid assertion violations in nhexl-mode
128968
1289692016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
128970
128971	Merge from origin/emacs-25
128972
128973	9ba51ed Document buffer-swap-text+save-excursion interaction
128974	452aa94 Fix eieio vs cl-generic incompatibilities found in Rudel (bug...
128975	248d5dd Include cl-generic in package--builtin-versions (bug#22817)
128976	8f5a8b6 Improve timing in `tramp-test29-environment-variables'
128977	05ba7a0 Add test for handling environment variables in Tramp
128978	e393d4f * lisp/emacs-lisp/package.el (describe-package-1) (package-st...
128979	5e38887 ; * lisp/net/tramp.el: Fix 2010-10-04 comment typo.  (Bug#23913)
128980	90f2169 ; Spelling fixes
128981	069fc05 Improve documentation of search functions
128982	0a0144a Delete environment variables in Tramp when needed
128983	f624671 Add "New in Emacs 25" section to the FAQ
128984	658daf9 Fix 'vertical-motion' in non-interactive sessions
128985	686b520 Fix memory leak in imagemagick-types
128986	4069b71 Update ELisp manual to match 'string-collate-equalp' doc string
128987	1b2d6a6 Clarify docstring of find-feature-regexp
128988	aac62a6 Add details to cl-lib defining macros' docstrings
128989	d6aa4da Clarify doc string of 'save-buffer'
128990	03bcf11 Un-confuse doc string of 'string-collate-equalp'
128991	c53135b Clarify documentation of 'mouse-on-link-p'
128992
128993	# Conflicts:
128994	#	lisp/emacs-lisp/eieio-core.el
128995
1289962016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
128997
128998	Merge from origin/emacs-25
128999
129000	6f285d9 Amend last addition to etc/PROBLEMS
129001	7067890 * etc/PROBLEMS: Mention GTK+ problem with unexpected frame wi...
129002
1290032016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
129004
129005	Merge from origin/emacs-25
129006
129007	d4c6774 Fix missing point information in undo
129008	3a9d629 Avoid crashes when buffer modification hooks clobber match data
129009	178b2f5 Note combine-and-quote-strings doesn't shell quote
129010	dec7567 Explain when package-initialize isn't called
129011	113d1e2 Fix escaping in sh-indent-after-continuation docstr
129012	80e2044 ; * etc/NEWS: Improve previous change.
129013	5bb9e6c ; * etc/NEWS: Document how to avoid horizontal scroll bars.
129014	38f4b8e Clarify the documentation of back-references in replacements
129015
1290162016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
129017
129018	Merge from origin/emacs-25
129019
129020	850ba44 Clarify lexical binding with symbol args behavior
129021	f981b31 * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
129022	68fc964 * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.  (Bug#23...
129023	21110af Avoid assertion violations when rendering some fonts
129024	6192b6c Document more details of package activation
129025	272ddc6 Fixup warning message regarding HOME a bit more
129026	43206d6 * lisp/leim/quail/indian.el ("bengali-probhat"): Change indic...
129027	d41f7ff Fix input method "probhat" for Bengali
129028	c150a64 ; Fix typo in commit before last
129029	ebf0472 Add to elisp-completion-at-point's docstring
129030	fd9fad0 Give more helpful warning about setting HOME
129031	ea6b01d ; * lisp/term.el (term-mode): FIXME comment about bidi reorde...
129032
129033	# Conflicts:
129034	#	lisp/term.el
129035
1290362016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
129037
129038	Merge from origin/emacs-25
129039
129040	26d4da0 New input method "probhat" for Bengali
129041	4f445bf ; Spelling fix
129042	f403f03 ; Fix typo
129043
1290442016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
129045
129046	Spelling and minor grammar fixes
129047
129048	* test/file-organization.org: Rename from test/file-organisation.org.
129049
1290502016-08-04  Alan Mackenzie  <acm@muc.de>
129051
129052	Widen in certain low level CC Mode functions.  This fixes bug #24148.
129053
129054	* lisp/progmodes/cc-engine.el (c-state-semi-pp-to-literal)
129055	(c-state-full-pp-to-literal): Widen around the functionality.
129056	(c-parse-ps-state-below): Correct the order of save-excursion and
129057	save-restriction.
129058
1290592016-08-04  Stefan Monnier  <monnier@iro.umontreal.ca>
129060
129061	Fix Bug#24149
129062
129063	* lisp/subr.el (set-transient-map): Don't wait if MAP not present in
129064	overriding-terminal-local-map.  (Bug#24149)
129065
1290662016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
129067
129068	Update from gnulib
129069
129070	This incorporates:
129071	2016-07-03 mktime: call tzset as per POSIX
129072	* doc/misc/texinfo.tex, lib/mktime.c, m4/mktime.m4:
129073	Copy from gnulib.
129074
1290752016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
129076
129077	Fix GnuTLS includes
129078
129079	* src/gnutls.c [HAVE_GNUTLS]: Don’t include gnutls/gnutls.h
129080	a second time; although it doesn’t hurt, it’s not needed.
129081	* src/sysdep.c [!HAVE_GNUTLS]: Don’t include gnutls/crypto.h,
129082	as it may not be available.  Problem reported by Glenn Morris in:
129083	https://lists.gnu.org/r/emacs-devel/2016-08/msg00100.html
129084
1290852016-08-03  Michal Nazarewicz  <mina86@mina86.com>
129086
129087	Fix accessing regex-resources in out-of-tree test runs in regex-tests
129088
129089	[82a487d: Fix reading of regex-resources in regex-tests] attempted to
129090	fix regex-tests failing when run from the source tree (i.e. via make)
129091	by hard-coding path to regex-resources directory relative to the test
129092	directory.
129093
129094	This fixed runs from the tree but broke the test when run using other
129095	methods.
129096
129097	Fix by trying ‘load-file-name’ or ‘buffer-file-name’, whichever is set.
129098
129099	* test/src/regex-tests.el (regex-tests--resources-dir): New variable
129100	storing path to the regex-resources directory.
129101	(regex-tests-generic-line): Use aforementioned variable.
129102
1291032016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
129104
129105	Simplify by assuming GnuTLS 2.12.2 or later
129106
129107	* src/gnutls.c (gnutls_certificate_details):
129108	* src/sysdep.c: Assume GnuTLS 2.12.2 or later.
129109
1291102016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
129111
129112	Port to systems lacking GNUTLS_NONBLOCK
129113
129114	Problem reported by Colin Baxter in:
129115	https://lists.gnu.org/r/emacs-devel/2016-08/msg00096.html
129116	* src/gnutls.c (Fgnutls_boot): Don’t assume GNUTLS_NONBLOCK is defined.
129117
1291182016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
129119
129120	Fix non-blocking GnuTLS with slow connection
129121
129122	Although the problem is reported for OS X (Bug#23982), it seems to
129123	be possible on other POSIXish platforms.
129124	* src/gnutls.c (emacs_gnutls_nonblock_errno) [!WINDOWSNT]:
129125	New function.
129126	(emacs_gnutls_handshake) [!WINDOWSNT]:
129127	Use it as the errno function, if non-blocking.
129128	(Fgnutls_boot): Use GNUTLS_NONBLOCK if non-blocking.
129129
1291302016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
129131
129132	Require GnuTLS 2.12.2 or later
129133
129134	* configure.ac, etc/NEWS: Require GnuTLS 2.12.2 or later,
129135	instead of merely 2.6.6 or later (Bug#23982#20).
129136	* src/gnutls.c (init_gnutls_functions, emacs_gnutls_handshake)
129137	[WINDOWSNT]: Don’t bother with gnutls_check_version or
129138	gnutls_transport_set_lowat, as they are no longer needed now that
129139	we require gnutls 2.12.2 or later.
129140
1291412016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
129142
129143	* src/window.c (sanitize_window_sizes): Remove unused arg `frame'
129144
129145	* src/window.h (sanitize_window_sizes): Adjust prototype.
129146	* src/frame.c (adjust_frame_size): Adjust calls.
129147
1291482016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
129149
129150	Fix (mapcar F S) crash when F alters S’s length
129151
129152	* src/fns.c (mapcar1): Return number of elements computed,
129153	which can be less than LENI if the function alters the list.
129154	All callers changed.  (Bug#24118)
129155
1291562016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
129157
129158	Port window changes to --enable-gcc-warnings
129159
129160	* src/window.c (sanitize_window_sizes): Return void.
129161	This pacifies GCC, and no caller uses the return value anyway.
129162
1291632016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
129164
129165	* src/window.c: Fix bootstrap failure due to window.el changes
129166
129167	(sanitize_window_sizes): Adjust to new calling convention of
129168	window--sanitize-window-sizes and only call it if defined.
129169	(Fwindow__sanitize_window_sizes): Remove.
129170	(syms_of_window): Don't defsubr it.
129171
1291722016-08-02  Michael Albinus  <michael.albinus@gmx.de>
129173
129174	Fix Bug#23883
129175
129176	* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
129177	Call `process-actions' with adapted position.  The connection
129178	buffer might have been cleaned up already.  (Bug#23883)
129179
1291802016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
129181
129182	Port regex changes to strict ISO C
129183
129184	* src/regex.c (regex_compile): Redo casts.
129185
1291862016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
129187
129188	* lisp/window.el: Use lexical-binding
129189
129190	(window--min-size-ignore-p): Remove unused arg `horizontal'.
129191	(window--sanitize-window-sizes): Remove unused arg `frame'.
129192	(window-edges): Remove unused vars left-off and right-off.
129193	(display-buffer-reuse-mode-window): Remove unused var `frame?'.
129194	Avoid extraneous setq and do a bit of CSE.
129195	(fit-frame-to-buffer): Remove unused vars `window', `fit-width',
129196	and `toolbar-extra-height'.
129197	(window-adjust-process-window-size): Remove unused arg `process'.
129198
1291992016-08-02  Michal Nazarewicz  <mina86@mina86.com>
129200
129201	Fix unused lexical variable
129202
129203	This fixes the following warning:
129204
129205	    In toplevel form:
129206	    src/regex-tests.el:416:1:Warning: Unused lexical variable ‘newline’
129207
129208	* test/src/regex-tests.el (regex-tests-BOOST): Remove unused lexical
129209	variable.
129210
1292112016-08-02  Michal Nazarewicz  <mina86@mina86.com>
129212
129213	Remove unused STREQ macro
129214
129215	This fixes the following compilation warning:
129216
129217	    regex.c:516:0: warning: macro "STREQ" is not used [-Wunused-macros]
129218	     #define STREQ(s1, s2) ((strcmp (s1, s2) == 0))
129219	     ^
129220
129221	* src/regex.c (STREQ): Remove unused macro.  It should have been removed
129222	in a [4538a5e: Refactor regex character class parsing in [:name:]]
129223	commit but was mistakenly left out.
129224
1292252016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
129226
129227	* lisp/emacs-lisp/cl-generic.el: Fix problems introduced by new
129228	load-history format
129229
129230	* lisp/emacs-lisp/cl-generic.el (cl--generic-load-hist-format): New function.
129231	(cl-generic-define-method, cl--generic-describe): Use it.
129232	(cl--generic-search-method): Adjust for new format.
129233
129234	* lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
129235	* test/lisp/progmodes/elisp-mode-tests.el:
129236	Use cl--generic-load-hist-format rather than hard-coding cl-generic's
129237	internal format.
129238
1292392016-08-02  Michal Nazarewicz  <mina86@mina86.com>
129240
129241	Hardcode regex syntax to remove dead code handling different syntax
129242
129243	Emacs only ever uses its own regex syntax so support for other syntaxes
129244	is never used.  Hardcode the syntax so that the compilar can detect such
129245	dead code and remove it from compiled code.
129246
129247	The only exception is RE_NO_POSIX_BACKTRACKING which can be separatelly
129248	specified.  Handle this separatelly with a function argument (replacing
129249	now unnecessary syntax argument).
129250
129251	With this patchset, size of Emacs binary on x86_64 machine is reduced by
129252	around 60 kB:
129253
129254		new-sizes:-rwx------ 3 mpn eng 30254720 Jul 27 23:31 src/emacs
129255		old-sizes:-rwx------ 3 mpn eng 30314828 Jul 27 23:29 src/emacs
129256
129257	* src/regex.h (re_pattern_buffer): Don’t define syntax field #ifdef emacs.
129258	(re_compile_pattern): Replace syntax with posix_backtracking argument.
129259
129260	* src/regex.c (print_compiled_pattern): Don’t print syntax #ifdef emacs.
129261	(regex_compile): #ifdef emacs, replace syntax argument with
129262	posix_backtracking which is now used instead of testing for
129263	RE_NO_POSIX_BACKTRACKING syntax.
129264	(re_match_2_internal): Don’t access bufp->syntax #ifndef emacs.
129265	(re_compile_pattern): Replace syntax with posix_backtracking argument.
129266
129267	* src/search.c (compile_pattern_1): Pass boolean posix_backtracking
129268	instead of syntax to re_compile_pattern.
129269
1292702016-08-02  Michal Nazarewicz  <mina86@mina86.com>
129271
129272	Get rid of re_set_whitespace_regexp
129273
129274	* src/regex.h (re_set_whitespace_regexp): Delete.
129275	(re_compile_pattern): Add whitespace_regexp argument #ifdef emacs.
129276
129277	* src/regex.c (re_set_whitespace_regexp, whitespace_regexp): Delete.
129278	(regex_compile): Add whitespace_regexp argument #ifdef emacs and wrap
129279	whitespace_regexp-related code in an #ifdef emacs so it’s compiled out
129280	unless building Emacs.
129281	(re_compile_pattern): Pass whitespace_regexp argument to regex_compile
129282
129283	* src/search.c (compile_pattern_1): Don’t use re_set_whitespace_regexp,
129284	pass the regex as argument to re_compile_pattern instead.
129285
1292862016-08-02  Michal Nazarewicz  <mina86@mina86.com>
129287
129288	Get rid of re_set_syntax
129289
129290	Instead of using a global variable for storing regex syntax, pass it
129291	to re_compile_pattern.  This is only enabled when compiling Emacs (i.e.
129292	‘#ifdef emacs’).
129293
129294	* src/regex.h (re_set_syntax): Declare only #ifndef emacs.
129295	(re_compile_pattern): Now takes syntax argument #ifdef emacs.
129296
129297	* src/regex.c (re_syntax_options): Define only #ifndef emacs.
129298	(re_compile_pattern): Use the new syntax argument #ifdef emacs.
129299
129300	* src/search.c (compile_pattern_1): Don’t use re_set_syntax and
129301	instead pass syntax to re_compile_pattern directly.
129302
1293032016-08-02  Michal Nazarewicz  <mina86@mina86.com>
129304
129305	Remove dead opcodes in regex bytecode
129306
129307	There is no way to specify before_dot and after_dot opcodes in a regex
129308	so code handling those ends up being dead.  Remove it.
129309
129310	* src/regex.c (print_partial_compiled_pattern, regex_compile,
129311	analyze_first, re_match_2_internal): Remove handling and references to
129312	before_dot and after_dot opcodes.
129313
1293142016-08-02  Michal Nazarewicz  <mina86@mina86.com>
129315
129316	Refactor regex character class parsing in [:name:]
129317
129318	re_wctype function is used in three separate places and in all of
129319	those places almost exact code extracting the name from [:name:]
129320	surrounds it.  Furthermore, re_wctype requires a NUL-terminated
129321	string, so the name of the character class is copied to a temporary
129322	buffer.
129323
129324	The code duplication and unnecessary memory copying can be avoided by
129325	pushing the responsibility of parsing the whole [:name:] sequence to
129326	the function.
129327
129328	Furthermore, since now the function has access to the length of the
129329	character class name (since it’s doing the parsing), it can take
129330	advantage of that information in skipping some string comparisons and
129331	using a constant-length memcmp instead of strcmp which needs to take
129332	care of NUL bytes.
129333
129334	* src/regex.c (re_wctype): Delete function.  Replace it with:
129335	(re_wctype_parse): New function which parses a whole [:name:] string
129336	and returns a RECC_* constant or -1 if the string is not of [:name:]
129337	format.
129338	(regex_compile): Use re_wctype_parse.
129339	* src/syntax.c (skip_chars): Use re_wctype_parse.
129340
1293412016-08-02  Michal Nazarewicz  <mina86@mina86.com>
129342
129343	Split regex glibc test cases into separet tests
129344
129345	* test/src/regex-tests.el (regex-tests): Remove and split into multiple
129346	tests cases.
129347	(regex-tests-glbic-BOOST, regex-tests-glibc-PCRE,
129348	regex-tests-glibc-PTESTS, regex-tests-glibc-TESTS): New test cases split
129349	from ‘regex-tests’.
129350
1293512016-08-02  Michal Nazarewicz  <mina86@mina86.com>
129352
129353	Don’t (require 'cl)
129354
129355	* test/src/regex-tests.el: Don’t (require 'cl).
129356	(regex-tests-PCRE): s/loop/cl-loop/
129357
1293582016-08-02  Michal Nazarewicz  <mina86@mina86.com>
129359
129360	Fix reading of regex-resources in regex-tests
129361
129362	* test/src/regex-tests.el (regex-tests-generic-line): Referring to
129363	‘buffer-file-name’ does not work when running the test from command
129364	line, i.e. via make, which results in (wrong-type-argument stringp nil)
129365	failures.  Replace it with hard-coded path.
129366	(regex-tests-BOOST, regex-tests-PCRE, regex-tests-PTESTS-whitelist,
129367	regex-tests-TESTS-whitelist): ‘regex-tests-generic-line’ now  includes
129368	the ‘regex-resources’ path component so the tests don’t need to specify
129369	it explicitly.
129370
1293712016-08-02  Dima Kogan  <dima@secretsauce.net>
129372
129373	Added driver for the regex tests
129374
129375	* test/src/regex-tests.el (regex-tests): Test executing glibc tests
129376	cases.
129377
129378	[mina86@mina86.com: merged test with existing file]
129379
1293802016-08-02  Dima Kogan  <dima@secretsauce.net>
129381
129382	New regex tests imported from glibc 2.21
129383
129384	* test/src/regex-resources/BOOST.tests:
129385	* test/src/regex-resources/PCRE.tests:
129386	* test/src/regex-resources/PTESTS:
129387	* test/src/regex-resources/TESTS:
129388	New test data files
129389
129390	[mina86@mina86.com: Moved files from test/src/regex/* to test/src/*.]
129391
1293922016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
129393
129394	Fix use-after-close in connect_network_socket
129395
129396	* src/process.c (connect_network_socket):
129397	Reverse sense of previous fix.  Problem reported by Ken Brown in:
129398	https://lists.gnu.org/r/emacs-devel/2016-08/msg00004.html
129399
1294002016-08-01  Glenn Morris  <rgm@gnu.org>
129401
129402	* lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
129403	Respect autoload-timestamps for "actual autoloads are elsewhere" case.
129404
1294052016-07-31  Stefan Merten  <stefan@merten-home.de>
129406
129407	* lisp/textmodes/rst.el: Major refactoring, minor changes, minor fixes
129408
129409	(rst-Ado, rst-Hdr, rst-Ttl, rst-Stn): Introduce classes
129410	representing reStructuredText section header concepts.
129411	(rst-mode-map, rst-new-preferred-hdr)
129412	(rst-update-section, rst-classify-adornment)
129413	(rst-ttl-at-point, rst-all-ttls-cache)
129414	(rst-hdr-hierarchy-cache, rst-reset-section-caches)
129415	(rst-all-ttls, rst-infer-hdr-hierarchy, rst-hdr-hierarchy)
129416	(rst-all-ttls-with-level, rst-get-previous-hdr)
129417	(rst-adornment-complete-p, rst-next-hdr, rst-adjust)
129418	(rst-adjust-section, rst-promote-region)
129419	(rst-display-hdr-hierarchy, rst-straighten-sections)
129420	(rst-all-stn, rst-remaining-stn, rst-toc-insert)
129421	(rst-toc-insert-node, rst-toc-node, rst-toc)
129422	(rst-forward-section, rst-adornment-level)
129423	(rst-font-lock-handle-adornment-pre-match-form)
129424	(rst-imenu-convert-cell, rst-imenu-create-index): Refactor
129425	using classes.
129426	(rst-compare-adornments, rst-get-adornment-match): Remove
129427	functions now in classes.
129428	(rst-re-alist-def, rst-toc-mode)
129429	(rst-font-lock-extend-region-extend): Minor improvements.
129430	(rst-mode, rst-compile): Use `setq-local'.
129431	(rst-cvs-header, rst-svn-rev, rst-svn-timestamp)
129432	(rst-official-version, rst-official-cvs-rev)
129433	(rst-package-emacs-version-alist): Maintain version tags.
129434
1294352016-07-30  Martin Rudalics  <rudalics@gmx.at>
129436
129437	Fix calculation of tool bar width reported by `frame-geometry' (Bug#24107)
129438
129439	* src/w32fns.c (Fw32_frame_geometry): Fix calculation of tool
129440	bar width (Bug#24107).  Reindent.
129441	* src/xfns.c (frame_geometry): Fix calculation of tool bar
129442	width on non-GTK builds.
129443
1294442016-07-30  Eli Zaretskii  <eliz@gnu.org>
129445
129446	Fix region display while dragging mouse
129447
129448	* lisp/mouse.el (mouse-drag-track): Reset deactivate-mark in the
129449	buffer of the drag event, to allow mark to be set and the region
129450	be shown as we drag the mouse.  (Bug#24030)
129451
1294522016-07-30  Tino Calancha  <tino.calancha@gmail.com>
129453
129454	Copy just non-empty strings to kill-ring
129455
129456	* lisp/dired.el (dired-copy-filename-as-kill):
129457	Do not change the kill ring when the string is empty (Bug#24103).
129458
1294592016-07-30  Eli Zaretskii  <eliz@gnu.org>
129460
129461	Avoid warnings about undo list while decoding
129462
129463	* src/coding.c (coding_restore_undo_list): New function.
129464	(decode_coding_gap, decode_coding_object): Temporarily set the
129465	buffer's undo list to t, to avoid warnings when decoding changes
129466	the buffer many times, e.g. due to post-read-conversion.  Use
129467	coding_restore_undo_list to make sure the undo list is restored.
129468	(Bug#23813)
129469
1294702016-07-28  Noam Postavsky  <npostavs@gmail.com>
129471
129472	profiler: Add mouse-1 binding for tree expansion
129473
129474	(profiler-report-mode-map): Add mouse-1 binding for
129475	profiler-report-toggle-entry (Bug #13455).
129476
1294772016-07-28  Vincent Belaïche  <vincentb1@users.sourceforge.net>
129478
129479	Enable addition of local printers from a mode hook.
129480
129481	* doc/misc/ses.texi (Printer functions): Split the node into 5
129482	sub-nodes + add some extra documentation.
129483	(Various kinds of printer functions): Make an itemization to
129484	disintguish better the 3 types of printers, give an example of
129485	lambda printer definition.
129486	(Standard printer functions): Add documentation for ses-prin1
129487	printer function.
129488	(Local printer functions): Add documentation for creating
129489	local printers programmatically from a hook.
129490	(Writing a lambda printer function): Add documentation about
129491	anti-stackoverflow precautions to take when you call the
129492	standard printer functions from inside a local printer.
129493
129494	* lisp/ses.el (ses-standard-printer-functions): Add ses-prin1
129495	among standard printer function, and update docstring
129496	accordingly.
129497	(ses-call-printer, ses-export-tab): Call `ses-prin1' instead
129498	of prin1-to-string.
129499	(ses-define-local-printer): Add definition to arguments so
129500	that a local printer can be defined programmatically from a
129501	mode hook.  Make docstring more substantial.  Use completing
129502	read for local printer name input.  Plus some minor
129503	optimization.
129504	(ses-define-if-new-local-printer): New defsubst.
129505	(ses-center, ses-center-span, ses-dashfill)
129506	(ses-dashfill-span, ses-tildefill-span): Allow to pass printer
129507	as an optional argument to superseed column printer/default
129508	spreadsheet printer.
129509	(ses-prin1): New defun.
129510
1295112016-07-27  Ted Zlatanov  <tzz@lifelogs.com>
129512
129513	Prompt to save gnus-cloud-method.
129514
129515	Since `gnus-cloud-method' is a defcustom, when it's set, we should
129516	prompt the user to save it, so the customization is not lost on
129517	restart.
129518
129519	* lisp/gnus/gnus-srvr.el (gnus-server-toggle-cloud-method-server):
129520	Prompt to save the customization of `gnus-cloud-method'.
129521
1295222016-07-27  Ken Brown  <kbrown@cornell.edu>
129523
129524	Fix dired-test-bug22694
129525
129526	* test/lisp/dired-tests.el (dired-test-bug22694): Delete the
129527	"bug22694" directory, if it exists, before running the test.  It
129528	might be left over from a previous aborted run of the test.
129529
1295302016-07-27  Michal Nazarewicz  <mina86@mina86.com>
129531
129532	Fix ‘is multibyte’ test regex.c’s mutually_exclusive_p (bug#24020)
129533
129534	* src/regex.c (mutually_exclusive_p): Fix how whether character is
129535	unibyte is tested when calling execute_charset function.  This bug has
129536	been introduced by [6dc6b00: Fix ‘[[:cc:]]*literal’ regex failing to
129537	match ‘literal’] which dropped a call to IS_REAL_ASCII (c) macro.
129538	Reinstitute it.
129539
1295402016-07-27  Tino Calancha  <tino.calancha@gmail.com>
129541
129542	Remove hook when disabling ibuffer-auto-mode
129543
129544	* lisp/ibuf-ext.el (ibuffer-auto-mode):
129545	Remove 'ibuffer-auto-update-changed' from 'post-command-hook'.
129546
1295472016-07-26  Stefan Monnier  <monnier@iro.umontreal.ca>
129548
129549	* lisp/subr.el (cancel-change-group): Reset cell in case of error
129550
129551	Since the setcdr/setcdr is supposed to be temporary, use unwind-protect
129552	to make sure we properly undo the temporary change even in case of error.
129553
1295542016-07-26  Eli Zaretskii  <eliz@gnu.org>
129555
129556	Avoid segfaults in compute_motion
129557
129558	* src/indent.c (compute_motion): Don't turn on and don't use the
129559	width cache unless the buffer's width-table is non-nil.  This
129560	avoids segfaults because code that uses the width cache assumes
129561	the width-table exists.  (Bug#24064)
129562
1295632016-07-26  Nicolas Petton  <nicolas@petton.fr>
129564
129565	Do not sharp-quote lambdas
129566
129567	* lisp/progmodes/sql.el: Remove sharp-quotes in lambdas.
129568
1295692016-07-25  Ted Zlatanov  <tzz@lifelogs.com>
129570
129571	* lisp/gnus/gnus-cloud.el (gnus-cloud-encode-data): Fix
129572	'base64-gzip encoding.
129573
1295742016-07-25  Andrew Hyatt  <ahyatt@gmail.com>
129575
129576	Add warning to format-alist docs.
129577
129578	*/doc/lispref/files.texi (format-alist) Change documentation for
129579	format-alist to warn against file modifications when formatting, which
129580	leads to incorrect results.  (Bug#5440)
129581
129582	Changes suggested by Eli.
129583
1295842016-07-25  Katsumi Yamaoka  <yamaoka@jpl.org>
129585
129586	* lisp/gnus/mm-decode.el (mm-convert-shr-links):
129587	Preserve key bindings that shr adds (bug#23964).
129588
1295892016-07-25  Michal Nazarewicz  <mina86@mina86.com>
129590
129591	Fix ‘[[:cc:]]*literal’ regex failing to match ‘literal’ (bug#24020)
129592
129593	The regex engine tries to optimize Kleene star by avoiding backtracking
129594	when it can detect that star’s operand cannot match what follows it in
129595	the pattern.
129596
129597	For example, when ‘[[:alpha:]]*1’ tries to match a ‘foo’, the engine
129598	will test the longest match for ‘[[:alpha:]]*’, namely ’foo’ which is
129599	the entire string.  Literal digit one still present in the pattern will
129600	however not match the remaining empty string.
129601
129602	Normally, backtracking would be performed trying a shorter match for the
129603	character class (namely ‘fo’ leaving ‘o’ in the string), but since the
129604	engine knows whatever would be put back into the string cannot possibly
129605	match literal digit one so no backtracking will be attempted.
129606
129607	In the regexes of the form ‘[[:CC:]]*X’, the optimization can be applied
129608	if the character class CC does not match character X.  In the above
129609	example, this holds because digit one is not in alpha character class.
129610
129611	This test is performed by mutually_exclusive_p function but it did not
129612	check class bits of a charset opcode.  This resulted in an assumption
129613	that character classes do not match multibyte characters.  For example,
129614	it would incorrectly conclude that [[:alpha:]] doesn’t match ‘ż’.
129615
129616	This, in turn, led to the aforementioned Kleene star optimization being
129617	incorrectly applied in patterns such as ‘[[:graph:]]*☠’ (which should
129618	match ‘☠’ but doesn’t as can be tested by executing
129619	    (string-match-p "[[:graph:]]*☠" "☠")
129620	which should return 0 but instead yields nil.
129621
129622	This issue affects any class witch matches multibyte characters, i.e.
129623	if ‘[[:cc:]]’ matches a multibyte character X then ‘[[:cc:]]*X’ will
129624	fail to match ‘X’.
129625
129626	* src/regex.c (executing_charset): A new function for executing the
129627	charset and charset_not opcodes.  It performs check on the character
129628	taking into consideration existing bitmap, range table and class bits.
129629	It also advances the pointer in the regex bytecode past the parsed
129630	opcode.
129631	(CHARSET_LOOKUP_RANGE_TABLE_RAW, CHARSET_LOOKUP_RANGE_TABLE): Removed.
129632	Code now included in executing_charset.
129633	(mutually_exclusive_p, re_match_2_internal): Changed to take advantage
129634	of executing_charset function.
129635
129636	* test/src/regex-tests.el: New file with tests for the character class
129637	matching.
129638
1296392016-07-25  Nicolas Petton  <nicolas@petton.fr>
129640
129641	Fix auto-reverting image-mode buffer (bug#21598)
129642
129643	When auto-reverting an image buffer, `image-mode' is not called since
129644	`revert-buffer' is called with `preserve-modes' set to non-nil.
129645
129646	* lisp/image-mode.el (image-after-revert-hook): Check if there is an
129647	image display property for the current buffer before updating it.
129648
1296492016-07-24  Paul Eggert  <eggert@cs.ucla.edu>
129650
129651	‘signal’ no longer returns
129652
129653	Although for decades ‘signal’ has been documented to not return,
129654	a corner case in the Lisp debugger causes ‘signal’ to return.
129655	Remove the corner case and adjust Emacs internals accordingly.
129656	An alternative would be to document the corner case, but this
129657	would complicate the Lisp API unnecessarily.  (Bug#24047)
129658	* src/eval.c (signal_or_quit): New function, with most of the
129659	old contents of Fsignal.
129660	(quit): New function, which uses signal_or_quit and which
129661	might return.  All keyboard-based callers of Fsignal (Qquit,
129662	Qnil) changed to use this new function instead.
129663	(Fsignal): Use signal_or_quit.  Now _Noreturn.  All callers
129664	changed.
129665	(xsignal): Move to lisp.h.
129666	* src/lisp.h (xsignal): Now an inline function, as it's now
129667	just an alias for Fsignal.
129668
1296692016-07-24  Paul Eggert  <eggert@cs.ucla.edu>
129670
129671	Require libgnutls unless --with-gnutls=no
129672
129673	* configure.ac: Report an error if the gnutls library is missing,
129674	unless --with-gnutls=no is specified.
129675
1296762016-07-23  Alan Mackenzie  <acm@muc.de>
129677
129678	Fontify C++ parameter packs.
129679
129680	This fixes debbugs #23610.
129681
129682	* lisp/progmodes/cc-langs.el (c-pack-ops, c-pack-key): New
129683	c-lang-defconsts/defvars.
129684	(c-type-decl-prefix-key): Add "..." and "&&" into the C++ version.
129685
129686	* lisp/progmodes/cc-engine.el (c-forward-type): Handle matches of c-pack-key.
129687
1296882016-07-23  Alan Mackenzie  <acm@muc.de>
129689
129690	Java Mode: Handle strings as case labels correctly.
129691
129692	This fixes debbugs #23901.
129693
129694	* lisp/progmodes/cc-langs.el (c-nonlabel-token-key): Remove "\"" from the
129695	Java value.
129696
1296972016-07-22  Kaushal Modi  <kaushal.modi@gmail.com>
129698
129699	Avoid repeated warnings while restoring desktop
129700
129701	* lisp/desktop.el (desktop-restore-file-buffer): Do not print warnings
129702	when files are being opened during desktop restore.
129703
1297042016-07-22  Eli Zaretskii  <eliz@gnu.org>
129705
129706	Fix compilation warning in the MinGW build
129707
129708	* nt/inc/ms-w32.h: Include stdint.h.
129709	(_execvp, execve): Provide prototypes.
129710
129711	* lib-src/emacsclient.c [WINDOWSNT]: Remove prototype for execvp,
129712	it is now in nt/inc/ms-w32.h.
129713	* lib-src/ntlib.c (getppid): Avoid compiler warnings due to format
129714	mismatch.
129715	(sys_ctime): Remove, not used.
129716
1297172016-07-22  Lars Ingebrigtsen  <larsi@gnus.org>
129718
129719	Move read-multiple-choice to subr-x.el
129720
129721	* lisp/faces.el (read-multiple-choice-face): Fix doc string.
129722
129723	* lisp/emacs-lisp/subr-x.el (read-multiple-choice): Move here
129724	from subr.el.
129725
129726	* lisp/gnus/message.el (subr-x): Ditto.
129727
129728	* lisp/net/nsm.el: Require subr-x for read-multiple-choice.
129729
129730	read-multiple-choice doesn't need to be in the dumped Emacs, so move
129731	it to a less central file.
129732
1297332016-07-22  Tino Calancha  <tino.calancha@gmail.com>
129734
129735	Update define-ibuffer-op doc string
129736
129737	* lisp/ibuf-macs.el (define-ibuffer-op):
129738	Mention that BODY is evaluated with 'buf' bound to the actual
129739	marked buffer being processed.
129740
1297412016-07-22  Tino Calancha  <tino.calancha@gmail.com>
129742
129743	Update define-ibuffer-op doc string
129744
129745	* lisp/ibuf-macs.el (define-ibuffer-op): Document arg COMPLEX
129746	instead of refer the reader to the source code.
129747	Document arg BODY.
129748
1297492016-07-21  Tino Calancha  <tino.calancha@gmail.com>
129750
129751	Fix shell-command[-on-region] doc strings
129752
129753	* lisp/simple.el (shell-command, shell-command-on-region):
129754	Drop the sentence saying that the command may delete the buffer
129755	'*Shell Command Output*': the command never delete such
129756	buffer (Bug#23936).
129757
1297582016-07-21  Mark Oteiza  <mvoteiza@udel.edu>
129759
129760	;Revert ";Partially revert 2649105a"
129761
129762	This reverts commit b7651649c2b1321a0c510116c1ac2442599d9a2e.
129763
1297642016-07-21  Mark Oteiza  <mvoteiza@udel.edu>
129765
129766	;Partially revert 2649105a
129767
129768	* lisp/textmodes/tex-mode.el (tex-common-initialization): Use
129769	setq-local to modify prettify-symbols-compose-predicate.
129770
1297712016-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
129772
129773	* src/bytecode.c: Fix compilation with BYTE_CODE_SAFE
129774
129775	(struct byte_stack): Re-add `bottom'.
129776	(exec_byte_code): Initialize it.
129777
1297782016-07-21  Tino Calancha  <tino.calancha@gmail.com>
129779
129780	Ibuffer: Use default output buffer for shell commands
129781
129782	* lisp/ibuf-ext.el (shell-command-pipe): Insert the output in buffer
129783	'*Shell Command Output*', as command 'shell-command-file'.
129784
1297852016-07-21  Tino Calancha  <tino.calancha@gmail.com>
129786
129787	Fix failing test
129788
129789	* test/lisp/erc/erc-track-tests.el (erc-track--erc-faces-in):
129790	Enable Font Lock mode in order to initialize
129791	'char-property-alias-alist' (Bug#23954).
129792
1297932016-07-21  Paul Eggert  <eggert@cs.ucla.edu>
129794
129795	Fix use-after-close in connect_network_socket
129796
129797	* src/process.c (connect_network_socket): Don’t use
129798	external_sock_fd after closing it.  Problem found by Coverity Scan.
129799
1298002016-07-21  Katsumi Yamaoka  <yamaoka@jpl.org>
129801
129802	* lisp/net/shr.el (shr-fill-line):
129803	Preserve text properties in folded lines (bug#24034).
129804
1298052016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
129806
129807	Fix lifetime bug in tzlookup
129808
129809	* src/editfns.c (tzlookup): Fix storage lifetime bug when
129810	INTEGERP (zone) && settz.  Problem found by Coverity Scan.
129811
1298122016-07-20  Lars Ingebrigtsen  <larsi@gnus.org>
129813
129814	Fix shr.el/image build problem
129815
129816	(Bug#24035)
129817
129818	* lisp/net/shr.el: Require image, since some builds seem to
129819	break without it (bug#24035).
129820
1298212016-07-20  Ted Zlatanov  <tzz@lifelogs.com>
129822
129823	Bring the Gnus Cloud package into working order.
129824
129825	* lisp/gnus/gnus-sync.el: Removed in favor of gnus-cloud.el.
129826
129827	* lisp/gnus/gnus-cloud.el: Autoload EPG functions. Change storage format to
129828	simplify non-file data.
129829	(gnus-cloud-storage-method): New defcustom to support nil, Base64,
129830	Base64+gzip, or EPG encoding on the Gnus Cloud IMAP server. Defaults to
129831	EPG if that's available, Base64+gzip otherwise.
129832	(gnus-cloud-interactive): New defcustom to make Gnus Cloud operations
129833	interactive, defaults to enabled.
129834	(gnus-cloud-group-name): New variable for the Gnus Cloud group name.
129835	(gnus-cloud-make-chunk): Tag with "Gnus-Cloud-Version" instead of just
129836	"Version".
129837	(gnus-cloud-insert-data): Simplify and support :newsrc-data entries.
129838	(gnus-cloud-encode-data, gnus-cloud-decode-data): Support various
129839	storage methods as per gnus-cloud-storage-method.
129840	(gnus-cloud-parse-chunk): Look for "Gnus-Cloud-Version" marker.
129841	(gnus-cloud-parse-version-1): Fix parsing loop bug. Handle :newsrc-data
129842	entries.
129843	(gnus-cloud-update-all): Handle :newsrc-data entries and dispatch to
129844	file and data handlers.
129845	(gnus-cloud-update-newsrc-data): New function to handle :newrsc-data
129846	entries.
129847	(gnus-cloud-update-file): Rework to support gnus-cloud-interactive and
129848	be more careful.
129849	(gnus-cloud-delete-file): Remove; merged into gnus-cloud-update-file.
129850	(gnus-cloud-file-covered-p, gnus-cloud-all-files)
129851	(gnus-cloud-files-to-upload, gnus-cloud-ensure-cloud-group)
129852	(gnus-cloud-add-timestamps, gnus-cloud-available-chunks)
129853	(gnus-cloud-prune-old-chunks): Fix indentation.
129854	(gnus-cloud-timestamp): New function to make a standard Gnus Cloud
129855	timestamp.
129856	(gnus-cloud-file-new-p): Use it.
129857	(gnus-cloud-upload-all-data): Add interactive convenience function to
129858	upload all data.
129859	(gnus-cloud-upload-data): Make interactive; collect files and newsrc
129860	data separately; refresh Gnus Cloud group after insert.
129861	(gnus-cloud-download-all-data): Add interactive convenience function to
129862	download all data.
129863	(gnus-cloud-download-data): Rework to support "Gnus-Cloud-Version"
129864	marker and different storage methods.
129865	(gnus-cloud-host-server-p): New function to check if a server is the
129866	Gnus Cloud host.
129867	(gnus-cloud-collect-full-newsrc): Tag entries with :newsrc-data.
129868	(gnus-cloud-host-acceptable-method-p): New function so
129869	other code can check if a server method can host the Gnus cloud.
129870	(gnus-cloud-storage-method): Use 'radio instead of 'choice for better UI.
129871	(gnus-cloud-method): Make this a defcustom and note how to set it.
129872
129873	* lisp/gnus/gnus-group.el (gnus-group-cloud-map): Add Gnus Cloud autoloaded
129874	keybindings under the `~' prefix.
129875
129876	* lisp/gnus/gnus-srvr.el (gnus-server-mode-map, gnus-server-make-menu-bar)
129877	(gnus-server-cloud, gnus-server-cloud-host)
129878	(gnus-server-font-lock-keywords, gnus-server-insert-server-line)
129879	(gnus-server-toggle-cloud-method-server): Support Gnus Cloud
129880	synchronized servers and synchronization host server toggling (`i' and
129881	`I') and visual display.
129882	(gnus-server-toggle-cloud-method-server): Use
129883	gnus-cloud-host-acceptable-method-p.
129884	(gnus-server-toggle-cloud-method-server): Use custom-set-variables to
129885	set the gnus-cloud-method. Ask the user if it's OK to upload the data
129886	right now.
129887
129888	* doc/misc/gnus.texi: Document Gnus Cloud package.
129889
1298902016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
129891
129892	Remove CHECK_FRAME_FONT cruft from bytecode.c
129893
129894	* src/bytecode.c [CHECK_FRAME_FONT]: Do not include frame.h, xterm.h.
129895	Remove some old ‘#if 0’ code.
129896
1298972016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
129898
129899	Work around GCC bug 54561 in a better way
129900
129901	The new approach is less selective, but also less intrusive on C code.
129902	* src/bytecode.c, src/image.c, src/keyboard.c: Ignore -Wclobbered.
129903	* src/conf_post.h (NONVOLATILE): Remove.  All uses removed.
129904
1299052016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
129906
129907	Fix port to glibc 2.24 (pre-release) + ppc64
129908
129909	* src/callproc.c (child_setup): Use emacs_exec_file
129910	so that ASLR is enabled in the child process.
129911	* src/emacs.c: Move some personality details into sys/sysdep.c.
129912	Do not include <sys/personality.h>.
129913	(main): Disable ASLR earlier, so that we don’t chdir twice.
129914	* src/lisp.h (disable_address_randomization): New decl.
129915	* src/sysdep.c (disable_address_randomization)
129916	[HAVE_PERSONALITY_ADDR_NO_RANDOMIZE]: Move personality details
129917	here from emacs.c.
129918	(emacs_exec_file): New function.
129919
1299202016-07-19  Alan Third  <alan@idiocy.org>
129921
129922	Prevent bar cursor overwriting next glyph (bug#16856)
129923
129924	* src/nsterm.m (ns_draw_window_cursor): Test glyph width vs cursor width
129925	before setting final size.
129926
1299272016-07-19  Eli Zaretskii  <eliz@gnu.org>
129928
129929	Fix 'transpose-regions' when LEAVE-MARKERS arg is non-nil
129930
129931	* src/insdel.c (adjust_markers_bytepos): New function.
129932	* src/lisp.h (adjust_markers_bytepos): Add prototype.
129933	* src/insdel.c (replace_range, replace_range_2):
129934	* src/editfns.c (Ftranspose_regions): Call
129935	adjust_markers_bytepos.  (Bug#5131)
129936
129937	* test/src/editfns-tests.el (transpose-test-reverse-word)
129938	(transpose-test-get-byte-positions): New functions.
129939	(transpose-ascii-regions-test)
129940	(transpose-nonascii-regions-test-1)
129941	(transpose-nonascii-regions-test-2): New tests.
129942
1299432016-07-19  Katsumi Yamaoka  <yamaoka@jpl.org>
129944
129945	Make gif animation work (bug#24004)
129946
129947	* lisp/image.el (image-animate-timeout): Fix the logic that tests if
129948	an animation is too big (bug#24004).
129949
1299502016-07-18  Stefan Monnier  <monnier@iro.umontreal.ca>
129951
129952	* lisp/simple.el (undo-amalgamate-change-group): New function
129953
129954	* lisp/emulation/viper-cmd.el (viper-adjust-undo): Use it.
129955	(viper-set-complex-command-for-undo): Save current state with
129956	prepare-change-group.
129957	* lisp/emulation/viper-init.el (viper-undo-needs-adjustment)
129958	(viper-buffer-undo-list-mark): Remove.
129959
1299602016-07-18  Noam Postavsky  <npostavs@gmail.com>
129961
129962	Keep w32 environment settings internal only
129963
129964	* src/emacs.c (main) [WINDOWSNT]: Move init_environment calls after the
129965	set_initial_environment call.  This prevents Emacs' modifications to the
129966	environment from contaminating Vprocess_environment and
129967	Vinitial_environment (Bug #10980).
129968	* src/callproc.c (getenv_internal) [WINDOWSNT]: Consult Emacs' internal
129969	environment in as a fallback to Vprocess_environment.
129970	* test/src/callproc-tests.el (initial-environment-preserved): New Test.
129971
1299722016-07-18  Nicolas Petton  <nicolas@petton.fr>
129973
129974	Better documentation for cl-reduce (bug#24014)
129975
129976	* lisp/emacs-lisp/cl-seq.el (cl-reduce): Explain what reducing means.
129977
1299782016-07-17  Alan Third  <alan@idiocy.org>
129979
129980	Remove separate pool for popup dialogs (bug#23856)
129981
129982	* src/nsmenu.m (pop_down_menu, ns_popup_dialog): Remove references to
129983	autorelease pool and Popdown_data struct.
129984
1299852016-07-17  Mark Oteiza  <mvoteiza@udel.edu>
129986
129987	Use eldoc-documentation-functions
129988
129989	* lisp/hexl.el (hexl-mode):
129990	* lisp/ielm.el (inferior-emacs-lisp-mode):
129991	* lisp/progmodes/cfengine.el (cfengine3-mode):
129992	* lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
129993	* lisp/progmodes/octave.el (octave-mode, inferior-octave-mode):
129994	* lisp/progmodes/python.el (python-mode):
129995	* lisp/simple.el (read--expression): Add buffer-locally to hook
129996	eldoc-documentation-functions.
129997
1299982016-07-16  Noam Postavsky  <npostavs@gmail.com>
129999
130000	Optimize ucs-normalize.el compilation
130001
130002	* lisp/international/ucs-normalize.el (ucs-normalize-combining-chars-regexp):
130003	(quick-check-list-to-regexp): Use regexp-opt-charset instead of
130004	regexp-opt.
130005	* lisp/international/ucs-normalize.el (quick-check-list): Reuse a single
130006	temp buffer for the whole loop.
130007
1300082016-07-16  Noam Postavsky  <npostavs@gmail.com>
130009
130010	Add tests for ucs-normalize.el
130011
130012	Some tests are marked as expected to fail.
130013
130014	* test/lisp/international/ucs-normalize-tests.el: New tests.
130015	* admin/unidata/NormalizationTest.txt: Add data for tests.
130016	* admin/unidata/README: Add URL for NormalizationTest.txt.
130017	* admin/notes/unicode: Add note about running (and updating the data
130018	for) the new tests.  Remove note about normalization being unsupported.
130019
1300202016-07-16  Alan Third  <alan@idiocy.org>
130021
130022	Fix cursor display (bug#23993)
130023
130024	* src/xdisp.c (get_phys_cursor_geometry): Fix invalid C operator.
130025
1300262016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
130027
130028	Stop worrying about Alliant in bytecode.c
130029
130030	* src/bytecode.c (PUSH): Remove workaround for long-obsolete compiler.
130031
1300322016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
130033
130034	Remove BYTE_MAINTAIN_TOP
130035
130036	It is no longer needed now that we assume GC_MARK_STACK ==
130037	GC_MAKE_GCPROS_NOOPS.
130038	* src/bytecode.c (BYTE_MAINTAIN_TOP): Remove.
130039	All uses removed, and code simplified accordingly.
130040	(BEFORE_POTENTIAL_GC, AFTER_POTENTIAL_GC): Remove, since they
130041	are always no-ops now.  All uses removed.
130042	(MAYBE_GC): Remove.  All uses replaced by maybe_gc,
130043	since it is now equivalent.
130044
1300452016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
130046
130047	Remove now-inaccurate bytecode comments
130048
130049	* src/bytecode.c: Remove comments that are no longer accurate.
130050	Most of these are actually old ChangeLog entries.
130051
1300522016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
130053
130054	Port to glibc 2.24 (pre-release) + ppc64
130055
130056	Inspired by a suggestion by Florian Weimer in:
130057	https://sourceware.org/ml/libc-alpha/2016-07/msg00425.html
130058	* configure.ac (HAVE_PERSONALITY_ADDR_NO_RANDOMIZE):
130059	Rename from HAVE_PERSONALITY_LINUX32, and check for
130060	ADDR_NO_RANDOMIZE (the crucial thing) instead of for LINUX32.
130061	All uses changed.
130062	* src/emacs.c (main) [HAVE_PERSONALITY_ADDR_NO_RANDOMIZE]:
130063	Use ADDR_NO_RANDOMIZE from personality.h rather than inventing the
130064	flag ourselves.  Just set that flag, rather than also setting the
130065	persona.  When doing it, avoid functions like putenv that may
130066	allocate memory.
130067
1300682016-07-14  Mark Oteiza  <mvoteiza@udel.edu>
130069
130070	Revert "Add a couple cells to lisp-prettify-symbols-alist"
130071
130072	This reverts commit bdda4855c635ecf4135e23321bdba023e9ae65c9.
130073
1300742016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
130075
130076	* lisp/simple.el (shell-command): Add save-match-data comment
130077
1300782016-07-14  Alan Mackenzie  <acm@muc.de>
130079
130080	CC Mode: correct incorrect invocation of parse-partial-sexp.
130081
130082	Fixes bug #23944.
130083
130084	* lisp/progmodes/cc-engine.el (c-literal-limits): make the sixth argument of
130085	an invocation of parse-partial-sexp 'syntax-table, not the fourth.
130086
1300872016-07-14  Andreas Schwab  <schwab@suse.de>
130088
130089	Fix configure summary for hybrid malloc configurations
130090
130091	* configure.ac ("$hybrid_malloc" = yes): Set GNU_MALLOC to no,
130092	parenthesize value of GNU_MALLOC_reason.
130093
1300942016-07-14  Stephen Berman  <stephen.berman@gmx.net>
130095
130096	Fix delete-duplicate-lines
130097
130098	* lisp/sort.el (delete-duplicate-lines): Delete duplicate
130099	first line when operating backward (bug#23863).
130100
1301012016-07-14  Andreas Schwab  <schwab@suse.de>
130102
130103	Remove unused SHEAP_OBJ
130104
130105	* Makefile.in (base_obj): Remove $(SHEAP_OBJ).
130106
1301072016-07-13  Katsumi Yamaoka  <yamaoka@jpl.org>
130108
130109	* lisp/gnus/mm-decode.el (mm-convert-shr-links):
130110	Use shr-image-map instead of shr-map (bug#23964).
130111
1301122016-07-13  Stefan Monnier  <monnier@iro.umontreal.ca>
130113
130114	* lisp/mouse.el (mouse): Consolidate group definition here
130115
130116	* lisp/cus-edit.el (mouse): Remove both group definitions.
130117
1301182016-07-13  Chris Feng  <chris.w.feng@gmail.com>
130119
130120	Include versioned preloaded libraries in `package--builtin-versions'
130121
130122	* lisp/emacs-lisp/autoload.el (update-directory-autoloads): Do not
130123	exclude preloaded libraries or remove entries generated for them.
130124	(autoload-generate-file-autoloads): Do not generate autoload
130125	statements for preloaded libraries.
130126
1301272016-07-13  Paul Eggert  <eggert@cs.ucla.edu>
130128
130129	Omit unnecessary #includes from xwidget.c
130130
130131	* src/xwidget.c: Remove #include directives that are not needed.
130132	Also, don’t conditionalize #includes on HAVE_X_WINDOWS, since this
130133	file is compiled only if the X interface is available.
130134
1301352016-07-13  Paul Eggert  <eggert@cs.ucla.edu>
130136
130137	Port xwidget.c to GCC 6 with --enable-gcc-warnings
130138
130139	* src/xwidget.c (x_draw_xwidget_glyph_string, xwidget_end_redisplay):
130140	Adjust to pacify GCC.  Add a couple of FIXME comments, suggesting
130141	possible bugs found by GCC.
130142
1301432016-07-12  Tino Calancha  <tino.calancha@gmail.com>
130144
130145	Escape meta chars in commands processed by shell
130146
130147	* lisp/progmodes/grep.el (grep-compute-defaults): Quote braces
130148	in all commands to be passed to a shell (Bug#23959).
130149
1301502016-07-12  John Wiegley  <johnw@newartisans.com>
130151
130152	Revert "Cleanup tooltips"
130153
130154	This reverts commit 20038f8ab75dd1551412a43cd58520c483c22921.
130155
130156	I am reverting this change because it was applied without prior discussion
130157	on emacs-devel, and has been found to break the NS port.  It needs more
130158	testing and review before it should be applied here.
130159
1301602016-07-12  Stefan Monnier  <monnier@iro.umontreal.ca>
130161
130162	* lisp/emacs-lisp/cl-macs.el (cl--prog): New function
130163
130164	(cl-prog, cl-prog*): New macros.
130165
1301662016-07-12  Stefan Monnier  <monnier@iro.umontreal.ca>
130167
130168	* lisp/emacs-lisp/cl-generic.el (cl-defmethod): Make docstring dynamic
130169
130170	* lisp/emacs-lisp/cl-generic.el (cl-defmethod): Make docstring dynamic.
130171	(cl--generic-make-defmethod-docstring): New function for that.
130172	(cl-defmethod, cl-generic-generalizers): Tweak docstrings accordingly.
130173	(cl-generic-define-method, cl--generic-describe): Change `load-history'
130174	format of cl-defmethods, so as not to confused methods with equal
130175	specializers but different qualifiers.
130176	* lisp/emacs-lisp/eieio-core.el (cl-generic-generalizers): Provide docstrings.
130177
1301782016-07-12  Eli Zaretskii  <eliz@gnu.org>
130179
130180	Don't install keyboard hook when debugged on MS-Windows
130181
130182	* src/w32fns.c (setup_w32_kbdhook): Don't install the keyboard
130183	hook if we are being debugged.  This avoids hosing the debugger,
130184	because the hook is global, and is called in the context of the
130185	thread which installed it, and that thread is stopped when GDB has
130186	control.  Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
130187
1301882016-07-12  Alan Mackenzie  <acm@muc.de>
130189
130190	Amend CC Mode to handle big C++ raw strings correctly.
130191
130192	Problems were caused by such a string spanning jit-lock chunks, and by a flaw
130193	in the +-500 bytes boundaries imposed for macros.
130194
130195	* lisp/progmodes/cc-mode.el (c-extend-region-for-CPP): Check the +-500 byte
130196	macro boundaries here.
130197	(c-extend-font-lock-region-for-macros): Remove the check on the +-500 byte
130198	lower boundary.  Fix the check on the upper boundary.
130199
130200	* lisp/progmodes/cc-fonts.el (c-font-lock-raw-strings): Handle the starting
130201	point already being within a raw string.
130202
130203	* lisp/progmodes/cc-engine.el (c-raw-string-pos)
130204	(c-depropertize-raw-strings-in-region, c-after-change-re-mark-raw-strings):
130205	Modify regexp element "\\{,16\\}" to "\\{0,16\\}" for greater compatibility
130206	with other Emacsen.
130207
1302082016-07-12  Stephen Berman  <stephen.berman@gmx.net>
130209
130210	* lisp/mouse.el (mouse-select-region-move-to-beginning): Add :group.
130211
1302122016-07-11  Dmitry Antipov  <dmantipov@yandex.ru>
130213
130214	Cleanup tooltips
130215
130216	* src/dispextern.h (toplevel): Remove 'tip_frame' and 'tip_window' decls.
130217	* src/frame.h (struct frame): New bitfield to indicate tooltip frame.
130218	(FRAME_TOOLTIP_P): New macro.
130219	* src/frame.c (make_frame): Mark new frame as regular frame by default.
130220	(Fframe_list, delete_frame): Redesign to use FRAME_TOOLTIP_P.
130221	(syms_of_frame): Don't DEFSYM 'Qtooltip' but use 'Qtooltip_timer'
130222	and 'Qtooltip_parameters' instead.
130223	* src/gtkutil.h (toplevel): Add 'xg_hide_tip' decl.
130224	* src/gtkutil.c (xg_hide_tip): New function.
130225	(xg_hide_tooltip): Adjust to cancel GTK event loop timeout if needed.
130226	* src/menu.c (Fx_popup_menu): Adjust call to Fx_hide_tip.
130227	* src/nsfns.m (toplevel): Remove 'tip_frame' leftover.
130228	* src/w32fns.c (unwind_create_tip_frame): Remove.
130229	(w32_display_monitor_attributes_list)
130230	(w32_display_monitor_attributes_list_fallback): Use FRAME_TOOLTIP_P.
130231	(toplevel): Remove 'tip_frame', 'tip_window' and 'last_show_tip_args'.
130232	(x_create_tip_frame): Use do_unwind_create_frame.  Mark new frame
130233	as a tooltip frame and record it using appropriate display info.
130234	(x_hide_tooltip): Add frame arg.
130235	(Fx_show_tip): Adjust to avoid globals, store tooltip parameters among
130236	base frame parameters, store tooltip hide timer among tooltip frame
130237	parameters.
130238	(Fx_hide_tip): Add frame arg, hide tooltips on all displays by default.
130239	(syms_of_w32fns): Don't DEFSYM 'Qtip_frame', don't initialize
130240	and GC-protect 'tip_timer', 'tip_frame' and 'last_show_tip_args'.
130241	* src/w32term.c (w32_read_socket): Extract tooltip window id from
130242	per-display data.  Use FRAME_TOOLTIP_P where appropriate.
130243	(x_new_font): Use FRAME_TOOLTIP_P.
130244	(x_free_frame_resources): Reset pointer to tooltip frame.
130245	* src/w32term.h (struct w32_display_info): New member 'w32_tooltip_frame'.
130246	* src/xdisp.c (init_iterator, x_consider_frame_title, prepare_menu_bars):
130247	Use FRAME_TOOLTIP_P.
130248	* src/xfns.c (x_make_monitor_attribute_list)
130249	(Fx_display_monitor_attributes_list): Likewise.
130250	(unwind_create_tip_frame): Remove.
130251	(toplevel): Remove 'tip_frame', 'tip_window' and 'last_show_tip_args'.
130252	(x_create_tip_frame): Use do_unwind_create_frame.  Mark new frame
130253	as a tooltip frame and record it using appropriate display info.
130254	(x_hide_tooltip): Add frame arg.
130255	(Fx_show_tip): Adjust to avoid globals, store tooltip parameters among
130256	base frame parameters, store tooltip hide timer among tooltip frame
130257	parameters.  To hide GTK system tooltip, use timeout hooked into GTK
130258	event loop.
130259	(Fx_hide_tip): Add frame arg, hide tooltips on all displays by default.
130260	(syms_of_xfns): Don't DEFSYM 'Qtip_frame', don't initialize
130261	and GC-protect 'tip_timer', 'tip_frame' and 'last_show_tip_args'.
130262	* src/xterm.c (handle_one_xevent): Extract tooltip window id from
130263	per-display data.  Use FRAME_TOOLTIP_P where appropriate.
130264	(x_new_font, x_set_window_size): Use FRAME_TOOLTIP_P.
130265	(x_free_frame_resources): Reset pointer to tooltip frame.
130266	* src/xterm.h (struct x_display_info): New member 'x_tooltip_frame'.
130267	(struct x_output) [USE_GTK_TOOLTIP]: New member 'ttip_timeout'.
130268
1302692016-07-11  Stefan Monnier  <monnier@iro.umontreal.ca>
130270
130271	* src/fns.c (syms_of_fns): Leave `features' lexically scoped
130272
1302732016-07-11  Mario Lang  <mlang@delysid.org>
130274
130275	Test mapcan
130276
130277	* test/src/fns-tests.el (fns-tests-mapcan): New test.
130278
1302792016-07-11  Stefan Monnier  <monnier@iro.umontreal.ca>
130280
130281	Prevent to apply funcall on t
130282
130283	* lisp/vc/ediff-util.el (ediff-really-quit): Ignore the global part of
130284	'ediff-after-quit-hook-internal' hook (Bug#23933).
130285
1302862016-07-11  Tino Calancha  <tino.calancha@gmail.com>
130287
130288	Ignore angle mode while simplifying units
130289
130290	* lisp/calc/calc-forms.el (math-to-hms, math-from-hms):
130291	Ignore value of 'calc-angle-mode' when 'math-simplifying-units'
130292	is non-nil (Bug#23889).
130293	* lisp/calc/calc-math.el (math-to-radians, math-from-radians)
130294	(math-from-radians-2, math-to-radians-2): Idem.
130295
1302962016-07-11  Eli Zaretskii  <eliz@gnu.org>
130297
130298	Fix display of composed characters
130299
130300	* src/xdisp.c (x_produce_glyphs): Fix off-by-one error in
130301	iteration through composition glyphs.  (Bug#23938)
130302
1303032016-07-11  Paul Eggert  <eggert@cs.ucla.edu>
130304
130305	Fix composition bug caused by off-by-1 typo
130306
130307	* src/xdisp.c (x_produce_glyphs): Fix off-by-one typo when
130308	computing composition glyph (Bug#23938).
130309
1303102016-07-10  Tino Calancha  <tino.calancha@gmail.com>
130311
130312	Dired always read file system
130313
130314	* lisp/dired.el (dired-always-read-filesystem): Add new option.
130315	(dired-mark-files-containing-regexp): Use it (Bug#22694).
130316	* doc/emacs/dired.texi: Mention it in the manual.
130317	* test/lisp/dired-tests.el (dired-test-bug22694): Add test.
130318	;* etc/NEWS: Add entry for this change.
130319
1303202016-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
130321
130322	* src/macfont.m (mac_font_shape): Make sure that total_advance is increasing.
130323
1303242016-07-10  Tino Calancha  <tino.calancha@gmail.com>
130325
130326	Avoid 'unused var' 'not left unused var' warnings
130327
130328	* lisp/ibuffer.el (ibuffer-locked-buffer-p): Remove unused var 'char'.
130329	Rename used var '_buffer' to 'cbuffer'.
130330
130331	* lisp/ibuf-ext.el (ibuffer-unmark-all): Rename used var '_mark'
130332	to cmark'.
130333
1303342016-07-10  Tino Calancha  <tino.calancha@gmail.com>
130335
130336	* lisp/simple.el (shell-command, shell-command-on-region): Fix doc strings
130337
1303382016-07-10  Michael Albinus  <michael.albinus@gmx.de>
130339
130340	Add a note how to use `tramp-own-remote-path'
130341
130342	* doc/misc/tramp.texi (Inline methods, External methods)
130343	(Remote shell setup, Android shell setup)
130344	(Frequently Asked Questions, Frequently Asked Questions):
130345	Use @command and @samp consequently.
130346	(Remote programs): The remote shell must support the -l
130347	argument, in order to use `tramp-own-remote-path'.  (Bug#23914)
130348
1303492016-07-10  Alan Third  <alan@idiocy.org>
130350
130351	Remove App Nap setting from Info.plist (bug#22993)
130352
130353	* nextstep/templates/Info.plist.in: Remove LSAppNapIsDisabled key since
130354	it doesn't actually disable app nap.
130355
1303562016-07-09  Mario Lang  <mlang@delysid.org>
130357
130358	An efficient built-in mapcan
130359
130360	A built-in version of `mapcan' avoids consing up (and GC'ing) the
130361	intermediate list.
130362
130363	* src/fns.c (Fmapcan): New built-in.
130364	(syms_of_fns): Define.
130365
130366	* lisp/emacs-lisp/cl.el (mapcan): Remove defalias.
130367
130368	* lisp/emacs-lisp/cl-extra.el (cl-mapcan): Use built-in `mapcan'
130369	if only one sequence is provided.
130370
130371	* lisp/progmodes/hideif.el (hif-delimit):
130372	* lisp/dired-aux.el (dired-do-find-regexp):
130373	* lisp/woman.el (woman-parse-colon-path): Use `mapcan' instead of
130374	`cl-mapcan'.
130375
130376	* lisp/woman.el (eval-when-compile): Require 'cl-lib only when
130377	compiling.
130378
130379	* lisp/mouse.el (mouse-buffer-menu-map):
130380	* lisp/net/pop3.el (pop3-uidl-dele):
130381	* lisp/progmodes/gud.el (gud-jdb-build-source-files-list):
130382	* lisp/cedet/semantic/db-find.el (semanticdb-fast-strip-find-results):
130383	* lisp/cedet/semantic/symref/grep.el (semantic-symref-derive-find-filepatterns):
130384	* lisp/gnus/nnmail.el (nnmail-split-it):
130385	* lisp/gnus/gnus-sum.el (gnus-articles-in-thread):
130386	* lisp/gnus/gnus-registry.el (gnus-registry-sort-addresses):
130387	* lisp/gnus/gnus-util.el (gnus-mapcar): Use `mapcan'.
130388
1303892016-07-09  Tino Calancha  <tino.calancha@gmail.com>
130390
130391	Detect aliases to built-in functions
130392
130393	* lisp/help-fns.el (describe-function-1): Check for aliases
130394	defined with (defalias alias (symbol-function built-in)) (Bug#23887).
130395
130396	* test/lisp/help-fns-tests.el (help-fns-test-bug23887): Untag as
130397	failing this test.
130398
1303992016-07-09  Michael Albinus  <michael.albinus@gmx.de>
130400
130401	Avoid recursive detection of remote uid and gid in tramp-gvfs.el
130402
130403	* lisp/net/tramp-gvfs.el (tramp-gvfs-get-remote-uid-gid-in-progress):
130404	New variable.
130405	(tramp-gvfs-maybe-open-connection): Use it.
130406
130407	* test/lisp/net/tramp-tests.el (tramp-test18-file-attributes):
130408	Reorder test.
130409
1304102016-07-09  Jürgen Hötzel  <juergen@archlinux.org>
130411
130412	Wrap around error in coreutil's ls
130413
130414	* lisp/net/tramp-sh.el (tramp-sh-handle-insert-directory): Add switch
130415	"--quoting-style=literal" if remote host supports quoting style.
130416	Recent versions of coreutils changed default quoting style to
130417	"--quoting=shell-escape".
130418
1304192016-07-09  Eli Zaretskii  <eliz@gnu.org>
130420
130421	Minor tweaks of copying text properties when padding strings
130422
130423	* src/editfns.c (styled_format): Don't include padding on the left
130424	in the properties at the beginning of the string.  (Bug#23897)
130425
130426	* test/src/editfns-tests.el (format-properties): Add tests for
130427	faces when the string is padded on the left or on the right.
130428
1304292016-07-08  Mario Lang  <mlang@delysid.org>
130430
130431	No need to require the same feature twice.
130432
130433	* lisp/dired-aux.el (require 'cl-lib): Remove.
130434
1304352016-07-08  Mark Oteiza  <mvoteiza@udel.edu>
130436
130437	Turn on lexical binding
130438
130439	* lisp/net/secrets.el (secrets-collection-handler): Use cl-pushnew.
130440	(secrets-search-items, secrets-create-item): Use append.
130441	(secrets-show-secrets): Remove unused binding.
130442	(secrets-expand-item, secrets-tree-widget-after-toggle-function):
130443	Ignore unused arguments.
130444
1304452016-07-08  Mark Oteiza  <mvoteiza@udel.edu>
130446
130447	Derive secrets-mode from special-mode
130448
130449	* lisp/net/secrets.el: Remove top-level secrets-mode hack.
130450	(secrets-mode-map): New variable.  Add key bindings to n and p for
130451	navigating lines.
130452	(secrets-mode): Derive from special-mode.  Remove keymap code and
130453	initialization code.  Do not record undo information.  Make
130454	secrets-show-collections the local revert-buffer-function.
130455	(secrets-show-collections): Change signature to satisfy revert-buffer.
130456
1304572016-07-08  Mark Oteiza  <mvoteiza@udel.edu>
130458
130459	Add a couple cells to lisp-prettify-symbols-alist
130460
130461	* lisp/emacs-lisp/lisp-mode.el (lisp-prettify-symbols-alist): Add
130462	"sqrt" and "not".
130463
1304642016-07-08  Michael Albinus  <michael.albinus@gmx.de>
130465
130466	Detect remote uid and gid in tramp-gvfs.el
130467
130468	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
130469	(tramp-gvfs-handler-mounted-unmounted)
130470	(tramp-gvfs-connection-mounted-p):
130471	Make "default-location" a connection property.
130472	(tramp-gvfs-get-remote-uid, tramp-gvfs-get-remote-gid): New defuns.
130473	(tramp-gvfs-maybe-open-connection): Use them.
130474
1304752016-07-08  Eli Zaretskii  <eliz@gnu.org>
130476
130477	Yet another fix for copying properties by 'format'
130478
130479	* src/textprop.c (extend_property_ranges): Accept an additional
130480	argument OLD_END, and only extend the end of a property range if
130481	its original end is at OLD_END; all the other ranges are left
130482	intact.  (Bug#23897)
130483	* src/editfns.c (styled_format): Pass the original length of the
130484	string to 'extend_property_ranges'.
130485	* src/intervals.h (extend_property_ranges): Adjust prototype.
130486
130487	* test/src/editfns-tests.el (format-properties): Add tests for
130488	bug#23897.
130489
1304902016-07-08  Stephen Berman  <stephen.berman@gmx.net>
130491
130492	Allow selecting region with mouse to move point to beginning
130493
130494	* etc/NEWS: Mention new user option
130495	`mouse-select-region-move-to-beginning'.
130496
130497	* doc/emacs/frames.texi (Mouse Commands): Add cross-reference
130498	to the following.
130499	(Word and Line Mouse): Describe how double-clicking mouse-1 to
130500	activate region and `mouse-select-region-move-to-beginning'
130501	affect point.
130502
130503	* lisp/mouse.el (mouse-select-region-move-to-beginning): New defcustom.
130504	(mouse-set-point): Use it.  (Bug#23478)
130505
1305062016-07-08  Stephen Berman  <stephen.berman@gmx.net>
130507
130508	Fix menu bar breakage
130509
130510	* lisp/menu-bar.el (menu-bar-showhide-scroll-bar-menu): Use backquoting
130511	to prevent void variable errors, and fix typo (bug#23918).
130512
1305132016-07-08  Tino Calancha  <tino.calancha@gmail.com>
130514
130515	Copy buffer names to kill ring
130516
130517	* lisp/ibuf-ext.el (ibuffer-copy-buffername-as-kill): New command.
130518	* lisp/ibuffer.el (ibuffer-mode-map): Bound it to 'B'.
130519	;* etc/NEWS: Add entry for this new feature.
130520
1305212016-07-07  Tino Calancha  <tino.calancha@gmail.com>
130522
130523	Remove just input mark
130524
130525	* lisp/ibuffer.el (ibuffer-unmark-all): When MARK is not ?\r remove
130526	just MARK.
130527
1305282016-07-07  Tino Calancha  <tino.calancha@gmail.com>
130529
130530	Ibuffer change marks
130531
130532	* lisp/ibuffer.el (ibuffer-change-marks): New command.
130533	(ibuffer-mode-map): Bind it to '* c'.
130534	(ibuffer-mode-groups-popup): Update menus.
130535	(ibuffer-mode): Update mode doc.
130536
1305372016-07-07  Alan Third  <alan@idiocy.org>
130538
130539	Prevent NS event loop being re-entered (bug#11049)
130540
130541	* src/nsterm.m (ns_read_socket, ns_select): Return -1 if already
130542	in event loop instead of aborting.
130543
1305442016-07-07  Alan Third  <alan@idiocy.org>
130545
130546	Fix some deprecated functions
130547
130548	* src/nsterm.m (firstRectForCharacterRange): In OS X >10.6 replace
130549	convertBaseToScreen with convertRectToScreen.
130550	* src/nsmenu.m (ns_update_menubar): Remove attachedMenu, deprecated in
130551	OS X 10.2, and always seems to return nil.
130552
1305532016-07-07  Aaron Jensen  <aaronjensen@gmail.com>  (tiny change)
130554
130555	Disable App Nap (bug#22993)
130556
130557	* nextstep/templates/Info.plist.in: Insert AppNap disable code.
130558
1305592016-07-07  Michael Albinus  <michael.albinus@gmx.de>
130560
130561	Fix an error in Tramp for rsync
130562
130563	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
130564	Make it work for "rsync".
130565	(tramp-make-copy-program-file-name): Apply `directory-file-name'.
130566
1305672016-07-07  Tino Calancha  <tino.calancha@gmail.com>
130568
130569	Ibuffer: Mark locked buffers
130570
130571	* lisp/ibuf-ext.el (ibuffer-locked-buffer-p): New defun.
130572	(ibuffer-mark-by-locked): New command.
130573	(ibuffer-mode-map): Bind it to '% L'; update menus.
130574	(ibuffer-mode): Update mode doc.
130575	;* etc/NEWS: Add NEWS entry for these changes and previous two commits.
130576
1305772016-07-07  Tino Calancha  <tino.calancha@gmail.com>
130578
130579	* lisp/ibuffer.el: Add face for locked buffers
130580
130581	* lisp/ibuffer.el: Add mark for locked buffers
130582
130583	;* etc/NEWS (Ibuffer): Update entry according with last commit
130584
1305852016-07-07  Tino Calancha  <tino.calancha@gmail.com>
130586
130587	Remove duplicate binding
130588
130589	* lisp/ibuffer.el (ibuffer-mode-map): 'ibuffer-mark-by-content-regexp'
130590	just bound to '% g'.
130591	As suggested in:
130592	https://lists.gnu.org/r/emacs-devel/2016-07/msg00165.html
130593
1305942016-07-07  Tino Calancha  <tino.calancha@gmail.com>
130595
130596	Ibuffer: Drop needless binding
130597
130598	* lisp/ibuffer.el (ibuffer-mark-interactive): 'inhibit-read-only'
130599	already bound to 't' inside 'ibuffer-set-mark'.
130600
1306012016-07-07  Phillip Lord  <phillip.lord@russet.org.uk>
130602
130603	Run tests from non-byte compiled files
130604
130605	* test/Makefile.in: Eval non-byte-compiled files for tests.
130606
1306072016-07-06  Mark Oteiza  <mvoteiza@udel.edu>
130608
130609	Replace eldoc-documentation-function with a hook
130610
130611	* lisp/emacs-lisp/eldoc.el (eldoc-documentation-functions): New hook.
130612	(eldoc-documentation-function): Make into obsolete alias.
130613	(eldoc-echo-area-use-multiline-p, eldoc-highlight-function-argument):
130614	(eldoc-argument-case, global-eldoc-mode): Update docstrings.
130615	(eldoc-print-current-symbol-info): Use run-hook-with-args-until-success
130616	on eldoc-documentation-functions.
130617	(eldoc-supported-p): New function.
130618	(eldoc-mode, global-eldoc-mode, eldoc-schedule-timer): Use eldoc-supported-p.
130619	* etc/NEWS: Mention eldoc-documentation-functions.
130620	* doc/lispref/modes.texi: Update reference.
130621
1306222016-07-06  Simen Heggestøyl  <simenheg@gmail.com>
130623
130624	Complete "initial" and "unset" in CSS mode
130625
130626	* lisp/textmodes/css-mode.el (css--complete-property-value): Make
130627	"initial" and "unset" completion candidates for all CSS properties,
130628	just like "inherit".
130629
130630	* test/lisp/textmodes/css-mode-tests.el
130631	(css-test-complete-property-value): Update test to reflect the above
130632	change.
130633
1306342016-07-06  Michael Albinus  <michael.albinus@gmx.de>
130635
130636	* lisp/net/tramp-gvfs.el (tramp-gvfs-mount-spec): Fix typo.
130637
1306382016-07-06  Paul Eggert  <eggert@cs.ucla.edu>
130639
130640	Simplify rfc1345.el a bit
130641
130642	* lisp/leim/quail/rfc1345.el: Omit commented-out codes for ASCII
130643	that would no longer parse.  Replace control characters with
130644	escapes in character constants.  Omit unnecessary \ after ?.
130645	This does not change behavior.
130646
1306472016-07-05  Dmitry Antipov  <dmantipov@yandex.ru>
130648
130649	Prefer 'frame-parameter' where it is expected to be a bit faster
130650
130651	* lisp/international/mule-diag.el (mule-diag):
130652	* lisp/menu-bar.el (menu-bar-showhide-scroll-bar-menu):
130653	* lisp/mouse.el (mouse-drag-line, font-menu-add-default):
130654	* lisp/scroll-bar.el (toggle-scroll-bar, toggle-horizontal-scroll-bar):
130655	* lisp/faces.el (x-resolve-font-name): Use 'frame-parameter'.
130656
1306572016-07-05  Dmitry Antipov  <dmantipov@yandex.ru>
130658
130659	Reduce consing caused by vertical motion commands
130660
130661	* src/frame.c (Fframe_parameter): Avoid call to Fframe_parameters for the
130662	parameters frequently requested by calls to 'next-line' and 'previous-line'.
130663
1306642016-07-05  Michael Albinus  <michael.albinus@gmx.de>
130665
130666	Make all Tramp tests pass for "gdrive" method
130667
130668	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-delete-directory)
130669	* lisp/net/tramp-compat.el (tramp-compat-copy-directory)
130670	(tramp-compat-delete-directory):
130671	* lisp/net/tramp-smb.el (tramp-smb-handle-delete-directory):
130672	Use `directory-files-no-dot-files-regexp'.
130673
130674	* lisp/net/tramp-gvfs.el (tramp-gvfs-handler-mounted-unmounted)
130675	(tramp-gvfs-send-command): Call `tramp-flush-file-property' in
130676	case of problems.
130677
130678	* test/lisp/net/tramp-tests.el (tramp--instrument-test-case):
130679	Adapt docstring.
130680	(tramp-test14-delete-directory): Make further tests.
130681
1306822016-07-05  Eli Zaretskii  <eliz@gnu.org>
130683
130684	Fix redisplay with window-start on continuation lines
130685
130686	* src/xdisp.c (pos_visible_p): Return false if the window starts
130687	after CHARPOS.
130688	(compute_window_start_on_continuation_line): Don't return
130689	window-start position that is after point in the buffer, as the
130690	callers don't expect this to happen, and will generally display an
130691	empty window with the cursor in its middle.  (Bug#23871)
130692
1306932016-07-05  Tino Calancha  <tino.calancha@gmail.com>
130694
130695	Add :expected-result :failed for unfixed bug test
130696
130697	* test/lisp/help-fns-tests.el (help-fns-test-bug23887):
130698
1306992016-07-05  Tino Calancha  <tino.calancha@gmail.com>
130700
130701	* test/lisp/help-fns-tests.el: Add several tests for 'describe-function'.
130702
1307032016-07-04  Michal Nazarewicz  <mina86@mina86.com>
130704
130705	Don’t create unnecessary marker in ‘delete-trailing-whitespace’
130706
130707	* lisp/simple.el (delete-trailing-whitespace): If END argument is nil,
130708	there is no need for the end-marker to be created.
130709
1307102016-07-04  Michal Nazarewicz  <mina86@mina86.com>
130711
130712	Simplify ‘delete-trailing-whitespace’ by not treating \n as whitespace
130713
130714	* lisp/simple.el (delete-trailing-whitespace): Set newline’s character
130715	syntax to non-whitespace so that ‘\s-’ regular expression does not match
130716	it.
130717
130718	This simplifies the loop slightly since a simple ‘\s-+$’ can be used and
130719	as a consequence ‘line-beginning-position’ function does not need to be
130720	called any longer.
130721
130722	Furthermore, when newline has whitespace syntax, ‘\s-$’ regular
130723	expression ends up matching empty lins since ‘\s-’ matches newline
130724	characetr of proceeding line.  This leads to needless loop iterations.
130725
130726	Since previous change to ‘delete-trailing-whitespace’ already introduced
130727	‘with-syntax-table’, take advantage of it and also overwrite newline’s
130728	character syntax.
130729
1307302016-07-04  Michal Nazarewicz  <mina86@mina86.com>
130731
130732	Make ‘delete-trailing-whitespace’ delete spaces after form feed
130733
130734	* lisp/simple.el (delete-trailing-whitespace): Treat form fead as
130735	a non-whitespace character (regradless of whether it’s character syntax
130736	is whitespace) and delete any whitespace following it instead of leaving
130737	lines with form feeds completely unchanged.  I.e. a line like "\f " will
130738	now became "\f".
130739
1307402016-07-04  Dmitry Antipov  <dmantipov@yandex.ru>
130741
130742	Cleanup XEditRes hack
130743
130744	* configure.ac [USE_X_TOOLKIT]: Define X_TOOLKIT_EDITRES if
130745	_XEditResCheckMessages is declared in X11/Xmu/Editres.h and may be
130746	linked with -lXmu.  This should work with any non-ancient Xmu library.
130747	* src/xfns.c (toplevel): Remove old cruft.
130748	(x_window) [USE_X_TOOLKIT]: Use X_TOOLKIT_EDITRES.
130749	* src/xterm.c (toplevel): Remove old cruft.
130750	(handle_one_xevent): Use X_TOOLKIT_EDITRES.
130751	* src/xterm.h (toplevel): Include X11/Xmu/Editres.h if X_TOOLKIT_EDITRES.
130752
1307532016-07-04  Michael Albinus  <michael.albinus@gmx.de>
130754
130755	Add Google Drive support to Tramp
130756
130757	* doc/misc/tramp.texi: Add `gdrive' method.
130758
130759	* doc/misc/trampver.texi:
130760	* lisp/net/trampver.el: Change version to "2.3.1-pre".
130761
130762	* etc/NEWS: Add Tramp connection method "gdrive".
130763
130764	* lisp/net/tramp-gvfs.el (tramp-gvfs-methods) <gdrive>: Add.
130765	(tramp-default-user-alist, tramp-default-host-alist): Add rule
130766	for "gdrive".
130767	(tramp-gvfs-file-attributes): Add "name", remove "standard::icon".
130768	(tramp-gvfs-file-attributes-with-gvfs-ls-regexp): Simplify regexp.
130769	(tramp-gvfs-get-directory-attributes): Improve loop.  Use
130770	"standard::display-name" as file name, if available.
130771	(tramp-gvfs-handle-file-name-all-completions): Simplify.
130772	(tramp-gvfs-url-file-name, tramp-gvfs-handler-mounted-unmounted)
130773	(tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec):
130774	Map between "gdrive" and "google-drive".
130775
130776	* lisp/net/tramp.el (tramp-call-process): Do not signal error.
130777
130778	* test/lisp/net/tramp-tests.el (tramp--instrument-test-case):
130779	Do not enable `tramp-message-show-message'.
130780	(tramp-test13-make-directory, tramp-test14-delete-directory):
130781	Do not specify error type.
130782
1307832016-07-04  Tino Calancha  <tino.calancha@gmail.com>
130784
130785	Calc: Update mode line after change mode
130786
130787	* lisp/calc/calc-ext.el (calc-change-mode): Call 'calc-set-mode-line'.
130788
1307892016-07-03  Mark Oteiza  <mvoteiza@udel.edu>
130790
130791	* lisp/simple.el (save-mark-and-excursion): Add declare forms.
130792
1307932016-07-03  Paul Eggert  <eggert@cs.ucla.edu>
130794
130795	Re-fix open-network-stream responsiveness
130796
130797	Problem reported by Christer Ekholm (Bug#23864).
130798	* src/process.c (wait_reading_process_output): Further fix for
130799	typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu when
130800	wait == INFINITY and got_output_end_time is invalid.  See:
130801	https://bugs.gnu.org/23864#20
130802
1308032016-07-03  Alan Mackenzie  <acm@muc.de>
130804
130805	Remove redundant forms from CC Mode for faster fontification
130806
130807	* lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Remove four arms of
130808	the "main" cond form in the function, which have been redundant since the
130809	extraction of c-font-lock-cut-off-declarators from the function on
130810	2016-06-15/16.
130811
1308122016-07-03  Alan Mackenzie  <acm@muc.de>
130813
130814	Speed up CC Mode fontification with less accurate functions extending region
130815
130816	* lisp/progmodes/cc-fonts.el (c-font-lock-cut-off-declarators)
130817	(c-font-lock-enclosing-decls)
130818	* lisp/progmodes/cc-mode.el (c-fl-decl-start): Replace invocations of
130819	c-beginning-of-decl-1 with less accurate invocations of
130820	c-syntactic-skip-backwards to speed up fontification.
130821
1308222016-07-03  Tino Calancha  <tino.calancha@gmail.com>
130823
130824	Ibuffer: unmark all buffers without confirmation
130825
130826	* lisp/ibuffer.el (ibuffer-unmark-all-marks): New command (Bug#23680).
130827	(ibuffer-mouse-popup-menu): Use it.
130828	(ibuffer-mode): Update mode doc.
130829	(ibuffer-mode-map): Bind 'ibuffer-unmark-all-marks' to 'U'.
130830	Rebind 'ibuffer-do-replace-regexp' to 'r'.
130831
1308322016-07-03  Paul Eggert  <eggert@cs.ucla.edu>
130833
130834	Fix open-network-stream responsiveness
130835
130836	Problem reported by Constantin Kulikov (Bug#23684).
130837	* src/process.c (wait_reading_process_output):
130838	Fix typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu
130839	when wait == INFINITY and got_output_end_time is invalid.
130840	In this case the code should break, not continue.
130841
1308422016-07-02  Tino Calancha  <tino.calancha@gmail.com>
130843
130844	Ibuffer: Mark buffers by content
130845
130846	* lisp/ibuf-ext.el (ibuffer-mark-by-content-regexp): New command.
130847	(ibuffer-never-search-content-name): New option.
130848	(ibuffer-never-search-content-mode): Idem.
130849	(ibuffer-mark-by-content-regexp): Use them (Bug#23734).
130850
130851	* lisp/ibuffer.el (ibuffer-mode-map): Bind new command to '% c' and '% g'.
130852	(ibuffer-mode): Update mode documentation.
130853
1308542016-07-02  Tino Calancha  <tino.calancha@gmail.com>
130855
130856	ibuffer-copy-filename-as-kill verbosity increase
130857
130858	* lisp/ibuf-ext.el (ibuffer-copy-filename-as-kill):
130859	Use shorter name, result, for a local bound var.
130860	Show the string result in the echo area.
130861
1308622016-07-02  Eli Zaretskii  <eliz@gnu.org>
130863
130864	Fix cursor positioning on TTY frames after stretch glyph
130865
130866	* src/term.c (append_glyph, append_composite_glyph)
130867	(append_glyphless_glyph): Set the avoid_cursor_p and multibyte_p
130868	members of the produced 'struct glyph'.  Fixes cursor positioning
130869	on the first character after a stretch glyph produced from
130870	line-prefix, wrap-prefix, etc. on TTY frames.
130871
1308722016-07-02  Eli Zaretskii  <eliz@gnu.org>
130873
130874	Fix vertical-movement in buffers with wrap-prefix
130875
130876	* src/indent.c (Fvertical_motion): Zero the current_y coordinate
130877	whenever we zero the vpos vertical position of the iterator.
130878	* src/xdisp.c (move_it_in_display_line_to): Handle line-prefix and
130879	wrap-prefix regardless of whether the current Y coordinate is
130880	inside the window dimensions.  (Bug#23879)
130881
1308822016-07-02  Eli Zaretskii  <eliz@gnu.org>
130883
130884	Rename FACE_OPT_FROM_ID to FACE_FROM_ID_OR_NULL
130885
130886	* src/dispextern.h (FACE_FROM_ID_OR_NULL): Renamed from
130887	FACE_OPT_FROM_ID; all callers changed.
130888	* src/xdisp.c (extend_face_to_end_of_line): Call FACE_FROM_ID, not
130889	FACE_FROM_ID_OR_NULL, as the resulting face is immediately
130890	dereferenced.
130891	(fill_gstring_glyph_string): Call FACE_FROM_ID, not
130892	FACE_FROM_ID_OR_NULL, as the resulting face will be dereferenced
130893	when the glyph string is drawn.
130894	(BUILD_COMPOSITE_GLYPH_STRING): Call FACE_FROM_ID, not
130895	FACE_FROM_ID_OR_NULL, as the resulting face will be dereferenced
130896	in fill_composite_glyph_string.
130897	(calc_line_height_property): Call FACE_FROM_ID_OR_NULL rather that
130898	FACE_FROM_ID, since the function and its caller can cope with that
130899	situation.  Conflate 3 tests of missing face or font into just
130900	one.
130901	* src/xfaces.c (Fx_list_fonts, Fface_font, lookup_face): Call
130902	FACE_FROM_ID_OR_NULL rather that FACE_FROM_ID, since these
130903	functions can cope with that situation.
130904	(lookup_derived_face): Don't call FACE_FROM_ID if the result will
130905	not be used.
130906	* src/w32console.c (w32_face_attributes): Remove redundant 'eassert'.
130907
1309082016-07-01  Mark Oteiza  <mvoteiza@udel.edu>
130909
130910	* lisp/gnus/gnus-art.el (gnus-article-send-map): Remove extra quote.
130911
1309122016-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
130913
130914	* lisp/auth-source.el (auth-source--symbol-keyword): Fix namespace
130915
130916	i.e. rename from auto-source--symbol-keyword.
130917
1309182016-07-01  Dmitry Antipov  <dmantipov@yandex.ru>
130919
130920	Avoid yet another possible NULL pointer dereference found by GCC 6.1.1
130921
130922	* lwlib/lwlib.c (lw_get_all_values): Always check the value returned by
130923	get_widget_info.
130924
1309252016-06-30  Alan Mackenzie  <acm@muc.de>
130926
130927	CC Mode: truncate the semi-nonlit cache when applying syntax-table to a quote
130928
130929	This applies to applying or removing syntax-table text properties in raw
130930	strings which affect the stringiness of a piece of text.  This fixes the
130931	bug
130932	reported in
130933	https://lists.gnu.org/r/emacs-devel/2016-06/msg00695.html.
130934
130935	* lisp/progmodes/cc-engine.el (c-truncate-semi-nonlit-pos-cache): new
130936	defsubst.
130937	(c-invalidate-state-cache-1): Call new function in place of inline
130938	manipulation.
130939	(c-depropertize-raw-string, c-propertize-raw-string-opener): truncate the
130940	semi-nonlit cache when pertinent syntax-table text properties get applied to
130941	the text.
130942
1309432016-06-29  Dmitry Antipov  <dmantipov@yandex.ru>
130944
130945	Minor tweaks to openp
130946
130947	* src/lread.c (openp): Move invariant code out of the loop
130948	and thus avoid redundant calls to memcpy.  Adjust comments.
130949
1309502016-06-29  Dmitry Antipov  <dmantipov@yandex.ru>
130951
130952	Simplify handling of frame parameters
130953
130954	* src/frame.c (x_set_frame_parameters): Avoid extra loop processing
130955	foreground color, background color and font parameters.  Adjust
130956	comments.
130957
1309582016-06-29  Dmitry Antipov  <dmantipov@yandex.ru>
130959
130960	Cleanup around mature character manipulation functions
130961
130962	* lisp/international/mule-diag.el (decode-codepage-char): Remove.
130963
130964	* lisp/ldefs-boot.el (toplevel): Adjust accordingly.
130965
130966	* lisp/subr.el (toplevel): Do not advertise calling conventions
130967	for 'decode-char' and 'encode-char'.
130968
130969	* src/charset.c (Fdecode_char, Fencode_char): Remove unused 3rd arg.
130970
1309712016-06-29  Alan Mackenzie  <acm@muc.de>
130972
130973	Fix C-M-a in a C function finding the start of a macro preceding it.
130974
130975	Also amend some pertinent documentation.  This fixes bug #23818.
130976
130977	* lisp/progmodes/cc-engine.el (c-beginning-of-decl-1): Also check for a
130978	virtual semicolon at a place where we check for other types of statement ends.
130979
130980	* lisp/progmodes/cc-vars.el (c-macro-nacmes-with-semicolon): Remove from the
130981	doc string the bit saying that the variable is a prototype and liable to
130982	change.
130983
130984	* doc/misc/cc-mode.texi (Macros with ;): Enhance, stating that configuring
130985	macros with semicolon can prevent C-M-a missing the beginning of defun.
130986
1309872016-06-28  Dmitry Antipov  <dmantipov@yandex.ru>
130988
130989	Avoid possible NULL pointer dereference found by GCC 6.1.1
130990
130991	* src/xfns.c (x_get_monitor_attributes_xrandr): Always check
130992	the value returned by XRRGetOutputInfo.
130993
1309942016-06-28  Tino Calancha  <tino.calancha@gmail.com>
130995
130996	Dired recognize dirs when file size in human units
130997
130998	* lisp/dired.el (dired-re-inode-size): Update 'dired-re-inode-size'
130999	to match when Dired displays the allocated file size column
131000	in human readable units (Bug#22255).
131001
1310022016-06-28  Mark Oteiza  <mvoteiza@udel.edu>
131003
131004	Fix breakage from previous change
131005
131006	* lisp/textmodes/tex-mode.el (tex-font-lock-keywords-1):
131007	* lisp/vc/log-view.el (log-view-font-lock-keywords): Quote face.
131008
1310092016-06-28  Mark Oteiza  <mvoteiza@udel.edu>
131010
131011	Fix breakage from previous change.
131012
131013	* lisp/textmodes/texinfo.el (texinfo-font-lock-keywords): Quote face.
131014
1310152016-06-28  Eli Zaretskii  <eliz@gnu.org>
131016
131017	Add tests for copying properties by 'format'
131018
131019	* test/src/editfns-tests.el (format-properties): New test.
131020
1310212016-06-28  Eli Zaretskii  <eliz@gnu.org>
131022
131023	Fix copying properties in 'format' when it produces padding
131024
131025	* src/textprop.c (extend_property_ranges): Correct range extension
131026	when the new end is beyond the old end.  (Bug#23859)
131027
1310282016-06-27  Alan Third  <alan@idiocy.org>
131029
131030	Enable dividers in NS (bug#22973)
131031
131032	src/nsfns.m: Add color settings functions to ns_frame_park_handlers.
131033	src/nsterm.m (ns_draw_window_divider): ns_focus has to go before the
131034	attempt to set the color.
131035	src/nsterm.m (ns_draw_vertical_window_border): This had the same bug as
131036	above, although I didn't see any errors.
131037
1310382016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
131039
131040	Fix the prefix action of shr-copy-url
131041
131042	* lisp/net/shr.el (shr-copy-url): Make the command really copy
131043	the image url if given a prefix.
131044
1310452016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
131046
131047	New functions svg-text and svg-remove
131048
131049	* doc/lispref/display.texi (SVG Images): Document svg-remove.
131050
131051	* doc/lispref/display.texi (SVG Images): Document svg-text.
131052
131053	* lisp/svg.el (svg-remove): New function.
131054	(svg-text): New function.
131055
1310562016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
131057
131058	Add new function dom-remove-node
131059
131060	* doc/lispref/text.texi (Document Object Model): Document
131061	dom-remove-node.
131062
131063	* lisp/dom.el (dom-remove-node): New function.
131064
1310652016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
131066
131067	Add a new function `svg-embed'
131068
131069	* doc/lispref/display.texi (SVG Images): Document `svg-embed'.
131070
131071	* lisp/svg.el (svg-embed): New function.
131072	(svg--image-data): Ditto.
131073
1310742016-06-27  Eli Zaretskii  <eliz@gnu.org>
131075
131076	* lisp/descr-text.el (describe-char-unicode-data): Fix copy/paste errors.
131077
1310782016-06-27  Eli Zaretskii  <eliz@gnu.org>
131079
131080	Fix 'move-to-window-line' when EOB is on last screen line
131081
131082	* src/window.c (displayed_window_lines): Fix an off-by-one error
131083	when the bottom of the last display line is exactly at window's
131084	last pixel.  Remove kludgey fix for TTY frames that is no longer
131085	needed.  (Bug#15760)
131086	(Fmove_to_window_line): Doc fix.
131087
131088	* doc/lispref/positions.texi (Screen Lines): Clarify and make more
131089	accurate the documentation of 'move-to-window-line'.
131090
1310912016-06-27  Alan Mackenzie  <acm@muc.de>
131092
131093	Amend a cache so that typing into C++ raw strings has no undue delay.
131094
131095	Also amend the code so that low-level searches to the end of literals are done
131096	only when these positions get used.
131097
131098	* lisp/progmodes/cc-engine.el (c-crosses-statement-barrier-p): Use the new
131099	c-literal-start instead of c-literal-limit.
131100	(c-state-semi-nonlit-pos-cache): Change the structure of this cache, such that
131101	it stores details of the literal at a point, rather than merely points outside
131102	of literals.
131103	(c-state-semi-pp-to-literal, c-state-full-pp-to-literal)
131104	(c-cache-to-parse-ps-state, c-parse-ps-state-to-cache, c-ps-state-cache-pos)
131105	(c-parse-ps-state-below, c-literal-start): New functions.
131106	(c-state-semi-safe-place): Removed.
131107	(c-in-literal): Use c-state-semi-pp-to-literal, so as not to scan to its end.
131108	(c-literal-limits, c-determine-limit-get-base): consequential amendments.
131109	(c-find-decl-spots, c-before-change-check-<>-operators, c-raw-string-pos)
131110	(c-guess-basic-syntax (CASE 2)): Avoid needless scans to end of literals.
131111
131112	* lisp/progmodes/cc-fonts.el (c-font-lock-doc-comments): Avoid needless scans
131113	to end of literals.
131114
131115	* lisp/progmodes/cc-mode.el (c-fl-decl-start): Avoid needless scans to end of
131116	literals.
131117
131118	* lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun)
131119	(c-defun-name, c-declaration-limits): Avoid needless scans to end of literals.
131120
1311212016-06-26  Dmitry Gutov  <dgutov@yandex.ru>
131122
131123	Also handle escaping when string begins with a quote
131124
131125	* lisp/progmodes/ruby-mode.el (ruby-toggle-string-quotes):
131126	Handle quoting of the first character in the string.
131127
131128	* test/lisp/progmodes/ruby-mode-tests.el
131129	(ruby-toggle-string-quotes-quotes-correctly): Update.
131130
1311312016-06-26  Sriram Thaiyar  <sriram.thaiyar@gmail.com>  (tiny change)
131132
131133	Fix quote escaping in ruby-toggle-string-quotes
131134
131135	* lisp/progmodes/ruby-mode.el (ruby-toggle-string-quotes):
131136	Change logic to quote based on the current quote of the string.
131137
131138	* test/lisp/progmodes/ruby-mode-tests.el
131139	(ruby-toggle-string-quotes-quotes-correctly): Add test.
131140
1311412016-06-26  Noam Postavsky  <npostavs@gmail.com>
131142
131143	Fix test-completion with completion-regexp-list
131144
131145	* src/minibuf.c (Ftest_completion): Handle alist COLLECTION with non-nil
131146	completion-regexp-list (Bug #23533).
131147
1311482016-06-26  Paul Eggert  <eggert@cs.ucla.edu>
131149
131150	Try other addresses when connecting to multihomed
131151
131152	Problem reported by Juliusz Chroboczek (Bug#17976)
131153	and by Artur Malabarba (Bug#23620).
131154	Patch from a suggestion by Andreas Schwab in:
131155	https://bugs.gnu.org/17976#39
131156	This patch is for non-MS-Windows platforms.
131157	I don't know the situation on MS-Windows.
131158	* src/process.c (connecting_status):
131159	New function, for (connect . ADDRINFOS).
131160	(connect_network_socket, check_for_dns, wait_for_socket_fds)
131161	(wait_while_connecting, wait_reading_process_output, status_notify):
131162	Use it.
131163	(decode_status, Fmake_network_process):
131164	Support (connect . ADDRINFOS) status.
131165	(connect_network_socket) [!WINDOWSNT]:
131166	If the connection failed and there are other addresses to try, do not
131167	signal an error; instead, loop around to try the next address.
131168	(wait_reading_process_output): Advance to the next address
131169	if there are multiple addresses and the first remaining address
131170	failed.
131171	* src/process.h (struct Lisp_Process.status): Adjust comment
131172	to describe (connect . ADDRINFOS).
131173
1311742016-06-26  Paul Eggert  <eggert@cs.ucla.edu>
131175
131176	Fix GNUC_PREREQ for GCC 2.8.1 etc.
131177
131178	Problem reported by Eli Zaretskii in:
131179	https://lists.gnu.org/r/emacs-devel/2016-06/msg00608.html
131180	* src/conf_post.h (GNUC_PREREQ): Port to GCC versions like GCC
131181	2.8.1 (1998), which come before GCC 3.0 and which have nonzero
131182	patchlevel numbers.
131183
1311842016-06-26  Eli Zaretskii  <eliz@gnu.org>
131185
131186	Don't set 'bidi-paragraph-direction' in 'ansi-term'
131187
131188	* lisp/term.el (ansi-term): Remove unnecessary setting of
131189	'bidi-paragraph-direction'.  The underlying problem is solved in
131190	bidi.c by changing the regexps that define the paragraph beginning
131191	and end.  (Bug#20611)
131192
1311932016-06-26  Michael Albinus  <michael.albinus@gmx.de>
131194
131195	Sync with Tramp 2.3.0
131196
131197	* doc/misc/trampver.texi:
131198	* lisp/net/trampver.el: Change version to "2.3.0".
131199
1312002016-06-26  Paul Eggert  <eggert@cs.ucla.edu>
131201
131202	Fix GNUC_PREREQ off-by-1 typo
131203
131204	Problem reported by Martin Rudalics in:
131205	https://lists.gnu.org/r/emacs-devel/2016-06/msg00587.html
131206	* src/conf_post.h (GNUC_PREREQ) [__GNUC_PATCHLEVEL__]:
131207	Fix < vs <= typo.
131208
1312092016-06-26  Michael Albinus  <michael.albinus@gmx.de>
131210
131211	Fix some oddities in Tramp's rsync and smb methods
131212
131213	* lisp/net/tramp-sh.el (tramp-methods) <rsync>: Add "-p" and
131214	"-s" arguments.
131215	(tramp-do-copy-or-rename-file-out-of-band):
131216	Call `file-name-directory' also for remote NEWNAME.
131217
131218	* test/lisp/net/tramp-tests.el (tramp-test15-copy-directory):
131219	Do not skip for tramp-smb.el.  Test als COPY-CONTENTS case.
131220	(tramp-test24-file-name-completion): Improve check for
131221	hostname completion.
131222	(tramp--test-rsync-p): New defun.
131223	(tramp-test31-special-characters)
131224	(tramp-test31-special-characters-with-stat)
131225	(tramp-test31-special-characters-with-perl)
131226	(tramp-test31-special-characters-with-ls, tramp-test32-utf8)
131227	(tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
131228	(tramp-test32-utf8-with-ls): Skip for "rsync".
131229
131230	* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory):
131231	Check also for CIFS capabilities.
131232
1312332016-06-26  Ury Marshak  <ury.marshak@gmail.com>  (tiny change)
131234
131235	Fix FRAME_INTERNAL_BORDER_WIDTH use (Bug#23841)
131236
131237	* src/nsfns.m (x_set_internal_border_width): Replace assignments to
131238	FRAME_INTERNAL_BORDER_WIDTH.
131239
1312402016-06-25  Leo Liu  <sdl.web@gmail.com>
131241
131242	Deprecations (bug#23850)
131243
131244	* lisp/subr.el (string-to-unibyte, string-as-unibyte,
131245	string-to-multibyte, string-as-multibyte): Make obsolete.
131246
1312472016-06-25  Tino Calancha  <tino.calancha@gmail.com>
131248
131249	Do not prompt twice to save a buffer
131250
131251	* lisp/hilit-chg.el (highlight-markup-buffers): (Bug#23824).
131252
1312532016-06-25  Alan Third  <alan@idiocy.org>
131254
131255	Move text line right when in box (bug#23755)
131256
131257	* src/nsterm.m (ns_draw_glyph_string_foreground): Create to take
131258	CHAR_GLYPH specific code and move glyphs right if within a box.
131259	(ns_draw_glyph_string): Move CHAR_GLYPH specific code into above
131260	function.
131261
1312622016-06-25  Paul Eggert  <eggert@cs.ucla.edu>
131263
131264	Merge from origin/emacs-25
131265
131266	0377fe2 ; Spelling fixes
131267	f253695 Update docs for `customize-mode'
131268	4395aaa Fix documentation of 'assoc-string' and 'compare-strings'
131269	ab0ebb9 ; Only load .elc file in tests.
131270	a98aa02 Error on multibyte characters in HTTP request
131271	ea512a7 * lisp/gnus/mm-decode.el (mm-convert-shr-links): Mask keys th...
131272	8297331 ; Revert "Ensure undo-boundary after insert-file-contents."
131273	dc5e65b Unset GIT_DIR when calling Git commands
131274	6cdd8f7 Ensure undo-boundary after insert-file-contents.
131275	4793f5f Clarify documentation of 'line-spacing' and 'line-height'
131276	5f37572 Fix removal of variables from process-environment
131277	e5e886d * admin/authors.el (authors-ignored-files, authors-valid-file...
131278	db0777b * admin/authors.el (authors-aliases, authors-fixed-case): Add...
131279
131280	# Conflicts:
131281	#	doc/lispref/modes.texi
131282	#	lisp/gnus/mm-decode.el
131283
1312842016-06-25  Mark Oteiza  <mvoteiza@udel.edu>
131285
131286	Teach net-utils more iproute2 and nl80211 tools
131287
131288	* lisp/net/net-utils.el (iwconfig-program): Add iw(8).
131289	(iwconfig-program-options): Add "dev" argument for iw.  Another useful
131290	option is "phy"; beyond that one needs to know the interface name.
131291	(netstat-program): Add ss(8).
131292	(route-program): Add ip(8).
131293	(route-program-options): Add "route" argument for ip.
131294
1312952016-06-24  Leo Liu  <sdl.web@gmail.com>
131296
131297	Use use-region-p in prolog.el
131298
131299	* lisp/progmodes/prolog.el (region-exists-p): Remove.
131300	* lisp/progmodes/prolog.el (prolog-edit-menu-runtime,
131301	prolog-edit-menu-insert-move): Use use-region-p.
131302
1313032016-06-24  Leo Liu  <sdl.web@gmail.com>
131304
131305	Remove compatibility with Emacs 24.3 in octave-mode
131306
131307	* lisp/progmodes/octave.el: Clean up and remove compatibility with
131308	Emacs 24.3.
131309
1313102016-06-24  Alan Mackenzie  <acm@muc.de>
131311
131312	Ensure hack-local-variables is run in a fundamental mode buffer.
131313
131314	This fixes bug #23827.
131315
131316	* src/buffer.c (set-buffer-major-mode): Run `fundamental-mode' when the buffer
131317	gets set to that mode, so that `run-mode-hooks', and thus
131318	`hack-local-variables' get run.
131319
1313202016-06-24  Tino Calancha  <tino.calancha@gmail.com>
131321
131322	Fix caller to ediff-setup
131323
131324	* lisp/hilit-chg.el (hilit-chg-get-diff-info): #Bug23820.
131325
1313262016-06-24  Alan Mackenzie  <acm@muc.de>
131327
131328	Implement ' separators in C++ integer literals.
131329
131330	* lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): insert
131331	c-before-after-change-digit-quote into the C++ value.
131332	(c-before-font-lock-functions): Insert c-depropertize-new-text into the values
131333	for all languages.  Insert c-before-after-change-digit-quote into the C++
131334	value.
131335
131336	* lisp/progmodes/cc-mode.el (c-depropertize-CPP): Wrap the function in
131337	c-save-buffer-state.
131338	(c-depropertize-new-text, c-before-after-change-digit-quote): New functions.
131339
1313402016-06-24  Paul Eggert  <eggert@cs.ucla.edu>
131341
131342	Update from gnulib
131343
131344	This incorporates:
131345	2016-06-24 intprops: port better to GCC 7
131346	2016-06-13 xalloc-oversized: port to GCC 7; fewer warnings
131347	* doc/misc/texinfo.tex, lib/xalloc-oversized.h, lib/intprops.h:
131348	Copy from gnulib.
131349
1313502016-06-24  Martin Rudalics  <rudalics@gmx.at>
131351
131352	Remove two uses of 'min' in Fwindow_text_pixel_size
131353
131354	* src/xdisp.c (Fwindow_text_pixel_size): Don't use 'min' since
131355	it calls move_it_to twice.  Suggested by Eli Zaretskii.
131356
1313572016-06-23  Paul Eggert  <eggert@cs.ucla.edu>
131358
131359	Clarify intent of FACE_FROM_ID and IMAGE_FROM_ID
131360
131361	* src/dispextern.h (FACE_OPT_FROM_ID): Don’t use FACE_FROM_ID,
131362	since it is intended to be used only when it returns a non-null
131363	pointer, and here the pointer might be null.
131364	(IMAGE_OPT_FROM_ID): Don’t use IMAGE_FROM_ID, for similar reasons.
131365
1313662016-06-23  Mark Oteiza  <mvoteiza@udel.edu>
131367
131368	Remove some more face aliases obsoleted in 22.1
131369
131370	* lisp/eshell/em-ls.el (eshell-ls-directory-face, eshell-ls-symlink-face,
131371	eshell-ls-executable-face, eshell-ls-readonly-face,
131372	eshell-ls-unreadable-face, eshell-ls-special-face,
131373	eshell-ls-missing-face, eshell-ls-archive-face, eshell-ls-backup-face,
131374	eshell-ls-product-face, eshell-ls-clutter-face): Remove.
131375	* lisp/isearch.el (isearch-lazy-highlight-face, lazy-highlight-face): Remove.
131376	(isearch-lazy-highlight-update): Use face symbol.
131377	* lisp/net/sieve-mode.el (sieve-control-commands-face,
131378	sieve-action-commands-face, sieve-test-commands-face,
131379	sieve-tagged-arguments-face): Remove.
131380	(sieve-font-lock-keywords): Use non-obsolete faces.
131381	* lisp/progmodes/sh-script.el (sh-heredoc-face): Remove.
131382	(sh-get-indent-info, sh-prev-line): Use face symbol.
131383	* lisp/textmodes/tex-mode.el (tex-font-lock-keywords-1):
131384	Use non-obsolete face.
131385	(tex-math-face, tex-verbatim-face): Remove.
131386	(tex-font-lock-syntactic-face-function): Use face symbols.
131387
1313882016-06-23  Mark Oteiza  <mvoteiza@udel.edu>
131389
131390	Remove some face aliases obsoleted in 22.1
131391
131392	* lisp/faces.el (modeline-inactive, modeline-highlight, modeline-buffer-id):
131393	* lisp/hilit-chg.el (highlight-changes-face, highlight-changes-delete-face):
131394	* lisp/info.el (Info-title-1-face, Info-title-2-face, Info-title-3-face,
131395	Info-title-4-face, info-menu-5):
131396	* lisp/obsolete/old-whitespace.el (whitespace-highlight-face):
131397	* lisp/paren.el (show-paren-match-face, show-paren-mismatch-face):
131398	* lisp/progmodes/make-mode.el (makefile-space-face):
131399	* lisp/textmodes/texinfo.el (texinfo-heading-face): Remove.
131400	(texinfo-font-lock-keywords): Use texinfo-heading face.
131401	* lisp/vc/add-log.el (change-log-date-face, change-log-name-face,
131402	change-log-email-face, change-log-file-face, change-log-list-face,
131403	change-log-conditionals-face, change-log-function-face,
131404	change-log-acknowledgement-face):
131405	* lisp/vc/diff-mode.el (diff-header-face, diff-file-header-face,
131406	diff-index-face, diff-hunk-header-face, diff-removed-face, diff-added-face,
131407	diff-changed-face, diff-function-face, diff-context-face,
131408	diff-nonexistent-face): Remove.
131409	(diff-use-changed-face, diff-font-lock-keywords): Use non-obsolete face
131410	symbols.
131411	(diff-hunk-file-names): Fix comment.
131412	(diff-refine-change): Remove.
131413	(diff-refine-removed, diff-refine-added, diff-refine-hunk): Use
131414	non-obsolete face.
131415	* lisp/vc/log-view.el (log-view-file-face, log-view-message-face): Remove.
131416	(log-view-font-lock-keywords): Use non-obsolete face names.
131417	* lisp/vc/pcvs-info.el (cvs-header-face, cvs-filename-face, cvs-unknown-face,
131418	cvs-handled-face, cvs-need-action-face, cvs-marked-face, cvs-msg-face):
131419	* lisp/wid-edit.el (widget-documentation-face, widget-button-face,
131420	widget-field-face, widget-single-line-field-face, widget-inactive-face,
131421	widget-button-pressed-face):
131422	* lisp/woman.el (woman-italic-face, woman-bold-face, woman-unknown-face,
131423	woman-addition-face): Remove.
131424
1314252016-06-23  Eli Zaretskii  <eliz@gnu.org>
131426
131427	* lisp/international/characters.el (standard-case-table): Improve last change.
131428
1314292016-06-23  Eli Zaretskii  <eliz@gnu.org>
131430
131431	Improve results of 'upcase' for characters with title-case
131432
131433	* lisp/international/characters.el (standard-case-table): Swap the
131434	order of some lines, to have 'upcase' return the upper-case
131435	variant, not the title-case, for some characters whose lower-case
131436	map to the same codepoints.  (Bug#23833)
131437
1314382016-06-23  Alan Mackenzie  <acm@muc.de>
131439
131440	Make typing into incomplete C++ raw strings work, and make it work fast enough
131441
131442	* lisp/progmodes/cc-engine.el (c-beginning-of-macro, c-state-pp-to-literal):
131443	Put `save-match-data' around calls to `looking-at' to enable the use of the
131444	match data in higher level functions.
131445
131446	* lisp/progmodes/cc-fonts.el (c-font-lock-declarations)
131447	(c-font-lock-cut-off-declarators): Use `limit' rather than `(point-max)' as a
131448	limit to speed up handling of C++ raw strings.
131449
1314502016-06-23  Eli Zaretskii  <eliz@gnu.org>
131451
131452	Fix handling of LWINDOW key on MS-Windows
131453
131454	* src/w32fns.c (funhook): Correct a typo which broke handling of
131455	the LWINDOW key.  (Bug#23830)
131456
1314572016-06-22  Eli Zaretskii  <eliz@gnu.org>
131458
131459	Update Unicode data files from Unicode 9.0.0
131460
131461	* admin/unidata/copyright.html:
131462	* admin/unidata/BidiBrackets.txt:
131463	* admin/unidata/UnicodeData.txt: Update from Unicode 9.0.0, just
131464	released.
131465
1314662016-06-22  Eli Zaretskii  <eliz@gnu.org>
131467
131468	Fix test for whether the '.el' file is newer than '.elc'
131469
131470	* src/lread.c (Fload): Don't overwrite the last character of the
131471	file name in FOUND with 'c', unless the file name ended in ".elc"
131472	to begin with.  Don't treat empty files as byte-compiled.  See
131473	https://lists.gnu.org/r/emacs-devel/2016-06/msg00463.html
131474	for more details of the problem this caused.
131475
1314762016-06-22  Eli Zaretskii  <eliz@gnu.org>
131477
131478	Fix 'insert-file-contents' when REPLACE is non-nil
131479
131480	* src/fileio.c (maybe_move_gap): New function to move the gap to
131481	the end of a buffer, if it isn't there already.
131482	(Finsert_file_contents): Call 'maybe_move_gap' before using
131483	conversion_buffer's text as a C 'char' array.  (Bug#23659)
131484	* src/coding.c (decode_eol): Compute the byte increment before
131485	calling del_range_2, because the latter can invalidate the pointer
131486	to buffer text.
131487
1314882016-06-22  Ken Brown  <kbrown@cornell.edu>
131489
131490	Avoid compiler warning
131491
131492	* src/w32fns.c (Fx_show_tip): Don’t jump over auto initialization.
131493
1314942016-06-22  Stefan Monnier  <monnier@iro.umontreal.ca>
131495
131496	* lisp/emacs-lisp/syntax.el (syntax-propertize): Flush extended region.
131497
1314982016-06-22  Ken Brown  <kbrown@cornell.edu>
131499
131500	Fix last change to FRAME_INTERNAL_BORDER_WIDTH
131501
131502	* src/w32fns.c (x_set_internal_border_width): Don’t use
131503	FRAME_INTERNAL_BORDER_WIDTH(), which is now a function call, as an
131504	lvalue.
131505
1315062016-06-21  Paul Eggert  <eggert@cs.ucla.edu>
131507
131508	Improve --without-x GCC pacification
131509
131510	* src/composite.c (autocmp_chars):
131511	* src/conf_post.h (DebPrint) [HAVE_NTGUI && !DebPrint && !EMACSDEBUG]:
131512	Use simpler ((void) 0) for no-op expression returning void.
131513	* src/dispextern.h [HAVE_WINDOW_SYSTEM]:
131514	Include fontset.h, for face_for_char.
131515	(FACE_SUITABLE_FOR_ASCII_CHAR_P, FACE_FOR_CHAR):
131516	Now inline functions instead of macros.  This avoids the need for
131517	all those casts to void.
131518	(FACE_SUITABLE_FOR_ASCII_CHAR_P): Omit 2nd (unused) arg.
131519	All uses changed.
131520	* src/frame.c (Ficonify_frame, Fset_frame_position):
131521	* src/xdisp.c (Fmove_point_visually, show_mouse_face):
131522	* src/xdisp.c (note_mode_line_or_margin_highlight)
131523	(note_mouse_highlight):
131524	Assume HAVE_WINDOW_SYSTEM for simplicity, since the code should
131525	now work either way without generating warnings.
131526	* src/frame.c (display_available) [HAVE_WINDOW_SYSTEM]: New function.
131527	(window_system_available) [HAVE_WINDOW_SYSTEM]: Move to frame.h.
131528	(decode_window_system_frame): Use check_window_system instead of
131529	rolling the code ourself.  Return needed only if HAVE_WINDOW_SYSTEM.
131530	(decode_window_system_frame, check_window_system):
131531	Merge the HAVE_WINDOW_SYSTEM and !HAVE_WINDOW_SYSTEM versions into one.
131532	* src/frame.c (Ficonify_frame, Fset_frame_position):
131533	* src/xdisp.c (show_mouse_face, define_frame_cursor1)
131534	(note_mouse_highlight):
131535	Narrow the scope of the HAVE_WINDOW_SYSTEM #ifdef;
131536	this is a better way to pacify GCC.
131537	* src/xdisp.c (x_set_left_fringe, x_set_right_fringe)
131538	(x_set_right_divider_width, x_set_bottom_divider_width):
131539	* src/xfns.c (x_set_internal_border_width):
131540	Don’t use what are now function calls as lvalues.
131541	* src/frame.h (WINDOW_SYSTEM_RETURN): New macro.
131542	(decode_window_system_frame, check_window_system):
131543	Use it, to avoid the need for duplicate declarations.
131544	(window_system_available): Now an inline function.
131545	(display_available): New decl.
131546	(frame_dimension): New inline function.
131547	(FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
131548	(FRAME_RIGHT_FRINGE_WIDTH, FRAME_TOTAL_FRINGE_WIDTH)
131549	(FRAME_INTERNAL_BORDER_WIDTH, FRAME_RIGHT_DIVIDER_WIDTH)
131550	(FRAME_BOTTOM_DIVIDER_WIDTH):
131551	Use it, to avoid the need for duplicate definitions.
131552	Now inline functions instead of macros.
131553	* src/gnutls.c (gnutls_log_function2i): Remove.
131554	* src/gnutls.h (GNUTLS_LOG2i): Use ‘message’ directly.
131555	This avoids complaints about gnutls_log_function2i being defined
131556	and not used on older platforms that do not need to call GNUTLS_LOG2i.
131557	* src/image.c (DefaultDepthOfScreen) [0]: Remove unused macro.
131558	* src/lisp.h (AUTO_STRING_WITH_LEN): Revert change from ‘type id =
131559	expr’ to ‘type id; id = expr’, as this would suppress valid
131560	jump-misses-init diagnostics.  Let’s find a better way to address
131561	the problem.
131562	* src/vm-limit.c (__MALLOC_HOOK_VOLATILE):
131563	Define only if needed.
131564	* src/xdisp.c (handle_single_display_spec):
131565	Simplify fringe_bitmap computation.
131566	(define_frame_cursor1): Do nothing unless in a window system.
131567	All callers changed and simplified.
131568	* src/xfaces.c (realize_default_face):
131569	Use a simpler way to pacify GCC when a return value is not used
131570	on some platforms.
131571
1315722016-06-21  Phillip Lord  <phillip.lord@russet.org.uk>
131573
131574	Ensure undo-boundary after all commands
131575
131576	* lisp/simple.el (undo-auto--boundaries): Ensure an undo-boundary after
131577	  every command whether it (apparently) changes the buffer or not.
131578
131579	See Bug#23785 for discussion.
131580
1315812016-06-21  Eli Zaretskii  <eliz@gnu.org>
131582
131583	Fix vertical layout calculations when newline has line-height property
131584
131585	* src/xdisp.c (move_it_in_display_line_to): Reset the iterator's
131586	'constrain_row_ascent_descent_p' flag after processing the
131587	newline, similar to what 'display_line' does.  Without this, the
131588	flag remains set once set by x_produce_glyphs, and causes the
131589	vertical layout calculations to go awry, because Emacs thinks the
131590	screen lines have zero height.	(Bug#23850)
131591
1315922016-06-20  Ken Brown  <kbrown@cornell.edu>
131593
131594	Fix compiler warnings in Cygwin-w32 build
131595
131596	* src/conf_post.h (DebPrint) [!EMACSDEBUG]: Add empty do-while
131597	loop to avoid compiler warnings about empty body of 'if'
131598	statement.
131599
131600	* src/image.c [HAVE_NTGUI] (DefaultDepthOfScreen): Disable unused
131601	macro.
131602	(x_create_bitmap_from_data): Declare 'frame'.
131603	(x_create_bitmap_from_file): Don't declare unused variable
131604	'dpyinfo'.
131605
131606	* src/lisp.h (AUTO_STRING_WITH_LEN): Avoid initialization to
131607	prevent "jump-misses-init" compiler warnings.
131608
131609	* src/w32fns.c (check_w32_winkey_state): Define and use only if
131610	WINDOWSNT.
131611	(Fx_show_tip): Declare 'f'.
131612	(Fx_file_dialog): Declare 'filter_a' only if not NTGUI_UNICODE.
131613	(w32_strerror): Use format specifier %d for sprintf argument of
131614	type int.
131615	(emacs_abort): Cast sprintf argument of type DWORD to unsigned
131616	int, and use format specifier %x, for compatibility with Cygwin.
131617	(unicode_append_menu) [NTGUI_UNICODE]:
131618	* src/w32menu.c [NTGUI_UNICODE] (get_menu_item_info)
131619	(set_menu_item_info, unicode_append_menu)
131620	(unicode_message_box):
131621	* src/menu.c [NTGUI_UNICODE] (unicode_append_menu): Define as
131622	functions rather than macros to avoid "address will always
131623	evaluate as true" compiler warnings.
131624
131625	* src/w32font.c (w32_to_x_charset): Use format specifier %d for
131626	sprintf argument of type int.
131627
131628	* src/w32term.c (x_draw_glyphless_glyph_string_foreground): Cast
131629	sprintf argument of type int to unsigned int to match %X format
131630	specifier.
131631	(w32_scroll_bar_handle_click):
131632	(w32_horizontal_scroll_bar_handle_click): Declare 'f'.
131633
131634	* src/w32term.h (FRAME_DISPLAY_INFO): Explicitly discard unused
131635	argument.
131636
1316372016-06-20  Ken Brown  <kbrown@cornell.edu>
131638
131639	Fix compiler warnings in no-window-system-build
131640
131641	* src/composite.c (autocmp_chars): Declare and set 'f' only if
131642	HAVE_WINDOW_SYSTEM.
131643
131644	* src/dispextern.h (FACE_SUITABLE_FOR_ASCII_CHAR_P)
131645	(FACE_FOR_CHAR): Explicitly discard unused arguments.
131646
131647	* src/font.c (font_open_entity): Declare 'min_width' where it is
131648	first set, and only if HAVE_WINDOW_SYSTEM.
131649
131650	* src/frame.c [!HAVE_WINDOW_SYSTEM] (decode_window_system_frame):
131651	Define _Noreturn version to avoid "suggest attribute noreturn"
131652	compiler warning.
131653	(check_window_system): Declare as _Noreturn.
131654	(Ficonify_frame):
131655	(Fset_frame_position): Don’t declare and set 'f'.
131656
131657	* src/frame.h [!HAVE_WINDOW_SYSTEM] (decode_window_system_frame)
131658	(check_window_system):  Add _Noreturn prototypes.
131659	(FRAME_FRINGE_COLS, FRAME_TOTAL_FRINGE_WIDTH)
131660	(FRAME_LEFT_FRINGE_WIDTH, FRAME_RIGHT_FRINGE_WIDTH)
131661	(FRAME_INTERNAL_BORDER_WIDTH, FRAME_RIGHT_DIVIDER_WIDTH)
131662	(FRAME_BOTTOM_DIVIDER_WIDTH): Explicitly discard unused argument.
131663
131664	* src/xdisp.c (handle_single_display_spec): Declare
131665	'fringe_bitmap' only if HAVE_WINDOW_SYSTEM.
131666	(append_space_for_newline): Declare 'g' where it is first set.
131667	(Fmove_point_visually): Declare and set 'target_is_eol_p' only if
131668	HAVE_WINDOW_SYSTEM.
131669	(show_mouse_face): Declare and set 'f' and 'phys_cursor_on_p' only
131670	if HAVE_WINDOW_SYSTEM.
131671	(note_mode_line_or_margin_highlight):
131672	(note_mouse_highlight): Declare and set 'cursor' and 'pointer'
131673	only if HAVE_WINDOW_SYSTEM.
131674
131675	* src/xfaces.c (realize_default_face): Declare and set 'face' only
131676	if HAVE_X_WINDOWS.  Remove redundant #ifdef.
131677
1316782016-06-20  Michael Albinus  <michael.albinus@gmx.de>
131679
131680	Weaken test conditions in filenotify-tests.el
131681
131682	* test/lisp/filenotify-tests.el (file-notify--test-with-events):
131683	Fix thinko in test.
131684	(file-notify-test02-events, file-notify-test04-file-validity)
131685	(file-notify-test07-backup)
131686	(file-notify-test08-watched-file-in-watched-dir): Make test
131687	conditions more weak.  (Bug#23618)
131688
1316892016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
131690
131691	Minor ABLOCKS_BUSY cleanups in alloc.c
131692
131693	* src/alloc.c (ABLOCKS_BUSY): Rename arg to avoid potential clash
131694	with member ‘abase’ in definiens.
131695	(lisp_align_malloc, lisp_align_free): Use bool for boolean.
131696	Avoid compiler warning with fewer casts.
131697	(lisp_align_free): Check busy-field values; this can help the
131698	compiler a bit when optimizing, too.
131699
1317002016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
131701
131702	ASCII-fy coding-system-for-read used for Git commands
131703
131704	* lisp/vc/vc-git.el (vc-git--asciify-coding-system):
131705	New function.
131706	(vc-git-diff, vc-git-annotate-command): Use it.
131707
1317082016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
131709
131710	Prohibit multibyte characters in url-http-data
131711
131712	It didn't work anyway, but this makes any such errors more obvious
131713	by catching them earlier.
131714
131715	* lisp/url/url-http.el (url-http-create-request):
131716	Use string-to-unibyte (bug#23750).
131717
1317182016-06-19  Eli Zaretskii  <eliz@gnu.org>
131719
131720	Fix setting a range of char-table slots in a singular case
131721
131722	* src/chartab.c (char_table_set_range): Start the loop from the
131723	first character of the block to which FROM belongs.  (Bug#23797)
131724
131725	* test/src/chartab-tests.el: New test file.
131726
1317272016-06-19  Alan Mackenzie  <acm@muc.de>
131728
131729	Fix CC Mode fontification problem apparent in test file decls-6.cc.
131730
131731	* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Recognize
131732	"bar (gnu);" as a declarator only when the construct is directly inside a
131733	class (etc.) called "bar".
131734	(c-directly-in-class-called-p): New function.
131735
1317362016-06-19  Alan Mackenzie  <acm@muc.de>
131737
131738	c-renarrow-state-cache: take care when new point is inside old brace pair.
131739
131740	Also add display of point-min to the c-parse-state debugging output.
131741
131742	* lisp/progmodes/cc-engine.el (c-renarrow-state-cache): When the new
131743	point is inside an old recorded brace pair, clear the cache.
131744	(c-debug-parse-state): Output the value of point-min.
131745
1317462016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
131747
131748	Rename ALIGN to pointer_align
131749
131750	* src/alloc.c (pointer_align): Rename from ALIGN.
131751	This fixes Bug#23764 in a simpler way.
131752
1317532016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
131754
131755	Merge from origin/emacs-25
131756
131757	d1efbaf Fix documentation of completion functions
131758	65c96cc Clarify documentation of 'font-lock-maximum-decoration'
131759	2ad3d01 * doc/misc/cl.texi (Usage): Add some more details.
131760	b49cb0a Fbackward_prefix_chars: stay within buffer bounds
131761
1317622016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
131763
131764	Merge from origin/emacs-25
131765
131766	2317c61 Fix last todo-mode change
131767	5d4d8a3 Improve last todo-mode fix
131768	d7084f2 Fix todo-mode use of minibuffer completion keymap (bug#23695).
131769	27dec52 * src/alloc.c (ALIGN): Avoid error on DragonFly BSD.  (Bug#23...
131770	f526191 * lisp/emacs-lisp/nadvice.el (advice--make-docstring): Avoid ...
131771	e881070 * lisp/help-fns.el (describe-function-1): Avoid reporting adv...
131772	d308aa1 Minor grammar fix (bug#23746)
131773	20de667 Doc fixes for grammar and typos (bug#23746)
131774	a67a4e5 * doc/lispref/processes.texi (Process Buffers): Minor rewordi...
131775	27f440e Add cross-reference to ELisp manual
131776	10802d8 ; make change-history-commit
131777	4b2d77d * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bu...
131778	12e009e Restore initial undo boundary with viper
131779	291fe0a Revert "Fix viper undo breakage from undo-boundary changes"
131780	6921f4a Fix dbus crash on 32-bit Cygwin
131781
1317822016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
131783
131784	Merge from origin/emacs-25
131785
131786	9ae514a * etc/AUTHORS: Update the AUTHORS file
131787	3ca428e add entries to authors.el
131788	66d556b Fix eldoc-related freezes in python mode
131789	d59bcbc Handle mouse leaving initial window in `mouse-set-region' (Bu...
131790	27fe1e4 org.el: Fix bindings of < and > for calendar scrolling
131791	a813487 Fix undo boundary in recursive edit (Bug#23632)
131792	1f85b7c Doc fixes re alist-get.  (Bug#23548)
131793	ba3f206 * lisp/progmodes/python.el (inferior-python-mode): Avoid tabs...
131794	56fa055 * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>:...
131795	4c1370a * lisp/help-fns.el (describe-function-1): Fix handling of fil...
131796	a3f7ae8 * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
131797	601b9b2 * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
131798
1317992016-06-18  Nicolas Petton  <nicolas@petton.fr>
131800
131801	* lisp/emacs-lisp/map.el (map-contains-key): Better docstring
131802
1318032016-06-18  Nicolas Petton  <nicolas@petton.fr>
131804
131805	Fix seq-contains
131806
131807	Make sure seq-contains return the element of the sequence instead of t.
131808
131809	* lisp/emacs-lisp/seq.el (seq-contains): Fix the function.
131810	* test/lisp/emacs-lisp/seq-tests.el: Add a regression test.
131811
1318122016-06-18  Nicolas Petton  <nicolas@petton.fr>
131813
131814	Add new function map-do
131815
131816	* lisp/emacs-lisp/map.el (map-do, map--do-alist, map--do-array): New
131817	  functions.
131818	* test/lisp/emacs-lisp/map-tests.el: Add a unit test for map-do.
131819
1318202016-06-18  Nicolas Petton  <nicolas@petton.fr>
131821
131822	Add seq-do-indexed
131823
131824	* lisp/emacs-lisp/seq.el (seq-do-indexed): New function.
131825	* test/lisp/emacs-lisp/seq-tests.el: Add a unit test for seq-do-indexed.
131826
1318272016-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
131828
131829	map.el (map-merge*): Use `map-into' at beginning rather than end
131830
131831	* lisp/emacs-lisp/map.el (map-merge): Use `map-into' for the first map,
131832	and don't use of an intermediate alist.
131833	(map-merge-with): Same, plus use `cl-callf' to try and avoid performing
131834	3 lookups per inner iteration.
131835
1318362016-06-16  Mark Oteiza  <mvoteiza@udel.edu>
131837
131838	* lisp/window.el (switch-to-buffer-preserve-window-point): Bump :version.
131839
1318402016-06-15  Alan Mackenzie  <acm@muc.de>
131841
131842	Speed up CC Mode's font locking by taking some code out of a hot loop.
131843
131844	* lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Remove code which
131845	tests for bare declarators.
131846	(c-font-lock-cut-off-declarators): New function.
131847	(c-complex-decl-matchers): insert c-font-lock-cut-off-declarators.
131848
1318492016-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
131850
131851	Automatically find vars and functions via definition-prefixes
131852
131853	* lisp/help-fns.el (help-definition-prefixes): New var and function.
131854	(help--loaded-p, help--load-prefixes, help--symbol-completion-table):
131855	New functions.
131856	(describe-function, describe-variable): Use them.
131857
131858	* lisp/emacs-lisp/radix-tree.el (radix-tree--prefixes)
131859	(radix-tree-prefixes, radix-tree-from-map): New functions.
131860
1318612016-06-15  Michal Nazarewicz  <mina86@mina86.com>
131862
131863	Automatically detect whether .h file is C or C++
131864
131865	* lisp/progmodes/cc-mode.el (c-or-c++-mode): A new function which
131866	analyzes contents of the buffer to determine whether it looks like C++
131867	source code and based on that enables c-mode or c++-mode.
131868	(c-or-c++-mode--regexp): Regular expression which, when matches
131869	a buffer, signals file is C++.
131870
1318712016-06-15  Alan Mackenzie  <acm@muc.de>
131872
131873	Parse compound identifiers in C++ member initialization lists.
131874
131875	* lisp/progmodes/cc-engine.el (c-back-over-compound-identifier): New function.
131876	(c-back-over-member-initializer-braces, c-back-over-list-of-member-inits)
131877	(c-back-over-member-initializers): Call c-back-over-compound-identifier rather
131878	than c-simple-skip-symbol-backward.
131879
1318802016-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
131881
131882	Advertize set-keymap-parent as replacement for copy-keymap
131883
131884	* doc/lispref/keymaps.texi (Creating Keymaps):
131885	* src/keymap.c (Fcopy_keymap): Advertize set-keymap-parent as replacement.
131886
1318872016-06-15  Ted Zlatanov  <tzz@lifelogs.com>
131888
131889	* lisp/generic-x.el (ansible-inventory-generic-mode): Warn if
131890	value is missing
131891
1318922016-06-15  Tim Chambers  <tbc@alum.mit.edu>  (tiny change)
131893
131894	Add new ansible-inventory-generic-mode (Bug#23762)
131895
131896	* lisp/generic-x.el (ansible-inventory-generic-mode): Add new mode.
131897
1318982016-06-14  Paul Eggert  <eggert@cs.ucla.edu>
131899
131900	Fix ifdef-vs-if typo with RANDR13_LIBRARY
131901
131902	* src/xfns.c (x_get_monitor_attributes_xrandr): Use #if, not #ifdef.
131903	This ports to systems that predate xrandr 1.3. See Christian Lynbech in:
131904	https://lists.gnu.org/r/emacs-devel/2016-06/msg00198.html
131905
1319062016-06-14  Paul Eggert  <eggert@cs.ucla.edu>
131907
131908	Port to platforms where char * has top bit set
131909
131910	This fixes a five-year-old FIXME comment.  Although I don’t know
131911	of a platform where this is a problem in practice, better safe
131912	than sorry.
131913	* src/doc.c (Fdocumentation): If SUBRP, simply use doc as integer,
131914	as it is now an integer, not char *.
131915	(store_function_docstring): Offset is now EMACS_INT, not ptrdiff_t;
131916	this is a file offset and EMACS_INT is better if --with-wide-int.
131917	If SUBRP, simply store the offset rather than negating it and
131918	converting it to char *.
131919	* src/lisp.h (struct Lisp_Subr.doc): Now EMACS_INT, not char *.
131920
1319212016-06-14  Paul Eggert  <eggert@cs.ucla.edu>
131922
131923	Remove recursion from store_function_docstring
131924
131925	* src/doc.c (store_function_docstring):
131926	Refactor to avoid the need for C-level recursion.
131927
1319282016-06-14  Ken Brown  <kbrown@cornell.edu>
131929
131930	Remove system-specific -I switch from Cygwin-w32 build
131931
131932	Suggested by Eli Zaretskii in discussion of bug#18302.
131933
131934	* src/image.c [HAVE_NTGUI]: Remove the unused macro
131935	PIXEL_ALREADY_TYPEDEFED.  On Cygwin, include "noX/xpm.h" instead of
131936	"X11/xpm.h".
131937
131938	* configure.ac [CYGWIN && HAVE_W32]: Change the xpm test to use
131939	"noX/xpm.h".  Don't add a -I switch to CPPFLAGS.
131940
1319412016-06-14  Noam Postavsky  <npostavs@gmail.com>
131942
131943	Make python.el work in Emacs 24
131944
131945	* lisp/progmodes/python.el: Bump version.
131946	(python-define-auxiliary-skeleton): Only use format-message if
131947	fbound (Bug#23126).
131948
1319492016-06-13  Ken Brown  <kbrown@cornell.edu>
131950
131951	Avoid compiler warning
131952
131953	* src/w32fns.c (deliver_wm_chars): Add 'const' to declaration of
131954	'type_CtrlAlt'.
131955
1319562016-06-13  Paul Eggert  <eggert@cs.ucla.edu>
131957
131958	Call tzset after setting TZ
131959
131960	* src/editfns.c (tzlookup): Call tzset after setting TZ, so that
131961	the setting change propagates into Emacs local time (Bug#23600).
131962	(emacs_setenv_TZ): Clarify comments.
131963
1319642016-06-13  Paul Eggert  <eggert@cs.ucla.edu>
131965
131966	Update texinfo.tex
131967
131968	* doc/misc/texinfo.tex: Update from gnulib.
131969
1319702016-06-12  Paul Eggert  <eggert@cs.ucla.edu>
131971
131972	New macro GNUC_PREREQ for GCC version
131973
131974	* src/conf_post.h (GNUC_PREREQ): New macro.
131975	Change uses of __GNUC_MINOR__ and __GNUC_PATCHLEVEL__ to use this
131976	macro instead, for clarity and consistency.
131977	(PRINTF_ARCHETYPE): New macro.  Define it to __gnu_printf__ only
131978	if glibc, since non-GNU platforms don’t necessarily support GNU
131979	printf formats.
131980	(ATTRIBUTE_FORMAT_PRINTF): Use it.
131981
1319822016-06-12  Nicolas Petton  <nicolas@petton.fr>
131983
131984	* lisp/emacs-lisp/seq.el (seq-drop): Better list implementation
131985
1319862016-06-12  Eli Zaretskii  <eliz@gnu.org>
131987
131988	Fix printf-related compilation warnings on MinGW
131989
131990	* src/conf_post.h (ATTRIBUTE_FORMAT_PRINTF) [__MINGW32__]: Use
131991	'__ms_printf__', not '__gnu_printf__', as the latter is not what
131992	MS 'printf' supports, and causes bogus compilation warnings.
131993	* src/lisp.h (pI) [__MINGW32__]: Define to "I64", as MS 'printf'
131994	doesn't support the "ll" modifier.
131995
1319962016-06-11  Paul Eggert  <eggert@cs.ucla.edu>
131997
131998	emacs_strerror cleanups
131999
132000	* src/buffer.c, src/emacs.c, src/lread.c: Don’t include coding.h;
132001	no longer needed, now that emacs_strerror is declared by lisp.h.
132002	* src/coding.c (emacs_strerror): Remove; moved to emacs.c.
132003	* src/coding.h (emacs_strerror) [emacs]: Remove decl; moved
132004	to lisp.h.
132005	* src/emacs.c (emacs_strerror): Move here from coding.c.  Do not
132006	convert result string; this is now the caller’s responsibility,
132007	as some need conversion and others don’t.
132008	* src/fileio.c (report_file_errno, report_file_notify_error):
132009	Use emacs_strerror rather than rolling it ourselves.
132010	* src/lisp.h (emacs_strerror): Move decl here from coding.h.
132011	* src/lread.c (dir_warning): Just call emacs_strerror rather than
132012	both strerror and emacs_strerror.  Convert its result from
132013	locale-coding-system, since it no longer does that conversion.
132014	* src/sound.c (sound_perror):
132015	* src/sysdep.c (emacs_perror, str_collate):
132016	Use emacs_strerror, not strerror.
132017
1320182016-06-10  David Reitter  <david.reitter@gmail.com>
132019
132020	Prevent compiler warning for unused arguments
132021
132022	* lisp/international/ucs-normalize.el
132023	(ucs-normalize-hfs-nfd-pre-write-conversion):
132024	Prevent compiler warning for unused arguments, add coment.
132025
1320262016-06-10  Paul Eggert  <eggert@cs.ucla.edu>
132027
132028	Catch malloc_get_state, malloc_set_state failure
132029
132030	This should help insulate Emacs better from configuration screwups.
132031	Future versions of the GNU C library are planned to deprecate
132032	these functions, but will continue to support them in
132033	already-built-and-dumped Emacs executables.
132034	* src/alloc.c (malloc_initialize_hook) [DOUG_LEA_MALLOC]:
132035	Abort if malloc_set_state fails.
132036	(alloc_unexec_pre) [DOUG_LEA_MALLOC]:
132037	Report malloc_get_state failure, and exit.
132038
1320392016-06-10  Eli Zaretskii  <eliz@gnu.org>
132040
132041	Show returned value after gdb-mi "finish" command
132042
132043	* lisp/progmodes/gdb-mi.el (gdb-stopped): Display the expected
132044	"Value returned" message in response to "finish", when not
132045	produced by GDB/MI.  (Bug#23720)
132046
1320472016-06-10  David Reitter  <david.reitter@gmail.com>
132048
132049	Simplify pre-write-conversion for utf-8-hfs coding system
132050
132051	* lisp/international/ucs-normalize.el
132052	(ucs-normalize-hfs-nfd-pre-write-conversion): Refactor.
132053
132054	May address an issue where Emacs consumed large amounts of CPU
132055	because of neverending toolbar updating (which was caused
132056	by, but also called this function).
132057
1320582016-06-09  Martin Rudalics  <rudalics@gmx.at>
132059
132060	Revert "Bind `widget-button-click' to mouse-1/-2 instead of down-mouse-1/-2"
132061
132062	* lisp/wid-edit.el (widget-keymap): Bind `widget-button-click'
132063	to mouse-1/-2 instead of down-mouse-1/-2.  Suggested by Stefan
132064	Monnier.  (Bug#19185, Bug#20398)
132065
132066	This reverts commit 72166f2f3dba18f1217c666574032f5a0351ed65.
132067
132068	That commit did more harm than good (Bug#23571).
132069
1320702016-06-09  Paul Eggert  <eggert@cs.ucla.edu>
132071
132072	Port __builtin_assume_aligned to Sun C 5.13
132073
132074	* src/conf_post.h (__builtin_assume_aligned):
132075	Fix typo: the extra arg did not conform to C99.
132076
1320772016-06-09  Paul Eggert  <eggert@cs.ucla.edu>
132078
132079	Prefer getsockopt to getpeername on non-MS-Windows
132080
132081	* admin/CPP-DEFINES: Remove HAVE_GETPEERNAME.
132082	* configure.ac: Don’t check for getpeername.
132083	* src/process.c (wait_reading_process_output) [!WINDOWSNT]:
132084	Use getsockopt even if not GNU/Linux, as the platforms where
132085	getsockopt used to hang are no doubt long dead.
132086
1320872016-06-09  Paul Eggert  <eggert@cs.ucla.edu>
132088
132089	Fix XFASTINT of non-fixnum in process status
132090
132091	* src/process.c (decode_status): 3rd arg is now Lisp_Object *,
132092	not int *, and is not decoded.  All uses changed.
132093	(status_message): Do not assume ‘failed’ code is an integer.
132094	* src/process.h: Document codes better.
132095
1320962016-06-09  Glenn Morris  <rgm@gnu.org>
132097
132098	Make messcompat.el obsolete.
132099
132100	* lisp/obsolete/messcompat.el: Move here from lisp/gnus.
132101	* doc/misc/message.texi (Compatibility): Remove section.
132102
1321032016-06-09  Glenn Morris  <rgm@gnu.org>
132104
132105	Leading "*" in the doc of defvars is long obsolete.
132106
132107	* lisp/plstore.el (plstore-encrypt-to):
132108	* lisp/cedet/semantic/lex-spp.el
132109	(semantic-lex-spp-macro-max-length-to-save):
132110	* lisp/cedet/semantic/symref.el (semantic-symref-tool):
132111	* lisp/cedet/semantic/bovine/el.el
132112	(semantic-elisp-store-documentation-in-tag):
132113	* lisp/cedet/semantic/wisent/comp.el (wisent-verbose-flag)
132114	(wisent-expected-conflicts):
132115	* lisp/cedet/semantic/wisent/wisent.el (wisent-parse-verbose-flag):
132116	* lisp/gnus/gnus-agent.el (gnus-category-menu-hook):
132117	* lisp/gnus/gnus-group.el (gnus-group-listing-limit):
132118	* lisp/gnus/gnus-srvr.el (gnus-server-menu-hook)
132119	(gnus-browse-menu-hook):
132120	* lisp/gnus/message.el (message-shoot-gnksa-feet):
132121	* lisp/gnus/mm-decode.el (mm-path-name-rewrite-functions):
132122	* lisp/gnus/mm-util.el (mm-extra-numeric-entities):
132123	* lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
132124	* lisp/gnus/mml.el (mml-generate-multipart-alist):
132125	* lisp/gnus/nndraft.el (nndraft-required-headers):
132126	* lisp/gnus/nnheader.el (nnheader-max-head-length)
132127	(nnheader-head-chop-length, nnheader-file-name-translation-alist)
132128	(nnheader-directory-separator-character)
132129	(nnheader-pathname-coding-system):
132130	* lisp/gnus/nnmail.el (nnmail-pathname-coding-system)
132131	(nnmail-active-file-coding-system):
132132	* lisp/gnus/nnrss.el (nnrss-file-coding-system):
132133	* lisp/gnus/nntp.el (nntp-record-commands):
132134	* lisp/gnus/score-mode.el (gnus-score-edit-done-hook)
132135	(gnus-score-mode-hook, gnus-score-menu-hook):
132136	* lisp/mail/rfc2047.el (rfc2047-header-encoding-alist)
132137	(rfc2047-allow-irregular-q-encoded-words)
132138	(rfc2047-allow-incomplete-encoded-text):
132139	* lisp/mh-e/mh-alias.el (mh-alias-system-aliases):
132140	* lisp/mh-e/mh-e.el (mh-mail-header-separator, mh-x-mailer-string):
132141	* lisp/mh-e/mh-scan.el (mh-scan-format-mh, mh-scan-format-nmh):
132142	* lisp/net/pop3.el (pop3-password):
132143	* lisp/play/animate.el (animate-n-steps):
132144	* lisp/progmodes/cc-vars.el (c-old-style-variable-behavior):
132145	Convert from defvar with leading * to defcustom.
132146
132147
132148	* lisp/emulation/viper-init.el (viper-heading-end):
132149	* lisp/gnus/mm-url.el (mm-url-html-entities):
132150	* lisp/gnus/nnmaildir.el (nnmaildir-article-file-name):
132151	* lisp/mh-e/mh-e.el (mh-invisible-header-fields-compiled):
132152	* lisp/net/tramp-adb.el (tramp-adb-method): Remove leading * from doc.
132153
132154	* lisp/gnus/messcompat.el: Mark (pointless) file not for compilation.
132155	(message-from-style, message-interactive, message-indentation-spaces)
132156	(message-signature, message-signature-file):
132157	Remove settings that match the defaults.
132158	(message-setup-hook, message-mode-hook, message-default-headers)
132159	(message-send-hook, message-send-mail-function):
132160	Just use setq rather than redefining.
132161
132162	* lisp/gnus/nnrss.el (nnrss):
132163	* lisp/mail/rfc2047.el (rfc2047):
132164	* lisp/play/animate.el (animate): New custom groups.
132165
1321662016-06-09  Glenn Morris  <rgm@gnu.org>
132167
132168	Remove obsolete leading * from defcustom, defface doc strings.
132169
132170	* lisp/cedet/ede/linux.el, lisp/cedet/ede/project-am.el:
132171	* lisp/cedet/ede/simple.el, lisp/cedet/semantic/bovine/c.el:
132172	* lisp/cedet/semantic/complete.el, lisp/cedet/semantic/db.el:
132173	* lisp/cedet/semantic/decorate/include.el:
132174	* lisp/cedet/semantic/decorate/mode.el, lisp/cedet/semantic/format.el:
132175	* lisp/cedet/semantic/ia.el, lisp/cedet/semantic/idle.el:
132176	* lisp/cedet/semantic/imenu.el, lisp/cedet/semantic/lex-spp.el:
132177	* lisp/cedet/semantic/mru-bookmark.el, lisp/cedet/semantic/sb.el:
132178	* lisp/cedet/srecode/fields.el, lisp/ecomplete.el:
132179	* lisp/gnus/gnus-agent.el, lisp/gnus/gnus-art.el:
132180	* lisp/gnus/gnus-async.el, lisp/gnus/gnus-cache.el:
132181	* lisp/gnus/gnus-cite.el, lisp/gnus/gnus-delay.el:
132182	* lisp/gnus/gnus-diary.el, lisp/gnus/gnus-dup.el:
132183	* lisp/gnus/gnus-fun.el, lisp/gnus/gnus-group.el:
132184	* lisp/gnus/gnus-kill.el, lisp/gnus/gnus-msg.el:
132185	* lisp/gnus/gnus-picon.el, lisp/gnus/gnus-salt.el:
132186	* lisp/gnus/gnus-score.el, lisp/gnus/gnus-start.el:
132187	* lisp/gnus/gnus-sum.el, lisp/gnus/gnus-topic.el:
132188	* lisp/gnus/gnus-util.el, lisp/gnus/gnus-uu.el, lisp/gnus/gnus-win.el:
132189	* lisp/gnus/gnus.el, lisp/gnus/mail-source.el, lisp/gnus/message.el:
132190	* lisp/gnus/mm-url.el, lisp/gnus/mm-uu.el, lisp/gnus/mml.el:
132191	* lisp/gnus/nndiary.el, lisp/gnus/nnir.el, lisp/gnus/nnmail.el:
132192	* lisp/gnus/smiley.el, lisp/gnus/smime.el, lisp/mail/mail-extr.el:
132193	* lisp/mh-e/mh-e.el, lisp/net/mailcap.el, lisp/net/pop3.el:
132194	* lisp/net/starttls.el, lisp/progmodes/cc-vars.el:
132195	* lisp/progmodes/cperl-mode.el, test/manual/cedet/tests/test.el:
132196	Remove obsolete leading * from defcustom, defface doc strings.
132197
1321982016-06-09  Eli Zaretskii  <eliz@gnu.org>
132199
132200	Fix copying text properties by 'format'
132201
132202	* src/editfns.c (styled_format): Fix copying text properties from
132203	the format specification to the produced string representation.
132204	(Bug#23730)
132205	(Fformat) Doc fix.
132206
132207	* doc/lispref/strings.texi (Formatting Strings): Document that
132208	text properties from the format specifiers are also copied to the
132209	produced string.
132210
1322112016-06-09  Alan Mackenzie  <acm@muc.de>
132212
132213	Handle C++ raw strings.
132214
132215	* lisp/progmodes/cc-engine.el (c-raw-string-pos, c-depropertize-raw-string)
132216	(c-depropertize-raw-strings-in-region,
132217	c-before-change-check-raw-strings)
132218	(c-propertize-raw-string-opener, c-after-change-re-mark-raw-strings): New
132219	functions.
132220
132221	* lisp/progmodes/cc-fonts.el (c-basic-matchers-before): Insert a clause for
132222	c-font-lock-raw-strings.
132223	(c-font-lock-raw-strings): New function.
132224
132225	* lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): Insert
132226	c-before-change-check-raw-strings into the C++ value, and c-depropertize-CPP
132227	into the values for C, C++, and Objective C.
132228	(c-before-font-lock-functions): Insert c-after-change-re-mark-raw-strings into
132229	the C++ value.
132230
132231	* lisp/progmodes/cc-mode.el (c-old-BEG, c-old-END): New variables.
132232	(c-depropertize-CPP): New function, extracted from
132233	c-neutralize-syntax-in-and-mark-CPP.
132234	(c-neutralize-syntax-in-and-mark-CPP): Remove the call to
132235	c-clear-char-property-with-value for 'syntax-table value '(1) at the beginning
132236	of the function.
132237	(c-after-change): Set c-old-BEG and c-old-END to the current values of
132238	c-new-BEG and c-new-END.
132239
1322402016-06-09  Daiki Ueno  <ueno@gnu.org>
132241
132242	epg: don't use obsolete function
132243
132244	* lisp/epg.el (epg-sign-string, epg-encrypt-string): Remove
132245	redundant configuration check, which is now done in
132246	`epg-make-context'.
132247
1322482016-06-09  Daiki Ueno  <ueno@gnu.org>
132249
132250	epg: don't start pinentry if it is useless
132251
132252	* lisp/epg.el (epg--start): Don't start pinentry server if the
132253	session is non-interactive or pinentry-mode is set.
132254
1322552016-06-08  Paul Eggert  <eggert@cs.ucla.edu>
132256
132257	Replace IF_LINT by NONVOLATILE and UNINIT
132258
132259	Inspired by a suggestion from RMS in: https://bugs.gnu.org/23640#58
132260	* .dir-locals.el (c-mode): Adjust to macro changes.
132261	* src/conf_post.h (NONVOLATILE, UNINIT): New macros (Bug#23640).
132262	(IF_LINT): Remove.  All uses replaced by the new macros.
132263
1322642016-06-08  Michal Nazarewicz  <mina86@mina86.com>
132265
132266	Remove ‘ert-with-function-mocked’ macro in favor of ‘cl-letf’ macro
132267
132268	* lisp/emacs-lisp/ert-x.el (ert-with-function-mocked): Remove macro
132269	in favor of ‘cl-letf’ macro which is more generic.  All existing
132270	uses are migrated accordingly.  The macro has not been included in
132271	an official release yet so it should be fine to delete it.
132272
1322732016-06-08  Glenn Morris  <rgm@gnu.org>
132274
132275	* test/lisp/emacs-lisp/package-tests.el
132276	(package-test-update-archives-async): Try re-enabling on hydra.
132277
1322782016-06-08  Paul Eggert  <eggert@cs.ucla.edu>
132279
132280	* src/fileio.c (auto_save_error): Omit unused local.
132281
1322822016-06-08  Paul Eggert  <eggert@cs.ucla.edu>
132283
132284	Simplify overflow check via INT_SUBTRACT_WRAPV
132285
132286	* src/editfns.c (check_tm_member): Simplify integer overflow check.
132287
1322882016-06-07  Glenn Morris  <rgm@gnu.org>
132289
132290	Try to avoid hangs and stray procs in network-stream-tests.  (Bug#23560)
132291
132292	* test/lisp/net/network-stream-tests.el (connect-to-tls-ipv4-wait)
132293	(connect-to-tls-ipv4-nowait, connect-to-tls-ipv6-nowait):
132294	Ensure gnutls-serv process gets killed.
132295	(echo-server-nowait, connect-to-tls-ipv4-nowait):
132296	Limit the amount of time we might wait.
132297
1322982016-06-07  Glenn Morris  <rgm@gnu.org>
132299
132300	Reduce allout.el's pollution of the namespace.
132301
132302	* lisp/allout.el (allout-set-regexp): Rename from set-allout-regexp.
132303	Keep old name as obsolete alias.
132304	(allout-produce-mode-menubar-entries, allout-nullify-prefix-data)
132305	(allout-solicit-char-in-string)
132306	(allout-count-trailing-whitespace-region, allout-regexp-sans-escapes):
132307	Rename to add an "allout-" prefix.
132308
1323092016-06-07  Glenn Morris  <rgm@gnu.org>
132310
132311	* configure.ac (emacs_config_features): Add CANNOT_DUMP.
132312
1323132016-06-07  Glenn Morris  <rgm@gnu.org>
132314
132315	Misc small webjump updates.
132316
132317	* lisp/net/webjump.el (webjump): Add custom group.
132318	(webjump-sample-sites): Make it a constant.
132319	Remove explicit, old list of GNU ftp mirrors.
132320	(webjump-state-to-postal-alist): Make it a constant.
132321	(webjump-sites): Make it a defcustom.
132322	(webjump-to-iwin): Update for changed remote service.
132323
1323242016-06-07  Glenn Morris  <rgm@gnu.org>
132325
132326	Do not hard-code port for package test server.  (Bug#23708)
132327
132328	* test/lisp/emacs-lisp/package-resources/package-test-server.py:
132329	Do not hard-code port.
132330	* test/lisp/emacs-lisp/package-tests.el (package-test-update-archives-async):
132331	Update for the above change.
132332
1323332016-06-07  Tino Calancha  <f92capac@gmail.com>
132334
132335	* lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)
132336
1323372016-06-07  Glenn Morris  <rgm@gnu.org>
132338
132339	* src/fileio.c (auto_save_error): Use display-warning.  (Bug#23703)
132340
1323412016-06-07  Tino Calancha  <f92capac@gmail.com>
132342
132343	* lisp/ibuf-ext.el (ibuffer-do-shell-command-file):
132344	Fix non-file-visiting-buffer case.  (Bug#22678)
132345
1323462016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
132347
132348	Port --enable-gcc-warnings to clang 3.7.0
132349
132350	* configure.ac: Add -Wno-tautological-compare to avoid bogus
132351	warnings about 0 <= rlim.rlim_max.  Remove flags that no longer
132352	seem to be needed, at least in Fedora 23 x86-64.
132353
1323542016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
132355
132356	Use __builtin_assume_aligned on untagged Lisp vals
132357
132358	* src/conf_post.h (__has_builtin, __builtin_assume_aligned):
132359	New macros, for compilers not already defining them.
132360	(__has_builtin___builtin_assume_aligned): New macro.
132361	* src/lisp.h (lisp_h_XUNTAG): Use __builtin_assume_aligned.
132362	This shrinks text space by 0.2% on x86-64 with GCC 6.1.
132363
1323642016-06-07  Glenn Morris  <rgm@gnu.org>
132365
132366	* lisp/help-fns.el (describe-function-1): Avoid reporting advised
132367	aliases as the type of their targets.
132368
1323692016-06-07  Tino Calancha  <f92capac@gmail.com>
132370
132371	* lisp/simple.el (process-menu-mode, list-processes--refresh):
132372	Include PID.  (Bug#21725)
132373
1323742016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
132375
132376	Merge from origin/emacs-25
132377
132378	6e3adf8 Fix crash in syntax.c after GC
132379	973ce5a Improve squiggly heredoc support in non-SMIE Ruby mode
132380	9d5cceb Fix doc string quoting
132381	0b33a23 Fix mouse dragging of vertical dividers with scroll bars on l...
132382	a5d05f4 * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
132383
1323842016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
132385
132386	Merge from origin/emacs-25
132387
132388	604f656 * test/automated/viper-tests.el (viper-test-undo-kmacro): Del...
132389	20eb531 * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
132390	a7a2244 * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
132391	07bd972 * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table): Fix...
132392
1323932016-06-06  Paul Eggert  <eggert@cs.ucla.edu>
132394
132395	Use standard Unicode names for Thai, Lao
132396
132397	* lisp/language/lao-util.el, lisp/language/thai-util.el:
132398	Don’t override standard Unicode character name (Bug#23698).
132399
1324002016-06-06  Glenn Morris  <rgm@gnu.org>
132401
132402	* lisp/man.el (Man-reference-regexp, Man-default-man-entry):
132403	Handle U+2010 hyphen at eol, as used when LANG=en_US.utf8.
132404
1324052016-06-06  Michael Albinus  <michael.albinus@gmx.de>
132406
132407	Some fixes in filenotify-tests.el for cygwin
132408
132409	* test/lisp/filenotify-tests.el (file-notify--test-timeout):
132410	Reintroduce value for cygwin, it's needed on slow systems.
132411	(file-notify--wait-for-events): Move up definition.
132412	(file-notify--test-no-descriptors): Use `file-notify--wait-for-events'.
132413	(file-notify--test-with-events-check, file-notify--test-with-events)
132414	(file-notify-test08-watched-file-in-watched-dir):
132415	Use :random rather than `random.
132416	(file-notify-test06-many-events): Do not skip for cygwin.
132417
1324182016-06-05  Juri Linkov  <juri@linkov.net>
132419
132420	* src/casefiddle.c (Fupcase_region): Add arg ‘region-noncontiguous-p’.
132421
132422	If non-nil, operate on multiple chunks.  (Bug#23655)
132423
132424	* src/search.c (Freplace_match): Use Qnil for new arg of Fupcase_region.
132425
1324262016-06-05  Juri Linkov  <juri@linkov.net>
132427
132428	* lisp/wdired.el (wdired-next-line, wdired-previous-line): Add "^"
132429
132430	to interactive spec to handle shift-selection.  (Bug#23642)
132431
1324322016-06-05  Michael Albinus  <michael.albinus@gmx.de>
132433
132434	Improve robustness of filenotify-tests.el (Bug#23618)
132435
132436	* test/lisp/filenotify-tests.el (file-notify--test-no-descriptors)
132437	(file-notify--test-no-descriptors-explainer)
132438	(file-notify--test-cleanup-p): New defuns.
132439	(file-notify--test-cleanup): Don't check for
132440	`file-notify--test-event' anymore, that's done in
132441	`file-notify--test-no-descriptors'.
132442	(file-notify--test-with-events-check)
132443	(file-notify--test-with-events): Handle the `random' marker.
132444	(file-notify--test-with-events-explainer): Improve readability.
132445	(file-notify-test00-availability)
132446	(file-notify-test01-add-watch, file-notify-test02-events)
132447	(file-notify-test03-autorevert)
132448	(file-notify-test04-file-validity)
132449	(file-notify-test05-dir-validity)
132450	(file-notify-test06-many-events, file-notify-test07-backup)
132451	(file-notify-test08-watched-file-in-watched-dir)
132452	(file-notify-test09-sufficient-resources): Check also
132453	`file-notify--test-cleanup-p'.
132454	(file-notify-test04-file-validity)
132455	(file-notify-test05-dir-validity): Use `ignore' as handler.
132456	(file-notify-test05-dir-validity)
132457	(file-notify-test06-many-events): Delete directory finally.
132458	(file-notify-test08-watched-file-in-watched-dir): Add `random' marker.
132459
1324602016-06-05  Stephen Berman  <stephen.berman@gmx.net>
132461
132462	man.el: Fix links on hyphenated words (bug#23647)
132463
132464	* lisp/man.el (Man-bgproc-sentinel): Make links work on
132465	hyphenated words.
132466
1324672016-06-05  K. Handa  <handa@gnu.org>
132468
132469	Add category 'j' to more characters.
132470
132471	* lisp/international/characters.el: Add category 'j' (Japanese)
132472	to characters in japanese-jisx0213.2004-1.
132473
1324742016-06-04  Tino Calancha  <f92capac@gmail.com>
132475
132476	isearch-edit-string resumes multi isearches
132477
132478	* lisp/isearch.el (with-isearch-suspended): Remember and restore
132479	multi-isearch variables.  (Bug#21663)
132480
1324812016-06-04  Eli Zaretskii  <eliz@gnu.org>
132482
132483	Fix Eshell display when RTL characters are involved
132484
132485	* lisp/eshell/esh-mode.el (eshell-mode): Set
132486	'bidi-paragraph-direction' to 'left-to-right'.  (Bug#23652)
132487
1324882016-06-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
132489
132490	Make ses-jump with completing input.
132491
132492	* lisp/ses.el (ses-jump): Make symbol input completing against list of
132493	  named cells.
132494
1324952016-06-01  Paul Eggert  <eggert@cs.ucla.edu>
132496
132497	Port angle-bracket TZ settings to MS-Windows
132498
132499	* doc/lispref/os.texi (Time Zone Rules): Document MS-Windows
132500	lack of support for numeric time zone abbreviations.
132501	* src/w32.c (sys_putenv): Convert angle-bracket TZ syntax
132502	to MS-compatible syntax if possible, and to "ZZZ" otherwise.
132503	Problem reported by Kazuhiro Ito (Bug#23600).
132504
1325052016-06-01  Paul Eggert  <eggert@cs.ucla.edu>
132506
132507	Avoid delving into Git internals for version
132508
132509	* lisp/loadup.el (exec-path): Set it to nil later, so that
132510	emacs-repository-get-version can invoke git commands in the PATH.
132511	* lisp/version.el (emacs-repository--version-git-1): Remove.
132512	(emacs-repository-get-version): Let Git do it rather than
132513	delving into Git internals.
132514
1325152016-06-01  Stefan Monnier  <monnier@iro.umontreal.ca>
132516
132517	* lisp/emacs-lisp/autoload.el (autoload--make-defs-autoload): Expand less
132518
1325192016-06-01  Paul Eggert  <eggert@cs.ucla.edu>
132520
132521	Fix emacs-repository-get-version with packed .git
132522
132523	* lisp/version.el (emacs-repository-get-version):
132524	Parse .git/packed-refs if it exists.
132525	Problem reported by Martin Rudalics in:
132526	https://lists.gnu.org/r/emacs-devel/2016-05/msg00554.html
132527
1325282016-06-01  Michael Albinus  <michael.albinus@gmx.de>
132529
132530	Minor change in tramp.texi
132531
132532	* doc/misc/tramp.texi (Password handling): Do not discuss
132533	anymore how to get password-cache.el.  It is bundled with
132534	Emacs.
132535
1325362016-06-01  Alan Mackenzie  <acm@muc.de>
132537
132538	Correct fontification and indentation of C++'s "constexpr" expressions
132539
132540	* lisp/progmodes/cc-langs.el (c-type-modifier-kwds): Remove "constexpr".
132541	(c-modifier-kwds): Add "constexpr".
132542
1325432016-05-31  Ikumi Keita  <ikumi@ikumi.que.jp>
132544
132545	Cosmetic change to kinsoku-eol.  (tiny change)
132546
132547	* lisp/international/kinsoku.el (kinsoku-eol): Make the
132548	order of characters match with the comments.
132549
1325502016-05-31  Ikumi Keita  <ikumi@ikumi.que.jp>
132551
132552	Add HIRAGANA ITERATION MARK to japanese-kana-table.  (tiny change)
132553
132554	* lisp/language/japan-util.el (japanese-kana-table): Add an
132555	entry for HIRAGANA ITERATION MARK (U+309D).
132556	(japanese-alpha-numeric-table): Fix docstring.
132557
1325582016-05-31  K. Handa  <handa@gnu.org>
132559
132560	Fix incomplete handling of translation table in a coding system.
132561
132562	* src/coding.c (get_translation): New arg NCHARS.  Even if TRANS
132563	is an alist, return a character or a vector of character.
132564	(produce_chars): Adjust for the above change.
132565	(consume_chars): Likewise.
132566
1325672016-05-31  Michael Albinus  <michael.albinus@gmx.de>
132568
132569	Improve robustness for out-of-band copy in Tramp
132570
132571	* lisp/net/tramp-adb.el (tramp-adb-execute-adb-command)
132572	* lisp/net/tramp-cmds.el (tramp-append-tramp-buffers)
132573	* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
132574	Cosmetic changes.
132575
132576	* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
132577	Use local `default-directory'.  Simplify command to send.
132578	Don't check return code, this was already done in
132579	`tramp-process-actions'.
132580	(tramp-get-inline-coding): Don't set `default-directory'.
132581
132582	* lisp/net/tramp.el (tramp-action-out-of-band):
132583	Throw `out-of-band-failed'.
132584	(tramp-process-actions): Handle `out-of-band-failed'.
132585	(tramp-call-process, tramp-call-process-region):
132586	Use local `default-directory'.
132587
1325882016-05-31  Paul Eggert  <eggert@cs.ucla.edu>
132589
132590	Merge from origin/emacs-25
132591
132592	788c9b6 ; Spelling fix
132593	25c4a30 * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-li...
132594	0992ec3 Correct cl-flet usage (Bug#22317)
132595	50caae3 Release MH-E manual version 8.6
132596	602bb40 Update MH-E's documentation about HTML renderers
132597	89018f0 Fx the we->the typo
132598	845ee57 Restore frames into the current display by default
132599	ee28b4c * lisp/recentf.el (recentf-open-files-item): Quick fix for (b...
132600	01c3cd1 etc/TODO: Remove out-of-place issue
132601	5e18486 Clarify doc string of 'file-name-sans-extension'
132602	bffda22 Fix the MSDOS build
132603	f907f98 * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Ca...
132604	1a2ffd0 * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23...
132605	f7ffc4b Fix infloop in 'number-sequence'
132606	4ab2673 ; Spelling and punctuation fixes in comments
132607	71c152e * lisp/emacs-lisp/find-func.el (find-function-library):
132608
1326092016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
132610
132611	* lisp/emacs-lisp/autoload.el: Use radix-tree.
132612
132613	 (autoload--make-defs-autoload): Rewrite.
132614	(autoload--split-prefixes-1): Remove.
132615	(autoload-def-prefixes-max-entries): Rename from
132616	autoload-defs-autoload-max-size.
132617	(autoload-popular-prefixes): Remove.
132618	(autoload-def-prefixes-max-length): New const.
132619
132620	* lisp/emacs-lisp/radix-tree.el: New file.
132621
1326222016-05-30  Ken Brown  <kbrown@cornell.edu>
132623
132624	* src/conf_post.h (SYSTEM_PURESIZE_EXTRA) [CYGWIN]: Increase.
132625
1326262016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
132627
132628	Omit IF_LINT code that no longer seems needed
132629
132630	Nowadays GCC is smarter, or the Emacs code has mutated, or both,
132631	and now is as good a time as any to remove uses of IF_LINT that
132632	now seem to be unnecessary.
132633	* lib-src/emacsclient.c (set_local_socket):
132634	* lib-src/movemail.c (main) [MAIL_USE_MAILLOCK && HAVE_TOUCHLOCK]:
132635	* src/buffer.c (fix_start_end_in_overlays, fix_overlays_before):
132636	* src/casefiddle.c (casify_region):
132637	* src/charset.c (load_charset_map):
132638	* src/coding.c (decode_coding_object, encode_coding_object):
132639	* src/data.c (Fmake_variable_buffer_local, Fmake_local_variable)
132640	(cons_to_unsigned, cons_to_signed):
132641	* src/frame.c (make_frame, x_set_frame_parameters):
132642	* src/keyboard.c (read_event_from_main_queue):
132643	* src/regex.c (regex_compile):
132644	* src/syntax.c (back_comment):
132645	* src/window.c (Frecenter):
132646	* src/xfaces.c (Fx_list_fonts):
132647	Remove IF_LINT that no longer seems necessary.
132648	* src/image.c (png_load_body, jpeg_load_body): Simplify use of IF_LINT.
132649	* src/keyboard.c (read_char): Use IF_LINT (volatile) rather than
132650	a pragma dance to pacify GCC -Wclobbered.
132651	* src/xdisp.c (x_produce_glyphs): Rewrite to avoid need for IF_LINT.
132652
132653	* src/xterm.c (x_connection_closed): Now _Noreturn, which should
132654	mean we do not need IF_LINT any more.
132655	(x_io_error_quitter): Now _Noreturn.  Put an 'assume (false)’
132656	at the end, to forestall warnings from older compilers.
132657
1326582016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
132659
132660	Port --enable-gcc-warnings to Cygwin, FreeBSD
132661
132662	These platforms have a bug where _Noreturn is empty when 'lint' is
132663	defined.  Problem reported by Ken Brown (Bug#23640).
132664	* configure.ac (GCC_LINT): Rename from 'lint'.
132665	* src/conf_post.h (IF_LINT): Use GCC_LINT, not just 'lint’.
132666
1326672016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
132668
132669	Update from gnulib
132670
132671	This incorporates:
132672	2016-05-30 Use GCC_LINT, not lint
132673	2016-05-29 secure_getenv: Port to many more platforms.
132674	* doc/misc/texinfo.tex, lib/secure_getenv.c, lib/verify.h:
132675	* m4/secure_getenv.m4: Copy from gnulib.
132676
1326772016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
132678
132679	* lisp/emacs-lisp/pcase.el: Undo last change's spurious changes
132680
132681	* lisp/emacs-lisp/pcase.el (pcase-mutually-exclusive-predicates): Add `atom'.
132682
1326832016-05-30  Ken Brown  <kbrown@cornell.edu>
132684
132685	* src/regex.c (IF_LINT): Remove; it’s in conf_post.h
132686
1326872016-05-30  Michael Albinus  <michael.albinus@gmx.de>
132688
132689	Fix Bug#23631 for Tramp
132690
132691	* lisp/net/tramp-adb.el (tramp-adb-handle-file-name-all-completions)
132692	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-name-all-completions)
132693	* lisp/net/tramp-sh.el (tramp-sh-handle-file-name-all-completions):
132694	Fix caching problems.
132695
132696	* lisp/net/tramp-sh.el (tramp-perl-file-name-all-completions): Simplify.
132697
132698	* lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
132699	Move duplicate deletion ...
132700	(tramp-smb-handle-file-name-all-completions): ... here.
132701
132702	* lisp/net/tramp.el (tramp-handle-file-name-completion):
132703	Handle `completion-ignored-extensions'.  (Bug#23631)
132704
132705	* test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
132706	Test also `completion-regexp-list' and `completion-ignored-extensions'.
132707
1327082016-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
132709
132710	* lisp/wid-edit.el (link): Remove :follow-link property (bug#22434)
132711
132712	* lisp/recentf.el (recentf-dialog-mode-map): Remove unecessary mapping.
132713
1327142016-05-29  Lars Magne Ingebrigtsen  <larsi@gnus.org>
132715
132716	Fix up remainder of the mml property change
132717
132718	* lisp/gnus/message.el (message-send-mail): Use the renamed
132719	mml-buffer-substring-no-properties-except-some function.
132720	(message-send-news): Ditto.
132721
1327222016-05-29  Lars Ingebrigtsen  <larsi@gnus.org>
132723
132724	Allow preserving EXIF rotations when sending HTML messages
132725
132726	* lisp/gnus/mml.el (mml--possibly-alter-image): Allow image
132727	rotation if you have exiftool installed and the image format
132728	supports it.
132729	(mml-expand-html-into-multipart-related): Use it.
132730	(mml-buffer-substring-no-properties-except-some): Renamed and
132731	copy display properties, too.
132732
1327332016-05-29  Lars Ingebrigtsen  <larsi@gnus.org>
132734
132735	Make message-toggle-image-thumbnails work better
132736
132737	* lisp/gnus/message.el (message-toggle-image-thumbnails): Use
132738	`insert-image' instead of `put-image' to make it possible to
132739	edit the resulting text in a sensible manner.
132740
1327412016-05-29  Alan Mackenzie  <acm@muc.de>
132742
132743	Rationalize the use of c-new-BEG and c-new-END in CC Mode.
132744
132745	Remove the now redundant c-old-BOM and c-old-EOM.
132746
132747	* lisp/progmodes/cc-engine.el (c-macro-cache-syntactic): Change and simplify
132748	meaning.
132749	(c-macro-cache-no-comment): New variable.
132750	(c-invalidate-macro-cache, c-beginning-of-macro, c-end-of-macro): incorporate
132751	the new c-macro-cache-no-comment.
132752	(c-syntactic-end-of-macro): Make better use of c-macro-cache-syntactic.
132753	(c-no-comment-end-of-macro): New function.
132754
132755	* lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
132756	c-extend-font-lock-region-for-macros to C/C++/ObjC value.
132757
132758	* lisp/progmodes/cc-mode.el (c-old-BOM, c-old-EOM): Remove.
132759	(c-extend-region-for-CPP): Put results in c-new-BEG/END rather than
132760	c-old-BOM/EOM.
132761	(c-extend-font-lock-region-for-macros): Simplify meaning, no longer returning
132762	a cons for the new region, since the function is now called as an after-change
132763	function.  No longer adjust c-new-END for the length of inserted/deleted
132764	text.  Move the size restrictions on macros to here from
132765	c-neutralize-syntax-in-and-mark-CPP.
132766	(c-neutralize-syntax-in-and-mark-CPP): No longer adjust c-new-BEG/END here.
132767	Use c-no-comment-end-of-macro rather than c-syntactic-end-of-macro to find the
132768	upper boundary to "neutralize" syntactically obtrusive characters.
132769	(c-change-expand-fl-region): Don't set c-new-END to next BOL when already at
132770	one.
132771
1327722016-05-28  Ken Brown  <kbrown@cornell.edu>
132773
132774	Avoid compiler warnings
132775
132776	* src/cygw32.c (chdir_to_default_directory): Use "void" as
132777	argument list.  Use SSDATA instead of SDATA.
132778
132779	* src/unexcw.c (fixup_executable): Use %td as format specifier for
132780	argument of type ptrdiff_t.  Use %zu for argument of type size_t.
132781
1327822016-05-28  Eli Zaretskii  <eliz@gnu.org>
132783
132784	Fix 'next-line' and 'previous-line' during keyboard macro
132785
132786	* lisp/simple.el (line-move-visual): Handle the case when point
132787	moves outside of the visible portion of the buffer while executing
132788	a keyboard macro.  (Bug#13452)  (Bug#23551)  (Bug#23555)
132789
1327902016-05-28  Alan Mackenzie  <acm@muc.de>
132791
132792	C++ Mode: attribute in class declaration fouls up indentation.  Fix!
132793
132794	* lisp/progmodes/cc-engine.el (c-looking-at-decl-block): Add code to skip
132795	back over noise clauses and attribute clauses.
132796
132797	* lisp/progmodes/cc-langs.el (c-paren-nontype-key): New language variable.
132798
1327992016-05-28  Ken Olum  <kdo@cosmos.phy.tufts.edu>
132800
132801	Prevent locked-file errors in Rmail
132802
132803	* lisp/mail/rmail.el (rmail-get-new-mail-1): Lock file before
132804	calling 'rmail-insert-inbox-text'.  Unlock if
132805	'rmail-insert-inbox-text' doesn't modify buffer.
132806	(rmail-insert-inbox-text): Remove lock-checking code.  (Bug#17706)
132807
1328082016-05-28  Michael Albinus  <michael.albinus@gmx.de>
132809
132810	Sync with Tramp repository.
132811
132812	* lisp/net/tramp-adb.el (tramp-adb-handle-start-file-process):
132813	* lisp/net/tramp-sh.el (tramp-sh-handle-start-file-process)
132814	* lisp/net/tramp-smb.el (tramp-smb-handle-start-file-process):
132815	Create BUFFER if it doesn't exist.  Reported by Nikolay
132816	Kudryavtsev <nikolay.kudryavtsev@gmail.com>.
132817
132818	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-attributes)
132819	(tramp-gvfs-file-attributes-with-gvfs-ls-regexp)
132820	(tramp-gvfs-file-attributes-with-gvfs-info-regexp): New defconst.
132821	(tramp-gvfs-get-directory-attributes)
132822	(tramp-gvfs-get-root-attributes)
132823	(tramp-gvfs-get-file-attributes): New defun.
132824	(tramp-gvfs-handle-file-attributes)
132825	(tramp-gvfs-handle-file-name-all-completions): Use them.
132826	(tramp-gvfs-handle-file-directory-p): Use `file-truename'.
132827	(tramp-gvfs-maybe-open-connection): Set :noquery flag for process.
132828	(tramp-gvfs-send-command): Add locale settings to `process-environment'.
132829	(top): Suppress D-Bus error messages during zeroconf initialization.
132830
132831	* lisp/net/tramp.el (tramp-unknown-id-string)
132832	(tramp-unknown-id-integer): New defconst.
132833	(tramp-check-cached-permissions)
132834	* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes)
132835	* lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls)
132836	(tramp-convert-file-attributes, tramp-get-remote-uid)
132837	(tramp-get-remote-gid): Use them.
132838
132839	* lisp/net/tramp-sh.el (tramp-display-escape-sequence-regexp):
132840	Rename from `tramp-color-escape-sequence-regexp'.
132841	(tramp-sh-handle-insert-directory)
132842	(tramp-convert-file-attributes): Adapt callees.
132843	(tramp-device-escape-sequence-regexp): New defconst.
132844	(tramp-wait-for-output): Use it.  Reported by Matthías Páll
132845	Gissurarson <icetritlo@gmail.com>.
132846
132847	* lisp/net/tramp-smb.el (tramp-smb-handle-file-name-all-completions):
132848	Simplify.
132849
132850	* test/lisp/net/tramp-tests.el (tramp-test26-process-file)
132851	(tramp-test28-shell-command):
132852	Use `tramp-display-escape-sequence-regexp'.
132853
1328542016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
132855
132856	Don’t document declare-function internals
132857
132858	Suggested by Stefan Monnier in:
132859	https://lists.gnu.org/r/emacs-devel/2016-05/msg00618.html
132860	* doc/lispref/functions.texi (Declaring Functions):
132861	* lisp/subr.el (declare-function):
132862	* lisp/emacs-lisp/bytecomp.el:
132863	(byte-compile-macroexpand-declare-function):
132864	Document as (fn file &optional arglist fileonly)
132865	even though it is really (fn file &rest args).
132866
1328672016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
132868
132869	* src/puresize.h (BASE_PURESIZE): Increase it some more.
132870
1328712016-05-27  Glenn Morris  <rgm@gnu.org>
132872
132873	* src/puresize.h (BASE_PURESIZE): Increase it by a little bit.
132874
132875	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Tweak previous to
132876	avoid build failure.
132877
1328782016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
132879
132880	Port to platforms where rlim_max < 0
132881
132882	* src/emacs.c (main): Do not treat a negative rlim_max as a limit;
132883	this can happen if a special value like RLIM_INFINITY is negative.
132884
1328852016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
132886
132887	Robustify stack-size calculation
132888
132889	* src/emacs.c: Include getpagesize.h.
132890	(main): Check for integer overflow when computing stack size.
132891	Round new rlim_cur to pagesize boundary on all platforms, as this
132892	is easy and would have prevented Bug#23622.  If setrlimit
132893	fails, use current limit to determine re_max_failures.
132894
1328952016-05-27  Ken Brown  <kbrown@cornell.edu>
132896
132897	Adjust filenotify-tests on Cygwin
132898
132899	* test/lisp/filenotify-tests.el (file-notify--test-timeout):
132900	Remove special case for Cygwin.
132901	(file-notify-test07-backup): Update expected results on Cygwin.
132902
1329032016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
132904
132905	Improve define-function omitted-arg documentation
132906
132907	* doc/lispref/functions.texi (Declaring Functions):
132908	* lisp/subr.el (declare-function):
132909	Be clearer when documenting omitted args for define-function.
132910
1329112016-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
132912
132913	* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Add docstring to accessors.
132914
1329152016-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
132916
132917	* lisp/subr.el (definition-prefixes): Expand docstring
132918
132919	* lisp/emacs-lisp/autoload.el (autoload--split-prefixes):
132920	Remove unused function.
132921
1329222016-05-27  Phillip Lord  <phillip.lord@russet.org.uk>
132923
132924	Fix broken viper deactivation
132925
132926	* lisp/emulation/viper.el (viper--deactivate-advice-list): Destructure
132927	  args to advice-remove.
132928	  (viper--advice-add): Use cons not list.
132929
132930	Addresses bug#23625
132931
1329322016-05-27  Mark Oteiza  <mvoteiza@udel.edu>
132933
132934	Preserve buffer point in windows by default (Bug#4041).
132935
132936	* doc/lispref/windows.texi: Mention new default.
132937	* etc/NEWS: Mention new default.
132938	* lisp/window.el (switch-to-buffer-preserve-window-point): Default to t.
132939
1329402016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
132941
132942	Fix byte-compiler pacification for declare-function
132943
132944	Problem reported by Michael Heerdegen in:
132945	https://lists.gnu.org/r/emacs-devel/2016-05/msg00590.html
132946	* lisp/emacs-lisp/bytecomp.el:
132947	(byte-compile-macroexpand-declare-function):
132948	Revert signature to previous value.
132949	* lisp/subr.el (declare-function): Change signature to
132950	match the reverted signature used in the byte compiler.
132951
1329522016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
132953
132954	Update texinfo.tex
132955
132956	This fixes Bug#23611 in a different (and presumably better) way.
132957	* doc/misc/texinfo.tex: Update from gnulib.
132958
1329592016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
132960
132961	Pacify 'make check-declare'
132962
1329632016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
132964
132965	Repair damage from emacs-25 merge
132966
132967	* test/lisp/character-fold-tests.el:
132968	Remove, as it was renamed to test/lisp/char-fold-tests.el.
132969	* test/lisp/emulation/viper-tests.el:
132970	Rename from test/automated/viper-tests.el.
132971
1329722016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
132973
132974	Merge from origin/emacs-25
132975
132976	c3489d0 * lisp/w32-fns.el (set-message-beep, w32-get-locale-info) (w3...
132977	a4d882c Correct old cell name unbinding when renaming cell.
132978	6c12c53 Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into...
132979	0be6725 Document problem: slow screen refresh on missing font.
132980	853b9b9 * admin/admin.el (add-release-logs): Basic check of existing ...
132981	5fa80cf * build-aux/gitlog-to-emacslog: Handle empty generated Change...
132982	3c79e51 * admin/admin.el (add-release-logs): Generate ChangeLog if ne...
132983	42275df * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
132984	3f4a9d9 * admin/authors.el (authors): First update the ChangeLog.
132985	897fb6f ; 'Changes from the pre-25.1 API' copyedits
132986	825ca25 Rename vc-stay-local back to vc-cvs-stay-local
132987	4efb3e8 * doc/emacs/files.texi (Comparing Files): * doc/emacs/trouble...
132988	b995d1e * doc/misc/eww.texi (Advanced): Fix xref.
132989	2e589c0 Fix cross-references between manuals
132990	f3d2ded * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to ...
132991	906c810 ; * admin/release-process: Move etc/HISTORY from here... ; * ...
132992	bea1b65 * admin/admin.el (add-release-logs): Also update etc/HISTORY.
132993	503e752 ; * CONTRIBUTE: Fix a typo.
132994	fbfd478 Avoid aborting due to errors in arguments of 'set-face-attrib...
132995	bdfbe6d ; * admin/release-process: Copyedits.
132996	44a6aed ; * test/automated/data-tests.el: Standardize license notice.
132997	c33ed39 ; * test/automated/viper-tests.el: Standardize license notice.
132998	df4a14b Add automated test for viper-tests.el
132999	c0139e3 Fix viper undo breakage from undo-boundary changes
133000	920d76c Fix reference to obsolete fn ps-eval-switch
133001	18a9bc1 Do not trash symlinks to init file
133002	2671179 Don't print the "decomposition" line for control chars in wha...
133003	869092c Bring back xterm pasting with middle mouse
133004	5ab0830 Provide workaround for xftfont rendering problem
133005	c9f7ec7 * lisp/desktop.el: Disable restore frameset if in non-graphic...
133006	30989a0 Mention GTK+ problems in etc/PROBLEMS
133007	421e3c4 * lisp/emacs-lisp/package.el (package-refresh-contents):
133008	dadfc30 Revert "epg: Add a way to detect gpg1 executable for tests"
133009	e41a5cb Avoid errors with Czech and Slovak input methods
133010	d4ae6d7 epg: Add a way to detect gpg1 executable for tests
133011	ebc3a94 * lisp/emacs-lisp/package.el: Fix free variable warnings.
133012	6e71295 * lisp/emacs-lisp/package.el (package--with-response-buffer):
133013	c45d9f6 Improve documentation of 'server-name'
133014	3b5e38c Modernize ASLR advice in etc/PROBLEMS
133015	1fe1e0a * lisp/char-fold.el: Rename from character-fold.el.
133016
1330172016-05-26  Eli Zaretskii  <eliz@gnu.org>
133018
133019	Avoid byte-compiler warnings due to 'declare-function'
133020
133021	* lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
133022	(w32-get-valid-locale-ids):
133023	* lisp/progmodes/js.el (ido-mode): Specify arglist in
133024	'declare-function' forms, to avoid byte-compiler warnings.
133025
1330262016-05-26  Glenn Morris  <rgm@gnu.org>
133027
133028	* lisp/info.el (Info-default-directory-list): Don't check /share,info.
133029
133030	No-one puts info pages there.  If /share does exist, it's likely to
133031	contain remote file systems where access could be slow.
133032
1330332016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
133034
133035	Merge from origin/emacs-25
133036
133037	2d76405 etc/AUTHORS: Update the AUTHORS file
133038
1330392016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
133040
133041	Merge from origin/emacs-25
133042
133043	06cb28f Fix bug#23462: Crash when iconifying frame on OS X.
133044
1330452016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
133046
133047	Merge from origin/emacs-25
133048
133049	939eb75 Fix bug in default setting of 'ps-paper-type'
133050
1330512016-05-26  Glenn Morris  <rgm@gnu.org>
133052
133053	* lisp/info.el (Info-default-directory-list): Remove obsolete suffixes.
133054
1330552016-05-26  Michael Albinus  <michael.albinus@gmx.de>
133056
133057	Fix Bug#23614.
133058
133059	* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
133060	Let-bind `process-coding-system-alist' in order to suppress
133061	the value for "cmdproxy".
133062
133063	* lisp/net/tramp.el (tramp-encoding-shell):
133064	`w32-shell-name' is a function.
133065	(tramp-encoding-command-switch)
133066	(tramp-encoding-command-interactive): Use `w32-shell-dos-semantics'.
133067
133068	* test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
133069	Suppress some tests on MS Windows.  (Bug#23614)
133070
1330712016-05-26  Stephen Berman  <stephen.berman@gmx.net>
133072
133073	hl-line.el: Fix flickering of highlighted line (bug#23510)
133074
133075	* lisp/hl-line.el (hl-line-maybe-unhighlight)
133076	(global-hl-line-highlight-all)
133077	(global-hl-line-maybe-unhighlight): New functions.
133078	(hl-line-overlay-buffer): New variable.
133079	(hl-line-mode): Use it.  Replace hl-line-unhighlight on
133080	pre-command-hook by hl-line-maybe-unhighlight on
133081	post-command-hook, to prevent hl-line from flickering.
133082	Adjust document string.
133083	(global-hl-line-mode): Use global-hl-line-highlight-all to
133084	simultaneously highlight the current line in all live windows.
133085	Replace global-hl-line-unhighlight on pre-command-hook by
133086	global-hl-line-maybe-unhighlight on post-command-hook, to
133087	prevent global-hl-line from flickering.  Remove
133088	global-hl-line-unhighlight from change-major-mode-hook on
133089	disabling the mode.  Adjust document string.
133090
1330912016-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
133092
133093	Make autoloads populate a new definition-prefixes table
133094
133095	* lisp/subr.el (definition-prefixes): New hash table.
133096	(register-definition-prefixes): New function.
133097
133098	* lisp/emacs-lisp/autoload.el (autoload-compute-prefixes): New var.
133099	(autoload--split-prefixes-1, autoload--split-prefixes)
133100	(autoload--make-defs-autoload): New functions.
133101	(autoload-defs-autoload-max-size, autoload-popular-prefixes): New vars.
133102	(autoload-generate-file-autoloads): Obey autoload-compute-prefixes.
133103	(update-directory-autoloads): Don't touch loaddefs.el if the set of
133104	autoloads hasn't changed (i.e. if only the timestamp would change).
133105
133106	* lisp/loadup.el: Purify definition-prefixes.
133107
133108	* lisp/w32-fns.el: Keep name space clean.
133109	(w32-set-default-process-coding-system): Rename from
133110	set-default-process-coding-system.
133111	(w32-set-system-coding-system): Rename from set-w32-system-coding-system.
133112
1331132016-05-24  Ken Brown  <kbrown@cornell.edu>
133114
133115	Allow network-stream-tests to work for out-of-tree builds
133116
133117	* test/lisp/net/network-stream-tests.el
133118	(network-stream-tests--datadir): New defconst.
133119	(make-tls-server): Use it.
133120
1331212016-05-24  Ken Brown  <kbrown@cornell.edu>
133122
133123	Fix failing echo-server-nowait test
133124
133125	* test/lisp/net/network-stream-tests.el (echo-server-nowait):
133126	Specify IPv4 for the client, to match the family of the server.
133127	(Bug#23606)
133128
1331292016-05-24  Ken Brown  <kbrown@cornell.edu>
133130
133131	Allow shr-tests to work for out-of-tree builds
133132
133133	* test/lisp/net/shr-tests.el (shr-tests--datadir): New defconst.
133134	(shr-test, rendering): Use it.
133135
1331362016-05-24  Ken Brown  <kbrown@cornell.edu>
133137
133138	Update allowable arguments for open-network-stream
133139
133140	* src/coding.c (Ffind_operation_coding_system): Allow t as a
133141	target for open-network-stream.  (Bug #23540)
133142
1331432016-05-24  Dmitry Gutov  <dgutov@yandex.ru>
133144
133145	Make js-mode's syntax highlighting work again
133146
133147	* lisp/progmodes/js.el (js-mode): Fix the assigned
133148	font-lock-defaults value (bug#23603).
133149
1331502016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
133151
133152	* lisp/progmodes/cc-mode.el: Add minor comments
133153
133154	(c-change-expand-fl-region): Mark args as unused.
133155
1331562016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
133157
133158	* lisp/url/url-http.el: Use lexical-binding
133159
133160	(url-http-simple-after-change-function): Use buffer-size rather than `nd'.
133161	(url-http-wait-for-headers-change-function): Remove unused var
133162	`content-length'.
133163	(url-http): Remove unused vars `host' and `port'.
133164
1331652016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
133166
133167	* lisp/widget.el (define-widget): Use `declare' (which does work now).
133168
133169	(widget-plist-member): Mark as obsolete.
133170
1331712016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
133172
133173	* lisp/image.el: Use lexical-binding
133174
133175	(image-scaling-factor, imagemagick-types-inhibit)
133176	(imagemagick-enabled-types): Remove redundant :group.
133177	(image--get-image): Apply de-Morgan and use car-safe.
133178	(image-compute-scaling-factor): Use the argument.
133179
1331802016-05-23  Glenn Morris  <rgm@gnu.org>
133181
133182	* lisp/image.el (image--get-image): Remove nonsensical code.
133183
133184	* lisp/image.el (image--get-image): Avoid requiring a library for
133185	one trivial operation.
133186
1331872016-05-23  Paul Eggert  <eggert@cs.ucla.edu>
133188
133189	Don’t use only last protocol from getaddrinfo
133190
133191	Problem reported by Ken Brown in:
133192	https://lists.gnu.org/r/emacs-devel/2016-05/msg00483.html
133193	* src/process.c (conv_addrinfo_to_lisp): New function.
133194	(connect_network_socket): Arg is now a list of addrinfos, not
133195	merely IP addresses.  All uses changed.  Use protocol from
133196	each addrinfo.
133197	(Fmake_network_process): Accumulate protocols into addrinfos
133198	rather than just using the last one found.
133199	(check_for_dns): Accumulate protocols here, too.
133200	* src/process.h (struct Lisp_Process): Remove ai_protocol;
133201	no longer needed.
133202
1332032016-05-23  Paul Eggert  <eggert@cs.ucla.edu>
133204
133205	Fix seq requirement that broke bootstrap
133206
133207	* lisp/image.el (image--get-image): Require seq here, not at the
133208	top level, to avoid ‘(require seq) while preparing to dump’ while
133209	bootstrapping.  Suggested by Tino Calancha in:
133210	https://lists.gnu.org/r/emacs-devel/2016-05/msg00477.html
133211
1332122016-05-22  Nicolas Petton  <nicolas@petton.fr>
133213
133214	Add missing dependencies to seq.el
133215
133216	* lisp/emacs-lisp/find-func.el:
133217	* lisp/ibuffer.el:
133218	* lisp/image.el: Require seq.
133219
1332202016-05-22  Alp Aker  <alp@food52.com>
133221
133222	* src/process.c (SOCK_NONBLOCK): Fix typo.
133223
1332242016-05-22  Etienne Prud’homme  <e.e.f.prudhomme@gmail.com>
133225
133226	Add completion of colors in CSS mode
133227
133228	* lisp/textmodes/css-mode.el (css-value-class-alist): Add CSS colors
133229	from "CSS Color Module Level 3".
133230
133231	* test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
133232	Update test.
133233
1332342016-05-21  Paul Eggert  <eggert@cs.ucla.edu>
133235
133236	Prefer SOCK_NONBLOCK to O_NONBLOCK
133237
133238	* src/process.c (SOCK_NONBLOCK): Define to 0 if not already defined.
133239	(connect_network_socket): Create the socket with SOCK_NONBLOCK, to
133240	avoid an fcntl with O_NONBLOCK if SOCK_NONBLOCK works.  Put the
133241	SOCK_DGRAM check a bit later, to keep the logic cleaner, as
133242	the order does not matter here.
133243
1332442016-05-21  Alan Third  <alan@idiocy.org>
133245
133246	Fix bug#16856, cursor leaves garbage in fringe on OS X.
133247
133248	* src/nsterm.m (ns_draw_window_cursor): Prevent the cursor from
133249	being drawn outside the text area.
133250
1332512016-05-21  Eli Zaretskii  <eliz@gnu.org>
133252
133253	Fix compiler warnings in the MinGW build
133254
133255	* configure.ac [mingw32]: Don't add -Wpointer-sign, and add
133256	-Wno-pointer-sign, to keep the noise level down.
133257
133258	* nt/mingw-cfg.site (gl_cv_warn_c__Wredundant_decls): Disable
133259	-Wredundant-decls, as that produces a lot of noise due to
133260	redeclaration of time-related functions by gnulib.
133261	* nt/runemacs.c (set_user_model_id): Fix argument type of
133262	'SetCurrentProcessExplicitAppUserModelID'.
133263
133264	* src/image.c (x_create_bitmap_from_file) [HAVE_NTGUI]: Don't
133265	declare 'dpyinfo', as it is unused.
133266	(xpm_load): Fix warnings about pointer signedness.
133267	* src/w32proc.c (IsValidLocale, init_winsock): Remove redundant
133268	prototypes.
133269	(sys_spawnve): Avoid warnings about discarding 'const' qualifier.
133270	(sys_select): Provide prototype.
133271	(g_b_init_compare_string_w): Move declaration to file scope.
133272	* src/w32heap.c (dumped_data_commit): Now static.
133273	(FREEABLE_P): Avoid warnings about pointer comparison with integer.
133274	(mmap_realloc): Cast to 'char *' for arithmetics on void pointers.
133275	* src/w32console.c (ctrl_c_handler, sys_tputs, sys_tgetstr)
133276	(evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear):
133277	Provide prototypes.
133278	* src/w32.c (globals_of_w32, conv_sockaddr_to_lisp): Remove
133279	redundant prototypes.
133280	(w32_get_internal_run_time, map_w32_filename): Provide prototype.
133281	(init_environment, sys_ctime): Avoid warnings about discarding
133282	'const' qualifier.
133283	Include utimens.h.
133284	(sys_ctime, sys_chdir, sys_creat, sys_fopen, sys_mkdir)
133285	(sys_open, sys_rename, sys_rmdir, is_slow_fs, term_winsock)
133286	(sys_close, sys_dup2, sys_read, sys_write, sys_localtime): Provide
133287	prototypes.
133288	(sys_rename_replace): Use %d to avoid compiler warnings.
133289	(_wsa_errlist): Make the message text 'const char *', to avoid
133290	compilation warnings.
133291	(dynlib_reset_last_error): Move prototype to file scope.
133292	(w32_get_resource): First argument is now 'const char *'.
133293	* src/w32uniscribe.c (syms_of_w32uniscribe): Provide prototype.
133294	(otf_features): Second argument is no 'const char *'.
133295	* src/w32term.c (free_frame_menubar, x_wm_set_size_hint)
133296	(x_set_window_size): Remove redundant prototypes.
133297	(XChangeGC, XGetGCValues, w32_draw_underwave)
133298	(w32_draw_rectangle, w32_shift_glyphs_for_insert, x_mouse_leave)
133299	(x_calc_absolute_position, x_destroy_window): Now static.
133300	(menubar_selection_callback): Move prototype to file scope.
133301	* src/w32font.c (g_b_init_get_glyph_outline_w): Remove redundant
133302	declaration.
133303	(w32_to_x_charset): Fix warnings about discarding 'const' qualifier.
133304	(w32font_full_name): Fix warnings about implicit conversion of
133305	'float' to 'double'.
133306	* src/w32reg.c (w32_get_rdb_resource): Fix warnings about
133307	discarding 'const' qualifier.
133308	* src/w32menu.c (syms_of_w32menu, globals_of_w32menu)
133309	(set_frame_menubar): Remove redundant prototypes.
133310	(menubar_selection_callback, w32_menu_display_help): Provide
133311	prototypes.
133312	(simple_dialog_show): Avoid warnings about discarding 'const'
133313	qualifier.
133314	* src/w32fns.c (syms_of_w32fns, globals_of_w32fns)
133315	(free_frame_menubar, w32_strerror, x_set_menu_bar_lines)
133316	(x_set_tool_bar_lines, x_set_internal_border_width): Remove
133317	redundant prototypes.
133318	(current_popup_menu): Remove redundant declaration.
133319	(colormap_t): Member 'name' is now 'const char *'.
133320	(add_system_logical_colors_to_map): Fix signed/unsigned warnings.
133321	(x_decode_color, x_set_border_pixel)
133322	(x_clear_under_internal_border, x_set_name, hook_w32_key)
133323	(reset_w32_kbdhook_state, deliver_wm_chars, w32_backtrace): Now
133324	static.
133325	(w32_load_cursor, w32_key_to_modifier, map_keypad_keys)
133326	(w32_msg_worker, w32_last_error): Provide prototypes.
133327	(funhook, lookup_vk_code): Avoid warnings about missing
133328	parentheses.
133329	(x_default_font_parameter, Fw32_notification_notify): Avoid
133330	warnings about discarding 'const' qualifier.
133331	(Fx_create_frame): Avoid warnings about empty body of 'else'.
133332	(x_screen_planes): Ifdef away unused function.
133333	(Fx_show_tip): Remove unused variables.
133334	(Fw32_battery_status): Avoid warnings about implicit promotion
133335	from float to double.
133336	(Fw32_notification_notify): Initialize 'timeout'.
133337	* src/profiler.c (profiler_cpu_running) [HAVE_ITIMERSPEC]: Only
133338	define the TIMER_SETTIME_RUNNING value if it will be used.
133339	* src/w32notify.c (send_notifications): Ifdef away an empty if
133340	clause.  Remove unused variable.
133341	(watch_end, watch_completion): Provide prototypes.
133342	* src/sound.c (sound_warning) [WINDOWSNT]: Don't define: unused.
133343	* src/callproc.c (child_setup, getenv_internal_1) [WINDOWSNT]: Fix
133344	warning with pointer signedness.
133345	* src/gnutls.c (gnutls_x509_crt_get_signature)
133346	(gnutls_alert_send_appropriate) [WINDOWSNT]: Don't define, and
133347	don't load them from the GnuTLS library, as they are no longer
133348	used.
133349	* src/process.c (DATAGRAM_CHAN_P) [!DATAGRAM_SOCKETS]: Don't
133350	define, as it's unused.
133351	* src/unexw32.c (open_input_file, open_output_file)
133352	(close_file_data): Remove redundant prototypes.
133353	(_start): provide prototype.
133354	(mainCRTStartup): Move prototype to file level.
133355	(find_section): Use type-cast to shut up compiler warnings.
133356	(offset_to_section, relocate_offset): Now static.
133357	(find_section): First argument is now a 'const char *'.
133358	(offset_to_section): Ifdef away, as it's unused.
133359	* src/w32heap.h (find_section): Adjust prototype.
133360	* src/dynlib.c (dynlib_reset_last_error): Provide prototype.
133361	* src/dired.c (directory_files_internal_w32_unwind): Avoid
133362	warnings about missing prototypes.
133363	(is_slow_fs) [WINDOWSNT]: Provide prototype at file level.
133364	(directory_files_internal) [WINDOWSNT]: Fix warnings about pointer
133365	signedness.
133366	* src/fileio.c (Ffile_writable_p, Ffile_regular_p) [WINDOWSNT]:
133367	Fix warnings about pointer signedness.
133368	* src/filelock.c (WTMP_FILE) [WINDOWSNT]: Don't define, it's
133369	unused.
133370	* src/sysdep.c (_getpid): Remove redundant prototype.
133371	(sys_subshell) [DOS_NT]: Don't define 'status', it's unused.
133372	[!MSDOS]: Don't define 'st', it's unused.
133373	(init_sys_modes) [DOS_NT]: Don't define 'terminal', it's unused.
133374	(str_collate) [WINDOWSNT]: Avoid warnings about pointer signedness.
133375	* src/keyboard.c (tty_read_avail_input) [WINDOWSNT]: Don't define
133376	n_to_read, as it is not used.
133377	(MAX_ENCODED_BYTES) [WINDOWSNT]: Don't define, as it's unused.
133378	* src/w32font.h (syms_of_w32font): Remove redundant prototype.
133379	* src/xfaces.c (x_display_info) [HAVE_NTGUI]: Remove unused macro.
133380	* src/term.c (init_tty) [DOS_NT]: Ifdef away variables that are
133381	not used by DOS_NT builds, to avoid compiler warnings.
133382	* src/menu.c (current_popup_menu) [HAVE_NTGUI]: Remove redundant
133383	declaration.
133384	* src/dispnew.c (init_display) [WINDOWSNT]: Use type-cast to shut
133385	up compiler warnings.
133386	* src/w32term.h (x_set_window_size, x_get_focus_frame)
133387	(x_make_frame_visible, x_make_frame_invisible, x_iconify_frame)
133388	(x_set_frame_alpha, x_activate_menubar, x_bitmap_icon)
133389	(x_free_frame_resources, x_real_positions)
133390	(display_x_get_resource): Remove redundant prototypes.
133391
133392	* lib-src/ntlib.c (sys_ctime, sys_fopen, sys_chdir, mkostemp)
133393	(sys_rename, gettimeofday): Provide prototypes.
133394	* lib-src/ntlib.h (getuid, geteuid, mkostemp): Remove redundant
133395	declarations.
133396	* lib-src/emacsclient.c (w32_getenv): Argument is now 'const char *'.
133397	(xstrdup, w32_get_resource, w32_window_app, w32_execvp, ttyname)
133398	(close_winsock, initialize_sockets, w32_set_user_model_id)
133399	(w32_find_emacs_process, w32_give_focus) [WINDOWSNT]: Add
133400	prototypes.
133401	(w32_get_resource) [WINDOWSNT]: Fix a warning about signedness
133402	difference.
133403	(w32_set_user_model_id): Update prototype of
133404	SetCurrentProcessExplicitAppUserModelID to avoid compiler
133405	warnings.
133406	(start_daemon_and_retry_set_socket) [WINDOWSNT]: Use type-cast to
133407	shut up compiler warnings.
133408	* lib-src/etags.c (MAXPATHLEN) [WINDOWSNT]: Remove unused macro.
133409
1334102016-05-21  Eli Zaretskii  <eliz@gnu.org>
133411
133412	Fix 'vertical-motion' and 'posn-at-point' under 'visual-line-mode'
133413
133414	* src/xdisp.c (move_it_in_display_line_to): Don't assume we can
133415	wrap on a whitespace character if it's followed by another
133416	whitespace character.  When returning under WORD_WRAP for a screen
133417	line that is continued, restore to wrap point when atpos/atx
133418	position would be displayed on the next screen line due to
133419	line-wrap.  (Bug#23570)
133420
1334212016-05-21  Puneeth Chaganti  <punchagan@muse-amuse.in>
133422
133423	* lisp/svg.el (svg-create): Fix a typo: xmlsn -> xmlns.  (Bug#23589)
133424
1334252016-05-20  Andrew Hyatt  <ahyatt@gmail.com>
133426
133427	Added tests for dos unibyte decoding.
133428
133429	The underlying bug was previously fixed by Eli Zaretskii in commit
133430	c8109d9c4057d8cac79e2c139758cadd410e7446.
133431
1334322016-05-20  Philipp Stephani  <phst@google.com>
133433
133434	Fix handling of ‘mouse-on-link-p’.
133435
133436	If ‘mouse-on-link-p’ returns a string or vector, the first element
133437	is to be used as new event.  Translation to ‘mouse-2’ should only
133438	happen if the return value is not a string or vector.  See
133439	docstring of ‘mouse-on-link-p’ and Bug#23288.
133440
133441	* lisp/mouse.el (mouse--down-1-maybe-follows-link): Process return
133442	value of ‘mouse-on-link-p’ according to documentation.
133443
133444	* test/lisp/mouse-tests.el (bug23288-use-return-value)
133445	(bug23288-translate-to-mouse-2): Tests for Bug#23288.
133446
1334472016-05-20  Daiki Ueno  <ueno@gnu.org>
133448
133449	epg: Add a way to detect gpg1 executable for tests
133450
133451	Fixes bug#23561.
133452
133453	* test/automated/epg-tests.el
133454	(epg-tests-program-alist-for-passphrase-callback): New
133455	constant.
133456	(epg-tests-find-usable-gpg-configuration): New function,
133457	renamed from `epg-tests-gpg-usable'.  All callers changed.
133458	(epg-tests-gpg-usable): Remove.
133459
133460	* lisp/epg-config.el (epg-config--program-alist): Factor out
133461	constructor element to...
133462	(epg-config--configuration-constructor-alist): ...here.
133463	(epg-find-configuration): Rename FORCE argument to NO-CACHE,
133464	and add PROGRAM-ALIST argument.
133465
1334662016-05-19  Mark Oteiza  <mvoteiza@udel.edu>
133467
133468	Put point at beginning of display-time-world buffer.
133469
133470	If display-time-world decides to popup vertically from the bottom of the
133471	frame and scroll-margin is nonzero, the top of the buffer contents are
133472	hidden due to scroll.
133473	* lisp/time.el (display-time-world-display): Move point to point-min
133474	after inserting contents.
133475
1334762016-05-19  Paul Eggert  <eggert@cs.ucla.edu>
133477
133478	Allow null entries in face and image cache
133479
133480	Problem reported by Tino Calancha (Bug#23580).
133481	* src/dispextern.h (FACE_FROM_ID, IMAGE_FROM_ID):
133482	Don’t assume that the result is non-null.
133483	* src/xdisp.c (fill_image_glyph_string):
133484	Restore check that image pointer is non-null.
133485
1334862016-05-19  Paul Eggert  <eggert@cs.ucla.edu>
133487
133488	Fix flyspell highlighting
133489
133490	Problem reported by Jim Meyering (Bug#23575).
133491	* src/xdisp.c (extend_face_to_end_of_line):
133492	Fix typo in previous change.
133493
1334942016-05-18  Eli Zaretskii  <eliz@gnu.org>
133495
133496	* lisp/server.el (server-name): Add autoload cookie.  (Bug#23576)
133497
1334982016-05-18  Sam Steingold  <sds@gnu.org>
133499
133500	python-describe-at-point: add and bind
133501
1335022016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
133503
133504	‘make check-declare’ now chatters less
133505
133506	* etc/NEWS: Document this.
133507	* lisp/emacs-lisp/check-declare.el (check-declare-locate):
133508	Return relative names, not absolute.
133509	(check-declare-scan, check-declare-verify, check-declare-warn)
133510	(check-declare-file, check-declare-directory):
133511	Generate less chatter.  Use relative file names rather than
133512	absolute.  Don’t give up on computing a good file name for a
133513	diagnostic merely because the function name was bad.  Make
133514	malformed declarations more noticeable.  Don’t warn about
133515	"ext:..." declarations if check-declare-ext-errors is nil.
133516	(check-declare-errmsg): Remove.
133517	(check-declare-warn): New optional arg LINE.
133518	(check-declare-files): Put status into mode line rather than
133519	chattering.
133520
1335212016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
133522
133523	Pacify byte-compiler for byte-compile-macroexpand-declare-function
133524
133525	* lisp/emacs-lisp/bytecomp.el: Change signature of
133526	byte-compile-macroexpand-declare-function to match that of
133527	declare-function.
133528
1335292016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
133530
133531	Pacify byte-compiler for with-wrapper-hook
133532
133533	* lisp/subr.el (subr--with-wrapper-hook-no-warnings):
133534	New macro, split out from with-wrapper-hook.
133535	* lisp/abbrev.el (abbrev--default-expand):
133536	* lisp/minibuffer.el (completion--in-region):
133537	* lisp/simple.el (buffer-substring--filter):
133538	* lisp/subr.el (with-wrapper-hook):
133539	Use it.
133540
1335412016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
133542
133543	Pacify byte-compiler in lisp/url
133544
133545	* lisp/url/url-misc.el, lisp/url/url-file.el (mm-disable-multibyte):
133546	Add decl.
133547
1335482016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
133549
133550	Port --enable-gcc-warnings to GCC 6.1
133551
133552	* configure.ac (WERROR_CFLAGS): Omit -Wunused-const-variable=2.
133553	* lib-src/etags.c (LOOKING_AT, LOOKING_AT_NOCASE):
133554	Omit test whether pointer plus a constant equals a null pointer.
133555	* src/alloc.c (compact_small_strings):
133556	Avoid pointer arithmetic on null pointers.
133557	* src/alloc.c (mark_face_cache):
133558	* src/fontset.c (free_realized_fontsets, Fset_fontset_font):
133559	* src/fringe.c (draw_fringe_bitmap_1)
133560	(Fset_fringe_bitmap_face):
133561	* src/macfont.m (macfont_draw):
133562	* src/msdos.c (IT_set_face, IT_clear_screen):
133563	* src/nsfont.m (nsfont_draw):
133564	* src/nsterm.h (FRAME_DEFAULT_FACE):
133565	* src/nsterm.m (ns_draw_window_cursor)
133566	(ns_draw_vertical_window_border, ns_draw_window_divider)
133567	(ns_dumpglyphs_box_or_relief)
133568	(ns_maybe_dumpglyphs_background, ns_dumpglyphs_image)
133569	(ns_dumpglyphs_stretch):
133570	* src/w32term.c (w32_draw_vertical_window_border)
133571	(w32_draw_window_divider, x_set_mouse_face_gc):
133572	* src/xdisp.c (estimate_mode_line_height, init_iterator)
133573	(handle_face_prop, handle_single_display_spec, pop_it)
133574	(CHAR_COMPOSED_P, get_next_display_element)
133575	(next_element_from_display_vector, extend_face_to_end_of_line)
133576	(fill_gstring_glyph_string,BUILD_COMPOSITE_GLYPH_STRING):
133577	* src/xfaces.c (Finternal_merge_in_global_face, Fface_font)
133578	(lookup_named_face):
133579	* src/xterm.c (x_draw_vertical_window_border)
133580	(x_draw_window_divider, x_set_mouse_face_gc):
133581	Prefer FACE_OPT_FROM_ID to FACE_FROM_ID when the result might be null.
133582	* src/xterm.c (try_window_id):
133583	Redo loop to convince GCC 6.1 that it is null pointer safe.
133584	(x_color_cells):
133585	Use eassume as necessary to pacify GCC 6.1.
133586	* src/dispextern.h (FACE_FROM_ID, IMAGE_FROM_ID): Now returns non-null.
133587	(FACE_OPT_FROM_ID, IMAGE_OPT_FROM_ID): New macro, with the old
133588	behavior of the non-_OPT macro, to be used when the result
133589	might be a null pointer.
133590	* src/dispnew.c (buffer_posn_from_coords, marginal_area_string)
133591	[HAVE_WINDOW_SYSTEM]:
133592	* src/intervals.h (INTERVAL_WRITABLE_P):
133593	* src/term.c (turn_off_face):
133594	* src/xdisp.c (get_glyph_face_and_encoding, fill_image_glyph_string)
133595	(produce_image_glyph, produce_xwidget_glyph):
133596	* src/xfaces.c (lookup_named_face):
133597	Remove unnecessary test for null pointer.
133598	* src/keyboard.c (read_char): Suppress bogus -Wclobbered warning.
133599	* src/process.c (would_block): New function.
133600	(server_accept_connection, wait_reading_process_output, send_process):
133601	Use it.
133602	* src/xdisp.c (get_window_cursor_type, note_mouse_highlight):
133603	Prefer IMAGE_OPT_FROM_ID to IMAGE_FROM_ID when the result
133604	might be null.
133605
1336062016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
133607
133608	Sync from gnulib
133609
133610	This incorporates:
133611	2016-05-17 manywarnings: update for GCC 6.1
133612	2016-05-13 intdiv0, memmem, nocrash, strcasestr, strstr: no exit
133613	* m4/manywarnings.m4, m4/nocrash.m4: Copy from gnulib.
133614
1336152016-05-16  Glenn Morris  <rgm@gnu.org>
133616
133617	* lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
133618	Include more details on hydra.
133619
1336202016-05-16  Alan Mackenzie  <acm@muc.de>
133621
133622	Tidy up redundant code in cc-vars.el caused by mistake in emacs-25 -> master
133623
1336242016-05-16  Alan Mackenzie  <acm@muc.de>
133625
133626	Fix spurious fontification of "for (; a * b;)" in CC Mode.
133627
133628	This fixes bug #7918 (again).
133629
133630	* lisp/progmodes/cc-engine.el (c-delq-from-dotted-list): New function.
133631	(c-forward-decl-or-cast-1): Return a 4 element list in place of the previous
133632	cons cell - additionally, return a flag indicating whether the declaration
133633	parsed might have been an expression, and the position of the type identifier
133634	in the said declaration.
133635
133636	* lisp/progmodes/cc-fonts.el (c-font-lock-declarations): When
133637	c-forward-decl-or-cast-1 has indicated it might have parsed an expression,
133638	check for it being a spurious declaration in a "for" statement.
133639
1336402016-05-14  Paul Eggert  <eggert@cs.ucla.edu>
133641
133642	Pacify ‘make check-declare’
133643
133644	* lisp/cedet/srecode/insert.el (data-debug-new-buffer)
133645	(data-debug-insert-stuff-list, data-debug-insert-thing):
133646	* lisp/emulation/viper-ex.el (viper-change-state-to-vi)
133647	(viper-change-state-to-emacs):
133648	* lisp/emulation/viper-macs.el (viper-change-state-to-vi):
133649	* lisp/org/ob-asymptote.el (orgtbl-to-generic):
133650	* lisp/org/ob-awk.el (orgtbl-to-generic):
133651	* lisp/org/ob-core.el (org-edit-src-code, orgtbl-to-generic):
133652	* lisp/org/ob-emacs-lisp.el (orgtbl-to-generic):
133653	* lisp/org/ob-exp.el (org-element-context):
133654	* lisp/org/ob-gnuplot.el (org-time-string-to-time)
133655	(orgtbl-to-generic):
133656	* lisp/org/ob-haskell.el (org-export-to-file):
133657	* lisp/org/ob-latex.el (org-create-formula-image)
133658	(org-latex-compile):
133659	* lisp/org/ob-python.el (run-python):
133660	* lisp/org/ob-sh.el (orgtbl-to-generic):
133661	* lisp/org/ob-tangle.el (org-link-escape, org-back-to-heading):
133662	* lisp/org/org-colview.el (org-agenda-redo):
133663	* lisp/org/org-feed.el (url-retrieve-synchronously):
133664	* lisp/org/org-info.el (Info-find-node):
133665	* lisp/org/org-list.el (org-previous-line-empty-p):
133666	* lisp/org/org-macs.el (org-string-match-p):
133667	* lisp/org/org.el (org-beamer-mode):
133668	Fix prototype to match current definition.
133669	* lisp/emacs-lisp/advice.el (function-called-at-point):
133670	* lisp/progmodes/prolog.el (compilation-shell-minor-mode):
133671	Fix typo: extra '.
133672	* lisp/emacs-lisp/cl-generic.el (cl-defmethod):
133673	Insert ,' to pacify check-declare.
133674	* lisp/org/ob-comint.el (tramp-flush-directory-property):
133675	* lisp/org/ob-tangle.el (org-babel-update-block-body):
133676	* lisp/org/org-bibtex.el (org-babel-trim):
133677	* lisp/org/org-pcomplete.el (org-export-backend-options):
133678	* lisp/org/org-protocol.el (org-publish-get-project-from-filename):
133679	Fix file name in declare-function.
133680	* lisp/org/ob-comint.el (with-parsed-tramp-file-name)
133681	* lisp/org/ob-core.el (with-parsed-tramp-file-name):
133682	* lisp/org/org.el (org-beamer-mode):
133683	* lisp/url/url-http.el (gnutls-negotiate):
133684	Append ‘t’ to declare-function, since the declaration isn’t a defun.
133685	* lisp/org/ob-core.el (show-all):
133686	Declare outline-show-all instead, since it is the
133687	non-obsolete version of this function.
133688	(org-save-outline-visibility): Remove; not needed.
133689	* lisp/org/ob-scheme.el (run-geiser, geiser-mode)
133690	(geiser-eval-region, geiser-repl-exit):
133691	* lisp/org/ox-org.el (htmlize-buffer):
133692	Prepend "ext:" to file name, since it is not part of Emacs.
133693	* lisp/org/ob-sh.el (org-babel-comint-in-buffer)
133694	* lisp/org/org-gnus.el (nnimap-group-overview-filename):
133695	Remove decl, since function was removed.
133696	* lisp/org/ob-sh.el (org-babel-comint-with-output):
133697	* lisp/org/org-macro.el (org-with-wide-buffer):
133698	Omit unnecessary (and mismatching) decl.
133699	* lisp/org/org-agenda.el (calendar-absolute-from-iso):
133700	* lisp/org/org-clock.el (calendar-iso-to-absolute):
133701	Declare calendar-iso-to-absolute instead, since it is the
133702	non-obsolete version of this function.
133703	* lisp/org/org-compat.el (w32-focus-frame):
133704	Remove decl, since function is now obsolete.
133705
1337062016-05-14  Lars Ingebrigtsen  <larsi@gnus.org>
133707
133708	:max-width/height fixes for shr after the scaling changes
133709
133710	* lisp/net/shr.el (shr-rescale-image): Ensure that we respect
133711	max-width and max-height even after the scaling changes done
133712	earlier this year.
133713
1337142016-05-14  Eli Zaretskii  <eliz@gnu.org>
133715
133716	Fix reading minibuffer input in viper-mode
133717
133718	* lisp/emulation/viper-cmd.el (viper-read-string-with-history):
133719	Restore an assignment to viper-initial that got lost when
133720	viper-cmd.el was switched to lexical-binding.  (Bug#23536)
133721
1337222016-05-14  Paul Eggert  <eggert@cs.ucla.edu>
133723
133724	Port autogen.sh to Git 2.4
133725
133726	Problem reported by Michael Brand in:
133727	https://lists.gnu.org/r/emacs-devel/2016-05/msg00367.html
133728	* autogen.sh (git_config): Don't assume that git rev-parse
133729	groks --git-common-dir.
133730
1337312016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
133732
133733	Merge from origin/emacs-25
133734
133735	6de0715 Properly reject malformed or empty package sigs
133736	edae7d9 Remove buggy non-native image scrolling
133737
1337382016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
133739
133740	Improve display of tex-verbatim and Info quoted
133741
133742	Problem reported by Glenn Morris (Bug#19889).
133743	* doc/emacs/display.texi (Standard Faces):
133744	* doc/lispref/display.texi (Basic Faces):
133745	* etc/NEWS: Mention fixed-pitch-serif.
133746	* lisp/faces.el (face-font-family-alternatives):
133747	New family alias Monospace Serif.
133748	(fixed-pitch-serif): New face, which uses the new family.
133749	* lisp/info.el (Info-quoted):
133750	* lisp/textmodes/tex-mode.el (tex-verbatim): Use the new face.
133751	* test/lisp/legacy/font-parse-tests.el (font-parse-tests--data):
133752	Add test case for Monospace Serif.
133753
1337542016-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
133755
133756	* lisp/net/sieve-mode.el: Handle the text:... notation
133757
133758	Get rid of redundant :group keywords.
133759	(sieve-mode-syntax-table): Move initialization into declaration.
133760	(sieve-syntax-propertize, sieve-syntax-propertize-text): New functions.
133761	(sieve-mode): Use them.
133762
1337632016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
133764
133765	Tweak check-declare-directory performance
133766
133767	* lisp/emacs-lisp/check-declare.el (check-declare-directory):
133768	Use ‘find ... -exec ... +’ for speed.
133769
1337702016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
133771
133772	Sync from gnulib
133773
133774	This incorporates a spelling fix, plus:
133775	2016-05-09 Fix undefined behavior in gettext.h
133776	* lib/gettext.h, lib/mktime.c:
133777	Copy from gnulib.
133778
1337792016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
133780
133781	Merge from origin/emacs-25
133782
133783	9c2a1a2 * doc/misc/texinfo.tex: Sync from gnulib.
133784	66cd4d8 * lisp/emacs-lisp/find-func.el (find-feature-regexp) (find-al...
133785	1a5a05c Do not mistake colon at the end of regexp for slash symbol
133786	4c5a00b Make package-install-from-buffer not move point
133787	9596ea1 ; Revert "* emacs-lisp/lisp-mnt.el (lm-header): save-excursion"
133788	f79c352 Redo the fix for bug#21839
133789	8d2f78c Don't treat JS spread as contination method call
133790
1337912016-05-12  Chris Feng  <chris.w.feng@gmail.com>
133792
133793	Correct server/client address
133794
133795	* src/process.c (Fmake_network_process): :local is for servers and :remote
133796	is for clients.
133797
1337982016-05-12  Ken Brown  <kbrown@cornell.edu>
133799
133800	Autosave buffers on logout if HAVE_NTGUI
133801
133802	* src/w32fns.c (w32_wnd_proc): Pass a WM_ENDSESSION message on to
133803	w32_read_socket.
133804
133805	* src/w32term.c (w32_read_socket): Create an event of type
133806	END_SESSION_EVENT if a WM_ENDSESSION message is received.
133807
133808	* src/termhooks.h [HAVE_NTGUI]: New event kind END_SESSION_EVENT.
133809
133810	* src/keyboard.c [HAVE_NTGUI] (syms_of_keyboard): New symbol
133811	`end-session'.
133812	(kbd_buffer_get_event): Return an end-session event if an event of
133813	type END_SESSION_EVENT is read.
133814	(keys_of_keyboard): Bind the end-session event to kill-emacs in
133815	special-event-map.  (Bug#23483)
133816
1338172016-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
133818
133819	* lisp/cedet/semantic/{db-el,symref}.el: Mark unused vars
133820
133821	* lisp/cedet/semantic/db-el.el: Use _ to mark unused vars.
133822	(object-print): Use cl-call-next-method instead of call-next-method.
133823	* lisp/cedet/semantic/symref.el: Use _ to mark unused vars.
133824
1338252016-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
133826
133827	* lisp/cedet/semantic: Silence some warnings
133828
133829	* lisp/cedet/semantic/db-el.el (emacs-lisp-mode)
133830	(semanticdb-get-database-tables): Use make-instance to silence warnings.
133831
133832	* lisp/cedet/semantic/symref.el: Require semantic/find since we use
133833	some macros from there.  Silence compilation warnings:
133834	Replace initargs with slot names in oref/oset.
133835	Move `SYMREF TOOLS' section earlier so definitions precede their use.
133836
1338372016-05-12  Lars Ingebrigtsen  <larsi@gnus.org>
133838
133839	Support srcset in <img>
133840
133841	* lisp/net/shr.el (shr--preferred-image): Allow <img> tags
133842	with srcset specifiers (bug#23459).
133843
1338442016-05-12  Michael Albinus  <michael.albinus@gmx.de>
133845
133846	Do not autoload some functions of tramp.el
133847
133848	* lisp/net/tramp.el (tramp-completion-file-name-handler):
133849	Autoload a shortened version of this function, avoid recursive load.
133850	(tramp-completion-file-name-handler-alist)
133851	(tramp-completion-mode-p)
133852	(tramp-completion-handle-expand-file-name)
133853	(tramp-completion-handle-file-name-all-completions)
133854	(tramp-completion-handle-file-name-completion): Do not autoload.
133855
1338562016-05-12  Michael Albinus  <michael.albinus@gmx.de>
133857
133858	Avoid recursive load of tramp.el
133859
133860	* lisp/net/tramp.el (tramp-completion-file-name-handler):
133861	Autoload a shortened version of this function, avoid recursive load.
133862
1338632016-05-11  Michael Albinus  <michael.albinus@gmx.de>
133864
133865	Fix a problem of tramp-tests on hydra.
133866
133867	* test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
133868	Nullify `tramp-default-method' due to hydra.
133869
1338702016-05-10  Paul Eggert  <eggert@cs.ucla.edu>
133871
133872	Pacify byte-compiler in lisp/vc
133873
133874	* lisp/vc/vc-bzr.el, lisp/vc/vc-cvs.el, lisp/vc/vc-hg.el:
133875	* lisp/vc/vc-rcs.el, lisp/vc/vc-src.el:
133876	Declare functions defined elsewhere, to forestall “might not
133877	be defined at runtime” warnings.
133878
1338792016-05-10  Paul Eggert  <eggert@cs.ucla.edu>
133880
133881	Merge from origin/emacs-25
133882
133883	d0d9f55 Allow newlines inside cl function arglists
133884	963541a Publicize cl--generic-all-functions
133885	3c581d5 ; Fix typo
133886	e58f900 Add some "safe-local-variable" declarations for compatibility...
133887
1338882016-05-10  Paul Eggert  <eggert@cs.ucla.edu>
133889
133890	'text-quoting-style' now affects only ` and '
133891
133892	Change 'text-quoting-style' so that it no longer affects
133893	formatting of curved quotes in format arguments to functions like
133894	'message'.  In particular, when this variable's value is 'grave',
133895	all quotes in formats are output as-is.
133896	* doc/lispref/help.texi (Keys in Documentation):
133897	* doc/lispref/strings.texi (Formatting Strings):
133898	* doc/lispref/tips.texi (Documentation Tips):
133899	* etc/NEWS:
133900	* src/doc.c (syms_of_doc): Document this.
133901	* lisp/help-fns.el (describe-function-1):
133902	* src/doc.c (text_quoting_style, Fsubstitute_command_keys)
133903	(syms_of_doc):
133904	* src/editfns.c (styled_format): Omit now-unnecessary code.
133905	* src/lisp.h (LEAVE_QUOTING_STYLE): Remove.
133906
1339072016-05-10  Alan Mackenzie  <acm@muc.de>
133908
133909	Revert "Fix spurious fontification of "for (; a * b;)" in CC Mode."
133910
133911	This reverts commit 89d1776b81ab552192ee41f13ce84ff86bda4556.  It is
133912	being reverted because it slowed down CC Mode's fontification too much
133913	(factor ~3).  It was the fix to bug #7918.
133914
1339152016-05-09  Lars Ingebrigtsen  <larsi@gnus.org>
133916
133917	Move "Recent messages" earlier in report-emacs-bug
133918
133919	* lisp/mail/emacsbug.el (report-emacs-bug): Move the "Recent
133920	messages" part earlier so that users can see it and remove it
133921	if they want.
133922
1339232016-05-09  Michael Albinus  <michael.albinus@gmx.de>
133924
133925	Pacify byte compiler in tramp.el
133926
133927	* lisp/net/tramp.el (tramp-time-diff): Use `tramp-compat-funcall'.
133928
1339292016-05-09  Paul Eggert  <eggert@cs.ucla.edu>
133930
133931	Merge from origin/emacs-25
133932
133933	3b47898 Fix doc string in `insert'
133934	b479dea * doc/misc/emacs-mime.texi (time-date): Document now-builtins...
133935	cd27f73 Say 'All results processed' at the end
133936	4ffec91 Document automatic adjustment of process' logical window dime...
133937	dc66271 ; Fix typos and stylistic glitches in NEWS
133938
1339392016-05-09  Alan Mackenzie  <acm@muc.de>
133940
133941	CC Mode now uses the new :after-hook feature of define-derived-mode
133942
133943	It now runs internal variable setting functions after the mode hooks, no
133944	longer runs the mode hooks twice, and declares the configuration variables for
133945	noise macros and macros with semicolons as safe variables (when given suitable
133946	arguments).
133947
133948	Fixes bug #16759 and bug #23476.
133949
133950	* .dir-locals.el: Put the c-noise-macros-with-paren-names setting
133951	back into the C Mode value.
133952
133953	* lisp/progmodes/cc-mode.el: (c-basic-common-init): Remove the call to
133954	c-make-macro-with-semi-re.
133955	(c-mode, c++-mode, objc-mode, java-mode, idl-mode, pike-mode, awk-mode): Move
133956	c-make-noise-macro-regexps and c-make-macro-with-semi-re (where appropriate)
133957	and c-update-modeline into the :after-hook form.  Remove the explicit settings
133958	of the syntax table, the abbreviation table and the local key map, since they
133959	duplicate forms generated by define-derived-mode.  Remove the explicit
133960	invocation of each mode's mode hook, since they duplicate ones generated by
133961	define-derived-mode.
133962
133963	* lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
133964	functions.
133965	(c-noise-macro-names, c-noise-macro-with-parens-names): give the
133966	save-local-variable property c-string-list-p.
133967	(c-macro-names-with-semicolon): give the save-local-variable property
133968	c-string-or-string-list-p.
133969
133970	* doc/misc/cc-mode.texi: (Macros with ;, Noise Macros): Note that it's not
133971	necessary to call the regexp generating functions after setting the pertinent
133972	configuration values in a mode hook.
133973
1339742016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
133975
133976	Fix the jit-lock-fontify-now test names
133977
133978	* test/lisp/jit-lock-tests.el
133979	(jit-lock-fontify-now-mends-the-gaps)
133980	(jit-lock-fontify-now-does-not-refontify-unnecessarily):
133981	Fix the test names.
133982
1339832016-05-09  Michael Albinus  <michael.albinus@gmx.de>
133984
133985	Extend completion candidates in tramp.el
133986
133987	* lisp/net/tramp.el (tramp-parse-default-user-host): New defun.
133988	(tramp-get-completion-function): Use it.
133989
1339902016-05-09  Michael Albinus  <michael.albinus@gmx.de>
133991
133992	Revert e2f785991d0c696fbb2bc2f331f888d979b8da82 for tramp.el
133993
133994	* lisp/net/tramp.el (tramp-time-diff): Revert previous change due to backwards
133995	compatibility.
133996
1339972016-05-08  Dmitry Gutov  <dgutov@yandex.ru>
133998
133999	Emulate interactive mode
134000
134001	* test/lisp/jit-lock-tests.el (jit-lock-tests--setup-buffer)
134002	(jit-lock-does-not-refontify-unnecessarily):
134003	Bind noninteractive to nil (bug#23278).
134004
1340052016-05-08  Paul Eggert  <eggert@cs.ucla.edu>
134006
134007	Simplify now that float-time etc. are built-in
134008
134009	This was prompted by warnings about calls to now-obsolete functions.
134010	* lisp/calendar/time-date.el (encode-time-value):
134011	Use setq rather than a recursive call, to avoid a warning
134012	about calling this obsolete function.
134013	* lisp/calendar/time-date.el (encode-time-value)
134014	(with-decoded-time-value, time-to-seconds, time-to-number-of-days):
134015	* lisp/erc/erc.el (erc-emacs-time-to-erc-time):
134016	* lisp/net/rcirc.el (rcirc-float-time):
134017	* lisp/org/org-compat.el (org-float-time):
134018	Simplify now that time-add and float-time are now built-in.
134019	* lisp/calendar/time-date.el (time-add, time-subtract, time-less-p):
134020	* lisp/net/newst-backend.el (time-add):
134021	* lisp/org/org.el (time-subtract):
134022	Remove backward-compatibility definitions; they are now built-in.
134023	* lisp/calendar/timeclock.el (timeclock-time-to-seconds)
134024	(timeclock-seconds-to-time):
134025	* lisp/net/rcirc.el (rcirc-float-time):
134026	* lisp/org/org-compat.el (org-float-time):
134027	Now obsolete, since callers can just use float-time and
134028	seconds-to-time.  All uses changed.
134029	* lisp/emacs-lisp/ert.el (ert-results-pop-to-timings):
134030	* lisp/gnus/gnus-art.el (article-lapsed-string):
134031	* lisp/gnus/gnus-diary.el (gnus-user-format-function-d):
134032	* lisp/gnus/gnus-group.el (gnus-group-timestamp-delta):
134033	* lisp/gnus/nndiary.el (nndiary-compute-reminders):
134034	* lisp/net/tramp.el (tramp-time-diff):
134035	* lisp/org/org-clock.el (org-clock-timestamps-change):
134036	Prefer the time-subtract builtin to the subtract-time alias.
134037	* lisp/files.el (dir-locals-find-file, dir-locals-read-from-dir):
134038	* test/lisp/character-fold-tests.el (character-fold--speed-test):
134039	Prefer the float-time builtin to the time-to-seconds alias.
134040	* lisp/org/org-agenda.el, lisp/org/org-clock.el, lisp/org/org-list.el:
134041	* lisp/org/org-timer.el, lisp/org/org.el:
134042	Adjust to org-float-time deprecation.
134043
1340442016-05-08  Alan Mackenzie  <acm@muc.de>
134045
134046	Add :after-hook facility to define-derived-mode.
134047
134048	This allow a form to be evaluated _after_ a major mode's hooks have been run.
134049	It is needed to solve some problems in CC Mode, including bug #16759 and
134050	bug #23476.
134051
134052	* lisp/emacs-lisp/derived.el (define-derived-mode): introduce the new argument
134053	`:after-hook', and generate the requisite code for it.
134054	(derived-mode-make-docstring): Take account of the possibility of :after-hook.
134055
134056	* lisp/subr.el (delayed-after-hook-forms): New variable.
134057	(run-mode-hooks): As the last thing evaluate the forms in
134058	delayed-after-hook-forms.
134059
134060	* doc/lispref/modes.texi (Derived Modes): Document :after-hook.
134061	(Mode Hooks): Document the new feature in run-mode-hooks.
134062
134063	* etc/NEWS: Note the new feature.
134064
1340652016-05-08  Michael Albinus  <michael.albinus@gmx.de>
134066
134067	Fix recursive load of tramp.elc
134068
134069	* lisp/net/tramp.el (tramp-completion-file-name-handler):
134070	Check also for `tramp-completion-mode-p'.
134071	(tramp-completion-mode, tramp-completion-mode-p): Autoload them.
134072
1340732016-05-07  Paul Eggert  <eggert@cs.ucla.edu>
134074
134075	Prefer grep -E/-F to egrep/fgrep
134076
134077	POSIX marked egrep and fgrep as legacy apps in SUSv2 (1997) and
134078	withdrew them in SUSv3 (2001), and these days grep -E and grep -F
134079	are probably more portable.
134080	* lib-src/etags.c (main):
134081	* lisp/eshell/em-unix.el (eshell-grep, eshell/egrep)
134082	(eshell/fgrep):
134083	* lisp/cedet/semantic/symref.el (semantic-symref-find-text):
134084	* lisp/eshell/esh-var.el (eshell-apply-indices):
134085	* lisp/progmodes/ada-xref.el (ada-xref-search-with-egrep)
134086	(ada-find-in-src-path):
134087	* lisp/textmodes/ispell.el (ispell-grep-command):
134088	(ispell-lookup-words):
134089	Use or document grep -E and grep -F instead of egrep and fgrep.
134090	* lisp/textmodes/ispell.el (ispell-grep-options):
134091	Use -Ei on all platforms, not just MS-Windows.
134092
1340932016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
134094
134095	Avoid unnecessary work if a chunk is empty
134096
134097	* lisp/jit-lock.el (jit-lock-fontify-now): Avoid unnecessary work
134098	if a chunk is empty (bug#23278).
134099
1341002016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
134101
134102	* test/lisp/jit-lock-tests.el: New file.
134103
1341042016-05-07  Michael Albinus  <michael.albinus@gmx.de>
134105
134106	Continue to fix Bug#10085
134107
134108	* lisp/net/tramp.el (tramp-completion-file-name-handler-alist)
134109	<expand-file-name>: Add handler.
134110	(tramp-completion-handle-expand-file-name): New defun.
134111	(tramp-handle-file-name-as-directory): Handle completion mode case.
134112
134113	* test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
134114	Fix test.
134115	(tramp-test24-file-name-completion): Extend test.
134116
1341172016-05-07  Alan Mackenzie  <acm@muc.de>
134118
134119	Revert change 8e4595a... due to annoyance it causes the development team.
134120
134121	Change 8e4595a438fe85dd109756886cdeaeea2e665afb from 2016-04-30 17:28:24
134122	+0000 was an enhancement to .dir-locals to allow correct fontification
134123	of certain macro constructs.
134124
134125	* .dir-locals.el: Remove the two forms for C Mode dealing with noise macros.
134126
1341272016-05-07  Alan Mackenzie  <acm@muc.de>
134128
134129	* lisp/emacs-lisp/edebug.el (edebug-sit-on-break): Give it a version number.
134130
1341312016-05-07  Simen Heggestøyl  <simenheg@gmail.com>
134132
134133	Add tests for CSS mode completion
134134
134135	* test/lisp/textmodes/css-mode-tests.el (css-test-property-values)
134136	(css-test-property-values-no-duplicates)
134137	(css-test-value-class-lookup): Use `seq-sort'.
134138	(css-mode-tests--completions): New helper function for retrieving CSS
134139	completions.
134140	(css-test-complete-bang-rule, scss-test-complete-bang-rule)
134141	(css-test-complete-property-value, css-test-complete-pseudo-class)
134142	(css-test-complete-pseudo-element, css-test-complete-at-rule)
134143	(scss-test-complete-at-rule, css-test-complete-property)
134144	(css-test-complete-selector, css-test-complete-nested-selector)
134145	(scss-test-complete-nested-selector): New tests.
134146
1341472016-05-06  Alan Mackenzie  <acm@muc.de>
134148
134149	Add an option in Edebug to prevent pauses after `h', 'f', and `o'.
134150
134151	Requested by Paul Pogonyshev.  Also add in documentation for Edebug config
134152	variables which was missing.
134153
134154	* lisp/emacs-lisp/edebug.el (edebug-sit-on-break): New customizable option.
134155	(edebug--display-1): Test edebug-sit-on-break before pausing 1 second.
134156
134157	* doc/lispref/edebug.texi (Jumping): Document the effect of the new option.
134158	(Edebug Options): Document the new option.  Also add documentation for
134159	edebug-eval-macro-args, edebug-print-length, edebug-print-level,
134160	edebug-print-circle, edebug-sit-for-seconds.
134161
134162	* etc/NEWS: Note the new feature.
134163
1341642016-05-07  Jorgen Schaefer  <contact@jorgenschaefer.de>
134165
134166	scheme.el: Turn literal tabs into \t
134167
134168	* lisp/progmodes/scheme.el: The last change to turn tabs into spaces
134169	also caught some literal tabs in character classes. Fix this by
134170	adding \t to those classes.
134171
1341722016-05-07  Tino Calancha  <f92capac@gmail.com>
134173
134174	Make 'backtab' work in table-mode on text terminals
134175
134176	* lisp/textmodes/table.el (table-cell-bindings): Bind 'backtab'
134177	explicitly.  (Bug#23456)
134178
1341792016-05-07  Eli Zaretskii  <eliz@gnu.org>
134180
134181	Try to speed-up display of many all-blank lines
134182
134183	* src/bidi.c (bidi_initialize): Use anchored regexps for
134184	paragraph start and paragraph separator sequences.  (Bug#23457)
134185
1341862016-05-06  Alan Mackenzie  <acm@muc.de>
134187
134188	Correct hack-local-variables change from Thu May 5 11:05:49 2016 +0000
134189
134190	Prevent hack-local-variables being called from the fundamental-mode mode call
134191	early in normal-mode.  This fixes bug #23460 and bug #23463.
134192
134193	* lisp/files.el (normal-mode) Replace call to fundamental-mode with calls to
134194	the things it calls, with the exception of hack-local-variables.
134195
134196	* etc/NEWS: Add an entry to note the calling of hack-local-variables at each
134197	major mode initialization.
134198
1341992016-05-06  Paul Eggert  <eggert@cs.ucla.edu>
134200
134201	Port xref-tests to master branch
134202
134203	Also, add a test to make this problem less likely in the future.
134204	* test/Makefile.in (check-no-automated-subdir): New rule.
134205	(check, check-expensive, check-maybe): Depend on it.
134206	* test/automated/data/xref/file1.txt: Rename to ...
134207	* test/data/xref/file1.txt: ... here.
134208	* test/automated/data/xref/file2.txt: Rename to ...
134209	* test/data/xref/file2.txt: ... here.
134210	* test/automated/xref-tests.el: Rename to ...
134211	* test/lisp/progmodes/xref-tests.el: ... here.
134212	(xref-tests-data-dir): Use EMACS_TEST_DIRECTORY.
134213
1342142016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
134215
134216	Merge from origin/emacs-25
134217
134218	50650cb Doc fixes for fclist and grep
134219	5e814e0 Minor doc fixes for quoting
134220	3347a73 `nreverse' the marker pairs list
134221	1a4127d Use save-excursion in xref-location-marker more
134222	ab3ba91 shell-quote-argument DIR when appropriate
134223	922c7a3 Rework xref-query-replace-in-results
134224	3fe3510 * lisp/replace.el (query-replace-read-from): Use minibuffer-w...
134225	0932b94 Fix todo-mode bug involving archived items (bug#23447)
134226	e68ad1f ; * etc/NEWS: Tiny edit. (Bug#23432)
134227	adc80b7 ; * test/automated/xref-tests.el: Add copyright and license.
134228	4d8fd9c Handle "empty line" regexp in xref searches
134229	f559b37 Add tests for xref-collect-matches
134230	6428aa0 Use grep-find-ignored-directories instead of vc-directory-exc...
134231	6f82d8e Clear buffer-undo-list when showing xrefs
134232	c68a091 Note the quote translation in `message' in section "incompati...
134233	52f86a7 * etc/NEWS: Mention (message "%s" (format ...)).
134234	93703c5 (Common Keywords): Correct what missing :group means
134235	79e5800 Improve documentation of Dired's 'A' and 'Q' commands
134236	2ea2a2f Doc fixes for quoting
134237	8544b98 posnp doc clarification
134238	805204f Mention what a missing :group does
134239	ec554d7 Fix documentation of dired-aux search/replace commands
134240
1342412016-05-05  Simen Heggestøyl  <simenheg@gmail.com>
134242
134243	Support completion of HTML tags in CSS selectors
134244
134245	* lisp/textmodes/css-mode.el (css--html-tags): New variable holding a
134246	list of HTML tags for completion.
134247	(css--nested-selectors-allowed): New variable for determining whether
134248	nested selectors are allowed in the current mode.
134249	(css--complete-selector): New function for completing part of a CSS
134250	selector.
134251	(css-completion-at-point): Support completion of selectors.
134252	(scss-mode): Allow nested selectors.
134253
1342542016-05-05  Lars Ingebrigtsen  <larsi@gnus.org>
134255
134256	Make `R' in eww work more reliably
134257
134258	* lisp/net/eww.el (eww-score-readability): Protect against
134259	null children.
134260
1342612016-05-05  Alan Mackenzie  <acm@muc.de>
134262
134263	Call hack-local-variables from major modes rather than from file visiting
134264
134265	This prevents file/directory local variables from being lost when the major
134266	mode is set or changed.
134267
134268	This fixes bug #15577 and bug #23407.
134269
134270	* lisp/files.el (normal-mode): Call `hack-local-variables' when the major mode
134271	function hasn't already done so.
134272	(hack-local-variables): Rename parameter `mode-only' to `handle-mode', make
134273	its previous non-nil setting be t, and introduce the following action for a
134274	non-nil non-t value: apply all settings apart from `mode'.
134275
134276	* lisp/subr.el (run-mode-hooks): call `hack-local-variables' for buffers
134277	which are visiting files.
134278
134279	* doc/emacs/custom.texi (File Variables): Note that setting a major mode also
134280	sets file variables.
134281	(Directory Variables): Note that `mode', `eval', and `unibyte' can be set as
134282	dir local variables, but `coding' can't.
134283
134284	* doc/lispref/modes.texi (Major Mode Conventions): Say that `run-mode-hooks'
134285	also calls `hack-local-variables'.
134286	(Auto Major Mode): Say that `find-file' no longer runs `hack-local-variables',
134287	as from 25.2.  Remove vagueness from `normal-mode' and `set-auto-mode' by
134288	saying that the mode IS SET, not merely "selected" or "chosen".
134289	(Mode Hooks): Document change to `run-mode-hooks'.
134290
134291	* doc/lispref/variables.texi (File Local Variables): Document change to
134292	`hack-local-variables'.
134293
1342942016-05-05  Michael Albinus  <michael.albinus@gmx.de>
134295
134296	tramp-sh.el: Work around a stat bug
134297
134298	* lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
134299	stat versions which produce shell quoted output.  See also
134300	coreutils Bug#23422.
134301
1343022016-05-04  Noam Postavsky  <npostavs@gmail.com>
134303
134304	Fix autogen.sh for separate worktrees
134305
134306	* autogen.sh: Use the $hooks variable in the $sample_hooks loop, instead
134307	of assuming .git/hooks is a directory.
134308
1343092016-05-04  Alan Mackenzie  <acm@muc.de>
134310
134311	Allow `text-quoting-style' to be `leave', i.e. no translation of quotes.
134312
134313	* lisp/help-fns.el (describe-function-1): Don't set coding system to UTF-8
134314	when text-quoting-style is `leave'.
134315
134316	* src/lisp.h (enum text_quoting_style): Add identifier LEAVE_QUOTING_STYLE.
134317
134318	* src/doc.c (syms_of_doc): New symbol "leave".  Amend doc string of
134319	`text_quoting_style'.
134320	(text_quoting_style): Handle `leave' by returning LEAVE_QUOTING_STYLE.
134321	(Fsubstitute_command_keys): Don't translate quotes when quoting_style is
134322	LEAVE_QUOTING_STYLE.
134323
134324	* src/editfns.c (styled_format): Set quoting_style to -1 when
134325	text-quoting-style is `leave'.
134326
1343272016-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
134328
134329	* lisp/emulation/viper.el:
134330	* lisp/emulation/viper-cmd.el: Use lexical-binding.
134331	(viper-change-state-to-vi, viper-change-state-to-emacs): Allow dummy
134332	args, for use in advice-add.
134333	(viper--init-message): Rename from init-message.
134334	(viper-minibuffer-standard-hook): Adjust accordingly.
134335	(viper-undo): Remove unused var `modified'.
134336	(viper-read-string-with-history, viper-set-searchstyle-toggling-macros):
134337	Don't use dynamic vars as args.
134338	(viper-submit-report): Clarify use of dynamic vars.
134339
134340	* lisp/emulation/viper.el: Use lexical-binding and nadvice.
134341	Remove redundant :group keywords.  Group the (if viper-mode) at top-level.
134342	Use add-function rather than a `(lambda ...).
134343	(viper--advice-list): New var.
134344	(viper--advice-add, viper--deactivate-advice-list): New funs.
134345	(viper-go-away, viper-set-hooks, viper-non-hook-settings): Use them.
134346	(viper-non-hook-settings): Don't hook into find-file any more.
134347
1343482016-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
134349
134350	* lisp/vc/ediff-util.el: Use lexical-binding.
134351
134352	* lisp/progmodes/js.el (js-syntax-propertize): Recognize shebang line.
134353
1343542016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
134355
134356	Add an animation sanity check
134357
134358	* lisp/image.el (image-multi-frame-p): Give up on animations
134359	if it seems like they are too slow (bug#23431).
134360
1343612016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
134362
134363	abbrev-tests.el fix
134364
134365	* test/lisp/abbrev-tests.el (abbrev-table-p-test): Don't check
134366	internal implementation detail.
134367
1343682016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
134369
134370	(shr-rescale-image): Clarify logic slightly
134371
134372	* lisp/net/shr.el (shr-rescale-image): Clarify logic slightly.
134373
1343742016-05-02  Martin Rudalics  <rudalics@gmx.at>
134375
134376	Bind `widget-button-click' to mouse-1/-2 instead of down-mouse-1/-2
134377
134378	* lisp/wid-edit.el (widget-keymap): Bind `widget-button-click'
134379	to mouse-1/-2 instead of down-mouse-1/-2.  Suggested by Stefan
134380	Monnier.  (Bug#19185, Bug#20398)
134381
1343822016-05-02  Lee Bochicchio  <lboc.home@gmail.com>
134383
134384	Add more abbrev tests
134385
134386	* test/lisp/abbrev-tests.el
134387	(clear-abbrev-table-test): Use `abbrev-expansion'
134388	(abbrev-table-empty-p-test, list-abbrevs-test)
134389	(prepare-abbrev-list-buffer-test, insert-abbrevs-test)
134390	(edit-abbrevs-test, define-abbrevs-test)
134391	(read-write-abbrev-file-test)
134392	(abbrev-edit-save-to-file-test): New tests (bug#23139).
134393
1343942016-05-02  Philipp Stephani  <p.stephani2@gmail.com>  (tiny change)
134395
134396	Allow eval-ing named character literals
134397
134398	* lisp/progmodes/elisp-mode.el (elisp--preceding-sexp): Skip over
134399	named character literals.
134400	* test/lisp/progmodes/elisp-mode-tests.el
134401	(elisp--preceding-sexp--char-name): Add test for skipping over
134402	named character literals (bug#23354).
134403
1344042016-05-02  Aaron Conole  <aconole@redhat.com>
134405
134406	Call va_end in boot_error
134407
134408	* src/gnutls.c (boot_error): A recent change added a function
134409	to signal an error or return an error code. That function uses
134410	a variadic argument list to populate an error message
134411	string. However, it missed calling va_end after using the
134412	variadic argument list.
134413
134414	  Copyright-paperwork-exempt: yes
134415
1344162016-05-02  Aaron Conole  <aconole@bytheb.org>
134417
134418	Fix the call to set_network_coding_system
134419
134420	* src/process.c (Fmake_network_process): A recent commit
134421	modified the set_network_socket_coding_system function to take
134422	arguments host, service, and name. However, those arguments
134423	appear to be swapped.
134424
134425	  Copyright-paperwork-exempt: yes
134426
1344272016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
134428
134429	Revert "alas, a map can have only one parent"
134430
134431	This reverts commit d05806fda1cbba2db112bc783597fbe9d27175b2.
134432
134433	This had already been fixed by using `make-composed-map'.  And
134434	we don't want image-map to inherit from special-mode-map, anyway.
134435
1344362016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
134437
134438	Merge from origin/emacs-25
134439
134440	bf21c84 Fix quoting problem in cc-engine debug message
134441	8f36614 Add electric-quote-string unit test
134442	6280531 Don’t electrically quote ‘'’ in Python
134443	fd7b430 `nreverse' Grep hits before passing them to xref--convert-hits
134444
1344452016-05-02  Sam Steingold  <sds@gnu.org>
134446
134447	alas, a map can have only one parent
134448
134449	* lisp/image-mode.el (image-model-map): Cannot have two parents.
134450	* lisp/image.el (image-map): Inherit from `special-mode-map'.
134451
1344522016-05-02  Michael Albinus  <michael.albinus@gmx.de>
134453
134454	Fix Bug#10085
134455
134456	* lisp/net/tramp.el (tramp-find-foreign-file-name-handler):
134457	Add optional arguments OPERATION and COMPETION.  Handle
134458	`file-name-as-directory', `file-name-directory' and
134459	`file-name-nondirectory' also in completion mode.
134460	(tramp-file-name-handler): Use it.  (Bug#10085)
134461
134462	* test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
134463	Extend test.
134464
1344652016-05-01  Martin Rudalics  <rudalics@gmx.at>
134466
134467	* src/minibuf.c (read_minibuf): Use CONSP instead of Fconsp.
134468
1344692016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
134470
134471	Tweak .gitignore
134472
134473	* .gitignore: Remove leim/changed.misc, leim/changed.tit,
134474	as these files are no longer created.  Add gmon.out, for
134475	-pg profiling.  Sort.
134476
1344772016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
134478
134479	Sync from gnulib
134480
134481	This incorporates:
134482	2016-05-01 mktime: port to stricter signed overflow checking
134483	2016-05-01 mktime: speed up DEBUG_MKTIME benchmarks
134484	2016-05-01 mktime: resurrect DEBUG_MKTIME testing
134485	2016-05-01 mktime: simplify DEBUG_MKTIME
134486	2016-05-01 Port mktime_internal offset to unsigned time_t
134487	2016-04-27 xstrtol: prohibit monstrosities like "1bB"
134488	2016-04-13 mktime: improve integer overflow checking
134489	2016-04-13 intprops: check two's complement assumption
134490	2016-04-13 intprops, mktime, strtol: assume two's complement
134491	* lib/intprops.h, lib/mktime-internal.h, lib/mktime.c:
134492	* lib/strtol.c, lib/timegm.c, m4/mktime.m4, m4/std-gnu11.m4:
134493	Copy from gnulib.
134494
1344952016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
134496
134497	Merge from origin/emacs-25
134498
134499	c695fb3 ; Spelling fixes
134500	03750c0 * doc/misc/texinfo.tex: Sync from gnulib.
134501	42fed3b * lisp/isearch.el (isearch-forward-symbol-at-point): Add isea...
134502
1345032016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
134504
134505	Merge from origin/emacs-25
134506
134507	d8affa3 Use ‘T *restrict’ proto, not ‘T[restrict]’
134508	d38d2a8 Fix documentation of 'url-retrieve-synchronously'
134509	586b213 * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bu...
134510
134511	# Conflicts:
134512	#	doc/misc/url.texi
134513	#	lisp/url/url.el
134514
1345152016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
134516
134517	Merge from origin/emacs-25
134518
134519	16e5e8e Fix last change to isearch-update (bug#23406)
134520	b755d98 Autoload cursor-sensor-inhibit (bug#23406)
134521	b52ebd4 org-map-entries: Fix org-agenda-prepare-buffers call
134522	86aa409 Followup for last commit in the user manual
134523	7004459 Improve doc string of 'set-goal-column'
134524	ccdaf04 Fix the MSDOS build
134525	ffe701c Remove \= from format string (bug#18190)
134526	1c58fa1 Fix variable-pitch font on MS-Windows
134527	c6077bf Restore follow-scroll-up/down to scrolling by the combined si...
134528	b671e21 Revert unneeded change which harms syntactic parsing.  This f...
134529	48b24c9 Correct indentation of ids in a C++ enum after a protection k...
134530	5c3534f * lisp/window.el (window--process-window-list): No-op if no p...
134531	734fb3a Port dumping to NetBSD with PaX
134532	0255a70 Don't mistake `for' inside a function for a part of array com...
134533
134534	# Conflicts:
134535	#	src/Makefile.in
134536
1345372016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
134538
134539	Merge from origin/emacs-25
134540
134541	71fb0e0 Improve last change to vc-git-mode-line-string
134542	6858e77 Todo mode doc bug fix
134543	e55d0db Fix revision calculation in vc-git-mode-line-string
134544	ca87b34 ; Fix errant revert ccb75d7
134545	40bfebe Add Python 3.5 keyword "await"
134546	fa7886a Add new keywords of Python 3.5
134547	ccb75d7 Partially revert previous change.
134548	8ee168a ; * etc/NEWS: Update entry about color fonts on OS X with a w...
134549	b09ca27 Say why text-quoting-style is not a user option
134550
1345512016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
134552
134553	Merge from origin/emacs-25
134554
134555	5a952eb Don't mention ~/.emacs.bmk literally in doc strings
134556	c338cf3 * etc/NEWS: Explain why multicolor font display is disabled o...
134557	c30d1b4 Port to Ubuntu 16.04 --enable-gcc-warnings
134558
1345592016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
134560
134561	Mention the `find-library-name' changes
134562
1345632016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
134564
134565	Fix text in menu in minor-mode-menu-from-indicator
134566
134567	* lisp/mouse.el (minor-mode-menu-from-indicator): Don't
134568	capitalize "Off" in "Turn Off" (bug#11028).
134569
1345702016-05-01  David Engster  <deng@randomsample.de>
134571
134572	gitmerge: Add cherry pick to gitmerge-skip-regexp
134573
134574	* admin/gitmerge.el (gitmerge-skip-regexp): Add "cherry picked
134575	from commit", which is the string appended by 'git cherry-pick
134576	-x'.
134577
1345782016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
134579
134580	Allow `global-set-key' to bind keys under the `M-o' map
134581
134582	* lisp/subr.el (global-set-key): Allow binding keys under the
134583	`M-o' map (bug#9730).
134584
1345852016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
134586
134587	Add `size-indication-mode' to the menu on `mouse-1' "Top"
134588
134589	* lisp/bindings.el (mode-line-column-line-number-mode-map):
134590	Add `size-indication-mode' to the menu (bug#5727).
134591
1345922016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
134593
134594	Allow finding libraries loaded manually outside the load-path
134595
134596	* lisp/emacs-lisp/find-func.el (find-library--from-load-path):
134597	New function to find a library from a load path (bug#5661).
134598	(find-library-name): Use it.
134599
134600	There are so many combinations of inputs and possibly entries in
134601	`load-history' that the code looks like an entry in a code obfuscation
134602	contest.  If anybody has a better implementation, please substitute.
134603
134604	But remember that the input given may be foo, foo.el, foo.elc, and the
134605	entries in load-history may be foo.el, foo.elc and foo.el.gz, and we
134606	want to return only foo.el and foo.el.gz.  *phew*
134607
1346082016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
134609
134610	Allow minibuffer prompts to use faces
134611
134612	* doc/lispref/minibuf.texi (Text from Minibuffer): Document
134613	`minibuffer-prompt-properties' and explain how faces work in
134614	the minibuffer prompt.
134615
134616	* src/minibuf.c (read_minibuf): If `face' is in
134617	`minibuffer-prompt-properties', apply it to the end of the
134618	face list to allow users to have their own faces on the
134619	prompts (bug#16136).
134620
1346212016-05-01  Peter Feigl  <peter.feigl@nexoid.at>  (tiny change)
134622
134623	Add R7RS syntax forms to scheme.el
134624
134625	* lisp/progmodes/scheme.el (scheme-font-lock-keywords-2): Add
134626	a number of special forms introduced in R7RS-small.
134627	* lisp/progmodes/scheme.el (scheme-indent-function): Same.
134628
1346292016-05-01  Alan Third  <alan@idiocy.org>
134630
134631	Implement horizontal scroll bars on NS
134632
134633	* lisp/scroll-bar.el (horizontal-scroll-bars-available-p): Remove NS
134634	check.
134635	* lisp/term/ns-win.el: Remove custom NS scroll-bar handlers and bind
134636	scroll-bar mouse clicks to standard handlers.
134637	* src/nsterm.h (EmacsScroller): Add 'horizontal' property and rename
134638	pixel_height to pixel_length.
134639	* src/nsterm.m (x_set_window_size): Remove left-hand scroll-bar code. It
134640	caused scroll-bars to be over-drawn and the best working solution
134641	appears to be complete removal.
134642	(ns_set_horizontal_scroll_bar): Rewrite to handle horizontal scrollers
134643	correctly.
134644	(ns_set_vertical_scroll_bar): Set width to actual scroller width.
134645	(setFrame): Handle horizontal case.
134646	(dealloc): Handle horizontal case.
134647	(judge): Handle horizontal case.
134648	(setPosition): Rename pixel_height to pixel_length.
134649	(sendScrollEventAtLoc): Handle horizontal case.
134650	(mouseDown): Handle horizontal case and general tidy up of code.
134651	(mouseDragged): Handle horizontal case. Call sendScrollEventAtLoc with
134652	absolute pixel size instead of ratio.
134653	* src/window.h: Remove NS check.
134654
1346552016-05-01  Michael Albinus  <michael.albinus@gmx.de>
134656
134657	tramp.texi: Revert last change due to backward compatibility
134658
1346592016-04-30  Paul Eggert  <eggert@cs.ucla.edu>
134660
134661	Fix the buffer-count patch (Bug#23394)
134662
134663	* src/buffer.c (Fgenerate_new_buffer_name): Increment count just
134664	once each time through the loop.  Reported by Lars Ingebrigtsen in:
134665	https://lists.gnu.org/r/emacs-devel/2016-04/msg00918.html
134666
1346672016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134668
134669	cua-prefix-override-inhibit-delay doc fix
134670
134671	* lisp/emulation/cua-base.el
134672	(cua-prefix-override-inhibit-delay): Typo fix in doc string
134673	(bug#23401).
134674
1346752016-04-30  Paul Eggert  <eggert@cs.ucla.edu>
134676
134677	Fix generate-new-buffer-name increment typo
134678
134679	Problem reported by Chaitanya Koparkar (Bug#23394).
134680	* src/buffer.c (Fgenerate_new_buffer_name): Increment count when
134681	generating a new buffer.  This fixes a typo I introduced in
134682	2014-04-05T00:04:58Z!eggert@cs.ucla.edu.
134683
1346842016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134685
134686	global-eldoc-mode doc fix
134687
134688	* lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
134689	specific about what "applicable" means (bug#23071).
134690
1346912016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134692
134693	Make the legend in describe-categories a link
134694
134695	* lisp/help-fns.el (describe-categories): Make the "see
134696	bottom" text a link (bug#22227).
134697
1346982016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134699
134700	normal-top-level-add-subdirs-to-load-path doc fix
134701
134702	* lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
134703	Doc fix (bug#21962).
134704
1347052016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134706
134707	isearch-search-fun-function doc tweak
134708
134709	* lisp/isearch.el (isearch-search-fun-function): Mention what
134710	the STRING parameter is (bug#21552).
134711
1347122016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134713
134714	Fill some imenu--index-alist doc lines
134715
134716	* lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
134717
1347182016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134719
134720	Make describe-variable look up the variable in the current buffer
134721
134722	* lisp/help-fns.el (describe-variable): Get the variable
134723	definition in the buffer we were called from (in case it only
134724	exists there) (bug#21252).
134725
1347262016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134727
134728	Fmarker_position doc string clarification
134729
134730	* src/marker.c (Fmarker_position): Clarify the doc string
134731	(bug#21231).
134732
1347332016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134734
134735	Further define-obsolete-* doc fixups
134736
134737	* lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
134738	Fix up last change.
134739	(define-obsolete-variable-alias): Ditto.
134740
1347412016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134742
134743	Describe WHEN in all the define-obsolete- macros
134744
134745	* lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
134746	Say more verbosely what WHEN is (bug#21225).
134747	(define-obsolete-function-alias): Describe the WHEN parameter.
134748	(define-obsolete-variable-alias): Ditto.
134749
1347502016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134751
134752	Mention with-silent-modifications in the lispref manual
134753
134754	* doc/lispref/text.texi (Changing Properties): Document
134755	with-silent-modifications (bug#21171).
134756
1347572016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134758
134759	with-silent-modifications doc clarification
134760
134761	* lisp/subr.el (with-silent-modifications): Rearrange the doc
134762	string a bit so that the most pertinent information is at the
134763	top (bug#21171).
134764
1347652016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134766
134767	clear-visited-file-modtime doc string fix
134768
134769	* lisp/files.el (clear-visited-file-modtime): Fix possibly
134770	confusing doc string wording (bug#21169).
134771
1347722016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134773
134774	Document mode mode line variables
134775
134776	* doc/lispref/modes.texi (Mode Line Variables): Document
134777	`mode-line-front-space, `mode-line-misc-info',
134778	`mode-line-end-spaces' (bug#21014).
134779
1347802016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134781
134782	Add a cross ref to Optional Mode Line
134783
134784	* doc/lispref/modes.texi (Mode Line Variables): Add a cross
134785	reference to the Emacs mode line node that explains things
134786	like `display-time-string' (bug#21002).
134787
1347882016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134789
134790	Add a doc string to display-time-string
134791
134792	* lisp/time.el: Add a doc string to `display-time-string',
134793	because it's referred to in the manual, and is too mysterious
134794	otherwise (bug#21002).
134795
1347962016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134797
134798	custom-buffer-style doc fix
134799
134800	* lisp/cus-edit.el (custom-buffer-style): Document the `tree'
134801	value (bug#20724).
134802
1348032016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134804
134805	Document how to check for ImageMagick support
134806
134807	* doc/lispref/display.texi (ImageMagick Images): Say how to
134808	check for ImageMagick support, which isn't quite obvious
134809	(bug#20702).
134810
1348112016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134812
134813	Minor doc fix for ImageMagick/SVG builds
134814
134815	* doc/lispref/display.texi (SVG Images): Don't imply that you
134816	have to build Emacs yourself (bug#20702).
134817	(ImageMagick Images): Ditto.
134818
1348192016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134820
134821	Rearrange the doc of query-replace slightly
134822
134823	* lisp/replace.el (query-replace): Move the mention of the
134824	interactive prefix arg earlier so that users can find it
134825	(bug#20654).
134826
1348272016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134828
134829	apropos-print doc fix
134830
134831	* lisp/apropos.el (apropos-print): Document the undocumented
134832	parameters (bug#20520).
134833
1348342016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134835
134836	completion-table-with-predicate doc string fix
134837
134838	* lisp/minibuffer.el (completion-table-with-predicate): t ->
134839	non-nil in the doc string (bug#20460).
134840
1348412016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134842
134843	Fill the completion-table-with-predicate doc string
134844
134845	* lisp/minibuffer.el (completion-table-with-predicate): Fill
134846	the doc string (bug#20460).
134847
1348482016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134849
134850	replace-match-maybe-edit doc clarification
134851
134852	* lisp/replace.el (replace-match-maybe-edit): Say what
134853	MATCH-DATA is (bug#20304).
134854
1348552016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134856
134857	add-timeout doc fix
134858
134859	* lisp/emacs-lisp/timer.el (add-timeout): Mention the return
134860	value (bug#20181).
134861
1348622016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134863
134864	Extremely minor doc fix in Choosing Window
134865
134866	* doc/lispref/windows.texi (Choosing Window): There's only one
134867	action alist, I think (bug#20158).
134868
1348692016-04-30  Alan Mackenzie  <acm@muc.de>
134870
134871	* .dir-locals.el: Amend for correct fontification of *.[ch]
134872	containing "IF_LINT"
134873
1348742016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134875
134876	Transform mentions of `eval-after-load' to `with-eval-after-load'
134877
134878	* doc/lispref/loading.texi (Hooks for Loading): Update text to
134879	not mention `eval-after-load' (bug#20038).
134880
1348812016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134882
134883	cursor-type doc fix
134884
134885	* src/buffer.c (syms_of_buffer): Mention that cursor-type's
134886	WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
134887
1348882016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134889
134890	Add a link from Tool Bar to Images
134891
134892	* doc/lispref/keymaps.texi (Tool Bar): Add a link to the
134893	Images node (bug#19722).
134894
1348952016-04-30  Alan Mackenzie  <acm@muc.de>
134896
134897	CC Mode: Recognize a noise macro with parens after a declarator's identifier
134898
134899	* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): In the while loop
134900	following comment "Skip over type decl suffix operators." insert code also
134901	to check for noise macros with parentheses.
134902
1349032016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134904
134905	(default-mode-line-format): More explicit obsolete info
134906
134907	* lisp/subr.el (default-mode-line-format): Be more explicit in
134908	how default values are now handled (bug#19424).
134909
1349102016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134911
134912	Fcompare_buffer_substrings doc string clarification
134913
134914	* src/editfns.c (Fcompare_buffer_substrings): Extremely minor
134915	doc string clarification (bug#19255).
134916
1349172016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134918
134919	insert-file-contents-literally doc fix
134920
134921	* lisp/files.el (insert-file-contents-literally): Say that the
134922	parameters are explained in the other function (bug#18317).
134923
1349242016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134925
134926	Fix custom types for cursor-in-non-selected-windows
134927
134928	* lisp/cus-start.el (standard): Use the same custom types for
134929	cursor-in-non-selected-windows as for cursor-type (bug#19214).
134930
1349312016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134932
134933	Doc clarification to mwheel-scroll
134934
134935	* lisp/mwheel.el (mwheel-scroll): Mention that the restriction
134936	does not apply to Windows (bug#19209).
134937
1349382016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134939
134940	Clarify the doc of eval-expression-print-format
134941
134942	* lisp/simple.el (eval-expression-print-format): Doc
134943	clarification (bug#19114).
134944
1349452016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134946
134947	(extended-command-suggest-shorter): Add a version string
134948
134949	* lisp/simple.el (extended-command-suggest-shorter): Add a
134950	version string.
134951
1349522016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134953
134954	Document extended-command-suggest-shorter
134955
134956	* doc/emacs/m-x.texi (M-x): Mention
134957	extended-command-suggest-shorter (bug#19152).
134958
1349592016-04-30  Ivan Shmakov  <ivan@siamics.net>
134960
134961	Add a variable to control "shorter command" suggestions
134962
134963	* lisp/simple.el (extended-command-suggest-shorter): New variable (bug#19152).
134964	(execute-extended-command): Use it.
134965
1349662016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134967
134968	Explictly explain that package-initialize loads the packages
134969
134970	* lisp/emacs-lisp/package.el (package-initialize): Be explicit
134971	in saying that `package-initialize' obviates adjusting the
134972	path or requiring the packages, as this is a question that
134973	apparently comes up now and then (bug#18829).
134974
1349752016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134976
134977	Have the doc strings of `load-path' and `require' mention each other
134978
134979	* src/fns.c (Frequire): Mention `load-path' and fill the doc
134980	string (bug#18829).
134981
134982	* src/lread.c (syms_of_lread): Mention that `require' uses
134983	`load-path'.
134984
1349852016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134986
134987	Doc fix for insert-pair-alist
134988
134989	* lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
134990	COMMAND-CHAR is (bug#18809).
134991
1349922016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
134993
134994	Move doc of backup-directory-alist to the Backup node
134995
134996	* doc/emacs/files.texi (Backup): Move the documentation of
134997	`backup-directory-alist' here from the "Single or Numbered
134998	Backups" node, because it doesn't seem to have much to do with
134999	numbering (bug#18692).
135000
1350012016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
135002
135003	Tiny doc clarification for create-fontset-from-fontset-spec
135004
135005	* lisp/international/fontset.el (create-fontset-from-fontset-spec):
135006	Clarify what the optional part is (bug#18686).
135007
1350082016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
135009
135010	Fill the doc string of font-lock-keywords
135011
135012	* lisp/font-lock.el (font-lock-keywords): Fill the lines and
135013	reorganize some explanations (bug#21427).
135014
1350152016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
135016
135017	Doc fix for font-lock-remove-keywords
135018
135019	* lisp/font-lock.el (font-lock-remove-keywords): Add a link to
135020	`font-lock-add-keywords' to describe KEYWORDS (bug#18634).
135021
1350222016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
135023
135024	Clarify whitespace-style doc string
135025
135026	* lisp/whitespace.el (whitespace-style): Doc clarification
135027	(bug#18296).
135028
1350292016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135030
135031	No need to test for jka-compr
135032
135033	* lisp/vc/ediff-util.el (ediff-file-compressed-p): jka-compr
135034	is always available; no need to test (bug#18204).
135035
1350362016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135037
135038	Doc fixed for next-error-buffer-p
135039
135040	* lisp/simple.el (next-error-buffer-p): Clarify doc string
135041	(bug#18202).
135042
1350432016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135044
135045	Tiny doc fix
135046
135047	* src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
135048	(and fill) (bug#18201).
135049
1350502016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135051
135052	Doc fix
135053
135054	* src/keymap.c (Fdefine_prefix_command): Clarify doc string
135055	slightly (bug#18092).
135056
1350572016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135058
135059	delsel doc touch ups
135060
135061	* lisp/delsel.el (delete-selection-helper): Use non-nil
135062	instead of t and clarify function return values (bug#18089).
135063
1350642016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135065
135066	Doc fixes for menu-bar.el
135067
135068	* lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
135069	REGION parameter (bug#18028).
135070	(clipboard-kill-region): Ditto.
135071
1350722016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135073
135074	Doc fix
135075
135076	* lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
135077
1350782016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135079
135080	Minor doc clarification
135081
135082	* lisp/subr.el (y-or-n-p): Document the return value from "n"
135083	(bug#18024).
135084
1350852016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135086
135087	Fill font-lock-mode doc string
135088
135089	* lisp/font-core.el (font-lock-mode): Fill the text to make it
135090	narrower (bug#18008).
135091
1350922016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135093
135094	Wrap the auto-generated doc string
135095
135096	* lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
135097	string to make it less likely that we get overlong lines
135098	(bug#17999).
135099
1351002016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135101
135102	Clarify hi-lock-find-patterns
135103
135104	* lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
135105	(bug#17989).
135106
1351072016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135108
135109	Warning fix in jit-lock-mode
135110
135111	* lisp/jit-lock.el (jit-lock-mode): Don't issue a warning when
135112	turning the mode on in an indirect buffer, if this somehow has
135113	happened (bug#17738).
135114
1351152016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135116
135117	Add a doc string to `winner-mode'
135118
135119	* lisp/winner.el (winner-mode): Add a doc string based on the
135120	comments in the file (bug#17716).
135121
1351222016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135123
135124	Doc fix for align-newline-and-indent
135125
135126	* lisp/align.el (align-newline-and-indent): Mention that
135127	alignment is done by `align' (bug#17707).
135128
1351292016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135130
135131	Cancel the eldoc timer when switching off eldoc mode
135132
135133	* lisp/emacs-lisp/eldoc.el (eldoc-mode): Cancel the eldoc
135134	timer when switching off eldoc mode.  It will be restarted
135135	again if needed (bug#17582).
135136
1351372016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135138
135139	Doc fix for `kbd'
135140
135141	* lisp/subr.el (kbd): Describe more fully the format of the
135142	parameter (bug#17039).
135143
1351442016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135145
135146	Add a sanity check to apropos-documentation-internal
135147
135148	* lisp/apropos.el (apropos-documentation-internal): Add a
135149	sanity check to be less fragile in the presence of invalid
135150	data (bug#16725).
135151
1351522016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135153
135154	Doc tweak
135155
135156	* lisp/simple.el (use-empty-active-region): Doc tweak.
135157	There's only one region (bug#16513).
135158
1351592016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135160
135161	Clarify `read-face-name' doc and tweak the code
135162
135163	* lisp/faces.el (read-face-name): Clarify the documentation
135164	and allow a mix of faces and faces names in all cases
135165	(bug#16483).
135166
1351672016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135168
135169	Remove ": ?" from the read-face-name prompt
135170
135171	* lisp/faces.el (read-face-name): Remove ": ?" from the prompt
135172	to be more backwards compatible (bug#15909).
135173
1351742016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135175
135176	Link from (emacs)Exiting to (lisp)Killing Emacs
135177
135178	* doc/emacs/entering.texi (Exiting): Link to the lispref
135179	manual for further customizations (bug#15445).
135180
1351812016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135182
135183	find-lisp doc touchups
135184
135185	* lisp/find-lisp.el (find-lisp-format): Copy over the doc
135186	string (bug#15047).
135187	(find-lisp-find-files): Clarify doc.
135188
1351892016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135190
135191	Don't have the manual claim that it lists all CL incompatibilities
135192
135193	* doc/misc/cl.texi (Common Lisp Compatibility): The list of
135194	incompatibilities isn't exhaustive, so don't say that it is
135195	(bug#15171).
135196
1351972016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135198
135199	Fix call of `kmacro-display'
135200
135201	* lisp/kmacro.el (kmacro-view-ring-2nd): Fix call of
135202	`kmacro-display' (bug#15020).
135203
1352042016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
135205
135206	Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
135207
135208	* doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
135209	"mouse-[0-9]".  These are case sensitive, and the keys are lower case
135210	(bug#14554).
135211
1352122016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
135213
135214	Rename "Directory Search" menu to "Servers"
135215
135216	* lisp/menu-bar.el (menu-bar-tools-menu): Rename "Directory
135217	Search" to "Directory Servers".  Suggested by Eli
135218	Zaretskii. (bug#14919).
135219
135220	* lisp/net/eudc.el: Rename ditto throughout.
135221
1352222016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
135223
135224	Remove uses of the unused to-end parameter from simple.el
135225
135226	* lisp/simple.el (line-move-partial): Remove usages of the
135227	unused to-end parameter, and make it optional (bug#14844).
135228	(line-move): Remove use of the unused to-end parameter.
135229
1352302016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
135231
135232	Doc fix: _ chars are automatically removed.
135233
135234	* lisp/cus-edit.el (custom-buffer-create): _ chars are
135235	automatically removed when displaying help, so fix the last
135236	doc change.
135237	(custom-buffer-create-other-window): Ditto.
135238
1352392016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
135240
135241	Doc string change to enable-recursive-minibuffers
135242
135243	* src/minibuf.c (syms_of_minibuf): Mention
135244	minibuffer-depth-indicator-mode in the doc string to
135245	enable-recursive-minibuffers (bug#14147).
135246
1352472016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
135248
135249	Fix definition of nobreak-space
135250
135251	* lisp/faces.el (nobreak-space): The definition to
135252	nobreak-space was inadvertantly changed by the previous checkin.
135253
1352542016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
135255
135256	Clarify the `interactive' doc string slightly
135257
135258	* src/callint.c (Finteractive): Clarify the doc string slightly
135259	  (bug#14577).
135260
1352612016-04-28  Drew Adams  <drew.adams@oracle.com>
135262
135263	Make icomplete respect `completion-ignored-extensions'
135264
135265	* lisp/icomplete.el (icomplete-completions): Heed
135266	`completion-ignored-extensions' (bug#12939).
135267
1352682016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
135269
135270	Make ibuffer not break on newline-embedded buffer names
135271
135272	* lisp/ibuffer.el (name): When buffer names contain newlines,
135273	quote those newlines before displaying (bug#12378).
135274
1352752016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
135276
135277	Add a new face for non-breaking hyphen characters
135278
135279	* doc/emacs/display.texi (Standard Faces): Mention nobreak-hyphen.
135280	(Text Display): Ditto.
135281
135282	* lisp/faces.el (nobreak-hyphen): New face (bug#12048).
135283
135284	* src/xdisp.c (get_next_display_element): Use it instead of
135285	the escape-glyph face.
135286
135287	* src/xdisp.c (syms_of_xdisp): New symbil Qnobreak_hyphen.
135288
1352892016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
135290
135291	Make a menu less ambiguous
135292
135293	* doc/emacs/custom.texi (Key Bindings): The Modifier Keys node
135294	is about using modifier keys, not binding them (bug#10942).
135295
1352962016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
135297
135298	Make kill-emacs-query-functions into defcustom
135299
135300	* lisp/files.el (save-buffers-kill-terminal): Mention
135301	`save-buffers-kill-emacs' (bug#10794).
135302	(kill-emacs-query-functions): Made into a defcustom.
135303
1353042016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
135305
135306	Have describe-variable output multi-line values better
135307
135308	* lisp/help-fns.el (describe-variable): When printing
135309	multi-line expressions, display them prettier (bug#10723).
135310
1353112016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
135312
135313	Clean up custom-buffer-create code slightly
135314
135315	* lisp/cus-edit.el (custom-buffer-create-other-window): Don't
135316	pass the unused description value on (for clarity) (bug#10540).
135317	(custom-buffer-create): Ditto
135318
1353192016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
135320
135321	Clarify some doc strings
135322
135323	* lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
135324	Clarify doc string (bug#8693).
135325	(syntax-propertize): Clarify doc string.
135326
1353272016-04-28  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
135328
135329	Fix number-at-point in lisp buffers
135330
135331	* lisp/thingatpt.el (number-at-point): Don't say that things
135332	like ?a are numbers in lisp mode buffers (bug#8634).
135333
1353342016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
135335
135336	Don't consider colons to be paragraphs starting chars in strings
135337
135338	* lisp/emacs-lisp/lisp-mode.el (lisp-fill-paragraph): Don't
135339	consider colons to start paragraphs in (doc) strings
135340	(bug#7751).
135341
1353422016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
135343
135344	Make `undo' of `C-x r t' put point where it should be
135345
135346	* lisp/rect.el (string-rectangle): Make `undo' of a this
135347	command put point back where it was (bug#7522).
135348
1353492016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
135350
135351	Add some concept index entries for custom types
135352
135353	* doc/lispref/customize.texi (Composite Types): Add concept
135354	index entries for restricted-sexp, radio and choice (bug#7385).
135355
1353562016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
135357
135358	Mention `lisp-indent-function' in the lispref manual
135359
135360	* doc/lispref/macros.texi (Indenting Macros): Mention
135361	`lisp-indent-function' (bug#3393).
135362
1353632016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
135364
135365	Clarify doc string of internal compilation function
135366
135367	* lisp/progmodes/compile.el (compilation-get-file-structure):
135368	Clarify doc string (bug#3137).
135369
1353702016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
135371
135372	Avoid having `C-x h' mark the prompt part of the minibuffer
135373
135374	* lisp/simple.el (mark-whole-buffer): Don't mark the prompt
135375	part of the minibuffer (bug#2589).
135376
1353772016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
135378
135379	Allow a prefix argument to find-library to pop to a different window
135380
135381	* lisp/emacs-lisp/find-func.el (find-library): Allow a prefix
135382	argument to pop to a different window (bug#2270).
135383
1353842016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
135385
135386	Move the diff command to "Operate" in ibuffer
135387
135388	* lisp/ibuffer.el (ibuffer-mode-operate-map): Move the diff
135389	command to the "Operate" menu, and remove the customization
135390	entry to make the "View" menu more logical (bug#1150).
135391
1353922016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
135393
135394	Make the minor modes in help buffers into buttons
135395
135396	* lisp/help.el (describe-mode): Make the minor modes into
135397	buttons to enable easier documentation traversal (bug#1149).
135398
1353992016-04-27  Jorgen Schaefer  <contact@jorgenschaefer.de>
135400
135401	Add a number of Python 3 exceptions
135402
135403	* lisp/progmodes/python.el (python-font-lock-keywords): Clean up
135404	the exception list, adding a number of new Python 3 exceptions and
135405	moving some exceptions to the Python 2 and 3 list as Python 2.7
135406	includes them.
135407
1354082016-04-26  Anders Lindgren  <andlind@gmail.com>
135409
135410	Fix bug#22891: wrong terminal width when a fringe width is zero.
135411
135412	When either fringe width is zero, Emacs reserved one column for a
135413	continuation glyph. Terminal windows does not take this into
135414	account when the frame is resized.
135415
135416	* lisp/window.el (window-adjust-process-window-size): Use
135417	`window-max-chars-per-line' instead of `window-body-width'.
135418	* lisp/term.el (term-window-width): Remove function. (It does the
135419	same as `window-max-chars-per-line' but without recent bug fixes.)
135420	(term-mode): Use `window-max-chars-per-line' instead of
135421	`term-window-width'.
135422
1354232016-04-26  Simen Heggestøyl  <simenheg@gmail.com>
135424
135425	Add completion of `calc()' in CSS mode
135426
135427	* lisp/textmodes/css-mode.el (css-value-class-alist): Add `calc()' as
135428	a completion candidate for several value classes.
135429	(css--value-class-lookup): Return only unique results.
135430
135431	* test/lisp/textmodes/css-mode-tests.el
135432	(css-test-property-values-no-duplicates)
135433	(css-test-value-class-lookup): Update to reflect the above changes.
135434
1354352016-04-26  Paul Eggert  <eggert@cs.ucla.edu>
135436
135437	Fix socketd fd startup bug that I introduced
135438
135439	Problem reported by Matthew Leach in:
135440	https://lists.gnu.org/r/emacs-devel/2016-04/msg00778.html
135441	* src/emacs.c (main): Indicate more clearly the coupling between
135442	the --daemon option and init_process_emacs.
135443	* src/lisp.h: Adjust to API changes.
135444	* src/process.c (set_external_socket_descriptor):
135445	Remove, replacing by ...
135446	(init_process_emacs): ... passing the socket FD here instead.
135447	All uses changed.
135448
1354492016-04-25  Tao Fang  <fangtao0901@gmail.com>
135450
135451	Fix: (void-variable url-http-response-status)
135452
135453	* lisp/url/url-http.el
135454	(url-https-proxy-after-change-function): Display the error
135455	message before doing the callback to avoid a void variable
135456	situation (bug#23290).
135457
1354582016-04-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
135459
135460	smtpmail would say it's done before it is
135461
135462	* lisp/mail/smtpmail.el (smtpmail-via-smtp): Move the sending
135463	of the data end marker from here... (bug#23020).
135464	(smtpmail-send-data): ... to here, so that we don't get a
135465	"Sending done" before we've sent the final "." (which can make
135466	the SMPT server reject the email.
135467
1354682016-04-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
135469
135470	`url-retrieve-synchronously' now takes an optional timeout parameter
135471
135472	* doc/misc/url.texi (Retrieving URLs): Document optional parameters.
135473
135474	* lisp/url/url.el (url-retrieve-synchronously): Allow passing
135475	in a timeout parameter (bug#22940).
135476
1354772016-04-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
135478
135479	Include "Retype" as a comint password prompt
135480
135481	* lisp/comint.el (comint-password-prompt-regexp): Include
135482	"Retype" to catch "Retype password for [account]:" from the
135483	"pass" utility (bug#22942).
135484
1354852016-04-25  Alan Mackenzie  <acm@muc.de>
135486
135487	Fix spurious fontification of "for (; a * b;)" in CC Mode.
135488
135489	* lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Check for being
135490	inside the parens of a for statement and after a semicolon near the beginning
135491	of the lambda form.
135492
1354932016-04-25  Paul Eggert  <eggert@cs.ucla.edu>
135494
135495	New function ‘char-from-name’
135496
135497	This also fixes the mishandling of "\N{CJK COMPATIBILITY
135498	IDEOGRAPH-F900}", "\N{VARIATION SELECTOR-1}", etc.
135499	Problem reported by Eli Zaretskii in:
135500	https://lists.gnu.org/r/emacs-devel/2016-04/msg00614.html
135501	* doc/lispref/nonascii.texi (Character Codes), etc/NEWS: Document this.
135502	* lisp/international/mule-cmds.el (char-from-name): New function.
135503	(read-char-by-name): Use it.  Document that "BED" is treated as
135504	a name, not as a hexadecimal number.  Reject out-of-range integers,
135505	floating-point numbers, and strings with trailing junk.
135506	* src/lread.c (character_name_to_code): Call char-from-name
135507	instead of inspecting ucs-names directly, so that we handle
135508	computed names like "VARIATION SELECTOR-1".  Do not use an auto
135509	string, since char-from-name might GC.
135510	* test/src/lread-tests.el: Add tests for new behavior, and
135511	fix some old tests that were wrong.
135512
1355132016-04-25  Alan Mackenzie  <acm@muc.de>
135514
135515	c-forward-<>-arglist no longer directly applies face properties in Java Mode.
135516
135517	This allows the calling of c-restore-<>-properties from c-common-init without
135518	the test suite giving spurious errors.
135519
135520	* lisp/progmodes/cc-engine.el (c-forward-<>-arglist): Remove the form that
135521	sets face properties.
135522	(c-forward-<>-arglist-recur): Reformulate the bit that handles types inside
135523	template brackets using c-inside-<>-type-key.  Don't bind
135524	c-record-type-identifiers or c-record-found-types around the recursive call,
135525	allowing positions of found types to flow back to the caller.
135526
135527	* lisp/progmodes/cc-langs.el (c-inside-<>-type-kwds, c-inside-<>-type-key):
135528	new lang consts/var.
135529
135530	* lisp/progmodes/cc-mode.el (c-common-init): Don't remove
135531	c-restore-<>-properties from the list of functions called at mode
135532	initialization.
135533
1355342016-04-25  Jun Hao  <jun_hao@aol.com>
135535
135536	Pass in port only if provided by caller in the OS X keychain
135537
135538	* lisp/auth-source.el (auth-source-macos-keychain-search): Pass in
135539	port only if provided (bug#23374).
135540
1355412016-04-25  Alan Mackenzie  <acm@muc.de>
135542
135543	Add fontification for a C declaration which looks like a function call.
135544
135545	For example, "t1 *fn (t2 *b);".
135546
135547	* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Add new variable
135548	at-decl-start, setting it to whether the putative decl starts immediately
135549	after ; or { or }.  Accept such a construct as a decl when at-decl-start is
135550	non-nil.
135551
135552	* lisp/progmodes/cc-langs.el (c-pre-start-tokens): New language variable.
135553
1355542016-04-25  Eli Zaretskii  <eliz@gnu.org>
135555
135556	Don't mirror slashes in convert-standard-filename on MS-Windows
135557
135558	* lisp/w32-fns.el (w32-convert-standard-filename): Don't mirror
135559	slashes into backslashes.  This avoids producing ugly file names,
135560	and is deemed no longer necessary, and should certainly be
135561	unrelated to which shell is in use.
135562
1355632016-04-24  Dmitry Gutov  <dgutov@yandex.ru>
135564
135565	Revert the disputed VC change and update the tests
135566
135567	* lisp/vc/vc-hooks.el (vc-working-revision):
135568	Remove the previous change.
135569	(vc-state): Same.  And update the old, incorrect comment about
135570	unregistered files
135571	(https://lists.gnu.org/r/emacs-devel/2016-04/msg00526.html).
135572
135573	* test/lisp/vc/vc-tests.el (vc-test--state): Remove the check
135574	calling `vc-state' on default-directory (VC state is undefined
135575	for directories).  Check that `vc-state' returns nil where it
135576	returned `unregistered' before.  Remove all checks comparing
135577	invocations with the backend passed in explictly and without.
135578	(vc-test--working-revision): Remove all checks comparing
135579	invocations with the backend passed in explictly and without.
135580	Update comments, and add a new one.
135581
1355822016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
135583
135584	* etc/NEWS: Grammar and punctuation improvements.
135585
1355862016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
135587
135588	Merge from origin/emacs-25
135589
135590	9daf1cf * etc/NEWS: Improve wording of vc-git-log-output-coding-syste...
135591	0cd2e92 Don't kill ~/ if it's the top level directory
135592	4f40f5f describe-char: fix insert char documentation
135593	87ee542 (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
135594
1355952016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
135596
135597	Merge from origin/emacs-25
135598
135599	960f90d * etc/AUTHORS: Update the AUTHORS file
135600	b21e9d4 * admin/update_autogen: Use #!/usr/bin/env bash
135601
1356022016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
135603
135604	Merge from origin/emacs-25
135605
135606	78f9af7 ; ChangeLog fixes
135607	162e549 * admin/authors.el (authors-ignored-files): Additions.
135608	2b31a0c In x_set_window_size restore do_pending_window_change calls
135609	401857e Fix Alt-modified keys on some European MS-Windows keyboards
135610	a77cf24 Document 'help-go-forward'
135611	1ba947f Revert "Allow to customize names of executables used by grep.el"
135612	570e0fa Revert "Don't use 'find-program'"
135613	645f4ef Revert "Use 'grep-find-program' in check-declare.el"
135614	aa03257 Clarify documentation of 'dired-mark-files-containing-regexp'
135615	ce0d8c7 Make tmm-menubar work in correct order again
135616	b8d5a8f Remove the Meta-CVS VC backend
135617
1356182016-04-24  Simen Heggestøyl  <simenheg@gmail.com>
135619
135620	Don't let `css--property-values' return duplicates
135621
135622	* lisp/textmodes/css-mode.el (css--property-values): Don't return
135623	duplicate values.
135624
135625	* test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
135626	Take the above into account.
135627	(css-test-property-values-no-duplicates): Test that duplicates aren't
135628	returned by `css--property-values'.
135629
1356302016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
135631
135632	Call `make-composed-keymap' correctly
135633
135634	* lisp/image-mode.el (image-mode-map): Call
135635	`make-composed-keymap' correctly.
135636
1356372016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
135638
135639	Use `make-composed-keymap' instead of copying the keymap
135640
135641	* lisp/image-mode.el (image-mode-map): Use
135642	`make-composed-keymap' instead of copying the keymap.
135643
1356442016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
135645
135646	Make `q' etc work in image mode again
135647
135648	* lisp/image-mode.el (image-mode-map): Restore
135649	special-mode-map as the parent keymap of image-mode-map (bug#23167).
135650
1356512016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
135652
135653	Fix typo in last url.texi checkin
135654
1356552016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
135656
135657	Make STARTTLS error messages better
135658
135659	* lisp/net/network-stream.el (network-stream-open-starttls):
135660	Output a better error message when TLS negotiation fails while
135661	doing STARTTLS (bug#23027).
135662
1356632016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
135664
135665	Encode the shr tests files with trailing white space
135666
1356672016-04-24  Simen Heggestøyl  <simenheg@gmail.com>
135668
135669	Cache results of `css--property-values'
135670
135671	* lisp/textmodes/css-mode.el (css--property-values): Cache computed
135672	values.
135673
135674	* test/lisp/textmodes/css-mode-tests.el (css-test-property-value-cache):
135675	New regression test for the above.
135676
1356772016-04-24  Michael Albinus  <michael.albinus@gmx.de>
135678
135679	Some improvements in vc
135680
135681	* lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
135682	Check, whether FILE is registered.
135683
135684	* lisp/vc/vc-rcs.el (vc-rcs-checkout-model): Return `locking'
135685	for nonexistent files.
135686
135687	* test/lisp/vc/vc-tests.el (w32-application-type): Declare.
135688	(vc-test--revision-granularity-function)
135689	(vc-test--unregister-function): Use `vc-call-backend'.
135690	(vc-test--run-maybe-unsupported-function): New defmacro.
135691	(vc-test--register, vc-test--state, vc-test--working-revision)
135692	(vc-test--checkout-model): Use it.  Fix also expected results.
135693	(vc-test-src02-state, vc-test-rcs04-checkout-model): They pass now.
135694
1356952016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
135696
135697	Document the nil/default values of url-user-agent
135698
135699	* doc/misc/url.texi (Customization): Document the nil/default
135700	values of url-user-agent.
135701
1357022016-04-24  Clément Pit--Claudel  <clement.pit@gmail.com>
135703
135704	Compute User-Agent dynamically in url-http
135705
135706	* lisp/url/url-http.el (url-http-user-agent-string): Compute
135707	User-Agent string dynamically.
135708	(url-http--user-agent-default-string): New function.
135709
135710	* lisp/url/url-vars.el (url-privacy-level): Allow `emacs' in list
135711	of information not to send.
135712	(url-user-agent): Add nil and `default' options; do not
135713	pre-compute value.
135714
1357152016-04-24  Jun Hao  <jun_hao@aol.com>
135716
135717	Handle auth-source items with special characters on OS X
135718
135719	* lisp/auth-source.el
135720	(auth-source-macos-keychain-search-items): Handle keychain
135721	output correctly when has special chararcters (bug#22824).
135722
1357232016-04-24  Magnus Henoch  <magnus.henoch@gmail.com>
135724
135725	Implement process-attributes for Darwin
135726
135727	* src/sysdep.c (timeval_to_timespec, make_lisp_timeval)
135728	(system_process_attributes): Implement process-attributes
135729	for Darwin (bug#16579).
135730
1357312016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
135732
135733	Use Unicode literals instead of hex values
135734
135735	* lisp/net/shr.el (shr-tag-bdo): Use Unicode literals instead
135736	of hex values for greater readability.
135737	(shr-tag-bdi): Ditto.
135738
1357392016-04-24  Steve Purcell  <steve@sanityinc.com>
135740
135741	Allow _ characters in SQL prompts
135742
135743	* lisp/progmodes/sql.el (sql-product-alist): Allow _
135744	characters in SQL prompts (bug#22596).
135745
135746	Fixes issue 22596, whereby "_" is now not considered a word constituent
135747	character in sql-interactive-mode, so prompts like "foo_dev# " are not
135748	correctly detected. Rather than piggy-back on the symbol table, we
135749	explicitly match against alphanumeric chars or "_".
135750
1357512016-04-23  Glenn Morris  <rgm@gnu.org>
135752
135753	When autoload-timestamps is nil, use a dummy timestamp rather than "t".
135754
135755	* lisp/emacs-lisp/autoload.el (autoload--non-timestamp): New constant.
135756	(autoload-generate-file-autoloads, autoload-find-destination)
135757	(update-directory-autoloads): Use autoload--non-timestamp.
135758
1357592016-04-23  Glenn Morris  <rgm@gnu.org>
135760
135761	* test/lisp/xt-mouse-tests.el: Move from test/automated/.
135762
1357632016-04-22  Jö Fahlke  <jorrit@jorrit.de>  (tiny change)
135764
135765	Regexps for matching CMake output
135766
135767	* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist): Add
135768	regexps for matching CMake output.
135769	* test/lisp/progmodes/compile-tests.el (compile-tests--test-regexps-data): Add
135770	CMake test cases.
135771	* etc/compilation.txt (CMake): Add CMake examples.
135772
1357732016-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
135774
135775	* lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
135776
135777	Fix docstring quotes.
135778
1357792016-04-21  Paul Eggert  <eggert@cs.ucla.edu>
135780
135781	Improve character name escapes
135782
135783	* doc/lispref/nonascii.texi (Character Properties):
135784	Avoid duplication of Unicode names.  Reformat examples to fit in
135785	narrow pages.
135786	* doc/lispref/objects.texi (General Escape Syntax):
135787	Simplify and better-organize explanation of \N{...} escapes.
135788	* src/character.h (CHAR_SURROGATE_PAIR_P): Remove; unused.
135789	(char_surrogate_p): New inline function.
135790	* src/lread.c: Do not include string.h; no longer needed.
135791	(invalid_character_name, check_scalar_value): Remove; the ideas
135792	behind these functions are now bundled into character_name_to_code.
135793	(character_name_to_code): Remove undocumented support for "CJK
135794	IDEOGRAPH-XXXX" names, as "U+XXXX" suffices.  Reject monstrosities
135795	like "\N{U+-0}" and null bytes in \N escapes.  Reject floating
135796	point in \N escapes instead of returning garbage.  Use
135797	AUTO_STRING_WITH_LEN to lessen pressure on the garbage collector.
135798	* test/src/lread-tests.el (lread-char-number, lread-char-name)
135799	(lread-string-char-number, lread-string-char-name):
135800	Test runtime behavior, not compile-time, as the test framework
135801	is not set up to test compile-time.
135802	(lread-char-surrogate-1, lread-char-surrogate-2)
135803	(lread-char-surrogate-3, lread-char-surrogate-4)
135804	(lread-string-char-number-2, lread-string-char-number-3):
135805	New tests.
135806	(lread-string-char-number-1): Rename from lread-string-char-number.
135807
1358082016-04-21  Philipp Stephani  <phst@google.com>
135809
135810	Use 'ucs-names' for character name escapes
135811
135812	* src/lread.c (invalid_character_name, check_scalar_value)
135813	(parse_code_after_prefix, character_name_to_code): New helper
135814	functions that use 'ucs-names' and parsing for CJK ideographs.
135815	(read_escape): Use helper functions.
135816	(syms_of_lread): New symbol 'ucs-names'.
135817	* test/src/lread-tests.el: New tests; fix a couple of bugs in
135818	existing tests.
135819
1358202016-04-21  Philipp Stephani  <phst@google.com>
135821
135822	Minor cleanups for character name escapes
135823
135824	* src/lread.c (init_character_names): Add missing 'void'.
135825	Remove top-level 'const'.
135826	(read_escape): Simplify loop a bit.  Remove top-level 'const'.
135827
1358282016-04-21  Philipp Stephani  <phst@google.com>
135829
135830	Add documentation for character name escapes
135831
1358322016-04-21  Philipp Stephani  <phst@google.com>
135833
135834	Implement named character escapes, similar to Perl
135835
135836	* src/lread.c (init_character_names): New function.
135837	(read_escape): Read Perl-style named character escape sequences.
135838	(syms_of_lread): Initialize new variable 'character_names'.
135839	* test/src/lread-tests.el (lread-char-empty-name): Add test file
135840	for src/lread.c.
135841
1358422016-04-21  Fabrice Popineau  <fabrice.popineau@gmail.com>
135843
135844	Avoid run-time dependency on libwinpthread DLL on MS-Windows
135845
135846	* nt/mingw-cfg.site (ac_cv_search_clock_gettime)
135847	(ac_cv_func_clock_gettime, ac_cv_func_clock_settime): Force to not
135848	present, so that MinGW64 builds don't depend on libwinpthread.
135849	(Bug#22959)
135850
1358512016-04-21  Matthew Leach  <matthew@mattleach.net>
135852
135853	Add LIBSYSTEMD to the list of supported features
135854
135855	* configure.ac: Add LIBSYSTEMD to EMACS_CONFIG_FEATURES and print a
135856	message at the end of configure stating whether Emacs will be build
135857	with libsystemd support.
135858
1358592016-04-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
135860
135861	Support absolute column movement in 'ansi-term'
135862
135863	* lisp/term.el (term-handle-ansi-escape): Handle the "\E[G" sequence
135864	for absolute column movement.  (Bug#23303)
135865
1358662016-04-21  Jorgen Schaefer  <contact@jorgenschaefer.de>
135867
135868	Add Python 3.5 keyword "await"
135869
135870	* lisp/progmodes/python.el (python-font-lock-keywords): Add await as
135871	keyword.
135872
1358732016-04-20  Simen Heggestøyl  <simenheg@gmail.com>
135874
135875	Add "keyframes" to list of CSS at-rules
135876
135877	* lisp/textmodes/css-mode.el (css-at-ids): Add "keyframes" at-rule.
135878
1358792016-04-20  Phillip Lord  <phillip.lord@russet.org.uk>
135880
135881	Prevent bootstrap autoload backup files
135882
135883	* lisp/emacs-lisp/autoload.el (autoload-find-generated-file): Suppress
135884	backups in newly created file.
135885
135886	(autoload-ensure-default-file): Function split into two.
135887	(autoload-ensure-file-writeable): New function from split.
135888
135889	(Bug#23203)
135890
1358912016-04-20  Paul Eggert  <eggert@penguin.cs.ucla.edu>
135892
135893	Fix org-timestamp-change typo
135894
135895	Problem reported by Peter Münster (Bug#23299).
135896	* lisp/org/org.el (org-timestamp-change): Fix typo that relied
135897	on undocumented behavior in ‘encode-time’.  In practice the
135898	old code used local time, so use that.
135899
1359002016-04-19  Paul Eggert  <eggert@cs.ucla.edu>
135901
135902	Avoid AC_PREPROC_IFELSE glitch in configure.ac
135903
135904	Problem reported by Angelo Graziosi in:
135905	https://lists.gnu.org/r/emacs-devel/2016-04/msg00545.html
135906	* configure.ac (gl_gcc_warnings): Work around an Autoconf glitch:
135907	AC_PREPROC_IFELSE doesn’t generate a simple shell command.
135908
1359092016-04-19  Michael Albinus  <michael.albinus@gmx.de>
135910
135911	autorevert: Resume with polling if file is deleted
135912
135913	* lisp/autorevert.el: Use consistent wording in comments and
135914	docstrings.
135915	(auto-revert-mode): Add local function to `kill-buffer-hook'.
135916	(auto-revert-notify-handler): Improve handling of `stopped' event.
135917
135918	* test/lisp/autorevert-tests.el
135919	(auto-revert-test02-auto-revert-deleted-file): New test.
135920	(auto-revert-test03-auto-revert-tail-mode)
135921	(auto-revert-test04-auto-revert-mode-dired): Rename them.
135922
1359232016-04-18  Paul Eggert  <eggert@cs.ucla.edu>
135924
135925	Merge from origin/emacs-25
135926
135927	5a0cbe5 Fix Bug#23276
135928	2007e32 Sync with upstream vhdl mode v3.38.1.
135929	b6d2552 Tweak configure.ac syntax in recent module patch
135930
1359312016-04-18  Paul Eggert  <eggert@cs.ucla.edu>
135932
135933	Merge from origin/emacs-25
135934
135935	ac00a92 Make sh-electric-here-document-mode accessible in sh-mode-hoo...
135936	3287f48 ; Add entry to MAINTAINERS
135937	b85981f * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from prev...
135938	0f33284 Make use of rectangle-preview custom variable.
135939	aa0d83a Make use of rectangle-preview face.
135940	33bef6e Use 'grep-find-program' in check-declare.el
135941	a8560e5 Improve "C-h S" for cl-lib symbols
135942	52e798b Fix minor issues with removing left or right fringes
135943	d6ffd64 Speed up redisplay in ansi-term mode
135944	4ab671c Simplify 8-bit character handling by terminal for 'raw-text'
135945	f3653ec * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bu...
135946	ab849b7 Fix w32 memory-management problem when extending buffer text
135947
1359482016-04-18  Paul Eggert  <eggert@cs.ucla.edu>
135949
135950	Merge from origin/emacs-25
135951
135952	32364bb substitute-command-keys keeps quotes’ text props
135953	567ab52 * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping ...
135954	24b87a1 Add semantic-symref-filepattern-alist entry for lisp-interact...
135955	cc0b713 Perform xref searches without visiting unopened files
135956	5045575 Revert "Prevent bootstrap autoload backup files"
135957
1359582016-04-18  Philipp Stephani  <p.stephani2@gmail.com>
135959
135960	* lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Fix docstring
135961
135962	so that it matches the actual implementation.
135963	See https://lists.gnu.org/r/help-gnu-emacs/2016-04/msg00071.html
135964
1359652016-04-18  Stefan Monnier  <monnier@iro.umontreal.ca>
135966
135967	* lisp/textmodes/ispell.el: Compile with lexical-binding
135968
135969	(declare-function): Don't define any more.
135970	(ispell-check-minver, ispell-looking-back): Tweak definition so that
135971	the compiler can obviously know that it's always defined.
135972	(ispell-debug-buffer): Declare var.
135973	(ispell-hunspell-fill-dictionary-entry)
135974	(ispell-parse-hunspell-affix-file, ispell-hunspell-add-multi-dic)
135975	(ispell-find-hunspell-dictionaries, ispell-set-spellchecker-params)
135976	(ispell-command-loop): Avoid add-to-list on local variables.
135977
1359782016-04-17  Paul Eggert  <eggert@cs.ucla.edu>
135979
135980	Minor fixups for external socket launching
135981
135982	* configure.ac (HAVE_LIBSYSTEMD): Change earliest version to 222.
135983	* doc/emacs/misc.texi (Emacs Server):
135984	* etc/NEWS: Spelling and doc fixes.
135985	* src/emacs.c (main) [HAVE_LIBSYSTEMD]:
135986	Check for sd_is_socket returning positive, not zero.
135987	* src/process.c (external_sock_fd): Instead of initializing here ...
135988	(init_process_emacs): ... initialize it here, so that it does the
135989	right thing after dump/restore.
135990	(connect_network_socket): Simplify socket_to_use test.
135991
1359922016-04-17  Simen Heggestøyl  <simenheg@gmail.com>
135993
135994	Add HTML5 tags to HTML mode
135995
135996	* lisp/textmodes/sgml-mode.el (html-tag-alist): Add HTML5 tags.
135997	(html-tag-help): Add short descriptions of those tags.
135998
1359992016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
136000
136001	Finish idna->puny changes in last Message patch
136002
136003	* lisp/gnus/message.el (message-idna-to-ascii-rhs-1): Use puny
136004	instead of idna functions.
136005
1360062016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
136007
136008	Use puny.el instead of idna.el functions in Gnus
136009
136010	* lisp/gnus/gnus-art.el (gnus-use-idna): Default to t (since
136011	Emacs comes with IDNA support built in).
136012	(article-decode-idna-rhs): Use `puny-decode-domain' instead of
136013	`idna-to-unicode'.
136014
136015	* lisp/gnus/gnus-sum.el (gnus-summary-idna-message): Ditto.
136016
1360172016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
136018
136019	Mention `message-use-idna' in NEWS
136020
1360212016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
136022
136023	Default `message-use-idna' to t
136024
136025	* lisp/gnus/message.el (message-use-idna): Default to t (since
136026	Emacs comes with puny.el now).
136027
1360282016-04-16  Matthew Leach  <matthew@mattleach.net>
136029
136030	Extend battery.el to exotic power supply types
136031
136032	* lisp/battery.el (battery-linux-sysfs-regexp): Rename from
136033	'battery--linux-sysfs-regexp' and make a defcustom. All users
136034	changed.  (Bug#23216)
136035
1360362016-04-16  Matthew Leach  <matthew@mattleach.net>
136037
136038	Add external socket launching support
136039
136040	* src/process.c (connect_network_socket): Allow a pre-allocated socket
136041	descriptor to be used if passed to Emacs, avoiding the call to
136042	'socket' and 'bind'.
136043	(Fmake_network_process): Allow users to pass ':use-external-socket' in
136044	the parameter plist to use any sockets that have been passed to Emacs.
136045	(wait_reading_process_output): Call 'socket' and 'bind' every time.
136046	(syms_of_process): New symbol ':use-external-socket'.
136047	(set_external_socket_descriptor): New function.
136048	(external_sock_fd): New variable.
136049	* src/lisp.h: (set_external_socket_descriptor): New declaration.
136050	* src/emacs.c (main): Call 'sd_listen_fds' to read the number of sockets
136051	passed and call 'set_external_socket_descriptor' to set the external
136052	socket.
136053	* src/Makefile.in: Add libsystemd library and C flags to the Emacs
136054	compilation options.
136055
136056	* configure.ac: Add new default-on option "systemd" and check for
136057	libsystemd at configure time.
136058
136059	* lisp/server.el (server-start): Set ':use-external-socket' to 't' when
136060	calling 'make-network-process'.
136061
136062	* etc/NEWS: Document new socket-passing functionality and the configure
136063	option to disable systemd interaction.
136064
136065	* doc/emacs/misc.texi (Emacs Server): Document systemd socket passing
136066	functionality and provide systemd unit examples.
136067	* doc/lispref/processes.texi (Network Processes): Document new
136068	'make-network-process' option ':use-external-socket'.
136069
1360702016-04-16  Matthew Leach  <matthew@mattleach.net>
136071
136072	Don't spell-check argument of 'cref' TeX macro
136073
136074	* lisp/textmodes/ispell.el (ispell-tex-skip-alists): Add the cref
136075	macro to skip spell-checking the cref macro argument.
136076
1360772016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
136078
136079	Simplify use of O_BINARY
136080
136081	* src/callproc.c (call_process):
136082	* src/fileio.c (write_region):
136083	* src/filelock.c (read_lock_data):
136084	* src/image.c (x_find_image_fd):
136085	* src/lread.c (openp):
136086	* src/sysdep.c (init_random, emacs_fopen):
136087	* src/unexcw.c (unexec):
136088	Omit unnecessary use of O_BINARY, since emacs_open now arranges
136089	that for us.
136090
1360912016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
136092
136093	* src/indent.c (Fvertical_motion): Pacify GCC
136094
136095	5.3.1 20160406 (Red Hat 5.3.1-6) on x86-64.
136096
1360972016-04-13  Paul Eggert  <eggert@cs.ucla.edu>
136098
136099	Port ‘./autogen.sh git’ to non-clones
136100
136101	Problem reported by Angelo Graziosi in:
136102	https://lists.gnu.org/r/emacs-devel/2016-04/msg00341.html
136103	* autogen.sh (do_git): Default to false when the arg is ‘all’ but
136104	there is no ‘.git’.
136105	(git_common_dir, hooks): New vars.
136106	(git_config, tailored_hooks, sample_hooks): Use them.
136107
1361082016-04-13  Paul Eggert  <eggert@cs.ucla.edu>
136109
136110	Do not require that .git be a directory
136111
136112	Problem reportyed by Phillip Lord.
136113	* admin/update_autogen, autogen.sh, build-aux/gitlog-to-emacslog:
136114	* configure.ac, make-dist:
136115	Do not require that .git be a directory, as 'git worktree' makes
136116	it a file and not a directory.
136117
1361182016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
136119
136120	Avoid now-obsolete function gmm-format-time-string
136121
136122	* lisp/gnus/message.el (message-insert-formatted-citation-line):
136123	Use format-time-string instead of obsolete function
136124	gmm-format-time-string.
136125
1361262016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
136127
136128	Support OFFSET and (OFFSET ABBR) time zone rules
136129
136130	This simplifies Gnus and VC time zone support, by letting them
136131	feed the output of ‘current-time-zone’ and ‘decode time’ to
136132	primitives that accept time zone arguments.
136133	* doc/lispref/os.texi (Time Zone Rules, Time Conversion):
136134	* etc/NEWS:
136135	* lisp/gnus/message.el (message-insert-formatted-citation-line):
136136	* lisp/org/org.el (org-timestamp-format):
136137	* src/editfns.c (Fformat_time_string, Fdecode_time):
136138	(Fcurrent_time_string, Fcurrent_time_zone, Fset_time_zone_rule):
136139	Document new behavior.
136140	* lisp/gnus/gmm-utils.el (gmm-format-time-string):
136141	* lisp/vc/add-log.el (add-log-iso8601-time-zone):
136142	Mark as obsolete, as it is now just an alias or narrow wrapper
136143	around format-time-string.
136144	* src/editfns.c (tzlookup): Also support integer OFFSET and
136145	list (OFFSET ABBR) as time zone rules.
136146	(Fencode_time): No longer need a special case for a cons ZONE.
136147	(Fcurrent_time_zone): If the time zone string is missing, compute
136148	it the same way the other new code does.
136149
1361502016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
136151
136152	Merge from origin/emacs-25
136153
136154	ca50981 Improve time zone documentation
136155	c23c965 Prevent bootstrap autoload backup files
136156	9344612 Disable multicolor fonts on OS X since they are not supported...
136157	c41ce1c Capitalize “Universal Time” in documentation
136158	10597c9 Don't use 'find-program'
136159
1361602016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
136161
136162	Merge from origin/emacs-25
136163
136164	b134c20 Sync with gnulib
136165	bb30fa9 Fix last change on 2016-01-02
136166	488a72f ; Spelling fixes
136167	9b1aab9 Port run-prolog EMACS to SWI-Prolog 7.2.3
136168	0e7bcec Avoid crashes due to unreasonably large or small text scaling
136169	85f257c Improve documentation of 'with-eval-after-load'
136170	668c7bc Improve handling of non-ASCII characters in Git log messages
136171	b570769 Remove undefined behavior in OS X dumper.
136172	97211f3 Fix clipping of xwidgets
136173	e87fbc0 Improve Lisp-level documentation of tooltips
136174	9f1786e Faces names should not end in "-face".
136175	3283271 * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
136176	a1f221b Comint and compile no longer set EMACS
136177	5c28890 * lisp/subr.el (read-key): Don't let the prompt linger (bug#2...
136178	a75b9a6 Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...
136179	c93ae7a Allow to customize names of executables used by grep.el
136180	f6497c6 Set locale encoding to UTF-8 when run from OS X GUI.
136181	7ad1d07 Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
136182	a3f1ac2 Avoid infinite loop in 'studlify-word'
136183	f36df4b Don’t recommend obsolete EMACS env var
136184	fb0b531 * lisp/emacs-lisp/package.el: Change from a few days ago need...
136185
1361862016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
136187
136188	Merge from origin/emacs-25
136189
136190	96d9e78 Fix "Beginning of buffer" error in forward-page
136191	20686f7 Add a `transient' project type
136192
1361932016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
136194
136195	Merge from origin/emacs-25
136196
136197	80128a7 Fix stability confusion in sort-tests
136198	1e4aa42 Avoid describe-key error with lambdas
136199	a05fb21 * lisp/emacs-lisp/package.el (package-install-selected-packag...
136200	f501116 Sync with gnulib
136201	c4963f9 Fix doc for Universal Time
136202
1362032016-04-10  Etienne Prud'homme  <e.e.f.prudhomme@gmail.com>  (tiny change)
136204
136205	Fix alignement rule for CSS
136206
136207	* lisp/align.el (align-rules-list): Support CSS properties that have
136208	multiple words.
136209
1362102016-04-10  Tassilo Horn  <tsdh@gnu.org>
136211
136212	New custom option for overriding mailcap choices
136213
136214	* lisp/net/mailcap.el (mailcap--get-user-mime-data): New function.
136215	(mailcap--set-user-mime-data): New function.
136216	(mailcap-user-mime-data): New customization option.
136217	(mailcap-select-preferred-viewer): New function.
136218	(mailcap-mime-info): Use it.
136219
136220	* doc/misc/emacs-mime.texi (mailcap): Document `mailcap-user-mime-data'.
136221
1362222016-04-10  Michael Albinus  <michael.albinus@gmx.de>
136223
136224	Fix Bug#23207
136225
136226	* src/keyboard.c (read_char): Resume idle timers in case of
136227	dbus-event, file-notify-event and config-changed-event.
136228	Reported by Johan Claesson <johanclaesson@bredband.net>.  (Bug#23207)
136229
1362302016-04-09  Michael Albinus  <michael.albinus@gmx.de>
136231
136232	Add vc-backend and vc-responsible-backend tests
136233
136234	* lisp/vc/vc-hooks.el (vc-file-setprop, vc-file-getprop)
136235	(vc-file-clearprops): Use properties on absolute files.
136236
136237	* test/lisp/vc/vc-tests.el (vc-test--unregister-function):
136238	Clear file properties.
136239	(vc-test--register): Add tests for `vc-backend' and
136240	`vc-responsible-backend'.  Catch other errors but `vc-not-supported'.
136241	(vc-test--state, vc-test--checkout-model): Catch other errors
136242	but `vc-not-supported'.
136243	(vc-test--working-revision): Fix test for RCS and SCCS.  Catch
136244	other errors but `vc-not-supported'.
136245	(vc-test-src02-state): Mark as an expected failure.
136246
1362472016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
136248
136249	Minor improvements for hash function primitives
136250
136251	* src/fns.c (hashfn_eql): Define in terms of hashfn_equal and
136252	hashfn_eq rather than reaching inside them.
136253	(hashtest_eq, hashtest_eql, hashtest_equal):
136254	Now constants with initializers.
136255	(syms_of_fns): Omit no-longer-needed initialization.
136256	* src/lisp.h (LISPSYM_INITIALLY): New macro.
136257	(DEFINE_LISP_SYMBOL): Use it.
136258
1362592016-04-08  Paul Pogonyshev  <pogonyshev@gmail.com>
136260
136261	New primitives sxhash-eq, sxhash-eql
136262
136263	* doc/lispref/hash.texi (Defining Hash), etc/NEWS: Document this.
136264	* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns):
136265	Add sxhash-equal, sxhash-eq, sxhash-eql.
136266	* lisp/subr.el (sxhash): Now an alias for sxhash-equal.
136267	* src/fns.c (Fsxhash_eq, Fsxhash_eql): New functions.n
136268
1362692016-04-08  Eli Zaretskii  <eliz@gnu.org>
136270
136271	Teach Dired support parallel execution of commands on MS-Windows
136272
136273	* lisp/dired-aux.el (dired-shell-stuff-it): Support
136274	parallel-in-background execution of commands on MS-Windows.
136275	Test 'w32-shell-dos-semantics' instead of the underlying OS
136276	when determining whether addition of 'wait' is needed.
136277
1362782016-04-08  Tino Calancha  <f92capac@gmail.com>
136279
136280	Make 'dired-do-shell-command' wait for all background jobs
136281
136282	* lisp/dired-aux.el (dired-shell-stuff-it): Force POSIX shells to
136283	wait until all background jobs exit.  (Bug#23206).
136284
1362852016-04-07  Vivek Dasmohapatra  <vivek@etla.org>
136286
136287	Prefer 'font-lock-face to 'face in erc where appropriate
136288
136289	* lisp/erc/erc-button.el (erc-button-add-face): Prefer
136290	'font-lock-face to 'face where appropriate.
136291	* lisp/erc/erc-capab.el (erc-capab-identify-add-prefix)
136292	* lisp/erc/erc-dcc.el (erc-dcc-chat-parse-output)
136293	* lisp/erc/erc-goodies.el (erc-controls-propertize)
136294	* lisp/erc/erc-stamp.el (erc-format-timestamp)
136295	* lisp/erc/erc-track.el (erc-faces-in)
136296	* lisp/erc/erc.el (erc-load-irc-script-lines, erc-display-msg)
136297	(erc-display-command, erc-make-notice, erc-highlight-notice)
136298	(erc-format-my-nick, erc-format-@nick, erc-format-privmessage)
136299	(erc-display-prompt, erc-display-message-highlight)
136300	(erc-log-irc-protocol): Ditto.
136301
136302	* test/lisp/erc/erc-track-tests.el: Converted asserts into ert
136303	tests.
136304
1363052016-04-06  Lele Gaifax  <lele@metapensiero.it>
136306
136307	Add new keywords of Python 3.5
136308
136309	Python 3.5, released in mid September 2015, introduced a few new
136310	keywords to better support asynchronous code, "async" and "await"
136311	in particular. See https://www.python.org/dev/peps/pep-0492/ for
136312	details. (Bug#21783)
136313	* lisp/progmodes/python.el (python-rx-constituents): Add async
136314	def/for/with as block-start and async def as defun.
136315	* lisp/progmodes/python.el (python-font-lock-keywords): Add async
136316	def/for/with as keyword.
136317	* test/automated/python-tests.el (python-indent-after-async-block-1,
136318	python-indent-after-async-block-2, python-indent-after-async-block-3,
136319	python-nav-beginning-of-defun-3): New tests to test indentation and
136320	navigation for the async keyword.
136321
1363222016-04-05  Etienne Prud'homme  <e.e.f.prudhomme@gmail.com>  (tiny change)
136323
136324	Support completion of at-rules in SCSS mode
136325
136326	lisp/textmodes/css-mode.el (scss-at-ids): New defconst holding
136327	SCSS-specific at-rules.
136328	(css--at-ids): New buffer-local variable holding the list of at-rules
136329	for the current mode.
136330	(css--complete-at-rule): Retrieve at-rules from `css--at-ids`.
136331	(scss-mode): Set `css--at-ids'.
136332
1363332016-04-05  Paul Eggert  <eggert@cs.ucla.edu>
136334
136335	Enable GCC warnings in developer builds
136336
136337	However, do not fail; just issue the warnings.  Add an option
136338	--enable-gcc-warnings=warn-only to configure, to implement this.
136339	* INSTALL, etc/NEWS: Document this.
136340	* configure.ac (gl_GCC_VERSION_IFELSE): New macro, from coreutils.
136341	(gl_gcc_warnings, WERROR_CFLAGS): Use it to add new option.
136342	Don’t treat --with-x-toolkit=no as a special case when configuring
136343	warnings.
136344
1363452016-04-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
136346
136347	Inhibit querying for the encoding of the headers when resending
136348
136349	* lisp/gnus/message.el (message-resend): Inhibit querying for
136350	the encoding of the headers when resending.
136351
1363522016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
136353
136354	Prefer AUTO_STRING_WITH_LEN to make_formatted_string
136355
136356	* src/buffer.c (Fgenerate_new_buffer_name):
136357	* src/filelock.c (get_boot_time):
136358	* src/minibuf.c (get_minibuffer):
136359	* src/process.c (make_process):
136360	* src/xdisp.c (ensure_echo_area_buffers):
136361	Prefer AUTO_STRING_WITH_LEN + sprintf to make_formatted_string
136362	when either will do.
136363
1363642016-04-04  Tao Fang  <fangtao0901@gmail.com>
136365
136366	Allow URL using HTTPS proxies using CONNECT
136367
136368	* lisp/url/url-http.el (url-http-find-free-connection): Allow
136369	using proxies (bug#11788).
136370	(url-http-end-of-document-sentinel): Ditto.
136371	(url-http): The protocol may change from http to https and
136372	vice versa.
136373	(url-https-proxy-connect): Allow using CONNECT proxies for https.
136374
1363752016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
136376
136377	New C macro AUTO_STRING_WITH_LEN
136378
136379	Put a bit less pressure on the garbage collector by defining a
136380	macro that is like AUTO_STRING but also allows null bytes in strings,
136381	and by extending AUTO_STRING to work with any unibyte string.
136382	* src/alloc.c (verify_ascii): Remove; all uses removed.
136383	AUTO_STRING can now be used on non-ASCII unibyte strings.
136384	* src/lisp.h (AUTO_STRING): Now allows non-ASCII unibyte strings.
136385	(AUTO_STRING_WITH_LEN): New macro.
136386	* src/coding.c (from_unicode_buffer):
136387	* src/editfns.c (format_time_string):
136388	* src/emacs-module.c (module_make_string, module_format_fun_env):
136389	* src/fileio.c (Fexpand_file_name):
136390	* src/font.c (font_parse_family_registry):
136391	* src/ftfont.c (ftfont_get_charset):
136392	* src/keymap.c (silly_event_symbol_error):
136393	* src/menu.c (single_menu_item):
136394	* src/sysdep.c (system_process_attributes):
136395	Use AUTO_STRING_WITH_LEN if possible.
136396	* src/emacs-module.c (module_make_function):
136397	* src/fileio.c (report_file_errno, report_file_notify_error):
136398	* src/fns.c (Flocale_info):
136399	* src/sysdep.c (system_process_attributes):
136400	Use AUTO_STRING if possible.  This is doable more often now
136401	that AUTO_STRING works on any unibyte string.
136402
1364032016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
136404
136405	Port redirect-debugging-output to MS-Windows
136406
136407	Suggested by Eli Zaretskii in:
136408	https://lists.gnu.org/r/emacs-devel/2016-04/msg00037.html
136409	* src/print.c [WINDOWSNT]: Include sys/socket.h.
136410	* src/w32.c (sys_dup2): Work around problem with MS-Windows _dup2.
136411
1364122016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
136413
136414	Port redirect-debugging-output to non-GNU/Linux
136415
136416	Problem reported by Kylie McClain for musl in:
136417	https://lists.gnu.org/r/emacs-devel/2016-03/msg01592.html
136418	* etc/DEBUG, etc/NEWS: Mention this.
136419	* src/callproc.c (child_setup) [!MSDOS]:
136420	* src/dispnew.c (init_display):
136421	* src/emacs.c (main, Fdaemon_initialized):
136422	* src/minibuf.c (read_minibuf_noninteractive):
136423	* src/regex.c (xmalloc, xrealloc):
136424	Prefer symbolic names like STDERR_FILENO to magic numbers like 2,
136425	to make file-descriptor manipulation easier to follow.
136426	* src/emacs.c (relocate_fd) [!WINDOWSNT]: Remove; no longer needed
136427	now that we make sure stdin, stdout and stderr are open.  All uses
136428	removed.
136429	(main): Make sure standard FDs are OK.  Prefer symbolic names like
136430	EXIT_FAILURE to magic numbers like 1.  Use bool for boolean.
136431	* src/lisp.h (init_standard_fds): New decl.
136432	* src/print.c (WITH_REDIRECT_DEBUGGING_OUTPUT) [GNU_LINUX]:
136433	Remove; no longer needed.
136434	(Fredirect_debugging_output): Define on all platforms, not just
136435	GNU/Linux.  Redirect file descriptor, not stream, so that the code
136436	works even if stderr is not an lvalue.  Report an error if the
136437	file arg is neither a string nor nil.
136438	(syms_of_print): Always define redirect-debugging-output.
136439	* src/sysdep.c (force_open, init_standard_fds): New functions.
136440
1364412016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
136442
136443	Spelling fixes
136444
1364452016-04-03  John Wiegley  <johnw@newartisans.com>
136446
136447	Revert "Add `r'/`l' grep command history commands"
136448
136449	This reverts commit a32eea60ac90d367435860fe3a10bf843e6f497c.
136450
1364512016-04-03  John Wiegley  <johnw@newartisans.com>
136452
136453	Revert "Restore the point in grep buffers when traversing the history"
136454
136455	This reverts commit f7c5f79ca565d3ef3feeb1e0af5ca261f1bcf58a.
136456
1364572016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
136458
136459	Merge from origin/emacs-25
136460
136461	787df9d ; * src/keyboard.c (read_char): Fix typos in a comment.
136462
1364632016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
136464
136465	Merge from origin/emacs-25
136466
136467	b787d55 More format-time-string change fixups
136468	13c8f29 make-xwidget unused arg cleanup
136469	36e05f0 Remove unused arguments from make-xwidget
136470	1042217 Document incompatible changes in 'format-time-string'
136471	7228eb8 Improve documentation of byte-code objects
136472	0020047 Adapt calls to 'format-time-string' to changes in Emacs 25
136473	17b5152 Improve vc-diff with Git backend
136474	c28f87a (js--continued-expression-p): Special-case unary plus and minus
136475	2d02a5f ; * lisp/vc/vc-annotate.el (vc-annotate): Clarify commentary.
136476	9151f16 Prevent C++ Mode wrongly fontifying some identifiers near tem...
136477	b3b523c Avoid crashes due to insanely large columns in tabulated-list...
136478	a3daa34 Teach M-x disassemble a default argument.
136479	e30c3e9 Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
136480	df441b3 Fix OS X specific settings in tramp-tests
136481	2244331 Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
136482
136483	# Conflicts:
136484	#	lisp/net/tramp-sh.el
136485	#	lisp/progmodes/cc-engine.el
136486
1364872016-04-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
136488
136489	Restore the point in grep buffers when traversing the history
136490
136491	* lisp/progmodes/grep.el (grep-process-setup): Allow moving
136492	point to a specific place after finishing the grep command.
136493	(grep-mode): Use it to restore point after traversing the history.
136494	(grep--history-point): New internal variable.
136495	(grep--save-history, grep-forward-history): Use it to restore
136496	the point.
136497
1364982016-04-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
136499
136500	Add `r'/`l' grep command history commands
136501
136502	* doc/emacs/building.texi (Grep Searching): Mention the
136503	`r'/`l' commands.
136504
136505	* lisp/progmodes/grep.el (grep-forward-history): New command.
136506	(grep-backward-history): Ditto.
136507	(grep--save-buffers): New function.
136508	(grep): Use it to record the history.
136509	(grep--command-history, grep--history-inhibit)
136510	(grep--history-place): New internal variables for the grep
136511	history (bug#22627).
136512
1365132016-04-03  Michael Albinus  <michael.albinus@gmx.de>
136514
136515	Fix Bug#23186, again
136516
136517	* lisp/net/tramp.el (tramp-encoding-shell)
136518	(tramp-encoding-command-switch)
136519	(tramp-encoding-command-interactive): Check for
136520	`w32-shell-name'.  (Bug#23186)
136521
1365222016-04-03  Michael Albinus  <michael.albinus@gmx.de>
136523
136524	Fix Bug#23186
136525
136526	* lisp/net/tramp.el (tramp-encoding-command-switch)
136527	(tramp-encoding-command-interactive):
136528	* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
136529	`tramp-encoding-shell' could be nil.  (Bug#23186)
136530
1365312016-04-03  Michael Albinus  <michael.albinus@gmx.de>
136532
136533	Fix Bug#22145
136534
136535	* lisp/net/tramp-cache.el (tramp-get-connection-property)
136536	(tramp-set-connection-property, tramp-connection-property-p)
136537	(tramp-flush-connection-property): Improve docstring.
136538
136539	* lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
136540
136541	* lisp/net/tramp.el (tramp-get-local-locale): New defun.
136542
136543	* test/automated/tramp-tests.el (tramp--test-utf8):
136544	Improve settings of coding systems.  (Bug#22145)
136545
1365462016-04-02  John Wiegley  <johnw@newartisans.com>
136547
136548	Merge from origin/emacs-25
136549
136550	7c1802f * doc/lispref/text.texi (Columns): Remove a nonexistent refer...
136551	9034c50 * doc/man/emacsclient.1: Document +line:column option.
136552	06495c9 Fix rare problems with echo-area display and multiple frames
136553	f99b512 In M-%, avoid making buffer-local binding of text-property-de...
136554
1365552016-04-02  John Wiegley  <johnw@newartisans.com>
136556
136557	Merge from origin/emacs-25
136558
136559	e65c307 * src/font.c (QCuser_spec): Add missing colon to :user-spec.
136560	c8b868b Don't start the 'midnight' timer twice
136561	278c8a7 * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of X...
136562	e5c17f4 Fix todo-mode category movement
136563	bc70fda * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
136564	cf40f38 Ignore non-nil. non-cons values of unread-command-events
136565	8ee4c52 Improve documentatuon of 'truncate-partial-width-windows'
136566	fb9a62c * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU...
136567	1e1ea22 Fix 'dired-goto-file' in Dired buffers produced by find-dired
136568	3a13472 Fix map-put and map-delete for alists (Bug#23105)
136569	422c3da Minor copyedits of documentation for temporary displays
136570	90fb9b3 Add customization option for using UTF-8 coordinates in xt-mouse
136571	f14d463 Minor doc string fixes in replace.el
136572	e70ee9d Fix scrolling upwards with 'xwidget-webkit-browse-url'
136573	44782de Fix display of Indic scripts
136574	326c64f Fix splash screen display at startup
136575	7ab2a97 ; In NEWS mention new display of minibuffer completions window
136576	a1cd84c Describe temporary displays in Emacs manual
136577	5ec1056 Avoid stray As next to IDLW icons
136578	45577d5 Avoid GTK 3 crash with icons and masks
136579	e99ff6e * lisp/minibuffer.el (minibuffer-completion-help): Use fit-wi...
136580	077b78c Define make_save_ptr_ptr unconditionally
136581	20a1003 Preserve current buffer when popping up TTY menus
136582	7eba90c Improve font selection by family on MS-Windows
136583	73d213f Comint, term, and compile now set EMACS
136584	9524ec5 Ignore more merges when generating ChangeLog
136585	ad250f2 Sync with gnulib
136586	c0165ea Resurrect GNUS-NEWS autogeneration
136587	1e5327c ; Backport ChangeLog.2 fixes from master
136588	e643977 Make `toggle-frame-maximized' respect the dock on OS X (bug#2...
136589	38a43f1 Fix bug in displaying header line with a box face
136590	91e6676 Fix an Isearch var to be a string (Bug#23038)
136591	76ef522 Fix (args-out-of-range 1) error in cursor-sensor--detect
136592	8a35f83 Render empty <ul><li><ul> correctly
136593	d8b2ce5 Ignore invalid base64 encoded embedded images
136594	52ba24b Fix <p> and <div> newlines with or without <li> in shr
136595	b8ea08b Avoid errors in 'newline'
136596	fc3cd53 Fix Bug#23032
136597	dd2737b Adjudicate review comments in abbrevs.texi
136598	26f9c50 Fixup the "normal" matcher; highlight global var symbols, too
136599	413e73b ; Small theme additions
136600	cd950da Honor prefix arg in doc-view-next-line-or-next-page
136601	ed909c0 ; Spelling fixes
136602	6da3a6d Port to strict C99 offsetof
136603	de7601f Port to GTK with strict C11 compiler
136604	658aa2d Port to GTK with strict C99 compiler
136605	1df7173 Avoid screen artifacts with new OS X visible bell after scrol...
136606	7a2edd3 Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into...
136607	dca240a Suppress some Tramp tests for OSX, do not merge with master
136608	9094304 * lisp/progmodes/xref.el (xref-buffer-name, xref--window): Mo...
136609	cbedfc2 * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
136610	005ac7c * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
136611	9ab03f2 ; Auto-commit of loaddefs files.
136612	56df617 Address compilation warnings due to 2016-01-03 mml refactoring.
136613	a1ef911 * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp i...
136614	79ae7fb * lisp/dired-x.el (dired-omit-here-always): Correct error mes...
136615	253929f * lisp/dired-x.el (dired-omit-here-always): Replace undefined...
136616	ce53389 * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
136617	d6d164f Avoid segfaults due to frame image cache being absent
136618	bc7f6f6 Improve documentation of glyphless-character display
136619	6b6916e ; * src/xdisp.c (with_echo_area_buffer): Fix typos in comments.
136620	ee9a1f7 Support safe navigation operator in non-SMIE indentation code
136621	c3ed95b Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
136622	2036be4 Fix Ruby's operator precedence
136623	1d686c2 (ruby-interpolation-inside-another-interpolation): New failin...
136624	7950e1d Port to clang 3.7.0 on x86-64
136625	218ae59 * test/automated/package-test.el (package-test-signed): Tweak...
136626	ba33b7c Sync with gnulib
136627	38b276d Fix startup of "emacs -nw" on systems that CANNOT_DUMP
136628	dbfbedd Do not tokenize a comment before continuation as ';'
136629	0403620 Don't misindent arguments of a method call inside continuation
136630	e6776f8 * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_ec...
136631	8475f3d ASCII-only etc/NEWS etc.
136632	5cc6919 Fix a cacheing bug, which led to inordinately slow c-beginnin...
136633	0ce37ea Fix Isearch prompt when invoked with an argument
136634	f3033d4 Fix a typo in the Emacs manual
136635	4235d2d Curved quotes in etc/NEWS etc.
136636	26b56dc Fix some single quotes in documentation
136637	80ec484 Make lisp-completion-at-point's argument optional
136638	9d463ae Tweak the left precedence of '=>'
136639	5b705bc Indent '.' relative to the first sibling expression
136640	04f5525 Make '.' associative, for easier sexp navigation
136641	ba24c99 Revert "Simplify "Visit New File" to "New File""
136642
1366432016-04-02  Stefan Monnier  <monnier@iro.umontreal.ca>
136644
136645	* lisp/erc/erc-backend.el: Use lexical-binding. Silence byte-compiler
136646
136647	Use #' to quote functions.
136648	(erc-server-delayed-reconnect): Remove unused arg `event'.
136649	(erc-process-sentinel-2): Adjust accordingly.
136650	Don't pass `err' to condition-case if we don't use it.
136651	(define-erc-response-handler): Use add-hook rather than add-to-list.
136652	(NICK): Use cl-pushnew rather than add-to-list.
136653	(331): Remove unused var `topic'.
136654	(352): Remove unused var `hopcount'.
136655
1366562016-04-02  Paul Pogonyshev  <pogonyshev@gmail.com>
136657
136658	Support macros in 'func-arity'
136659
136660	* src/eval.c (Ffunc_arity): Support Lisp macros as well.
136661
1366622016-04-02  Andy Moreton  <andrewjmoreton@gmail.com>
136663
136664	Fix compilation of Cygwin w32 port
136665
136666	* src/w32xfns.c (init_crit, delete_crit) [HAVE_W32NOTIFY]: Only
136667	initialize and free the notification set if compiling with
136668	w32notify feature.
136669
1366702016-04-01  Paul Eggert  <eggert@penguin.cs.ucla.edu>
136671
136672	Fix resize incompatibility with GTK+ master
136673
136674	Problem reported by Matthias Clasen (Bug#23144).
136675	* src/xterm.c (handle_one_xevent) [USE_GTK]:
136676	Do not call xg_frame_resized.
136677
1366782016-04-01  Paul Eggert  <eggert@cs.ucla.edu>
136679
136680	Fix check for subscript errors in module calls
136681
136682	* src/emacs-module.c (check_vec_index): New function.
136683	(module_vec_set, module_vec_get): Use it instead of a
136684	not-strict-enough check.
136685
1366862016-03-31  Simen Heggestøyl  <simenheg@gmail.com>
136687
136688	Support completion of bang-rules in CSS mode
136689
136690	lisp/textmodes/css-mode.el (css--bang-ids): New buffer-local variable
136691	holding the list of bang-rules for the current mode.
136692	(css--font-lock-keywords): Retrieve bang-rules from `css--bang-ids'
136693	instead of computing them.
136694	(css--complete-bang-rule): New function for completing a bang-rule.
136695	(css-completion-at-point): Add support for completing bang-rules.
136696	(scss-font-lock-keywords): Change from a variable to a function in
136697	order to recompute `css--font-lock-keywords' when `css--bang-ids' has
136698	changed.
136699	(scss-mode): Set `css--bang-ids' and recompute font-lock keywords.
136700
1367012016-03-30  Simen Heggestøyl  <simenheg@gmail.com>
136702
136703	Add HTML4 tags to HTML mode
136704
136705	* lisp/textmodes/sgml-mode.el (html-tag-alist): Add HTML4 tags.
136706	(html-tag-help): Add short descriptions of those tags.
136707
1367082016-03-29  Paul Eggert  <eggert@cs.ucla.edu>
136709
136710	Pacify --enable-gcc-warnings for buffer-hash etc.
136711
136712	* src/fns.c (make_digest_string): Now static.
136713	(secure_hash): Omit unused local.
136714
1367152016-03-29  Oleh Krehel  <ohwoeowho@gmail.com>
136716
136717	Add support for 7z archives
136718
136719	* lisp/dired-aux.el (dired-compress-file-suffixes): "Z" should now
136720	  also work with 7z archives.
136721
136722	The shell command should produce a single extracted directory named
136723	after the archive's name.
136724
136725	In case the extracted directory exists, all files will be overwritten
136726	without a prompt. This matches the expected behavior with the "tar.gz"
136727	archives.
136728
1367292016-03-29  Nicolas Petton  <nicolas@petton.fr>
136730
136731	* lisp/emacs-lisp/seq.el: Require cl-lib instead of cl-extra
136732
1367332016-03-29  Michael Albinus  <michael.albinus@gmx.de>
136734
136735	Fix typo in network-stream-tests.el
136736
136737	* test/lisp/net/network-stream-tests.el
136738	(connect-to-tls-ipv6-nowait): Fix typo.
136739
1367402016-03-29  Nicolas Petton  <nicolas@petton.fr>
136741
136742	New function seq-sort-by in seq.el
136743
136744	* lisp/emacs-lisp/seq.el (seq-sort-by): New function.
136745	* test/lisp/emacs-lisp/seq-tests.el: New test for seq-sort-by.
136746	* doc/lispref/sequences.texi: Add documentation for seq-sort-by.
136747
1367482016-03-28  Lars Magne Ingebrigtsen  <larsi@gnus.org>
136749
136750	Mention the `M-q' changes
136751
1367522016-03-28  Lars Magne Ingebrigtsen  <larsi@gnus.org>
136753
136754	Have `M-q' not mark buffers are changed when they haven't
136755
136756	* lisp/textmodes/fill.el (fill-paragraph): Use `buffer-hash'
136757	to avoid marking buffers as changed when they haven't.
136758
1367592016-03-28  Lars Magne Ingebrigtsen  <larsi@gnus.org>
136760
136761	Add a new function `buffer-hash'
136762
136763	* doc/lispref/text.texi (Checksum/Hash): Document `buffer-hash'.
136764
136765	* src/fns.c (Fbuffer_hash): New function.
136766	(make_digest_string): Refactored out into its own function.
136767	(secure_hash): Use it.
136768
136769	* test/src/fns-tests.el (fns-tests-hash-buffer): New tests.
136770
1367712016-03-27  Paul Eggert  <eggert@cs.ucla.edu>
136772
136773	Rename C names to match Lisp symbols better
136774
136775	This was inspired by commit e65c3079c65595d95749348366af9811fafff062,
136776	which fixed a bug where the C name for a symbol disagreed with the
136777	symbol name itself.  Fix other instances of disagreements that I found.
136778	Although this doesn’t fix a bug, it should make code easier to follow.
136779	The remaining disagreements are idiosyncratic: Qminus, Qplus,
136780	Qsans__serif, Qbackquote, Qcomma, Qcomma_at, Qcomma_dot.
136781	All uses changed.
136782	* src/alloc.c (QAutomatic_GC): Rename from Qautomatic_gc.
136783	* src/dbusbind.c (QCsystem): Rename from QCdbus_system_bus.
136784	(QCsession): Rename from QCdbus_session_bus.
136785	(QCtimeout): Rename from QCdbus_timeout.
136786	(QCbyte): Rename from QCdbus_type_byte.
136787	(QCboolean): Rename from QCdbus_type_boolean.
136788	(QCint16): Rename from QCdbus_type_int16.
136789	(QCuint16): Rename from QCdbus_type_uint16.
136790	(QCint32): Rename from QCdbus_type_int32.
136791	(QCuint32): Rename from QCdbus_type_uint32.
136792	(QCint64): Rename from QCdbus_type_int64.
136793	(QCuint64): Rename from QCdbus_type_uint64.
136794	(QCdouble): Rename from QCdbus_type_double.
136795	(QCstring): Rename from QCdbus_type_string.
136796	(QCobject_path): Rename from QCdbus_type_object_path.
136797	(QCsignature): Rename from QCdbus_type_signature.
136798	(QCunix_fd): Rename from QCdbus_type_unix_fd.
136799	(QCarray): Rename from QCdbus_type_array.
136800	(QCvariant): Rename from QCdbus_type_variant.
136801	(QCstruct): Rename from QCdbus_type_struct.
136802	(QCdict_entry): Rename from QCdbus_type_dict_entry.
136803	(QCserial): Rename from QCdbus_registered_serial.
136804	(QCmethod): Rename from QCdbus_registered_method.
136805	(QCsignal): Rename from QCdbus_registered_signal.
136806	* src/emacs-module.c (Qinternal__module_call):
136807	Rename from Qinternal_module_call.
136808	* src/frame.c (Qwindow__pixel_to_total):
136809	Rename from Qwindow_pixel_to_total.
136810	* src/gnutls.c (QChostname): Rename from QCgnutls_bootprop_hostname.
136811	(QCpriority): Rename from QCgnutls_bootprop_priority.
136812	(QCtrustfiles): Rename from QCgnutls_bootprop_trustfiles.
136813	(QCkeylist): Rename from QCgnutls_bootprop_keylist.
136814	(QCcrlfiles): Rename from QCgnutls_bootprop_crlfiles.
136815	(QCmin_prime_bits): Rename from QCgnutls_bootprop_min_prime_bits.
136816	(QCloglevel): Rename from QCgnutls_bootprop_loglevel.
136817	(QCcomplete_negotiation): Rename from QCgnutls_complete_negotiation.
136818	(QCverify_flags): Rename from QCgnutls_bootprop_verify_flags.
136819	(QCverify_error): Rename from QCgnutls_bootprop_verify_error.
136820	* src/w32fns.c (Qfont_parameter): Rename from Qfont_param.
136821	(Qgnutls): Rename from Qgnutls_dll.
136822	(Qlibxml2): Rename from Qlibxml2_dll.
136823	(Qzlib): Rename from Qzlib_dll.
136824	* src/w32select.c (Qutf_16le_dos): Rename from QUNICODE.
136825	* src/window.c (Qwindow__resize_root_window):
136826	Rename from Qwindow_resize_root_window.
136827	(Qwindow__resize_root_window_vertically):
136828	Rename from Qwindow_resize_root_window_vertically.
136829	(Qwindow__sanitize_window_sizes):
136830	Rename from Qwindow_sanitize_window_sizes.
136831	(Qwindow__pixel_to_total): Rename from Qwindow_pixel_to_total.
136832	* src/xdisp.c (Qredisplay_internal_xC_functionx):
136833	Rename from Qredisplay_internal.
136834	* src/xfns.c (Qfont_parameter): Rename from Qfont_param.
136835	* src/xselect.c (Q_EMACS_TMP_): Rename from QEMACS_TMP.
136836
1368372016-03-26  Paul Eggert  <eggert@cs.ucla.edu>
136838
136839	func-arity minor improvements
136840
136841	* src/bytecode.c (get_byte_code_arity): Omit unnecessary
136842	runtime test for integer argument, unless debugging.
136843	Use EMACS_INT for Emacs integers.
136844	* src/eval.c (Ffunc_arity): Omit unused locals.
136845	Avoid side effects in ‘if’ expr.
136846	(lambda_arity): Use bool for boolean, and EMACS_INT for Emacs ints.
136847
1368482016-03-26  John Wiegley  <johnw@newartisans.com>
136849
136850	Restore the fix to bug#18527 from commit d6868025
136851
1368522016-03-26  Martin Rudalics  <rudalics@gmx.at>
136853
136854	Safely run window size change functions
136855
136856	* src/window.c (run_window_size_change_functions): Use
136857	safe_call1 when running a size change function.
136858	(grow_mini_window, shrink_mini_window): Report error when
136859	minibuffer window cannot be resized.
136860
1368612016-03-26  Paul Pogonyshev  <pogonyshev@gmail.com>
136862
136863	Implement 'func-arity'
136864
136865	* src/eval.c (Ffunc_arity, lambda_arity): New functions.
136866	* src/bytecode.c (get_byte_code_arity): New function.
136867	* src/lisp.h (get_byte_code_arity): Add prototype.
136868
136869	* doc/lispref/functions.texi (What Is a Function): Document
136870	'func-arity'.
136871
136872	* etc/NEWS: Mention 'func-arity'.
136873
136874	* test/src/fns-tests.el (fns-tests-func-arity): New test set.
136875
1368762016-03-25  Alan Mackenzie  <acm@muc.de>
136877
136878	Fix absence of c-noise-macro-name-re, etc., in languages which don't use it
136879
136880	* lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id, c-forward-type)
136881	(c-forward-declarator, c-forward-decl-or-cast-1, c-backward-over-enum-header)
136882	(c-guess-basic-syntax): Check c-opt-cpp-prefix before `looking-at'
136883	c-noise-macro-with-parens-name-re.
136884
136885	* lisp/progmodes/cc-fonts.el (c-complex-decl-matchers): The same as for
136886	cc-engine.el.
136887
136888	* lisp/progmodes/cc-mode.el (c-basic-common-init): Add call to
136889	`c-make-noise-macro-regexps'.
136890	(c-mode, c++-mode, objc-mode): Remove calls to `c-make-noise-macro-regexps'.
136891
136892	* lisp/progmodes/cc-vars.el (c-noise-macro-with-parens-name-re)
136893	(c-noise-macro-with-re): Initialize to "\\<\\>" rather than nil.
136894
1368952016-03-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
136896
136897	(shr-insert): Respect non-breaking space in non-<pre> text
136898
136899	* lisp/net/shr.el (shr-insert): Respect non-breaking space in
136900	non-<pre> text.
136901
1369022016-03-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
136903
136904	parse-times-string doc string clarification
136905
136906	* lisp/calendar/parse-time.el (parse-time-string): Note that
136907	we accept RFC2822 strings.
136908
1369092016-03-25  Marcin Borkowski  <mbork@mbork.pl>
136910
136911	Doc string fix
136912
136913	* lisp/calendar/parse-time.el (parse-time-tokenize): Clarify
136914	doc string and clean up code.
136915
1369162016-03-25  Michael Albinus  <michael.albinus@gmx.de>
136917
136918	Cleanup file notification code in Tramp
136919
136920	* lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
136921	Make `events' a list of symbols for "inotifywait".
136922	(tramp-sh-gvfs-monitor-dir-process-filter): Make event a list.
136923	Call `file-notify-handle-event' for better traces.
136924	(tramp-sh-inotifywait-process-filter): Check for expected events.
136925	Call `file-notify-handle-event' for better traces.
136926
1369272016-03-24  Michael Albinus  <michael.albinus@gmx.de>
136928
136929	Adapt filenotify-tests.el according latest tests
136930
136931	* test/lisp/filenotify-tests.el (file-notify-test02-events)
136932	(file-notify-test04-file-validity, file-notify-test05-dir-validity):
136933	Remove superfluous `read-event' calls.
136934	(file-notify-test02-events): Expect different events under MS
136935	Windows 7 and 10.
136936	(file-notify-test04-file-validity): Move `file-notify-valid-p'
136937	check up.
136938
1369392016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
136940
136941	Merge from origin/emacs-25
136942
136943	ad250f2 Sync with gnulib
136944	c0165ea Resurrect GNUS-NEWS autogeneration
136945
136946	# Conflicts:
136947	#	etc/GNUS-NEWS
136948	#	lisp/Makefile.in
136949
1369502016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
136951
136952	Merge from origin/emacs-25
136953
136954	e643977 Make `toggle-frame-maximized' respect the dock on OS X (bug#2...
136955	38a43f1 Fix bug in displaying header line with a box face
136956
1369572016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
136958
136959	* etc/NEWS: Use straight quotes.
136960
1369612016-03-23  Simen Heggestøyl  <simenheg@gmail.com>
136962
136963	Support completion of attribute values in CSS mode
136964
136965	* lisp/textmodes/css-mode.el (css-property-alist): New defconst
136966	holding CSS identifiers and the values they can have.
136967	(css-property-ids): Compute dynamically from `css-property-alist'.
136968	(css-value-class-alist): New defconst holding property value classes
136969	and their values.
136970	(css--property-value-cache): New variable providing a cache for
136971	`css--property-values'.
136972	(css--value-class-lookup): New function for computing a list of values
136973	in a value class.
136974	(css--property-values): New function for computing a list of possible
136975	values for a CSS property.
136976	(css--complete-property-value): New function for completing a property
136977	value.
136978	(css-completion-at-point): Add support for completing property values.
136979	* test/lisp/textmodes/css-mode-tests.el: New file.
136980
1369812016-03-22  Wilson Snyder  <wsnyder@wsnyder.org>
136982
136983	Sync with verilog-mode development tree.
136984
136985	* lisp/progmodes/verilog-mode.el (verilog-imenu-generic-expression,
136986	verilog-speedbar-initialize): Automatically add verilog-mode
136987	extensions when in speedbar mode, bug1045, bug1046.  Reported by
136988	David Shleifman.
136989	(verilog-mode-map): Move `verilog-star-comment' from M-* to C-c/ to
136990	avoid conflict with `pop-tag-mark'. Reported by Ian Perryman.
136991	(verilog-read-always-signals-recurse): Fix :: notation for
136992	auto-reset signals.  Reported by Andrew Jones.
136993	(verilog-font-lock-grouping-keywords-face): Fix highlighting of
136994	grouping keywords, bug1002. Reported by Paul Sargent.
136995	(verilog-save-font-no-change-functions): Commentary and fix
136996	pre-Emacs 21 behavior.
136997
1369982016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
136999
137000	Compute a better commit message for merges
137001
137002	Problem reported by David Engster in:
137003	https://lists.gnu.org/r/emacs-devel/2016-03/msg01270.html
137004	* admin/gitmerge.el (gitmerge-commit-message):
137005	Truncate the computed commit message to at most 72 characters per line.
137006	(gitmerge-maybe-resume): Don’t use "-" as the commit message for
137007	merges; use the computed commit message instead.
137008
1370092016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
137010
137011	* admin/gitmerge.el (gitmerge-skip-regexp): Add "no need to merge".
137012
1370132016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
137014
137015	Change do-not-merge pattern to "do not merge"
137016
137017	This should avoid the problem we recently had with
137018	automatically-generated merge messages, while still letting people
137019	specify commits not to merge.
137020	* admin/gitmerge.el (gitmerge-skip-regexp): Add "do not merge".
137021	(gitmerge-highlight-skip-regexp): Fold case when searching
137022	for gitmerge-skip-regexp.
137023
1370242016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
137025
137026	Merge from origin/emacs-25
137027
137028	91e6676 Fix an Isearch var to be a string (Bug#23038)
137029	76ef522 Fix (args-out-of-range 1) error in cursor-sensor--detect
137030
1370312016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
137032
137033	-
137034
137035	-
137036
1370372016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
137038
137039	Keep "merge" commits by default in gitmerge
137040
137041	* admin/gitmerge.el (gitmerge-skip-regexp): Omit "merge", as it
137042	causes false positives.  See:
137043	https://lists.gnu.org/r/emacs-devel/2016-03/msg01234.html
137044
1370452016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
137046
137047	Assume NON_BLOCKING_CONNECT (Bug#22946)
137048
137049	* lisp/proced.el (proced-signal-list): Omit comment about
137050	obsolete systems that do not support POSIX 1003.1-2001 signals.
137051	* src/process.c (NON_BLOCKING_CONNECT): Remove, since we can now
137052	assume POSIX 1003.1-2001 or better here.  Assume it’s defined.
137053	(connect_network_socket): Assume EINPROGRESS is defined,
137054	as that’s portable too now.
137055	(Fmake_network_process): Use bool for boolean.
137056
1370572016-03-21  Eli Zaretskii  <eliz@gnu.org>
137058
137059	Fix problems caused by new implementation of sub-word mode
137060
137061	* lisp/subr.el (forward-word-strictly, backward-word-strictly):
137062	New functions.
137063	(word-move-empty-char-table): New variable.
137064
137065	* etc/NEWS: Mention 'forward-word-strictly' and
137066	'backward-word-strictly'.
137067
137068	* doc/lispref/positions.texi (Word Motion): Document
137069	'find-word-boundary-function-table', 'forward-word-strictly', and
137070	'backward-word-strictly'.  (Bug#22560)
137071
137072	* src/syntax.c (syms_of_syntax)
137073	<find-word-boundary-function-table>: Doc fix.
137074
137075	* lisp/wdired.el (wdired-xcase-word):
137076	* lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
137077	(texinfo-copy-section-title, texinfo-start-menu-description)
137078	(texinfo-copy-menu-title, texinfo-specific-section-type)
137079	(texinfo-insert-node-lines, texinfo-copy-next-section-title):
137080	* lisp/textmodes/texinfo.el (texinfo-clone-environment)
137081	(texinfo-insert-@end):
137082	* lisp/textmodes/texinfmt.el (texinfo-format-scan)
137083	(texinfo-anchor, texinfo-multitable-widths)
137084	(texinfo-multitable-item):
137085	* lisp/textmodes/tex-mode.el (latex-env-before-change):
137086	* lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
137087	* lisp/skeleton.el (skeleton-insert):
137088	* lisp/simple.el (count-words):
137089	* lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
137090	(vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
137091	(vhdl-update-sensitivity-list, vhdl-template-block)
137092	(vhdl-template-break, vhdl-template-case, vhdl-template-default)
137093	(vhdl-template-default-indent, vhdl-template-for-loop)
137094	(vhdl-template-if-then-use, vhdl-template-bare-loop)
137095	(vhdl-template-nature, vhdl-template-procedural)
137096	(vhdl-template-process, vhdl-template-selected-signal-asst)
137097	(vhdl-template-type, vhdl-template-variable)
137098	(vhdl-template-while-loop, vhdl-beginning-of-block)
137099	(vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
137100	* lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
137101	(verilog-forward-sexp, verilog-beg-of-statement)
137102	(verilog-set-auto-endcomments, verilog-backward-token)
137103	(verilog-do-indent):
137104	* lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
137105	(vera-indent-block-closing):
137106	* lisp/progmodes/simula.el (simula-context)
137107	(simula-backward-up-level, simula-forward-down-level)
137108	(simula-previous-statement, simula-next-statement)
137109	(simula-skip-comment-backward, simula-calculate-indent)
137110	(simula-find-if, simula-electric-keyword):
137111	* lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
137112	* lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
137113	(ruby-smie--forward-token, ruby-smie--backward-token)
137114	(ruby-singleton-class-p, ruby-calculate-indent)
137115	(ruby-forward-sexp, ruby-backward-sexp):
137116	* lisp/progmodes/ps-mode.el (ps-run-goto-error):
137117	* lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
137118	(perl-syntax-propertize-special-constructs)
137119	(perl-backward-to-start-of-continued-exp):
137120	* lisp/progmodes/pascal.el (pascal-indent-declaration):
137121	* lisp/progmodes/octave.el (octave-function-file-p):
137122	* lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
137123	* lisp/progmodes/js.el (js--forward-function-decl):
137124	* lisp/progmodes/idlwave.el (idlwave-show-begin-check)
137125	(idlwave-beginning-of-block, idlwave-end-of-block)
137126	(idlwave-block-jump-out, idlwave-determine-class):
137127	* lisp/progmodes/icon.el (icon-is-continuation-line)
137128	(icon-backward-to-start-of-continued-exp, end-of-icon-defun):
137129	* lisp/progmodes/hideif.el (hide-ifdef-define):
137130	* lisp/progmodes/f90.el (f90-change-keywords):
137131	* lisp/progmodes/cperl-mode.el (cperl-electric-pod)
137132	(cperl-linefeed, cperl-electric-terminator)
137133	(cperl-find-pods-heres, cperl-fix-line-spacing)
137134	(cperl-invert-if-unless):
137135	* lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
137136	* lisp/progmodes/cc-align.el (c-lineup-java-inher):
137137	* lisp/progmodes/ada-mode.el (ada-compile-goto-error)
137138	(ada-adjust-case-skeleton, ada-create-case-exception)
137139	(ada-create-case-exception-substring)
137140	(ada-case-read-exceptions-from-file, ada-after-keyword-p)
137141	(ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
137142	(ada-get-indent-if, ada-get-indent-block-start)
137143	(ada-get-indent-loop, ada-get-indent-type)
137144	(ada-search-prev-end-stmt, ada-check-defun-name)
137145	(ada-goto-decl-start, ada-goto-matching-start)
137146	(ada-goto-matching-end, ada-looking-at-semi-or)
137147	(ada-looking-at-semi-private, ada-in-paramlist-p)
137148	(ada-search-ignore-complex-boolean, ada-move-to-start)
137149	(ada-move-to-end, ada-which-function, ada-gen-treat-proc):
137150	* lisp/net/quickurl.el (quickurl-grab-url):
137151	* lisp/mail/sendmail.el (mail-do-fcc):
137152	* lisp/mail/rmail.el (rmail-resend):
137153	* lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
137154	* lisp/mail/mail-extr.el (mail-extract-address-components):
137155	* lisp/json.el (json-read-keyword):
137156	* lisp/files.el (insert-directory):
137157	* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
137158	* lisp/completion.el (symbol-under-point, symbol-before-point)
137159	(symbol-before-point-for-complete, next-cdabbrev)
137160	(add-completions-from-c-buffer):
137161	* lisp/cedet/semantic/texi.el (semantic-up-context)
137162	(semantic-beginning-of-context):
137163	* lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
137164	use 'forward-word-strictly' and 'backward-word-strictly' instead
137165	of 'forward-word' and 'backward-word'.
137166
137167	[This reapplies commit c1d32a65372c72d7de4808d620eefd3214a8e92a,
137168	which was inadvertently lost by merge commit
137169	c71e7cc113ed0d5f01aaa2e441a3e3c9fbeb9fa5.]
137170
1371712016-03-21  Paul Eggert  <eggert@cs.ucla.edu>
137172
137173	* etc/TODO: Minor quoting and grammar fixes.
137174
137175	[This reapplies commit 433407d8230a8a256b26c6c7615d3921b43f59ce,
137176	which was inadvertently lost by merge commit
137177	5ab243f40e4db91586ff74b01a775a5218a1d5be.]
137178
1371792016-03-21  Alan Mackenzie  <acm@muc.de>
137180
137181	Don't confuse "::" with ":" when trying to parse member initializers.
137182
137183	* lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
137184	more robustly for ":" token when searching backwards for it.
137185
137186	* lisp/progmodes/cc-langs.el (c-:$-multichar-token-regexp): New
137187	language variable.
137188
137189	[This reapplies commit 9e5452f7166e3634f2d8e943815ed722e1672714,
137190	which was inadvertently lost by merge commit
137191	7823745acbe9b87eea2db4ef434e379fc903ec35.]
137192
1371932016-03-21  Eli Zaretskii  <eliz@gnu.org>
137194
137195	Ensure positive number of glyphs for margins of positive width
137196
137197	* src/dispnew.c (margin_glyphs_to_reserve): Always return a
137198	positive value when a non-zero width of the marginal area was
137199	requested.  (Bug#22356)
137200
137201	[This reapplies commit 740849fe986b62a839bce4bbf67d0036fc1be0b9,
137202	which was inadvertently lost by merge commit
137203	7823745acbe9b87eea2db4ef434e379fc903ec35.]
137204
1372052016-03-21  Alan Mackenzie  <acm@muc.de>
137206
137207	In comment-dwim with style `extra-line', respect indent-tabs-mode.
137208
137209	This fixes bug #22369.
137210
137211	* lisp/newcomment.el (comment-make-bol-ws): New function.
137212	(comment-make-extra-lines): Use new function instead of a crude `make-string'.
137213
137214	[This reapplies commit 016b3d5894b8c424eab262aeefc646c6cd03a70a,
137215	which was inadvertently lost by merge commit
137216	7823745acbe9b87eea2db4ef434e379fc903ec35.]
137217
1372182016-03-21  Eli Zaretskii  <eliz@gnu.org>
137219
137220	Merge doc fixes for 'random' lost in previous merge
137221
137222	[This reapplies part of commit
137223	3ffe81e245d854a694ae1734f1b6a995bdc5e724,
137224	which was inadvertently lost by merge commit
137225	7823745acbe9b87eea2db4ef434e379fc903ec35.]
137226	(Bug#22202)
137227
1372282016-03-21  Eli Zaretskii  <eliz@gnu.org>
137229
137230	Unhide the --no-line-directive option to 'etags'
137231
137232	* lib-src/etags.c (print_help): Un-undocument the --no-line-directive
137233	option.  (Bug#22306)
137234
137235	* doc/man/etags.1: Document the --no-line-directive option.
137236
137237	[This reapplies commit fee0526a189f43e8470d78e8374bd425890fbe6f,
137238	which was inadvertently lost by merge commit
137239	7823745acbe9b87eea2db4ef434e379fc903ec35.]
137240
1372412016-03-21  Alan J Third  <alan@idiocy.org>  (tiny change)
137242
137243	Fix picture-mode wrt double-width characters
137244
137245	* lisp/textmodes/picture.el (picture-insert): Check the width of
137246	the character being replaced, not just that of the replacement.
137247	(Bug#1808)
137248
137249	[This reapplies commit b70dba4e18514411ed38b5bbb846558158842ace,
137250	which was inadvertently lost by merge commit
137251	7823745acbe9b87eea2db4ef434e379fc903ec35.]
137252
1372532016-03-20  Martin Rudalics  <rudalics@gmx.at>
137254
137255	Resurrect earlier fix of resize_frame_windows
137256
137257	* src/window.c (resize_frame_windows): Resurrect earlier fix for
137258	calculating the number of columns of the minibuffer window which
137259	was lost in subsequent merges.
137260
1372612016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137262
137263	Move the cert files to the data directory
137264
1372652016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137266
137267	Further empty <li> tweaks
137268
137269	* lisp/net/shr.el (shr-tag-li): When showing several empty
137270	<li> elements, ensure that they really get inserted on a new line.
137271
1372722016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137273
137274	Don't remove too much white space at the end of documents
137275
137276	* lisp/net/shr.el (shr--remove-blank-lines-at-the-end): Don't
137277	remove too much white space -- leave it on the last line (in
137278	case there's a background color).
137279
1372802016-03-20  Alan Mackenzie  <acm@muc.de>
137281
137282	Amend parse-partial-sexp correctly to handle two character comment delimiters
137283
137284	Do this by adding a new field to the parser state: the syntax of the last
137285	character scanned, should that be the first char of a (potential) two char
137286	construct, nil otherwise.
137287	This should make the parser state complete.
137288	Also document element 9 of the parser state.  Also refactor the code a bit.
137289
137290	* src/syntax.c (struct lisp_parse_state): Add a new field.
137291	(SYNTAX_FLAGS_COMSTARTEND_FIRST): New function.
137292	(internalize_parse_state): New function, extracted from scan_sexps_forward.
137293	(back_comment): Call internalize_parse_state.
137294	(forw_comment): Return the syntax of the last character scanned to the caller
137295	when that character might be the first of a two character construct.
137296	(Fforward_comment, scan_lists): New dummy variables, passed to forw_comment.
137297	(scan_sexps_forward): Remove a redundant state parameter.  Access all `state'
137298	information via the address parameter `state'.  Remove the code which converts
137299	from external to internal form of `state'.  Access buffer contents only from
137300	`from' onwards.  Reformulate code at the top of the main loop correctly to
137301	recognize comment openers when starting in the middle of one.  Call
137302	forw_comment with extra argument (for return of syntax value of possible first
137303	char of a two char construct).
137304	(Fparse_partial_sexp): Document elements 9, 10 of the parser state in the
137305	doc string.  Clarify the doc string in general.  Call
137306	internalize_parse_state.  Take account of the new elements when consing up the
137307	output parser state.
137308
137309	* doc/lispref/syntax.texi: (Parser State): Document element 9 and the new
137310	element 10.  Minor wording corrections (remove reference to "trivial
137311	cases").
137312	(Low Level Parsing): Minor corrections.
137313
137314	* etc/NEWS: Note new element 10, and documentation of element 9 of parser
137315	state.
137316
1373172016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137318
137319	Allow the shr test files to have trailing blank space.
137320
137321	* .gitattributes: Allow the shr test files to have trailing
137322	blank space.
137323
1373242016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137325
137326	Add tests for empty <ul><li>
137327
1373282016-03-20  Paul Eggert  <eggert@cs.ucla.edu>
137329
137330	* src/alloc.c (purecopy): Use AUTO_STRING.
137331
1373322016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137333
137334	Ignore invalid base64 encoded embedded images
137335
137336	* lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
137337	encoded embedded images (bug#22928).
137338
1373392016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137340
137341	Render empty <ul><li><ul> correctly
137342
137343	* lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
137344	correctly (bug#22964).
137345
1373462016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137347
137348	Fix <p> and <div> newlines with or without <li> in shr
137349
137350	* lisp/net/shr.el (shr-ensure-newline): Respect that we're in
137351	a <li>, if we are, and don't insert newlines there.
137352	(shr-ensure-paragraph): When mixing newlines and paragraph
137353	ensurements, don't insert too many blank lines.
137354	(shr-tag-div): A <div> shouldn't introduce a paragraph, but a
137355	new line.
137356
1373572016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137358
137359	Add more shr HTML rendering tests
137360
137361	Add a test harness for shr HTML rendering and one test
137362
1373632016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137364
137365	Remove code left over from when overlays were used for padding
137366
137367	* lisp/net/shr.el (shr-previous-newline-padding-width): Remove.
137368	(shr-remove-trailing-whitespace): Ditto.
137369	(shr-insert-document): Don't call them.
137370
1373712016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137372
137373	Remove trailing blank lines in shr
137374
137375	* lisp/net/shr.el (shr--remove-blank-lines-at-the-end): New function.
137376	(shr-insert-document): Use it to remove trailing blank lines
137377	at the end of documents, since these never seem to be very useful.
137378
1373792016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137380
137381	Don't bug out on nil `patch-buf' arguments
137382
137383	* lisp/vc/ediff.el (ediff-patch-file): Don't bug out on nil
137384	`patch-buf' arguments.
137385
1373862016-03-20  Ernest Adrogué  <nfdisco@gmail.com>
137387
137388	Add a Catalan language environment
137389
137390	* lisp/international/mule-cmds.el (locale-language-names): Map locale
137391	  language name `ca' to language environment `Catalan'.
137392
137393	* lisp/language/european.el: Add definition of language
137394	environment for the Catalan language.
137395
137396	* lisp/leim/quail/latin-pre.el: Add quail rule to the
137397	`catalan-prefix' input method to support input of middle dot
137398	characters through composition (bug#18279).
137399
1374002016-03-19  Paul Eggert  <eggert@cs.ucla.edu>
137401
137402	No need to block input when reading directories
137403
137404	* src/dired.c: Don’t include blockinput.h.
137405	(open_directory, directory_files_internal_unwind)
137406	(directory_files_internal, file_attributes):
137407	Don’t block input here, as the reasons for blocking input should
137408	no longer apply.  See blockinput.h FIXME.  (Bug#22996).
137409
1374102016-03-19  Oscar Fuentes  <ofv@wanadoo.es>
137411
137412	* lisp/vc/vc-hooks.el: Fix typo
137413
1374142016-03-19  Fabrice Popineau  <fabrice.popineau@gmail.com>
137415
137416	Improve w32notify notifications
137417
137418	* src/w32notify.c (DIRWATCH_BUFFER_SIZE): New macro.
137419	(struct notification): 'terminate' is now a HANDLE.
137420	(send_notifications): Argument is now a pointer to a
137421	notification.  Don't loop waiting for the notification to be
137422	acknowledged by the main thread; instead, just add the
137423	notification to the linked list of notifications waiting to be
137424	acknowledged.
137425	(watch_end): Don't close the directory handle.
137426	(watch_completion): Allocate a new notification structure to be
137427	added to the notifications set.  Call ReadDirectoryChangesW
137428	immediately after adding the new notification, and before sending
137429	a message to the main thread about them.
137430	(watch_worker): Don't loop calling ReadDirectoryChangesW; instead,
137431	call it just once -- it will be called again in watch_completion.
137432	Loop waiting for the main thread's indication to terminate.
137433	(start_watching): Create the event to be used to indicate to the
137434	worker thread that its should terminate.
137435	(remove_watch): Indicate to the worker thread that it should
137436	terminate.
137437	* src/w32term.c (queue_notifications): Loop over all the
137438	notifications in the linked list, processing all of them in one
137439	go.
137440	* src/w32inevt.c (handle_file_notifications): Loop over all the
137441	notifications in the linked list.
137442	* src/w32xfns.c (init_crit): Initialize the linked list of file
137443	notifications.
137444	(delete_crit): Free the linked list of file notifications,
137445	including any unprocessed notifications left in it.
137446	* src/w32term.h (struct notifications_se): New struct.
137447
137448	* test/lisp/filenotify-tests.el (file-notify-test02-events)
137449	(file-notify-test05-dir-validity): Add read-event calls to
137450	facilitate event recognition by the main thread in batch mode.
137451
1374522016-03-17  Sam Steingold  <sds@gnu.org>
137453
137454	make `vc-log-operation' buffer local to allow multiple simultaneous editing
137455
1374562016-03-17  Glenn Morris  <rgm@gnu.org>
137457
137458	Simplify some rococo Gnus code that loads or tests for other libraries.
137459
137460	* lisp/gnus/gnus-art.el (gnus-treat-ansi-sequences): Simplify default.
137461	* lisp/gnus/mml-smime.el (epg): Simply require it.
137462	(mml-smime-use): Simplify the default.  Doc fix.
137463	* lisp/gnus/mml2015.el (epg-config): Require it.
137464	(mml2015-use): Simplify the default.
137465	* lisp/gnus/smime.el (password-cache): Simply require it.
137466	(password-read-and-add): Remove declaration.
137467
1374682016-03-16  Glenn Morris  <rgm@gnu.org>
137469
137470	* test/lisp/dabbrev-tests.el: Merge fix: move here from test/automated.
137471
1374722016-03-16  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
137473	    Alex Harsanyi  <AlexHarsanyi@gmail.com>
137474
137475	Sync with soap-client repository, version 3.1.1
137476
137477	* lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix error
137478	message.
137479	(soap-find-port): Delete trailing whitespace.
137480	(soap-find-operation): Fix documentation and rename parameter.
137481	(soap-find-port): Likewise.
137482	(soap-operation-arity): Likewise.
137483
137484	* lisp/net/soap-client.el: Update copyright years.
137485	(soap-warning): Fix docstring quoting.
137486	(soap-decode-date-time): Likewise.
137487	(soap-validate-xs-simple-type): Remove tabs for indentation.
137488	* lisp/net/soap-inspect.el: Update copyright years.
137489
137490	* lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
137491	assume xsd:base64Binary values are UTF-8 strings.
137492	(soap-decode-xs-basic-type): Likewise.
137493	(soap-invoke): Document xsd:base64Binary handling.
137494
137495	* lisp/net/soap-client.el (soap-find-port, soap-find-operation)
137496	(soap-operation-arity): new defuns
137497	(soap-invoke-internal): use soap-find-port, soap-find-operation.
137498
1374992016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
137500
137501	Merge from gnulib
137502
137503	This incorporates:
137504	2016-03-15 std-gnu11: improve clang support
137505	* m4/std-gnu11.m4: Copy from gnulib.
137506
1375072016-03-14  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137508
137509	Disable MOVE more for Dovecot
137510
137511	* lisp/gnus/nnimap.el (nnimap-process-expiry-targets): Also
137512	disable MOVE when expirying.
137513	(nnimap-split-incoming-mail): And when splitting mail.
137514
1375152016-03-14  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137516
137517	Don't use MOVE on Dovecot
137518
137519	* lisp/gnus/nnimap.el (nnimap-request-move-article): Don't use
137520	MOVE on Dovecot, since it's broken in many versions.
137521	(nnimap-quirks): Mark MOVE on Dovecot as non-working.
137522
1375232016-03-13  Paul Eggert  <eggert@cs.ucla.edu>
137524
137525	Improve diff hunk headers when maintaining Emacs
137526
137527	* .gitattributes: Improve diff hunk header support for makefiles,
137528	shell scripts, Ada, C, C++, Objective C, HTML, SHTML, XML, Java,
137529	Perl, PHP, Python, Ruby, and TeX, all of which are used in Emacs
137530	somewhere (sometimes just in test cases).
137531	* autogen.sh: Add regexes for makefiles and shell scripts.
137532
1375332016-03-12  Eli Zaretskii  <eliz@gnu.org>
137534
137535	Update handling of <bdo> per Unicode 9.0
137536
137537	* lisp/net/shr.el (shr-tag-bdo): Wrap in FSI..PDI as well, per
137538	Unicode 9.0 changes in UAX#9, paragraph 2.7.
137539
1375402016-03-11  John Wiegley  <johnw@newartisans.com>
137541
137542	Merge from origin/emacs-25
137543
137544	facb5e2 Update Emacs manual section related to character folding
137545	4efea8e ; * etc/DEBUG: Fix a typo.  (Bug#22984)
137546	f8df21b Update admin/notes/unicode
137547	950be68 Add symref-filepattern entries for c?perl-mode
137548	8b8a6ad Don't use XRANDR 1.3 extensions if the server doesn't support them.
137549	985dacf ; NEWS update for the last change in etags
137550	741a6f8 Sync with gnulib
137551	7352c6c Rework C source files to avoid ^(
137552	a589e9a By default, etags produces unqualified Perl tag names
137553	72c7438 Indent methods with keyword names correctly
137554	28532a9 Propertize character literals and special global variables
137555	        differently
137556	a7d6f39 ; Fix last change in NEWS
137557	83b2a20 Change how /etc/NEWS presents character folding
137558	b417c5a Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding
137559	        off by default""
137560	711ca36 Properly handle lambda as read function (bug 22961)
137561	1b9d616 Propertize operator symbol names with symbol syntax class
137562	9b16bc2 Stop recognizing :#{} as symbol in ruby-mode
137563	366ec77 Allow using the left shift operator without spaces on both sides
137564	02bf7cc Properly handle unquoting in wdired (bug 22938)
137565	16cf469 ; Spelling fix and tighten up comment
137566	f50bc04 Allow splat operator before percent literal
137567	991c801 Don't apply the return value of goto-char as syntax class
137568	6e63b3e Guard against nested percent literals
137569	066f3bc Recognize iuwu-mod after an escaped newline
137570	6f7a57c Fix symbolic mode string conversion for s and t
137571	50b9826 Update 'ucs-names' database
137572	993b2fb Improve doc string of 'shell-command'
137573	b71c717 Make the code in movemail_strftime more general
137574	cc057e4 Speed up redisplay of binary files with long series of nulls
137575	e51b27e Remove the highlighting support for quoting 'like this' inside
137576	        Lisp docstrings
137577	b1abce1 Restore leading space in movemail pop output
137578	98b8d44 Fix bidi-paragraph-direction in Rmail view buffer
137579	dc9d837 Don't misindent computed property generator methods
137580	7923112 Fix mbox files produced by movemail on MS-Windows
137581	c45a1ca doc string file descriptor exhaustion fix
137582	265141b Fix Bug#22814
137583
1375842016-03-11  John Wiegley  <johnw@newartisans.com>
137585
137586	Merge from origin/emacs-25
137587
137588	620951f Fix previous fix of enlarge-/shrink-window
137589	2e78353 * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
137590	66d2717 Complete temperature units in calc-convert-temperature
137591	dbb02bf Make sure to use case-sensitive search
137592	8b01e69 Prevent infinite loop on not-well-formed xml. (Bug#16344)
137593	100346a Add the missing test case for the previous patch
137594	5aba61e Use the correct dabbrev expansion
137595
1375962016-03-11  Michael Albinus  <michael.albinus@gmx.de>
137597
137598	Remove compat code in Tramp
137599
137600	* lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
137601	Remove compat code.
137602
1376032016-03-10  Stefan Monnier  <monnier@iro.umontreal.ca>
137604
137605	* lisp/textmodes/tex-mode.el: Complete local envs.  Use #'.
137606
137607	Use #' for function names.
137608	(latex-complete-envnames): Include existing environments in
137609	current buffer.
137610	(latex-insert-block): Use latex-complete-envnames.
137611	(tildify-foreach-ignore-environments): Declare.
137612
1376132016-03-10  Alain Schneble  <a.s@realize.ch>
137614
137615	Fix asynchronous TLS connections on MS-Windows
137616
137617	* src/w32.c (sys_write): Don't switch the socket to blocking mode
137618	if the connection attempt is in progress.  Instead, return either
137619	EWOULDBLOCK immediately if the connection is in progress, or the
137620	error code produced by '_sys_wait_connect' if the connection
137621	failed.  Switching the socket to blocking mode was found to
137622	interfere with GnuTLS handshake.  (Bug#22789)
137623
1376242016-03-10  Alan Mackenzie  <acm@muc.de>
137625
137626	Clarify the documentation of nested comments.
137627
137628	* doc/lispref/syntax.texi (Syntax Flags): State that only comments of the same
137629	style are recognized inside nestable comments.
137630	(Low-Level Parsing): Clarify that parsing will stop after the start or end of
137631	UNNESTED comments.
137632
1376332016-03-10  Nicolas Richard  <youngfrog@members.fsf.org>
137634
137635	Add new function display-buffer-reuse-mode-window
137636
137637	* lisp/window.el (display-buffer-reuse-mode-window): New function.
137638	* doc/lispref/windows.texi (Display Action Functions): Document it.
137639
1376402016-03-09  Paul Eggert  <eggert@cs.ucla.edu>
137641
137642	Minor fixes for getaddrinfo_a usage
137643
137644	* src/process.c (Fdelete_process): Check gai_cancel return value.
137645	That way, there’s no need to invoke gai_error.  Check gai_suspend
137646	return value.
137647	(Fmake_network_process): Don’t assume gai_strerror returns a UTF-8
137648	string.  Simplify call to connect_network_socket.
137649	(check_for_dns): Avoid unnecessary initialization of local.
137650
1376512016-03-09  Sam Steingold  <sds@gnu.org>
137652
137653	declare `rmail-mime-entity-truncated' and `rmail-mime-render-html-function'
137654
137655	The former avoids a compiler warning, the latter fixes a bug whereas
137656	the variable is compiled as lexical instead of dynamic.
137657
1376582016-03-08  Paul Eggert  <eggert@cs.ucla.edu>
137659
137660	Pacify --enable-gcc-warnings
137661
137662	* src/xfns.c (x_create_tip_frame): Omit unused local.
137663	(Fx_show_tip): Don’t jump over auto initialization.
137664
1376652016-03-07  Martin Rudalics  <rudalics@gmx.at>
137666
137667	Optionally reuse tooltip frames instead of deleting/recreating them.
137668
137669	* src/frame.c (tooltip_reuse_hidden_frame): New option.
137670	* src/w32fns.c (x_create_tip_frame): Remove argument TEXT.  Fix
137671	handling of dividers.
137672	(x_hide_tip): New function.
137673	(Fx_show_tip): Try to reuse old tooltip frame when
137674	`tooltip-reuse-hidden-frame' is non-nil and frame parameters
137675	have not changed.  Insert STRING here instead of passing it to
137676	x_create_tip_frame.  Compute size of tooltip window with
137677	Fwindow_text_pixel_size.  Obey Vw32_tooltip_extra_pixels when
137678	padding tooltip window.
137679	(Fx_hide_tip): Call x_hide_tip.
137680	(Vw32_tooltip_extra_pixels): New variable.
137681	* src/xdisp.c (Fwindow_text_pixel_size): Don't return negative y
137682	value.  Fix doc-string.
137683	* src/xfns.c (x_create_tip_frame): Remove argument TEXT.  Call
137684	make_frame with mini_p argument false.
137685	(x_hide_tip): New function.
137686	(Fx_show_tip): Try to reuse old tooltip frame when
137687	`tooltip-reuse-hidden-frame' is non-nil and frame parameters
137688	have not changed.  Insert STRING here instead of passing it to
137689	x_create_tip_frame.  Compute size of tooltip window with
137690	Fwindow_text_pixel_size.
137691	(Fx_hide_tip): Call x_hide_tip.
137692	* lisp/cus-start.el (tooltip-reuse-hidden-frame): Add
137693	customization entry.
137694
1376952016-03-07  Paul Eggert  <eggert@cs.ucla.edu>
137696
137697	Assume getaddrinfo in C code
137698
137699	* admin/CPP-DEFINES, configure.ac: Remove HAVE_GETADDRINFO, HAVE_H_ERRNO.
137700	All uses removed.
137701	* doc/lispref/processes.texi (Network, Network Processes), etc/NEWS:
137702	Say that port numbers can be integer strings.
137703	* lib-src/pop.c (h_errno) [!WINDOWSNT && !HAVE_H_ERRNO]: Remove decl.
137704	(socket_connection): Assume HAVE_GETADDRINFO.
137705	* lisp/mpc.el (mpc--proc-connect):
137706	* lisp/net/network-stream.el (open-network-stream):
137707	It’s now OK to use integer strings as port numbers.
137708	* src/process.c (conv_numerical_to_lisp) [!HAVE_GETADDRINFO]: Remove.
137709	(Fmake_network_process): Assume HAVE_GETADDRINFO.
137710
1377112016-03-07  Paul Eggert  <eggert@cs.ucla.edu>
137712
137713	Remove support for IRIX
137714
137715	The IRIX port wasn’t really working anyway, and the code was
137716	getting in the way of other changes (e.g., getaddrinfo fixes).
137717	IRIX’s supplier dropped support for IRIX in 2013.
137718	* admin/CPP-DEFINES:
137719	* configure.ac (opsys):
137720	* doc/lispref/os.texi (System Environment):
137721	* etc/MACHINES, etc/PROBLEMS:
137722	* lisp/find-dired.el (find-grep-options):
137723	* lisp/lpr.el (lpr-lp-system):
137724	* lisp/ls-lisp.el (ls-lisp-emulation):
137725	* lisp/mail/rmail.el (rmail-spool-directory):
137726	* lisp/net/net-utils.el (ping-program-options):
137727	* lisp/progmodes/gud.el (gud-irix-p, gud-dbx-use-stopformat-p):
137728	* lisp/progmodes/ps-mode.el (ps-mode-print-function):
137729	* src/conf_post.h [IRIX6_5]:
137730	* src/emacs.c (Vsystem_type):
137731	* src/filelock.c (get_boot_time_1):
137732	* src/process.c (process_send_signal):
137733	* src/unexelf.c (unexec):
137734	Omit IRIX-specific code and/or documentation.
137735	* configure.ac (NON_GCC_TEST_OPTIONS, IRIX6_5, PREFER_VSUSP):
137736	Remove.  All uses removed.
137737	* etc/NEWS: Document the change.
137738
1377392016-03-06  John Wiegley  <johnw@newartisans.com>
137740
137741	Revert "Use colors in the VC mode lines"
137742
137743	This reverts commit 2621c293d82c15c00d9e73a8db75d70da7d0a23b.
137744
1377452016-03-06  Ken Brown  <kbrown@cornell.edu>
137746
137747	Fix Cygwin-w32 build
137748
137749	* src/w32fns.c (funhook, setup_w32_kbdhook, remove_w32_kbdhook):
137750	Define only if WINDOWSNT, and update all uses accordingly.
137751	* src/w32term.h (check_w32_winkey_state, setup_w32_kbdhook)
137752	(remove_w32_kbdhook): Declare only if WINDOWSNT.
137753	(w32_kbdhook_active): Define as 0 if not WINDOWSNT.
137754
1377552016-03-06  Eli Zaretskii  <eliz@gnu.org>
137756
137757	Unbreak the MinGW64 build
137758
137759	* nt/inc/ms-w32.h [MINGW_W64]: Undefine HAVE_GAI_STRERROR.  See
137760	https://lists.gnu.org/r/emacs-devel/2016-03/msg00130.html
137761	for the details.  Reported by Angelo Graziosi
137762	<angelo.graziosi@alice.it>.
137763
1377642016-03-06  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137765
137766	Don't signal errors on E_AGAIN
137767
137768	* src/gnutls.c (Fgnutls_errorp): Qgnutls_e_again is not an
137769	error now that TLS is async.
137770
1377712016-03-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137772
137773	Allow making TLS negotiation blocking
137774
137775	* lisp/net/gnutls.el (gnutls-negotiate): Make negotiation blocking.
137776
137777	* src/gnutls.c (Fgnutls_boot): Provide a new keyword,
137778	:complete-negotiation, to specify that we want complete
137779	negotiation even if the socket is non-blocking.
137780	(gnutls_try_handshake): Complete negotiation if given that keyword.
137781
137782	* src/process.h (L): Added gnutls_complete_negotiation_p.
137783
1377842016-03-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
137785
137786	Don't run ipv6 test on systems without ipv6
137787
137788	* test/lisp/net/network-stream-tests.el
137789	(connect-to-tls-ipv6-nowait): Skip on systems without ipv6.
137790
1377912016-03-05  Eli Zaretskii  <eliz@gnu.org>
137792
137793	Implement getaddrinfo fallback for MS-Windows
137794
137795	See https://lists.gnu.org/r/emacs-devel/2016-02/msg01602.html
137796	for more details.
137797
137798	* nt/mingw-cfg.site (ac_cv_func_getaddrinfo)
137799	(ac_cv_func_gai_strerror): Set to "yes", as the configure script's
137800	test program is not smart enough to auto-detect these.
137801	* nt/inc/sys/socket.h (getaddrinfo, freeaddrinfo): Redirect to
137802	sys_getaddrinfo and sys_freeaddrinfo.  Provide prototypes for
137803	sys_getaddrinfo and sys_freeaddrinfo.
137804
137805	* src/w32.c (init_winsock): Try loading getaddrinfo and
137806	freeaddrinfo from ws2_32.dll.
137807	(sys_getaddrinfo, sys_freeaddrinfo): New functions.
137808
137809	* lib-src/pop.c [WINDOWSNT]: Include winsock2.h, not winsock.h,
137810	and also ws2tcpip.h.
137811	(getaddrinfo, freeaddrinfo) [WINDOWSNT]: Redirect to
137812	sys_getaddrinfo and sys_freeaddrinfo, respectively.
137813	(load_ws2, sys_getaddrinfo, sys_freeaddrinfo) [WINDOWSNT]: New
137814	functions.
137815
1378162016-03-04  Glenn Morris  <rgm@gnu.org>
137817
137818	* lisp/files.el: Fix recent typo.
137819
137820	* lisp/subr.el (read-multiple-choice): Avoid free variable.
137821
137822	* doc/lispref/files.texi (File Attributes): Fix typo.
137823
1378242016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
137825
137826	Make the describe-key prompts clearer
137827
137828	* lisp/help.el (describe-key-briefly): Make the prompt clearer
137829	(bug#14854).
137830	(describe-key): Ditto.
137831
1378322016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
137833
137834	Allow scrolling while querying multiple choice
137835
137836	* lisp/subr.el (read-multiple-choice): Allow scrolling the
137837	buffer while querying (bug#22827).
137838
1378392016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
137840
137841	Add accessors for `file-attributes'
137842
137843	* doc/lispref/files.texi (File Attributes): Mention the accessors.
137844
137845	* lisp/files.el (file-attribute-type)
137846	(file-attribute-link-number, file-attribute-user-id)
137847	(file-attribute-group-id, file-attribute-access-time)
137848	(file-attribute-modification-time)
137849	(file-attribute-change-time, file-attribute-size)
137850	(file-attribute-modes, file-attribute-inode-number)
137851	(file-attribute-device-number): New functions.
137852
137853	* src/dired.c (Ffile_attributes): Mention the accessors (bug#22890).
137854
1378552016-03-04  Michael Albinus  <michael.albinus@gmx.de>
137856
137857	Fix Bug#22814
137858
137859	* lisp/autorevert.el (global-auto-revert-mode): Do not set
137860	`auto-revert-use-notify' to nil.
137861
137862	* etc/NEWS: Mention this.
137863
137864	* etc/PROBLEMS: Remove problem Bug#22814.
137865
137866	* src/kqueue.c: Include <sys/resource.h>.
137867	(Fkqueue_add_watch): Limit the number of used file descriptors.
137868	(Bug#22814)
137869
137870	* test/lisp/filenotify-tests.el (file-notify--test-remote-enabled)
137871	(file-notify-test00-availability, file-notify-test01-add-watch)
137872	(file-notify-test02-events, file-notify-test06-many-events):
137873	Use #' read syntax for functions.
137874	(file-notify-test05-dir-validity)
137875	(file-notify-test06-many-events): Simplify directory creation.
137876	(file-notify-test09-sufficient-ressources): New test.
137877
1378782016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
137879
137880	Fix insertion of edited servers in the dribble file
137881
137882	* lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
137883	insert explicit newlines, because they're quoted (bug#22903).
137884
1378852016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
137886
137887	Move cl-seq-tests to the right place after the merge
137888
137889	Move cl-seq-tests to the right place after the merge
137890
1378912016-03-03  John Wiegley  <johnw@newartisans.com>
137892
137893	Merge from origin/emacs-25
137894
137895	d6f6b7d * etc/AUTHORS: Update the AUTHORS file
137896	5cf7c39 authors.el updates
137897	a26f193 ; fix changelog entries
137898	fbc85c7 ; make change-history-commit
137899	06da00c Fix Bug#22859
137900	ab30bf5 ; * src/w32proc.c: Update the commentary to sys_select.
137901	1481029 Fix reordering of bidi text in an isolate inside an override
137902	60e0596 Document c-guess-basic-syntax in the CC Mode manual.
137903
1379042016-03-03  John Wiegley  <johnw@newartisans.com>
137905
137906	Merge from origin/emacs-25
137907
137908	f5d1435 Fix targets in test/automated/Makefile.in
137909
1379102016-03-03  John Wiegley  <johnw@newartisans.com>
137911
137912	Merge from origin/emacs-25
137913
137914	b6d6304 Comment on last change to define-derived-mode
137915
1379162016-03-03  John Wiegley  <johnw@newartisans.com>
137917
137918	Merge from origin/emacs-25
137919
137920	cb1e3da Also allow setting the paragraph direction to nil
137921	bbe8a89 Made the new OS X visible bell more visible.
137922
1379232016-03-03  John Wiegley  <johnw@newartisans.com>
137924
137925	Merge from origin/emacs-25
137926
137927	aae436e Uncomment the next-error-function integration in xref
137928	5f0d096 Remove the word "valid", to avoid ambiguity
137929
1379302016-03-03  John Wiegley  <johnw@newartisans.com>
137931
137932	Merge from origin/emacs-25
137933
137934	5a44bfe Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
137935	0d60bfc Fix ModelSim error parsing
137936
1379372016-03-03  John Wiegley  <johnw@newartisans.com>
137938
137939	Merge from origin/emacs-25
137940
137941	b13cab6 Add a eww command to toggle paragraph direction
137942	4e46128 * nextstep/WISHLIST: Merge into etc/TODO and remove.
137943	9e078e5 Fix char signedness issue in bidi code
137944	064adf6 * lib-src/pop.c (socket_connection): Fix format string.
137945	14060a9 Avoid inflooping in thing-at-point-looking-at
137946	098d47b * lisp/emacs-lisp/derived.el (define-derived-mode): Revert
137947	        indent change.
137948	b5db8e0 etc/PROBLEMS: Mention problems with using file descriptors
137949	ec10ef9 * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
137950	d2dd614 Remove unneeded workaround in xftfont.c
137951	9b7593c ; * etc/NEWS: Reflect latest changes in saveplace.
137952	fde0cd1 * lisp/saveplace.el (save-place-local-mode): New minor mode
137953	06a872b Fix redisplay on a TTY after 'make-frame'
137954	95f5a43 Make double-click-1 work with unbalanced parens in CC Mode.
137955	        Fixes bug#5560.
137956	7d206fc Input method polish-slash should not use keyboard translation
137957	8be32cf Fix an assertion
137958	040e0d6 Fix 'toggle-save-place'
137959	5244db2 * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
137960
1379612016-03-03  John Wiegley  <johnw@newartisans.com>
137962
137963	Merge from origin/emacs-25
137964
137965	e6a3819 Update HISTORY section in readme for the NextStep interface.
137966	f67f1ed ; * doc/lispref/modes.texi (Font Lock Basics): Minor rewording.
137967	7c81a0b Improve documentation of 'save-place-mode'
137968	cab3f0a Allocate glyph matrices for the initial frame
137969	e01c72f Fix white space in last checkin
137970	370eb67 Make `insert-pair' always leave the cursor where documented
137971	b594393 etc/NEWS: Mention the new second parameter to `package-install'
137972
1379732016-03-03  John Wiegley  <johnw@newartisans.com>
137974
137975	Merge from origin/emacs-25
137976
137977	bd58c13 Improve documentation of focus-related hooks
137978	00a4720 Further improve doc string of 'disable-point-adjustment'
137979	c582def Further adaptions in file-notify-tests.el for w32notify
137980	a1585e1 Don't bug out on localized dates in gnus-icalendar
137981
1379822016-03-03  John Wiegley  <johnw@newartisans.com>
137983
137984	Merge from origin/emacs-25
137985
137986	7bc4820 Make setf for frame-height/width work again
137987
1379882016-03-03  John Wiegley  <johnw@newartisans.com>
137989
137990	Merge from origin/emacs-25
137991
137992	6620944 (cl-union): Do not ignore :test argument when lists are equal.
137993	17dd3fb Add `isearch' to `basic-faces'
137994	c1ec743 Make $, : and @ "prefix characters" in ruby-mode
137995	e72a26e Make find-tag-default-bounds more strict
137996	1bc0e0a Minor fixes in filenotify.el
137997
1379982016-03-02  Alain Schneble  <a.s@realize.ch>
137999
138000	Fix issue of inserting images on some systems
138001
138002	* lisp/net/shr.el (shr-tag-img): Construct a non-empty range
138003	to pass to shr-image-fetched, to indicate where to insert the
138004	image.  Fixes the issue introduced with commit
138005	80852f843e69b81618f29cfb9aa4b074946cb3c4
138006	(bug#22789).
138007
1380082016-03-02  Lars Ingebrigtsen  <larsi@gnus.org>
138009
138010	Ensure TLS negotiation progress
138011
138012	* src/gnutls.h (GNUTLS_EMACS_HANDSHAKES_LIMIT): Increase the
138013	number of retries so that we try for about a minute.
138014
138015	* src/process.c (wait_reading_process_output): Ensure progress
138016	for DNS resolution and TLS negotiation.
138017
1380182016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
138019
138020	emacs-module.h slight simplification
138021
138022	* src/emacs-module.c (emacs_init_function, emacs_subr): Move here ...
138023	* src/emacs-module.h: ... from here, as they don’t need to be public.
138024	(enum emacs_arity): Remove useless enum tag.  The enum value is
138025	used in ptrdiff_t contexts.
138026
138027	* src/emacs-module.c (CHECK_USER_PTR): Fix typo in previous change.
138028
1380292016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
138030
138031	* src/emacs-module.c (CHECK_USER_PTR): Fix typo in previous change.
138032
1380332016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
138034
138035	emacs-module.c simplification and tuneup
138036
138037	* src/emacs-module.c (CHECK_USER_PTR): New function.
138038	(module_get_user_ptr, module_set_user_ptr)
138039	(module_get_user_finalizer, module_set_user_finalizer): Use it.
138040	(module_make_global_ref, module_copy_string_contents)
138041	(module_make_string, module_vec_set, module_vec_get): Omit
138042	unnecessary runtime tests.  For example, vector sizes are always
138043	fixnums, so we don’t need to test that they are in fixnum range.
138044
1380452016-03-02  Philipp Stephani  <phst@google.com>
138046
138047	Use standard checks whenever possible.
138048
138049	This is possible in all functions where we catch signals anyway.
138050
138051	* src/emacs-module.c (module_make_global_ref, module_funcall)
138052	(module_copy_string_contents, module_make_string): Use xsignal0
138053	and CHECK macros for argument checks.
138054
1380552016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
138056
138057	Deterministic build improvements
138058
138059	* configure.ac (BUILD_DETAILS): Rename from DETERMINISTIC_DUMP,
138060	and negate its sense.  Use it via AC_SUBST, not AC_DEFINE,
138061	and have its value be either empty or --no-build-details.
138062	All uses changed.  Change option to --disable-build-details.
138063	* doc/emacs/cmdargs.texi (Initial Options):
138064	Document --no-build-details.
138065	* doc/lispref/internals.texi (Building Emacs):
138066	* etc/NEWS:
138067	Document --disable-build-details.
138068	* doc/lispref/intro.texi (Version Info): Say that
138069	emacs-build-time can be nil.
138070	* lisp/erc/erc-compat.el (erc-emacs-build-time):
138071	Now nil if details are omitted.
138072	* lisp/erc/erc.el (erc-cmd-SV):
138073	* lisp/version.el (emacs-build-time):
138074	Now nil if no build details.
138075	(emacs-version):
138076	Output build time only if build details.
138077	* src/Makefile.in (BUILD_DETAILS): New macro.
138078	(temacs, bootstrap-emacs): Use it.
138079	* src/emacs.c (build_details): New var.
138080	(standard_args, main): Support --no-build-details.
138081	(Vdeterministic_dump): Remove; all uses replaced
138082	by !build_details.
138083	(syms_of_emacs): Set Vbuild_details to a boolean, not
138084	to a Lisp_Object.
138085	* src/lisp.h (build_details): New decl.
138086	* src/sysdep.c (init_system_name): When !build_details,
138087	set system-name to nil, not to "elided".
138088
1380892016-03-02  Philipp Stephani  <phst@google.com>
138090
138091	Remove build system name from deterministic dumps
138092
138093	* configure.ac (DETERMINISTIC_DUMP): New configuration option.
138094	* lisp/version.el (emacs-build-time): Add a comment to make the
138095	build time deterministic if requested.
138096	(emacs-build-system): Make variable deterministic if requested.
138097	* src/emacs.c (main): Initialize `deterministic-dump' from the
138098	configuration option.
138099	(syms_of_emacs): New constant `deterministic-dump'.
138100	* src/sysdep.c (init_system_name): Use a constant
138101	if a deterministic dump is requested.
138102
1381032016-03-02  Lars Ingebrigtsen  <larsi@gnus.org>
138104
138105	Remove buggy parse-time test
138106
138107	* test/lisp/calendar/parse-time-tests.el (parse-time-tests):
138108	Remove the iso parse test, since it doesn't work.
138109
1381102016-03-01  Paul Eggert  <eggert@cs.ucla.edu>
138111
138112	* src/syntax.c (syntax_multibyte): Omit unnecessary parens.
138113
1381142016-02-29  Glenn Morris  <rgm@gnu.org>
138115
138116	* lisp/emacs-lisp/autoload.el (autoload-timestamps):
138117	Experiment with setting to nil.
138118
1381192016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
138120
138121	Make the revert command in timer-list-mode work
138122
138123	* lisp/emacs-lisp/timer-list.el (timer-list): Make the revert
138124	command work.
138125
1381262016-02-29  Glenn Morris  <rgm@gnu.org>
138127
138128	* lisp/emacs-lisp/autoload.el (autoload-find-destination):
138129	Fix 6-week old merge error.
138130
138131	* lisp/emacs-lisp/autoload.el (update-file-autoloads):
138132	Ensure timestamps.
138133
138134	* lisp/emacs-lisp/package.el (package-generate-autoloads):
138135	Disable timestamps.
138136
1381372016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
138138
138139	Allow binding `url-mime-accept-string'
138140
138141	* lisp/url/url-http.el (url-http): Allow binding
138142	`url-mime-accept-string' (bug#22855).
138143
1381442016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
138145
138146	Add a NEWS entry for the colorful VC indicator
138147
1381482016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
138149
138150	Use colors in the VC mode lines
138151
138152	* lisp/vc/vc-hooks.el: Make the mode line faces default to
138153	using colors to more clearly tell the user what the status is.
138154
1381552016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
138156
138157	Support <bdo> and <bdi>
138158
138159	* lisp/net/shr.el (shr-tag-bdo): New function.
138160	(shr-tag-bdi): Ditto.
138161
1381622016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
138163
138164	Respect <html dir=auto>
138165
138166	* lisp/net/shr.el (shr-tag-html): Respect the "auto"
138167	directional HTML setting.
138168
1381692016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
138170
138171	Default bidi paragraph direction to nil
138172
138173	* lisp/net/eww.el (eww-display-html): Default bidi rendering
138174	to nil, so that possibly more Arabic web pages render
138175	correctly (bug#22786).
138176	(eww-setup-buffer): Ditto.
138177
1381782016-02-29  Mathias Dahl  <mathias.dahl@gmail.com>
138179
138180	Preserve current column, going up/down in thumbnail view.
138181
1381822016-02-29  Alan Mackenzie  <acm@muc.de>
138183
138184	Handle "noise" macros and compiler directives.
138185
138186	* lisp/progmodes/cc-langs.el (c-symbol-char-key): New language variable.
138187
138188	* lisp/progmodes/cc-vars.el (c-noise-macro-names)
138189	(c-noise-macro-with-parens-names): New customizable variables.
138190	(c-noise-macro-name-re, c-noise-macro-with-parens-name-re): New variables.
138191	(c-make-noise-macro-regexps): New function.
138192
138193	* lisp/progmodes/cc-engine.el (c-forward-sws, c-backward-sws): Adapt to treat
138194	members of c-noise-macro-names as whitespace.
138195	(c-forward-noise-clause): New function.
138196	(c-forward-keyword-prefixed-id, c-forward-type, c-forward-declarator)
138197	(c-forward-decl-or-cast-1, c-backward-over-enum-header)
138198	(c-guess-basic-syntax CASE 5A.3, CASE 5A.5, CASE 9A):
138199	Handle "noise clauses" in parallel with, e.g., "hangon key clauses".
138200
138201	* lisp/progmodes/cc-fonts.el (c-complex-decl-matchers): Handle "noise clauses"
138202	in parallel with "prefix-spec keywords".
138203
138204	* lisp/progmodes/cc-mode.el (c-mode, c++-mode, objc-mode): call
138205	c-make-noise-macro-regexps to initialize the internal variables.
138206
138207	* doc/misc/cc-mode.texi ("Noise Macros"): New section documenting the new
138208	facilities.
138209
1382102016-02-29  Paul Eggert  <eggert@cs.ucla.edu>
138211
138212	Stop calling res_init
138213
138214	Emacs shouldn’t need to call res_init any more, now that nscd or
138215	equivalent is everywhere.  On modern systems, calling res_init
138216	simply slows Emacs down.  On ancient systems lacking nscd Emacs
138217	will still work well enough with this change; it’s just that it
138218	won’t respond to changes in /etc/resolv.conf.
138219	* configure.ac (HAVE_RES_INIT): Remove.  Worry about -lresolv only
138220	when configured --with-hesiod.  Hesiod is still used; see, e.g.:
138221	https://soylentnews.org/meta/article.pl?sid=15/07/13/0255214
138222	* src/Makefile.in (LIBRESOLV): Remove.  All uses removed.
138223
1382242016-02-29  Glenn Morris  <rgm@gnu.org>
138225
138226	* lisp/progmodes/grep.el (grep-save-buffers): Fix type, tweak doc.
138227
138228	* lisp/progmodes/grep.el (grep-save-buffers): Don't autoload defcustoms.
138229
1382302016-02-29  Paul Eggert  <eggert@cs.ucla.edu>
138231
138232	* src/process.c (Fdelete_process): Simplify cast.
138233
1382342016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
138235
138236	Use the correct background color when filling nested <divs>
138237
138238	* lisp/net/shr.el (shr-face-background): Return the first
138239	background, because that's the one that's visible (bug#22680).
138240
1382412016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
138242
138243	Make <div> in <li> not insert extra newlines
138244
138245	* lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
138246	extra newlines (bug#19587).
138247
1382482016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
138249
138250	Allow reading Gnus reports from an offline cache
138251
138252	* lisp/gnus/gnus-group.el (gnus-read-ephemeral-bug-group):
138253	Allow reading bug reports from an offline cache directory.
138254
1382552016-02-28  Tino Calancha  <f92capac@gmail.com>
138256
138257	Meta + shift + Fn combos are recognized by xterm>=216.
138258
138259	* lisp/term/xterm.el (xterm-alternatives-map): Meta + shift +
138260	Fn combos are recognized by xterm>=216 (bug#22837).
138261
1382622016-02-28  Simen Heggestøyl  <simenheg@gmail.com>
138263
138264	Declare $ as an expression prefix in SCSS
138265
138266	* lisp/textmodes/css-mode.el (scss-mode-syntax-table): Declare $ as an
138267	expression prefix (bug#22841).
138268
1382692016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
138270
138271	Revert "Declare $ as an expression prefix in SCSS"
138272
138273	This reverts commit ffb33264f21e8af60b8055c47baffcf0f6c300df.
138274
138275	Revering to fix author name.
138276
1382772016-02-28  Simen  <simenheg@gmail.com>
138278
138279	Declare $ as an expression prefix in SCSS
138280
138281	* lisp/textmodes/css-mode.el (scss-mode-syntax-table): Declare $ as an
138282	expression prefix (bug#22841).
138283
1382842016-02-28  Hugh Brown  <aardvark@saintaardvarkthecarpeted.com>
138285
138286	Save buffers before running grep commands
138287
138288	* lisp/progmodes/grep.el (grep-ask-about-save): New variable (bug#96).
138289	(grep, lgrep, rgrep): Use it (bug#96).
138290
138291	* doc/emacs/building.texi (Grep Searching): Document
138292	`grep-save-buffers'.
138293
138294	* lisp/progmodes/grep.el (grep-save-buffers): Rename from
138295	`grep-ask-about-save'.
138296	(grep--save-buffers): New function.
138297	(grep, lgrep, rgrep): Use it.
138298
1382992016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
138300
138301	Allow sorting flyspell corrections
138302
138303	* lisp/textmodes/flyspell.el (flyspell-sort): New function (bug#2405).
138304	(flyspell-sort-corrections-functionx): New variable.
138305	(flyspell-sort-corrections-alphabetically): New function.
138306	(flyspell-notify-misspell): Use them.
138307	(flyspell-auto-correct-word): Ditto.
138308	(flyspell-emacs-popup): Ditto.
138309	(flyspell-xemacs-popup): Ditto.  Suggested by Sebastien Delafond.
138310
1383112016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
138312
138313	Wait for async DNS to complete before freeing resources
138314
138315	* src/process.c (Fdelete_process): Wait for async DNS to
138316	complete before freeing the data structures it needs.
138317
1383182016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
138319
138320	* lisp/faces.el: Remove duplicated functions from previous patch.
138321
1383222016-02-28  Eli Zaretskii  <eliz@gnu.org>
138323
138324	Fix TLS connections on MS-Windows
138325
138326	* src/w32.c (sys_write): If 'send' returns with WSAENOTCONN, and
138327	this is a non-blocking socket whose connection is in progress, set
138328	errno to EWOULDBLOCK, as expected by GnuTLS and other callers.
138329	Avoid overwriting the errno value from 'send' by 'ioctlsocket'.
138330	Suggested by Alain Schneble <a.s@realize.ch>.  (Bug#22789)
138331
1383322016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
138333
138334	Add a NEWS entry for the read-color change
138335
1383362016-02-27  Jan Moringen  <jan.moringen@uni-bielefeld.de>
138337
138338	Show the face colors when completing in `read-color'
138339
138340	* lisp/faces.el (defined-colors-with-face-attributes): New function.
138341	(readable-foreground-color, defined-colors-with-face-attributes)
138342	(readable-foreground-color): Ditto.
138343	(read-color): Use them (bug#5305).
138344
1383452016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
138346
138347	Clean up the code in parse-time-string-chars
138348
138349	* lisp/calendar/parse-time.el (parse-time-string-chars):
138350	Clean up the code a bit.
138351
1383522016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
138353
138354	Add some tests for parse-time.el
138355
138356	* test/lisp/calendar/parse-time-tests.el: New file.
138357
1383582016-02-27  Dima Kogan  <dima@secretsauce.net>
138359
138360	Strip out some leading whitespace when looking at logs
138361
138362	* lisp/vc/vc-git.el (vc-git-expanded-log-entry): When looking
138363	at expanded git logs with `vc-print-root-log' (C-x v L, then
138364	<enter> by default), Emacs was stripping out all leading
138365	whitespace from git logs.  I now strip exactly 2 leading
138366	spaces, which retains the indentation in the logs (bug#18110).
138367
1383682016-02-27  Dima Kogan  <dima@secretsauce.net>
138369
138370	Use a separate history variable for align-regexp
138371
138372	* lisp/align.el (align-regexp-history): New variable (bug#16891).
138373	(align-regexp): Use it.
138374
1383752016-02-27  Phil Sung  <philbert@gmail.com>
138376
138377	Create subdirectories automatically in wdired
138378
138379	* lisp/wdired.el (wdired-create-parent-directories): New
138380	variable (bug#6817).
138381	(wdired-create-parentdirs): New function.
138382	(wdired-do-renames): Use it.
138383	* doc/emacs/dired.texi (Wdired): Mention
138384	`wdired-create-parent-directories'
138385
1383862016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
138387
138388	Return the correct error values from gnutls.c
138389
138390	* src/gnutls.c (emacs_gnutls_read): Set errno to the value
138391	expected by process.c.
138392	(gnutls_try_handshake): Set gnutls_p to true earlier to avoid
138393	possible race condition with the process.c socket polling
138394	functions.
138395
1383962016-02-27  Aaron S. Hawley  <aaron.s.hawley@gmail.com>
138397
138398	Don't make assumptions about mkdir.  (Bug#22822)
138399
138400	* test/Makefile.in (MKDIR_P): New, set by configure.
138401	(%.log): Use MKDIR_P.
138402
1384032016-02-27  Alexander Kuleshov  <kuleshovmail@gmail.com>
138404
138405	Support switching to hexl-mode from image-mode
138406
138407	* lisp/image-mode.el (image-toggle-hex-display)
138408	(image-mode-to-text): New functions.
138409	(image-mode-map, image-minor-mode-map): Bind "C-c C-x" to
138410	image-toggle-hex-display.
138411	(image-mode-map): New menu item "Show as Hex".
138412	(image-mode): Update doc string and echo-area message.
138413	(image-toggle-display): Support toggle to hex.  (Bug#22453)
138414
138415	* doc/emacs/files.texi (File Conveniences): Document
138416	'image-toggle-hex-display'.
138417
1384182016-02-27  Eli Zaretskii  <eliz@gnu.org>
138419
138420	Remove unused code in coding.c
138421
138422	* src/coding.c (decode_eol): Remove unused code that handled the
138423	case of coding->dst_object being nil.  Replace it with an
138424	assertion.
138425
1384262016-02-26  Aurelien Aptel  <aaptel@suse.com>
138427
138428	* src/syntax.c: Fix result of syntax_multibyte()
138429
138430	The ?: operator has a lower precedence than ||.
138431	Bug introduced by commit 45b683a.
138432
1384332016-02-26  Paul Eggert  <eggert@cs.ucla.edu>
138434
138435	--enable-gcc-warnings now uses -Wjump-misses-init
138436
138437	When configuring with --enable-gcc-warnings, also enable
138438	-Wjump-misses-init, as it’s confusing to use a goto to skip over
138439	an initialization.  Fix the few places in the code that run afoul
138440	of this warning.
138441	* configure.ac (WERROR_CFLAGS): Add -Wjump-misses-init.
138442	* src/doc.c (Fsubstitute_command_keys):
138443	* src/image.c (svg_load_image):
138444	* src/regex.c (re_match_2_internal):
138445	* src/xdisp.c (redisplay_internal, redisplay_window):
138446	Don’t jump over initialization.
138447
1384482016-02-26  Jussi Lahdenniemi  <jussi@aprikoodi.fi>
138449
138450	Improve the register-hotkey functionality on MS-Windows
138451
138452	* src/w32fns.c (_WIN32_WINNT): Define to 0x0600, needed for
138453	keyboard hook functionality.
138454	Include w32inevt.h, basetyps.h and unknwn.h.
138455	(VK_ANY, WM_WTSSESSION_CHANGE, WTS_SESSION_LOCK): New macros.
138456	(kbdhook): A new struct definition.
138457	(funhook, setup_w32_kbdhook, remove_w32_kbdhook, hook_w32_key)
138458	(check_w32_winkey_state, reset_w32_kbdhook_state): New functions.
138459	(modifier_set): Call check_w32_winkey_state if a Win key was
138460	pressed and the keyboard hook is active.
138461	(w32_wnd_proc): Don't handle Win key combinations if the keyboard
138462	hook is active.  Only register/unregister the hotkeys if the
138463	keyboard hook is not active.  When WM_CREATE is received, call
138464	setup_w32_kbdhook.  When WM_DESTROY is received, call
138465	reset_w32_kbdhook_state.
138466	(lookup_vk_code): When the keyboard hook is active, map
138467	alphanumeric characters to themselves.
138468	(w32_parse_and_hook_hot_key): Renamed from w32_parse_hot_key.  Map
138469	modified keys to VK_ANY if the keyboard hook is active.  Register
138470	Alt-x and Win-x combinations.
138471	(Fw32_shell_execute): Update doc string to reflect new
138472	functionality.  Bypass the code that posts the
138473	WM_EMACS_REGISTER_HOT_KEY message if the keyboard hook is active.
138474	(Fw32_unregister_hot_key): Bypass the code that posts the
138475	WM_EMACS_UNREGISTER_HOT_KEY message if the keyboard hook is active.
138476	(syms_of_w32fns) <w32-pass-lwindow-to-system>
138477	<w32-pass-rwindow-to-system, w32-phantom-key-code>
138478	<w32-lwindow-modifier, w32-rwindow-modifier>: Update doc strings
138479	to reflect the new functionality.
138480	* src/w32console.c (initialize_w32_display): Install the low-level
138481	keyboard hook.
138482	* src/w32inevt.c (key_event): Handle Win-x combinations only if
138483	the keyboard hook is not active.  If the hook is active, use
138484	check_w32_winkey_state instead.
138485	* src/w32term.h (setup_w32_kbdhook, remove_w32_kbdhook)
138486	(check_w32_winkey_state): Add prototypes.
138487	(w32_kbdhook_active): New macro.
138488
138489	* doc/emacs/msdos.texi (Windows Keyboard): Update to reflect the
138490	new functionality.
138491
1384922016-02-25  Aaron S. Hawley  <aaron.s.hawley@gmail.com>
138493
138494	Add forward-sexp (and related) tests
138495
138496	* test/lisp/emacs-lisp/lisp-tests.el: New file for testing
138497	forward-sexp and related functions (bug#22800).
138498
1384992016-02-25  Jan Tatarik  <jan.tatarik@gmail.com>
138500
138501	Don't use (localized) week days in dates
138502
138503	* lisp/gnus/gnus-icalendar.el
138504	(gnus-icalendar-event:org-timestamp): Don't use (localized)
138505	week days in the dates, because that messes up things later.
138506
1385072016-02-25  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
138508
138509	Update pcomplete/find
138510
138511	* lisp/pcmpl-gnu.el (pcomplete/find): Update to newest version
138512	(bug#10487).
138513
1385142016-02-25  Lars Ingebrigtsen  <larsi@gnus.org>
138515
138516	Make parse-time-string-chars more efficient
138517
138518	* lisp/calendar/parse-time.el (parse-time-string-chars): The
138519	string has already been downcase, so don't care about case
138520	(bug#18522).
138521
1385222016-02-25  Lars Ingebrigtsen  <larsi@gnus.org>
138523
138524	Remove killed buffers from the list of Gnus buffers
138525
138526	* lisp/gnus/gnus.el (gnus-prune-buffers): Remove killed
138527	buffers from the list of Gnus buffers (bug#18522).
138528
1385292016-02-25  Paul Eggert  <eggert@cs.ucla.edu>
138530
138531	Integer overflow cleanups for ports and socklen
138532
138533	* src/process.c (struct sockaddr_and_len, conv_sockaddr_to_lisp)
138534	(get_lisp_to_sockaddr_size, Fset_process_datagram_address)
138535	(connect_network_socket):
138536	Use ptrdiff_t, not int, for signed object sizes.
138537	This addresses only a theoretical problem, as in practice these
138538	object sizes are less than 2**31, but we might as well use the
138539	same style here as elsewhere in Emacs.
138540	(string_integer_p): Remove; all uses removed.
138541	(Fmake_network_process): Check that port number is in range.
138542	When converting an integer-string service, rely on strtol
138543	rather than rechecking the string by hand.
138544	* src/process.h, src/w32.c (conv_sockaddr_to_lisp):
138545	Adjust prototypes to match.
138546
1385472016-02-24  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
138548
138549	Add pcomplete support for find
138550
138551	* lisp/pcmpl-gnu.el (pcomplete/find): Add pcomplete support
138552	for find (bug#10487).
138553
1385542016-02-24  Per Starbäck  <starback@stp.lingfil.uu.se>
138555
138556	Replace XXX acronyms with draft standard ones
138557
138558	* lisp/international/characters.el (c1-acronyms): Replace XXX
138559	entries with the acronyms PAD, HOP, SGCI from draft DIS 10646
138560	(bug#13745).
138561
1385622016-02-24  Kevin Ryde  <user42@zip.com.au>
138563
138564	Make checkdoc warn about variables described as "True"
138565
138566	* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
138567	Docstrings for variables "True...", and functions "Return
138568	true...", should usually be "non-nil" (bug#15506).
138569
1385702016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
138571
138572	Add NEWS entry for "number string" change
138573
1385742016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
138575
138576	Allow using "number strings" as services on non-GNU systems
138577
138578	* src/process.c (string_integer_p): New function.
138579	(Fmake_network_process): Use it to allow connecting to
138580	services specified as "993" even when getaddrbyname isn't
138581	available.
138582
1385832016-02-24  Michael Albinus  <michael.albinus@gmx.de>
138584
138585	Fix problem in tramp.texi
138586
138587	* doc/misc/tramp.texi (File name completion): Do not use
138588	@trampfn{} for IPv6 addresses.  Somehow, it results in errors
138589	during PDF creation.
138590
1385912016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
138592
138593	Make image commands available in image-mode
138594
138595	* lisp/image-mode.el (image-mode-map): Inherit from
138596	`image-map' so that the usual image commands work.
138597
1385982016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
138599
138600	Move `o' to `O' in shr-map
138601
138602	* lisp/net/shr.el (shr-map): `shr-save-contents' has moved
138603	from `o' to `O' to avoid collisions with `image-map'.
138604
1386052016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
138606
138607	Make setting the coding system non-blocking
138608
138609	* src/process.c (Fset_process_filter_multibyte): Defer
138610	completing coding system setup in asynchronous processes.
138611	(Fset_process_coding_system): Ditto.
138612
1386132016-02-23  Gregoire Jadi  <daimrod@gmail.com>
138614
138615	Mention `proced-toggle-auto-update' in the proced-mode doc string
138616
138617	* lisp/proced.el (proced-mode): Mention
138618	`proced-toggle-auto-update' (bug#14341).
138619
1386202016-02-23  Joshua Datko  <jbdatko@gmail.com>  (tiny change)
138621
138622	Add a fortune-message command
138623
138624	* lisp/play/fortune.el (fortune-message): Add a command to
138625	display fortunes in the echo area (bug#14915).
138626
1386272016-02-23  Susanne Oberhauser  <froh@suse.com>  (tiny change)
138628
138629	Add hideshow bindings analogous to outline mode
138630
138631	* lisp/progmodes/hideshow.el (hs-minor-mode-map): Add bindings
138632	analogous to outline mode bindings (bug#15324).
138633
1386342016-02-23  Bastien Guerry  <bzg@altern.org>
138635
138636	Allow highlighting things like @math{2^{12}}
138637
138638	* lisp/textmodes/texinfo.el (texinfo-font-lock-keywords):
138639	Allow highlighting things like @math{2^{12}} (bug#16390).
138640
1386412016-02-23  Per Bothner  <per@bothner.com>
138642
138643	Make `C-{up,down,left,right}' work in term mode
138644
138645	* lisp/term.el (term-raw-map): Define C-{up,down,left,right}
138646	to send the same escape sequence that xterm sends.  This makes
138647	backward-word and forward-word work in readline (bug#16746).
138648
1386492016-02-23  Dima Kogan  <dima@secretsauce.net>
138650
138651	Allow ff-find-other-file (etc) to work with indirect clone buffers
138652
138653	* lisp/find-file.el (ff-buffer-file-name): New function to
138654	allow the feature to work with indirect buffers, too
138655	(bug#16904).
138656	(ff-find-the-other-file): Use it.
138657	(ff-other-file-name): Ditto.
138658	(ff-get-file-name): Ditto.
138659
1386602016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
138661
138662	Fix error in add-change-log-entry when the entry has no newline
138663
138664	* lisp/vc/add-log.el (add-change-log-entry): The entry in the
138665	ChangeLog may end without a new line starting with blanks.
138666
1386672016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
138668
138669	Avoid using mm-util functoins in gravatar.el
138670
138671	* lisp/image/gravatar.el (gravatar-retrieve): Avoid using
138672	mm-util functions.
138673	(gravatar-retrieve-synchronously): Ditto.
138674
1386752016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
138676
138677	Move low-level library files from the lisp/gnus directory
138678
138679	The files moved from lisp/gnus are:
138680
138681	auth-source.el -> /
138682	compface.el -> /image
138683	ecomplete.el -> /
138684	flow-fill.el -> /mail
138685	gravatar.el -> /image
138686	gssapi.el -> /net
138687	html2text.el -> /net
138688	ietf-drums.el -> /mail
138689	mail-parse.el -> /mail
138690	mail-prsvr.el -> /mail
138691	mailcap.el -> /net
138692	plstore.el -> /
138693	pop3.el -> /net
138694	qp.el -> /mail
138695	registry.el -> /
138696	rfc1843.el -> /international
138697	rfc2045.el -> /mail
138698	rfc2047.el -> /mail
138699	rfc2231.el -> /mail
138700	rtree.el -> /
138701	sieve-manage.el -> /net
138702	sieve-mode.el -> /net
138703	sieve.el -> /net
138704	starttls.el -> /net
138705	utf7.el -> /international
138706	yenc.el -> /mail
138707
1387082016-02-23  Tino Calancha  <f92capac@gmail.com>
138709
138710	Allow undoing changes while doing query-replace
138711
138712	* doc/lispref/searching.texi (Search and Replace): Mention
138713	undo (bug#21684).
138714
138715	* lisp/replace.el (query-replace-help): Document undo.
138716	(perform-replace): Implement undo while replacing text.
138717
1387182016-02-23  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
138719
138720	Highlight assignments in Makefiles more correctly
138721
138722	* lisp/progmodes/make-mode.el (makefile-macroassign-regex):
138723	Highlight assignments preceded by a TAB character correctly
138724	(bug#20787).
138725
1387262016-02-23  Fredrik Bergroth  <fbergroth@gmail.com>  (tiny change)
138727
138728	Use memmove instead of memcpy on overlapping regions
138729
138730	* src/editfns.c (Ftranspose_regions): Regions may overlap, so
138731	use memmove instead of memcpy (bug#19213).
138732
1387332016-02-23  Paul Eggert  <eggert@cs.ucla.edu>
138734
138735	Port to --enable-gcc-warnings sans getaddrinfo_a
138736
138737	* src/process.c (Fmake_network_process): Add ATTRIBUTE_UNUSED
138738	to a local unused when getaddrinfo_a is missing.
138739	Resize portbuf to size needed.  Do cheap test first.
138740	Move local to block where it’s needed.
138741
1387422016-02-23  Paul Eggert  <eggert@cs.ucla.edu>
138743
138744	Minor cleanups for async DNS etc.
138745
138746	* src/frame.h (FRAME_WINDOW_CONFIGURATION_CHANGED):
138747	Omit unnecessary parens.
138748	* src/gnutls.c (gnutls_try_handshake, emacs_gnutls_deinit)
138749	(gnutls_verify_boot):
138750	Use bool for boolean.
138751	(ATTRIBUTE_FORMAT_PRINTF): Add printf attribute.
138752	* src/process.c (free_dns_request, Fmake_network_process):
138753	Allocate and free async request control block all in one go.
138754	(set_network_socket_coding_system, finish_after_tls_connection)
138755	(connect_network_socket):
138756	Now static.
138757	(conv_numerical_to_lisp): 2nd arg is now int, not unsigned.
138758	(Fmake_network_process): Use list1 for brevity.
138759	(wait_for_socket_fds): 2nd arg is now const ptr.
138760	* src/process.h (struct Lisp_Process.dns_request):
138761	Now struct gaicb *, not struct gaicb **, since there was always
138762	exactly one.  All uses changed.
138763	* src/window.c, src/window.h (run_window_configuration_change_hook):
138764	Now static.
138765
1387662016-02-23  Carlos Pita  <carlosjosepita@gmail.com>
138767
138768	Allow more shell script defun forms
138769
138770	* lisp/progmodes/sh-script.el (sh-mode): Allow more shell
138771	script defun forms, like function name () {...} (bug#19754).
138772
1387732016-02-23  Martin Rudalics  <rudalics@gmx.at>
138774
138775	Fix `window-configuration-change-hook' and `window-size-change-functions'
138776
138777	(1) Run `window-configuration-change-hook' if and only if at least
138778	one window was deleted or created or shows another buffer since
138779	last redisplay.
138780
138781	(2) Run `window-size-change-functions' if and only if at least
138782	one window changed its size since last redisplay (in a few cases
138783	`window-size-change-functions' will also run when no window
138784	changed its size).
138785
138786	(3) Provide two functions `window-pixel-height-before-size-change'
138787	and `window-pixel-width-before-size-change' that allow to easily
138788	detect which window changed size.
138789
138790	* src/frame.h (struct frame): New boolean member
138791	window_configuration_changed.
138792	(FRAME_WINDOW_SIZES_CHANGED): Remove macro.
138793	(FRAME_WINDOW_CONFIGURATION_CHANGED): New macro.
138794	* src/frame.c (adjust_frame_size): Don't run
138795	`window-configuration-change-hook'.
138796	* src/window.h (struct window): New fields
138797	pixel_width_before_size_change and pixel_height_before_size_change.
138798	(WINDOW_INTERNAL_P): New macro.
138799	* src/window.c (Fwindow_pixel_width_before_size_change)
138800	(Fwindow_pixel_height_before_size_change): New functions.
138801	(Fdelete_other_windows_internal, Fwindow_resize_apply)
138802	(resize_frame_windows, Fsplit_window_internal)
138803	(Fdelete_window_internal, grow_mini_window)
138804	(shrink_mini_window, Fresize_mini_window_internal): Don't call
138805	FRAME_WINDOW_SIZES_CHANGED.
138806	(window_size_changed, window_set_before_size_change_sizes)
138807	(run_window_size_change_functions): New functions.
138808	(make_window): Initialize pixel_width_before_size_change and
138809	pixel_height_before_size_change.
138810	(Fdelete_window_internal): Don't call
138811	run_window_configuration_change_hook.
138812	(struct saved_window): Add pixel_height_before_size_change and
138813	pixel_width_before_size_change.
138814	(Fset_window_configuration): Try to identify window configuration
138815	changes correctly so run_window_configuration_change_hook and
138816	run_window_size_change_functions run only if configuration and size
138817	really changed.
138818	(save_window_save): Set the pixel_height_before_size_change and
138819	pixel_width_before_size_change fields.
138820	(Vwindow_size_change_functions): Move here definition from xdisp.c.
138821	* src/xdisp.c (prepare_menu_bars, redisplay_internal): Call
138822	run_window_size_change_functions.
138823	(Vwindow_size_change_functions): Move definition to window.c.
138824	* src/xfns.c (x_set_menu_bar_lines): Don't call
138825	run_window_configuration_change_hook.
138826	* doc/lispref/windows.texi (Window Sizes): Document new
138827	functions `window-pixel-height-before-size-change' and
138828	`window-pixel-width-before-size-change'.
138829	(Window Configurations): Mention that this may trigger
138830	execution of `window-size-change-functions' although no window
138831	changed size.
138832	(Window Hooks): Update descriptions of `window-size-change-functions'
138833	and `window-configuration-change-hook'.
138834
1388352016-02-23  Drew Adams  <drew.adams@oracle.com>
138836
138837	(ls-lisp-insert-directory): Make -B work
138838
138839	* lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
138840	(bug#20776).
138841
1388422016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
138843
138844	Fix typo in message-setup-fill-variables
138845
138846	* lisp/gnus/message.el (message-setup-fill-variables): Fix
138847	typo in a recent checkin that used `setq-default' instead of
138848	`setq-local' (bug#22781).
138849
1388502016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
138851
138852	`message-dont-reply-to-names' can also be a list of regexps
138853
138854	* lisp/gnus/message.el (message-dont-reply-to-names):
138855	`message-dont-reply-to-names' can also be a list of regexps (bug#22773).
138856
1388572016-02-23  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
138858
138859	Make buttons in header lines work
138860
138861	* lisp/help-mode.el (help-button-action): `help-xref-button' in
138862	header line doesn't work (bug#21024).
138863
1388642016-02-23  Vasilij Schneidermann  <v.schneidermann@gmail.com>
138865
138866	Place apples randomly in Snake
138867
138868	* lisp/play/snake.el (snake-score): New variable (bug#21359).
138869	(snake-set-dot): Place the apples randomly.
138870
1388712016-02-23  Tino Calancha  <f92capac@gmail.com>
138872
138873	Allow optional parameter to be nil
138874
138875	* lisp/ibuf-ext.el (ibuffer-copy-filename-as-kill): Allow the
138876	optional parameter to be nil (bug#21576).
138877
1388782016-02-23  Tino Calancha  <f92capac@gmail.com>
138879
138880	Completely ignore buffers with no name when copying file names
138881
138882	* lisp/ibuf-ext.el (ibuffer-copy-filename-as-kill): Completely
138883	ignore buffers with no file name. (bug#21577).
138884
1388852016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
138886
138887	Make spelling of "Eshell" consistent
138888
138889	* lisp/eshell/esh-mode.el (eshell-mode): Spell it "Eshell".
138890	* lisp/eshell/eshell.el (eshell-command):
138891	Spell it "Eshell" (bug#21678).
138892
1388932016-02-23  Simen Heggestøyl  <simenheg@gmail.com>
138894
138895	Allow pretty lambdas in Scheme mode
138896
138897	* lisp/progmodes/scheme.el (scheme-mode-variables): Borrow
138898	`prettify-symbols-alist' from Lisp mode (bug#21679).
138899
1389002016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
138901
138902	Rename lisp--prettify-symbols-alist
138903
138904	* lisp/emacs-lisp/lisp-mode.el (lisp-prettify-symbols-alist):
138905	Rename from `lisp--prettify-symbols-alist' since we're going
138906	to use it in Scheme mode, too.
138907	(lisp-mode-variables): Use it.
138908
1389092016-02-23  Chunyang Xu  <xuchunyang56@gmail.com>  (tiny change)
138910
138911	Remove spurious newline in package list
138912
138913	* lisp/emacs-lisp/package.el (describe-package-1): Remove
138914	spurious newline (bug#21706).
138915
1389162016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
138917
138918	Revert "Remove spurious newline in package list"
138919
138920	This reverts commit fad14c289d36a2c61e0fd34105ebb1f62c80d71d.
138921
1389222016-02-23  Chunyang Xu  <xuchunyang56@gmail.com>
138923
138924	Remove spurious newline in package list
138925
138926	* lisp/emacs-lisp/package.el (describe-package-1): Remove
138927	spurious newline (bug#21706).
138928
1389292016-02-22  Tino Calancha  <f92capac@gmail.com>  (tiny change)
138930
138931	Keep the position in the process buffer when deleting processes
138932
138933	* lisp/simple.el (process-menu-delete-process): Keep the
138934	position in the buffer after killing a process (bug#21759).
138935
1389362016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
138937
138938	Require that the buffer that we're trying to patch exist
138939
138940	* lisp/vc/ediff.el (ediff-patch-buffer): Require that the
138941	buffer that we're trying to patch exist (bug#21852).
138942
1389432016-02-22  Tino Calancha  <f92capac@gmail.com>  (tiny change)
138944
138945	Require that the buffer that we're trying to patch exist
138946
138947	* lisp/vc/ediff.el (ediff-patch-buffer): Require that the
138948	buffer that we're trying to patch exist (bug#21852).
138949
1389502016-02-22  Tino Calancha  <f92capac@gmail.com>  (tiny change)
138951
138952	Be more verbose when changing frame mode in ediff
138953
138954	* lisp/vc/ediff-util.el (ediff-toggle-multiframe): Say what
138955	mode we toggled to (bug#21853).
138956
1389572016-02-22  Łukasz Stelmach  <stlman@poczta.fm>
138958
138959	Encode header strings before printing
138960
138961	* lisp/ps-print.el (ps-generate-header-line): Encode the
138962	header strings to avoid problems with non-ASCII headers
138963	(bug#22611).
138964
1389652016-02-22  Michal Nazarewicz  <mina86@mina86.com>
138966
138967	Test message-strip-subject-trailing-was
138968
138969	* test/lisp/gnus/message-tests.el (message-strip-subject-trailing-was):
138970	New test (bug#22632).
138971
1389722016-02-22  Michal Nazarewicz  <mina86@mina86.com>
138973
138974	Make use of the `ert-with-function-mocked' macro
138975
138976	* test/lisp/calendar/icalendar-tests.el (icalendar--create-uid):
138977	* test/lisp/vc/vc-bzr-tests.el (vc-bzr-test-bug9781): Use
138978	`ert-with-function-mocked' instead of implementing the fragile
138979	`unwind-protect' logic openly.
138980
1389812016-02-22  Michal Nazarewicz  <mina86@mina86.com>
138982
138983	message-strip-subject-trailing-was: Refactor
138984
138985	* lisp/gnus/message.el (message-strip-subject-trailing-was): Refactor
138986	the function replacing sequence of `if' calls with a mixture of `or'
138987	and `and' calls instead.  This makes it shorter and containing less
138988	internal state thus easier to follow.
138989
1389902016-02-22  Michal Nazarewicz  <mina86@mina86.com>
138991
138992	ert-with-function-mocked: New macro
138993
138994	* lisp/emacs-lisp/ert-x.el (ert-with-function-mocked): New macro which
138995	allows evaluating code while particular function is replaced with
138996	a mock.  The original definition of said function is restored once the
138997	macro finishes.
138998
1389992016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
139000
139001	Move Gnus functions frm rfc1843 to new file gnus-rfc1843
139002
139003	* lisp/gnus/gnus-rfc1843.el: New file for Gnus/rfc1843
139004	interface functions.
139005
139006	* lisp/gnus/gnus-rfc1843.el: Move all Gnus-specifig functions to
139007	gnus-rfc1843.
139008
1390092016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
139010
139011	Don't use mm-util functions in qp.el
139012
139013	* lisp/gnus/qp.el (quoted-printable-decode-region): Don't use
139014	mm-util functions.
139015	(quoted-printable-encode-string): Ditto.
139016	(quoted-printable-encode-region): Ditto.
139017
1390182016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
139019
139020	Don't require mm-util
139021
139022	* lisp/mail/ietf-drums.el (mm-util): Don't require.
139023
1390242016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
139025
139026	Remove Gnus functions from auth-source.el
139027
139028	* lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
139029	Remove usage of Gnus utility function.
139030	(mm-util, gnus-util): Don't require.
139031
1390322016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
139033
139034	Allow deleting all non-matching cookies
139035
139036	* lisp/url/url-cookie.el (url-cookie-delete-cookies): Allow
139037	keeping matching cookies (bug#22720).
139038
1390392016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
139040
139041	Make (setf (image-property ...)) return VALUE
139042
139043	* lisp/image.el (image--set-property): Return VALUE, not IMAGE.
139044
1390452016-02-22  John Wiegley  <johnw@newartisans.com>
139046
139047	Merge from origin/emacs-25
139048
139049	a9c48d5 Additional fixes for file notification
139050	6bd9d69 Fix documentation of 'global-disable-point-adjustment'
139051	8c22ac9 ; Spelling fix
139052	2975784 Set file modes of pinentry socket for extra safety
139053	2667b3e Clarify GnuPG version compatibility chapter
139054	5e34c36 Revert "Change the default socket location for pinentry"
139055	e19c1c3 Kill off xref--display-history
139056	5698947 Keep the xref buffer visible until the user quits it explicitly
139057	e34fbde Change the default socket location for pinentry
139058	5f89658 Mention how to enable pinentry feature
139059	db51224 Sync with gnulib
139060	aa5a794 Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
139061	2d8b2fd Restore point when writing semantic table to disk
139062	27d3430 Mention pinentry.el in epa manual
139063	5baa001 Fix Bug#22736
139064	7261355 Grammar fix in doc string
139065	d0f3b18 Naming fix for consistency
139066	74ec92d Prefer customized value for GnuPG executable
139067	ea0b604 Fix memory reservation on MS-Windows
139068	c5f72aa Update NextStep readme and add wish list.
139069	6de26a7 Report also result in `file-notify--test-event-handler'
139070	5d17ae7 Improve file-notify-test08-watched-file-in-watched-dir
139071	1cb1268 Fix todo-mode item date editing bugs
139072	1e996cf Fix "[:upper:]" for non-ASCII characters
139073	896f993 Allow customizing the article mode cursor behavior
139074	24c1c1d Use pop-to-buffer-same-window in woman.el
139075	2a75f64 New filenotify test for bug#22736
139076	c9bccf7 Report critical battery errors
139077	d675db9 Make eww message toggling message clearer
139078	5e0bb40 * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
139079	fa8fd65 ; Improve character-folding entries in NEWS
139080	3722a69 Fix bugs in window resizing code
139081	289d5c6 Fix decoding DOS EOL in a unibyte buffer
139082	2abcb06 Correct c-parse-state cache manipulation error.
139083	14aec91 Take advantage of new GnuPG version check function
139084	e80c2a7 Make GnuPG version check robuster
139085	15a9464 Fix x-load-color-file pointer signedness
139086	132dbf0 * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
139087	78ab6f1 Follow convention for greek letter constants.
139088	106b5bb Add Stefan-Boltzmann constant to calc units table.
139089	b96baa8 * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
139090	5f91cf9 Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
139091	2d40f7d Fix soffice UserInstallation-URL for Windows
139092	b1a3ebe Fix display of <pre> elements
139093	57d0e3d ; * lisp/help-fns.el: Remove outdated comment.
139094	7a0628d ; * admin/make-tarball.txt: Mention cleaning.
139095
1390962016-02-22  Oleh Krehel  <ohwoeowho@gmail.com>
139097
139098	lisp/calendar/appt.el (appt-delete-window): Check if buffer is live
139099
139100	* lisp/calendar/appt.el (appt-delete-window): Avoid trying to delete a
139101	  non-existing buffer.
139102
1391032016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
139104
139105	Mention the further asynchronousity
139106
1391072016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
139108
139109	Fix async TLS boot problem
139110
139111	* src/process.c (wait_reading_process_output): Verify the boot
139112	of the correct process.
139113
1391142016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
139115
139116	Clean up forgotten text in manual
139117
139118	* doc/lispref/display.texi (Defining Images): Remove example
139119	forgotten when making previous change.
139120
1391212016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
139122
139123	Clean up debugging code
139124
139125	* src/process.c (Fmake_network_process): Remove debugging printf.
139126	(wait_for_socket_fds, wait_while_connecting)
139127	(wait_for_tls_negotiation): Remove newlines from messages.
139128
1391292016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
139130
139131	Fix merge conflicts in network-stream-tests.el
139132
1391332016-02-21  Paul Eggert  <eggert@penguin.cs.ucla.edu>
139134
139135	Port recent filevercmp addition to MS-Windows
139136
139137	Reported by Andy Moreton in:
139138	https://lists.gnu.org/r/emacs-devel/2016-02/msg01302.html
139139	* nt/gnulib.mk (libgnu_a_SOURCES): Add filevercmp.c.
139140	(EXTRA_DIST): Add filevercmp.h.
139141
1391422016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
139143
139144	add_to_log expects Lisp parameters
139145
1391462016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
139147
139148	Mention sentinels in conjunction with :nowait t.
139149
139150	* doc/lispref/processes.texi (Network Processes): Mention the
139151	recommended way of using sentinels with :nowait t.
139152
1391532016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
139154
139155	Mention in the doc strings that process functions may block
139156
139157	(Fprocess_contact, Fprocess_datagram_address)
139158	(Fset_process_datagram_address, Fset_network_process_option)
139159	(Fprocess_send_region, Fprocess_send_string): Mention that the
139160	functions may block.
139161	(Fset_process_coding_system): Ditto.
139162
1391632016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
139164
139165	Add blocker warnings to the *Messages* buffer
139166
139167	* src/process.c (wait_for_socket_fds): Add warning to the log.
139168	(wait_while_connecting): Ditto.
139169	(wait_for_tls_negotiation): Ditto.
139170
1391712016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
139172
139173	Rework the image property getter/setters
139174
139175	* doc/lispref/display.texi (Defining Images): Document the
139176	renamed `image-get/set-property' functions.
139177
139178	* lisp/image.el (image--set-property): Rename from
139179	image-set-property.
139180	(image-property): Declare a setf form.
139181	(image-property): Rename from `image-get-property'.
139182
1391832016-02-21  Paul Eggert  <eggert@cs.ucla.edu>
139184
139185	Use Gnulib filevercmp for version comparison
139186
139187	* admin/merge-gnulib (GNULIB_MODULES): Add filevercmp.
139188	* doc/lispref/strings.texi (Text Comparison):
139189	* etc/NEWS, src/fns.c:
139190	* test/src/fns-tests.el (fns-tests-string-version-lessp):
139191	Rename newly-introduced function to string-version-lessp, by
139192	analogy with strverscmp.
139193	* lib/filevercmp.c, lib/filevercmp.h: New files, copied from gnulib.
139194	* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
139195	* src/fns.c: Include <filevercmp.h>.
139196	(gather_number_from_string): Remove.
139197	(Fstring_version_lessp): Reimplement via filevercmp.
139198
1391992016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
139200
139201	Add a function to delete URL cookies
139202
139203	* doc/misc/url.texi (Cookies): Document
139204	url-cookie-delete-cookies.
139205
139206	* lisp/url/url-cookie.el (url-cookie-delete-cookies): New function.
139207
1392082016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
139209
139210	Avoid integer overflows in string-numeric-lessp
139211
139212	* src/fns.c (Fstring_numeric_lessp): If we have an integer
139213	overflow, compare lexicographically.
139214
1392152016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
139216
139217	Add the string-numeric-lessp function
139218
139219	* doc/lispref/strings.texi (Text Comparison): Document
139220	`string-numerical-lessp'.
139221
139222	* src/fns.c (Fstring_numeric_lessp): New function.
139223	(gather_number_from_string): Helper function for that function.
139224
139225	* test/src/fns-tests.el (fns-tests-string-numeric-lessp): Add tests.
139226
1392272016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
139228
139229	Clarify levels of :nowait t.
139230
139231	* doc/lispref/processes.texi (Network Processes): Mention
139232	levels of asynchronicity.
139233
1392342016-02-20  Alain Schneble  <a.s@realize.ch>
139235
139236	Respect DNS timeouts
139237
139238	* src/process.c (check_for_dns): If the async DNS request
139239	failed and the associated process is still in "connect" state,
139240	deactivate the process and set status to "failed".
139241
1392422016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
139243
139244	Add a frame around the placeholder image in shr
139245
139246	* lisp/net/shr.el (shr-make-placeholder-image): Add a frame
139247	around the image.
139248
1392492016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
139250
139251	Use placeholder images in shr to avoid text moving around
139252
139253	* lisp/net/shr.el (shr-rescale-image): Pass in width/height
139254	from the HTML.
139255	(shr-tag-img): Ditto.
139256	(shr-string-number): New function.
139257	(shr-make-placeholder-image): Make placeholder images.
139258	(shr-tag-img): Insert them if we have SVG support.
139259
1392602016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
139261
139262	Get explicit width/height + scale computations right
139263
139264	* src/image.c (compute_image_size): :scale should also be
139265	taken into account when :width and :height are explicitly names.
139266
1392672016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
139268
139269	New functions for getting and setting image properties
139270
139271	* doc/lispref/display.texi (Defining Images): Document
139272	image-get/set-property.
139273
139274	* lisp/image.el (image-set-property): New function.
139275	(image-get-property): Ditto.
139276
1392772016-02-19  Alan Mackenzie  <acm@muc.de>
139278
139279	Await the final mouse event in C-h c and C-h k.
139280
139281	* lisp/help.el (describe-key-briefly, describe-key): On receiving a mouse
139282	event, keep reading further events until a timeout occurs, to ensure we have
139283	the complete mouse event from the user.
139284
1392852016-02-18  Lars Ingebrigtsen  <larsi@gnus.org>
139286
139287	Add a library for creating and manipulating SVG images
139288
139289	* doc/lispref/display.texi (SVG Images): New section.
139290
139291	* lisp/svg.el: New file.
139292
1392932016-02-18  Lars Ingebrigtsen  <larsi@gnus.org>
139294
139295	Fix up tests for async TLS negotiation
139296
1392972016-02-18  Lars Ingebrigtsen  <larsi@gnus.org>
139298
139299	Fix coding system setup
139300
139301	* src/process.c (set_network_socket_coding_system): Pass in
139302	the host/service that's been computed already.
139303
1393042016-02-18  Michael Albinus  <michael.albinus@gmx.de>
139305
139306	Reference `tramp-theme' in GNU ELPA.
139307
139308	* doc/misc/tramp.texi (Frequently Asked Questions):
139309	Reference `tramp-theme' in GNU ELPA.
139310
1393112016-02-17  Lars Ingebrigtsen  <larsi@gnus.org>
139312
139313	Verify the TLS connection asynchronously
139314
139315	* src/gnutls.c (gnutls_verify_boot): Refactor out into its own
139316	function so that we can call it asynchronously.
139317	(Fgnutls_boot): Use it.
139318
139319	* src/process.c (wait_reading_process_output): Verify the TLS
139320	negotiation.
139321
1393222016-02-16  Simen Heggestøyl  <simenheg@gmail.com>
139323
139324	Add column layout module to CSS property list
139325
139326	* lisp/textmodes/css-mode.el (css-property-ids): Add properties from
139327	CSS Multi-column Layout Module.
139328
1393292016-02-16  Michael Albinus  <michael.albinus@gmx.de>
139330
139331	Minor cleanup in CONTRIBUTE and test/README
139332
139333	* CONTRIBUTE: Remove detailed explanation about testing; this
139334	is now in test/README.
139335
139336	* test/README: Don't mention automated/ subdirectory.
139337
1393382016-02-15  Glenn Morris  <rgm@gnu.org>
139339
139340	Provide 'term/name in lisp/term files.
139341
139342	* lisp/term/AT386.el, lisp/term/bobcat.el, lisp/term/cygwin.el:
139343	* lisp/term/internal.el, lisp/term/iris-ansi.el, lisp/term/linux.el:
139344	* lisp/term/lk201.el, lisp/term/news.el, lisp/term/ns-win.el:
139345	* lisp/term/pc-win.el, lisp/term/rxvt.el, lisp/term/screen.el:
139346	* lisp/term/sun.el, lisp/term/tty-colors.el, lisp/term/tvi970.el:
139347	* lisp/term/vt100.el, lisp/term/vt200.el, lisp/term/w32-win.el:
139348	* lisp/term/w32console.el, lisp/term/wyse50.el, lisp/term/x-win.el:
139349	For consistency, provide 'term/name in all files that don't already.
139350
1393512016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
139352
139353	Deactivate the correct process
139354
139355	* src/process.c (wait_reading_process_output): Deactivate the
139356	correct process on failure.
139357
1393582016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
139359
139360	Implement asynch TLS negotiation
139361
139362	* src/gnutls.c (gnutls_try_handshake): Factor out into its own
139363	function.
139364	(emacs_gnutls_handshake): Use it.
139365	(emacs_gnutls_read): Just return instead of retrying the handshake.
139366
139367	* src/process.c (finish_after_tls_connection): Factor out
139368	into its own function.
139369	(connect_network_socket): Use it.
139370	(wait_reading_process_output): Retry TLS handshakes.
139371	(wait_reading_process_output): Defer sentinel until TLS completes.
139372
1393732016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
139374
139375	Simplify the DNS resolution loop a bit
139376
139377	* src/process.c (wait_reading_process_output): Simplify the
139378	DNS resolution loop a bit.
139379
1393802016-02-15  Alain Schneble  <a.s@realize.ch>
139381
139382	Loop over the process list instead of maintaining a separate list
139383
139384	* src/process.c: Remove declaration/definition of dns_processes list.
139385	* src/process.c (wait_reading_process_output): Loop over all processes in
139386	Vprocess_alist instead of dns_processes, to check for completed DNS
139387	requests.
139388
1393892016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
139390
139391	Allow setting the filter masks later
139392
139393	* src/process.c (Fset_process_filter): Don't set the socket
139394	masks here, because we may not have a socket yet.
139395	(set_process_filter_masks): New function.
139396	(connect_network_socket): Set the filter masks here.
139397
1393982016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
139399
139400	Remove debugging
139401
1394022016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
139403
139404	Ensure we always free DNS resources when deleting a process
139405
139406	* src/process.c (free_dns_request): Factor out into own function.
139407	(Fdelete_process): When deleting a process, free any DNS
139408	structures associated with it.
139409	(check_for_dns): Always free all DNS resources.
139410
1394112016-02-15  Alain Schneble  <a.s@realize.ch>
139412
139413	Don't block in set-process-window-size
139414
139415	* src/process.c (set-process-window-size): Explicitly return Qnil when
139416	called with network processes as set_window_size won't work anyway on
139417	socket fds.  As a welcome side effect, this makes the blocking
139418	wait_for_socket_fds call obsolete.
139419
1394202016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
139421
139422	Do most of the coding system setup earlier
139423
139424	* src/process.c (Fmake_network_process): Set the read/write
139425	coding systems here, so that special bindings work.
139426	(Fmake_network_process): Complete the coding system setup here.
139427
1394282016-02-15  John Wiegley  <johnw@newartisans.com>
139429
139430	Merge from origin/emacs-25
139431
139432	d4b93e1 Minor fixes in global-auto-composition-mode
139433	02b037b Allow arithmetic operators inside C++ template constructs.
139434	44b16f6 Avoid crashes in semi-malformed 'condition-case'
139435	652e5b4 Allow arithmetic operators inside C++ template constructs.
139436	d9ea795 Fix regression with 'recent-keys' and keyboard macros
139437	903603f Fix wording in a doc-view.el comment
139438	cf79616 ; Spelling fixes
139439	f8bf1b3 CONTRIBUTE cleanups and updates
139440	f3aaca3 Port USE_STACK_LISP_OBJECTS fix to Clang
139441	1834ac7 Port to x86 GCC 4.3.1 and earlier
139442	8482949 Fix point movement under 'scroll-conservatively'
139443	c1313b5 Replace colon in file name (not legal on Windows)
139444	f7af26c Fix a typo in edt.texi
139445	8badf95 Make 'mmap_realloc' on MS-Windows more reliable
139446	856cd94 Grep alias `all' shall not match parent directory
139447
1394482016-02-15  John Wiegley  <johnw@newartisans.com>
139449
139450	Merge from origin/emacs-25
139451
139452	dacde7e * etc/AUTHORS: Update the AUTHORS file
139453	478ca5d ; fix changelog entries
139454	2b7d006 ; make change-history-commit
139455	851decb * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
139456	47896c8 ; Improve commentary in insdel.c
139457	53ca1e1 Index tilde characters in names of backup files
139458	d97f522 Document deprecation of hi-lock-mode's 'C-x w' bindings
139459	b55f06d ; * etc/NEWS: Use double spaces to end a sentence.
139460	28bb214 Announce that the `C-x w' bindings are deprecated
139461	1c98f98 Suppress GNUstep hardening
139462	d82f24b Fix redisplay after a large insertion
139463	85a2753 Revert "Fix gnus-group-get-new-news-this-group on group with
139464	        closed server"
139465	e8e3db0 ; Improve merge documentation in CONTRIBUTE
139466	5be9989 * lib-src/make-docfile.c: Include stdarg.h.
139467	c95ebbf Extend gpm-mouse-mode's doc string and doc to point out
139468	        limitations.
139469
1394702016-02-15  John Wiegley  <johnw@newartisans.com>
139471
139472	Merge from origin/emacs-25
139473
139474	f5d6b9b Revert "Support integer image rotation and respect EXIF rotations"
139475	afe7d1f Revert "Document EXIF image rotation"
139476	c6f377c Document OS X LANG default
139477	eb4a18c Set locale when run from OS X GUI
139478	456c0a3 make-docfile cleanup for I/O, etc.
139479	25ec995 Memory-management cleanup in make-docfile
139480	02d925e Kevin Gallagher has new email address
139481	4ef153b Improve doc strings of 'forward/backward-word-strictly'
139482	3ad05a0 Describe Makefile test targets in test/README
139483
1394842016-02-15  John Wiegley  <johnw@newartisans.com>
139485
139486	Merge from origin/emacs-25
139487
139488	10b8ed2 Document EXIF image rotation
139489	0f60049 Support integer image rotation and respect EXIF rotations
139490	7dd45b6 Quote table names for postgres listings (sql-mode)
139491	6bac035 * lisp/replace.el (replace-match-maybe-edit): Make arg
139492	        `backward' optional.
139493	ee909aa * lisp/simple.el (next-line-or-history-element): Reset
139494	        temporary-goal-column.
139495	0a289d3 Suppress ACL ops if configured with --disable-acl
139496	1a9dbf5 Mention web bugs
139497	fa55da2 Make mm-html-blocked-images default to "" again
139498
1394992016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
139500
139501	Protect against initial handshake failures
139502
139503	* src/process.c (connect_network_socket): Mark the connection
139504	as failed if the handshake didn't succeed yet.  This should be
139505	reworked later.
139506
1395072016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
139508
139509	Call the network security manager after doing TLS negotiation
139510
139511	* lisp/net/network-stream.el (network-stream-open-tls):
139512	Postpone NSM verification when running async.
139513
139514	* src/process.c (Fset_process_filter): This function doesn't
139515	need to wait.
139516	(connect_network_socket): Set the process status to "run" only
139517	after TLS negotiation.
139518	(wait_for_socket_fds): Take a name parameter for more debugging.
139519	(wait_reading_process_output): Don't change status to "run"
139520	unless TLS negotiation has finished.
139521	(send_process): Wait for the process here instead of
139522	send_process_string.
139523	(connect_network_socket): Call the network security manager.
139524
1395252016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
139526
139527	Remove some #ifdefs and update documentation
139528
139529	* doc/lispref/processes.texi (Network Processes): Remove
139530	mention of `dns'.
139531
139532	* lisp/net/network-stream.el (open-network-stream): Remove
139533	mention of `dns'.
139534
139535	* src/process.c (Fset_process_filter)
139536	(Fset_process_window_size, Fprocess_contact)
139537	(Fprocess_datagram_address, Fset_process_datagram_address)
139538	(Fset_network_process_option, Fprocess_send_region)
139539	(Fprocess_send_string, Fset_process_coding_system)
139540	(Fset_process_filter_multibyte): Remove the #ifdef
139541	HAVE_GETADDRINFO_A checks.
139542	(Fprocess_send_string): Wait for TLS negotiation.
139543	(wait_for_tls_negotiation): New function.
139544	(send_process): Remove the TLS boot check.
139545
139546	* src/process.c (Fmake_network_process): Ditto.
139547
1395482016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
139549
139550	Use :nowait t in url-gw
139551
139552	* lisp/url/url-gw.el (url-open-stream): Just use :nowait t,
139553	since we're not differentiating.
139554
1395552016-02-14  Alain Schneble  <a.s@realize.ch>
139556
139557	Add blockers to process functions
139558
139559	* src/process.c (set-process-filter, set-process-window-size,
139560	process-contact, process-datagram-address, set-process-datagram-address,
139561	set-network-process-option): Make functions wait (block) on network
139562	process until pending DNS requests have been processed and associated
139563	socket initialized.
139564
139565	* src/process.c (process-send-region, process-send-string,
139566	process-send-eof): Make functions wait (block) while network process is
139567	in connect state.
139568
1395692016-02-14  Simen Heggestøyl  <simenheg@gmail.com>
139570
139571	Add fragmentation module to CSS property list
139572
139573	* lisp/textmodes/css-mode.el (css-property-ids): Add properties from
139574	CSS Fragmentation Module Level 3.
139575
1395762016-02-14  Nicolas Petton  <nicolas@petton.fr>
139577
139578	* doc/lispref/sequences.texi: Add documentation for seq-map-indexed
139579
1395802016-02-14  Nicolas Petton  <nicolas@petton.fr>
139581
139582	New function seq-map-indexed
139583
139584	* lisp/emacs-lisp/seq.el (seq-map-indexed): New function.
139585	* test/lisp/emacs-lisp/seq-tests.el: Add tests for seq-map-indexed.
139586
1395872016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139588
139589	* lisp/gnus/mm-util.el: Remove the mm-string-as-multibyte alias.
139590
1395912016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139592
139593	Fix problem with wrong encoding of non-ASCII message bodies
139594
139595	* lisp/gnus/mml.el (mml-generate-mime-1): Disable
139596	multibyteness before encoding the data.
139597
1395982016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139599
139600	Remove codepage setup code from mm-util
139601
139602	* lisp/gnus/mm-util.el (mm-codepage-setup): Remove.
139603	(mm-codepage-iso-8859-list): Remove.
139604	(mm-codepage-ibm-list, mm-setup-codepage-iso-8859)
139605	(mm-setup-codepage-ibm): Remove.
139606	(mm-charset-eval-alist): Remove the code pages from the
139607	default value.
139608
1396092016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139610
139611	Remove compat code for older Emacsen
139612
139613	* lisp/gnus/gnus-art.el (gnus-button-url-regexp): Remove
139614	XEmacs compat code.
139615
139616	* lisp/gnus/gnus-sync.el (gnus-sync-json-alist-p): Remove
139617	unused compat function.
139618	(gnus-sync-json-plist-p): Ditto.
139619
139620	* lisp/gnus/message.el (message-default-charset): Make obsolete.
139621	(message-info): Remove compat code.
139622	(message-setup-fill-variables): Remove kludge needed earlier
139623	to not overwrite `normal-auto-fill-function'.
139624	(message-split-line): Remove compat code.
139625
139626	* lisp/gnus/mm-view.el (mm-display-inline-fontify): Remove
139627	compat code.
139628
1396292016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139630
139631	Remove some compat functions from gmm-utils.el
139632
139633	* lisp/gnus/gmm-utils.el (gmm-tool-bar-from-list): Remove
139634	compat code.
139635	(gmm-image-search-load-path): Remove.
139636	(gmm-image-load-path-for-library): Remove.
139637
1396382016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139639
139640	Remove the gmm-lazy and nnmail-lazy compat widgets
139641
139642	* lisp/gnus/gmm-utils.el (gmm-lazy): Remove.
139643
139644	* lisp/gnus/nnmail.el (nnmail-lazy): Remove.
139645
1396462016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139647
139648	Clean up nnimap-request-move-article slightly
139649
139650	* lisp/gnus/nnheader.el (subr-x): Require.
139651
139652	* lisp/gnus/nnimap.el (nnimap-request-move-article): Clean up
139653	the code slightly.
139654
1396552016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139656
139657	Use open-network-stream instead of open-protocol-stream
139658
139659	* lisp/gnus/nnimap.el: Use open-network-stream instead of
139660	open-protocol-stream.
139661
139662	* lisp/gnus/nntp.el: Ditto.
139663
139664	* lisp/gnus/pop3.el: Ditto.
139665
139666	* lisp/net/sieve-manage.el: Ditto.
139667
139668	* lisp/net/network-stream.el (open-protocol-stream): Make obsolete.
139669
1396702016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139671
139672	Remove compat code that relies on (featurep 'mule)
139673
139674	* lisp/gnus/gnus-group.el (gnus-group-name-decode): Remove
139675	compat code.
139676
139677	* lisp/gnus/gnus-start.el (gnus-read-descriptions-file):
139678	Remove compat code.
139679
139680	* lisp/gnus/mm-bodies.el (mm-decode-body, mm-decode-string):
139681	Remove compat code.
139682
139683	* lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
139684	Remove compat code.
139685	(mm-w3m-standalone-supports-m17n-p): Ditto.
139686
1396872016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139688
139689	Remove compat functions from starttls.el
139690
139691	* lisp/net/starttls.el
139692	(starttls-set-process-query-on-exit-flag): Remove.
139693
1396942016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139695
139696	Remove compat functions from smime.el
139697
139698	* lisp/gnus/smime.el (smime-replace-in-string): Remove.
139699	(smime-make-temp-file): Remove.
139700
1397012016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139702
139703	Remove compat code from smiley
139704
139705	* lisp/gnus/smiley.el (smiley-style): Remove compat code.
139706
1397072016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139708
139709	Remove compat code from rfc2047
139710
139711	* lisp/mail/rfc2047.el (rfc2047-encode-message-header): Remove
139712	compat code.
139713	(rfc2047-decode-string): Ditto.
139714
1397152016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139716
139717	Remove compat function from pop3
139718
139719	* lisp/gnus/pop3.el (pop3-set-process-query-on-exit-flag): Remove.
139720
1397212016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139722
139723	Remove compat code in Gnus backends
139724
139725	* lisp/gnus/nndiary.el (nndiary-error): Remove.
139726
139727	* lisp/gnus/nndraft.el (nndraft-request-associate-buffer): Ditto.
139728
139729	* lisp/gnus/nnfolder.el (nnfolder-read-folder): Ditto.
139730
139731	* lisp/gnus/nnheader.el (nnheader-find-file-noselect): Ditto.
139732
139733	* lisp/gnus/nnimap.el (nnimap-log-buffer): Remove compat code.
139734
1397352016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139736
139737	Remove compat code from some mml files
139738
139739	* lisp/gnus/mml-sec.el (mml-secure-passphrase-cache-expiry):
139740	Remove compat code.
139741
139742	* lisp/gnus/mml-smime.el (mml-smime-openssl-sign-query):
139743	Always use `mail-extract-address-components', since this isn't
139744	time critical.
139745	(mml-smime-get-dns-cert): Ditto.
139746
139747	* lisp/gnus/mml.el (mml-preview): Remove compat code.
139748
1397492016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139750
139751	Remove compat code and compat functions from mm-util.el
139752
139753	* lisp/gnus/mm-util.el (mm-mime-mule-charset-alist): Remove
139754	compat code.
139755	(mm-coding-system-priorities)
139756	(mm-mule-charset-to-mime-charset, mm-charset-after)
139757	(mm-mime-charset, mm-iso-8859-x-to-15-region): Remove compat code.
139758	(mm-detect-coding-region): Define unconditionally.
139759	(mm-detect-mime-charset-region): Ditto.
139760	(mm-coding-system-to-mime-charset): It's 'mime-charset now.
139761	(coding-system-name)
139762	(find-file-coding-system-for-read-from-filename)
139763	(find-operation-coding-system): Remove aliases.
139764
1397652016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139766
139767	Remove some compat code from mm-*.el
139768
139769	* lisp/gnus/mm-bodies.el (mm-decode-body): Ditto.
139770
139771	* lisp/gnus/mm-decode.el (mm-tmp-directory)
139772	(mm-valid-image-format-p): Remove compat code.
139773
139774	* lisp/gnus/mm-url.el (mm-url-insert-file-contents): Remove
139775	"Connection" "Close" workaround for older Emacsen.
139776
1397772016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139778
139779	Remove compat code and functions from message.el
139780
139781	* lisp/gnus/message.el (message-send-mail-function): Remove
139782	compat code.
139783	(message-dont-reply-to-names, message-mode)
139784	(message-setup-fill-variables, message-fill-paragraph)
139785	(message-remove-blank-cited-lines, message-make-from)
139786	(message-forward-rmail-make-body, message-tool-bar-gnome)
139787	(message-tab): Remove compat code.
139788	(message-completion-in-region): Remove.
139789	(message-read-from-minibuffer): Remove compat code.
139790
1397912016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139792
139793	Declare rfc1843 instead of autoloading
139794
139795	* lisp/gnus/gnus-art.el (rfc1843-decode-region): Declare
139796	instead of autoload.
139797
1397982016-02-13  Eli Zaretskii  <eliz@gnu.org>
139799
139800	Avoid signaling an error in 'dired-do-find-regexp-and-replace'
139801
139802	* lisp/dired-aux.el: Require cl-lib, so that 'cl-mapcan' is
139803	autoloaded correctly.  (Bug#22613)
139804
1398052016-02-13  Eli Zaretskii  <eliz@gnu.org>
139806
139807	Fix network-stream-tests.el for MS-Windows
139808
139809	* test/lisp/net/network-stream-tests.el
139810	(connect-to-tls-ipv6-nowait): Skip for MS-Windows builds.
139811	(connect-to-tls-ipv4-wait): Add a 0.1 sleep-for.
139812
1398132016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
139814
139815	Remove some Message compat functions
139816
139817	* lisp/gnus/message.el (message-kill-all-overlays): Define
139818	unconditionally.
139819	(message-window-inside-pixel-edges): Remove.
139820	(mail-dont-reply-to): Remove.
139821
1398222016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139823
139824	Remove some Gnus compat code
139825
139826	* lisp/gnus/gnus-art.el (gnus-mime-inline-part): Remove compat code.
139827	(gnus-mm-display-part): Ditto.
139828
139829	* lisp/gnus/gnus-start.el (gnus-dribble-read-file): Remove
139830	compat code.
139831
1398322016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139833
139834	Sort groups before inserting them into the group buffer
139835
139836	* lisp/gnus/gnus-group.el (gnus-group-describe-all-groups):
139837	Sort groups before inserting them.
139838
1398392016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139840
139841	Make "unseen" tracking work again in Gnus
139842
139843	* lisp/gnus/gnus-sum.el (gnus-update-marks): Make "unseen"
139844	tracking work again.
139845
1398462016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139847
139848	Remove Gnus compat functions defined in gnus.el
139849
139850	* lisp/gnus/gnus.el (gnus-extent-detached-p): Remove.
139851	(gnus-extent-start-open, gnus-character-to-event)
139852	(gnus-assq-delete-all, gnus-add-text-properties)
139853	(gnus-put-text-property, gnus-key-press-event-p):
139854
1398552016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139856
139857	Remove compat code from gnus-uu and win
139858
139859	* lisp/gnus/gnus-util.el (gnus-image-type-available-p): Remove
139860	compat code.
139861
139862	* lisp/gnus/gnus-uu.el (gnus-uu-tmp-dir): Remove compat code.
139863
139864	* lisp/gnus/gnus-win.el (gnus-frames-on-display-list): Remove.
139865
1398662016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139867
139868	Remove several gnus-util compat functions
139869
139870	* lisp/gnus/gnus-util.el (gnus-set-process-query-on-exit-flag): Remove.
139871	(gnus-read-shell-command): Remove.
139872	(gnus-match-substitute-replacement): Remove.
139873	(gnus-string-match-p): Remove.
139874	(gnus-string-prefix-p): Remove.
139875
1398762016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139877
139878	Remove the gnus-merge alias
139879
139880	* lisp/gnus/gnus-util.el (gnus-merge): Remove.
139881
1398822016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139883
139884	Remove the gnus-union alias
139885
139886	* lisp/gnus/gnus-util.el (gnus-union): Remove.
139887
1398882016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139889
139890	Remove the gnus-delete-alist alias
139891
139892	* lisp/gnus/gnus-util.el (gnus-run-mode-hooks): Remove compat code.
139893	(gnus-delete-alist): Remove.
139894
1398952016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139896
139897	Remove the gnus-float-time alias
139898
139899	* lisp/gnus/gnus-util.el (gnus-completion-styles): Remove
139900	compat code.
139901	(gnus-float-time): Remove.
139902
1399032016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139904
139905	Remove compat code from gnus-srvr, start and sum
139906
139907	* lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Remove
139908	compat code.
139909
139910	* lisp/gnus/gnus-start.el (gnus-check-reasonable-setup):
139911	Remove compat code.
139912
139913	* lisp/gnus/gnus-sum.el (gnus-summary-display-arrow)
139914	(gnus-summary-make-menu-bar, gnus-summary-make-tool-bar)
139915	(gnus-recenter)
139916	(gnus-summary-limit-strange-charsets-predicate)
139917	(gnus-summary-show-thread): Remove compat code.
139918
1399192016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139920
139921	Remove compat code from gnus-spec.el
139922
139923	* lisp/gnus/gnus-spec.el (gnus-lrm-string-p): Remove compat code.
139924	(gnus-balloon-face-function): Remove compat code.
139925
1399262016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139927
139928	Fix compat change in last check-in
139929
139930	* lisp/gnus/gnus-group.el
139931	(gnus-group-name-charset-group-alist): `find-coding-system'
139932	doesn't exist in Emacs.
139933
1399342016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139935
139936	Always use url-queue
139937
139938	* lisp/gnus/gnus-html.el (gnus-html-schedule-image-fetching):
139939	Always use url-queue.
139940
1399412016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139942
139943	Remove compat functions from gnus-html.el
139944
139945	* lisp/gnus/gnus-html.el (gnus-html-encode-url-chars): Remove.
139946
1399472016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139948
139949	Remove compat code from gnus-group.el
139950
139951	* lisp/gnus/gnus-group.el (gnus-group-name-charset-group-alist)
139952	(gnus-group-make-tool-bar, gnus-group-update-tool-bar): Remove compat code.
139953
1399542016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139955
139956	Define gnus-diary-kill-entire-line unconditionally
139957
139958	* lisp/gnus/gnus-diary.el (gnus-diary-kill-entire-line):
139959	Define unconditionally.
139960
1399612016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139962
139963	Remove compat code from gnus-cache and gnus-bookmark
139964
139965	* lisp/gnus/gnus-bookmark.el (gnus-bookmark-bmenu-mode-map): Ditto.
139966
139967	* lisp/gnus/gnus-cache.el (gnus-cache-decoded-group-name):
139968	Remove compat code.
139969
1399702016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139971
139972	Remove compat code from gnus-art.el
139973
139974	* lisp/gnus/gnus-art.el (gnus-article-prepare)
139975	(gnus-mime-copy-part, gnus-output-to-file)
139976	(gnus-article-reply-with-original)
139977	(gnus-button-handle-apropos-variable)
139978	(gnus-button-handle-apropos-documentation):
139979
1399802016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139981
139982	Remove compat code from gnus-agent.el
139983
139984	* lisp/gnus/gnus-agent.el (gnus-agent-make-mode-line-string):
139985	Remove compat code.
139986
1399872016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139988
139989	Rewrite gmm-labels usage to use cl-labels
139990
139991	* lisp/gnus/gmm-utils.el (gmm-tool-bar-style): Remove compat code.
139992	(gmm-labels): Remove.
139993
1399942016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
139995
139996	Remove compat code from canlock.el
139997
139998	* lisp/gnus/canlock.el (defmacro): Remove
139999
1400002016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
140001
140002	Remove compat code from auth-source
140003
140004	* lisp/gnus/auth-source.el (auth-source-read-char-choice):
140005	Remove compat code.
140006
1400072016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
140008
140009	Fix gnus-group.el compilation warnings about unprefixed variables
140010
140011	* lisp/gnus/gnus-group.el (gnus-group-update-eval-form): Avoid
140012	compilation warnings by passing in the dynamic variables as
140013	explicit lexical parameters to `eval'.
140014
1400152016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
140016
140017	Fix the :tracker slot name
140018
140019	* lisp/gnus/registry.el (registry-lookup-secondary): The
140020	`tracker' slot is called `tracker', not `:tracker'.
140021
1400222016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
140023
140024	Fix compilation warnings in gnus-art.el
140025
140026	* lisp/gnus/gnus-art.el (rfc1843-decode-region): Autoload.
140027	(gnus-article-hide): Avoid compilation warnings.
140028
1400292016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
140030
140031	Fix compilation warning in gnus-score.el
140032
140033	* lisp/gnus/gnus-score.el (gnus-art): Require to silence byte
140034	compiler.
140035
1400362016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
140037
140038	Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
140039
140040	This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
140041
140042	This makes nnimap groups not be activated.
140043
1400442016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
140045
140046	Fix encoding problem introduced by previous patch series
140047
140048	* lisp/mail/rfc2047.el: Ditto (bug#22648).
140049
140050	* lisp/mail/rfc2231.el: Fix problem created by the
140051	mm-replace-in-string conversion.
140052
1400532016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
140054
140055	Revert "Avoid defvarring prefix-less variables"
140056
140057	This reverts commit 303390bda34f98b400798d5383cf0d722e35ba19.
140058
140059	The defvars are needed if we're doing lexical-binding
140060
1400612016-02-12  Glenn Morris  <rgm@gnu.org>
140062
140063	* test/lisp/url/url-auth-tests.el (url-auth-test-digest-auth):
140064	Make it pass.
140065
140066	* test/lisp/url/url-auth-tests.el
140067	(url-auth-test-digest-auth-retrieve-cache): Fix obvious typo.
140068
1400692016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140070
140071	Finish up cl-defmethoding registry,el
140072
140073	* lisp/gnus/registry.el (initialize-instance): Use cl-defmethod.
140074
1400752016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140076
140077	Revert the gnus-replace-in-string change, fix arguments, reapply
140078
1400792016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140080
140081	Silence more message.el compilation warnings
140082
140083	* lisp/gnus/message.el (message-generate-headers): Don't use
140084	variable values directly to get the header values, because
140085	that breaks with lexical binding (without unprefixed defvars).
140086
1400872016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140088
140089	Fix various compilation warnings in message.el
140090
140091	* lisp/gnus/message.el (message-fix-before-sending): Use
140092	read-multiple-choice instead of gnus-multiple-choice.
140093	(mm-util): Require.
140094	(rfc2047): Require.
140095	(message-remove-blank-cited-lines): Use message instead of
140096	gnus-message.
140097	(message-send): Use y-or-n-p instead of gnus-y-or-n-p.
140098
1400992016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140100
140101	Silence compilation warning in mm-view
140102
140103	* lisp/gnus/mm-view.el (mm-display-inline-fontify): Silence
140104	compilation warning.
140105
1401062016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140107
140108	Fix epg-related compilation warnings in mml-sec
140109
140110	* lisp/gnus/mml-sec.el: Fix compilation warnings from the epg
140111	library.
140112
1401132016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140114
140115	rmail-dont-reply-to-names is obsolete
140116
140117	* lisp/gnus/nnmail.el (nnmail-fancy-expiry-target): Don't bind
140118	the obsolete `rmail-dont-reply-to-names' variable.
140119
1401202016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140121
140122	Partially revert the defmethod->cl-defmethod change in registry.el
140123
140124	* lisp/gnus/registry.el (initialize-instance): Use defmethod,
140125	since cl-defmethod doesn't work with :after.
140126	(initialize-instance): Ditto, but with :before.
140127
1401282016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140129
140130	Avoid obsolete function in plstore
140131
140132	* lisp/gnus/plstore.el (plstore--insert-buffer): Use setf
140133	instead of the obsolete epg-context-set-armor.
140134
1401352016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140136
140137	Use cl-defmethod in registry.el
140138
140139	* lisp/gnus/registry.el: Use cl-defmethod instead of the
140140	obsolete defmethod.
140141
1401422016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140143
140144	Make sieve-manage require sasl
140145
140146	* lisp/net/sieve-manage.el: Fix compilation warning by
140147	requiring sasl.
140148
1401492016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140150
140151	Avoid defvarring prefix-less variable
140152
140153	* lisp/gnus/mm-uu.el (mm-uu-entry): Rename from `entry'.
140154
1401552016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140156
140157	* lisp/gnus/mailcap.el: Remove usage of mailcap-delete-duplicates.
140158
1401592016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140160
140161	Don't use the obsolete char-valid-p function
140162
140163	* lisp/gnus/mm-url.el (mm-url-decode-entities): Don't use the
140164	obsolete char-valid-p function.
140165
1401662016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140167
140168	Fix missed translation in a previous commit
140169
140170	* lisp/gnus/mailcap.el (mailcap-mime-types): Fix missed
140171	translation of mailcap-delete-duplicates.
140172
1401732016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140174
140175	Avoid using mm-make-temp-file
140176
140177	* lisp/gnus/mail-source.el (mail-source-delete-crash-box): Ditto.
140178
140179	* lisp/gnus/mm-decode.el (mm-display-external): Ditto.
140180
140181	* lisp/gnus/mml-smime.el (mml-smime-openssl-encrypt): Ditto.
140182
1401832016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140184
140185	Fix compilation warning in gnus-start
140186
140187	* lisp/gnus/gnus-start.el (gnus-slave-save-newsrc): Avoid
140188	mm-make-temp-file.
140189
1401902016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140191
140192	Avoid the obsoleted defmethod
140193
140194	* lisp/gnus/gnus-icalendar.el: Use cl-defmethod instead of
140195	defmethod.
140196
1401972016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140198
140199	Avoid defvarring prefix-less variables
140200
140201	* lisp/gnus/gnus-group.el (gnus-group-update-eval-form): We
140202	don't need to `defvar' the short variables to allow `eval' to
140203	use them.
140204
1402052016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140206
140207	nnweb doesn't need unibyte buffers
140208
140209	* lisp/gnus/nnweb.el (nnweb-retrieve-headers)
140210	(nnweb-read-overview, nnweb-request-article)
140211	(nnweb-google-reference): Unibyte buffers are not needed here.
140212
1402132016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140214
140215	Encode before sending from nnspool
140216
140217	* lisp/gnus/nnspool.el (nnspool-request-post): Encode data
140218	before sending it to the news server.
140219
1402202016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140221
140222	nnrss buffers don't have to be unibyte
140223
140224	* lisp/gnus/nnrss.el (nnrss-insert): The buffer doesn't have
140225	to be unibyte just to receive data, I think.
140226
1402272016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140228
140229	Don't use mm-with-unibyte-current-buffer in mml2015
140230
140231	* lisp/gnus/mml2015.el (mml2015-mailcrypt-encrypt): Don't use
140232	mm-with-unibyte-current-buffer.
140233
1402342016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140235
140236	Don't use mm-with-unibyte-current in mml1991
140237
140238	* lisp/gnus/mml1991.el (mml1991-epg-sign): Don't use
140239	mm-with-unibyte-current.
140240
1402412016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140242
140243	Don't use mm-with-unibyte-current in mml1991
140244
140245	* lisp/gnus/mml1991.el (mml1991-pgg-sign): Don't use
140246	mm-with-unibyte-current.
140247
1402482016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140249
140250	Don't use mm-with-unibyte-buffer in utf7
140251
140252	* lisp/international/utf7.el (utf7-fragment-encode): Don't use
140253	mm-with-unibyte-buffer.
140254
1402552016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140256
140257	Remove XEmacs compat code from Gnus helper libraries
140258
140259	* lisp/gnus/plstore.el (plstore-called-interactively-p): Remove.
140260
140261	* lisp/gnus/pop3.el (pop3-make-date): Remove XEmacs compat.
140262
140263	* lisp/gnus/sieve-mode.el: Remove XEmacs compat.
140264
140265	* lisp/gnus/spam-stat.el (spam-stat-called-interactively-p): Remove.
140266
1402672016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140268
140269	Remove XEmacs compat code from Gnus backends
140270
140271	* lisp/gnus/mm-view.el (mm-inline-image-xemacs): Remove.
140272	(mm-inline-image): Rename from mm-inline-image-emacs.
140273
140274	* lisp/gnus/mml.el: Remove XEmacs compat code.
140275
140276	* lisp/gnus/nnheader.el: Remove XEmacs compat code.
140277
140278	* lisp/gnus/nnimap.el (nnimap-open-connection-1): Remove
140279	XEmacs compat code.
140280
140281	* lisp/gnus/nnir.el (nnir-run-gmane): Remove XEmacs compat code.
140282
140283	* lisp/gnus/nnmail.el (nnmail-pathname-coding-system): Remove
140284	XEmacs compat code.
140285
140286	* lisp/gnus/nnmairix.el: Remove XEmacs compat code.
140287
140288	* lisp/gnus/nnrss.el: Remove XEmacs compat code.
140289
140290	* lisp/gnus/nntp.el: Remove XEmacs compat code.
140291
1402922016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140293
140294	Remove XEmacs compat functions from mm-util.el
140295
140296	* lisp/gnus/mm-util.el (mm-special-display-p): Remove.
140297	(mm-decode-coding-string, mm-encode-coding-string)
140298	(mm-decode-coding-region, mm-encode-coding-region): Remove.
140299	(mm-string-to-multibyte): Remove.
140300	(mm-char-or-char-int-p): Remove.
140301	(mm-ucs-to-char): Remove compat versions of the function.
140302	(mm-read-coding-system): Remove.
140303	(mm-coding-system-p): Remove compat code.
140304	(mm-enrich-utf-8-by-mule-ucs): Remove.
140305	(mm-enable-multibyte, mm-disable-multibyte): Remove compat versions.
140306	(mm-delete-duplicates): Remove.
140307	(mm-multibyte-p): Remove compat versions.
140308	(mm-xemacs-find-mime-charset-1): Remove.
140309	(mm-xemacs-find-mime-charset): Remove.
140310	(mm-make-temp-file): Made obsolete.
140311	(mm-find-buffer-file-coding-system): Remove XEmacs compat.
140312
1403132016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
140314
140315	Remove Message and mm-decode XEmacs compat code
140316
140317	* lisp/gnus/message.el: Remove XEmacs compat code.
140318
140319	* lisp/gnus/mm-decode.el (mm-create-image-xemacs): Remove.
140320
140321	* lisp/gnus/mm-util.el: Remove some XEmacs compat code.
140322
1403232016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140324
140325	Remove som XEmacs compat code from message.el
140326
140327	* lisp/gnus/message.el: Remove some XEmacs compat code.
140328
1403292016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140330
140331	Remove XEmacs compat code from ietf-drums.el
140332
140333	* lisp/mail/ietf-drums.el (ietf-drums-syntax-table): Drop
140334	XEmacs compat.
140335
1403362016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140337
140338	Remove XEmacs compat code from gravatar.el
140339
140340	* lisp/gnus/gravatar.el: Remove XEmacs compat code from
140341	gravatar.el.
140342
1403432016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140344
140345	Remove more XEmacs compat code from Gnus
140346
140347	* lisp/gnus/gnus-util.el (gnus-bound-and-true-p): Remove.
140348	(gnus-timer--function): Remove.
140349
140350	* lisp/gnus/gnus-uu.el (gnus-uu-save-article): Remove XEmacs
140351	19.2 compat.
140352
140353	* lisp/gnus/gnus-win.el: Remove XEmacs compat code.
140354
1403552016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140356
140357	Remove more XEmacs compat functions from gnus-util.el
140358
140359	* lisp/gnus/gnus-util.el (gnus-put-display-table): Remove.
140360	(gnus-get-display-table): Remove.
140361	(gnus-format-message): Remove.
140362
1403632016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140364
140365	Remove more XEmacs compat functions from Gnus
140366
140367	* lisp/gnus/gnus-util.el (gnus-next-char-property-change): Remove.
140368	(gnus-previous-char-property-change): Remove.
140369	(gnus-graphic-display-p): Remove.
140370	(gnus-select-frame-set-input-focus): Remove.
140371
1403722016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140373
140374	Remove more XEmacs compat code from gnus-util
140375
140376	* lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
140377	all its usages).
140378	(gnus-invisible-p): Remove.
140379
1403802016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140381
140382	Remove gnus-make-local-hook
140383
140384	* lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
140385	all its usages).
140386
1403872016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140388
140389	gnus-replace-in-string -> replace-regexp-in-string
140390
140391	* lisp/gnus/gnus-util.el (gnus-replace-in-string): Declare
140392	obsolete.  Transform all usages of it into
140393	replace-regexp-in-string.
140394
140395	* lisp/gnus/mailcap.el (mailcap-replace-in-string): Remove.
140396
1403972016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140398
140399	Remove Gnus XEmacs compat
140400
140401	* lisp/gnus/gnus-start.el (gnus-dribble-enter): Remove comment
140402	about code that doesn't work in XEmacs.
140403
140404	* lisp/gnus/gnus-sum.el: Remove XEmacs compat.
140405
140406	* lisp/gnus/gnus-topic.el: Remove XEmacs compat.
140407
1404082016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140409
140410	Remove compat functions in gnus-spec.el
140411
140412	* lisp/gnus/gnus-spec.el (gnus-string-width-function): Remove.
140413	(gnus-substring-function): Remove.
140414	(gnus-use-correct-string-widths): Remove.
140415	(gnus-make-format-preserve-properties): Remove.
140416	(gnus-xmas-format): Remove.
140417
140418	* lisp/gnus/gnus-srvr.el (gnus-server-mode): Remove XEmacs compat.
140419
1404202016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140421
140422	Remove Gnus XEmacs compat functions
140423
140424	* lisp/gnus/gnus-registry.el: Remove XEmacs compat.
140425
140426	* lisp/gnus/gnus-salt.el: Remove XEmacs compat.
140427
140428	* lisp/gnus/gnus-score.el (gnus-decay-score): Remove XEmacs compat.
140429
1404302016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140431
140432	Remove Gnus XEmacs compatibility
140433
140434	* lisp/gnus/gnus-demon.el (gnus-demon-idle-since): Remove
140435	XEmacs compat.
140436
140437	* lisp/gnus/gnus-dired.el: Remove XEmacs compat.
140438
140439	* lisp/gnus/gnus-draft.el: Remove XEmacs compat.
140440
140441	* lisp/gnus/gnus-gravatar.el (gnus-gravatar-insert): Remove
140442	XEmacs compat.
140443
140444	* lisp/gnus/gnus-group.el: Remove XEmacs compat.
140445
140446	* lisp/gnus/gnus-html.el: Remove XEmacs compat.
140447
140448	* lisp/gnus/gnus-ml.el: Remove XEmacs compat.
140449
140450	* lisp/gnus/gnus-picon.el (gnus-picon-style): Remove XEmacs comment.
140451
1404522016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140453
140454	Don't use image-map if it isn't defined
140455
140456	* lisp/net/shr.el (shr-image-map): Only use image-map as a
140457	parent if it's defined (bug#22614).
140458
1404592016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140460
140461	Check for MagickAutoOrientImage
140462
140463	* configure.ac: Check for MagickAutoOrientImage.
140464
140465	* src/image.c (imagemagick_load_image): Don't use
140466	MagickAutoOrientImage unless it's available.
140467
1404682016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
140469
140470	Document EXIF image rotation
140471
140472	* doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
140473
1404742016-02-10  Dima Kogan  <dima@secretsauce.net>
140475
140476	Support integer image rotation and respect EXIF rotations
140477
140478	* src/image.c (imagemagick_load_image): Allow integer rotations in
140479	addition to floating point rotations (bug#22591).
140480	* src/image.c (imagemagick_load_image): Images that have an
140481	orientation given in EXIF and have no explicit :rotation tag are now
140482	pre-rotated.  All information such as width/height is reported for the
140483	rotated image.
140484
1404852016-02-10  Wolfgang Jenkner  <wjenkner@inode.at>
140486
140487	* lisp/net/shr.el (image-map): Defvar it.  (Bug#22614)
140488
1404892016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140490
140491	* lisp/gnus/gnus-cite.el: Remove XEmacs compat code.
140492
1404932016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140494
140495	Remove compat code from gnus-bookmark.el
140496
140497	* lisp/gnus/gnus-bookmark.el (gnus-bookmark-mouse-available-p): Remove.
140498	(gnus-bookmark-remove-properties): Remove.
140499
1405002016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140501
140502	Remove XEmacs compat code from gnus-a*.el
140503
140504	* lisp/gnus/gnus-agent.el: Remove compat code.
140505
140506	* lisp/gnus/gnus-art.el: Remove compat code.
140507
140508	* lisp/gnus/gnus-async.el: Remove compat code.
140509
1405102016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140511
140512	Remove gmm compat functions
140513
140514	* lisp/gnus/gmm-utils.el (gmm-image-search-load-path): Remove.
140515	(gmm-write-region): Remove.
140516	(gmm-called-interactively-p): Remove.
140517
1405182016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140519
140520	* lisp/gnus/ecomplete.el: Remove XEmacs compat code.
140521
1405222016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140523
140524	Remove compat code from compface.el
140525
140526	* lisp/image/compface.el: Remove XEmacs compat code throughout.
140527
1405282016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140529
140530	Remove the now empty gnus-ems.el and references to it
140531
1405322016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140533
140534	Remove Gnus compat names for mouse bindings
140535
140536	* lisp/gnus/gnus-ems.el (gnus-widget-button-keymap): Remove.
140537	(gnus-down-mouse-2): Remove.
140538	(gnus-down-mouse-3): Remove.
140539
1405402016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140541
140542	Drop Gnus compat functions
140543
140544	* lisp/gnus/gnus-ems.el (gnus-mule-max-width-function): Remove.
140545
140546	* lisp/gnus/gnus-util.el (gnus-kill-all-overlays): Move here.
140547
140548	* lisp/gnus/gnus.el (gnus-mode-line-modified): Remove.
140549
1405502016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140551
140552	Get rid of gnus-ems-redefine
140553
140554	* lisp/gnus/gnus-ems.el (gnus-mouse-face-prop): Remove.
140555
1405562016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140557
140558	* lisp/gnus/gnus-spec.el: Move definition here from gnus-ems.el.
140559
1405602016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140561
140562	Remove Gnus compat code
140563
140564	* lisp/gnus/gnus-ems.el (gnus-ems-redefine): Remove
140565	transitional code from ten years ago.
140566
1405672016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140568
140569	Allow interactively scaling past :max-width etc
140570
140571	* lisp/image.el (image--current-scaling)
140572	(image--image-without-parameters): New functions.
140573	(image--change-size): Use them to allow changing the size of a
140574	image even if it has :width/:max-width (etc.) already set.
140575
1405762016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140577
140578	* lisp/gnus/mm-decode.el (shr-image-map): Compilation fix.
140579
1405802016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140581
140582	Allow accessing the image commands via shr
140583
140584	* lisp/gnus/mm-decode.el (mm-convert-shr-links): Allow
140585	accessing the image commands.
140586
140587	* lisp/net/shr.el (shr-image-map): New map used for images.
140588	(shr-urlify): Don't overwrite image maps when applying URL maps.
140589
1405902016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140591
140592	Use a sparse image keymap
140593
140594	* lisp/image.el (image-map): Use a sparse keymap.
140595
1405962016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140597
140598	Put a keymap on images created with insert-image and friends
140599
140600	* lisp/image.el (image-save): New command.
140601	(image-rotate): Ditto.
140602	(image-map): New keymap.
140603	(insert-image): Put the image-map on all images.
140604	(insert-sliced-image): Ditto.
140605	* doc/lispref/display.texi (Showing Images): Document the
140606	image map.
140607
1406082016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140609
140610	Fix some folding issues in read-multiple-choice
140611
140612	* lisp/subr.el (read-multiple-choice): Fix folding when you
140613	have many items.
140614
1406152016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140616
140617	Fix typo in last checkin
140618
1406192016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140620
140621	Remove Gnus compat functions
140622
140623	* lisp/gnus/gnus-ems.el (gnus-mark-active-p)
140624	(gnus-region-active-p, gnus-select-lowest-window)
140625	(gnus-summary-display-table, gnus-max-width-function): Remove
140626	compat functions.
140627
1406282016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140629
140630	Move non-compat Gnus functions to gnus-util.el
140631
140632	* lisp/gnus/gnus-util.el (gnus-remove-image, gnus-put-image)
140633	(gnus-create-image, gnus-image-type-available-p): Move here
140634	from gnus-ems.el, since these aren't compat functions.
140635
1406362016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
140637
140638	Omit valloc decl if redundant
140639
140640	* src/gmalloc.c (valloc): Omit decl if malloc.h is included,
140641	to pacify --enable-gcc-warnings.
140642
1406432016-02-09  Wolfgang Jenkner  <wjenkner@inode.at>
140644
140645	Restore the calloc family.
140646
140647	* src/gmalloc.c (calloc, gcalloc, hybrid_calloc): Restore definitions.
140648	They were lost in a4817d8 but calloc is still (marginally) used in
140649	code statically liked with emacs, so hybrid_calloc is needed.
140650	Also, in the non-hybrid case, we can't get rid of calloc anyway as
140651	other libraries liked with emacs may need it.
140652	* src/conf_post.h: Restore redefinition of calloc to hybrid_calloc.
140653
1406542016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
140655
140656	Remove some Gnus compat functions
140657
140658	* lisp/gnus/gnus-ems.el (gnus-string-mark-left-to-right)
140659	(gnus-window-inside-pixel-edges, gnus-set-process-plist)
140660	(gnus-process-plist, gnus-process-get, gnus-process-put): Remove.
140661
1406622016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
140663
140664	-
140665
140666	-
140667
1406682016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
140669
140670	Merge from origin/emacs-25
140671
140672	4feb962 * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
140673	cc419fb Don't inloop gnus-uu-mark-thread on the last thread
140674	51c77a2 Display non-ASCII group names better in prompts
140675	f93d669 Default to gpg2 instead of gpg
140676
1406772016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
140678
140679	Merge from origin/emacs-25
140680
140681	9ffe7dd * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
140682	16140f7 * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
140683	3db6adb * lisp/isearch.el (search-default-mode)
140684	4ea1ea7 * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
140685	c77ffc8 Use monitor's resolution for positioning tooltips
140686	49e5749 Fix file-notify-test on MS-Windows
140687	be1d874 Fix issues found by auditing w32notify code
140688	87ae218 Extend etags Ruby support for accessors
140689	aa35257 Update publicsuffix.txt.
140690	6816bff Ensure that Gnus dribble handling allows removing entries
140691	691feae Be consistent when using encoded strings in nnimap data
140692	3ed423b Display the decoded Gnus group name
140693	5428b5b Use completion-ignore-case instead of defining command
140694
1406952016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
140696
140697	Merge from origin/emacs-25
140698
140699	1eaf68f * test/automated/file-notify-tests.el (file-notify-test06-many-events):
140700	d333716 ; * etc/NEWS: Expand news entry for scss-mode
140701	c32c16f ; Better document changes in ls-lisp default behavior
140702	dc6eed2 Fix doc string of tls-program
140703
1407042016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
140705
140706	Merge from origin/emacs-25
140707
140708	2c117fc * etc/NEWS: Document new mpc.el features
140709	71a0496 * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
140710	9dfece1 Correctly fontify C++ initializations which "look like" functions.
140711	4485222 Improve newsticker-treeview-selection-face
140712	4236944 Minor fix in tagging Ruby accessors by etags
140713	35fc77d Spelling fixes
140714	3dda110 Remove 'def X' from the example
140715
1407162016-02-09  Eli Zaretskii  <eliz@gnu.org>
140717
140718	Fix network-stream-tests on MS-Windows
140719
140720	* test/lisp/net/network-stream-tests.el (make-local-unix-server):
140721	Skip if local sockets are not supported.
140722
1407232016-02-09  Michael Albinus  <michael.albinus@gmx.de>
140724
140725	* admin/notes/bug-triage: Fix bug priorities.  Explain colors in debbugs-gnu.
140726
1407272016-02-09  Eli Zaretskii  <eliz@gnu.org>
140728
140729	Disable 'timer-list'
140730
140731	* lisp/emacs-lisp/timer-list.el: Make 'timer-list' a disabled
140732	command.
140733
1407342016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
140735
140736	Avoid aligned_alloc static/extern collision
140737
140738	* src/alloc.c (aligned_alloc): Define to private name when a
140739	static function, to avoid collision with lisp.h extern decl.
140740	Reported by John Yates in:
140741	https://lists.gnu.org/r/emacs-devel/2016-02/msg00439.html
140742
1407432016-02-08  David Edmondson  <dme@dme.org>
140744
140745	src/process.c Correctly convert AF_INET6 addresses
140746
140747	* src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
140748	converted to a list of 16 bit quantities by
140749	conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
140750	same scheme rather than expecting a (longer) list of 8 bit
140751	quantities.
140752
1407532016-02-08  Michal Nazarewicz  <mina86@mina86.com>
140754
140755	Make `message-beginning-of-line' aware of folded headers
140756
140757	* lisp/gnus/message.el (message-beginning-of-header): New function which
140758	moves point to the beginning of a mail header.  The function is aware of
140759	folded headers and with non-nil argument looks for the true beginning of
140760	a header while with nil argument moves to the indented text of header's
140761	value.
140762	(message-beginning-of-line): Function is now aware of folded headers and
140763	either moves point to the indention of a header or, in visual-line-mode,
140764	searches for the beginning of the header.
140765
1407662016-02-08  Michal Nazarewicz  <mina86@mina86.com>
140767
140768	Optimize ‘point in message header’ check
140769
140770	* lisp/gnus/message.el (message-point-in-header-p): Replace two unbound
140771	regular expression matches with a single bound string match thus
140772	reducing amount of work the function is doing.
140773
1407742016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
140775
140776	Make the `R' command get the correct relative <img>s
140777
140778	* lisp/net/eww.el (eww-readable): Preserve the base URL so
140779	that image expansions are fetched from the right place (bug#22605).
140780
1407812016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
140782
140783	Add a mode to list and cancel timers
140784
140785	* doc/lispref/os.texi (Timers): Menton `timer-list'.
140786
140787	* lisp/emacs-lisp/timer-list.el: New file.
140788
1407892016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
140790
140791	Add new commands to allow changing the size of images
140792
140793	* lisp/image.el (image-increase-size, image-decrease-size):
140794	New commands.
140795	(image-change-size): New function.
140796
1407972016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
140798
140799	Allow the image scale to be a floating point number
140800
140801	* src/image.c (compute_image_size): The scale can be a
140802	floating point number.
140803
1408042016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
140805
140806	Add an IPv6 test
140807
140808	* test/lisp/net/network-stream-tests.el
140809	(connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
140810
1408112016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
140812
140813	Use gnutls-serv instead of openssh
140814
140815	* test/lisp/net/network-stream-tests.el (make-tls-server): Use
140816	gnutls-serv instead of openssh.
140817
1408182016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
140819
140820	Skip TLS tests if we don't have openssl
140821
140822	* test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
140823	TLS tests if we don't have openssl and GnuTLS.
140824
1408252016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
140826
140827	Add an IPv6 test
140828
140829	* test/lisp/net/network-stream-tests.el
140830	(connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
140831
1408322016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
140833
140834	Use gnutls-serv instead of openssh
140835
140836	* test/lisp/net/network-stream-tests.el (make-tls-server): Use
140837	gnutls-serv instead of openssh.
140838
1408392016-02-08  Daniel Colascione  <dancol@dancol.org>
140840
140841	Performance improvements for vc-hg
140842
140843	Teach vc-hg how to read some Mercurial internal data structures,
140844	allowing us to avoid the need to run hg status -A, which is very slow
140845	for large repositories.  Fall back to running hg if anything looks
140846	funny.  vc-hg now puts the _working directory_ revision in the
140847	modeline instead of the file revision, which greatly improves
140848	performance and which allows us to again skip running hg in the case
140849	that we have an active bookmark.
140850
140851	* lisp/vc/vc-hg.el (vc-hg-state): Try calling `vc-hg-statefast'
140852	(vc-hg-symbolic-revision-styles)
140853	(vc-hg-use-file-version-for-mode-line-version)
140854	(vc-hg-parse-hg-data-structures): New user preferences
140855	(vc-hg--active-bookmark-internal, vc-hg--run-log)
140856	(vc-hg--symbolic-revision, vc-hg-mode-line-string)
140857	(vc-hg--read-u8, vc-hg--read-u32-be)
140858	(vc-hg--raw-dirstate-search, vc-hg--cached-dirstate-search)
140859	(vc-hg--parts-to-string, vc-hg--pcre-to-elisp-re)
140860	(vc-hg--glob-to-pcre, vc-hg--hgignore-add-pcre)
140861	(vc-hg--hgignore-add-glob, vc-hg--hgignore-add-path)
140862	(vc-hg--slurp-hgignore-1, vc-hg--slurp-hgignore)
140863	(vc-hg--ignore-patterns-valid-p)
140864	(vc-hg--ignore-patterns-ignored-p, vc-hg--time-to-fixnum)
140865	(vc-hg--file-ignored-p, vc-hg--read-repo-requirements)
140866	(vc-hg--requirements-understood-p, vc-hg--dirstate-scan-cache)
140867	(vc-hg-state-fast): New functions.
140868	(vc-hg--hgignore-patterns, vc-hg--hgignore-filenames)
140869	(vc-hg--cached-ignore-patterns, vc-hg--dirstate-scan-cache)
140870	(vc-hg--dirstate-scan-cache): New internal variables.
140871	* lisp/vc/vc-hooks.el (vc-refresh-state): Invoke vc find-file-hook
140872	before updating modeline.
140873
1408742016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
140875
140876	Skip TLS tests if we don't have openssl
140877
140878	* test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
140879	TLS tests if we don't have openssl and GnuTLS.
140880
1408812016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
140882
140883	Automatically scale images up on high-density screens
140884
140885	* doc/lispref/display.texi (ImageMagick Images): Mention :scale.
140886	(Defining Images): Mention image-scaling-factor.
140887
140888	* lisp/image.el (image-compute-scaling-factor): New function
140889	(bug#22172).
140890	(create-image): Use it.
140891	(image-scaling-factor): New variable.
140892
140893	* src/image.c (compute_image_size): Take :scale into account.
140894
1408952016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
140896
140897	Ensure progress when fetching from the queue
140898
140899	* lisp/url/url-queue.el (url-queue-check-progress): Ensure
140900	that we have progress when fetching queued requests (bug#22576).
140901
1409022016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
140903
140904	Make mail-extract-address-components return the user name more
140905
140906	* lisp/mail/mail-extr.el (mail-extract-address-components):
140907	Return the name even if it's the same as the mailbox name (if
140908	`mail-extr-ignore-single-names' isn't set) (bug#22594).
140909
1409102016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
140911
140912	Message no longer warns about unknown top level domains
140913
1409142016-02-07  Jarno Malmari  <jarno@malmari.fi>
140915
140916	Add tests for url-auth
140917
140918	* test/lisp/url/url-auth-tests.el: New file.
140919
1409202016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
140921
140922	Add a TLS connection test
140923
140924	* test/lisp/net/network-stream-tests.el (connect-to-tls): Add
140925	a TLS connection test.
140926
1409272016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
140928
140929	Add more network tests
140930
140931	* test/lisp/net/network-stream-tests.el (echo-server-nowait):
140932	New test.
140933
1409342016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
140935
140936	Add network tests
140937
140938	* test/lisp/net/network-stream-tests.el: New suite of network tests.
140939
1409402016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
140941
140942	Add a TLS connection test
140943
140944	* test/lisp/net/network-stream-tests.el (connect-to-tls): Add
140945	a TLS connection test.
140946
1409472016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
140948
140949	Add more network tests
140950
140951	* test/lisp/net/network-stream-tests.el (echo-server-nowait):
140952	New test.
140953
1409542016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
140955
140956	Add network tests
140957
140958	* test/lisp/net/network-stream-tests.el: New suite of network tests.
140959
1409602016-02-07  Rasmus Pank Roulund  <rasmus@gmx.us>
140961
140962	Allow various Gnus and Message address variables to be functions
140963
140964	* doc/misc/gnus.texi (To From Newsgroups):
140965	gnus-ignored-from-addresses can be a function.
140966
140967	* doc/misc/message.texi (Wide Reply):
140968	message-dont-reply-to-names can be a function.
140969
140970	* lisp/gnus/gnus-icalendar.el (gnus-icalendar-identities):
140971	message-alternative-emails can be a function.
140972
140973	* lisp/gnus/gnus-notifications.el (gnus-notifications):
140974	message-alternative-emails can be a function (bug#22315).
140975
140976	* lisp/gnus/gnus-sum.el
140977	(gnus-summary-from-or-to-or-newsgroups):
140978	gnus-ignored-from-addresses can be a function (bug#22315).
140979
1409802016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
140981
140982	Fix typo in Gnus regexp
140983
140984	* lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Fix
140985	typo in last change to this regexp (bug#22592).
140986
1409872016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
140988
140989	Port to FreeBSD x86
140990
140991	Reported by Herbert J. Skuhra in:
140992	https://lists.gnu.org/r/emacs-devel/2016-02/msg00336.html
140993	* src/lisp.h (NONPOINTER_BITS) [__FreeBSD__]: Zero in this case too,
140994	since malloc always returns a multiple of 8 in FreeBSD.
140995
1409962016-02-07  Alan Mackenzie  <acm@muc.de>
140997
140998	On leaving CC Mode, clean up by removing character properties.
140999
141000	* lisp/progmodes/cc-mode.el (c-leave-cc-mode-mode): Remove from the buffer
141001	all instances of the text properties/extents category, syntax-table,
141002	c-is-sws, c-in-sws, c-type, and c-awk-NL-prop.
141003
1410042016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
141005
141006	message-valid-fqdn-regexp no longer exists
141007
141008	* lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Don't use
141009	the no-longer-existing message-valid-fqdn-regexp variable.
141010
1410112016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
141012
141013	Remove message-valid-fqdn-regexp, since it changes too much now
141014
141015	* lisp/gnus/message.el (message-valid-fqdn-regexp): Remove.
141016	(message-bogus-recipient-p): Don't use it any more.
141017	(message-make-fqdn): Ditto.  Suggested by Lars-Johan Liman.
141018
1410192016-02-06  Paul van der Walt  <paul@denknerd.org>
141020
141021	Match "Re :" as a "Re:" prefix
141022
141023	* lisp/gnus/message.el (message-subject-re-regexp): Also match
141024	"Re :" as a "Re:" prefix (commonly used in France).
141025
1410262016-02-06  Adam Sjøgren  <asjo@koldfront.dk>
141027
141028	lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
141029
141030	* lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
141031
1410322016-02-06  David Edmondson  <dme@dme.org>
141033
141034	src/process.c Correctly convert AF_INET6 addresses
141035
141036	* src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
141037	converted to a list of 16 bit quantities by
141038	conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
141039	same scheme rather than expecting a (longer) list of 8 bit
141040	quantities.
141041
1410422016-02-05  Martin Jesper Low Madsen  <martin@martinjlowm.dk>
141043
141044	Search for host/port combinations in auth-source on OS X
141045
141046	* lisp/gnus/auth-source.el (auth-source-macos-keychain-search):
141047	Search for all host/port (or protocol) combinations for a match in
141048	the OS X keychain.
141049
1410502016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
141051
141052	Remove nonsensical setting of gnus-newsgroup-unseen
141053
141054	* lisp/gnus/gnus-sum.el (gnus-update-marks): Remove nonsensical
141055	setting of gnus-newsgroup-unseen.
141056
1410572016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
141058
141059	Use underline on all terminals that support it
141060
141061	* lisp/subr.el (read-multiple-choice): Use
141062	display-supports-face-attributes-p instead of
141063	display-graphic-p to determine whether we can use underlining.
141064
1410652016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
141066
141067	Make the nsm query say what it did after the user interaction
141068
141069	* lisp/net/nsm.el (nsm-query): Issue a message about
141070	aborting/accepting messages (suggested by N. Jackson)
141071	(bug#22531).
141072
1410732016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
141074
141075	Omit XLI (init) == 0 optimization in make-vector
141076
141077	* src/alloc.c (Fmake_vector): Simplify by omitting the (XLI (init)
141078	== 0) case, as this optimization is probably not worth the hassle.
141079	Just for the record, the test for that case could have been
141080	(XLI (init) % ((EMACS_UINT) -1 / UCHAR_MAX) == 0) (!),
141081	assuming the typical platform with no padding bits and where
141082	conversion to int omits the most significant bits.
141083
1410842016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
141085
141086	* autogen.sh: Port to dash (Bug#22556).
141087
1410882016-02-05  Michael Albinus  <michael.albinus@gmx.de>
141089
141090	Minor cleanup for Tramp "doas".
141091
141092	* doc/misc/tramp.texi (Inline methods): Add "doas" method.
141093
141094	* etc/NEWS: Add Tramp connection method "doas".
141095
141096	* lisp/net/tramp-sh.el (tramp-methods) <doas>:
141097	Add `tramp-remote-shell-args'.
141098
1410992016-02-05  Xi Lu  <lx@shellcodes.org>
141100
141101	* lisp/net/tramp-sh.el (tramp-methods) <doas>: Add.  (Bug#22542)
141102
141103	(tramp-default-user-alist): Add rule for "doas".
141104	(top): Completion function for "doas" is
141105	`tramp-completion-function-alist-su'.
141106
1411072016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
141108
141109	Restore the window configuration
141110
141111	* lisp/net/nsm.el (nsm-query-user): Restore the window
141112	configuration (bug#22532).
141113
1411142016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
141115
141116	Use an X popup in read-multiple-choice if running from a mouse command
141117
141118	* lisp/subr.el (read-multiple-choice): Use an X popup if
141119	called from a mouse action (bug#19368).
141120
1411212016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
141122
141123	Display cursor in echo area when prompting
141124
141125	* lisp/subr.el (read-multiple-choice): Display the cursor in
141126	the echo area when prompting (bug#19368).
141127
1411282016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
141129
141130	Make NSM prompting clearer
141131
141132	* lisp/net/nsm.el (nsm-query-user): Use read-multiple-choice
141133	to prompt in a nicer way (bug#19368).
141134
1411352016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
141136
141137	Underline read-multiple-choice-face
141138
141139	* lisp/faces.el (read-multiple-choice-face): Also underline
141140	the choice.
141141
1411422016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
141143
141144	Make url.el use async DNS
141145
141146	* lisp/url/url-gw.el (url-open-stream): Use non-blocking DNS.
141147
141148	* src/process.c (syms_of_process): Add a `dns' subfeature for
141149	make-network-process.
141150
1411512016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
141152
141153	Only do async DNS if requested with :nowait 'dns
141154
141155	* doc/lispref/processes.texi (Network Processes): Mention the
141156	dns value of :nowait.
141157
141158	* src/process.c (Fmake_network_process): Only do async DNS if
141159	:nowait is `dns'.
141160
1411612016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
141162
141163	Add sanity check for checking async DNS
141164
141165	* src/process.c (check_for_dns): Disregard processes that have
141166	already been killed.
141167
1411682016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
141169
141170	Make the read-multiple-choice prompt a bit prettier
141171
141172	* doc/lispref/commands.texi (Reading One Event): Mention
141173	read-multiple-choice-face.
141174
141175	* lisp/subr.el (read-multiple-choice): Make the prompting a bit
141176	prettier.
141177
1411782016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
141179
141180	Prefer memcpy and memset to doing it by hand
141181
141182	* src/alloc.c (Fmake_vector):
141183	* src/ccl.c (setup_ccl_program):
141184	Use memset to clear array.
141185	* src/alloc.c (Fvector, Fmake_byte_code):
141186	* src/charset.c (Fdefine_charset_internal):
141187	Use memcpy to copy array.
141188
1411892016-02-04  Nicolas Petton  <nicolas@petton.fr>
141190
141191	Do not ignore redirections of 301, 302 and 307 status codes
141192
141193	The current version of HTTP/1.1 (RFC 7231) no longer requires
141194	confirmation on 301, 302 or 307 status codes, therefore we do not have
141195	to ignore redirects for other requests than GET and HEAD.
141196
141197	* lisp/url/url-http.el (url-http-parse-headers): Do not ignore 301, 302
141198	and 307 redirects for other requests than GET and HEAD.
141199
1412002016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
141201
141202	* lisp/net/eww.el (eww-switch-to-buffer): Use pop-to-buffer-same-window instead.
141203
1412042016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
141205
141206	Simplify USE_ALIGNED_ALLOC
141207
141208	* src/alloc.c (USE_ALIGNED_ALLOC): Simplify, now that we’ve merged
141209	in the emacs-25 changes.  Omit no-longer-needed decl for aligned_alloc.
141210
1412112016-02-04  Eric Abrahamsen  <eric@ericabrahamsen.net>
141212
141213	Honor docstring of gnus-group-get-new-news
141214
141215	* lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg
141216	is t, but non-numeric, unconditionally consider all groups to need
141217	updating.
141218
1412192016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
141220
141221	New function read-multiple-choice
141222
141223	* doc/lispref/commands.texi (Reading One Event): Document
141224	read-multiple-choice.
141225
141226	* lisp/faces.el (read-multiple-choice-face): New face.
141227
141228	* lisp/subr.el (read-multiple-choice): New function.
141229
1412302016-02-03  John Wiegley  <johnw@newartisans.com>
141231
141232	Merge from origin/emacs-25
141233
141234	ee73997 Make erc work better when encountering unknown prefix chars
141235	b99141d Make erc completion case-insensitive again
141236	66c4620 Make complection in erc use consistent casing
141237	8c562b2 Make /QUIT in erc more robust
141238	d93d2c5 Make tracking faces in Emacs work more reliably
141239	af6ab7e Make shr not bug out on images on non-graphical displays
141240	3311f40 Fix bookmark display widths
141241	d90ab1e Fix typo in eww-make-unique-file-name
141242	7f81825 Make it possible to TAB to input fields
141243	a43a1dc Insert complete alt texts when images are disabled
141244	56ed4e1 Allow eww text fields to grow
141245	66b315c Make erc work when subword-mode is switched on
141246	255b68f Fix IMAP doc example
141247	91557f5 Quoting fixes in doc strings and diagnostics
141248	2c0dc9f Fix warning message in hack-local-variables
141249	504696d Etags: yet another improvement in Ruby tags
141250	8784ebf Fix x-popup-menu on TTYs without a mouse
141251	8b87ecb * lisp/emacs-lisp/map.el: Improvements to the docstring of the
141252	        pcase macro
141253	6191003 Use pop-to-buffer-same-window in eww
141254	fe321fd * autogen.sh: Revert all recent changes.
141255	74ebd4a * make-dist: Updates related to nt/.
141256	737193a * make-dist: Add modules/.
141257	3696bf2 * make-dist: Update for super-special file that can't live in etc/.
141258	a4278e2 Fix failure to compile ns-win.el in parallel builds
141259	860da4d Fix names of tags generated for Ruby accessors
141260	f6213ce Fix file-name recognition in 'etags'
141261	e42e662 Change Ruby file names and extensions recognized by 'etags'
141262	58bfb6a More improvements for Ruby support in 'etags'
141263	c04e911 Add --git-config option to autogen.sh
141264	5713466 Fix editing undo changes in eww fields
141265	51362d6 Allow the user more control of popping up the eww window
141266	ee0fbd8 Make eww-browse-url with new-window parameter work again
141267	9c3142d Clean up eww code slightly
141268	cb035f3 Don't insert nil faces in shr
141269	4c3fae3 ; * lisp/progmodes/prolog.el: Remove some obsolete commentary.
141270	93f2153 Improve the custom type of some user options.
141271	9f60d7e Mark some risky calendar variables.
141272	1d07dcd Highlight two additional SCSS keywords
141273	ee8b466 Recommend enabling integrity-checking in git
141274	e639e10 Some corrections in Elisp manual
141275	d766ca8 Chatter when autogen.sh changes Git configuration
141276	3b734e1 * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
141277	43cb9f8 Omit unnecessary history from Lisp intro
141278	2fbd1da * etc/HISTORY: Add some more history, plus git tags.
141279	c90e1b4 Improve elisp “Security Considerations” doc
141280	cedd7ca autogen.sh now arranges for git to check hashes
141281	86ce76b ; Fix ChangeLog.2 commit ID.
141282	7b1d2b1 Fix (c & 040) typo in emergency escapes
141283	a8273da Fix display of overlay strings with 'display' and 'box' property
141284	fc48106 Fix imap-starttls-open
141285	cdecbed Fix return value of imap-starttls-open
141286	20c7e34 ; * etc/NEWS: Fix renamed command name
141287	98bdbdb Correct reference to DARWIN_OS preprocessor symbol
141288	b250d29 Spelling fix
141289	b920a0e Spelling fixes
141290	93b144b Pacify GCC on C library without glibc API
141291
1412922016-02-03  John Wiegley  <johnw@newartisans.com>
141293
141294	Merge from origin/emacs-25
141295
141296	ea26c8a * lisp/net/browse-url.el (browse-url-default-browser): Lower
141297	        priority of non-free Chrome.
141298	0fac75f Improve the custom type of some user options.
141299	2df0e04 Highlight CSS variables with variable name face
141300	3cf5e81 * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not
141301	        user-serviceable.
141302	2a5233c Mark some user options that can get evalled as risky.
141303	39b166f Disable DebPrint in sys_read on MS-Windows
141304	9fd0189 ;Fix ChangeLog entry
141305	4bb7233 Fix typos in Introduction to Emacs Lisp manual
141306
1413072016-02-03  Mark Oteiza  <mvoteiza@udel.edu>
141308
141309	Add a new command to switch between erc buffers
141310
141311	* doc/misc/eww.texi: Document eww-switch-to-buffer and its keybinding
141312	* etc/NEWS: Mention new command
141313	* lisp/net/eww.el (eww-mode-map): Bind eww-switch-to-buffer to "s"
141314	(eww-mode-map): Add menu item
141315	(eww-switch-to-buffer): New command
141316
1413172016-02-03  David Edmondson  <dme@dme.org>
141318
141319	Make erc work better when encountering unknown prefix chars
141320
141321	* lisp/erc/erc.el (erc-channel-receive-names): Output a warning
141322	instead of erroring out on unknown prefix chars (bug#22380).
141323
1413242016-02-03  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
141325
141326	Allow sending empty hidden values in eww
141327
141328	* lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
141329	values (bug#22388).
141330
1413312016-02-03  Andrew Hyatt  <ahyatt@gmail.com>
141332
141333	Remove packages obsoleted before Emacs 24.
141334
141335	In accordance with the policy discussed in the emacs-devel list,
141336	packages that have been obsoleted for a full major release cycle are up
141337	for deletion.
141338
141339	This removes almost all packages that are now eligible for deletion,
141340	with the exception of "cl-compat", which seems it is likely to still be
141341	used, and "optional", which offers some functionality that doesn't have
141342	a replacement yet.
141343
1413442016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
141345
141346	Mention context when resume from emergency escape
141347
141348	That way, if the user has been doing something else for a while,
141349	they are reminded of the situation when restarting Emacs,
141350	and are more likely to understand the two questions.
141351	* doc/emacs/trouble.texi (Emergency Escape): Document this.
141352	* src/keyboard.c (handle_interrupt): Implement this.
141353
1413542016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
141355
141356	Port aligned_alloc decl to Cygwin.
141357
141358	Problem reported by Ken Brown (Bug#22522#38).
141359	* configure.ac (aligned_alloc): Check for decl too.
141360	* src/lisp.h (aligned_alloc): Declare if not already declared.
141361
1413622016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
141363
141364	autogen.sh now configures git only on request
141365
141366	* autogen.sh (do_autoconf, do_git): New vars.
141367	Support new arguments --help, all, autoconf, git.
141368	By default, just do autoconf-related configuration, not git.
141369	Prefer 'echo' to 'cat <<EOF ...', as this tends to avoid temp files.
141370	If GNU cp is available, use it to backup .git/config before
141371	changing it.  When configuring git, chatter about what is being
141372	done, and configure git to check hashes.  Avoid some duplicate
141373	file name specification when creating git hooks.
141374
141375	* GNUmakefile (ALL_IF_GIT): New macro.
141376	(configure): Use it.
141377	* INSTALL.REPO: Suggest './autogen.sh all'.
141378
1413792016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
141380
141381	Doc fixes and refactorings based on comments from Eli Zaretskii
141382
141383	* doc/lispref/processes.texi (Network Processes): Clarify the
141384	meaning of :tls-parameters.
141385
141386	* lisp/net/gnutls.el (open-gnutls-stream): Clarify :nowait.
141387
141388	* lisp/net/gnutls.el (gnutls-boot-parameters): Factor out into
141389	own function.
141390	(gnutls-negotiate): Use it.
141391	(open-gnutls-stream): Ditto.
141392
141393	* src/eval.c (vformat_string): Refactor out the printing bits
141394	from verror.
141395	(verror): Use it.
141396
141397	* src/gnutls.c (boot_error): Mark failed processes with the
141398	real error message.
141399
141400	* src/lisp.h: Declare vformat_string.
141401
1414022016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
141403
141404	Build with C11 if available
141405
141406	* admin/merge-gnulib (GNULIB_MODULES): Add std-gnu11.
141407	* m4/std-gnu11.m4: New file, from gnulib.
141408	* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
141409
1414102016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
141411
141412	Update gnulib copy
141413
141414	* doc/misc/texinfo.tex: Copy from gnulib.
141415
1414162016-02-02  Glenn Morris  <rgm@gnu.org>
141417
141418	* lisp/vc/add-log.el (change-log-directory-files, find-change-log):
141419	Doc tweaks.
141420
1414212016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
141422
141423	Port better to platforms lacking aligned_alloc
141424
141425	Problem reported by Ken Brown (Bug#22522).
141426	* src/lisp.h (hybrid_aligned_alloc)
141427	[HYBRID_MALLOC && !HAVE_ALIGNED_ALLOC]: New decl.
141428
1414292016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
141430
141431	Port malloc.h hygiene fix to LTO
141432
141433	* src/alloc.c (__malloc_initialize_hook):
141434	Make it externally visible (Bug#22522).
141435
1414362016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
141437
141438	Build fix for --enable-check-lisp-object-type
141439
141440	* src/process.c (check_for_dns): Type fix reported by YAMAMOTO
141441	Mitsuharu.
141442
1414432016-02-01  Glenn Morris  <rgm@gnu.org>
141444
141445	Make find-change-log prefer a VCS root, if no ChangeLog exists.
141446
141447	* lisp/vc/add-log.el (change-log-directory-files): New option.
141448	(find-change-log): Respect change-log-directory-files.
141449	* doc/emacs/maintaining.texi (Change Log Commands):
141450	Mention change-log-directory-files.
141451
1414522016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
141453
141454	Boot parameter check fix
141455
141456	* src/process.c (send_process): Fix test for boot parameters noted
141457	by Andy Moreton.
141458
1414592016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
141460
141461	Double static heap size.
141462
141463	* src/sheap.h (STATIC_HEAP_SIZE): Double it, since it was too
141464	small on FreeBSD (Bug#22086).
141465
1414662016-02-01  Michael Albinus  <michael.albinus@gmx.de>
141467
141468	Fix Bug#20821
141469
141470	* lisp/net/tramp.el (tramp-file-name-handler):
141471	* lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name):
141472	Use `tramp-drop-volume-letter'.  (Bug#20821)
141473
1414742016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
141475
141476	Style fix
141477
1414782016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
141479
141480	Return the correct server port number
141481
141482	* src/process.c (connect_network_socket): Return the correct
141483	server port number.
141484
1414852016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
141486
141487	Fix autoconf test for getaddrinfo_a
141488
141489	* configure.ac: Make the test for getaddrinfo_a work.
141490
1414912016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
141492
141493	Better async error reporting
141494
141495	* src/process.c (connect_network_socket): Mark failed processes
141496	with a better error message.
141497	(check_for_dns): Ditto.
141498
1414992016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
141500
141501	Clarify :tls-parameters.
141502
1415032016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
141504
141505	Always boot TLS if given parameters
141506
141507	* src/process.c (connect_network_socket): If we have the TLS
141508	parameters, then boot the socket.
141509
1415102016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
141511
141512	Add documentation for :tls-parameters
141513
141514	* doc/lispref/processes.texi (Network Processes): Mention
141515	:tls-parameters.
141516
141517	* src/process.c (Fmake_network_process): Document the
141518	:tls-parameters parameter.
141519
1415202016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
141521
141522	Build fix for glibc systems.
141523
1415242016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
141525
141526	Make network connections work again on non-glibc systems
141527
141528	* lisp/net/gnutls.el (open-gnutls-stream): Pass the TLS
141529	keywords in directly so that they can be used when doing
141530	synchronous DNS on non-synchronous connections.
141531
141532	* lisp/net/network-stream.el (open-network-stream): Allow
141533	passing in the TLS parameters directly.
141534
141535	* src/process.c (conv_numerical_to_lisp): New function to convert
141536	numerical addresses to Lisp.
141537	(Fmake_network_process): Rework the non-HAVE_ADDRINFO code
141538	paths so that they work again.
141539	(syms_of_process): Build fix for non-glibc systems.
141540
1415412016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
141542
141543	Windows build fix
141544
141545	* src/process.c (Fmake_network_process): Build fix for systems
141546	without local sockets.
141547
1415482016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
141549
141550	Use XCAR/XCDR instead of Fcar etc
141551
1415522016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
141553
141554	Fix GC problem in async TLS connection
141555
141556	* src/process.h: All Lisp_Object slots have to come first,
141557	otherwise they won't be protected from gc.
141558
1415592016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
141560
141561	Further TLS async work
141562
141563	* src/gnutls.c (boot_error): New function to either signal an
141564	error or return an error code.
141565	(Fgnutls_boot): Don't signal errors when running asynchronously.
141566
141567	* src/process.h (pset_status): Move here from process.c to be
141568	able to use from gnutls.c.
141569
141570	* src/process.c (connect_network_socket): Do the TLS boot here
141571	when running asynchronously.
141572	(wait_reading_process_output): Rework the dns_processes
141573	handling for more safety.
141574
1415752016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
141576
141577	Clean up dead code
141578
141579	* lisp/net/gnutls.el (gnutls-async-sentinel): Remove.
141580
1415812016-01-31  Dave Barker  <kzar@kzar.co.uk>
141582
141583	Add ability to give rcirc servers an alias name
141584
141585	* lisp/net/rcirc.el (rcirc-server-alist): Add :server-alias
141586	customization option.
141587	(rcirc, rcirc-connect): Take server alias into account.
141588
1415892016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
141590
141591	Port new hybrid malloc to FreeBSD
141592
141593	Problem reported by Wolfgang Jenkner in: https://bugs.gnu.org/22086#118
141594	* src/gmalloc.c (__malloc_initialize_hook, __after_morecore_hook)
141595	(__morecore) [HYBRID_MALLOC]: Define in this case too.
141596
1415972016-01-31  Wolfgang Jenkner  <wjenkner@inode.at>
141598
141599	* configure.ac: Stop using mmap for buffers for FreeBSD.
141600
1416012016-01-31  Michael Albinus  <michael.albinus@gmx.de>
141602
141603	Merge changes from Tramp repository
141604
141605	* doc/misc/Makefile.in (${buildinfodir}/tramp.info tramp.html):
141606	No EXTRA_OPTS needed.
141607
141608	* doc/misc/tramp.texi: Merge changes from Emacsemacs-25
141609	branch, especially for @trampfn{}.
141610	(Top): Move @ifnottex down.
141611	(History): XEmacs support has been removed.
141612	(GVFS based methods, Remote processes): Do not use emacsgvfs flag.
141613	(Auto-save and Backup): Use both syntax versions.
141614	(File name Syntax): Remark on IPv6 adresses is valid for
141615	unified syntax only.
141616
141617	* doc/misc/trampver.texi: Do not set emacsgvfs flag.
141618
1416192016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
141620
141621	Spelling fixes
141622
1416232016-01-30  Glenn Morris  <rgm@gnu.org>
141624
141625	* lisp/vc/add-log.el (find-change-log): Use locate-dominating-file.
141626
1416272016-01-30  Matthew Carter  <m@ahungry.com>
141628
141629	Quote table names for postgres listings (sql-mode)
141630
141631	* lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
141632	  unquoted table names to the completion list.
141633
1416342016-01-30  Glenn Morris  <rgm@gnu.org>
141635
141636	Change Smerge "Mine" and "Other" for "Upper" and "Lower.  (Bug#20878)
141637
141638	* lisp/vc/smerge-mode.el (smerge-diff-switches)
141639	(smerge-context-menu, smerge-match-conflict, smerge-swap): Doc fixes.
141640	(smerge-upper, smerge-upper-face, smerge-keep-upper)
141641	(smerge-diff-base-upper): Rename from smerge-mine, smerge-mine-face,
141642	smerge-keep-mine, smerge-diff-base-mine.  Update all uses.
141643	(smerge-mine-face, smerge-other-face): Remove obsolete face aliases.
141644	(smerge-lower, smerge-lower-face, smerge-lower-re, smerge-keep-lower)
141645	(smerge-diff-base-lower): Rename from smerge-other, smerge-other-face,
141646	smerge-other-re, smerge-keep-other, smerge-diff-base-lower.
141647	Update all uses.
141648	(smerge-basic-map): Add "l" and "u" bindings.
141649	(smerge-mode-menu): Update menu bindings for renaming.
141650	(smerge-font-lock-keywords): Update face names.
141651	(smerge-match-names): Update names.
141652	(smerge-diff-upper-lower): Rename from smerge-diff-mine-other.
141653	(smerge-match-conflict, smerge-ediff): Rename local variables.
141654	(smerge-makeup-conflict): Relabel markers.
141655	(smerge-parsep-re): Use renamed variables.
141656
1416572016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
141658
141659	Port recent my_edata change to MS-Windows
141660
141661	* src/lastfile.c (my_edata): Also define if WINDOWSNT.
141662
1416632016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
141664
141665	Rework the mechanisms for async GnuTLS connections
141666
141667	* lisp/net/gnutls.el (open-gnutls-stream): Compute the
141668	gnutls-boot parameters and pass them to the process object.
141669	(gnutls-negotiate): New parameter :return-keywords that won't
141670	connect to anything, just compute the keywords.
141671
141672	* lisp/url/url-http.el (url-http): Revert async TLS sentinel
141673	hack, which is no longer necessary.
141674
141675	* src/gnutls.c (Fgnutls_asynchronous_parameters): Rename from
141676	gnutls-mark-process.
141677
141678	* src/process.c (connect_network_socket): If we're connecting to
141679	an asynchronous TLS socket, complete the GnuTLS boot sequence here.
141680
141681	* src/process.h: New parameter gnutls_async_parameters.
141682
1416832016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
141684
141685	Fix segfault from double free
141686
141687	* src/process.c (check_for_dns): Protect against double free
141688	issues.
141689
1416902016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
141691
141692	Remove debugging
141693
1416942016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
141695
141696	Implement asynchronous GnuTLS connections
141697
141698	* doc/misc/emacs-gnutls.texi (Help For Developers): Mention
141699	the nowait parameter.
141700
141701	* lisp/net/gnutls.el (open-gnutls-stream): Allow asynchronous
141702	connections with the new nowait parameter.
141703
141704	* lisp/net/network-stream.el (network-stream-open-tls): Pass
141705	on :nowait to open-gnutls-stream.
141706
141707	* lisp/url/url-http.el (url-http): Don't overwrite the
141708	sentinel created by open-gnutls-stream.
141709
141710	* src/gnutls.c (Fgnutls_mark_process): New function.
141711
141712	* src/process.c (send_process): Don't write to GnuTLS sockets that
141713	haven't been initialized yed.
141714
141715	* src/process.h: New slot gnutls_wait_p.
141716
1417172016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
141718
141719	Tell Automake the new lib/Makefile.am is OK
141720
141721	* lib/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
141722
1417232016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
141724
141725	Make it easy to override preferred-branch test
141726
141727	* Makefile.in (preferred-branch-is-current):
141728	Rename from emacs-25-branch-is-current.  All uses changed.
141729	(PREFERRED_BRANCH): New macro.
141730
1417312016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
141732
141733	Shrink static heap a bit
141734
141735	* src/sheap.h: Include lisp.h, for Lisp_Object.
141736	(STATIC_HEAP_SIZE): Now an enum constant, not a macro.
141737	Make it 2 MiB * sizeof (Lisp_Object), which is a bit more
141738	conservative than the old value.
141739	(Bug#22086)
141740
1417412016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
141742
141743	Fix extern symbols defined and not used
141744
141745	* src/alloc.c: Always include <signal.h>.
141746	(malloc_warning) [!SIGDANGER && (SYSTEM_MALLOC || HYBRID_MALLOC)]:
141747	Do not define; unused.
141748	* src/emacs.c, src/lisp.h (might_dump) [!DOUG_LEA_MALLOC]: Now static.
141749	* src/gmalloc.c (gdefault_morecore): Rename from __default_morecore,
141750	to avoid collision with glibc.  Now static.  All uses changed.
141751	* src/lastfile.c (my_edata): Define only if
141752	((!defined SYSTEM_MALLOC && !defined HYBRID_MALLOC && !defined
141753	WINDOWSNT) \ || defined CYGWIN || defined DARWIN_OS).
141754	(Bug#22086)
141755
1417562016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
141757
141758	Build lib/e-*.o only on platforms that need it
141759
141760	* configure.ac (hybrid malloc): Simplify configuration.
141761	(SHEAP_OBJ): Remove; no longer needed.
141762	(HYBRID_MALLOC): New var. Subst it.
141763	(HYBRID_MALLOC_LIB): New Automake conditional.
141764	* lib/Makefile.am (noinst_LIBRARIES): Add libegnu.a only if
141765	HYBRID_MALLOC_LIB.
141766	(libegnu_a_CPPFLAGS): Omit AM_CPPFLAGS; not needed.
141767	(MOSTLYCLEANFILES): Add libegnu.a.
141768	* src/Makefile.in (SHEAP_OBJ): Remove.
141769	(HYBRID_MALLOC): New macro.
141770	(base_obj): Use it to conditionally add sheap.o.
141771	(LIBEGNU_ARCHIVE): New macro.
141772	($(LIBEGNU_ARCHIVE)): New rule, replacing $(lib)/libegnu.a.
141773	All uses of the latter replaced by the former.
141774	* src/alloc.c (USE_ALIGNED_ALLOC): Simplify configuration.
141775	Correct misspelling ALIGNED_ALLOC to HAVE_ALIGNED_ALLOC.
141776	* src/gmalloc.c: Update comment.
141777	* src/lisp.h (aligned_alloc)
141778	[!DOUG_LEA_MALLOC && !HYBRID_MALLOC && !SYSTEM_MALLOC]:
141779	New decl.
141780	(Bug#22086)
141781
1417822016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
141783
141784	Include <malloc.h> when advisable
141785
141786	This should help insulate us better from future glibc changes.
141787	It is good hygiene to include .h files for APIs that Emacs uses.
141788	Fix type clashes between Emacs and GNU <malloc.h> (Bug#22086).
141789	* configure.ac: Check for malloc.h.
141790	* src/alloc.c: Include <malloc.h> depending on HAVE_MALLOC_H,
141791	not on DOUG_LEA_MALLOC.
141792	* src/emacs.c, src/gmalloc.c (malloc_enable_thread):
141793	Remove decl (now in lisp.h).
141794	* src/gmalloc.c: Include stddef.h earlier, for ptrdiff_t.
141795	[emacs]: Include lisp.h.
141796	[HAVE_MALLOC_H]: Include <malloc.h>.
141797	(__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
141798	(__after_morecore_hook, __malloc_initialize_hook, __morecore)
141799	(__default_morecore):
141800	[!HAVE_MALLOC_H]: New decls near non-inclusion of <malloc.h>.
141801	(calloc): Make it clear that the macro should not be used.
141802	Remove unused decl.
141803	(malloc_info): New macro, to avoid clash with glibc <malloc.h>.
141804	(__morecore, __default_morecore, __after_morecore_hook)
141805	(__malloc_extra_blocks, __malloc_initialize_hook, __free_hook)
141806	(__malloc_hook, __realloc_hook, __memalign_hook, memory_warnings):
141807	Remove later decls.
141808	(gmalloc_hook, gfree_hook, grealloc_hook):
141809	Rename from __malloc_hook, __free_hook, __realloc_hook to
141810	avoid type collision with glibc <malloc.h>.  All uses changed.
141811	(gmalloc_hook):
141812	(__malloc_extra_blocks) [DOUG_LEA_MALLOC||HYBRID_MALLOC||SYSTEM_MALLOC]:
141813	Now static.
141814	(gmalloc_hook, __malloc_extra_blocks): Define even if [!HYBRID_MALLOC].
141815	(__malloc_initialize_hook, __after_morecore_hook):
141816	Declare with types compatible with glibc.
141817	(__memalign_hook, hybrid_calloc) [HYBRID_MALLOC]:
141818	Remove.  All uses removed.
141819	* src/lisp.h (__malloc_extra_blocks, malloc_enable_thread): New decls.
141820	* src/ralloc.c, src/vm-limit.c:
141821	Simplify includes and include <malloc.h> if available.
141822
1418232016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
141824
141825	* src/alloc.c: Include "sheap.h".
141826
141827	(alloc_unexec_pre, alloc_unexec_post) [HYBRID_MALLOC]:
141828	Set and clear bss_sbrk_did_unexec, on all platforms not just Cygwin.
141829	* src/lisp.h (alloc_unexec_pre, alloc_unexec_post) [!DOUG_LEA_MALLOC]:
141830	Declare unconditionally.
141831	* src/unexcw.c, src/unexelf.c (bss_sbrk_did_unexec): Remove decl.
141832	(unexec): Don’t set or clear bss_sbrk_did_unexec;
141833	the caller now does this.
141834	(Bug#22086)
141835
1418362016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
141837
141838	Pacify --enable-gcc-warnings when HYBRID_MALLOC
141839
141840	* src/buffer.c (init_buffer):
141841	* src/emacs.c (main):
141842	* src/xsmfns.c (smc_save_yourself_CB, x_session_initialize):
141843	Use emacs_get_current_dir_name, not get_current_dir_name.
141844	* src/conf_post.h (aligned_alloc) [HYBRID_MALLOC && emacs]: New macro.
141845	(HYBRID_GET_CURRENT_DIR_NAME, get_current_dir_name): Remove.
141846	* src/emacs.c: Include "sheap.h".
141847	(report_sheap_usage): Remove decl.
141848	(Fdump_emacs) [HYBRID_MALLOC]: Report usage directly.
141849	Don't assume ptrdiff_t can be printed as int.
141850	* src/gmalloc.c [HYBRID_MALLOC]:
141851	Include "sheap.h" rather than declaring its contents by hand.
141852	(get_current_dir_name, gget_current_dir_name)
141853	(hybrid_get_current_dir_name): Remove.
141854	(emacs_abort): Remove duplicate decl.
141855	(aligned_alloc): Undef, like malloc etc.
141856	(ALLOCATED_BEFORE_DUMPING): Now a static function, not a macro.
141857	Make it a bit more efficient.
141858	(malloc_find_object_address): Remove unused decl.
141859	(enum mcheck_status, mcheck, mprobe, mtrace, muntrace, struct mstats)
141860	(mstats, memory_warnings): Declare only if GC_MCHECK.
141861	* src/lisp.h (emacs_get_current_dir_name):
141862	New decl, replacing get_current_dir_name.
141863	* src/sheap.c: Include sheap.h first.
141864	(STATIC_HEAP_SIZE): Remove; now in sheap.h.
141865	(debug_sheap): Now static.
141866	(bss_sbrk_buffer_end): Remove; no longer used.
141867	(bss_sbrk_ptr): Now static and private.
141868	(bss_sbrk_did_unexec): Now bool.
141869	(BLOCKSIZE): Remove, to avoid GCC warning about its not being used.
141870	(bss_sbrk): Don't treat request_size 0 as special, since the code
141871	works without this being a special case.
141872	Avoid overflow if request size exceeds INT_MAX.
141873	(report_sheap_usage): Remove; now done in emacs.c.
141874	* src/sheap.h: New file.
141875	* src/sysdep.c (get_current_dir_name): Remove macro.
141876	Include "sheap.h".
141877	(emacs_get_current_dir_name): Rename function from
141878	get_current_dir_name.  Handle HYBRID_MALLOC here;
141879	this is simpler.
141880	(Bug#22086)
141881
1418822016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
141883
141884	Report static heap usage on non-Cygwin, too
141885
141886	* src/emacs.c (Fdump_emacs) [HYBRID_MALLOC]: Report sheap usage here ...
141887	* src/unexcw.c (unexec): ... instead of here, since sheap can be used
141888	on platforms other than Cygwin (Bug#22086).
141889
1418902016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
141891
141892	Pacify GCC on extern decls
141893
141894	* src/unexelf.c (bss_sbrk_did_unexec): Move decl to top level
141895	to pacify recent GCC (Bug#22086).
141896
1418972016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
141898
141899	Add musl patch to support HYBRID_MALLOC on elf systems
141900
141901	* src/gmalloc.c: Adjust for HYBRID_MALLOC in the non CYGWIN case.
141902	(__default_morecore): Here, in particular.
141903	* configure.ac: Define HYBRID_MALLOC when unexelf.o is used.
141904	New variable SHEAP_OBJ.
141905	* src/Makefile.in: Use it.
141906	(Bug#22086)
141907
1419082016-01-30  Rich Felker  <dalias@libc.org>  (tiny change)
141909
141910	unexelf.c hook to support HYBRID_MALLOC on ELF
141911
141912	* src/unexelf.c (unexec) [HYBRID_MALLOC]:
141913	Define bss_sbrk_did_unexec (Bug#22086).
141914
1419152016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
141916
141917	Link temacs with gnulib compiled with -Demacs
141918
141919	This is done to support HYBRID_MALLOC, since some static variables
141920	(e.g., last_environ in putenv.c) hold pointers to memory malloced
141921	before dumping (Bug#22086).
141922	* lib/Makefile.am: Add incantation to install libegnu.a.
141923	* src/Makefile.in ($(lib)/libgnu.a): Replace with libegnu.a
141924	(temacs$(EXEEXT)): Use it.
141925
1419262016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
141927
141928	Internal linkage for gmalloc etc. if HYBRID_MALLOC
141929
141930	This avoids clashes with symbols if the after-dump malloc is
141931	derived from Doug Lea's implementation (Bug#22086).
141932
141933	* src/gmalloc.c (emacs_abort, __morecore, __default_morecore):
141934	Move declarations up.  For HYBRID_MALLOC, turn all `extern'
141935	declarations below to `static' ones.
141936	(aligned_alloc): Declare for !MSDOS as well.
141937	(heapsize, _fraghead): Move resp. copy declaration downwards.
141938	For HYBRID_MALLOC, conditionalize out the other definitions,
141939	since the previous `static' declarations double as tentative
141940	definitions, anyway.
141941	(_malloc, _free, _realloc, __free_hook, _aligned_blocks)
141942	(__realloc_hook, __memalign_hook): Conditionalize out.
141943	(cfree, memalign, valloc): Ditto.
141944
1419452016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
141946
141947	-
141948
141949	-
141950
141951	-
141952
1419532016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
141954
141955	Merge from origin/emacs-25
141956
141957	3f481ad Rename xref-query-replace to xref-query-replace-in-results
141958	62f4ed4 Update cl-defgeneric and cl-defmethod docstrings
141959	2111e0e Comment out next-error-function integration in xref
141960	4e11ad3 Correct a use of "which" in intro.texi
141961	a1865bc Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
141962	76045f7 Don't operate on menu bar of nonexistent frame
141963	c32f3bc Unbreak the GNUstep build.
141964
1419652016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
141966
141967	-
141968
141969	-
141970
1419712016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
141972
141973	Re-enable checks in member, memql, delete to complain about non-lists
141974
141975	* src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
141976
1419772016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
141978
141979	Clean up compilation warnings
141980
1419812016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
141982
141983	Make async resolution more efficient
141984
141985	* src/process.c (wait_reading_process_output): Use a list of
141986	process objects instead of looping through an array to check
141987	for name resolution.  This should be much faster.
141988
1419892016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
141990
141991	More async memory leaks
141992
141993	* src/process.c (check_for_dns): Free even more allocated async stuff.
141994
1419952016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
141996
141997	Compilation for systems with getaddrinfo_a
141998
141999	* src/process.c (Fmake_network_process): Make stuff work again on
142000	systems with getaddrinfo_a.
142001
1420022016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
142003
142004	Save correct server data
142005
142006	* src/process.c (connect_network_socket): Save the correct contact
142007	info for servers.
142008
1420092016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
142010
142011	Compilation for non-GNU systems
142012
142013	* src/process.c (Fmake_network_process): Make compilation work
142014	again on hosts that don't have getaddrinfo_a.
142015
1420162016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
142017
142018	Avoid memory leaks in async DNS
142019
142020	* src/process.c (check_for_dns): Free async DNS resources after
142021	they've been used.
142022
1420232016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
142024
142025	* src/process.c (check_for_dns): Free the result data.
142026
1420272016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
142028
142029	Fix server connections
142030
142031	* src/process.c (Fmake_network_process): Make creating server
142032	listening ports work again.
142033
1420342016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
142035
142036	Further make_network_process clean up
142037
142038	* src/process.c (Fmake_network_process): Remove setting of unused
142039	family variable.
142040
1420412016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
142042
142043	Clean up GETADDRINFO usage in make-network-process
142044
142045	* src/process.c (Fmake_network_process): Clean up the GETADDRINFO
142046	handling.
142047
1420482016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
142049
142050	Implement asynchronous name resolution
142051
142052	* src/process.c (Fmake_network_process): Do asynchronous DNS
142053	lookups if we have getaddrinfo_a and the user requests :nowait.
142054	(check_for_dns): New function.
142055	(wait_reading_process_output): Check for pending name
142056	resolution in the idle loop.
142057
142058	* src/process.h: Add structure for async DNS.
142059
1420602016-01-28  Glenn Morris  <rgm@gnu.org>
142061
142062	Remove some useless-use-of eval.
142063
142064	* lisp/gnus/gnus.el (gnus-load-hook): Don't use eval.
142065	* lisp/gnus/nnrss.el (xml): Simply require it.
142066	(xml-rpc-method-call): Use declare-function.
142067
1420682016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
142069
142070	Fix memory leak
142071
142072	* src/process.c (connect_network_socket): Free previous sockaddr
142073	before allocating a new one.
142074
1420752016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
142076
142077	Return IP addresses in the correct order
142078
142079	* src/process.c (Fmake_network_process): Return the IP addresses
142080	in the same order as getaddrinfo does.
142081	(set_network_socket_coding_system): Clean up the code slightly.
142082
1420832016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
142084
142085	Add checks for getaddrinfo_a
142086
142087	* configure.ac: Detect getaddrinfo_a.
142088
1420892016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
142090
142091	Refactor make_network_process
142092
142093	* src/process.c (set_network_socket_coding_system)
142094	(connect_network_socket): Refactor out of
142095	make_network_process to allow calling connect_network_socket
142096	asynchronously.
142097	(Fmake_network_process): Do nothing but parsing the parameters
142098	and name resolution, leaving the connection to
142099	connect_network_socket.
142100
1421012016-01-28  Glenn Morris  <rgm@gnu.org>
142102
142103	* lisp/emacs-lisp/bytecomp.el (byte-compile-nogroup-warn):
142104	Warn if defcustom has no type.  (Bug#16276)
142105
1421062016-01-27  Glenn Morris  <rgm@gnu.org>
142107
142108	* test/lisp/vc/vc-hg-tests.el: Move from test/automated/.
142109
1421102016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
142111
142112	(rng-c-fix-escaped-newlines): Use subst-char-in-string
142113
142114	* lisp/nxml/rng-cmpct.el (rng-c-fix-escaped-newlines):
142115	Use subst-char-in-string.
142116
1421172016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
142118
142119	* lisp/textmodes/sgml-mode.el (sgml-forward-sexp): New function
142120
142121	(sgml-cursor-sensor, sgml-pretty-print, sgml-parse-tag-backward)
142122	(sgml-calculate-indent): Use it.
142123
1421242016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
142125
142126	* lisp/org: Fix some compiler warnings
142127
142128	* lisp/org/ob-core.el (org-babel-check-confirm-evaluate)
142129	(org-babel-map-src-blocks): Don't emit warnings if added vars are not used.
142130	(*this*): Declare as dyn-bound.
142131	(org-babel-expand-src-block, org-babel-load-in-session)
142132	(org-babel-switch-to-session-with-code, org-babel-get-rownames):
142133	Mark unused args.
142134	(org-babel-combine-header-arg-lists): Remove unused var `args'.
142135	(org-babel-find-named-block): Remove unused var `msg'.
142136
142137	* lisp/org/org-src.el (org-inhibit-startup, org-src-fontify-natively):
142138	Declare as dyn-bound.
142139	(org-edit-src-code): Remove unused var `lfmt'.
142140	(org-edit-fixed-width-region): Remove unused var `preserve-indentation'.
142141
1421422016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
142143
142144	* lisp/font-lock.el: Use #' to quote function symbols
142145
1421462016-01-23  Michael Albinus  <michael.albinus@gmx.de>
142147
142148	Improve user name completion in Tramp
142149
142150	* lisp/net/tramp.el (tramp-parse-passwd, tramp-parse-etc-group):
142151	Call also "getent passwd" or "getent group", if possible.
142152	(tramp-parse-putty): Cache the result.
142153
1421542016-01-22  Michael Albinus  <michael.albinus@gmx.de>
142155
142156	* etc/NEWS: Move kqueue entries to Emacs 25.1 sections.
142157
1421582016-01-20  Glenn Morris  <rgm@gnu.org>
142159
142160	Remove handling of non-string time-stamp formats, obsolete for 20 years.
142161
142162	* lisp/time-stamp.el (time-stamp-format): Doc fix.
142163	(time-stamp-old-format-warn, time-stamp-fconcat): Remove.
142164	(time-stamp-string): Ignore non-string formats.
142165
1421662016-01-20  Eli Zaretskii  <eliz@gnu.org>
142167
142168	Another fix for problematic merge from emacs-25
142169
142170	* src/w32fns.c (globals_of_w32fns): Move initialization of
142171	resetstkoflw to a non-Cygwin part.
142172
1421732016-01-20  Michael Albinus  <michael.albinus@gmx.de>
142174
142175	* test/Makefile.in (mostlyclean): Use ${LOGFILES}.
142176
1421772016-01-20  Eli Zaretskii  <eliz@gnu.org>
142178
142179	Fix MS-Windows build broken by a botched merge from emacs-25
142180
142181	* src/w32.c (w32_crypto_hprov): New static variable.
142182	(globals_of_w32): Initialize w32_crypto_hprov.
142183	(w32_init_crypt_random, w32_init_random): New functions.
142184	Include wincrypt.h.
142185	* src/w32.h (w32_init_random): Add prototype.
142186
1421872016-01-19  Vincent Belaïche  <vincentb1@users.sourceforge.net>
142188
142189	Correct a whole bunch of bugs coming with renamed cell relocation.
142190
142191	* lisp/ses.el (ses-localvars): rename variable
142192	`ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
142193	and adjust the comment about it.
142194	(ses-plist-delq): new defun.
142195	(ses--ses-buffer-list): new defvar.
142196	(ses--unbind-cell-name): new defun.
142197	(ses-relocate-symbol): Do not relocate symbol when it is a named cell.
142198	(ses-relocate-formula): Undo change of
142199	2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
142200	preventing relocation for named cell --- now doing this is delegated
142201	to function `ses-relocate-symbol'.
142202	(ses-relocate-range): In docstring, undo change of
142203	2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
142204	lower case as it is not a variable.
142205	(ses-relocate-all): Cell name relocation : 1) check that cell is a
142206	renamed cell by testing `ses-cell' property to :ses-named, rather than
142207	comparing name to corresponding standard name. Set rowcol of renamed
142208	cell into the hashmap --- `ses-cell' property must not be used for
142209	that as the same name can be used for different locations in different
142210	SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
142211	`local-variable-p' to check if cell name is already in use in this
142212	sheet or needs initialization.
142213	(ses-relocate-all): Cell value relocation : 1) like for name
142214	relocation use the `ses-cell' property rather than comparing actual
142215	name to corresponding standard name. 2) Correct bug introduced in
142216	2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
142217	made the other way round than the intention --- ie value relocation
142218	was disabled for standard cell, not for renamed cell as was the
142219	intention.
142220	(ses-relocate-all): Add loop for unbinding deleted renamed cells
142221	names.
142222	(ses-killbuffer-hook): new defun.
142223	(ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
142224	kill buffer hook, plus pushing current buffer if new in list.
142225	(ses-delete-row, ses-delete-column): Collect deleted renamed cells
142226	into `ses--in-killing-named-cell-list'.
142227	(ses-rename-cell): Remove update of variable
142228	`ses--renamed-cell-symb-list', this variable is renamed to
142229	`ses--in-killing-named-cell-list', and its setting is done in
142230	functions `ses-delete-row' and , `ses-delete-column' now.
142231	(ses-rename-cell): Change correction of
142232	2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
142233	computation of the range over which `cursor-intangible' property was
142234	to be updated. This correction was ok for non spilling cells, but not
142235	for cells spilling over following blank cells. Simply use
142236	`next-single-property-change' rather than computing the end column
142237	from column widths.
142238
1422392016-01-18  John Wiegley  <johnw@newartisans.com>
142240
142241	-
142242
1422432016-01-18  John Wiegley  <johnw@newartisans.com>
142244
142245	Merge from origin/emacs-25
142246
142247	3ae7934 ; * etc/NEWS: Mark entries that don't need further treatment.
142248	6165c36 * lisp/files.el (dir-locals--all-files): Respect absolute file-names
142249	2ffdf15 * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
142250	71ecd62 * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
142251	f0b82b3 * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
142252	86e4513 Fix incompatbilities with MS-Windows 2000 and older
142253	4e96521 Mention in PROBLEMS an issue with MS-Windows NT4
142254	15c23aa Ensure 8-byte aligned memory allocation on MS-Windows 9X
142255	39afa42 Fix tests for active region in hideif.el
142256	05df666 Fix interactive specs in some hideif.el commands
142257
1422582016-01-18  John Wiegley  <johnw@newartisans.com>
142259
142260	-
142261
1422622016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
142263
142264	Avoid stdio in SIGINT handler
142265
142266	* admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
142267	* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
142268	* lib/ignore-value.h: New file, from gnulib.
142269	* src/keyboard.c: Include it.
142270	(write_stdout, read_stdin): New functions.
142271	(handle_interrupt): Use them instead of printf and getchar,
142272	and avoid fflush when handling signals.
142273
1422742016-01-18  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
142275
142276	Refactor mml-smime.el, mml1991.el, mml2015.el
142277
142278	(Maybe this is the last merge from Gnus git to Emacs git)
142279
142280	Cf. discussion on ding mailing list, messages in
142281	<http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
142282	Common code from the three files mml-smime.el, mml1991.el, and
142283	mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
142284	to gnus-util.el.
142285
142286	The code is supported by test cases with necessary test keys.
142287
142288	Documentation in message.texi is updated.
142289
142290	* doc/misc/message.texi (Security, Using S/MIME):
142291	Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
142292	(Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
142293	(Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
142294
142295	* lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
142296	New functions.
142297
142298	* lisp/gnus/mml-sec.el: Require gnus-util and epg.
142299	(epa--select-keys): Autoload.
142300	(mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
142301	(mml-secure-openpgp-signers): New user option;
142302	make mml1991-signers and mml2015-signers obsolete aliases to it.
142303	(mml-secure-smime-signers): New user option;
142304	make mml-smime-signers an obsolete alias to it.
142305	(mml-secure-openpgp-encrypt-to-self): New user option;
142306	make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
142307	aliases to it.
142308	(mml-secure-smime-encrypt-to-self): New user option;
142309	make mml-smime-encrypt-to-self an obsolete alias to it.
142310	(mml-secure-openpgp-sign-with-sender): New user option;
142311	make mml2015-sign-with-sender an obsolete alias to it.
142312	(mml-secure-smime-sign-with-sender): New user option;
142313	make mml-smime-sign-with-sender an obsolete alias to it.
142314	(mml-secure-openpgp-always-trust): New user option;
142315	make mml2015-always-trust an obsolete alias to it.
142316	(mml-secure-fail-when-key-problem, mml-secure-key-preferences):
142317	New user options.
142318	(mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
142319	(mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
142320	(mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
142321	(mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
142322	(mml-secure-passphrase-callback, mml-secure-check-user-id)
142323	(mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
142324	(mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
142325	(mml-secure-fingerprint, mml-secure-filter-keys)
142326	(mml-secure-normalize-cust-name, mml-secure-select-keys)
142327	(mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
142328	(mml-secure-self-recipients, mml-secure-recipients)
142329	(mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
142330
142331	* lisp/gnus/mml-smime.el: Require epg;
142332	refactor declaration and autoloading of epg functions.
142333	(mml-smime-use): Doc fix.
142334	(mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
142335	Obsolete.
142336	(mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
142337	Use format instead of gnus-format-message.
142338	(mml-smime-epg-secret-key-id-list): Remove variable.
142339	(mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
142340	(mml-smime-epg-find-usable-secret-key): Remove functions.
142341	(mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
142342
142343	* lisp/gnus/mml1991.el (mml1991-cache-passphrase)
142344	(mml1991-passphrase-cache-expiry): Obsolete.
142345	(mml1991-epg-secret-key-id-list): Remove variable.
142346	(mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
142347	(mml1991-epg-find-usable-secret-key): Remove functions.
142348	(mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
142349
142350	* lisp/gnus/mml2015.el (mml2015-cache-passphrase)
142351	(mml2015-passphrase-cache-expiry): Obsolete.
142352	(mml2015-epg-secret-key-id-list): Remove variable.
142353	(mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
142354	(mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
142355	(mml2015-epg-find-usable-secret-key): Remove functions.
142356	(mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
142357	(mml2015-epg-encrypt): Refactor.
142358
1423592016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
142360
142361	Merge from gnulib
142362
142363	This mostly just updates copyright dates of gnulib files.
142364	It also updates to the latest version of texinfo.tex.
142365
1423662016-01-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
142367
142368	Move variables to inner loop, preparing for Mac port merge
142369
142370	* src/keyboard.c (command_loop_1): Move variables `cmd',
142371	`keybuf', and `i' to inner loop.
142372
1423732016-01-17  Bill Wohler  <wohler@newt.com>
142374
142375	* lisp/mh-e/mh-e.el (mh-version): Add +git to version.
142376
1423772016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
142378
142379	* lisp/emacs-lisp/syntax.el (syntax-ppss-table): New var
142380
142381	(syntax-ppss):
142382	* lisp/font-lock.el (font-lock-fontify-syntactically-region): Use it.
142383
1423842016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
142385
142386	lisp/nxml: Use syntax-tables for comments
142387
142388	* lisp/nxml/nxml-mode.el (nxml-set-face): Prepend.
142389	(nxml-mode): Set syntax-ppss-table.
142390	Use sgml-syntax-propertize-function for syntax-propertize-function.
142391	Let font-lock highlight strings and comments.
142392	(nxml-degrade): Don't touch "nxml-inside" property any more.
142393	(nxml-after-change, nxml-after-change1): Remove functions.
142394	(comment): Don't set fontify rule any more.
142395	(nxml-fontify-attribute): Don't highlight the value any more.
142396	(nxml-namespace-attribute-value-delimiter, nxml-namespace-attribute-value)
142397	(nxml-comment-delimiter, nxml-comment-content): Remove faces.
142398
142399	* lisp/nxml/nxml-rap.el (nxml-scan-end): Remove.
142400	(nxml-get-inside, nxml-inside-start, nxml-inside-end): Use syntax-ppss.
142401	(nxml-clear-inside, nxml-set-inside): Remove.
142402	(nxml-scan-after-change): Remove function.
142403	(nxml-scan-prolog, nxml-tokenize-forward): Simplify.
142404	(nxml-ensure-scan-up-to-date): Use syntax-propertize.
142405	(nxml-move-outside-backwards):
142406	* lisp/nxml/nxml-outln.el (nxml-section-tag-backward): Adjust to new
142407	nxml-inside-start behavior.
142408
142409	* lisp/nxml/nxml-util.el (nxml-debug-set-inside)
142410	(nxml-debug-clear-inside): Remove macros.
142411
142412	* lisp/nxml/xmltok.el (xmltok-forward-special): Remove function.
142413	(xmltok-scan-after-comment-open): Simplify.
142414
1424152016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
142416
142417	* lisp/progmodes/elisp-mode.el
142418	(elisp--font-lock-flush-elisp-buffers): Fix comment
142419
1424202016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
142421
142422	* lisp/nxml: Use standard completion; it also works for company-mode
142423
142424	* lisp/nxml/nxml-mode.el (nxml-complete): Obsolete.
142425	(nxml-completion-at-point-function): Remove.
142426	(nxml-mode): Don't set completion-at-point-functions.
142427	* lisp/nxml/rng-nxml.el (rng-nxml-mode-init): Set it here instead.
142428	(rng-completion-at-point): Rename from rng-complete and mark it
142429	non-interactive.  It is now to be used as completion-at-point-function.
142430	(rng-complete-tag, rng-complete-end-tag, rng-complete-attribute-name)
142431	(rng-complete-attribute-value): Don't perform completion, but return
142432	completion data instead.
142433	(rng-complete-qname-function, rng-generate-qname-list): Add a few
142434	arguments, previously passed via dynamic coping.
142435	(rng-strings-to-completion-table): Rename from
142436	rng-strings-to-completion-alist.  Don't return an alist.  Don't both
142437	sorting and uniquifying.
142438
142439	* lisp/nxml/rng-util.el (rng-complete-before-point): Delete function.
142440	(rng-completion-exact-p, rng-quote-string): Delete functions.
142441
142442	* lisp/nxml/rng-valid.el (rng-recover-start-tag-open)
142443	(rng-missing-attributes-message, rng-missing-element-message)
142444	(rng-mark-missing-end-tags): Use explicit ".." in formats rather than
142445	calling rng-quote-string everywhere.
142446
1424472016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
142448
142449	Use sgml-electric-tag-pair-mode also in nxml-mode
142450
142451	* lisp/nxml/rng-nxml.el: Require sgml-mode.
142452	(rng-nxml-easy-menu): Add entry for sgml-electric-tag-pair-mode.
142453	(rng-complete-qname-function): Use complete-with-action.
142454
142455	* lisp/textmodes/sgml-mode.el (sgml-electric-tag-pair-before-change-function):
142456	Let-bind forward-sexp-function, since nxml-mode binds it to
142457	something incompatible.
142458
142459	* lisp/nxml/nxml-mode.el: Use setq-local and defvar-local.
142460
1424612016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
142462
142463	* lisp/nxml/xmltok.el: Mark the "sole --" rather than the comment
142464	opener.
142465
142466	* lisp/nxml/xmltok.el (xmltok-scan-after-comment-open): Put the error
142467	marker on the "sole --" rather than on the comment opener.
142468
1424692016-01-15  Sam Steingold  <sds@gnu.org>
142470
142471	replace `tramp-compat-split-string' (removed) with `split-string'
142472
142473	(python-shell-tramp-refresh-process-environment)
142474	(python-shell-calculate-pythonpath): use `split-string'
142475	instead of defunct `tramp-compat-split-string'
142476
1424772016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
142478
142479	Update nXML to use Emacs's Unicode support, and lexical-binding
142480
142481	* etc/nxml/*.el: Remove obsolete char-name files.
142482	* lisp/nxml/xsd-regexp.el (xsdre-range-list-difference): Remove unused
142483	var `next'.
142484	* lisp/nxml/rng-nxml.el (rng-set-state-after): Don't assume point-min==1.
142485	* lisp/nxml/rng-match.el (rng-update-match-state): Simplify.
142486	* lisp/nxml/nxml-outln.el (nxml-outline-state-transform-exceptions)
142487	(nxml-target-section-pos, nxml-depth-in-target-section)
142488	(nxml-outline-state-transform-alist)
142489	(nxml-outline-display-section-tag-function): Move decl before first use.
142490	* lisp/nxml/nxml-mode.el (nxml-char-name-ignore-case)
142491	(nxml-char-name-alist, nxml-char-name-table)
142492	(nxml-autoload-char-name-set-list, nxml-named-char-history): Remove vars.
142493	(nxml-enable-char-name-set, nxml-disable-char-name-set)
142494	(nxml-char-name-set-enabled-p, nxml-autoload-char-name-set)
142495	(nxml-define-char-name-set, nxml-get-char-name): Remove functions.
142496	(nxml-insert-named-char): Use read-char-by-name instead.
142497	(nxml-char-ref-display-extra): Use get-char-code-property.
142498	* lisp/nxml/nxml-maint.el (nxml-create-unicode-char-name-sets):
142499	Remove function.
142500	* lisp/nxml/nxml-glyph.el, lisp/nxml/nxml-uchnm.el: Remove files.
142501
1425022016-01-15  Michael Albinus  <michael.albinus@gmx.de>
142503
142504	Add "sg" method to Tramp
142505
142506	* doc/misc/tramp.texi (Inline methods): Add "sg" method.
142507	(Customizing Completion): Add function `tramp-parse-etc-group'.
142508
142509	* lisp/net/tramp-sh.el (tramp-methods) <sg>: Add.  (Bug#22329)
142510	(tramp-completion-function-alist-sg): New defconst.
142511	(top): Completion function for "sg" is
142512	`tramp-completion-function-alist-sg'.
142513
142514	* lisp/net/tramp.el (tramp-completion-function-alist): Adapt docstring.
142515	(tramp-parse-etc-group, tramp-parse-etc-group-group): New defuns.
142516
1425172016-01-14  Michael Albinus  <michael.albinus@gmx.de>
142518
142519	Remove XEmacs compatibility in Tramp
142520
142521	* doc/misc/tramp.texi: Replace flags by their hard coded name.
142522	Remove unused flags and the enclosed alternative text for XEmacs.
142523
142524	* doc/misc/trampver.texi: Use "Tramp" CamelCase.  Rename "emacs"
142525	and "xemacs" flags to "unified" and "separate".  Remove flags
142526	"emacsgw", "emacsname", "emacsdir", "ftppackagename",
142527	"emacsothername", "emacsotherdir" and "emacsotherfilename".
142528	(trampver):
142529	* lisp/net/trampver.el (tramp-version): Set to "2.3.0-pre".
142530
142531	* lisp/net/tramp.el (bkup-backup-directory-info)
142532	(directory-sep-char, ls-lisp-use-insert-directory-program)
142533	(outline-regexp, tramp-backup-directory-alist)
142534	(tramp-default-method, tramp-shell-prompt-pattern, tramp-syntax)
142535	(tramp-file-name-regexp-unified)
142536	(tramp-file-name-regexp-separate)
142537	(tramp-completion-file-name-regexp-unified)
142538	(tramp-completion-file-name-regexp-separate, tramp-chunksize)
142539	(tramp-get-method-parameter, tramp-find-method, tramp-find-user)
142540	(tramp-debug-message, tramp-progress-reporter-update)
142541	(with-tramp-progress-reporter)
142542	(tramp-rfn-eshadow-setup-minibuffer)
142543	(rfn-eshadow-setup-minibuffer-hook, tramp-unload-hook)
142544	(tramp-rfn-eshadow-update-overlay)
142545	(rfn-eshadow-update-overlay-hook, tramp-default-file-modes)
142546	(tramp-file-name-for-operation)
142547	(tramp-completion-file-name-handler)
142548	(tramp-autoload-file-name-handler, tramp-completion-mode-p)
142549	(tramp-handle-directory-files)
142550	(tramp-handle-directory-files-and-attributes)
142551	(tramp-handle-dired-uncache, tramp-handle-find-backup-file-name)
142552	(tramp-handle-insert-file-contents, tramp-handle-load)
142553	(tramp-handle-shell-command)
142554	(tramp-handle-verify-visited-file-modtime)
142555	(tramp-handle-file-notify-valid-p, tramp-accept-process-output)
142556	(tramp-check-for-regexp, tramp-wait-for-regexp)
142557	(tramp-send-string, tramp-mode-string-to-int)
142558	(tramp-get-local-gid, tramp-check-cached-permissions)
142559	(tramp-get-remote-tmpdir, tramp-make-tramp-temp-file)
142560	(auto-save-file-name-transforms)
142561	(tramp-handle-make-auto-save-file-name, tramp-read-passwd)
142562	(tramp-clear-passwd, tramp-time-diff):
142563	* lisp/net/tramp-adb.el (directory-listing-before-filename-regexp)
142564	(directory-sep-char, tramp-adb-file-name-handler-alist)
142565	(tramp-adb-parse-device-names)
142566	(tramp-adb-handle-expand-file-name)
142567	(tramp-adb-handle-file-truename, tramp-adb--gnu-switches-to-ash)
142568	(tramp-adb-handle-file-local-copy)
142569	(tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
142570	(tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
142571	(tramp-adb-handle-shell-command)
142572	(tramp-adb-handle-start-file-process, tramp-adb-get-device)
142573	(tramp-adb-maybe-open-connection):
142574	* lisp/net/tramp-cache.el (tramp-persistency-file-name)
142575	(tramp-cache-print):
142576	* lisp/net/tramp-cmds.el (tramp-cleanup-all-connections)
142577	(tramp-bug, tramp-reporter-dump-variable)
142578	(tramp-load-report-modules, tramp-append-tramp-buffers):
142579	* lisp/net/tramp-compat.el (tramp-compat-funcall)
142580	(tramp-advice-file-expand-wildcards)
142581	(tramp-compat-temporary-file-directory)
142582	(tramp-compat-make-temp-file, tramp-compat-copy-file)
142583	(tramp-compat-delete-directory, )
142584	(tramp-compat-process-running-p):
142585	* lisp/net/tramp-ftp.el (tramp-methods) <ftp>:
142586	(tramp-default-method-alist, tramp-foreign-file-name-handler-alist):
142587	* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
142588	(tramp-gvfs-do-copy-or-rename-file, tramp-gvfs-handle-copy-file)
142589	(tramp-gvfs-handle-file-local-copy)
142590	(tramp-gvfs-handle-file-name-all-completions)
142591	(tramp-gvfs-handle-file-notify-add-watch)
142592	(tramp-gvfs-monitor-file-process-filter)
142593	(tramp-gvfs-handle-file-readable-p)
142594	(tramp-gvfs-handle-rename-file, tramp-gvfs-handle-write-region)
142595	(tramp-gvfs-file-name, tramp-gvfs-handler-askquestion)
142596	(tramp-gvfs-maybe-open-connection)
142597	(tramp-gvfs-parse-device-names):
142598	* lisp/net/tramp-gw.el (tramp-gw-aux-proc-sentinel)
142599	(tramp-gw-open-connection, tramp-gw-open-network-stream):
142600	* lisp/net/tramp-sh.el (directory-sep-char)
142601	(tramp-sh-file-name-handler-alist)
142602	(tramp-sh-handle-file-truename)
142603	(tramp-sh-handle-set-visited-file-modtime)
142604	(tramp-sh-handle-verify-visited-file-modtime)
142605	(tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
142606	(tramp-sh-handle-file-acl)
142607	(tramp-sh-handle-file-name-all-completions)
142608	(tramp-sh-handle-copy-file, tramp-sh-handle-rename-file)
142609	(tramp-do-copy-or-rename-file-directly)
142610	(tramp-do-copy-or-rename-file-out-of-band)
142611	(dired-compress-file-suffixes, dired-remove-file)
142612	(tramp-sh-handle-dired-compress-file)
142613	(tramp-sh-handle-insert-directory)
142614	(tramp-sh-handle-expand-file-name)
142615	(tramp-sh-handle-start-file-process)
142616	(tramp-sh-handle-process-file, tramp-sh-handle-file-local-copy)
142617	(tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
142618	(tramp-sh-handle-file-notify-add-watch)
142619	(tramp-sh-gvfs-monitor-dir-process-filter)
142620	(tramp-sh-inotifywait-process-filter, tramp-maybe-send-script)
142621	(tramp-find-executable)
142622	(tramp-open-connection-setup-interactive-shell)
142623	(tramp-find-inline-encoding, tramp-compute-multi-hops)
142624	(tramp-maybe-open-connection, tramp-convert-file-attributes)
142625	(tramp-get-remote-path, tramp-get-remote-touch):
142626	* lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
142627	(tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
142628	(tramp-smb-handle-delete-directory)
142629	(tramp-smb-handle-directory-files, tramp-smb-handle-file-acl)
142630	(tramp-smb-handle-make-directory-internal)
142631	(tramp-smb-handle-process-file, tramp-smb-handle-rename-file)
142632	(tramp-smb-handle-set-file-acl, tramp-smb-handle-set-file-modes)
142633	(tramp-smb-handle-write-region, tramp-smb-get-file-entries)
142634	(tramp-smb-get-cifs-capabilities)
142635	(tramp-smb-maybe-open-connection):
142636	* lisp/net/trampver.el (tramp-repository-get-version):
142637	Remove XEmacs compat code.
142638
142639	* lisp/net/tramp-cmds.el (mml-mode, mml-insert-empty-tag)
142640	(reporter-dump-variable): Declare functions.
142641
142642	* lisp/net/tramp.el (tramp-bkup-backup-directory-info)
142643	(tramp-advice-minibuffer-electric-separator)
142644	(tramp-advice-minibuffer-electric-tilde)
142645	(tramp-handle-unhandled-file-name-directory):
142646	* lisp/net/tramp-compat.el (tramp-compat-with-temp-message)
142647	(tramp-compat-font-lock-add-keywords)
142648	(tramp-compat-load, tramp-compat-number-sequence)
142649	(tramp-compat-split-string, tramp-compat-delete-dups):
142650	* lisp/net/tramp-sh.el (tramp-sh-handle-insert-file-contents-literally):
142651	Remove.
142652
142653	* lisp/net/tramp-sh.el (tramp-methods) <psftp>: This does not work
142654	recursively.
142655
1426562016-01-14  K. Handa  <handa@gnu.org>
142657
142658	fix previous change of src/ftfont.c (ftfont_shape_by_flt)
142659
142660	* src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
142661	second glyph only when there are enough glyphs.
142662
1426632016-01-13  Glenn Morris  <rgm@gnu.org>
142664
142665	* src/buffer.c (Fset_buffer_major_mode): Allow default major-mode,
142666
142667	or its hook, to move point.  (Bug#22348)
142668
1426692016-01-12  Michael Albinus  <michael.albinus@gmx.de>
142670
142671	Merge missing commit from emacs-25 branch
142672
142673	* test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE, SELECTOR):
142674	New variables.
142675	(check-expensive, check-doit): New targets.
142676
142677	* Makefile.in (check-expensive): New target.
142678
142679	* test/lisp/autorevert-tests.el
142680	(auto-revert-test01-auto-revert-several-files):
142681	* test/lisp/filenotify-tests.el (file-notify--deftest-remote)
142682	(file-notify-test06-many-events):
142683	* test/lisp/net/tramp-tests.el (tramp-test26-process-file)
142684	(tramp-test27-start-file-process, tramp-test28-shell-command)
142685	(tramp-test29-vc-registered)
142686	(tramp-test31-special-characters-with-stat)
142687	(tramp-test31-special-characters-with-perl)
142688	(tramp-test31-special-characters-with-ls)
142689	(tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
142690	(tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
142691	(tramp-test35-unload): Tag the tests as :expensive-test.
142692
1426932016-01-11  John Wiegley  <johnw@newartisans.com>
142694
142695	Merge from origin/emacs-25
142696
142697	1f6898d test/automated/vc-hg.el: Support out-of-tree build
142698	3adb56e Minor change in tramp-tests.el
142699	2b535ba ; * etc/NEWS: Update the js.el entry.
142700	76b518c * etc/HELLO: Add Armenian and Mongolian greetings.
142701	b51f1ef Java Mode: Fontify identifiers in the presence of annotations.
142702	36b9539 Avoid an infloop when we run out of memory
142703	2006752 Avoid unnecessary failures of auto-saving after fatal error
142704	eef6784 Simplify HAVE_MODULES use in mark_maybe_pointer
142705	552694a Revert attempt to use 'noexcept' in typedef
142706	6ad0d39 Update documentation of 'indirect-function'
142707	c6a5314 ; * etc/NEWS: Move entry of 'inhibit-point-motion-hooks'.
142708	303141a Update documentation for obsoleting 'syntax-begin-function'
142709	4e6f61c ; * etc/NEWS: Mark documented and not-to-be-documented entries.
142710	e667bbb Document new features if Eshell
142711	9c4e4e0 ; * etc/NEWS: Update EUDC entries.
142712	1089dc9 Handle too long commands in Tramp
142713	684eb58 * .gitattributes: *.cur and *.pif are binary files too.
142714	d2c7fda * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
142715	bd3f53d * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
142716	09b2b8a * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
142717	cca0f93 ; Account for spaces before the filename
142718	c71e1e8 Use short date for 'hg annotate', and output the author
142719	f50027b Spelling fix
142720	c7dff67 ; * etc/NEWS: Fix the Xref entries that got separated.
142721	cc140bc Document user-level functions in project.el
142722	f8208b6 Document the user-level features of the Xref package
142723	b131fb8 * loading.texi: Add `define-type' entry for load-history
142724	db3c2a8 Improve doc strings and prompts in xref.el
142725	f6117ef Allow the use of `font-lock-extend-region-multiline' in CC Mode.
142726	90fd798 Fix coding system for Tramp on OS X.
142727	e985a0e ; * etc/NEWS: Mark the 'check-expensive' entry not to be documented.
142728	9dfcbf0 Update 'load-history' docs
142729	207e191 Fix (error ...) error
142730	457738f Correctly analyze brace arguments in templated C++ function declarations.
142731	d57724a * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
142732	2a9532d * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
142733	1a6b084 * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
142734	8be046f Respect fontification region calculated by major mode.  Fixes bug #22316.
142735	4b37cba Improve documentation of Delete Selection mode
142736	a034dd3 Fix two project-find-file issues
142737	30abf29 Clarify doc string of 'dired-current-directory'
142738	e990bb2 Use the face of preceding text for displaying the ellipsis
142739	5810ac3 Suppress Chinese file name test for OSX in tramp-tests.el
142740	eeb710a ; * lisp/startup.el: Sentences end with two spaces.
142741	428b3de * admin/admin.el (set-version): Also handle the NEWS file.
142742	648de81 ; Add NEWS entry for project.el
142743	671862f apropos-library: Skip obvious duplicates; don't error on generics
142744	51668a5 ; Grammar fix
142745	ed41d11 Add project-find-file and project-or-external-find-file
142746	056da45 ; Improve commentary in 'setup_for_ellipsis'
142747	269d008 ; Improve docstring for `inhibit-startup-echo-area-message'
142748
1427492016-01-11  John Wiegley  <johnw@newartisans.com>
142750
142751	Merge from origin/emacs-25
142752
142753	ce4a052 Add defvar-local to lisp-imenu-generic-expression
142754	a0121bc Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
142755	76fe2d5 * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
142756	1ae088f * lisp/emacs-lisp/autoload.el (autoload-find-destination):
142757	b6b47af Properly encode/decode base64Binary data in SOAP
142758	c632466 Obey coding-system-for-write when writing stdout/stderr in batch
142759	2f32cb5 * doc/misc/efaq.texi (Packages that do not come with Emacs):
142760	        Update the URI of MELPA and marmalade-repo.
142761	        Reported by CHENG Goa <chenggao@royau.me> in
142762	        https://lists.gnu.org/r/emacs-devel/2016-01/msg00390.html.
142763	d2937aa * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
142764	5330c25 * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
142765	7380990 Remove function wrongly on AWK Mode value of context
142766	fontification hook.
142767	d400753 * src/buffer.c: Stick with ASCII in doc string.
142768	221240c Reword transient-mark-mode doc string
142769	977d3ea Update doc string of 'selective-display'
142770	229c3fa Make C++ buffers writeable when writing their initial text
142771	        properties.
142772	f5c762c Additional changes for "make check-expensive"
142773	1729cf3 ; * admin/MAINTAINERS: Remove myself.
142774	33219d3 Apply text properties for <, > in new after-change function
142775	        (C++ Java Modes).
142776
1427772016-01-11  John Wiegley  <johnw@newartisans.com>
142778
142779	Merge from origin/emacs-25
142780
142781	9fb185a shr-tag-video bug fix
142782	6300655 Minor fixes in tramp-tests.el
142783	50575b1 Ensure redisplay when 'truncate-lines' is set
142784	0d9e80d Fix a doc string of 'transient-mark-mode'
142785	0000ae5 MS-Windows followup to latest gnulib update
142786	4bc5e02 Spelling fix
142787	f1093f7 Do secure signed Bcc handling
142788
1427892016-01-11  John Wiegley  <johnw@newartisans.com>
142790
142791	Merge from origin/emacs-25
142792
142793	861022f * doc/misc/texinfo.tex: Revert unwanted copyright change.
142794	46e47a5 ; * etc/refcards/ru-refcard.tex (cyear): Update via M-x set-copyright.
142795	71ea138 * lisp/align.el (align): Simplify a lambda
142796	5618a50 * lisp/align.el (align): Fix arg order in call to `align-region'
142797	1f680db Fix compilation next-error in buffers with selective-display
142798	d20a948 * nsm.el (nsm-check-protocol): Fix typo in the message.
142799	1da116f Add SHA1 warnings for high network security settings
142800	e48bacd ; * etc/NEWS: Typo fix.
142801
1428022016-01-11  John Wiegley  <johnw@newartisans.com>
142803
142804	Merge from origin/emacs-25
142805
142806	43662a2 ; Clarify that xref is still experimental
142807	0a6e6ca ; * admin/release-process: Remove some obsolete records.
142808	c2e9e3d * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
142809	8637f3d (semantic-symref-derive-find-filepatterns): Return a list
142810	0a7ad07 ; Re-arrange xref-related entries in NEWS.
142811	fe903ef Fix xref-find-references on MS-Windows
142812	55a28d8 ; Fixed visual bell artifact problem on NextStep.
142813	d064034 Document new features of tildify-mode
142814	964bea7 Document new features of Whitespace mode
142815	cd68f47 Improve documentation of new Hide-IfDef features
142816	723b8bf Fix regression in font-locking cl-assert and cl-check-type
142817
1428182016-01-11  John Wiegley  <johnw@newartisans.com>
142819
142820	Merge from origin/emacs-25
142821
142822	ef33bc7 Spelling and grammar fixes
142823	9c3dbab Fix copyright years by hand
142824	0e96320 Update copyright year to 2016
142825
1428262016-01-11  John Wiegley  <johnw@newartisans.com>
142827
142828	Merge from origin/emacs-25
142829
142830	9ee6ecb lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
142831	526d80c Port chart.el methods to cl-generic.
142832	410bb69 Add nt/INSTALL.W64 build instructions
142833	8f5b524 Add new input method 'programmer-dvorak'
142834	6d11f6e Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
142835	bb83bb1 Fix EWW rendering of long RTL lines
142836	b1a8509 fix  bug#21054
142837	ce5ad12 Clean up cairo printing code
142838
1428392016-01-11  John Wiegley  <johnw@newartisans.com>
142840
142841	Merge from origin/emacs-25
142842
142843	6ee327d Add handle_user_signal_hook
142844	47580e0 Avoid writing to purespace
142845	0588be7 Remove unused variable
142846	89e7483 * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
142847	3b95e9c Use posix_openpt instead of openpty on Darwin
142848	86312ff Document support for ':documentation' in Lisp mode
142849	c930e75b Document new features of TeX mode
142850	7c83d84 Clarify docs of hscroll in RTL text
142851	4c8f8db Fix rendering of HTML pages that use character composition
142852	a8d37ca Avoid some compiler warnings in w32.c
142853	ce106f3de Undo ill-advised change
142854	be0bba4 Unbreak completion in python-mode buffers
142855
1428562016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
142857
142858	Adding example replies to bug-triage.
142859
142860	* admin/notes/bug-triage: Added example replies. Also, as requested,
142861	  making the process notes into more of a checklist.
142862
1428632016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
142864
142865	Rename the notes/admin/triage file to bug-triage.
142866
142867	* CONTRIBUTE: Change reference to the triage file name.
142868	* admin/notes/triage: Rename file to admin/notes/bug-triage.
142869
1428702016-01-08  K. Handa  <handa@gnu.org>
142871
142872	Fix outdated comments.
142873
1428742016-01-06  Glenn Morris  <rgm@gnu.org>
142875
142876	Allow creation of loaddefs files without timestamps.
142877
142878	* lisp/emacs-lisp/autoload.el (autoload-timestamps): New variable.
142879	(autoload-generate-file-autoloads, update-directory-autoloads):
142880	If autoload-timestamps is nil, write "t" instead of file timestamp.
142881	(autoload-find-destination, update-directory-autoloads):
142882	If timestamp is "t", use the modtime of the output file instead.
142883
1428842016-01-06  Glenn Morris  <rgm@gnu.org>
142885
142886	Doc tweaks.
142887
142888	* lisp/calendar/cal-hebrew.el (diary-hebrew-list-entries):
142889	* lisp/calendar/cal-iso.el (calendar-iso-to-absolute)
142890	(calendar-iso-from-absolute):
142891	* lisp/calendar/cal-tex.el (cal-tex-comment):
142892	* lisp/calendar/solar.el (calendar-time-display-form): Doc tweaks.
142893
1428942016-01-06  Glenn Morris  <rgm@gnu.org>
142895
142896	Build tweaks related to tags files.
142897
142898	* lib-src/Makefile.in (tagsfiles): New variable.
142899	(TAGS): Also depend on the source files.  Use our own etags program.
142900	* lisp/Makefile.in (ETAGS): Add EXEEXT.
142901	(lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
142902	Remove.
142903	(tagsfiles): New, replacing lisptagsfiles1 etc.
142904	Remove irrelevant source files here rather than in the TAGS rule.
142905	(${ETAGS}): New rule.
142906	(TAGS): Also depend on the etags executable.
142907	* lwlib/Makefile.in (EXEEXT): New, set by configure.
142908	(ETAGS): Add EXEEXT.
142909	(${ETAGS}): New rule.
142910	(ctagsfiles): Use "wildcard".
142911	(TAGS): Also depend on the etags executable.
142912	* nt/Makefile.in (ETAGS, tagsfiles): New variables.
142913	(${ETAGS}): New rule.
142914	(TAGS): Fix dependencies.
142915	* oldXMenu/Makefile.in (EXEEXT): New, set by configure.
142916	(ETAGS): New variable, replacing $TAGS.  Use our own etags program.
142917	Remove "-t" argument.
142918	(${ETAGS}): New rule.
142919	(tagsfiles): New variable.
142920	(TAGS): New rule, with proper dependencies.
142921	* src/Makefile.in (ETAGS): Add EXEEXT.  Add a build rule.
142922	(ctagsfiles1, ctagsfiles2): Use "wildcard".
142923	(ctagsfiles3): Remove.
142924	(TAGS): Depend on etags.
142925	(../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
142926	directories decide if updates are needed.
142927
1429282016-01-06  Glenn Morris  <rgm@gnu.org>
142929
142930	* lisp/Makefile.in (CAL_SRC): Skip calendar.el.
142931
1429322016-01-06  Glenn Morris  <rgm@gnu.org>
142933
142934	* test/lisp/emacs-lisp/package-tests.el
142935
142936	(package-test-macro-compilation): Fixup branch merge.
142937
1429382016-01-05  Eli Zaretskii  <eliz@gnu.org>
142939
142940	Fix fallout from merging emacs-25 branch in test/
142941
142942	* .gitignore: Update for the new place of biditest.txt.
142943	* test/automated/: Directory removed.  All files moved to their
142944	proper places.
142945	* test/etags/: Directory removed.  All files moved to their proper
142946	places.
142947	* test/automated/url-parse-tests.el: File removed; it was an exact
142948	copy of the same file in test/lisp/url/.
142949	* test/automated/url-expand-tests.el: Moved to test/lisp/url/.
142950
1429512016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
142952
142953	Spelling fixes
142954
1429552016-01-04  Daniel Colascione  <dancol@dancol.org>
142956
142957	Let users disable unsafe signal handling code
142958
142959	* src/keyboard.c (syms_of_keyboard): New user variables
142960	`attempt-stack-overflow-recovery' and
142961	`attempt-orderly-shutdown-on-fatal-signal'.
142962	* src/sysdep.c (stack_overflow): Check
142963	`attempt-stack-overflow-recovery'.
142964	* src/emacs.c (terminate_due_to_signal): Check
142965	`attempt-orderly-shutdown-on-fatal-signal'.
142966
1429672016-01-03  Michael Albinus  <michael.albinus@gmx.de>
142968
142969	* configure.ac: Add error message for gfile on Nextstep.
142970
1429712016-01-02  John Wiegley  <johnw@newartisans.com>
142972
142973	Merge branch 'emacs-25-merge'
142974
1429752016-01-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
142976
142977	Align textually on fix done for emacs-25 branch for bug#21054
142978
142979	* lisp/ses.el (ses-check-curcell): Suppress ``temporary fix'' comment,
142980	and useless `(if t ...)' in order to align textually on fix done for
142981	emacs-25 branch for bug#21054.
142982
1429832016-01-01  K. Handa  <handa@gnu.org>
142984
142985	support rendering of wider range of combinging characters by ftfont backend
142986
142987	* lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
142988	supports rendering of combining characters, call
142989	font-shape-gstring.
142990
142991	* src/font.c (Ffont_get): Handle `combining-capability' property.
142992	(syms_of_font): New symbol ":combining-capability'.
142993
142994	* src/font.h (struct font_driver): New member combining_capability.
142995
142996	* src/ftfont.c: Include "category.h".
142997	(ftfont_driver): Initialize combining_capability to
142998	ftfont_combining_capability.
142999	(ftfont_shape_by_flt): If OTF is null, try to find a suitable
143000	FLT in advance.
143001	(ftfont_combining_capability): New function.
143002
1430032016-01-01  Andrew Hyatt  <ahyatt@gmail.com>
143004
143005	Add notes on bug triage procedure
143006
143007	* CONTRIBUTE: In section on the issue tracker, point to new triage file.
143008	* admin/notes/triage: New file explaining triage procedure.
143009
1430102015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
143011
143012	Correct ses-rename-cell cursor-intangible text prop updating.
143013
143014	There were two problems:
143015
143016	- First ses-rename-cell has to work when called non interactively
143017	  (with non-nil CELL argument), so in this case the start pos of
143018	  put-text-property cannot be plainly (point), you need a
143019	  ses-goto-print call before
143020
143021	- Second, the range itself was computed erronously, only the first
143022	  char was affected instead of the full cell width. This was not
143023	  noticeable prior to changes (Deprecate `intangible' and
143024	  `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
143025
143026	* lisp/ses.el (ses-rename-cell): Correct computation of position range
143027	to which the 'cursor-intangible text property has to be set to cell
143028	new name.
143029
1430302015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
143031
143032	Don't fake empty cells value by "" when printing with a lambda.
143033
143034	When using a lambda expression printer function the user should be
143035	free to format differently a really empty cell, ie. containing nil,
143036	from a cell containing an empty string "".
143037
143038	* lisp/ses.el (ses-call-printer): Replace `(or value "")' by just
143039	`value' in the case of a lambda expression printer function.
143040
143041	* doc/misc/ses.texi (Printer functions): Add example and
143042	description about lambda expression printer function handling all
143043	the possible values, including unexpected ones.
143044
1430452015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
143046
143047	Quick temporary hack to fix curcell refreshing.
143048
143049	The problem was caused by change: 2015-04-13 Deprecate `intangible'
143050	and `point-entered' properties. The problem is that this change has
143051	removed the (setq ses--curcell t) setting in the ses-command-hook
143052	function.
143053
143054	* lisp/ses.el (ses-check-curcell): replace `(eq ses--curcell t)' by just `t' as
143055	a condition to call function `ses-set-curcell'. Comment this as a quick
143056	temporary hack to make it work, as I don't know yet whether a definite
143057	correction would be to make the ses-set-curcell at every ses-check-curcell,
143058	or to revert to the previous approach, ie marking ses--curcell as out-of-date
143059	at every potentially cursor motion command.
143060
1430612015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
143062
143063	Restrictive URL checking tweaks
143064
143065	* lisp/net/eww.el (eww): Check whether the domain is
143066	restrictive instead of the string
143067	(http://македонија.icom.museum is restrictive even if each
143068	part is from a different script).
143069
1430702015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
143071
143072	New function `puny-highly-restrictive-domain-p'
143073
143074	* lisp/net/puny.el (puny-highly-restrictive-string-p): Rename.
143075	(puny-highly-restrictive-domain-p): New function.
143076
1430772015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
143078
143079	eww build fix (require puny)
143080
1430812015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
143082
143083	Transform non-restrictive domains to punycode for display
143084
143085	* lisp/net/eww.el (eww): Check whether the domain is Highly
143086	Restrictive in the Unicode IDNA sense.
143087
1430882015-12-29  John Wiegley  <johnw@newartisans.com>
143089
143090	Merge emacs-25 into master (using imerge)
143091
1430922015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
143093
143094	Further Unicode restrictive fixups
143095
143096	* lisp/net/puny.el (puny-highly-restrictive-p): Include the extra
143097	identifier characters from table 3.
143098
1430992015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
143100
143101	Add a new function to say whether a string is restrictive
143102
143103	* lisp/net/puny.el (puny-highly-restrictive-p): New function.
143104
1431052015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
143106
143107	Mention the new puny.el library
143108
1431092015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
143110
143111	IDNA-related fixes for the URL library
143112
143113	* lisp/url/url-http.el (url-http-create-request): IDNA-encode
143114	the Host: header.
143115
143116	* lisp/url/url-util.el (url-encode-url): Don't hex-encode
143117	domain names, but leave them as UTF-8, so that they can be
143118	IDNA-encoded later when contacting the host.
143119
1431202015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
143121
143122	IDNA-encode all domain names in `open-network-stream'
143123
143124	* lisp/net/network-stream.el (open-network-stream)
143125	(network-stream-open-plain, network-stream-open-starttls):
143126	IDNA-encode all domain names, if needed.
143127
1431282015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
143129
143130	Fix puny-encoding all-non-ASCII domains
143131
143132	* lisp/net/puny.el (puny-encode-string): Fix the all-non-ASCII
143133	encoding case.
143134
1431352015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
143136
143137	shr link traversal fixup
143138
143139	* lisp/net/shr.el (shr-next-link): Don't bug out on adjacent links.
143140
1431412015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
143142
143143	Reconnect erc even on server errors
143144
143145	* lisp/erc/erc-backend.el (erc-server-reconnect-p): Try to
143146	reconnect even if a server error has occurred (bug#18527).
143147
1431482015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
143149
143150	Fix punycode short circuit logic
143151
143152	* lisp/net//puny.el (puny-encode-domain): Fix short-circuit logic.
143153
1431542015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
143155
143156	IDNA speed up
143157
143158	* lisp/net/puny.el (puny-encode-domain): Make the common non-IDNA case faster
143159
1431602015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
143161
143162	Add IDNA domain encode/decode functions
143163
143164	* lisp/net/puny.el (puny-decode-domain): New function.
143165	(puny-encode-domain): Ditto.
143166	(puny-decode-digit): Fix digit decoding error.
143167
1431682015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
143169
143170	Rename idna.el to puny.el
143171
143172	* lisp/net/puny.el: Renamed from idna.el to avoid name collisions with
143173	the external idna.el library.
143174
1431752015-12-27  Katsumi Yamaoka  <yamaoka@jpl.org>
143176
143177	lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Keep old Emacsen compatibility
143178
143179	* lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe):
143180	Don't use split-string with 4th arg for old Emacsen compatibility.
143181
1431822015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
143183
143184	* lisp/net/idna.el (idna-decode-string-internal): Implement
143185	decoding.
143186
1431872015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
143188
143189	Further IDNA tweaks
143190
143191	(idna-encode-string): Make idna-encode-string safe for
143192	non-ASCII use.
143193
1431942015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
143195
143196	Clean up the code slightly
143197
1431982015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
143199
143200	Added basic idna encoding support
143201
143202	* lisp/net/idna.el: New file.
143203
1432042015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
143205
143206	Disconnection fixes for erc
143207
143208	* lisp/erc/erc-backend.el (erc-server-reconnect-p): Don't
143209	reconnect if the user has disconnected explicitly (bug#4589).
143210
1432112015-12-27  Thomas Riccardi  <riccardi.thomas@gmail.com>  (tiny change)
143212
143213	Further erc asynch fixes
143214
143215	* lisp/erc/erc-backend.el (erc-process-sentinel-2): Make
143216	erc-server-connect to return even if the connection is not
143217	ready.  Then erc-open and erc-server-reconnect do the
143218	same. (bug#5650).
143219
1432202015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
143221
143222	Make erc connect asynchronously
143223
143224	* lisp/erc/erc-backend.el (erc-server-reconnect): Use it to
143225	reconnect asynchronously.
143226
143227	* lisp/erc/erc-backend.el (erc-open-network-stream): New function (bug#5650).
143228
1432292015-12-27  David Edmondson  <dme@dme.org>
143230
143231	Proxy error in erc with multiple clients
143232
143233	* lisp/erc/erc.el (erc-channel-receive-names): Fix errors
143234	generated when multiple IRC clients talk to a single IRC proxy
143235	(bug#19034).
143236
1432372015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
143238
143239	Fix mml-sec build warnings
143240
143241	* lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
143242	(bug#18718).
143243
1432442015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
143245
143246	(eww-setup-buffer): Restore left-to-right defaults
143247
143248	* lisp/net/eww.el (eww-setup-buffer): Restore left-to-right
143249	defaults.
143250
1432512015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
143252
143253	* lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Fix typo in last check-in.
143254
1432552015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
143256
143257	Identify unsafe combinations of Bcc and encryption
143258
143259	* lisp/gnus/gnus-util.el (gnus-subsetp): New function
143260	* lisp/gnus/mml-sec.el (mml-secure-safe-bcc-list): New variable
143261	* lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): New function
143262
1432632015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
143264
143265	* lisp/net/shr.el (shr-descend): Allow using lambdas in external
143266	functions.
143267
1432682015-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
143269
143270	* admin/gitmerge.el: Tweaks that seemed necessary
143271
143272	* admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
143273	(gitmerge-maybe-resume): Provide explicit empty commit message.
143274
1432752015-12-25  Łukasz Stelmach  <stlman@poczta.fm>  (tiny change)
143276
143277	Use a different port for TLS erc
143278
143279	* lisp/erc/erc.el (erc-default-port-tls): New variable
143280	(bug#19497).
143281	* lisp/erc/erc.el (erc-tls): Use it.
143282
1432832015-12-25  Alain Schneble  <a.s@realize.ch>
143284
143285	Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
143286
143287	* test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
143288	* test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
143289	* lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
143290	information in URL-struct.
143291	* lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
143292	path and query into nil path and query, respectively.
143293	* lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
143294	empty path into an absolute ("/") path.
143295	* lisp/url/url-expand.el (url-expand-file-name): Properly resolve
143296	fragment-only URIs. Do not just return them unchanged.
143297	* lisp/url/url-expand.el (url-default-expander): An empty path in the relative
143298	reference URI should not drop the last segment.
143299
1433002015-12-25  Alain Schneble  <a.s@realize.ch>
143301
143302	Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
143303
143304	* test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
143305	* test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
143306	* lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
143307	information in URL-struct.
143308	* lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
143309	path and query into nil path and query, respectively.
143310	* lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
143311	empty path into an absolute ("/") path.
143312	* lisp/url/url-expand.el (url-expand-file-name): Properly resolve
143313	fragment-only URIs. Do not just return them unchanged.
143314	* lisp/url/url-expand.el (url-default-expander): An empty path in the relative
143315	reference URI should not drop the last segment.
143316
1433172015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
143318
143319	Let url use default file modes when copying files
143320
143321	* lisp/url/url-handlers.el (url-copy-file): Use default file
143322	modes when copying files (bug#11400).
143323
1433242015-12-25  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
143325
143326	Doc fix for url-http
143327
143328	* lisp/url/url-http.el (url-http): Document better return values
143329	  (bug#13187) (tiny change)
143330
1433312015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
143332
143333	* lisp/net/eww.el (eww-display-html): Support <button> tags
143334	(bug#20485).
143335
1433362015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
143337
143338	Made ffap-url-p a defun instead of a defsubst
143339
143340	* lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
143341	since there doesn't seem to be much of a reason for it to be a
143342	defsubst (bug#18203).
143343
1433442015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
143345
143346	Add a command to view files in the browser to dired
143347
143348	* lisp/dired.el (dired-mode-map): Add the `W' command
143349	(bug#18810).
143350
1433512015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
143352
143353	Allow http://user:pass@foo/ URLs again
143354
143355	* lisp/url/url-auth.el (url-basic-auth): Allow explicit
143356	user/passwords in URLs (bug#19046).
143357
1433582015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
143359
143360	* lisp/net/eww.el (eww-mode-map): Fix command name of
143361	eww-toggle-colors.
143362
1433632015-12-25  Samer Masterson  <samer@samertm.com>
143364
143365	Autoload url-insert-buffer-contents
143366
143367	* lisp/url/url-handlers.el: Add autoload cookie so that
143368	`package-list-packages' doesn't bug out (bug#21927) (tiny change)
143369
1433702015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
143371
143372	Allow toggling colors in eww
143373
143374	* doc/misc/eww.texi (Basics): Mention "C".
143375
143376	* lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
143377
143378	* lisp/net/shr.el (shr-use-colors): New variable.
143379	(shr-colorize-region): Use it.
143380
1433812015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
143382
143383	Follow meta refresh tags in eww
143384
143385	* lisp/net/eww.el (eww-tag-meta): Follow meta refresh tags
143386	(bug#22234).
143387
1433882015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
143389
143390	More eww file name coding fixes
143391
143392	* lisp/net/eww.el (eww-decode-url-file-name): Use the base coding
143393	system to check for encodability.
143394
1433952015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
143396
143397	Always save eww history
143398
143399	* lisp/net/eww.el (eww-setup-buffer): Always save history, even
143400	when called from outside the eww buffer (bug#19638).
143401
1434022015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
143403
143404	Default web pages to right-to-left
143405
143406	* lisp/net/eww.el (eww-mode): Most web pages are left-to-right,
143407	so make that the default (bug#19801).
143408
143409	* lisp/net/shr.el (shr-tag-html): Respect "dir" attributes
143410	(left-to-right, right-to-left).
143411
1434122015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
143413
143414	Make toggling checkboxes work again
143415
143416	* lisp/net/eww.el (eww-update-field): Make toggling checkboxes
143417	work again (bug#21881).
143418
1434192015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
143420
143421	Don't store cookies with empty names
143422
143423	* lisp/url/url-cookie.el (url-cookie-store): Refuse to store
143424	cookies with empty names (bug#21936).
143425
1434262015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
143427
143428	Stop rendering HTML before specdlr exhaustion
143429
143430	Fixes: 22117
143431
143432	* lisp/net/shr.el (shr-descend): Stop rendering before we run out
143433	of specpdl room (bug#22117).
143434
1434352015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
143436
143437	Use cl-reduce, not reduce.
143438
1434392015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
143440
143441	Allow several <tbody> tags in shr
143442
143443	* lisp/net/shr.el (shr-table-body): New function to find the real body
143444	of a table.
143445	(shr-tag-table): Use it to render several <tbody> tags in a
143446	table (bug#22170).
143447
1434482015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
143449
143450	Make prettier unique file names in eww
143451
143452	(eww-make-unique-file-name): Make unique file names by making
143453	files like foo(2).jpg instead of foo(1)(2).jpg.
143454
1434552015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
143456
143457	Decode hex-encoded URLs before using them as file names
143458
143459	* lisp/net/eww.el (eww-decode-url-file-name): New function.
143460	(eww-download-callback): Use it to decode file names before
143461	saving them.
143462
1434632015-12-24  Ashish SHUKLA  <ashish.is@lostca.se>
143464
143465	Add FreeBSD cert bundle
143466
143467	* doc/misc/emacs-gnutls.texi (Help For Users): Document
143468	FreeBSD bundle.
143469
143470	* lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
143471
1434722015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
143473
143474	Allow overriding shr functions from eww
143475
143476	* lisp/net/eww.el (eww-display-html): Allow overriding elements in
143477	`shr-external-rendering-functions'.
143478
1434792015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
143480
143481	Ignore invalid SVG images
143482
143483	* lisp/net/shr.el (shr-tag-svg): Ignore SVG images that have no
143484	width or height, because these can't be displayed by ImageMagick,
143485	anyway.
143486
1434872015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
143488
143489	shr table rendering fix
143490
143491	* lisp/net/shr.el (shr-tag-table): Allow rendering body-less
143492	tables that have headers.
143493
1434942015-12-22  Sam Steingold  <sds@gnu.org>
143495
143496	clipboard should still work even if interprogram-* is disabled
143497
143498	(clipboard-yank): When `interprogram-cut-function' is nil,
143499	bind it to `gui-selection-value' - the default value.
143500	(clipboard-kill-region, clipboard-kill-ring-save): When
143501	`interprogram-paste-function' is nil, bind it to `gui-select-text' -
143502	the default value.
143503
1435042015-12-18  Phillip Lord  <phillip.lord@russet.org.uk>
143505
143506	Fix bootstrap issue with dired-loaddefs
143507
143508	* lisp/dired.el: Autoloads for secondary files loaded optionally.
143509
1435102015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
143511
143512	dired generate autoloads to non-versioned file.
143513
143514	* lisp/dired.el: Remove autoloads.
143515	* lisp/Makefile.in: Add dired to autogenel.
143516	* lisp/dired-aux.el, lisp/dired-x.el: Update file local.
143517	* test/lisp/dired-tests.el: Add new test.
143518
1435192015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
143520
143521	eieio generate autoloads to non-versioned file.
143522
143523	* lisp/Makefile.in: eieio-loaddefs add to autogenel.
143524	* lisp/emacs-lisp/eieio.el, lisp/emacs-lisp/eieio-core.el:
143525	  Remove autoloads.
143526	* lisp/emacs-lisp/eieio-compat.el, lisp/emacs-lisp/eieio-custom.el,
143527	  lisp/emacs-lisp/eieio-opt.el: Update file local.
143528	* test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
143529
1435302015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
143531
143532	htmlfontify generate autoload to non-versioned file.
143533
143534	* lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
143535	* lisp/hfy-cmap.el: Update file local.
143536	* lisp/htmlfontify.el: Remove autoloads, add require.
143537	* test/lisp/htmlfontify-tests.el: Test autoload functionality.
143538
1435392015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
143540
143541	ibuffer generate autoloads to non-versioned file.
143542
143543	* lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
143544	* lisp/ibuf-ext.el: Update file local.
143545	* lisp/ibuffer.el: Remove autoloads and add a require.
143546	* test/lisp/ibuffer-tests.el: Test that autoload is working.
143547
1435482015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
143549
143550	rmail generate autoloads to non-versioned file.
143551
143552	* lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
143553	* lisp/mail/rmail.el: Remove autoloads, add require.
143554	* lisp/mail/rmailedit.el, lisp/mail/rmailkwd.el:
143555	* lisp/mail/rmailmm.el, lisp/mail/rmailmsc.el:
143556	* lisp/mail/rmailsort.el, lisp/mail/rmailsum.el:
143557	* lisp/mail/undigest.el: Update file-local.
143558	* test/lisp/mail/rmail-tests.el:
143559
1435602015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
143561
143562	Add autoload-force target.
143563
143564	* lisp/Makefile.in (autoload-force): New target.
143565
1435662015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
143567
143568	ps-print generate autoloads to non versioned file.
143569
143570	* lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
143571	* lisp/ps-print.el: Remove autoloads.
143572	* lisp/ps-mule.el: Update file-local.
143573	* test/lisp/ps-print-tests.el: Test autoload functionality.
143574
1435752015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
143576
143577	reftex generate autoloads to non versioned file.
143578
143579	* lisp/Makefile.in: Add reftex-loaddefs to autogen files
143580	* lisp/textmodes/reftex.el: Remove autoloads.
143581	* lisp/textmodes/reftex-auc.el, lisp/textmodes/reftex-cite.el:
143582	* lisp/textmodes/reftex-dcr.el, lisp/textmodes/reftex-global.el:
143583	* lisp/textmodes/reftex-index.el, lisp/textmodes/reftex-parse.el:
143584	* lisp/textmodes/reftex-ref.el, lisp/textmodes/reftex-sel.el:
143585	* lisp/textmodes/reftex-toc.el: Update autoload file-local.
143586	* test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
143587	  function.
143588
1435892015-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
143590
143591	* lisp/calculator.el (calculator-define-key): Undo last change
143592
143593	Make map argument mandatory instead (bug#22106).
143594	(calculator-add-operators): Pass the argument that's not optional any more.
143595
1435962015-12-03  Glenn Morris  <rgm@gnu.org>
143597
143598	* Makefile.in: Avoid duplication.
143599
143600	(have-tests): New rule.
143601	(check, check-maybe): Use it.
143602
1436032015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
143604
143605	make check unconditional, check-maybe top-level.
143606
143607	 * Makefile.in: Add check-maybe target.
143608	 * test/Makefile.in: Restore unconditional behavior to make check.
143609
1436102015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
143611
143612	Tests now support out-of-source-build.
143613
143614	 * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
143615	   about current working directory.
143616
1436172015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
143618
143619	* lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
143620
1436212015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
143622
143623	Improve documentation and clean up.
143624
143625	 * test/Makefile.in: Improve documentation, use EMACS variable
143626	   correctly, and clean up makefile rules.
143627
1436282015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
143629
143630	Update file headers for name change.
143631
143632	 * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
143633
1436342015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
143635
143636	Test files renamed to new scheme.
143637
143638	 * (finalizer-tests.el): Now renamed alloc-tests.el
143639	 * (zlib-tests.el): Now renamed decompress-tests.el.
143640
1436412015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
143642
143643	Tests now depend on source files
143644
143645	 * test/Makefile.in: Include dependences from tests to source files.
143646	 * test/make-test-deps.emacs-lisp: New file
143647	 * .gitignore: Ignore generated make include file
143648
1436492015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
143650
143651	* lisp/progmodes/which-func.el: Improve disabling the mode
143652
143653	Use lexical-binding.
143654	(which-func-modes, which-func-non-auto-modes, which-func-maxout)
143655	(which-func, which-func-format): Remove redundant :group arg.
143656	(which-func-try-to-enable): New function.
143657	(which-func-ff-hook, which-function-mode): Use it.
143658	(mode-line-misc-info): Add ourselves here instead of in bindings.el.
143659	* lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
143660
1436612015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
143662
143663	* lisp/calculator.el (calculator-define-key): Silence warning
143664
143665	...about unknown calculator-mode-map.
143666
1436672015-11-29  Eli Barzilay  <eli@barzilay.org>
143668
143669	* lisp/calculator.el: more improvements and bugfixes.
143670
143671	- Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
143672	  effect anyway.)
143673
143674	- Simplify `calculator-number-to-string' by throwing most of the work
143675	  onto `number-to-string', leaving just some tweaks for decimal inputs.
143676	  This leads to some minor changes, for example, pasting "1x1" in hex
143677	  mode would warn that "x" is ignored and result in "11" (and it wasn't
143678	  done in decimal mode), whereas now it just ignores everything from the
143679	  "x" and on and result in a "1" just like in decimal input mode.  Also,
143680	  overflows are left for `number-to-string' to deal with.
143681
143682	- `calculator-paste' is very simple as a result.
143683
143684	- Extend the simplified `calculator-paste': with a prefix argument it
143685	  pastes a string as if the characters were entered.  This can be used
143686	  to reduce expressions, but note that it's a simple literal operation,
143687	  so precedence can be messed, a number can be paster while entering a
143688	  number, spaces and newlines matter, etc.
143689
143690	- Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
143691	  operator.
143692
143693	- Fix a bug in `calculator-put-value': avoid grouping in the display
143694	  that is used to construct `calculator-curnum'.  This would trigger
143695	  when pasting or getting a value from a register in some radix mode
143696	  with a large enough value.  Another fix: make the output radix equal
143697	  the input one, otherwise numbers could be converted twice.
143698
1436992015-11-29  Eli Barzilay  <eli@barzilay.org>
143700
143701	* lisp/calculator.el: Re-do key bindings.
143702
143703	Use a helper function that arranges a parent keymap that binds alternate
143704	case keys so if some letter key is unbound and it's un/shifted version
143705	is, it will get used.  This makes the global-map trickery unnecessary.
143706
143707	Also switch to passing strings that name keys through `kbd'.
143708
1437092015-11-29  Eli Barzilay  <eli@barzilay.org>
143710
143711	* lisp/calculator.el: improve radix modes
143712
143713	Fix prompt for some input radix with decimal output (eg, "BD" instead of
143714	the incorrect "B="); also, some minor docstring tweaks for these.
143715
1437162015-11-29  Eli Barzilay  <eli@barzilay.org>
143717
143718	* lisp/calculator.el: better reading of register names
143719
143720	Use `register-read-with-preview' with a dynamically bound
143721	`register-alist' and a proper preview function to read register names.
143722
1437232015-11-29  Eli Barzilay  <eli@barzilay.org>
143724
143725	* lisp/calculator.el: General improvements
143726
143727	Use things like `when', `unless', and `push'.
143728
143729	Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
143730	non-electric mode.
143731
1437322015-11-28  Michael Albinus  <michael.albinus@gmx.de>
143733
143734	Fix a problem with gfilenotify in filenotify-tests.el
143735
143736	* test/lisp/filenotify-tests.el
143737	(file-notify--test-expected-events): Remove.
143738	(file-notify--test-cleanup): Do not set that variable.
143739	(file-notify--test-with-events): EVENTS can also be a list of lists.
143740	(file-notify-test02-events, file-notify-test04-file-validity):
143741	Adapt expected result.
143742
1437432015-11-28  Eli Zaretskii  <eliz@gnu.org>
143744
143745	* .gitignore: Adjust to changes in 'test' directory structure.
143746
1437472015-11-28  Eli Zaretskii  <eliz@gnu.org>
143748
143749	Fix test/manual/etags/Makefile
143750
143751	* test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
143752	changes in 'test' directory structure.
143753
1437542015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
143755
143756	Exclude resource dirs from search for tests.
143757
143758	* test/Makefile.in: Test file locations are now found with find
143759	  rather than using finds native functions.
143760
1437612015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
143762
143763	Add test targets without directory names.
143764
143765	 * (test/Makefile.in): Extend test_template to add two targets for each
143766	   file.
143767
1437682015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
143769
143770	* lisp/emacs-lisp/package.el: Require url-handlers
143771
1437722015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
143773
143774	Move elisp-mode-tests to new function names.
143775
143776	 * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
143777	 find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
143778
1437792015-11-27  Juanma Barranquero  <lekktu@gmail.com>
143780
143781	* lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
143782
1437832015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
143784
143785	Merge branch 'feature/standard-test-location'
143786
1437872015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
143788
143789	* lisp/emacs-lisp/eieio.el: Add some default implementations
143790
143791	(standard-class): Mark it obsolete.
143792	(slot-missing): Give it a default implementation.
143793	(destructor): Simplify and mark it obsolete.
143794	(object-print): Give it a default implementation.
143795	(eieio-change-class): Rename from change-class.
143796	(change-class): Redefine as obsolete alias.
143797
1437982015-11-25  Michael Albinus  <michael.albinus@gmx.de>
143799
143800	Mention kqueue in NEWS
143801
1438022015-11-25  Michael Albinus  <michael.albinus@gmx.de>
143803
143804	Merge from scratch/kqueue
143805
143806	bec57a4 Some final fixes in file notification before merging with master
143807	0247489 Rework file notifications, kqueue has problems with directory monitors
143808	5154781 Continie with pending events
143809	6b490c0 Improve loops in file-notify-test06-many-events
143810	c8e266f Handle more complex rename operation in kqueue
143811	5044bdf New test with a larger number of events.
143812	65ba5a9 Further fixes for kqueue.
143813	13f3508 Code cleanup of kqueue.c
143814	99aa855 Doc changes for kqueue
143815	8deebe1 Finish implementation in kqueue.c
143816	90d6c69 * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
143817	e95b309 More work on kqueue
143818	41d9bd0 Implement directory events
143819	c571fc1 Build fixes for kqueue support.
143820	e0a68f2 Continue kqueue implementation
143821	7543d1c Work on kqueue
143822	e3354e2 Add kqueue support
143823	c6457ce Minor fix to comment indentation and typo in last commit
143824	b92307f linum-mode plays more nicely with other margin-setting extensions
143825	58e6235 * lisp/image-mode.el: Support encrypted file
143826	9375652 * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
143827	47f83b6 ; ChangeLog.2 fixes
143828	7cc233e * lisp/emacs-lisp/package.el: Fix a decoding issue
143829	5f9153f * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
143830	353f5e7 * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
143831	70f1fda ; Auto-commit of ChangeLog files.
143832	ae0653b * CONTRIBUTE: Remove information about feature freeze.
143833	9459456 Merge branch 'release-process-lowercase'
143834	9a4aa0f Document the release process
143835	f8cc14b * admin/release-process: Rename from admin/FOR-RELEASE.
143836	dcd5877 gitmerge: Fix git log command
143837	2ac79ae gitmerge: Try to detect cherry-picks
143838	5f7a2a9 Increment Emacs version on master branch
143839	ed2e7e2 Mention CONTRIBUTE in README
143840	9e00a02 Update verilog-mode.el to 2015-11-09-b121d60-vpo.
143841	138ad3d ; Fix warnings
143842	7126e9a ; Update xref-etags-mode for the latest change
143843	246d660 Use generic dispatch for xref backends
143844	31f6e93 Support rectangular regions for more commands
143845	f103a27 Handle multiple matches on the same line; add highlighting
143846	fe973fc Replace xref-match-bounds with xref-match-length
143847	92a5010 Merge from gnulib
143848	04ac097 Spruce up ftfont.c memory allocation
143849	4c4b520 Port recent XCB changes to 64-bit ‘long int’
143850	4f0ce9c * src/undo.c (run_undoable_change): Now static.
143851	695a6f9 Remove support for ':timeout' from w32 tray notifications
143852	a731c2f * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
143853	2b4c0c0 * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
143854	66b9f7b * src/undo.c: Small fixes for previous change
143855	2fac30e Add a few more variables to redisplay--variables
143856	04f69f1 * lisp/loadup.el: Enlarge the size of the hash table to 80000.
143857	e221d32 Fix point positioning after transposing with negative arg
143858	35f5afb Fix last change in shr.el
143859	508e77b Fix last change
143860	d60ed3f Another fix for MinGW64 and Cygwin builds due to notifications
143861	805a39b Remove intern calls and XXX comments from Fx_export_frames
143862	9463abf shr: don't invoke unbound function (Bug#21895)
143863	6e5186e * test/automated/keymaps-test.el: Fix test to make it repeatable
143864	0c92826 * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
143865	39dbd1c : Tests for undo-auto functionality.
143866	20aa42e ; Merge branch 'fix/no-undo-boundary-on-secondary-buffer-change'
143867	44dfa86 The heuristic that Emacs uses to add an `undo-boundary' has been reworked, as it interacts poorly with functions on `post-command-hook' or `after-change-functions'.
143868	d2f73db Bind [?\S-\ ] to previous line command in Dired-like modes.
143869	c1bc6e5 Fix the MinGW64 and Cygwin-w32 builds
143870	1e363a8 Enable sorting of JSON object keys when encoding
143871	9dd7da9 * test/automated/keymap-tests.el: New test file
143872	aa17de9 Speed up x_real_pos_and_offsets using XCB
143873	a838c83 Enable use of XCB for checking window manager state
143874	c7f2b6a Detect XCB and save a connection handle
143875	e1c27db Reduce some data dependencies between X calls
143876	25e32bd Use color cache for creating bitmap
143877	851be0f Add "^" to the interactive specs of `dired-next/previous-line'
143878	055ca3a Sync with soap-client repository, version 3.0.2
143879	e0f64e7 CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
143880	952395d * lisp/obarray.el: Fix shadowed variables
143881	436d330 Avoid error in submitting a form with EWW
143882	e887f6e ; * doc/lispref/os.texi: Fix indentation of sample code.
143883	51d840a Rename seq-p and map-p to seqp and mapp
143884	23036ba Rename obarray-p to obarrayp
143885	20aea42 Rename obarray-foreach to obarray-map
143886	a3b2101 New file with obarray functions.
143887	9d43941 Implement tray notifications for MS-Windows
143888
1438892015-11-25  Michael Albinus  <michael.albinus@gmx.de>
143890
143891	Some final fixes in file notification before merging with master
143892
143893	* lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
143894	(file-notify-callback): Improve check for `stopped' event.  Call
143895	`file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
143896	(file-notify-add-watch): In case FILE is not a directory, call the
143897	file monitor for the kqueue backend.  Otherwise, call the
143898	directory monitor for the upper directory.
143899
143900	* src/inotify.c (inotifyevent_to_event): Extract file name from
143901	watch_object if the event doesn't provide it.
143902	(Finotify_add_watch): Add file name to watch_object.
143903
143904	* test/automated/file-notify-tests.el (file-notify--test-timeout):
143905	Use different timeouts for different libraries.
143906	(file-notify--test-with-events): Suppress lock files.  Flush
143907	outstanding events before running the body.
143908	(file-notify-test02-events, file-notify-test04-file-validity): Do
143909	not skip cygwin tests.  Add additional test for file creation.
143910	Adapt expected result for different backends.
143911	(file-notify-test03-autorevert): Some of the tests don't work for
143912	w32notify.
143913	(file-notify-test06-many-events): Rename into both directions.
143914
1439152015-11-25  Michael Albinus  <michael.albinus@gmx.de>
143916
143917	Rework file notifications, kqueue has problems with directory monitors
143918
143919	* lisp/filenotify.el (file-notify-add-watch): Call the native
143920	add-watch function on the file, not on the dir.
143921
143922	* src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
143923	about already deleted entries.
143924
143925	* test/automated/auto-revert-tests.el
143926	(auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
143927	since this deletes the target file first.
143928
143929	* test/automated/file-notify-tests.el (file-notify--test-event-test):
143930	Make stronger checks.
143931	(file-notify-test01-add-watch, file-notify-test02-events)
143932	(file-notify-test04-file-validity, file-notify-test05-dir-validity):
143933	Rewrite in order to call file monitors but directory monitors.
143934	(file-notify-test06-many-events): Ler rename work in both directions.
143935
1439362015-11-25  Michael Albinus  <michael.albinus@gmx.de>
143937
143938	Continie with pending events
143939
143940	* src/kqueue.c (pending_events): Remove global variable.
143941	(kqueue_compare_dir_list): Create `write' event for not used
143942	pending events.
143943	(globals_of_kqueue): Remove initialization of pending_events.
143944
1439452015-11-25  Michael Albinus  <michael.albinus@gmx.de>
143946
143947	Improve loops in file-notify-test06-many-events
143948
143949	* test/automated/file-notify-tests.el (file-notify-test06-many-events):
143950	Use `read-event' pauses for the `write-file' loops; otherwise
143951	events are lost in inotify and gfilenotify cases.
143952
1439532015-11-25  Michael Albinus  <michael.albinus@gmx.de>
143954
143955	Handle more complex rename operation in kqueue
143956
143957	* src/kqueue.c (pending_events): New variable.
143958	(kqueue_compare_dir_list): Handle more complex rename operation.
143959	(globals_of_kqueue): Initialize pending_events.
143960
143961	* test/automated/file-notify-tests.el (file-notify-test06-many-events):
143962	Adapt expected events in the `rename-file' case.
143963	(file-notify-test06-many-events-remote): Declare.
143964
1439652015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
143966
143967	New test with a larger number of events.
143968
143969	* test/automated/file-notify-tests.el (file-notify--test-with-events):
143970	Make timeout heuristically depend on the number of events.
143971
143972	(file-notify-test06-many-events): Use it for new test.
143973
1439742015-11-25  Michael Albinus  <michael.albinus@gmx.de>
143975
143976	Further fixes for kqueue.
143977
143978	* lisp/filenotify.el (file-notify-callback): Raise also event if
143979	directory name matches.
143980	(file-notify-add-watch): Add `create' to the flags for `kqueue'.
143981
143982	* src/kqueue.c (kqueue_generate_event): Use watch_object as
143983	argument instead of ident.  Remove callback argument.  Adapt
143984	callees.  Check actions whether they are monitored flags.
143985
143986	* test/automated/file-notify-tests.el (file-notify--test-library):
143987	New defun.
143988	(file-notify-test00-availability, file-notify-test02-events)
143989	(file-notify-test04-file-validity)
143990	(file-notify-test05-dir-validity): Use it.
143991	(file-notify-test02-events, file-notify-test04-file-validity): Add
143992	`read-event' calls between different file actions, in order to
143993	give the backends a chance to rais an event.  Needed especially
143994	for kqueue.  In case of deleting a directory, there are two
143995	`deleted' events.
143996
1439972015-11-25  Michael Albinus  <michael.albinus@gmx.de>
143998
143999	Code cleanup of kqueue.c
144000
144001	* src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
144002	(kqueue_compare_dir_list): Do not loop when calling
144003	directory_files_internal.  Remove checks for "." and "..", this is
144004	done in kqueue_directory_listing now.
144005	(Fkqueue_add_watch): Check for proper emacs_open flags.
144006
1440072015-11-25  Michael Albinus  <michael.albinus@gmx.de>
144008
144009	Doc changes for kqueue
144010
144011	* doc/lispref/os.texi (File Notifications): Add kqueue as backend.
144012	Fix some glitches in the example.
144013
1440142015-11-25  Michael Albinus  <michael.albinus@gmx.de>
144015
144016	Finish implementation in kqueue.c
144017
144018	* src/kqueue.c (kqueue_directory_listing, kqueue_callback):
144019	Simplify access to list.
144020	(kqueue_compare_dir_list): Simplify access to list.  Raise
144021	`delete' event if directory does not exist any longer.  Otherwise,
144022	wait until directory contents has changed.  Fix error in check.
144023
1440242015-11-25  Michael Albinus  <michael.albinus@gmx.de>
144025
144026	* lisp/filenotify.el (file-notify-add-watch): Fix thinko.
144027
1440282015-11-25  Michael Albinus  <michael.albinus@gmx.de>
144029
144030	More work on kqueue
144031
144032	* lisp/filenotify.el (file-notify-callback): Handle also the
144033	`rename' event from kqueue.
144034	(file-notify-add-watch): Do not register an entry twice.
144035
144036	* src/kqueue.c (kqueue_directory_listing): New function.
144037	(kqueue_generate_event): New argument FILE1.  Adapt callees.
144038	(kqueue_compare_dir_list): Rewrite in order to make it more robust.
144039
1440402015-11-25  Michael Albinus  <michael.albinus@gmx.de>
144041
144042	Implement directory events
144043
144044	* lisp/filenotify.el (file-notify-handle-event)
144045	(file-notify-callback): Remove traces.
144046
144047	* src/kqueue.c: Include <sys/time.h>.
144048	(kqueue_generate_event, kqueue_compare_dir_list): New functions.
144049	(kqueue_callback): Use them.  Call kevent() with a zero timeout.
144050	(Fkqueue_add_watch): Adapt docstring.  Support directory events.
144051	Compute initial directory listing.  Close file descriptor in case
144052	of errors.
144053	(syms_of_kqueue): Declare Qcreate.
144054
1440552015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
144056
144057	Build fixes for kqueue support.
144058
144059	* src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
144060	flag.
144061
144062	* configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
144063	kqueue on *BSD.
144064
1440652015-11-25  Michael Albinus  <michael.albinus@gmx.de>
144066
144067	Continue kqueue implementation
144068
144069	* lisp/filenotify.el (file-notify-handle-event)
144070	(file-notify-callback): Enable trace messages.
144071
144072	* src/kqueue.c: Include also <sys/types.h>.
144073	(kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
144074	(Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
144075	(syms_of_kqueue): Add them.
144076
1440772015-11-25  Michael Albinus  <michael.albinus@gmx.de>
144078
144079	Work on kqueue
144080
144081	* lisp/filenotify.el (file-notify--library)
144082	(file-notify-descriptors, file-notify-callback)
144083	(file-notify-add-watch, file-notify-rm-watch)
144084	(file-notify-valid-p): Add kqueue support.
144085
144086	* src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
144087
1440882015-11-25  Michael Albinus  <michael.albinus@gmx.de>
144089
144090	Add kqueue support
144091
144092	* configure.ac (--with-file-notification): Add kqueue.
144093	(top): Remove special test for "${HAVE_NS}" and
144094	${with_file_notification}, this is handled inside gfilenotify
144095	tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
144096	instead of library specific variables.
144097
144098	* src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
144099
144100	* src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
144101
144102	* src/kqueue.c: New file.
144103
144104	* src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
144105
1441062015-11-25  Michael Albinus  <michael.albinus@gmx.de>
144107
144108	Some final fixes in file notification before merging with master
144109
144110	* lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
144111	(file-notify-callback): Improve check for `stopped' event.  Call
144112	`file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
144113	(file-notify-add-watch): In case FILE is not a directory, call the
144114	file monitor for the kqueue backend.  Otherwise, call the
144115	directory monitor for the upper directory.
144116
144117	* src/inotify.c (inotifyevent_to_event): Extract file name from
144118	watch_object if the event doesn't provide it.
144119	(Finotify_add_watch): Add file name to watch_object.
144120
144121	* test/automated/file-notify-tests.el (file-notify--test-timeout):
144122	Use different timeouts for different libraries.
144123	(file-notify--test-with-events): Suppress lock files.  Flush
144124	outstanding events before running the body.
144125	(file-notify-test02-events, file-notify-test04-file-validity): Do
144126	not skip cygwin tests.  Add additional test for file creation.
144127	Adapt expected result for different backends.
144128	(file-notify-test03-autorevert): Some of the tests don't work for
144129	w32notify.
144130	(file-notify-test06-many-events): Rename into both directions.
144131
1441322015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
144133
144134	Update elisp-mode-tests for changed file location.
144135
144136	 * test/lisp/progmodes/elisp-mode-tests.el:
144137
1441382015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
144139
144140	Exclude manual tests from Makefile
144141
144142	 * test/Makefile.in:
144143
1441442015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
144145
144146	Move package test files to new directory.
144147
144148	 * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
144149	 * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
144150
1441512015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
144152
144153	Restore delete Makefiles and fix .gitignore.
144154
144155	 * .gitignore: Update Makefiles to changed locations
144156	 * test/lisp/progmodes/flymake-resources/Makefile,
144157	   test/manual/etags/Makefile,
144158	   test/manual/etags/make-src/Makefile,
144159	   test/manual/indent/Makefile: Restored and moved to new location.
144160
1441612015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
144162
144163	Test infrastructure: updates after directory move
144164
144165	 * (test/Makefile.in): Support directories several levels deep.
144166	 * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
144167	 * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
144168
1441692015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
144170
144171	Rename all test files to reflect source layout.
144172
144173	* CONTRIBUTE, Makefile.in, configure.ac: Update to reflect
144174	test directory moves.
144175	* test/file-organisation.org: New file.
144176	* test/automated/Makefile.in:
144177	* test/automated/data/decompress/foo.gz:
144178	* test/automated/data/epg/pubkey.asc:
144179	* test/automated/data/epg/seckey.asc:
144180	* test/automated/data/files-bug18141.el.gz:
144181	* test/automated/data/flymake/test.c:
144182	* test/automated/data/flymake/test.pl:
144183	* test/automated/data/package/archive-contents:
144184	* test/automated/data/package/key.pub:
144185	* test/automated/data/package/key.sec:
144186	* test/automated/data/package/multi-file-0.2.3.tar:
144187	* test/automated/data/package/multi-file-readme.txt:
144188	* test/automated/data/package/newer-versions/archive-contents:
144189	* test/automated/data/package/newer-versions/new-pkg-1.0.el:
144190	* test/automated/data/package/newer-versions/simple-single-1.4.el:
144191	* test/automated/data/package/package-test-server.py:
144192	* test/automated/data/package/signed/archive-contents:
144193	* test/automated/data/package/signed/archive-contents.sig:
144194	* test/automated/data/package/signed/signed-bad-1.0.el:
144195	* test/automated/data/package/signed/signed-bad-1.0.el.sig:
144196	* test/automated/data/package/signed/signed-good-1.0.el:
144197	* test/automated/data/package/signed/signed-good-1.0.el.sig:
144198	* test/automated/data/package/simple-depend-1.0.el:
144199	* test/automated/data/package/simple-single-1.3.el:
144200	* test/automated/data/package/simple-single-readme.txt:
144201	* test/automated/data/package/simple-two-depend-1.1.el:
144202	* test/automated/abbrev-tests.el:
144203	* test/automated/auto-revert-tests.el:
144204	* test/automated/calc-tests.el:
144205	* test/automated/icalendar-tests.el:
144206	* test/automated/character-fold-tests.el:
144207	* test/automated/comint-testsuite.el:
144208	* test/automated/descr-text-test.el:
144209	* test/automated/electric-tests.el:
144210	* test/automated/cl-generic-tests.el:
144211	* test/automated/cl-lib-tests.el:
144212	* test/automated/eieio-test-methodinvoke.el:
144213	* test/automated/eieio-test-persist.el:
144214	* test/automated/eieio-tests.el:
144215	* test/automated/ert-tests.el:
144216	* test/automated/ert-x-tests.el:
144217	* test/automated/generator-tests.el:
144218	* test/automated/let-alist.el:
144219	* test/automated/map-tests.el:
144220	* test/automated/advice-tests.el:
144221	* test/automated/package-test.el:
144222	* test/automated/pcase-tests.el:
144223	* test/automated/regexp-tests.el:
144224	* test/automated/seq-tests.el:
144225	* test/automated/subr-x-tests.el:
144226	* test/automated/tabulated-list-test.el:
144227	* test/automated/thunk-tests.el:
144228	* test/automated/timer-tests.el:
144229	* test/automated/epg-tests.el:
144230	* test/automated/eshell.el:
144231	* test/automated/faces-tests.el:
144232	* test/automated/file-notify-tests.el:
144233	* test/automated/auth-source-tests.el:
144234	* test/automated/gnus-tests.el:
144235	* test/automated/message-mode-tests.el:
144236	* test/automated/help-fns.el:
144237	* test/automated/imenu-test.el:
144238	* test/automated/info-xref.el:
144239	* test/automated/mule-util.el:
144240	* test/automated/isearch-tests.el:
144241	* test/automated/json-tests.el:
144242	* test/automated/bytecomp-tests.el:
144243	* test/automated/coding-tests.el:
144244	* test/automated/core-elisp-tests.el:
144245	* test/automated/decoder-tests.el:
144246	* test/automated/files.el:
144247	* test/automated/font-parse-tests.el:
144248	* test/automated/lexbind-tests.el:
144249	* test/automated/occur-tests.el:
144250	* test/automated/process-tests.el:
144251	* test/automated/syntax-tests.el:
144252	* test/automated/textprop-tests.el:
144253	* test/automated/undo-tests.el:
144254	* test/automated/man-tests.el:
144255	* test/automated/completion-tests.el:
144256	* test/automated/dbus-tests.el:
144257	* test/automated/newsticker-tests.el:
144258	* test/automated/sasl-scram-rfc-tests.el:
144259	* test/automated/tramp-tests.el:
144260	* test/automated/obarray-tests.el:
144261	* test/automated/compile-tests.el:
144262	* test/automated/elisp-mode-tests.el:
144263	* test/automated/f90.el:
144264	* test/automated/flymake-tests.el:
144265	* test/automated/python-tests.el:
144266	* test/automated/ruby-mode-tests.el:
144267	* test/automated/subword-tests.el:
144268	* test/automated/replace-tests.el:
144269	* test/automated/simple-test.el:
144270	* test/automated/sort-tests.el:
144271	* test/automated/subr-tests.el:
144272	* test/automated/reftex-tests.el:
144273	* test/automated/sgml-mode-tests.el:
144274	* test/automated/tildify-tests.el:
144275	* test/automated/thingatpt.el:
144276	* test/automated/url-future-tests.el:
144277	* test/automated/url-util-tests.el:
144278	* test/automated/add-log-tests.el:
144279	* test/automated/vc-bzr.el:
144280	* test/automated/vc-tests.el:
144281	* test/automated/xml-parse-tests.el:
144282	* test/BidiCharacterTest.txt:
144283	* test/biditest.el:
144284	* test/cedet/cedet-utests.el:
144285	* test/cedet/ede-tests.el:
144286	* test/cedet/semantic-ia-utest.el:
144287	* test/cedet/semantic-tests.el:
144288	* test/cedet/semantic-utest-c.el:
144289	* test/cedet/semantic-utest.el:
144290	* test/cedet/srecode-tests.el:
144291	* test/cedet/tests/test.c:
144292	* test/cedet/tests/test.el:
144293	* test/cedet/tests/test.make:
144294	* test/cedet/tests/testdoublens.cpp:
144295	* test/cedet/tests/testdoublens.hpp:
144296	* test/cedet/tests/testfriends.cpp:
144297	* test/cedet/tests/testjavacomp.java:
144298	* test/cedet/tests/testnsp.cpp:
144299	* test/cedet/tests/testpolymorph.cpp:
144300	* test/cedet/tests/testspp.c:
144301	* test/cedet/tests/testsppcomplete.c:
144302	* test/cedet/tests/testsppreplace.c:
144303	* test/cedet/tests/testsppreplaced.c:
144304	* test/cedet/tests/testsubclass.cpp:
144305	* test/cedet/tests/testsubclass.hh:
144306	* test/cedet/tests/testtypedefs.cpp:
144307	* test/cedet/tests/testvarnames.c:
144308	* test/etags/CTAGS.good:
144309	* test/etags/ETAGS.good_1:
144310	* test/etags/ETAGS.good_2:
144311	* test/etags/ETAGS.good_3:
144312	* test/etags/ETAGS.good_4:
144313	* test/etags/ETAGS.good_5:
144314	* test/etags/ETAGS.good_6:
144315	* test/etags/a-src/empty.zz:
144316	* test/etags/a-src/empty.zz.gz:
144317	* test/etags/ada-src/2ataspri.adb:
144318	* test/etags/ada-src/2ataspri.ads:
144319	* test/etags/ada-src/etags-test-for.ada:
144320	* test/etags/ada-src/waroquiers.ada:
144321	* test/etags/c-src/a/b/b.c:
144322	* test/etags/c-src/abbrev.c:
144323	* test/etags/c-src/c.c:
144324	* test/etags/c-src/dostorture.c:
144325	* test/etags/c-src/emacs/src/gmalloc.c:
144326	* test/etags/c-src/emacs/src/keyboard.c:
144327	* test/etags/c-src/emacs/src/lisp.h:
144328	* test/etags/c-src/emacs/src/regex.h:
144329	* test/etags/c-src/etags.c:
144330	* test/etags/c-src/exit.c:
144331	* test/etags/c-src/exit.strange_suffix:
144332	* test/etags/c-src/fail.c:
144333	* test/etags/c-src/getopt.h:
144334	* test/etags/c-src/h.h:
144335	* test/etags/c-src/machsyscalls.c:
144336	* test/etags/c-src/machsyscalls.h:
144337	* test/etags/c-src/sysdep.h:
144338	* test/etags/c-src/tab.c:
144339	* test/etags/c-src/torture.c:
144340	* test/etags/cp-src/MDiagArray2.h:
144341	* test/etags/cp-src/Range.h:
144342	* test/etags/cp-src/burton.cpp:
144343	* test/etags/cp-src/c.C:
144344	* test/etags/cp-src/clheir.cpp.gz:
144345	* test/etags/cp-src/clheir.hpp:
144346	* test/etags/cp-src/conway.cpp:
144347	* test/etags/cp-src/conway.hpp:
144348	* test/etags/cp-src/fail.C:
144349	* test/etags/cp-src/functions.cpp:
144350	* test/etags/cp-src/screen.cpp:
144351	* test/etags/cp-src/screen.hpp:
144352	* test/etags/cp-src/x.cc:
144353	* test/etags/el-src/TAGTEST.EL:
144354	* test/etags/el-src/emacs/lisp/progmodes/etags.el:
144355	* test/etags/erl-src/gs_dialog.erl:
144356	* test/etags/f-src/entry.for:
144357	* test/etags/f-src/entry.strange.gz:
144358	* test/etags/f-src/entry.strange_suffix:
144359	* test/etags/forth-src/test-forth.fth:
144360	* test/etags/html-src/algrthms.html:
144361	* test/etags/html-src/index.shtml:
144362	* test/etags/html-src/software.html:
144363	* test/etags/html-src/softwarelibero.html:
144364	* test/etags/lua-src/allegro.lua:
144365	* test/etags/objc-src/PackInsp.h:
144366	* test/etags/objc-src/PackInsp.m:
144367	* test/etags/objc-src/Subprocess.h:
144368	* test/etags/objc-src/Subprocess.m:
144369	* test/etags/objcpp-src/SimpleCalc.H:
144370	* test/etags/objcpp-src/SimpleCalc.M:
144371	* test/etags/pas-src/common.pas:
144372	* test/etags/perl-src/htlmify-cystic:
144373	* test/etags/perl-src/kai-test.pl:
144374	* test/etags/perl-src/yagrip.pl:
144375	* test/etags/php-src/lce_functions.php:
144376	* test/etags/php-src/ptest.php:
144377	* test/etags/php-src/sendmail.php:
144378	* test/etags/prol-src/natded.prolog:
144379	* test/etags/prol-src/ordsets.prolog:
144380	* test/etags/ps-src/rfc1245.ps:
144381	* test/etags/pyt-src/server.py:
144382	* test/etags/tex-src/gzip.texi:
144383	* test/etags/tex-src/nonewline.tex:
144384	* test/etags/tex-src/testenv.tex:
144385	* test/etags/tex-src/texinfo.tex:
144386	* test/etags/y-src/atest.y:
144387	* test/etags/y-src/cccp.c:
144388	* test/etags/y-src/cccp.y:
144389	* test/etags/y-src/parse.c:
144390	* test/etags/y-src/parse.y:
144391	* test/indent/css-mode.css:
144392	* test/indent/js-indent-init-dynamic.js:
144393	* test/indent/js-indent-init-t.js:
144394	* test/indent/js-jsx.js:
144395	* test/indent/js.js:
144396	* test/indent/latex-mode.tex:
144397	* test/indent/modula2.mod:
144398	* test/indent/nxml.xml:
144399	* test/indent/octave.m:
144400	* test/indent/pascal.pas:
144401	* test/indent/perl.perl:
144402	* test/indent/prolog.prolog:
144403	* test/indent/ps-mode.ps:
144404	* test/indent/ruby.rb:
144405	* test/indent/scheme.scm:
144406	* test/indent/scss-mode.scss:
144407	* test/indent/sgml-mode-attribute.html:
144408	* test/indent/shell.rc:
144409	* test/indent/shell.sh:
144410	* test/redisplay-testsuite.el:
144411	* test/rmailmm.el:
144412	* test/automated/buffer-tests.el:
144413	* test/automated/cmds-tests.el:
144414	* test/automated/data-tests.el:
144415	* test/automated/finalizer-tests.el:
144416	* test/automated/fns-tests.el:
144417	* test/automated/inotify-test.el:
144418	* test/automated/keymap-tests.el:
144419	* test/automated/print-tests.el:
144420	* test/automated/libxml-tests.el:
144421	* test/automated/zlib-tests.el: Files Moved.
144422
1444232015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
144424
144425	verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
144426
144427	* lisp/progmodes/verilog-mode.el
144428	(verilog-save-font-no-change-functions): Commentary and fix
144429	pre-Emacs 21 behavior.
144430
1444312015-11-20  Michael Albinus  <michael.albinus@gmx.de>
144432
144433	Rework file notifications, kqueue has problems with directory monitors
144434
144435	* lisp/filenotify.el (file-notify-add-watch): Call the native
144436	add-watch function on the file, not on the dir.
144437
144438	* src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
144439	about already deleted entries.
144440
144441	* test/automated/auto-revert-tests.el
144442	(auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
144443	since this deletes the target file first.
144444
144445	* test/automated/file-notify-tests.el (file-notify--test-event-test):
144446	Make stronger checks.
144447	(file-notify-test01-add-watch, file-notify-test02-events)
144448	(file-notify-test04-file-validity, file-notify-test05-dir-validity):
144449	Rewrite in order to call file monitors but directory monitors.
144450	(file-notify-test06-many-events): Ler rename work in both directions.
144451
1444522015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
144453
144454	Use obarray functions from obarray.
144455
144456	* lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
144457	  abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
144458	  clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
144459	  delegate to obarray.el functions.
144460	* lisp/loadup.el: load obarray before abbrev
144461	* test/automated/abbrev-tests.el: new tests
144462
1444632015-11-19  Michael Albinus  <michael.albinus@gmx.de>
144464
144465	Continie with pending events
144466
144467	* src/kqueue.c (pending_events): Remove global variable.
144468	(kqueue_compare_dir_list): Create `write' event for not used
144469	pending events.
144470	(globals_of_kqueue): Remove initialization of pending_events.
144471
1444722015-11-19  Michael Albinus  <michael.albinus@gmx.de>
144473
144474	Improve loops in file-notify-test06-many-events
144475
144476	* test/automated/file-notify-tests.el (file-notify-test06-many-events):
144477	Use `read-event' pauses for the `write-file' loops; otherwise
144478	events are lost in inotify and gfilenotify cases.
144479
1444802015-11-19  Michael Albinus  <michael.albinus@gmx.de>
144481
144482	Handle more complex rename operation in kqueue
144483
144484	* src/kqueue.c (pending_events): New variable.
144485	(kqueue_compare_dir_list): Handle more complex rename operation.
144486	(globals_of_kqueue): Initialize pending_events.
144487
144488	* test/automated/file-notify-tests.el (file-notify-test06-many-events):
144489	Adapt expected events in the `rename-file' case.
144490	(file-notify-test06-many-events-remote): Declare.
144491
1444922015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
144493
144494	epa.el: Add option to replace original text
144495
144496	* lisp/epa.el (epa-replace-original-text): New user option.
144497	(Bug#21947)
144498
1444992015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
144500
144501	Add interactive seek command.
144502
144503	* lisp/mpc.el (mpc-cmd-seekcur): New function.
144504	(mpc-seek-current): New command.
144505	(mpc-mode-menu): Add entry for mpc-seek-current
144506	(mpc-mode-map): Bind mpc-seek-current to "g"
144507
1445082015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
144509
144510	Fix issue where a new tempfile was created every refresh
144511
144512	* lisp/mpc.el (mpc-format): Leave dir as relative path
144513
1445142015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
144515
144516	New test with a larger number of events.
144517
144518	* test/automated/file-notify-tests.el (file-notify--test-with-events):
144519	Make timeout heuristically depend on the number of events.
144520
144521	(file-notify-test06-many-events): Use it for new test.
144522
1445232015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
144524
144525	* lisp/progmodes/cc-defs.el: Use with-silent-modifications
144526
144527	(c-save-buffer-state): Use with-silent-modifications when available.
144528	(c--macroexpand-all): Check macroexpand-all directly rather than
144529	c--mapcan-status.
144530
1445312015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
144532
144533	* lisp/loadup.el: Set max-lisp-eval-depth here
144534
144535	* lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
144536	(BYTE_COMPILE_FLAGS): Adjust accordingly.
144537
1445382015-11-18  Michael Albinus  <michael.albinus@gmx.de>
144539
144540	Further fixes for kqueue.
144541
144542	* lisp/filenotify.el (file-notify-callback): Raise also event if
144543	directory name matches.
144544	(file-notify-add-watch): Add `create' to the flags for `kqueue'.
144545
144546	* src/kqueue.c (kqueue_generate_event): Use watch_object as
144547	argument instead of ident.  Remove callback argument.  Adapt
144548	callees.  Check actions whether they are monitored flags.
144549
144550	* test/automated/file-notify-tests.el (file-notify--test-library):
144551	New defun.
144552	(file-notify-test00-availability, file-notify-test02-events)
144553	(file-notify-test04-file-validity)
144554	(file-notify-test05-dir-validity): Use it.
144555	(file-notify-test02-events, file-notify-test04-file-validity): Add
144556	`read-event' calls between different file actions, in order to
144557	give the backends a chance to rais an event.  Needed especially
144558	for kqueue.  In case of deleting a directory, there are two
144559	`deleted' events.
144560
1445612015-11-17  João Távora  <joaotavora@gmail.com>
144562
144563	Minor fix to comment indentation and typo in last commit
144564
144565	* lisp/linum.el (linum-update-window): Fix comment indentation and
144566	a typo.
144567
1445682015-11-17  João Távora  <joaotavora@gmail.com>
144569
144570	linum-mode plays more nicely with other margin-setting extensions
144571
144572	linum.el will only modify the left margin if it needs to, and will
144573	only reset the it back to 0 if it guesses that no-one has touched that
144574	margin in the meantime.
144575
144576	As such, this is a more of a workaround than an actual fix, but fixes
144577	the problems described in bug#20674 regarding the interaction with
144578	modes such as darkroom-mode and olivetti-mode.
144579
144580	A similar fix was commited to nlinum.el in ELPA.git's
144581	e7f5f549fbfb740b911fb7f33b42381ecece56d8
144582
144583	* lisp/linum.el (linum-delete-overlays): Restore margins more
144584	criteriously.
144585	(linum-update-window): Set margins more criteriously.
144586
1445872015-11-17  Michael Albinus  <michael.albinus@gmx.de>
144588
144589	Code cleanup of kqueue.c
144590
144591	* src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
144592	(kqueue_compare_dir_list): Do not loop when calling
144593	directory_files_internal.  Remove checks for "." and "..", this is
144594	done in kqueue_directory_listing now.
144595	(Fkqueue_add_watch): Check for proper emacs_open flags.
144596
1445972015-11-16  Daiki Ueno  <ueno@gnu.org>
144598
144599	* lisp/image-mode.el: Support encrypted file
144600
144601	(image-toggle-display-image): Read content from the buffer instead
144602	of the file, if the buffer holds a decrypted data.  (Bug#21870)
144603
1446042015-11-16  Michael Albinus  <michael.albinus@gmx.de>
144605
144606	Doc changes for kqueue
144607
144608	* doc/lispref/os.texi (File Notifications): Add kqueue as backend.
144609	Fix some glitches in the example.
144610
1446112015-11-16  Michael Albinus  <michael.albinus@gmx.de>
144612
144613	Finish implementation in kqueue.c
144614
144615	* src/kqueue.c (kqueue_directory_listing, kqueue_callback):
144616	Simplify access to list.
144617	(kqueue_compare_dir_list): Simplify access to list.  Raise
144618	`delete' event if directory does not exist any longer.  Otherwise,
144619	wait until directory contents has changed.  Fix error in check.
144620
1446212015-11-15  Michael Albinus  <michael.albinus@gmx.de>
144622
144623	* lisp/filenotify.el (file-notify-add-watch): Fix thinko.
144624
1446252015-11-15  Juanma Barranquero  <lekktu@gmail.com>
144626
144627	* lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
144628
1446292015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
144630
144631	* lisp/emacs-lisp/package.el: Fix a decoding issue
144632
144633	(package--with-response-buffer): Use `url-insert-buffer-contents'.
144634	The previous code had some issues with decoding. Refactoring that
144635	function allows us to use the decoding from url-handlers while still
144636	treating both sync and async requests the same.
144637
144638	* lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
144639	`url-insert-buffer-contents'.
144640	(url-insert-buffer-contents): New function
144641
1446422015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
144643
144644	* lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
144645
144646	(package--with-work-buffer-async): Reimplement as
144647	`package--with-response-buffer'.
144648	(package--with-work-buffer): Mark obsolete.
144649	(package--with-response-buffer): New macro. This is a more self
144650	contained and less contrived version of
144651	`package--with-work-buffer-async'.  It uses keyword arguments,
144652	doesn't have async on the name, doesn't fallback on
144653	`package--with-work-buffer', and has _much_ simpler error
144654	handling.
144655
144656	(package--check-signature, package--download-one-archive)
144657	(package-install-from-archive, describe-package-1): Use it.
144658
144659	(package--download-and-read-archives): Let
144660	`package--download-one-archive' take care of calling
144661	`package--update-downloads-in-progress'.
144662
1446632015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
144664
144665	* lisp/progmodes/verilog-mode.el: Use with-silent-modifications
144666
144667	(verilog-save-buffer-state): Use with-silent-modifications when available.
144668	(verilog-save-font-no-change-functions): Don't bind
144669	before/after-change-functions if it's not needed.
144670
1446712015-11-15  Michael Albinus  <michael.albinus@gmx.de>
144672
144673	More work on kqueue
144674
144675	* lisp/filenotify.el (file-notify-callback): Handle also the
144676	`rename' event from kqueue.
144677	(file-notify-add-watch): Do not register an entry twice.
144678
144679	* src/kqueue.c (kqueue_directory_listing): New function.
144680	(kqueue_generate_event): New argument FILE1.  Adapt callees.
144681	(kqueue_compare_dir_list): Rewrite in order to make it more robust.
144682
1446832015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
144684
144685	* CONTRIBUTE: Remove information about feature freeze.
144686
144687	Merge branch 'release-process-lowercase'
144688
1446892015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
144690
144691	Document the release process
144692
144693	* admin/notes/versioning: Add information about RC releases.
144694	* admin/release-process: Document the release process.
144695	* admin/authors.el (authors-ignored-files):
144696	* admin/README: Change FOR-RELEASE to release-process.
144697	* CONTRIBUTE:
144698	* admin/notes/bugtracker: Don't mention FOR-RELEASE.
144699
1447002015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
144701
144702	* admin/release-process: Rename from admin/FOR-RELEASE.
144703
1447042015-11-14  David Engster  <deng@randomsample.de>
144705
144706	gitmerge: Fix git log command
144707
144708	* admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
144709	only want commits from the branch that is to be merged.
144710	(gitmerge-setup-log-buffer): Use the same symmetric range as in
144711	`gitmerge-missing'.
144712
1447132015-11-14  David Engster  <deng@randomsample.de>
144714
144715	gitmerge: Try to detect cherry-picks
144716
144717	* admin/gitmerge.el (gitmerge-default-branch): Change to
144718	origin/emacs-25.
144719	(gitmerge-missing): Use symmetric difference ('...') between
144720	branch and master so that cherry-picks can be detected.
144721
1447222015-11-14  Michael Albinus  <michael.albinus@gmx.de>
144723
144724	Implement directory events
144725
144726	* lisp/filenotify.el (file-notify-handle-event)
144727	(file-notify-callback): Remove traces.
144728
144729	* src/kqueue.c: Include <sys/time.h>.
144730	(kqueue_generate_event, kqueue_compare_dir_list): New functions.
144731	(kqueue_callback): Use them.  Call kevent() with a zero timeout.
144732	(Fkqueue_add_watch): Adapt docstring.  Support directory events.
144733	Compute initial directory listing.  Close file descriptor in case
144734	of errors.
144735	(syms_of_kqueue): Declare Qcreate.
144736
1447372015-11-14  Eli Zaretskii  <eliz@gnu.org>
144738
144739	Increment Emacs version on master branch
144740
144741	* lisp/cus-edit.el (customize-changed-options-previous-release):
144742	Increase previous version to 24.5.
144743
144744	* configure.ac:
144745	* msdos/sed2v2.inp: Bump version to 25.1.50.
144746
1447472015-11-13  Xue Fuqiao  <xfq.free@gmail.com>
144748
144749	Mention CONTRIBUTE in README
144750
144751	Mention CONTRIBUTE in README, since it was moved from etc/ to root.
144752	* etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
144753	* README: Mention CONTRIBUTE.
144754
1447552015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
144756
144757	Update verilog-mode.el to 2015-11-09-b121d60-vpo.
144758
144759	* lisp/progmodes/verilog-mode.el (verilog-auto, verilog-delete-auto)
144760	(verilog-modi-cache-results, verilog-save-buffer-state)
144761	(verilog-save-font-no-change-functions): When internally suppressing change
144762	functions, use `inhibit-modification-hooks' and call
144763	`after-change-functions' to more nicely work with user hooks.
144764	Reported by Stefan Monnier.
144765
144766	(verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
144767	Create `verilog-delete-auto-buffer' to avoid double-calling
144768	fontification hooks.
144769
144770	(verilog-restore-buffer-modified-p, verilog-auto)
144771	(verilog-save-buffer-state): Prefer restore-buffer-modified-p over
144772	set-buffer-modified-p. Reported by Stefan Monnier.
144773
144774	(verilog-diff-auto, verilog-diff-buffers-p)
144775	(verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
144776
144777	(verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
144778	AUTOINST with unpacked dimensional parameters, bug981. Reported by
144779	by Amol Nagapurkar.
144780
144781	(verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
144782	properties inside internal structures. No functional change
144783	intended.
144784
1447852015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
144786
144787	Build fixes for kqueue support.
144788
144789	* src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
144790	flag.
144791
144792	* configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
144793	kqueue on *BSD.
144794
1447952015-11-11  Michael Albinus  <michael.albinus@gmx.de>
144796
144797	Continue kqueue implementation
144798
144799	* lisp/filenotify.el (file-notify-handle-event)
144800	(file-notify-callback): Enable trace messages.
144801
144802	* src/kqueue.c: Include also <sys/types.h>.
144803	(kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
144804	(Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
144805	(syms_of_kqueue): Add them.
144806
1448072015-11-11  Michael Albinus  <michael.albinus@gmx.de>
144808
144809	Work on kqueue
144810
144811	* lisp/filenotify.el (file-notify--library)
144812	(file-notify-descriptors, file-notify-callback)
144813	(file-notify-add-watch, file-notify-rm-watch)
144814	(file-notify-valid-p): Add kqueue support.
144815
144816	* src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
144817
1448182015-11-11  Michael Albinus  <michael.albinus@gmx.de>
144819
144820	Add kqueue support
144821
144822	* configure.ac (--with-file-notification): Add kqueue.
144823	(top): Remove special test for "${HAVE_NS}" and
144824	${with_file_notification}, this is handled inside gfilenotify
144825	tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
144826	instead of library specific variables.
144827
144828	* src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
144829
144830	* src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
144831
144832	* src/kqueue.c: New file.
144833
144834	* src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
144835
144836This file records repository revisions from
144837commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
144838commit 216bd67a4f40a733cb139ace3af4616bc2702282 (inclusive).
144839See ChangeLog.2 for earlier changes.
144840
144841;; Local Variables:
144842;; coding: utf-8
144843;; End:
144844
144845  Copyright (C) 2015-2021 Free Software Foundation, Inc.
144846
144847  This file is part of GNU Emacs.
144848
144849  GNU Emacs is free software: you can redistribute it and/or modify
144850  it under the terms of the GNU General Public License as published by
144851  the Free Software Foundation, either version 3 of the License, or
144852  (at your option) any later version.
144853
144854  GNU Emacs is distributed in the hope that it will be useful,
144855  but WITHOUT ANY WARRANTY; without even the implied warranty of
144856  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
144857  GNU General Public License for more details.
144858
144859  You should have received a copy of the GNU General Public License
144860  along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.
144861