Page MenuHomePhabricator

Drop current implementation of botirc.IRCBot
Closed, ResolvedPublic

Description

botirc.IRCBot was converted from compat where it was used by articlenos.py.

The current implementation isn't usable anymore because the irclib was moved 6 years ago and articlenos.py was never ported to core. In addition with eventstreams we have a better implementation for recent changes stream.

Maybe we can reuse this IRCBot class for a more generic IRCBot.

Event Timeline

My tests today revealed, that IRCBot doesn't fail for syntax errors, which is weird, because it clearly contains some.

I played a bit with it few months ago and didn't found any advantage to derive the the IRCBot from pywikibot.Bot. I don't know what script_wui is doing with it. There are no other applications using it. Maybe operators may use is with their own script but I feel our implementation is to special than it is very usefull.

Btw stewardBot is and articlenos.py was using SingleServerIRCBot directly.

The intention noted in the script:

# Note: the intention is to develop this module (at some point) into a Bot
# class definition that can be subclassed to create new, functional bot
# scripts, instead of writing each one from scratch.

is to vague and I have no glue, in which direction this development can lead.
That library was not mainainted for 6 years if ever.

After dropping script_wui I propose to drop this framework script too.
Maybe the needed parts can be moved to the deprecated script_wui.

Change 481338 had a related patch set uploaded (by Xqt; owner: Xqt):
[pywikibot/core@master] [bugfix] Drop botirc.py library part

https://gerrit.wikimedia.org/r/481338

As it can be replaced by eventstreams and is not used anywhere else, I agree to deprecate it.

Change 509039 had a related patch set uploaded (by Dvorapa; owner: Dvorapa):
[pywikibot/core@master] [IMPR] Switch script_wui to EventStreams

https://gerrit.wikimedia.org/r/509039

Change 509039 abandoned by Dvorapa:
[IMPR] Switch script_wui to EventStreams

Reason:
I changed my mind. This can use botirc and together with botirc can be removed after some time as standard deprecation routine

https://gerrit.wikimedia.org/r/509039

Change 481338 merged by jenkins-bot:
[pywikibot/core@master] [bugfix] Drop botirc.py library part

https://gerrit.wikimedia.org/r/481338

Dvorapa claimed this task.

botirc dropped successfully, irc library or EventStreams can be used instead

Change 563664 had a related patch set uploaded (by Xqt; owner: Xqt):
[pywikibot/core@master] [cleanup] Remove deprecated botirc.py lib as announced in HISTORY.rst

https://gerrit.wikimedia.org/r/563664

Change 563664 merged by jenkins-bot:
[pywikibot/core@master] [cleanup] Remove deprecated botirc.py lib as announced in HISTORY.rst

https://gerrit.wikimedia.org/r/563664