<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emacs/lisp/erc, branch scratch/exec-byte-code</title>
<subtitle>Emacs is the extensible, customizable, self-documenting real-time display editor. 
</subtitle>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/'/>
<entry>
<title>Make function erc-scrolltobottom-mode idempotent</title>
<updated>2025-09-05T00:12:25+00:00</updated>
<author>
<name>F. Jason Park</name>
</author>
<published>2025-09-04T00:48:21+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=fca0dbe0ab2930e39aaec304df3e6bb7cad17995'/>
<id>fca0dbe0ab2930e39aaec304df3e6bb7cad17995</id>
<content type='text'>
* lisp/erc/erc-goodies.el (erc-scrolltobottom-mode)
(erc-scrolltobottom-enable): Always remove hook functions whose
membership hinges on the value of `erc-scrolltobottom-all'.  In ERC 5.6,
an init file's `setopt' form containing an `erc-modules' assignment
before an `erc-scrolltobottom-all' one would result in conflicting sets
of hook members come `erc-open'.  Having such option-dependent branching
in module setup, while difficult to maintain, is a long held ERC
practice, as seen in functions like `erc-nickserv-identify-mode'.
Making all new modules "local" may be the most manageable solution
because existing global modules can't be made to require prior
deactivation.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lisp/erc/erc-goodies.el (erc-scrolltobottom-mode)
(erc-scrolltobottom-enable): Always remove hook functions whose
membership hinges on the value of `erc-scrolltobottom-all'.  In ERC 5.6,
an init file's `setopt' form containing an `erc-modules' assignment
before an `erc-scrolltobottom-all' one would result in conflicting sets
of hook members come `erc-open'.  Having such option-dependent branching
in module setup, while difficult to maintain, is a long held ERC
practice, as seen in functions like `erc-nickserv-identify-mode'.
Making all new modules "local" may be the most manageable solution
because existing global modules can't be made to require prior
deactivation.
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't touch window configuration in erc-fill prompt hook</title>
<updated>2025-09-05T00:10:32+00:00</updated>
<author>
<name>F. Jason Park</name>
</author>
<published>2025-08-31T23:38:30+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=b3abbab63254fd18e1c7bad56d3401b49dd8604c'/>
<id>b3abbab63254fd18e1c7bad56d3401b49dd8604c</id>
<content type='text'>
* lisp/erc/erc-fill.el (erc-fill--wrap-indent-prompt): While computing
the prompt indentation's text size, don't bother saving and restoring
the window configuration because unwanted scrolls are now believed to be
unlikely because of other changes.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lisp/erc/erc-fill.el (erc-fill--wrap-indent-prompt): While computing
the prompt indentation's text size, don't bother saving and restoring
the window configuration because unwanted scrolls are now believed to be
unlikely because of other changes.
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove scrolltobottom dependency from erc-fill module</title>
<updated>2025-08-26T04:17:48+00:00</updated>
<author>
<name>F. Jason Park</name>
</author>
<published>2025-08-25T02:53:27+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=d98e1a83753ecc988fe9109308aea05e86534734'/>
<id>d98e1a83753ecc988fe9109308aea05e86534734</id>
<content type='text'>
This mostly reverts 9668b4f97c2fc6bfff83258861d455a6d02516a8
"Make erc-fill-wrap depend on scrolltobottom".

* etc/ERC-NEWS: Mention removal of formal dependency.
* lisp/erc/erc-fill.el (erc-fill--wrap-scrolltobottom-exempt-p): Remove
unused variable.
(erc-fill--wrap-ensure-dependencies): Remove unused dependency check.
(erc-fill-wrap-mode): Remove scrolltobottom dependency from doc string.
* test/lisp/erc/erc-fill-tests.el (erc-fill-tests--wrap-populate):
Remove unused binding from var list.
* test/lisp/erc/resources/erc-scenarios-common.el
(erc-scenarios-common--make-bindings): Remove unused binding.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This mostly reverts 9668b4f97c2fc6bfff83258861d455a6d02516a8
"Make erc-fill-wrap depend on scrolltobottom".

* etc/ERC-NEWS: Mention removal of formal dependency.
* lisp/erc/erc-fill.el (erc-fill--wrap-scrolltobottom-exempt-p): Remove
unused variable.
(erc-fill--wrap-ensure-dependencies): Remove unused dependency check.
(erc-fill-wrap-mode): Remove scrolltobottom dependency from doc string.
* test/lisp/erc/erc-fill-tests.el (erc-fill-tests--wrap-populate):
Remove unused binding from var list.
* test/lisp/erc/resources/erc-scenarios-common.el
(erc-scenarios-common--make-bindings): Remove unused binding.
</pre>
</div>
</content>
</entry>
<entry>
<title>Prefer window-text-pixel-size in erc-fill</title>
<updated>2025-08-26T04:15:29+00:00</updated>
<author>
<name>F. Jason Park</name>
</author>
<published>2025-08-25T02:27:47+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=c711ba3c7bcab1b0900604425283fc018257abe0'/>
<id>c711ba3c7bcab1b0900604425283fc018257abe0</id>
<content type='text'>
* lisp/erc/erc-fill.el (erc-fill--wrap-measure): Using
`buffer-text-pixel-size' for measuring text size in the selected window
can end up triggering a scroll, which then requires imperfect countering
by the scrolltobottom module, especially with regard to the option
`erc-scrolltobottom-all'.  Thanks to Alcor for reporting and helping
with this bug, which was introduced along with fill-wrap in ERC 5.6.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lisp/erc/erc-fill.el (erc-fill--wrap-measure): Using
`buffer-text-pixel-size' for measuring text size in the selected window
can end up triggering a scroll, which then requires imperfect countering
by the scrolltobottom module, especially with regard to the option
`erc-scrolltobottom-all'.  Thanks to Alcor for reporting and helping
with this bug, which was introduced along with fill-wrap in ERC 5.6.
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't set bufbar cursor-type in erc-mode buffers</title>
<updated>2025-08-24T22:15:02+00:00</updated>
<author>
<name>F. Jason Park</name>
</author>
<published>2025-08-24T02:11:55+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=45ffc0e102582654b6483ba5a3fdf473f6999889'/>
<id>45ffc0e102582654b6483ba5a3fdf473f6999889</id>
<content type='text'>
* lisp/erc/erc-status-sidebar.el (erc-status-sidebar-get-window): Set
`cursor-type' in `erc-status-sidebar-mode' buffer instead.  This bug was
introduced along with the bufbar module for bug#63595 in ERC 5.6.  It's
a regression because it also affects the status-sidebar module.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lisp/erc/erc-status-sidebar.el (erc-status-sidebar-get-window): Set
`cursor-type' in `erc-status-sidebar-mode' buffer instead.  This bug was
introduced along with the bufbar module for bug#63595 in ERC 5.6.  It's
a regression because it also affects the status-sidebar module.
</pre>
</div>
</content>
</entry>
<entry>
<title>Use existing X-Debbugs-CC header in erc-bug</title>
<updated>2025-08-24T22:12:15+00:00</updated>
<author>
<name>F. Jason Park</name>
</author>
<published>2025-08-15T07:10:31+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=40219c39a14e9fd7004d84fdc7b5a587490fb367'/>
<id>40219c39a14e9fd7004d84fdc7b5a587490fb367</id>
<content type='text'>
* lisp/erc/erc.el (erc-bug): On Emacs 30 and later, search for and
ideally use an existing "X-Debbugs-CC" header instead of inserting a new
one at the top.  Section 4.5 Obsolete Header Fields of RFC 5322 says,
"except for destination address fields (described in section 4.5.3), the
interpretation of multiple occurrences of fields is unspecified."
Anecdotal fiddling suggests the Savannah servers aren't confused by the
second "empty" header field, so this change is probably just cosmetic.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lisp/erc/erc.el (erc-bug): On Emacs 30 and later, search for and
ideally use an existing "X-Debbugs-CC" header instead of inserting a new
one at the top.  Section 4.5 Obsolete Header Fields of RFC 5322 says,
"except for destination address fields (described in section 4.5.3), the
interpretation of multiple occurrences of fields is unspecified."
Anecdotal fiddling suggests the Savannah servers aren't confused by the
second "empty" header field, so this change is probably just cosmetic.
</pre>
</div>
</content>
</entry>
<entry>
<title>; Improve some doc strings in erc-services</title>
<updated>2025-07-28T02:57:28+00:00</updated>
<author>
<name>F. Jason Park</name>
</author>
<published>2025-07-26T04:21:13+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=62fba3a723d10d53a8bac1351e762874ec0c9360'/>
<id>62fba3a723d10d53a8bac1351e762874ec0c9360</id>
<content type='text'>
* lisp/erc/erc-services.el: Fix shape of option in commentary example.
Existing value didn't pass `setopt' validation and raised an error
during successful lookup in `erc-nickserv-get-password'.
(erc-nickserv-passwords, erc-nickserv-identify-autodetect): Update doc
string by removing erroneous constraint, which was no longer applicable
following c6eb114a42922af18818dce7317238e0af776958 "ERC: NickServ:
Prompt for password last, overall simplifications (bug#46777)".
(erc-nickserv-identify): Simplify doc and guarantee t as return value on
success rather than rely on unadvertised behavior from other API
functions.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lisp/erc/erc-services.el: Fix shape of option in commentary example.
Existing value didn't pass `setopt' validation and raised an error
during successful lookup in `erc-nickserv-get-password'.
(erc-nickserv-passwords, erc-nickserv-identify-autodetect): Update doc
string by removing erroneous constraint, which was no longer applicable
following c6eb114a42922af18818dce7317238e0af776958 "ERC: NickServ:
Prompt for password last, overall simplifications (bug#46777)".
(erc-nickserv-identify): Simplify doc and guarantee t as return value on
success rather than rely on unadvertised behavior from other API
functions.
</pre>
</div>
</content>
</entry>
<entry>
<title>Use function-valued variable for ERC query predicate</title>
<updated>2025-07-28T02:57:28+00:00</updated>
<author>
<name>F. Jason Park</name>
</author>
<published>2025-07-21T01:56:03+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=00a3ec9d53c6dbe00c48678f68a510b70e859d89'/>
<id>00a3ec9d53c6dbe00c48678f68a510b70e859d89</id>
<content type='text'>
* lisp/erc/erc-notify.el (erc-querypoll-mode, erc-querypoll-enable)
(erc-querypoll-disable): Override `erc-query-table-synced-predicate'
when mode is active.
(erc--queries-current-p): Remove method.
(erc--querypoll-active-p): New function.
* lisp/erc/erc-speedbar.el (erc-speedbar-buttons)
(erc-speedbar-insert-target): Call function-valued variable
`erc--query-table-synced-predicate' instead of its now default value
`erc--queries-current-p' directly.
* lisp/erc/erc.el (erc--query-table-synced-predicate): New variable.
(erc--queries-current-p, erc--query-participant-present-p): Convert
former from method to normal function and rename to latter.  Original
was added as part of bug#70928.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lisp/erc/erc-notify.el (erc-querypoll-mode, erc-querypoll-enable)
(erc-querypoll-disable): Override `erc-query-table-synced-predicate'
when mode is active.
(erc--queries-current-p): Remove method.
(erc--querypoll-active-p): New function.
* lisp/erc/erc-speedbar.el (erc-speedbar-buttons)
(erc-speedbar-insert-target): Call function-valued variable
`erc--query-table-synced-predicate' instead of its now default value
`erc--queries-current-p' directly.
* lisp/erc/erc.el (erc--query-table-synced-predicate): New variable.
(erc--queries-current-p, erc--query-participant-present-p): Convert
former from method to normal function and rename to latter.  Original
was added as part of bug#70928.
</pre>
</div>
</content>
</entry>
<entry>
<title>Cancel ERC autojoin timer in the server buffer</title>
<updated>2025-07-28T02:57:28+00:00</updated>
<author>
<name>F. Jason Park</name>
</author>
<published>2025-07-18T06:34:05+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=2f5fe1a48eb26c4885657e2634d8fe9190ab659b'/>
<id>2f5fe1a48eb26c4885657e2634d8fe9190ab659b</id>
<content type='text'>
* lisp/erc/erc-join.el (erc-autojoin-channels-delayed): Only cancel
`erc--autojoin-timer' in the server buffer in which it's local.  After
Emacs 28 brought commit fc66ec33226aeed0b745356363ed952c8ff1f7fd "Prefer
defvar-local in erc", customizing `erc-autojoin-timing' to `ident' led
to ERC emitting redundant JOINs before `erc-autojoin--join' was factored
out.  Additionally, don't bother binding options around the call to
`erc-autojoin-channels' to shape its behavior, preferring instead to
call the internal workhorse function directly.  Ever since bug#5521
introduced those options, the logic in `erc-autojoin-channels' has
ignored `erc-autojoin-delay' anyway, so long as `erc-autojoin-timing'
isn't `ident'.  This change may break third party advice.
(erc-autojoin-after-ident): Restore code to cancel timer.  It was
erroneously deleted in 959fbcf34b5dd04e1b4bf87c0b73afd784a41f7f "favor
network identities in erc-join".
* test/lisp/erc/erc-join-tests.el: Require erc-tests-common atop file so
tests can take advantage of common utilities.
(erc-autojoin-channels--connect): Replace with a function and three
separate tests.
(erc-join-tests--autojoin-channels-connect): New function.
(erc-autojoin-channels/server, erc-autojoin-channels/network)
(erc-autojoin-channels/nomatch): New tests.
(erc-autojoin-channels--delay): Replace with a function and three
separate tests.  Remove guard to skip test on Solaris.
(erc-join-tests--autojoin-channels-ident): New function.
(erc-autojoin-channels-delayed/server)
(erc-autojoin-channels-delayed/network)
(erc-autojoin-channels-delayed/nomatch): New tests.
(erc-autojoin-channels--ident): Replace with function and two separate
tests.
(erc-join-tests--autojoin-after-ident): New function.
(erc-autojoin-after-ident/server)
(erc-autojoin-after-ident/network): New tests.
(erc-join-tests--autojoin-add--common)
(erc-join-tests--autojoin-add): Rename former to latter.
(erc-autojoin-add--network)
(erc-autojoin-add--network-extended-syntax)
(erc-autojoin-add--network-id): Adjust arguments to fixture.
(erc-autojoin-add--server): Use common utils.
(erc-join-tests--autojoin-remove--common)
(erc-join-tests--autojoin-remove): Rename former to latter.
(erc-autojoin-remove--network)
(erc-autojoin-remove--network-id): Adjust args for fixture.
(erc-autojoin-remove--server): Use common utils.
* test/lisp/erc/erc-scenarios-join-timing.el: New file.
* test/lisp/erc/resources/erc-scenarios-common.el
(erc-scenarios-common--run-in-term): In subprocess, don't use failure
tally as exit status unless body form succeeds.
* test/lisp/erc/resources/erc-tests-common.el
(erc-tests-common-init-server-proc): Use `make-process' instead of
`start-process'.
(erc-tests-common-make-server-buf): Use `erc-server-current-nick' to
create the `erc-networks--id' as a `erc-networks--id-qualifying'
instance, which is more realistic than a "fixed" variant.
* test/lisp/erc/resources/join/timing/connect-both.eld: New file.
* test/lisp/erc/resources/join/timing/ident-both.eld: New file.
(Bug#79017)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lisp/erc/erc-join.el (erc-autojoin-channels-delayed): Only cancel
`erc--autojoin-timer' in the server buffer in which it's local.  After
Emacs 28 brought commit fc66ec33226aeed0b745356363ed952c8ff1f7fd "Prefer
defvar-local in erc", customizing `erc-autojoin-timing' to `ident' led
to ERC emitting redundant JOINs before `erc-autojoin--join' was factored
out.  Additionally, don't bother binding options around the call to
`erc-autojoin-channels' to shape its behavior, preferring instead to
call the internal workhorse function directly.  Ever since bug#5521
introduced those options, the logic in `erc-autojoin-channels' has
ignored `erc-autojoin-delay' anyway, so long as `erc-autojoin-timing'
isn't `ident'.  This change may break third party advice.
(erc-autojoin-after-ident): Restore code to cancel timer.  It was
erroneously deleted in 959fbcf34b5dd04e1b4bf87c0b73afd784a41f7f "favor
network identities in erc-join".
* test/lisp/erc/erc-join-tests.el: Require erc-tests-common atop file so
tests can take advantage of common utilities.
(erc-autojoin-channels--connect): Replace with a function and three
separate tests.
(erc-join-tests--autojoin-channels-connect): New function.
(erc-autojoin-channels/server, erc-autojoin-channels/network)
(erc-autojoin-channels/nomatch): New tests.
(erc-autojoin-channels--delay): Replace with a function and three
separate tests.  Remove guard to skip test on Solaris.
(erc-join-tests--autojoin-channels-ident): New function.
(erc-autojoin-channels-delayed/server)
(erc-autojoin-channels-delayed/network)
(erc-autojoin-channels-delayed/nomatch): New tests.
(erc-autojoin-channels--ident): Replace with function and two separate
tests.
(erc-join-tests--autojoin-after-ident): New function.
(erc-autojoin-after-ident/server)
(erc-autojoin-after-ident/network): New tests.
(erc-join-tests--autojoin-add--common)
(erc-join-tests--autojoin-add): Rename former to latter.
(erc-autojoin-add--network)
(erc-autojoin-add--network-extended-syntax)
(erc-autojoin-add--network-id): Adjust arguments to fixture.
(erc-autojoin-add--server): Use common utils.
(erc-join-tests--autojoin-remove--common)
(erc-join-tests--autojoin-remove): Rename former to latter.
(erc-autojoin-remove--network)
(erc-autojoin-remove--network-id): Adjust args for fixture.
(erc-autojoin-remove--server): Use common utils.
* test/lisp/erc/erc-scenarios-join-timing.el: New file.
* test/lisp/erc/resources/erc-scenarios-common.el
(erc-scenarios-common--run-in-term): In subprocess, don't use failure
tally as exit status unless body form succeeds.
* test/lisp/erc/resources/erc-tests-common.el
(erc-tests-common-init-server-proc): Use `make-process' instead of
`start-process'.
(erc-tests-common-make-server-buf): Use `erc-server-current-nick' to
create the `erc-networks--id' as a `erc-networks--id-qualifying'
instance, which is more realistic than a "fixed" variant.
* test/lisp/erc/resources/join/timing/connect-both.eld: New file.
* test/lisp/erc/resources/join/timing/ident-both.eld: New file.
(Bug#79017)
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't round-trip auto-reconnect probe in ERC</title>
<updated>2025-04-17T00:30:13+00:00</updated>
<author>
<name>F. Jason Park</name>
</author>
<published>2025-04-09T06:17:21+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=c0cb59578b5aeb75b4856dda518d80cd015caa7d'/>
<id>c0cb59578b5aeb75b4856dda518d80cd015caa7d</id>
<content type='text'>
* lisp/erc/erc-backend.el (erc-server--reconnect-opened)
(erc--server-reconnect-opened): Rename former to latter.  Restore
original buffer-local value of session connector for Emacs 29 and below.
(erc--server-reconnect-timeout-check)
(erc--server-reconnect-timeout-scale-function): Change from buffer-local
to normal variables, which they should have been originally.
(erc--recon-probe-reschedule): Ensure `erc-server-reconnect-timeout' is
always non-nil to avoid seeing format specifier in admin message.  Use
current buffer when `proc' argument is nil.  Perform cleanup when `proc'
and `erc-server-process' differ.
(erc-server-delayed-check-reconnect-reuse-process-p): New variable.
(erc--recon-probe-sentinel): Run `erc--server-reconnect-opened'
immediately because sending a speculative PING doesn't work on all
servers and proxies, most crucially on ZNC, which replies with an error
only after an extended timeout.
(erc--recon-probe-filter): Remove unused function.
(erc--recon-probe-check) Rework to not use fixed periodic timer, change
second parameter to a Lisp time object.
(erc-server-delayed-check-reconnect): Use realistic name when reusing
process so that the session's process isn't "*erc-connectivity-check*".
Set filter to `ignore'.  Always run `erc--recon-probe-sentinel' when
status is `open' or something other than `connect', but don't bother
spawning a `erc--recon-probe-check' task as well because any problems
creating the process should already be known.  Handle quits during
connect functions that perform blocking I/O, such as
`socks-open-network-stream'.
(erc-schedule-reconnect): Don't bother setting filter to nil.
* test/lisp/erc/erc-scenarios-base-auto-recon.el
(erc-scenarios-base-auto-recon-unavailable)
(erc-scenarios-base-auto-recon-check/no-reuse): Rename former to latter.
(erc-scenarios-base-auto-recon-no-proto)
(erc-scenarios-base-auto-recon-check/reuse): Rename former to latter and
rewrite not to expect a PING.
* test/lisp/erc/resources/erc-d/erc-d.el (erc-d--forget-process): New
function.
(erc-d--process-sentinel): Stop serving when all dialogs have been
exhausted.  (Bug#62044)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lisp/erc/erc-backend.el (erc-server--reconnect-opened)
(erc--server-reconnect-opened): Rename former to latter.  Restore
original buffer-local value of session connector for Emacs 29 and below.
(erc--server-reconnect-timeout-check)
(erc--server-reconnect-timeout-scale-function): Change from buffer-local
to normal variables, which they should have been originally.
(erc--recon-probe-reschedule): Ensure `erc-server-reconnect-timeout' is
always non-nil to avoid seeing format specifier in admin message.  Use
current buffer when `proc' argument is nil.  Perform cleanup when `proc'
and `erc-server-process' differ.
(erc-server-delayed-check-reconnect-reuse-process-p): New variable.
(erc--recon-probe-sentinel): Run `erc--server-reconnect-opened'
immediately because sending a speculative PING doesn't work on all
servers and proxies, most crucially on ZNC, which replies with an error
only after an extended timeout.
(erc--recon-probe-filter): Remove unused function.
(erc--recon-probe-check) Rework to not use fixed periodic timer, change
second parameter to a Lisp time object.
(erc-server-delayed-check-reconnect): Use realistic name when reusing
process so that the session's process isn't "*erc-connectivity-check*".
Set filter to `ignore'.  Always run `erc--recon-probe-sentinel' when
status is `open' or something other than `connect', but don't bother
spawning a `erc--recon-probe-check' task as well because any problems
creating the process should already be known.  Handle quits during
connect functions that perform blocking I/O, such as
`socks-open-network-stream'.
(erc-schedule-reconnect): Don't bother setting filter to nil.
* test/lisp/erc/erc-scenarios-base-auto-recon.el
(erc-scenarios-base-auto-recon-unavailable)
(erc-scenarios-base-auto-recon-check/no-reuse): Rename former to latter.
(erc-scenarios-base-auto-recon-no-proto)
(erc-scenarios-base-auto-recon-check/reuse): Rename former to latter and
rewrite not to expect a PING.
* test/lisp/erc/resources/erc-d/erc-d.el (erc-d--forget-process): New
function.
(erc-d--process-sentinel): Stop serving when all dialogs have been
exhausted.  (Bug#62044)
</pre>
</div>
</content>
</entry>
</feed>
