; Don't quote localp argument to define-erc-module

* etc/ERC-NEWS: Rearrange some entries for 5.6.1.
* lisp/erc/erc-fill.el (erc-fill-wrap-mode):
* lisp/erc/erc-goodies.el (erc-keep-place-indicator-mode)
(erc-command-indicator-mode):
* lisp/erc/erc-nicks.el (erc-nicks-mode):
* lisp/erc/erc-notify.el (erc-querypoll-mode):
* lisp/erc/erc-sasl.el (erc-sasl-mode):
* lisp/erc/erc-services.el (erc-services-regain-mode): Don't quote
localp argument.
* test/lisp/erc/erc-scenarios-misc.el (erc-nicks-track-faces/defer):
Skip on Emacs 27 due to recent CI failures.
* test/lisp/erc/erc-scenarios-misc.el (erc-scenarios-base-flood): Adjust
timeout.
This commit is contained in:
F. Jason Park 2025-01-18 11:12:50 -08:00
parent 92c5c1b786
commit d6b210aa09
9 changed files with 24 additions and 19 deletions

View file

@ -14,12 +14,6 @@ GNU Emacs since Emacs version 22.1.
* Changes in ERC 5.6.1 * Changes in ERC 5.6.1
** Reliable library access for ban lists.
Say goodbye to continually running "/BANLIST" for programmatic
purposes. Modules can instead use the function 'erc-sync-banlist' to
guarantee that the variable 'erc-channel-banlist' remains synced for
the remainder of an IRC session.
** Option 'erc-truncate-padding-size' controls truncation frequency. ** Option 'erc-truncate-padding-size' controls truncation frequency.
In fast-moving channels and in queries with long-winded bots, the In fast-moving channels and in queries with long-winded bots, the
'truncate' module has historically been asked to work overtime, mostly 'truncate' module has historically been asked to work overtime, mostly
@ -33,15 +27,15 @@ first having to load the package. Unfortunately, this also had the side
effect of arranging for ERC to load on startup whenever someone effect of arranging for ERC to load on startup whenever someone
customized the variable. customized the variable.
** New option determines 'keep-place-indicator's influence on 'truncate'.
Option 'erc-keep-place-indicator-truncation' manages the tension between
truncation and place keeping, prioritizing one or the other.
** Stray key binding removed from 'erc-fill-wrap-mode-map'. ** Stray key binding removed from 'erc-fill-wrap-mode-map'.
The command 'erc-fill-wrap-cycle-visual-movement' was mistakenly given The command 'erc-fill-wrap-cycle-visual-movement' was mistakenly given
the key binding "C-c a" in an inadvertent holdover from development. It the key binding "C-c a" in an inadvertent holdover from development. It
has been removed. has been removed.
** New option determines 'keep-place-indicator's influence on 'truncate'.
Option 'erc-keep-place-indicator-truncation' manages the tension between
truncation and place keeping, prioritizing one or the other.
** Updated defaults for the 'track' module's face-list options. ** Updated defaults for the 'track' module's face-list options.
The default values of options 'erc-track-faces-priority-list' and The default values of options 'erc-track-faces-priority-list' and
'erc-track-faces-normal-list' have both gained a face for buttonized 'erc-track-faces-normal-list' have both gained a face for buttonized
@ -49,7 +43,9 @@ speaker names, with the latter option also gaining 'erc-notice-face'.
This was done to provide a more frequent and practical indication of This was done to provide a more frequent and practical indication of
channel activity in keeping with the module's original design. channel activity in keeping with the module's original design.
** Command 'erc-track-clear' clears the mode-line activity indicator. ** Command 'erc-track-clear' resets the mode-line activity indicator.
Clear ERC's mode-line area with a single stroke, effectively marking all
ERC buffers as having been read.
** An arguably less distracting 'erc-nicks-track-faces' variant. ** An arguably less distracting 'erc-nicks-track-faces' variant.
Setting this option to t tells the 'track' module to have the mode-line Setting this option to t tells the 'track' module to have the mode-line
@ -78,6 +74,12 @@ the option.
** Changes in the library API. ** Changes in the library API.
*** Reliable library access for ban lists.
Say goodbye to continually running "/BANLIST" for programmatic
purposes. Modules can instead use the function 'erc-sync-banlist' to
guarantee that the variable 'erc-channel-banlist' remains synced for
the remainder of an IRC session.
*** Function 'erc-normalize-port' may return 0 instead of nil. *** Function 'erc-normalize-port' may return 0 instead of nil.
When given a nonempty, non-numeric string, this function now returns 0. When given a nonempty, non-numeric string, this function now returns 0.
Moreover, ERC officially requests that users not use its output for Moreover, ERC officially requests that users not use its output for

View file

@ -567,7 +567,7 @@ via `erc-fill-wrap-mode-hook'."
#'erc-fill--wrap-merged-button-p t) #'erc-fill--wrap-merged-button-p t)
(remove-hook 'erc-stamp--insert-date-hook (remove-hook 'erc-stamp--insert-date-hook
#'erc-fill--wrap-unmerge-on-date-stamp t)) #'erc-fill--wrap-unmerge-on-date-stamp t))
'local) localp)
(defvar-local erc-fill--wrap-length-function nil (defvar-local erc-fill--wrap-length-function nil
"Function to determine length of overhanging characters. "Function to determine length of overhanging characters.

View file

@ -424,7 +424,7 @@ and `keep-place-indicator' in different buffers."
(remove-hook 'erc-keep-place-mode-hook (remove-hook 'erc-keep-place-mode-hook
#'erc--keep-place-indicator-on-global-module t) #'erc--keep-place-indicator-on-global-module t)
(kill-local-variable 'erc--keep-place-indicator-overlay)) (kill-local-variable 'erc--keep-place-indicator-overlay))
'local) localp)
(defun erc--keep-place-indicator-on-global-module () (defun erc--keep-place-indicator-on-global-module ()
"Ensure `keep-place-indicator' survives toggling `erc-keep-place-mode'. "Ensure `keep-place-indicator' survives toggling `erc-keep-place-mode'.
@ -596,7 +596,7 @@ reveal echoed command lines after they've been inserted."
((remove-hook 'erc--input-review-functions ((remove-hook 'erc--input-review-functions
#'erc--command-indicator-permit-insertion t) #'erc--command-indicator-permit-insertion t)
(erc-command-indicator-toggle-hidden +1)) (erc-command-indicator-toggle-hidden +1))
'local) localp)
(defun erc-command-indicator () (defun erc-command-indicator ()
"Return the command-indicator prompt as a string. "Return the command-indicator prompt as a string.

View file

@ -607,7 +607,7 @@ Abandon search after examining LIMIT faces."
nil) nil)
(unless erc-button--nick-popup-alist (unless erc-button--nick-popup-alist
(kill-local-variable 'erc-button--nick-popup-alist))) (kill-local-variable 'erc-button--nick-popup-alist)))
'local) localp)
(defun erc-nicks-customize-face (nick) (defun erc-nicks-customize-face (nick)
"Customize or create persistent face for NICK." "Customize or create persistent face for NICK."

View file

@ -335,7 +335,7 @@ target buffer."
(erc-querypoll-mode -1))) (erc-querypoll-mode -1)))
(kill-local-variable 'erc--querypoll-ring) (kill-local-variable 'erc--querypoll-ring)
(kill-local-variable 'erc--querypoll-timer)) (kill-local-variable 'erc--querypoll-timer))
'local) localp)
(cl-defmethod erc--queries-current-p (&context (erc-querypoll-mode (eql t))) t) (cl-defmethod erc--queries-current-p (&context (erc-querypoll-mode (eql t))) t)

View file

@ -337,7 +337,7 @@ This doesn't solicit or validate a suite of supported mechanisms."
(setf (erc-sasl--state-client erc-sasl--state) client)))) (setf (erc-sasl--state-client erc-sasl--state) client))))
((kill-local-variable 'erc-sasl--state) ((kill-local-variable 'erc-sasl--state)
(kill-local-variable 'erc-sasl--options)) (kill-local-variable 'erc-sasl--options))
'local) localp)
(define-erc-response-handler (AUTHENTICATE) (define-erc-response-handler (AUTHENTICATE)
"Begin or resume an SASL session." nil "Begin or resume an SASL session." nil

View file

@ -611,7 +611,7 @@ somewhat experimental, is likely only useful in conjunction with
SASL authentication rather than the traditional approach provided SASL authentication rather than the traditional approach provided
by the `services' module it shares a library with (see Info by the `services' module it shares a library with (see Info
node `(erc) SASL' for more)." node `(erc) SASL' for more)."
nil nil 'local) nil nil localp)
(cl-defmethod erc--nickname-in-use-make-request (cl-defmethod erc--nickname-in-use-make-request
((want string) temp &context (erc-server-connected null) ((want string) temp &context (erc-server-connected null)

View file

@ -681,6 +681,9 @@
(funcall assert-result '(7 . erc-notice-face))))) (funcall assert-result '(7 . erc-notice-face)))))
(ert-deftest erc-nicks-track-faces/defer () (ert-deftest erc-nicks-track-faces/defer ()
(when (< emacs-major-version 28)
(ert-skip "Possible intermittent failures on 27"))
(should (eq erc-nicks-track-faces 'prioritize)) (should (eq erc-nicks-track-faces 'prioritize))
(let ((erc-nicks-track-faces 'defer)) (let ((erc-nicks-track-faces 'defer))
(erc-nicks-tests--track-faces (erc-nicks-tests--track-faces

View file

@ -51,7 +51,7 @@
(with-current-buffer (erc-d-t-wait-for 5 (get-buffer "#chan/foonet")) (with-current-buffer (erc-d-t-wait-for 5 (get-buffer "#chan/foonet"))
(erc-d-t-search-for 10 "<bob/foonet>") (erc-d-t-search-for 10 "<bob/foonet>")
(erc-d-t-absent-for 0.1 "<joe") (erc-d-t-absent-for 0.1 "<joe")
(funcall expect 3 "was created on"))) (funcall expect 10 "was created on")))
(ert-info ("#chan@barnet exists") (ert-info ("#chan@barnet exists")
(with-current-buffer (erc-d-t-wait-for 5 (get-buffer "#chan/barnet")) (with-current-buffer (erc-d-t-wait-for 5 (get-buffer "#chan/barnet"))