Subject: Re: 28.0.91; rcirc failed to report disconnection

From: Ken Raeburn <[email-masked]>
Date: Tue, 15 Mar 2022 16:24:49 -0400

Some more observations:

I’ve had some more disconnections with no indications in the server or
channel buffers or mode lines that I was now disconnected.  (I’ve got
automatic reconnection disabled currently.)

I am using around-advice on the sentinel function to temporarily enable
debugging, so I do get the reason for the sentinel call logged, at
least.  Sometimes it’s “deleted”, sometimes it’s “connection broken by
remote peer”.

As a workaround, I can figure out using C-c C-n what state I’m in.  If
it fails with an error, I’m disconnected; if it returns no names, not
even my own, I’m connected but haven’t rejoined the current channel.  If
I get a list of names, things are okay.  But I have to think to check
explicitly.

I’ve tried using “/reconnect” in the server buffer and in the channel
buffer.  At least sometimes, if I use it in the channel buffer, the
status messages during session establishment go to the channel buffer
instead of the server buffer.  And it seems sort of haphazard whether I
automatically rejoin the various channels or not.

It occurred to me that I should try to see if there’s a correlation
between authentication strategy at session establishment and automatic
channel rejoining, but I haven’t recorded enough of the right info yet.

BTW, regarding authentication strategies, it would help if it were
documented (better?) when I should use a :password entry in
rcirc-server-alist, and when I should use rcirc-authinfo.  Better still,
I’d like it if .authinfo (or .authinfo.pgp, or some other method
intended for private storage) could be used to store the password
instead, regardless of the authentication strategy, instead of requiring
me to keep (parts of) my .emacs file private.

Ken