1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-07 15:21:46 +00:00

; Prepare to update ERC version to 5.5

* doc/misc/erc.texi: Mention in various places that ERC is also
available from GNU ELPA.
* etc/ERC-NEWS: Mention Compat dependency and shorten title for
auth-source section.
* lisp/erc/erc-backend.el: (erc-server-reconnect-function,
erc-tags-format): Update package version to 5.5.
(erc--parse-message-tags): Downcase warning "type" to remain
consistent with all other ERC warnings.
* lisp/erc/erc-button.el: (erc-button-alist): Change package-version
to 5.5.
* lisp/erc/erc-match.el (erc-match-quote-when-adding): Update package
version to 5.5.
* lisp/erc/erc-sasl.el: Mention actual info node in Commentary.
(erc-sasl): Update package version to 5.5.
(erc-sasl-password): Reword doc string.
(erc-sasl-auth-source-function): Capitalize "info" in doc string.
* lisp/erc/erc-services.el (erc-auth-source-services-function): Update
package version to 5.5.  Capitalize "info" in doc string.  Change
choice type from const to function-item.
* lisp/erc/erc.el (erc-password): Capitalize "info" in doc string.
(erc-inhibit-multiline-input, erc-ask-about-multiline-input,
erc-prompt-hidden, erc-hide-prompt, erc-unhide-query-prompt,
erc-join-buffer, erc-reconnect-display, erc-kill-server-hook,
erc-kill-channel-hook, erc-kill-buffer-hook,
erc-url-connect-function): Update package version to 5.5.
(erc-auth-source-server-function, erc-auth-source-join-function):
Update package version to 5.5.  Change choice type from const to
function-item.  Capitalize "info" in doc string.
(erc-tls): Capitalize "info" in doc string.
This commit is contained in:
F. Jason Park 2022-11-29 22:53:44 -08:00
parent 4f099a7217
commit 4eac80fcc3
8 changed files with 71 additions and 58 deletions

View File

@ -90,7 +90,8 @@ Advanced Usage
@chapter Introduction
ERC is a powerful, modular, and extensible IRC client for Emacs.
It is distributed with Emacs since version 22.1.
It has been included in Emacs since 2006 (@pxref{History}) and is also
available on GNU ELPA.
IRC is short for Internet Relay Chat. When using IRC, you can
communicate with other users on the same IRC network. There are many
@ -1463,6 +1464,7 @@ or if you have bugs to report, there are several places you can go.
@item
@uref{https://www.emacswiki.org/emacs/ERC} is the
emacswiki.org page for ERC@. Anyone may add tips, hints, etc.@: to it.
If you do so, please help keep it up to date.
@item
You can ask questions about using ERC on the Emacs mailing list,
@ -1471,7 +1473,13 @@ You can ask questions about using ERC on the Emacs mailing list,
@item
You can visit the IRC Libera.Chat channel @samp{#emacs}. Many of the
contributors are frequently around and willing to answer your
questions.
questions. You can also try the relatively quiet @samp{#erc}, on the
same network, for more involved questions.
@item
You can check GNU ELPA between Emacs releases to see if a newer
version is available that might contain a fix for your issue:
@uref{https://elpa.gnu.org/packages/erc.html}.
@item
To report a bug in ERC, use @kbd{M-x erc-bug}.

View File

@ -47,18 +47,18 @@ From now on, only the most essential operations will be officially
supported in its absence, and users will see a warning upon
entry-point invocation when it's not present.
** Tighter auth-source integration with bigger changes on the horizon.
** Tighter auth-source integration.
The days of hit-and-miss auth-source queries are hopefully behind us.
With the overhaul of the services module temporarily shelved and the
transition to SASL-based authentication still underway, users may feel
left in the lurch to endure yet another release cycle of backtick
hell. For some, auth-source may provide a workaround in the form of
nonstandard server passwords. See the section titled "auth-source" in
the Integrations chapter of ERC's manual.
nonstandard server passwords. See the section entitled "auth-source"
in the Integrations chapter of ERC's manual.
** Rudimentary SASL support has arrived.
A new module, 'erc-sasl', now ships with ERC 5.5. See the SASL
section in the manual for details.
A new module, 'erc-sasl', now ships with ERC. See Info node "(erc)
SASL" in the manual for details.
** Username argument for entry-point commands.
Commands 'erc' and 'erc-tls' now accept a ':user' keyword argument,
@ -88,8 +88,8 @@ off by default, new users are encouraged to enable them.
Clicking on 'irc://' and 'ircs://' links elsewhere in Emacs now does
the right thing most of the time. However, for security reasons,
users are now prompted to confirm connection parameters prior to lift
off. See the new '(erc) Integrations' section in the Info manual to
override this.
off. See the new '(erc) Integrations' section in the Info manual for
details.
** Miscellaneous behavioral changes impacting the user experience.
A bug has been fixed that saw prompts being mangled, doubled, or
@ -117,6 +117,12 @@ file called erc-common.el. This was done to further lessen the
various complications arising from the mutual dependency between 'erc'
and 'erc-backend'.
ERC now relies on the Compat library from GNU ELPA to supply forward
compatibility shims for users running older versions of Emacs. The
required Compat version resides atop ERC's main library file, in the
'Package-Requires' header. Third-party ERC modules will benefit
automatically from this adoption.
The function 'erc-network' always returns non-nil in server and target
buffers belonging to a successfully established IRC connection, even
after that connection has been closed. (Also see the note in the

View File

@ -425,7 +425,7 @@ Called with a server buffer as its only argument. Potential uses
include exponential backoff and probing for connectivity prior to
dialing. Use `erc-schedule-reconnect' to instead try again later
and optionally alter the attempts tally."
:package-version '(ERC . "5.4.1") ; FIXME on next release
:package-version '(ERC . "5.5")
:type '(choice (function-item erc-server-delayed-reconnect)
function))
@ -1167,7 +1167,7 @@ Note that future bundled modules providing IRCv3 functionality
will not be compatible with the legacy format. User code should
eventually transition to expecting this \"5.5+ variant\" and set
this option to nil."
:package-version '(ERC . "5.4.1") ; FIXME increment on next release
:package-version '(ERC . "5.5")
:type '(choice (const nil)
(const legacy)
(const overridable)))
@ -1201,7 +1201,7 @@ instead, leave them as a single string."
(get 'erc-parse-tags 'erc-v3-warned-p))
(put 'erc-parse-tags 'erc-v3-warned-p t)
(display-warning
'ERC
'erc
(concat
"Legacy ERC tags behavior is currently in effect, but other modules,"
" including those bundled with ERC, may override this in future"

View File

@ -176,7 +176,7 @@ PAR is a number of a regexp grouping whose text will be passed to
CALLBACK. There can be several PAR arguments. If REGEXP is
`nicknames', these are ignored, and CALLBACK will be called with
the nickname matched as the argument."
:version "29.1"
:package-version '(ERC . "5.5")
:type '(repeat
(list :tag "Button"
(choice :tag "Matches"

View File

@ -244,7 +244,7 @@ server and other miscellaneous functions."
"Whether to `regexp-quote' when adding to a match list interactively.
When the value is a boolean, the opposite behavior will be made
available via universal argument."
:package-version '(ERC . "5.4.1") ; FIXME increment on next release
:package-version '(ERC . "5.5")
:type '(choice (const ask)
(const t)
(const nil)))

View File

@ -24,13 +24,13 @@
;;
;; https://lists.gnu.org/archive/html/erc-discuss/2012-02/msg00001.html
;;
;; See options and Info manual for usage.
;; See M-x customize-group RET erc-sasl RET and (info "(erc) SASL")
;; for usage.
;;
;; TODO:
;;
;; - Find a way to obfuscate the password in memory (via something
;; like `auth-source--obfuscate'); it's currently visible in
;; backtraces.
;; - Obfuscate non-auth-source passwords in memory. They're currently
;; visible in backtraces.
;;
;; - Implement a proxy mechanism that chooses the strongest available
;; mechanism for you. Requires CAP 3.2 (see bug#49860).
@ -52,7 +52,7 @@
(defgroup erc-sasl nil
"SASL for ERC."
:group 'erc
:package-version '(ERC . "5.4.1")) ; FIXME increment on next release
:package-version '(ERC . "5.5"))
(defcustom erc-sasl-mechanism 'plain
"SASL mechanism to connect with.
@ -76,19 +76,19 @@ commands, `erc' and `erc-tls'."
(defcustom erc-sasl-password :password
"Optional account password to send when authenticating.
When `erc-sasl-auth-source-function' is a function, ERC will
attempt an auth-source query and prompt for input if it fails.
Otherwise, when the value is a nonempty string, ERC will use it
unconditionally for most mechanisms. Likewise with `:password',
except ERC will instead use the \"session password\" on file, if
any, which often originates from the entry-point commands `erc'
or `erc-tls'. As with auth-source, ERC will prompt for input as
a fallback.
When `erc-sasl-auth-source-function' is a function, ERC attempts
an auth-source query and prompts for input if it fails.
Otherwise, when the value of this option is a nonempty string,
ERC uses it unconditionally for most mechanisms. Likewise with a
value of `:password', except ERC instead uses the \"session
password\" on file, if any, which often originates from the
entry-point commands `erc' or `erc-tls'. As with auth-source,
ERC prompts for input as a fallback.
Note that, with `:password', ERC will forgo sending a traditional
Note that, with `:password', ERC forgoes sending a traditional
server password via the IRC \"PASS\" command. Also, when
`erc-sasl-mechanism' is set to `ecdsa-nist256p-challenge', this
option should hold the file name of the key."
`erc-sasl-mechanism' is set to `ecdsa-nist256p-challenge', ERC
expects this option to hold the file name of the key."
:type '(choice (const nil) (const :password) string symbol))
(defcustom erc-sasl-auth-source-function nil
@ -100,9 +100,8 @@ though ERC itself only specifies `:user' paired with a
ERC binds all options defined in this library, such as
`erc-sasl-password', to their values from entry-point invocation.
In return, ERC expects a string to send as the SASL password, or
nil, in which case, ERC will prompt the for input. See info
node `(erc) auth-source' for details on ERC's auth-source
integration."
nil, in which case, ERC prompts for input. See Info node `(erc)
auth-source' for details on ERC's auth-source integration."
:type '(choice (function-item erc-sasl-auth-source-password-as-host)
(function-item erc-auth-source-search)
(const nil)

View File

@ -180,9 +180,9 @@ Called with a subset of keyword parameters known to
`auth-source-search' and relevant to authenticating to nickname
services. In return, ERC expects a string to send as the
password, or nil, to fall through to the next method, such as
prompting. See info node `(erc) auth-source' for details."
:package-version '(ERC . "5.4.1") ; FIXME update when publishing to ELPA
:type '(choice (const erc-auth-source-search)
prompting. See Info node `(erc) auth-source' for details."
:package-version '(ERC . "5.5")
:type '(choice (function-item erc-auth-source-search)
(const nil)
function))

View File

@ -217,8 +217,8 @@ parameters and authentication."
This variable only exists for legacy reasons. It's not customizable and
is limited to a single server password. Users looking for similar
functionality should consider auth-source instead. See info
node `(auth) Top' and info node `(erc) auth-source'.")
functionality should consider auth-source instead. See Info
node `(auth) Top' and Info node `(erc) auth-source'.")
(make-obsolete-variable 'erc-password "use auth-source instead" "29.1")
@ -250,19 +250,19 @@ node `(auth) Top' and info node `(erc) auth-source'.")
Issue an error when the number of input lines submitted for
sending exceeds this value. The value t means disallow more
than 1 line of input."
:package-version '(ERC . "5.4.1") ; FIXME match to next release
:package-version '(ERC . "5.5")
:group 'erc
:type '(choice integer boolean))
(defcustom erc-ask-about-multiline-input nil
"Whether to ask to ignore `erc-inhibit-multiline-input' when tripped."
:package-version '(ERC . "5.4.1") ; FIXME match to next release
:package-version '(ERC . "5.5")
:group 'erc
:type 'boolean)
(defcustom erc-prompt-hidden ">"
"Text to show in lieu of the prompt when hidden."
:package-version '(ERC . "5.4.1") ; FIXME increment on next ELPA release
:package-version '(ERC . "5.5")
:group 'erc-display
:type 'string)
@ -272,7 +272,7 @@ To unhide, type something in the input area. Once revealed, a
prompt remains unhidden until the next disconnection. Channel
prompts are unhidden upon rejoining. See
`erc-unhide-query-prompt' for behavior concerning query prompts."
:package-version '(ERC . "5.4.1") ; FIXME increment on next ELPA release
:package-version '(ERC . "5.5")
:group 'erc-display
:type '(choice (const :tag "Always hide prompt" t)
(set (const server)
@ -284,7 +284,7 @@ prompts are unhidden upon rejoining. See
Otherwise, prompts in a connection's query buffers remain hidden
until the user types in the input area or a new message arrives
from the target."
:package-version '(ERC . "5.4.1") ; FIXME increment on next ELPA release
:package-version '(ERC . "5.5")
:group 'erc-display
;; Extensions may one day offer a way to discover whether a target
;; is online. When that happens, this can be expanded accordingly.
@ -1479,7 +1479,7 @@ The available choices are:
`bury' - bury it in a new buffer,
`buffer' - in place of the current buffer,
any other value - in place of the current buffer."
:package-version '(ERC . "5.4.1") ; FIXME increment upon publishing to ELPA
:package-version '(ERC . "5.5")
:group 'erc-buffers
:type '(choice (const :tag "Split window and select" window)
(const :tag "Split window, don't select" window-noselect)
@ -1495,7 +1495,7 @@ This only affects automatic reconnections and is ignored when
issuing a /reconnect command or reinvoking `erc-tls' with the
same args (assuming success, of course). See `erc-join-buffer'
for a description of possible values."
:package-version '(ERC . "5.4.1") ; FIXME increment upon publishing to ELPA
:package-version '(ERC . "5.5")
:group 'erc-buffers
:type '(choice (const :tag "Use value of `erc-join-buffer'" nil)
(const :tag "Split window and select" window)
@ -2319,7 +2319,7 @@ Example usage:
When present, ID should be a symbol or a string to use for naming
the server buffer and identifying the connection unequivocally.
See info node `(erc) Network Identifier' for details. Like USER
See Info node `(erc) Network Identifier' for details. Like USER
and CLIENT-CERTIFICATE, this parameter cannot be specified
interactively."
(interactive (let ((erc-default-port erc-default-port-tls))
@ -3258,10 +3258,10 @@ if any. In return, ERC expects a string to send as the server
password, or nil, to skip the \"PASS\" command completely. An
explicit `:password' argument to entry-point commands `erc' and
`erc-tls' also inhibits lookup, as does setting this option to
nil. See info node `(erc) auth-source' for details."
:package-version '(ERC . "5.4.1") ; FIXME update when publishing to ELPA
nil. See Info node `(erc) auth-source' for details."
:package-version '(ERC . "5.5")
:group 'erc
:type '(choice (const erc-auth-source-search)
:type '(choice (function-item erc-auth-source-search)
(const nil)
function))
@ -3272,11 +3272,11 @@ Called with a subset of keyword arguments known to
channel. In return, ERC expects a string to use as the channel
\"key\", or nil to just join the channel normally. Setting the
option itself to nil tells ERC to always forgo consulting
auth-source for channel keys. For more information, see info
auth-source for channel keys. For more information, see Info
node `(erc) auth-source'."
:package-version '(ERC . "5.4.1") ; FIXME update when publishing to ELPA
:package-version '(ERC . "5.5")
:group 'erc
:type '(choice (const erc-auth-source-search)
:type '(choice (function-item erc-auth-source-search)
(const nil)
function))
@ -6837,8 +6837,8 @@ shortened server name instead."
;; erc-goodies is required at end of this file.
;; FIXME when 29.1 is cut and `format-spec' is added to ELPA Compat,
;; remove the function invocations from the spec form below.
;; TODO when ERC drops Emacs 28, replace the expressions in the format
;; spec below with functions.
(defun erc-update-mode-line-buffer (buffer)
"Update the mode line in a single ERC buffer BUFFER."
(with-current-buffer buffer
@ -7213,7 +7213,7 @@ See also `format-spec'."
(defcustom erc-kill-server-hook '(erc-kill-server
erc-networks-shrink-ids-and-buffer-names)
"Invoked whenever a live server buffer is killed via `kill-buffer'."
:package-version '(ERC . "5.4.1") ; FIXME increment upon publishing to ELPA
:package-version '(ERC . "5.5")
:group 'erc-hooks
:type 'hook)
@ -7222,7 +7222,7 @@ See also `format-spec'."
erc-networks-shrink-ids-and-buffer-names
erc-networks-rename-surviving-target-buffer)
"Invoked whenever a channel-buffer is killed via `kill-buffer'."
:package-version '(ERC . "5.4.1") ; FIXME increment upon publishing to ELPA
:package-version '(ERC . "5.5")
:group 'erc-hooks
:type 'hook)
@ -7232,7 +7232,7 @@ See also `format-spec'."
"Hook run whenever a query buffer is killed.
See also `kill-buffer'."
:package-version '(ERC . "5.4.1") ; FIXME increment upon publishing to ELPA
:package-version '(ERC . "5.5")
:group 'erc-hooks
:type 'hook)
@ -7311,7 +7311,7 @@ Called with a string meant to represent a URL scheme, like
\"ircs\", followed by any number of keyword arguments recognized
by `erc' and `erc-tls'."
:group 'erc
:package-version '(ERC . "5.4.1") ; FIXME increment on release
:package-version '(ERC . "5.5")
:type '(choice (const nil) function))
(defun erc--url-default-connect-function (scheme &rest plist)