Bug 400362 - Add a note stating that identifying with nickserv may result in failures when auto-joining
Summary: Add a note stating that identifying with nickserv may result in failures when...
Status: RESOLVED FIXED
Alias: None
Product: konversation
Classification: Applications
Component: general (show other bugs)
Version: 1.7.5
Platform: Other Linux
: NOR wishlist
Target Milestone: ---
Assignee: Konversation Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-10-27 11:57 UTC by Luca Carlon
Modified: 2020-03-29 06:45 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Luca Carlon 2018-10-27 11:57:47 UTC
SUMMARY
I read some reports about the race condition that occurs when nickserv is used for identification and join requests are sent before identification succeeds: #397576, #382924... I also read that this is somehow the "intended" behavior.
Why not adding a red note in the "Identities" dialog, shown when "nickserv" is selected, stating that this type of identification may make it impossible to auto-join properly? Also, maybe, why not suggesting to use SASL, which seems to work perfectly? This little text may spare hours of time to a user not experienced with the IRC protocol like me.

STEPS TO REPRODUCE
1. In the identities dialog, select "Standard NickServ".
2. Join a channel and set auto-join.
3. Restart konversation.

OBSERVED RESULT
When channels require identification, join may fail.

EXPECTED RESULT
I'm suggesting to simply add a little static test, to be shown when "Standard NickServ" is selected, stating that auto-join may not work reliably in this configuration. This may prevent duplicated bugreports and waste of time looking for the proper reason/solution, which seems to be considerably simple.

SOFTWARE VERSIONS
(available in About System)
KDE Plasma Version: 5.13.5
KDE Frameworks Version: 5.50.0
Qt Version: 5.11.1
Comment 1 Thiago Sueto 2019-06-10 19:00:36 UTC
I agree. But in this case, it would make more sense to simply set Plain SASL as default and Nickserv as an option.

It's kind of misleading to have a settings group called Auto Identify that doesn't reliably auto-identifies every time. This might lead the user to think they did something wrong or that Konversation is to blame for the auto-login not working as expected.
Comment 2 Luca Carlon 2019-08-14 01:23:28 UTC
I agree that the default method should not be one that is known to be unreliable. And does it make sense to keep an unreliable method? If it does, should we anyway put a note stating it is unreliable?
Comment 3 riku.seppala 2019-09-03 16:20:34 UTC
when "Standard NickServ" is selected and you have set the password, why can't Konversation wait for the "[Notice] -NickServ- You are now identified for..." and only then run auto-join?
Comment 4 Christian (Fuchs) 2019-09-03 16:56:29 UTC
(In reply to riku.seppala from comment #3)
> when "Standard NickServ" is selected and you have set the password, why
> can't Konversation wait for the "[Notice] -NickServ- You are now identified
> for..." and only then run auto-join?

Because that is not standardized and will fail on various networks.

Setting SASL as a default is a good idea, since these days most networks support it, but note that not all do.
Comment 5 Luca Carlon 2019-09-03 17:16:30 UTC
I suspected that. Thanks for explaining.
What about my first proposal: adding a simple note explaining the situation to the user, maybe suggesting SASL? It took me hours to understand why that was happening to me and that a solution was one click away :-)
Comment 6 Timur Tabi 2020-03-24 17:29:02 UTC
How about adding an optional delay for auto-join?  Sure it's a hack, but it's an easy feature to add and if it works for 90+% of the users, that's a huge improvement.

I was about to file a bug that autojoin doesn't work when I just happened to see this report.
Comment 7 Christian Christiansen 2020-03-25 06:42:18 UTC
I was frustrated by the same issue and was contemplating switching to another IRC client. It was only after I found this bug report that I was able to resolve the issue. I believe either of the amendments suggested by Luca and Timur would be preferable to the status quo.
Comment 8 Timur Tabi 2020-03-25 09:39:39 UTC
I had to stop using Konversation and switched to X-Chat because Konversataion was causing my Ubuntu desktop to crash.  I couldn't open any apps.  So at this point, I don't really care any more if this bug is fixed.
Comment 9 Christian (Fuchs) 2020-03-25 16:59:57 UTC
Perosnally I'd prefer making SASL the default, or if that can't be done for whatever reason, add the note. 

Adding a delay is a bad workaround which will fail under various circumstances, is highly unreliable and that when there is a working solution (SASL) available on most networks. So I'd oppose that workaround and use a proper solution (default to SASL, add note if can't be done) instead.
Comment 10 Peter Simonsson 2020-03-29 06:45:16 UTC
Git commit 74f707e2532d598ee616a9b288a0ee22d43630fb by Peter Simonsson, on behalf of Christian Christiansen.
Committed on 29/03/2020 at 06:45.
Pushed by psn into branch 'master'.

Changed default auto join from NickServ to SASL.

Summary:
NickServ often doesn't function well with auto join, so changed
default to SASL PLAIN. Included message for NickServ, recommending
SASL.
Related: bug 397576, bug 382924

Reviewers: #konversation, psn

Reviewed By: #konversation, psn

Subscribers: psn, #konversation

Tags: #konversation

Differential Revision: https://phabricator.kde.org/D28329

M  +1    -1    src/identity.cpp
M  +5    -3    src/identitydialog.cpp

https://commits.kde.org/konversation/74f707e2532d598ee616a9b288a0ee22d43630fb