diff options
| author | F. Jason Park | 2022-12-25 21:36:53 -0800 |
|---|---|---|
| committer | F. Jason Park | 2022-12-28 06:51:38 -0800 |
| commit | 2ddc480f4417775d6bf8ebcfc27b8cd7fa761a7d (patch) | |
| tree | c37c55716af7350cd74f3cac577dc9ccd96be8d4 /doc/misc | |
| parent | 19d00fab9aaf28dae6af5786f6e22b8558b10eea (diff) | |
| download | emacs-2ddc480f4417775d6bf8ebcfc27b8cd7fa761a7d.tar.gz emacs-2ddc480f4417775d6bf8ebcfc27b8cd7fa761a7d.zip | |
Warn of absent networks module in ERC
* doc/misc/erc.texi: Add linkable note in Modules chapter about some
modules being required. Also tweak markup in auth-source section.
* etc/ERC-NEWS: Mention the special role of `networks'.
* lisp/erc/erc-backend.el (erc--server-post-connect-hook): Add
internal hook for core modules to perform post-network-process,
pre-protocol config validation even when they haven't been loaded.
(erc--register-connection): Run `erc--server-post-connect-hook'.
* lisp/erc/erc-networks.el (erc-networks--bouncer-targets,
erc-networks-on-MOTD-end): Fix comments and doc strings. Also change
former from constant to internal variable in case adjustment needed
between releases.
(erc-networks--warn-on-connect): New function to warn about the
`networks' module being absent from `erc-modules'. This could
probably run at any time up to and including when the logical IRC
connection is established, but doing so at the process/protocol
boundary seems ideal.
* lisp/erc/erc-sasl.el (erc--register-connection): Defer to base
method instead of calling `erc-login' explicitly.
* lisp/erc/erc.el (erc-generate-new-buffer-name): Don't reconcile
buffer names when networks module not in play.
(erc-format-target-and/or-network): Don't assume networks module
loaded.
* test/lisp/erc/erc-scenarios-base-unstable.el:
(erc-scenarios-networks-no-module): New test.
* test/lisp/erc/resources/networks/no-module/basic.eld: New test data
file. (Bug#60331.)
Diffstat (limited to 'doc/misc')
| -rw-r--r-- | doc/misc/erc.texi | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/doc/misc/erc.texi b/doc/misc/erc.texi index 2ab2e908940..249b58c73d8 100644 --- a/doc/misc/erc.texi +++ b/doc/misc/erc.texi | |||
| @@ -529,6 +529,16 @@ Translate morse code in messages | |||
| 529 | 529 | ||
| 530 | @end table | 530 | @end table |
| 531 | 531 | ||
| 532 | @anchor{Required Modules} | ||
| 533 | @subheading Required Modules | ||
| 534 | @cindex required modules | ||
| 535 | |||
| 536 | Note that some modules are essential to core IRC operations and thus | ||
| 537 | not listed above. You can nevertheless still remove these, but doing | ||
| 538 | so demands special precautions to avoid degrading the user experience. | ||
| 539 | At present, the only such module is @code{networks}, whose library ERC | ||
| 540 | always loads anyway. | ||
| 541 | |||
| 532 | @subheading Local Modules | 542 | @subheading Local Modules |
| 533 | @cindex local modules | 543 | @cindex local modules |
| 534 | 544 | ||
| @@ -1290,7 +1300,7 @@ When preparing entries for your backend, it may help to get a feel for | |||
| 1290 | how ERC and its modules conduct searches, especially when exploring a | 1300 | how ERC and its modules conduct searches, especially when exploring a |
| 1291 | new context, such as channel keys. (Hint: in such situations, try | 1301 | new context, such as channel keys. (Hint: in such situations, try |
| 1292 | temporarily setting the variable @code{auth-source-debug} to @code{t} | 1302 | temporarily setting the variable @code{auth-source-debug} to @code{t} |
| 1293 | and checking @samp{*Messages*} periodically for insights into how | 1303 | and checking @file{*Messages*} periodically for insights into how |
| 1294 | auth-source is operating.) Overall, though, ERC tries to be | 1304 | auth-source is operating.) Overall, though, ERC tries to be |
| 1295 | consistent in performing queries across various authentication | 1305 | consistent in performing queries across various authentication |
| 1296 | contexts. Here's what to expect with respect to the @samp{host} | 1306 | contexts. Here's what to expect with respect to the @samp{host} |