unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: "J.P." <jp@neverwas.me>
To: 48598@debbugs.gnu.org
Cc: Kevin Brubeck Unhammer <unhammer@fsfe.org>, emacs-erc@gnu.org
Subject: bug#48598: 28.0.50; buffer-naming collisions involving bouncers in ERC
Date: Wed, 02 Jun 2021 04:19:32 -0700	[thread overview]
Message-ID: <87o8coa4zf.fsf__31025.2579789207$1622632817$gmane$org@neverwas.me> (raw)
In-Reply-To: <875yzakzvi.fsf@neverwas.me>

Hi, this is just a routine update/checkpoint rather than a bump for
feedback.

I fear that in the rush to cobble together my original report, I may
have given the false impression I was prepared to move quickly on this.
And that in turn may have triggered some frustration with folks eager
for a fix or at least something test drivable amid the mass exodus from
Freenode. For any callousness on my part re over-promising and
under-delivering, please accept my apologies.

Firstly, I wanted to highlight some prior art done in this area by Kevin
(CC'd), who contacted me out of band. I've incorporated their latest
update to erc-join.el in my proposed WIP patch set. It's based on these
discussions [1].

My other changes primarily focus on implementing what I'd only
previously provided half-baked placeholders for, namely

  1. Network-based connection identities

  2. Support for identical channel and query targets across networks

Other changes are more or less minor tweaks, most reflecting shifts in
my understanding of the living standard [2] and/or the library itself
[3][4].

If I can sign off with an appeal to any and all interested folks: please
step up and collaborate on this bug, even if that means my having to
pass the baton or redo much of what's currently on offer. Thanks.


Notes
~~~~~

[1] https://lists.gnu.org/archive/html/emacs-devel/2015-03/msg00088.html

    https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00664.html

[2] Correction: in my original report, I mentioned possible problems
    with case mapping in ERC. After seeking out more informed opinions
    on the matter, I no longer feel my concerns were entirely justified.
    And in any case, they're not worth prioritizing, ATM.

[3] Re my (perhaps wanton) deletion throughout the library of existing
    fallback-oriented logic for selecting connection identities.

    Currently, there's a lot of attention paid to graceful degradation
    in this department with questionable obvious benefit, IMO. Rather
    than splitting hairs over inferior/degenerate fallbacks, which ends
    up, for example, sewing confusion by shoehorning something like
    erc-session-server (the dialed address) into a value basically meant
    for networks, why not just opt for precision and blow up when met
    with lapses in our understanding of IRC (in hopes of encouraging
    quicker, cleaner fixes in the future)?

    In the discussion for bug#23438 "24.5; ERC autojoin should use
    erc-autojoin-domain-only searching channel keys" (which merged with
    bug#25349 "25.1.90; erc join -vs- passwords" and led to a patch),
    the participants make this problem pretty plain:

    > Nikolay Kudryavtsev <nikolay.kudryavtsev@gmail.com> writes:

    >> Though one thing - I'm not sure whether you even need to use "or"
    >> here. Would there ever be a case where erc-session-server is nil,
    >> but there is erc-server-announced-name?

    > I don't actually know, so I just swapped them out of paranoia.

    Not to pick on these fine folks (this kind of equivocal reasoning in
    this specific area predates their bug by a decade plus). But going
    forward, I think it makes sense to at least note such uncertainty in
    the code if not face it head on by dropping this convention of
    indiscriminately relying on fallbacks. Worst case scenario: our lack
    of IRC know how is betrayed (at everyone's expense, temporarily) and
    we're forced to up our game.

    With this set of WIP patches, I'm trying to somewhat upend this
    "fallback" trend by making a de facto hard dependency of the
    networks module (library wide) and delegating to it all duties
    concerned with identifying a specific connection.

    BTW, their bug itself was of course legitimate, but their solution
    didn't account for proxies (e.g., "localhost") or the concept of a
    network, really.

[4] To any old timers still using this client: if you would be so kind
    as to explain the reasoning behind erc-default-recipients being a
    list rather than a single target, that'd be terrific (TIA).





  reply	other threads:[~2021-06-02 11:19 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-23  1:22 28.0.50; buffer-naming collisions involving bouncers in ERC J.P.
2021-06-02 11:19 ` J.P. [this message]
2021-06-09 14:36 ` Olivier Certner
2021-06-10 14:36   ` bug#48598: " J.P.
2021-06-19  3:04 ` J.P.
2021-06-25 13:18 ` J.P.
     [not found] ` <87r1gqaxqf.fsf@neverwas.me>
2021-06-28  7:58   ` Olivier Certner
2021-10-16 21:15   ` Daniel Fleischer
2021-10-16 23:21     ` J.P.
     [not found]     ` <87o87ofte1.fsf@neverwas.me>
2021-11-11  5:24       ` Lars Ingebrigtsen
     [not found]       ` <8735o39sdg.fsf@gnus.org>
2021-11-11 10:27         ` J.P.
     [not found]         ` <87pmr77zsa.fsf@neverwas.me>
2021-11-11 12:08           ` Lars Ingebrigtsen
     [not found]           ` <87a6ia7v47.fsf@gnus.org>
2021-11-11 15:13             ` J.P.
2021-09-04 16:46 ` bug#48598: Strange ERC/ZNC Bug/Problem acdw
2021-09-07 21:38 ` J.P.
2021-09-10 12:43 ` bug#48598: Duplicate messages from bouncers on 27 and earlier J.P.
2021-11-11 15:15 ` bug#48598: 28.0.50; buffer-naming collisions involving bouncers in ERC J.P.
2022-03-14 13:08 ` J.P.
2022-04-09 21:14 ` bug#48598: Questions regarding layout and composition of tests (bug#48598) J.P.
2022-04-09 21:22 ` bug#48598: Questions regarding auth-source integration (bug#48598) J.P.
     [not found] ` <87leweez89.fsf@neverwas.me>
2022-04-10 12:49   ` bug#48598: Questions regarding layout and composition of tests (bug#48598) Lars Ingebrigtsen
     [not found]   ` <87fsmlp0gy.fsf@gnus.org>
2022-04-11  7:59     ` bug#48598: 28.0.50; buffer-naming collisions involving bouncers in ERC Michael Albinus
     [not found]     ` <878rsc2gp5.fsf_-_@gmx.de>
2022-04-11 10:21       ` Lars Ingebrigtsen
     [not found]       ` <878rsbdipd.fsf@gnus.org>
2022-04-11 13:29         ` J.P.
2022-04-11 15:34           ` Lars Ingebrigtsen
2022-04-12  7:50           ` Michael Albinus
     [not found]           ` <87sfqi2119.fsf@gmx.de>
2022-04-15 13:02             ` J.P.
     [not found]             ` <87v8vah54l.fsf@neverwas.me>
2022-04-15 15:05               ` Michael Albinus
     [not found]               ` <87h76ucrq4.fsf@gmx.de>
2022-04-16  1:12                 ` J.P.
     [not found]                 ` <87h76tde5k.fsf@neverwas.me>
2022-04-17  8:25                   ` Michael Albinus
     [not found]                   ` <87czhgce1s.fsf@gmx.de>
2022-04-18 14:30                     ` J.P.
     [not found]                     ` <871qxucvls.fsf@neverwas.me>
2022-04-18 16:43                       ` Michael Albinus
     [not found]                       ` <87o80ybauv.fsf@gmx.de>
2022-04-21 13:28                         ` J.P.
     [not found]                         ` <87pmlao9ax.fsf@neverwas.me>
2022-04-22  8:54                           ` Michael Albinus
     [not found] ` <87bkxaeyuw.fsf@neverwas.me>
2022-04-18 13:26   ` bug#48598: Questions regarding auth-source integration (bug#48598) Damien Cassou
2022-04-18 14:24     ` J.P.
     [not found]     ` <87ee1ucvv3.fsf@neverwas.me>
2022-04-18 15:24       ` Damien Cassou
2022-04-18 16:52         ` Michael Albinus
     [not found]         ` <87k0bmbage.fsf@gmx.de>
2022-04-20 14:12           ` J.P.
     [not found]           ` <878rrz268v.fsf@neverwas.me>
2022-04-21  7:08             ` bug#48598: 28.0.50; buffer-naming collisions involving bouncers in ERC Michael Albinus
     [not found]             ` <87czha3oc5.fsf_-_@gmx.de>
2022-04-21 13:21               ` J.P.
     [not found]               ` <87v8v2o9l4.fsf@neverwas.me>
2022-04-22  9:29                 ` Michael Albinus
     [not found]                 ` <87k0bh31pt.fsf@gmx.de>
2022-04-22 14:24                   ` J.P.
     [not found]                   ` <8735i5nql8.fsf@neverwas.me>
2022-04-23  9:47                     ` Michael Albinus
     [not found]                     ` <87bkws2ksn.fsf@gmx.de>
2022-04-25 12:05                       ` J.P.
     [not found]                       ` <87czh5z7ui.fsf@neverwas.me>
2022-04-27 12:28                         ` Michael Albinus
     [not found]                         ` <874k2epv5n.fsf@gmx.de>
2022-04-28  8:08                           ` Michael Albinus
     [not found]                           ` <87levpmxz1.fsf@gmx.de>
2022-04-28  8:13                             ` Michael Albinus
2022-04-29 13:03                           ` J.P.
2022-05-25 19:29 ` J.P.
2022-05-26  5:17   ` J.P.

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='87o8coa4zf.fsf__31025.2579789207$1622632817$gmane$org@neverwas.me' \
    --to=jp@neverwas.me \
    --cc=48598@debbugs.gnu.org \
    --cc=emacs-erc@gnu.org \
    --cc=unhammer@fsfe.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).