lp:~ubuntu-elisp/emacs/+git/master

Get this repository:
git clone https://git.launchpad.net/~ubuntu-elisp/emacs/+git/master

Import details

Import Status: Reviewed

This repository is an import of the Git repository at git://git.savannah.gnu.org/emacs.git.

The next import is scheduled to run .

Last successful import was .

Import started on juju-98ee42-prod-launchpad-codeimport-4 and finished taking 8 minutes — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-1 and finished taking 6 minutes — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-0 and finished taking 9 minutes — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-5 and finished taking 7 minutes — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-4 and finished taking 5 minutes — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-5 and finished taking 5 minutes — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-1 and finished taking 6 minutes — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-1 and finished taking 6 minutes — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-1 and finished taking 5 minutes — see the log
Import started on juju-98ee42-prod-launchpad-codeimport-5 and finished taking 6 minutes — see the log

Branches

Name Last Modified Last Commit
master 2024-04-25 17:39:56 UTC
* lisp/tab-line.el: Fix tab-line-buffers in window-persistent-parameters.

Author: Juri Linkov
Author Date: 2024-04-25 17:39:56 UTC

* lisp/tab-line.el: Fix tab-line-buffers in window-persistent-parameters.

Replace '(tab-line-buffers . writable)' with '(tab-line-buffers . t)'
in 'window-persistent-parameters' (bug#69993).

emacs-29 2024-04-25 15:59:25 UTC
Fix last change

Author: Eli Zaretskii
Author Date: 2024-04-25 15:59:25 UTC

Fix last change

* test/lisp/progmodes/csharp-mode-tests.el
(csharp-ts-mode-test-indentation): Move the test to here.
* test/lisp/progmodes/csharp-ts-mode-tests.el: Remove file.
* test/lisp/progmodes/csharp-ts-mode-resources/indent.erts: Move
to test/lisp/progmodes/csharp-mode-resources/indent-ts.erts.

scratch/igc 2024-04-25 13:44:37 UTC
; * src/igc.c: Don't unnecessarily us non-ASCII characters.

Author: Eli Zaretskii
Author Date: 2024-04-25 13:44:37 UTC

; * src/igc.c: Don't unnecessarily us non-ASCII characters.

scratch/interpreted-function 2024-04-18 19:28:36 UTC
Use a dedicated type to represent interpreted-function values

Author: Stefan Monnier
Author Date: 2024-03-11 20:12:26 UTC

Use a dedicated type to represent interpreted-function values

Change `function` so that when evaluating #'(lambda ...)
we return an object of type `interpreted-function` rather than
a list starting with one of `lambda` or `closure`.
The new type reuses the existing PVEC_CLOSURE (nee PVEC_COMPILED)
tag and tries to align the corresponding elements:

- the arglist, the docstring, and the interactive-form go in the
  same slots as for byte-code functions.
- the body of the function goes in the slot used for the bytecode string.
- the lexical context goes in the slot used for the constants of
  bytecoded functions.

The first point above means that `help-function-arglist`,
`documentation`, and `interactive-form`s don't need to
distinguish interpreted and bytecode functions any more.

Main benefits of the change:

- We can now reliably distinguish a list from a function value.
- `cl-defmethod` can dispatch on `interactive-function` and `closure`.
  Dispatch on `function` also works now for interpreted functions but still
  won't work for functions represented as lists or as symbols, of course.
- Function values are now self-evaluating. That was alrready the case
  when byte-compiled, but not when interpreted since
  (eval '(closure ...)) signals a void-function error.
  That also avoids false-positive warnings about "don't quote your lambdas"
  when doing things like `(mapcar ',func ...)`.

* src/eval.c (Fmake_interpreted_closure): New function.
(Ffunction): Use it and change calling convention of
`Vinternal_make_interpreted_closure_function`.
(FUNCTIONP, Fcommandp, eval_sub, funcall_general, funcall_lambda)
(Ffunc_arity, lambda_arity): Simplify.
(funcall_lambda): Adjust to new representation.
(syms_of_eval): `defsubr` the new function. Remove definition of `Qclosure`.

* lisp/emacs-lisp/cconv.el (cconv-make-interpreted-closure):
Change calling convention and use `make-interpreted-closure`.

* src/data.c (Fcl_type_of): Distinguish `byte-code-function`s from
`interpreted-function`s.
(Fclosurep, finterpreted_function_p): New functions.
(Fbyte_code_function_p): Don't be confused by `interpreted-function`s.
(Finteractive_form, Fcommand_modes): Simplify.
(syms_of_data): Define new type symbols and `defsubr` the two
new functions.

* lisp/emacs-lisp/cl-print.el (cl-print-object) <interpreted-function>:
New method.

* lisp/emacs-lisp/oclosure.el (oclosure): Refine the parent
to be `closure`.
(oclosure--fix-type, oclosure-type): Simplify.
(oclosure--copy, oclosure--get, oclosure--set): Adjust to
new representation.

* src/callint.c (Fcall_interactively): Adjust to new representation.

* src/lread.c (bytecode_from_rev_list):

* lisp/simple.el (function-documentation):
* lisp/help.el (help-function-arglist): Remove the old `closure` case
and adjust the byte-code case so it handles `interpreted-function`s.

* lisp/emacs-lisp/cl-preloaded.el (closure): New type.
(byte-code-function): Add it as a parent.
(interpreted-function): Adjust parent (the type itself was already
added earlier by accident).

* lisp/emacs-lisp/bytecomp.el (byte-compile--reify-function): Adjust to
new representation.
(byte-compile): Use `interpreted-function-p`.

* lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand): Adjust to
new representation.
(side-effect-free-fns): Add `interpreted-function-p` and `closurep`.

* src/profiler.c (trace_hash, ffunction_equal): Simplify.
* lisp/profiler.el (profiler-function-equal): Simplify.

* lisp/emacs-lisp/nadvice.el (advice--interactive-form-1):
Use `interpreted-function-p`; adjust to new representation; and take
advantage of the fact that function values are now self-evaluating.

* lisp/emacs-lisp/lisp-mode.el (closure):
Remove `lisp-indent-function` property.

* lisp/emacs-lisp/disass.el (disassemble-internal): Adjust to
new representation.
* lisp/emacs-lisp/edebug.el (edebug--strip-instrumentation):
Use `interpreted-function-p`.
* lisp/emacs-lisp/comp-common.el (comp-known-type-specifiers):
Add `closurep` and `interpreted-function-p`.

* test/lisp/help-fns-tests.el (help-fns-test-lisp-defun): Adjust to
more precise type info in `describe-function`.
* test/lisp/erc/resources/erc-d/erc-d-tests.el (erc-d--render-entries):
Use `interpreted-function-p`.
* test/lisp/emacs-lisp/macroexp-resources/vk.el (vk-f4, vk-f5):
Don't hardcode function values.

* doc/lispref/functions.texi (Anonymous Functions): Don't suggest that
function values are lists. Reword "self-quoting" to reflect the
fact that #' doesn't return the exact same object. Update examples
with the new shape of the return value.

* doc/lispref/variables.texi (Lexical Binding):
* doc/lispref/lists.texi (Rearrangement):
* doc/lispref/control.texi (Handling Errors): Update examples to reflect
new representation of function values.

feature/positioned-lambdas 2024-03-25 11:34:48 UTC
Merge branch 'master' into feature/positioned-lambdas

Author: Alan Mackenzie
Author Date: 2024-03-25 11:34:48 UTC

Merge branch 'master' into feature/positioned-lambdas

feature/type-hierarchy 2024-02-28 20:12:27 UTC
Run syncdoc-type-hierarchy.el to follow obarray type introduction

Author: Andrea Corallo
Author Date: 2024-02-28 19:48:49 UTC

Run syncdoc-type-hierarchy.el to follow obarray type introduction

* doc/lispref/type_hierarchy.jpg: Update.
* doc/lispref/type_hierarchy.txt: Likewise.

scratch/func-type-decls 2024-02-23 15:10:33 UTC
Clean-up now unnecessary 'comp-primitive-type-specifiers'

Author: Andrea Corallo
Author Date: 2024-02-23 15:05:19 UTC

Clean-up now unnecessary 'comp-primitive-type-specifiers'

feature/minibuffer-completion-enhancements 2024-01-21 07:25:59 UTC
; * doc/emacs/mini.texi (Completion Multi): Fix typo.

Author: Eshel Yaron
Author Date: 2024-01-21 07:25:08 UTC

; * doc/emacs/mini.texi (Completion Multi): Fix typo.

scratch/handler-bind-2 2024-01-02 15:33:12 UTC
Use new error representaiton in ERT

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2024-01-02 15:33:12 UTC

Use new error representaiton in ERT

* lisp/emacs-lisp/ert.el (ert--run-test-debugger): Use new error
representation.

scratch/no-ls-lisp-advice 2023-12-21 14:27:53 UTC
* test/lisp/ls-lisp-tests.el (ls-lisp-unload): Delete test

Author: Stefan Monnier
Author Date: 2023-12-21 14:27:53 UTC

* test/lisp/ls-lisp-tests.el (ls-lisp-unload): Delete test

We don't use such advice any more.

scratch/pkg 2023-12-20 10:14:51 UTC
Make some parameters &optional

Author: =?utf-8?q?Gerd_M=C3=B6llmann?=
Author Date: 2023-12-20 10:14:51 UTC

Make some parameters &optional

feature/jsonrpc-support-dap 2023-12-11 13:10:00 UTC
Jsonrpc: rework jsonrpc-convert-to-endpoint again

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2023-12-11 13:10:00 UTC

Jsonrpc: rework jsonrpc-convert-to-endpoint again

* lisp/jsonrpc.el (jsonrpc-convert-to-endpoint): Rework protocol,
rework default implementation, rework docstring.
(jsonrpc-convert-from-endpoint): Rework docstring.
(jsonrpc-connection-send): Call jsonrpc-convert-to-endpoint with
new protocol.

bugfix/shorthand-fixes 2023-11-30 14:00:06 UTC
Fix prefix discovery for files with read-symbol-shorthands (bug#67325)

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2023-11-30 13:32:50 UTC

Fix prefix discovery for files with read-symbol-shorthands (bug#67325)

In a previous commit, the local-variable read-symbol-shorthands is
already read into the temporary buffer used for the autoload parsing
aerobatics, so all we needed to do in 'l-g--compute-prefixes' is
use 'read' to give 'read-symbol-shorthands' a chance to kick in.

* lisp/emacs-lisp/loaddefs-gen.el
(loaddefs-generate--compute-prefixes):

feature/xref-find-extra 2023-11-27 15:17:13 UTC
Fix eglot-specific commands

Author: Dmitry Gutov
Author Date: 2023-11-27 15:17:13 UTC

Fix eglot-specific commands

* lisp/progmodes/eglot.el (eglot-find-declaration)
(eglot-find-implementation, eglot-find-typeDefinition):
Fix the last argument in xref-find-all-definitions calls.

feature/cl-lib-improvements 2023-11-21 01:18:45 UTC
(seq-contains-pred): Split off list-specialized impl into separate method

Author: Dmitry Gutov
Author Date: 2023-11-21 01:18:45 UTC

(seq-contains-pred): Split off list-specialized impl into separate method

* lisp/emacs-lisp/seq.el (seq-contains-pred): Split off
list-specialized impl into separate method. The result is a bit
slower (about 10%?), but better structured.

scratch/comp-run 2023-11-08 16:04:51 UTC
comp: Don't load.el comp when C-h f

Author: Andrea Corallo
Author Date: 2023-11-08 15:36:24 UTC

comp: Don't load.el comp when C-h f

* lisp/emacs-lisp/comp-common.el (comp-known-type-specifiers)
(comp-function-type-spec): Move here.

feature/completion-lazy-hilit 2023-11-04 23:55:55 UTC
Tweak completion-lazy-hilit feature

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2023-11-04 23:55:55 UTC

Tweak completion-lazy-hilit feature

* lisp/minibuffer.el (completion-lazy-hilit): Make it a defvar and
rework docstring.
(completion-lazy-hilit-fn): Rework docstring.

feature/named-lambdas 2023-10-28 09:14:54 UTC
New cl-print-object method for subrs.

Author: Alan Mackenzie
Author Date: 2023-10-28 09:14:54 UTC

New cl-print-object method for subrs.

This method also prints the defining symbol, when present.

* lisp/emacs-lisp/cl-print.el (cl-print-object/subr): New
method.

feature/elpa-package 2023-08-18 18:26:10 UTC
Prepare package-vc.el to be published on GNU ELPA

Author: Philip Kaludercic
Author Date: 2023-08-18 18:18:42 UTC

Prepare package-vc.el to be published on GNU ELPA

feature/android 2023-08-07 00:56:28 UTC
Disable building the feature/android branch

Author: Po Lu
Author Date: 2023-08-07 00:56:28 UTC

Disable building the feature/android branch

* configure.ac: Disable building Emacs from this branch.

* README: Mention that this branch is no longer receiving updates.

gnus/nnatom 2023-06-18 01:47:59 UTC
Add nnatom.el

Author: Eric Abrahamsen
Author Date: 2023-06-18 01:47:59 UTC

Add nnatom.el

Direct copy from https://git.sr.ht/~dsemy/nnatom, with updated
copyright header.

scratch/comp-static-data 2023-06-07 15:37:39 UTC
src/comp.c: Compile float_blocks as constants.

Author: Vibhav Pant
Author Date: 2023-06-07 15:37:39 UTC

src/comp.c: Compile float_blocks as constants.

* src/comp.c (push_float_block): Declare float_block globals as
consts.

(float_block_new_block): Bitcast const float_block to their
unqualified type, to avoid libgccjit type errors.

scratch/flymake-fancy-end-of-line 2023-04-12 23:53:43 UTC
Flymake: experimental fancy flymake-show-eol-overlays option

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2023-03-02 22:55:31 UTC

Flymake: experimental fancy flymake-show-eol-overlays option

Some editors have this. It's less obstrusive than I thought it would
be.

* lisp/progmodes/flymake.el (flymake--delete-overlay): New helper.
(flymake--highlight-line): New flymake-eol-face considered.
(flymake--clear-foreign-diags): Use flymake--delete-overlay.
(flymake--publish-diagnostics): Use flymake--delete-overlay.
(flymake-mode): Use flymake--delete-overlay.
(flymake-error-eol)
(flymake-warning-eol, flymake-note-eol): New faces.
(flymake-show-eol-overlays): New option.

feature/breadcrumb-mode 2023-04-07 23:40:12 UTC
Breadcrumb: first stab, very slow

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2023-04-07 23:40:12 UTC

Breadcrumb: first stab, very slow

* lisp/progmodes/breadcrumb.el: New file

scratch/alloc 2023-04-06 03:33:08 UTC
ChangeLog

Author: Po Lu
Author Date: 2023-04-06 03:33:08 UTC

ChangeLog

scratch/eldoc-eglot-rework 2023-03-23 13:48:57 UTC
Rework Eglot's progress indicators

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2023-03-23 13:13:16 UTC

Rework Eglot's progress indicators

Show progress indicator in Eglot's mode line by default.

* lisp/progmodes/eglot.el (eglot-report-progress): Work docstring.
(eglot--mode-line-format): Rework.
(eglot-handle-notification $/progress): Rework.

scratch/write-eglot-manual-for-advanced-server-config 2023-03-08 12:32:02 UTC
New structure for Eglot manual

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2023-03-08 12:32:02 UTC

New structure for Eglot manual

feature/tramp-thread-safe 2023-03-04 09:19:38 UTC
; Whitespace cleanup

Author: Michael Albinus
Author Date: 2023-03-04 09:19:38 UTC

; Whitespace cleanup

fix/bug-60974 2023-03-01 09:34:34 UTC
Don't modify interactive closures destructively (Bug#60974).

Author: Vibhav Pant
Author Date: 2023-03-01 09:34:34 UTC

Don't modify interactive closures destructively (Bug#60974).

* lisp/emacs-lisp/cconv.el (cconv-convert): When form is an
interactive lambda form, don't destructively modify it, as it might be
a constant literal. Instead, create a new list with the relevant
place(s) changed.

* test/lisp/emacs-lisp/cconv-tests.el
(cconv-tests-interactive-form-modify-bug60974): New test.

emacs-28 2023-02-24 18:42:27 UTC
Adapt Tramp versions. Do not merge

Author: Michael Albinus
Author Date: 2023-02-24 18:42:27 UTC

Adapt Tramp versions. Do not merge

* doc/misc/trampver.texi:
* lisp/net/trampver.el (tramp-version)
(customize-package-emacs-version-alist): Adapt Tramp versions.

feature/inhibit-native-comp-cleanup 2023-02-14 11:27:58 UTC
* Generate trampolines in a temporary directory if no other option is viable

Author: Andrea Corallo
Author Date: 2023-02-14 10:21:45 UTC

* Generate trampolines in a temporary directory if no other option is viable

* lisp/emacs-lisp/comp.el (comp--trampoline-abs-filename): Use
temporary file if no other option is viable.

scratch/native-timers-blocked 2023-01-10 15:18:35 UTC
Block atimers while loading native code

Author: Andrea Corallo
Author Date: 2023-01-10 15:15:58 UTC

Block atimers while loading native code

feature/asan-gc-poisoning 2022-12-18 14:55:55 UTC
Avoid build failure when building without -fsanitize=address.

Author: Vibhav Pant
Author Date: 2022-12-18 14:55:55 UTC

Avoid build failure when building without -fsanitize=address.

* src/lisp.h (UNALIGNED_LOAD_SIZE): Only use the sanitizer version of
the macro when USE_SANITIZER_UNALIGNED_LOAD is defined, avoiding link
errors when building without -fsanitize=address.

feature/use-package 2022-12-08 17:00:19 UTC
* etc/USE-PACKAGE-NEWS: Delete file.

Author: Stefan Kangas
Author Date: 2022-12-08 17:00:19 UTC

* etc/USE-PACKAGE-NEWS: Delete file.

Ref: https://lists.gnu.org/r/emacs-devel/2022-11/msg01535.html

feature/external-completion 2022-12-07 11:03:16 UTC
Use new external-completion.el in Eglot

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2022-12-07 10:59:30 UTC

Use new external-completion.el in Eglot

This refactor simplifies Eglot's source code.

* lisp/progmodes/eglot.el:
(Package-Requires): Require external-completion.
(external-completion): Require it.
(xref-backend-identifier-completion-table): Use external-completion-table.
(completion-category-overrides): No longer set it.
("Backend Completion"): Delete section.

scratch/backend-completion 2022-12-06 04:50:55 UTC
external-completion.el: Minor changes

Author: Stefan Monnier
Author Date: 2022-12-06 04:50:55 UTC

external-completion.el: Minor changes

* lisp/external-completion.el (external-completion-table): Tweak docstring.
Explicitly handle `lambda`.

* lisp/progmodes/eglot.el (xref-backend-identifier-completion-table):
Rename category to `eglot-xref`.

feature/tree-sitter 2022-11-22 08:56:28 UTC
Separate tree-sitter and non-tree-sitter variant of sh-mode

Author: Yuan Fu
Author Date: 2022-11-22 08:49:04 UTC

Separate tree-sitter and non-tree-sitter variant of sh-mode

Now there are three modes, sh-base-mode, sh-mode, bash-ts-mode.

The change I made: change sh-mode to sh-base-mode, remove docstring.
Below the new sh-base-mode, create a new definition for sh-mode, paste
the dostring, add setup for font-lock-defaults. Below sh-mode, add
bash-ts-mode.

* lisp/progmodes/sh-script.el (sh-mode): Moves all setup into
sh-base-mode, except for the setup for font-lock-defaults and the
docstring.
(sh-base-mode): New mode.
(bash-ts-mode): New mode.

feature/package+vc 2022-11-04 17:54:17 UTC
* lisp/emacs-lisp/package-vc.el: Expand commentary

Author: Philip Kaludercic
Author Date: 2022-11-04 17:53:02 UTC

* lisp/emacs-lisp/package-vc.el: Expand commentary

feature/eglot2emacs 2022-10-20 13:47:26 UTC
; * doc/misc/eglot.texi: Undo recent "fixes" to the Eglot manual.

Author: Eli Zaretskii
Author Date: 2022-10-20 13:47:26 UTC

; * doc/misc/eglot.texi: Undo recent "fixes" to the Eglot manual.

feature/eglot-texi-manual 2022-10-20 10:42:25 UTC
Revert "eglot.texi: Make example more realistic"

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2022-10-20 10:42:25 UTC

Revert "eglot.texi: Make example more realistic"

This quest for realism ignores the fact that a previous example for a
hypothetical language Foo and a language server "fools" already
exists. It also undermines the intended generality of the
instructions.

This reverts commit 16986a9cc42ef4de580456f4acc5feba682ac8b1.

feature/comp-use-ctors 2022-10-14 11:57:12 UTC
src/comp.c: Use constructor expressions when possible.

Author: Vibhav Pant
Author Date: 2022-10-14 11:51:13 UTC

src/comp.c: Use constructor expressions when possible.

* src/comp.c:
  - Add declarations for creating constructor/initializer expressions
  when supported.
  - (emit_coerce): Use a struct constructor expression to create a
  Lisp_Object value instead of creating a new local variable.
  - emit_limple_call_ref: Emit a single constructor expression for
  initializing tmp_arr.

feature/jit-improved-type-punning 2022-10-04 19:31:50 UTC
Add comment explaining gcc_jit_context_new_bitcast usage.

Author: Vibhav Pant
Author Date: 2022-10-04 19:31:50 UTC

Add comment explaining gcc_jit_context_new_bitcast usage.

scratch/icons 2022-08-24 06:21:31 UTC
Merge skicons.el with icons.el

Author: Stefan Kangas
Author Date: 2022-08-24 06:05:18 UTC

Merge skicons.el with icons.el

scratch/pure-overflow-warn 2022-08-18 15:11:59 UTC
* src/alloc.c (pure_alloc): Warn for pure space overflow

Author: Andrea Corallo
Author Date: 2022-08-18 14:41:26 UTC

* src/alloc.c (pure_alloc): Warn for pure space overflow

scratch/font_lock_large_files 2022-08-14 23:22:59 UTC
Merge branch 'master' into scratch/font_lock_large_files

Author: Dmitry Gutov
Author Date: 2022-08-14 23:22:59 UTC

Merge branch 'master' into scratch/font_lock_large_files

scratch/bulk-tracing 2022-08-12 12:36:49 UTC
* lisp/emacs-lisp/trace.el: Correct outdated documentation

Author: phil-s
Author Date: 2022-08-12 12:29:22 UTC

* lisp/emacs-lisp/trace.el: Correct outdated documentation

Experimenting with `goto-char' and `re-search-backwards' indicates
that this limitation no longer applies. The rewrite using nadvice in
commit 8b62d7427e12bbf07ab3454cc061a6b43ded56dd might have eliminated
this issue.

emacs-25 2022-07-15 12:03:06 UTC
Port alternate signal stack to upcoming glibc 2.34

Author: Paul Eggert
Author Date: 2021-03-09 19:22:59 UTC

Port alternate signal stack to upcoming glibc 2.34

* src/sysdep.c (sigsegv_stack): Increase size to 64 KiB and align
it to max_align_t. This copies from Gnulib’s c-stack.c, and works
around a portability bug in draft glibc 2.34, which no longer
defines SIGSTKSZ when _GNU_SOURCE is defined.

(cherry picked from commit f97e07ea807cc6d38774a3888a15091b20645ac6)

emacs-26 2022-07-15 11:56:20 UTC
Port alternate signal stack to upcoming glibc 2.34

Author: Paul Eggert
Author Date: 2021-03-09 19:22:59 UTC

Port alternate signal stack to upcoming glibc 2.34

* src/sysdep.c (sigsegv_stack): Increase size to 64 KiB and align
it to max_align_t. This copies from Gnulib’s c-stack.c, and works
around a portability bug in draft glibc 2.34, which no longer
defines SIGSTKSZ when _GNU_SOURCE is defined.

(cherry picked from commit f97e07ea807cc6d38774a3888a15091b20645ac6)

emacs-27 2022-07-15 11:37:40 UTC
Port alternate signal stack to upcoming glibc 2.34

Author: Paul Eggert
Author Date: 2021-03-09 19:22:59 UTC

Port alternate signal stack to upcoming glibc 2.34

* src/sysdep.c (sigsegv_stack): Increase size to 64 KiB and align
it to max_align_t. This copies from Gnulib’s c-stack.c, and works
around a portability bug in draft glibc 2.34, which no longer
defines SIGSTKSZ when _GNU_SOURCE is defined.

(cherry picked from commit f97e07ea807cc6d38774a3888a15091b20645ac6)

scratch/etags-regen 2022-07-11 11:17:45 UTC
Merge branch 'master' into scratch/etags-regen

Author: Dmitry Gutov
Author Date: 2022-07-11 11:17:45 UTC

Merge branch 'master' into scratch/etags-regen

scratch/bug#48029 2022-07-08 14:03:09 UTC
Remove uneffective test

Author: Andrea Corallo
Author Date: 2022-07-08 13:54:20 UTC

Remove uneffective test

* test/src/comp-tests.el (45603-1): Remove test.
* test/src/comp-resources/comp-test-45603.el: Delete.

scratch/no-purespace-old 2022-07-01 22:59:35 UTC
Remove purespace and ancillary code

Author: Pip Cet
Author Date: 2021-05-16 13:44:26 UTC

Remove purespace and ancillary code

Now that purespace is not used any more, remove it, along with the functions
used to allocate into it. Use equivalent functions allocating into the
normal heap.
Remove calls to PURE_P since they always return false.

* src/puresize.h: Delete file.

* src/alloc.c: Don't include `puresize.h` any more.
(pure, purebeg, pure_size, pure_bytes_used_before_overflow)
(pure_bytes_used_lisp, pure_bytes_used_non_lisp, symbol_block_pinned)
(pinned_objects): Delete vars.
(PUREBEG): Delete macro.
(pointer_align): Move after definition of USE_ALIGNED_ALLOC and only
define it if USE_ALIGNED_ALLOC is not used.
(cons_listn): Remove `cons` arg, hardcode `Fcons` instead.
(pure_listn, pure_alloc, check_pure_size, make_pure_string)
(make_pure_c_string, pure_cons): Delete functions.
(init_symbol): Don't set `pinned` any more.
(mark_pinned_objects, mark_pinned_symbols): Delete functions.
(garbage_collect): Don't call them any more.
(init_alloc_once_for_pdumper): Don't initialize purebeg and pure_size.

* src/print.c (print_object) <PVEC_HASH_TABLE>: Don't print `purecopy`.

* src/pdumper.c (dump_symbol, dump_hash_table): Update sig hash.
(dump_symbol): Don't dump `pinned`.
(dump_hash_table): Don't dump `purecopy`.

* src/lread.c (readevalloop, read_internal_start): Adjust call to
`make_hash_table`.
(read0, intern_c_string_1, define_symbol, Fintern): Don't purify
symbol names.
(string): Avoid `pure_cons` and `build_pure_c_string`.

* src/lisp.h (struct Lisp_Symbol): Remove `pinned` field.
(struct Lisp_Hash_Table): Remove `purecopy` field.
(check_pure_size, pure_listn, pure_list, make_pure_string)
(make_pure_c_string, pure_cons): Remove prototypes.
(build_pure_c_string): Delete function.

* src/keymap.c: Don't include `puresize.h` any more.
(Fmake_sparse_keymap): Don't purecopy the menu name.
(Fset_keymap_parent, store_in_keymap): Don't `CHECK_IMPURE` any more.
(syms_of_keymap): Avoid `pure_cons` and `build_pure_c_string`.

* src/intervals.c: Don't include `puresize.h` any more.
(create_root_interval): Don't `CHECK_IMPURE` any more.

* src/fns.c: Don't include `puresize.h` any more.
(Ffillarray, Fclear_string): Don't `CHECK_IMPURE` any more.
(make_hash_table): Remove `purecopy` arg.
(Fmake_hash_table): Remove `:purecopy` keyword argument.

* src/eval.c (Finternal__define_uninitialized_variable): Don't purecopy
the doc any more.
(Fdefconst_1): Don't purecopy the initvalue any more.
(Fautoload): Get rid of hack needed when we used hash-consing.
(syms_of_eval): Avoid `build_pure_c_string`.

* src/emacs.c: Don't include `puresize.h` any more.
(Fdump_emacs): Don't `check_pure_size`.

* src/doc.c (Fsnarf_documentation): Don't purecopy the build files.

* src/deps.mk: Remove puresize.h.

* src/data.c: Don't include `puresize.h` any more.
(pure_write_error): Delete function.
(Fsetcar, Fsetcdr): Don't `CHECK_IMPURE` any more.
(Fdefalias): Don't purecopy the definition any more.
(Faset): Don't `CHECK_IMPURE` any more.
(syms_of_data): Avoid `pure_cons` and `build_pure_c_string`.

* src/conf_post.h (SYSTEM_PURESIZE_EXTRA): Delete macro.

* src/comp.c: Don't include `puresize.h` any more.
(helper_link_table): Remove `pure_write_error`.
(define_CHECK_IMPURE): Delete function.
(maybe_defer_native_compilation, syms_of_comp):
Avoid `build_pure_c_string`.

* src/category.c (hash_get_category_set): Update call to `make_hash_table`.
(Fdefine_category): Don't purecopy the docstring any more.

* src/bytecode.c: Don't include `puresize.h` any more.
(Bsetcar, Bsetcdr): Don't `CHECK_IMPURE` any more.

* doc/lispref/internals.texi (Pure Storage): Delete section.
(Garbage Collection): Remove note about purespace overflow.

* src/xfaces.c (syms_of_xfaces):
* src/emacs-module.c (syms_of_module):
* src/frame.c (make_frame, make_initial_frame):
* src/fileio.c (syms_of_fileio):
* src/image.c (xpm_make_color_table_h):
* src/process.c (ADD_SUBFEATURE, syms_of_process):
* src/profiler.c (make_log):
* src/json.c (define_error):
* src/xterm.c (syms_of_xterm):
* src/xfns.c (syms_of_xfns):
* src/xdisp.c (syms_of_xdisp):
* src/w32fns.c (syms_of_w32fns):
* src/syntax.c (syms_of_syntax):
* src/sqlite.c (syms_of_sqlite):
* src/search.c (syms_of_search):
* src/keyboard.c (syms_of_keyboard):
* src/fontset.c (syms_of_fontset):
* src/dbusbind.c (syms_of_dbusbind):
* src/coding.c (syms_of_coding):
* src/callint.c (syms_of_callint):
* src/buffer.c (init_buffer_once, syms_of_buffer):
Avoid `build_pure_c_string`, `Fpurecopy`, `pure_cons`, and `pure_list`,
and adjust calls to `make_hash_table`.

scratch/no-purespace 2022-07-01 22:59:35 UTC
Remove purespace and ancillary code

Author: Pip Cet
Author Date: 2021-05-16 13:44:26 UTC

Remove purespace and ancillary code

Now that purespace is not used any more, remove it, along with the functions
used to allocate into it. Use equivalent functions allocating into the
normal heap.
Remove calls to PURE_P since they always return false.

* src/puresize.h: Delete file.

* src/alloc.c: Don't include `puresize.h` any more.
(pure, purebeg, pure_size, pure_bytes_used_before_overflow)
(pure_bytes_used_lisp, pure_bytes_used_non_lisp, symbol_block_pinned)
(pinned_objects): Delete vars.
(PUREBEG): Delete macro.
(pointer_align): Move after definition of USE_ALIGNED_ALLOC and only
define it if USE_ALIGNED_ALLOC is not used.
(cons_listn): Remove `cons` arg, hardcode `Fcons` instead.
(pure_listn, pure_alloc, check_pure_size, make_pure_string)
(make_pure_c_string, pure_cons): Delete functions.
(init_symbol): Don't set `pinned` any more.
(mark_pinned_objects, mark_pinned_symbols): Delete functions.
(garbage_collect): Don't call them any more.
(init_alloc_once_for_pdumper): Don't initialize purebeg and pure_size.

* src/print.c (print_object) <PVEC_HASH_TABLE>: Don't print `purecopy`.

* src/pdumper.c (dump_symbol, dump_hash_table): Update sig hash.
(dump_symbol): Don't dump `pinned`.
(dump_hash_table): Don't dump `purecopy`.

* src/lread.c (readevalloop, read_internal_start): Adjust call to
`make_hash_table`.
(read0, intern_c_string_1, define_symbol, Fintern): Don't purify
symbol names.
(string): Avoid `pure_cons` and `build_pure_c_string`.

* src/lisp.h (struct Lisp_Symbol): Remove `pinned` field.
(struct Lisp_Hash_Table): Remove `purecopy` field.
(check_pure_size, pure_listn, pure_list, make_pure_string)
(make_pure_c_string, pure_cons): Remove prototypes.
(build_pure_c_string): Delete function.

* src/keymap.c: Don't include `puresize.h` any more.
(Fmake_sparse_keymap): Don't purecopy the menu name.
(Fset_keymap_parent, store_in_keymap): Don't `CHECK_IMPURE` any more.
(syms_of_keymap): Avoid `pure_cons` and `build_pure_c_string`.

* src/intervals.c: Don't include `puresize.h` any more.
(create_root_interval): Don't `CHECK_IMPURE` any more.

* src/fns.c: Don't include `puresize.h` any more.
(Ffillarray, Fclear_string): Don't `CHECK_IMPURE` any more.
(make_hash_table): Remove `purecopy` arg.
(Fmake_hash_table): Remove `:purecopy` keyword argument.

* src/eval.c (Finternal__define_uninitialized_variable): Don't purecopy
the doc any more.
(Fdefconst_1): Don't purecopy the initvalue any more.
(Fautoload): Get rid of hack needed when we used hash-consing.
(syms_of_eval): Avoid `build_pure_c_string`.

* src/emacs.c: Don't include `puresize.h` any more.
(Fdump_emacs): Don't `check_pure_size`.

* src/doc.c (Fsnarf_documentation): Don't purecopy the build files.

* src/deps.mk: Remove puresize.h.

* src/data.c: Don't include `puresize.h` any more.
(pure_write_error): Delete function.
(Fsetcar, Fsetcdr): Don't `CHECK_IMPURE` any more.
(Fdefalias): Don't purecopy the definition any more.
(Faset): Don't `CHECK_IMPURE` any more.
(syms_of_data): Avoid `pure_cons` and `build_pure_c_string`.

* src/conf_post.h (SYSTEM_PURESIZE_EXTRA): Delete macro.

* src/comp.c: Don't include `puresize.h` any more.
(helper_link_table): Remove `pure_write_error`.
(define_CHECK_IMPURE): Delete function.
(maybe_defer_native_compilation, syms_of_comp):
Avoid `build_pure_c_string`.

* src/category.c (hash_get_category_set): Update call to `make_hash_table`.
(Fdefine_category): Don't purecopy the docstring any more.

* src/bytecode.c: Don't include `puresize.h` any more.
(Bsetcar, Bsetcdr): Don't `CHECK_IMPURE` any more.

* doc/lispref/internals.texi (Pure Storage): Delete section.
(Garbage Collection): Remove note about purespace overflow.

* src/xfaces.c (syms_of_xfaces):
* src/emacs-module.c (syms_of_module):
* src/frame.c (make_frame, make_initial_frame):
* src/fileio.c (syms_of_fileio):
* src/image.c (xpm_make_color_table_h):
* src/process.c (ADD_SUBFEATURE, syms_of_process):
* src/profiler.c (make_log):
* src/json.c (define_error):
* src/xterm.c (syms_of_xterm):
* src/xfns.c (syms_of_xfns):
* src/xdisp.c (syms_of_xdisp):
* src/w32fns.c (syms_of_w32fns):
* src/syntax.c (syms_of_syntax):
* src/sqlite.c (syms_of_sqlite):
* src/search.c (syms_of_search):
* src/keyboard.c (syms_of_keyboard):
* src/fontset.c (syms_of_fontset):
* src/dbusbind.c (syms_of_dbusbind):
* src/coding.c (syms_of_coding):
* src/callint.c (syms_of_callint):
* src/buffer.c (init_buffer_once, syms_of_buffer):
Avoid `build_pure_c_string`, `Fpurecopy`, `pure_cons`, and `pure_list`,
and adjust calls to `make_hash_table`.

feature/more-fds 2022-05-05 17:30:15 UTC
Allow the use of poll instead of select

Author: Robert Pluim
Author Date: 2022-05-04 15:09:07 UTC

Allow the use of poll instead of select

Increase the maximum number of open files allowed to
10 x FD_SETSIZE (which is what poll is limited to on macOS).

* configure.ac (--with-poll): New option, default off, for requesting
'poll' support. Check for "sys/poll.h" header.
(USE_POLL): New variable.
(EMACS_CONFIG_FEATURES): Add USE_POLL.

* etc/NEWS: Document --with-poll.

* src/sysselect.h: New define EMACS_MAX_FD, defaulting to FD_SETSIZE,
for the maximum number of file descriptors Emacs can use.
* src/process.c:
* src/sysdep.c:
* src/nsterm.m (ns_select_1):
(applicationDidFinishLaunching): Use EMACS_MAX_FD instead of
FD_SETSIZE everywhere.

* src/syspoll.h (SYSPOLL_H): New file for definitions related to use
of 'poll'.

* src/sysselect.h [USE_POLL]: Set EMACS_MAX_FD to 10 x FD_SETSIZE.
(emacs_fd_set) [USE_POLL]: New type, used for bitsets of file
descriptors.
(FD_CLR, FD_ISSET, FD_SET, FD_ZERO) [USE_POLL]: Macros for
manipulating bitsets.
[USE_POLL]: Include "syspoll.h".

* src/process.c (fd_sets_to_pollfds) [USE_POLL]: New function.
Converts two 'emacs_fd_set' to an array of 'struct pollfd'
(pollfds_to_fd_sets) [USE_POLL]: New function.
Converts from an array of 'struct pollfd' to two 'emacs_fd_set'.
(timespec_to_timeout) [USE_POLL]: New function, converts a 'struct
timespec' to a timeout in milliseconds.
(emacs_pselect) [USE_POLL]: Replacement for 'pselect' that calls
'poll' and does the appropriate conversions. Does not support
sigmask.

scratch/timsort 2022-03-18 13:26:54 UTC
; Fix typo

Author: Andrew G Cohen
Author Date: 2022-03-18 13:26:54 UTC

; Fix typo

* test/src/fns-tests.el (fns-tests-sort): Compare with independently
sorted list.

scratch/correct-warning-pos 2022-01-22 11:02:50 UTC
Merge branch 'master' into scratch/correct-warning-pos

Author: Alan Mackenzie
Author Date: 2022-01-22 11:02:50 UTC

Merge branch 'master' into scratch/correct-warning-pos

scratch/fcr 2022-01-01 21:41:53 UTC
Merge remote-tracking branch 'origin/scratch/oclosure' into fcr

Author: Stefan Monnier
Author Date: 2022-01-01 21:41:53 UTC

Merge remote-tracking branch 'origin/scratch/oclosure' into fcr

feature/pgtk 2021-12-18 13:54:03 UTC
Disable building the feature/pgtk branch

Author: Po Lu
Author Date: 2021-12-18 13:54:03 UTC

Disable building the feature/pgtk branch

* configure.ac: Add notice that feature/pgtk has been
integrated into master.

scratch/bug-50959-fix 2021-10-06 10:42:48 UTC
Complete shorthands to longhands for symbol-completing tables

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2021-10-06 10:30:29 UTC

Complete shorthands to longhands for symbol-completing tables

Shorthands aren't symbols, they're text forms that 'read' into
symbols. As such, shorthands aren't candidates in these tables of
symbols. But in some situations, if no other candidates match the
pattern, we can e.g. complete "x-foo" to "xavier-foo" if the shorthand

  (("x-" . "xavier-"))

is set up in the buffer of origin.

bug#50959

* lisp/help-fns.el (help--symbol-completion-table): Report
`symbol-help' category.

* lisp/minibuffer.el (completion-styles-alist): New 'shorthand'
style.
(completion-category-defaults): Link 'symbol-help' category with
'shorthand' style.
(minibuffer--original-buffer): New variable.
(completing-read-default): Setup minibuffer--original-buffer.
(completion-shorthand-try-completion)
(completion-shorthand-all-completions): New helpers.

feature/shorthand-namespacing 2021-09-22 22:53:15 UTC
Add mechanism for escaping shorthand substitution

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2021-09-22 22:53:15 UTC

Add mechanism for escaping shorthand substitution

* src/lread.c (read1): Add skip_shorthand variable. Add a '#\'
case. Sometimes call oblookup instead of
oblookup_considering_shorthand.

scratch/electric-pair-cleanup-and-49518-bugfix 2021-09-20 10:57:07 UTC
Improve Python triple-quote pairing tests for electric-pair-mode

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2021-09-20 10:55:41 UTC

Improve Python triple-quote pairing tests for electric-pair-mode

These tests were once passing incorrectly, i.e. the auto-pairing
functionality they purport to guard wasn't really working. Added a
new test in hopes that regressions can be spotted in the future for
the now-working functionality of Python triple-quote auto-pairing via
electric-pair-mode.

bug#49518

* test/lisp/progmodes/python-tests.el
(python-triple-double-quote-pairing): Rename from
python-triple-quote-pairing.
(python-triple-single-quote-pairing): New test.

scratch/bug-50244 2021-09-13 18:03:38 UTC
Re-organize and rewrite parts of the Flymake manual

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2021-09-12 21:16:35 UTC

Re-organize and rewrite parts of the Flymake manual

bug#50244

* doc/misc/flymake.texi (Starting Flymake): New section.
(Finding diagnostics): New section, now contains info previously in
"Listing diagnostics"
(Mode line status): Renamed from "Mode-line syntax check status"
(Troubleshooting): Renamed from "Backend exceptions".
(Flymake error types): Tweak phrasing.

scratch/reworked-icomplete-in-buffer-mode 2021-08-24 22:34:41 UTC
Adjust the name of some functions

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2021-08-24 22:34:41 UTC

Adjust the name of some functions

scratch/icomplete-lazy-highlight-no-string-props 2021-08-16 18:11:32 UTC
hmmm

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2021-08-16 17:34:47 UTC

hmmm

* lisp/minibuffer.el (completion--get-lazy-hilit-re):
(completion--flex-get-completion-score): New functions.
(completion--flex-adjust-metadata): Use
completion--flex-get-completion-score.
(completion-lazy-hilit): Use completion--get-lazy-hilit-re.

scratch/icomplete-lazy-highlight-attempt-2 2021-08-15 17:25:04 UTC
Adjust comments and docstrings for completion-lazy-hilit feature

Author: =?utf-8?b?Sm/Do28gVMOhdm9yYQ==?=
Author Date: 2021-08-15 17:25:04 UTC

Adjust comments and docstrings for completion-lazy-hilit feature

* lisp/minibuffer.el (completion-lazy-hilit): Adjust docstring.
(completion-pcm--hilit-commonality): Adjust comment.

scratch/icomplete-vertical-mode-improvements 2021-05-30 16:30:15 UTC
Add annotation capability to icomplete-vertical-mode

Author: João Távora
Author Date: 2021-05-25 21:40:40 UTC

Add annotation capability to icomplete-vertical-mode

Co-authored-by Daniel Mendler <mail@daniel-mendler.de>

* lisp/icomplete.el (icomplete--affixate): New helper.
(icomplete--render-vertical): Use it. Rework.
(icomplete-completions): Pass md to icomplete--render-vertical.

scratch/annotation-function-improvements 2021-05-25 23:47:22 UTC
Overhaul annotation-function to match affixation-function

Author: João Távora
Author Date: 2021-05-24 15:31:39 UTC

Overhaul annotation-function to match affixation-function

* doc/lispref/minibuf.texi (Programmed Completion): Rework
annotation-function and affixation-function.

* lisp/help-fns.el (help--symbol-completion-table-annotation): Rename
from help--symbol-completion-table-affixation.
(help--symbol-completion-table): Use
help--symbol-completion-table-annotation.

* lisp/minibuffer.el (minibuffer-completion-help): Interpret
annotation-function with more sophistication.

* lisp/simple.el (read-extended-command): Use
read-extended-command--annotation
(read-extended-command--annotation): Rename from
read-extended-command--affixation

scratch/ns/emacs27-drawing 2021-05-22 09:31:35 UTC
Fix "flickering" on NS

Author: Alan Third
Author Date: 2021-05-22 09:26:58 UTC

Fix "flickering" on NS

* src/nsterm.m ([EmacsView initFrameFromEmacs:]): Add some settings
that allow the frame to redraw properly while resizing.
([EmacsView viewWillDraw]): Call redisplay if we think expose_frame is
going to refuse to draw anything.
([EmacsView drawRect:]): There's no point trying to draw anything if
the frame is still garbaged.

scratch/icomplete-vertical-mode-gregory-and-joao 2021-04-10 17:18:33 UTC
Add new icomplete-vertical-mode

Author: Gregory Heytings
Author Date: 2021-04-10 10:47:45 UTC

Add new icomplete-vertical-mode

Co-authored-by: João Távora <joaotavora@gmail.com>

* lisp/icomplete.el (icomplete-completions): Consider icomplete-vertical-mode.
(icomplete-vertical-mode-minibuffer-map): New map.
(icomplete--vertical-minibuffer-setup): New helper.
(icomplete-vertical-mode): New minor mode.

* doc/emacs/buffers.texi (Icomplete): Mention icomplete-vertical-mode.

* etc/NEWS: Mention icomplete-vertical-mode

feature/internal-msys 2021-01-20 18:19:15 UTC
Enable automatic co-install of msys

Author: Phillip Lord
Author Date: 2021-01-18 09:37:48 UTC

Enable automatic co-install of msys

girzel/gnus-headers 2021-01-17 02:37:57 UTC
Fixes to gnus-agent-retrieve-headers

Author: Eric Abrahamsen
Author Date: 2021-01-17 02:37:57 UTC

Fixes to gnus-agent-retrieve-headers

* lisp/gnus/gnus-agent.el (gnus-agent-retrieve-headers): The
sort->append call was altering fetched-headers in-place. Also, we
should explicitly sort-numeric-fields in this
function. gnus-agent-check-overview-buffer will do this, but treats it
as a failure mode and will make a backup of the overview file.

feature/dll-only-windows 2021-01-09 19:25:51 UTC
Update dependency capture

Author: Phillip Lord
Author Date: 2021-01-07 22:06:53 UTC

Update dependency capture

* admin/nt/dist-build/build-dep-zips.py: Use ntldd to directly
  determine DLL dependencies

scratch/seccomp 2020-12-29 13:37:51 UTC
Add a helper binary to create a basic Secure Computing filter.

Author: Philipp Stephani
Author Date: 2020-12-17 10:20:55 UTC

Add a helper binary to create a basic Secure Computing filter.

The binary uses the 'seccomp' helper library. The library isn't
needed to load the generated Secure Computing filter.

* configure.ac: Check for 'seccomp' header and library.

* lib-src/seccomp-filter.c: New helper binary to generate a generic
Secure Computing filter for GNU/Linux.

* lib-src/Makefile.in (DONT_INSTALL): Add 'seccomp-filter' helper
binary if possible.
(all): Add Secure Computing filter file if possible.
(seccomp-filter$(EXEEXT)): Compile helper binary.
(seccomp-filter.bpf seccomp-filter.pfc): Generate filter files.

* test/src/emacs-tests.el (emacs-tests/seccomp/allows-stdout)
(emacs-tests/seccomp/forbids-subprocess): New unit tests.

* test/Makefile.in (src/emacs-tests.log): Add dependency on the helper
binary.

scratch/bug-42149-funny-pcm-completion-scores 2020-12-29 13:31:46 UTC
Fix "first-differente" face in completion-pcm--hilit-commonality

Author: João Távora
Author Date: 2020-12-29 13:31:46 UTC

Fix "first-differente" face in completion-pcm--hilit-commonality

Fixes: bug#42149

Depending on the position of point in the completion and the
completion style being used, it may or may not make sense for this
face to appear immediately after point. This patch assumes that it
should appear in the first non-matched character after point, which
may likely be the next one to type to disambiguate between two or more
completions.

Suggested by Dario Gjorgjevski <dario.gjorgjevski@gmail.com>.

* lisp/minibuffer.el (completion-pcm--hilit-commonality): Fix
occasional misplacement of completions-first-differente.

scratch/posix-spawn 2020-12-26 11:20:51 UTC
Revert "Revert "Use posix_spawn if possible.""

Author: Philipp Stephani
Author Date: 2020-12-26 11:20:51 UTC

Revert "Revert "Use posix_spawn if possible.""

This reverts commit e387371497d313f05b94e3bf42fe6685184605d1.

feature/integration-of-dictionary-el 2020-12-14 10:45:24 UTC
* lisp/net/dictionary.el (dictionary-pre-buffer): Unify casing

Author: Torsten Hilbrich
Author Date: 2020-12-14 10:44:12 UTC

* lisp/net/dictionary.el (dictionary-pre-buffer): Unify casing

Let all the buttons begins with an upper-case character and the rest of
the text is lower-case.

feature/etags_update_v2 2020-12-08 22:16:18 UTC
Only update when file is newer than TAGS and .etags

Author: Dmitry Gutov
Author Date: 2020-12-08 22:09:32 UTC

Only update when file is newer than TAGS and .etags

(Hopefully?)

feature/completions-highlight-modifications 2020-11-22 22:58:11 UTC
Try another approach even simpler.

Author: Ergus
Author Date: 2020-11-22 22:14:18 UTC

Try another approach even simpler.

Perform all the operations directly in the completions buffer.

scratch/package-security 2020-11-21 23:38:35 UTC
Support expiration of metadata by package archives

Author: Stefan Kangas
Author Date: 2020-09-07 05:31:56 UTC

Support expiration of metadata by package archives

Expiring package metadata is done by checking the timestamp in package
archive file. This is intended to limit the effectiveness of a replay
attack. The onus is on the package archives to implement a secure and
reasonable policy. (Debian uses 7 days before metadata expires.)

Together with package checksums, this adds sufficient protection
against metadata replay attacks. (Bug#19479)

* lisp/emacs-lisp/package.el (package-check-timestamp): New defcustom.
(bad-timestamp): New error.
(package--parse-header-from-buffer)
(package--parse-valid-until-from-buffer)
(package--parse-last-updated-from-buffer)
(package--archive-verify-timestamp)
(package--archive-verify-not-expired)
(package--compare-archive-timestamps)
(package--check-archive-timestamp): New defuns.
(package--download-one-archive): Check timestamp of the
'archive-contents' file using above functions. It is only checked if
it exists, which makes this change backwards compatible.

* lisp/calendar/iso8601.el (iso8601-parse): Add autoload cookie.

* test/lisp/emacs-lisp/package-tests.el
(package-test-parse-valid-until-from-buffer)
(package-test-parse-last-updated-from-buffer)
(package-test-archive-verify-timestamp)
(package-test-check-archive-timestamp)
(package-test-check-archive-timestamp/not-expired)
(package-test-check-archive-timestamp/expired): New tests.

* test/lisp/emacs-lisp/package-resources/archives/older/archive-contents:
* test/lisp/emacs-lisp/package-resources/archives/newer/archive-contents:
New files.

* doc/lispref/package.texi (Package Archives, Archive Web Server):
Document how to increase the security of a package archive using
checksums, signing and timestamps.

scratch/gnus-search 2020-10-09 05:58:19 UTC
Fix gnus-search-query-expand-key

Author: Eric Abrahamsen
Author Date: 2020-10-09 05:58:19 UTC

Fix gnus-search-query-expand-key

* lisp/gnus/gnus-search.el (gnus-search-query-expand-key): Use the
proper built-in functions, rather than trying to replicate string
completion ourself.

scratch/eldoc-display-functions 2020-10-04 23:25:56 UTC
Remove spurious display-buffer call in eldoc--echo-area-substring

Author: João Távora
Author Date: 2020-10-04 23:24:54 UTC

Remove spurious display-buffer call in eldoc--echo-area-substring

* lisp/emacs-lisp/eldoc.el (eldoc--echo-area-substring): Remove
spurious display-buffer call.

feature/icomplete-vertical 2020-09-25 03:00:46 UTC
icomplete-vertical simplest approach

Author: Ergus
Author Date: 2020-09-19 08:10:01 UTC

icomplete-vertical simplest approach

* lisp/icomplete.el (icomplete--vertical-prospects) : New functions to
assert format and correct number of candidates in vertical format.
(icomplete--horizontal-prospects) : New functions to assert format and
correct number of candidates in horizontal format.
(icomplete-minibuffer-setup-hook) : Conditionally initialize the
variables for vertical format.
(icomplete-completions) : Simplify to separate some calculations
unneeded in vertical format. Moved part of its code to
icomplete--horizontal-prospects.

scratch/shorthand-namespacing 2020-09-21 16:01:08 UTC
Add a test for byte-compilation

Author: João Távora
Author Date: 2020-09-21 15:58:46 UTC

Add a test for byte-compilation

* test/lisp/progmodes/elisp-mode-tests.el
(elisp-shorthand-byte-compile-a-file): New test.
(elisp-shorthand-load-a-file): Simplify.

feature/simple-16-theme 2020-09-15 14:54:22 UTC
Add simple theme with 16 colors only.

Author: Ergus
Author Date: 2020-09-14 05:13:42 UTC

Add simple theme with 16 colors only.

scratch/modern-mode 2020-09-15 14:21:11 UTC
Add 'modern-mode' command line option

Author: Andrea Corallo
Author Date: 2020-09-15 10:13:25 UTC

Add 'modern-mode' command line option

 * src/emacs.c (standard_args): Add: '-m' '-modern' '--modern'
 cmd line option.

 * lisp/startup.el (command-line-1): Handle modern-mode cmd line
 option.

scratch/erc-oldies 2020-09-10 04:19:37 UTC
Import erc-bbdb.el, erc-chess.el, erc-nicklist.el, and erc-speak.el

Author: Amin Bandali
Author Date: 2020-09-10 03:20:34 UTC

Import erc-bbdb.el, erc-chess.el, erc-nicklist.el, and erc-speak.el

* lisp/erc/erc-bbdb.el, lisp/erc/erc-chess.el,
lisp/erc/erc-nicklist.el, lisp/erc/erc-speak.el: Import these files
from commit 9497cc92bf1feb63c24425c46b1e033265c2cea9 of
https://git.savannah.gnu.org/cgit/erc.git, the old ERC repository
outside the GNU Emacs source tree. These FSF-copyrighted files were
part of ERC before erc.git was (for the most part) folded into
emacs.git, but they were left out largely due to depending on packages
outside Emacs. It is worth noting that their dependencies are all
free software, and bbdb and chess are actually available on GNU ELPA.

feature/soc-bytecode-in-traceback-reduced 2020-07-23 00:07:15 UTC
Clean up before patch submission

Author: Zach Shaftel
Author Date: 2020-07-23 00:07:15 UTC

Clean up before patch submission

* src/lisp.h (struct handler): Remove unused 'bytecode_offset' field,
which was added at some point while prototyping.

* src/bytecode.c (UPDATE_OFFSET): Subtract 1, so the offset is accurate.

feature/soc-bytecode-in-traceback 2020-07-15 17:13:59 UTC
Only print offset for byte-code functions

Author: Zach Shaftel
Author Date: 2020-07-15 16:20:20 UTC

Only print offset for byte-code functions

* lisp/emacs-lisp/backtrace.el (backtrace--print-flags): Check if the
function is compiled and only print the offset in that case.

scratch/tzz/prettify-text-mode 2020-07-12 20:44:10 UTC
Create and document auth-source-reveal-mode

Author: Ted Zlatanov
Author Date: 2020-06-23 22:19:32 UTC

Create and document auth-source-reveal-mode

* lisp/auth-source.el (auth-source-reveal-mode): Add new minor
mode to hide passwords. Remove authinfo-mode which provided a
major mode for the same purpose before. Use the text-coverup API.

* doc/misc/auth.texi (Hiding passwords in text buffers): Document
auth-source-reveal-mode.

scratch/python-eldoc-async 2020-07-08 21:47:10 UTC
Have Python mode cooperate asynchronously with Eldoc

Author: João Távora
Author Date: 2020-07-08 21:47:00 UTC

Have Python mode cooperate asynchronously with Eldoc

When combined with Flymake mode, which also adds a value to
eldoc-documentation-functions, Python-mode users can now experiment
with different eldoc-documentation-strategy values.

Also, this shoulda allow us to write automatic tests for this
particular Eldoc functionality.

* lisp/progmodes/python.el (inferior-python-mode): Set
coming-preoutput-filter-functions.
(python--shell-output-filter-in-progress)
(python--shell-output-filter-buffer): Rename from python- variant.
(python-shell-output-filter): Rework to support async operation.
(python-eldoc--get-doc-at-point): Rework to support async.
(python-eldoc-function): Use callback.

scratch/eldoc-async 2020-07-08 10:23:29 UTC
Improve Eldoc docstrings

Author: João Távora
Author Date: 2020-07-08 10:19:19 UTC

Improve Eldoc docstrings

* lisp/emacs-lisp/eldoc.el (eldoc-documentation-strategy): Improve
docstring.
(eldoc--make-callback): Improve docstring.
(eldoc--invoke-strategy): New helper function.
(eldoc-print-current-symbol-info): Call eldoc--invoke-strategy.
(eldoc-documentation-functions): Improve docstring.

feature/zach-soc-bytecode-in-traceback 2020-06-27 00:05:16 UTC
Store the bytecode offset in thread_state

Author: Zach Shaftel
Author Date: 2020-06-19 18:53:20 UTC

Store the bytecode offset in thread_state

* src/lisp.h:
* src/eval.c (backtrace_byte_offset): Remove global variable, and
put it...

* src/thread.h (thread_state): ...in here as
m_backtrace_byte_offset, and define backtrace_byte_offset as a
macro that points to it.

* src/bytecode.c (UPDATE_OFFSET): Move out of #ifdef
BYTE_CODE_THREADED.

scratch/tzz/auth-source-reveal-mode 2020-06-22 20:31:12 UTC
auth-source-reveal-mode: fixes from code review

Author: Ted Zlatanov
Author Date: 2020-06-22 20:29:25 UTC

auth-source-reveal-mode: fixes from code review

feature/zach-soc-funcall-from-bytecode 2020-06-18 05:09:31 UTC
Don't call Ffuncall directly from exec_byte_code

Author: Zach Shaftel
Author Date: 2020-06-18 05:09:31 UTC

Don't call Ffuncall directly from exec_byte_code

* src/bytecode.c (exec_byte_code): Do a good chunk of Ffuncall's
work in the Bcall ops, so Ffuncall no longer needs to be called. As
it stands, it's an ugly clone of the contents of Ffuncall (and
some of funcall_lambda). Work in progress.

* src/eval.c (record_in_backtrace_with_offset): New function. Like
record_in_backtrace but accepts the bytecode offset and stores it
in the pertinent backtrace frame.
(record_in_backtrace): Don't record the offset.
(funcall_lambda): Remove unnecessary SYMBOLP check.

* src/lisp.h (funcall_lambda, do_debug_on_call)
(record_in_backtrace_with_offset , backtrace_debug_on_exit):
Declare.

scratch/eldoc-xref-project-gnu-elpa-core-packages 2020-05-11 21:41:00 UTC
Turn Eldoc, Xref and Project into GNU ELPA :core packages

Author: João Távora
Author Date: 2020-05-11 21:39:56 UTC

Turn Eldoc, Xref and Project into GNU ELPA :core packages

* lisp/jsonrpc.el: Tweak comment near Package-Requires.

* lisp/emacs-lisp/eldoc.el: Add Version and Package-Requires.

* lisp/progmodes/flymake.el: Add comment near Package-Requires.

* lisp/progmodes/project.el: Add Version and Package-Requires.

* lisp/progmodes/xref.el: Add Version and Package-Requires.

scratch/lexspaces 2020-05-08 19:33:00 UTC
Shallow setters by default are not a good idea

Author: Andrea Corallo
Author Date: 2020-05-08 19:23:38 UTC

Shallow setters by default are not a good idea

scratch/add-lisp-data-mode 2020-04-19 23:13:50 UTC
Add semicolon to prop-line with lisp-data mode (bug#40573).

Author: Juri Linkov
Author Date: 2020-04-19 23:13:50 UTC

Add semicolon to prop-line with lisp-data mode (bug#40573).

* lisp/bookmark.el (bookmark-insert-file-format-version-stamp):
* lisp/saveplace.el (save-place-alist-to-file):
Add semicolon to separate 'coding:' and 'mode:'.

scratch/fix-40529-tabulated-list-mode-bootstrapping 2020-04-12 14:14:53 UTC
Fix tabulated-list-mode bootstrapping problem

Author: João Távora
Author Date: 2020-04-12 12:10:45 UTC

Fix tabulated-list-mode bootstrapping problem

Fixes: bug#40529
Don't refresh all the tabulated-list rows when entering
tabulated-list-mode just because display-line-number-mode is t.

* lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Don't
call tabulated-list-revert, just tabulated-list-init-header.

scratch/completion-api 2019-12-05 03:35:07 UTC
* lisp/emacs-lisp/cl-generic.el: Fix bootstrap.

Author: Stefan Monnier
Author Date: 2019-12-05 03:35:07 UTC

* lisp/emacs-lisp/cl-generic.el: Fix bootstrap.

Most importantly, prefill dispatchers for the new minibuffer.el methods.

* lisp/minibuffer.el (completion-table-category): Return both the
category and the default style.
(completion-table--call-method): New function.
(completion-table-test, completion-table-category)
(completion-table-boundaries, completion-table-fetch-matches): Use it.

scratch/joaot/make-completion-at-point-function 2019-11-20 00:00:11 UTC
Untested make-completion-at-point-function capf entrypoint

Author: João Távora
Author Date: 2019-11-20 00:00:11 UTC

Untested make-completion-at-point-function capf entrypoint

* lisp/minibuffer.el (make-completion-at-point-function): New helper.
(completion-at-point-functions): Adjust docstring.

1100 of 221 results
This repository contains Public information 
Everyone can see this information.