[Sugar-devel] IRC Activity fixes

Michał Poczwardowski dmp0x7c5 at gmail.com
Sat Apr 20 15:34:26 EDT 2013


Hello Aneesh,

Thanks for your feedback! Your list of most important features will be
really helpful during proposal writing.

Before I start to prepare my proposal, I'll try to research available
python IRC libraries. Note that mtime means last code modification in
this case:

pyirclib[1] - Whole implementation using 600 lines in single file.
It's blocking and with not so many features (mtime: 2002-07-14).

python-irclib[2] - Supports multiple simultaneous server connections.
In my previous e-mail I mentioned this lib but provided link was
outdated. It provides handy event-loop and It's in active development
(mtime: 5 days ago[2]).

oyoyo[4] - Small library, similar to pyirclib. (mtime: 10-10-2011).

lurklib[5] - Small library described as thread-safe and event-driven.
(mtime: 11 months ago)

To sum up, The only library in active development is python-irclib.
Its internals are written thread-safe and it suits all IRC Activity
needs. IMHO, we should choose this one. :)

Thanks,
Michal

[1] http://sourceforge.net/projects/pyirclib/
[2] http://python-irclib.sourceforge.net
[3] https://bitbucket.org/jaraco/irc/commits/all
[4] https://code.google.com/p/oyoyo/
[5] https://github.com/LK-/lurklib/

On 20 April 2013 13:07, Aneesh Dogra <aneesh at sugarlabs.org> wrote:
> Hello Michal,
>
> Great that you have decided to do a GSOC project for us. Thanks!
> Please refer to my inline comments below.
>
> On Sat, Apr 20, 2013 at 5:03 AM, Michał Poczwardowski <dmp0x7c5 at gmail.com>
> wrote:
>>
>> I'm a regular IRC user and have few new ideas regarding IRC Activity.
>> As sugar channels reside at freenode, It would be nice to have
>> NickServ support build-in. Also, when ordinary IRC users use screen
>> with console client, It would be great to have awaylog that displays
>> our hilights even when we are not present. This feature could be turn
>> on only for registered nicks and some webservice + irclogs will be
>> involved. For example: when user joins channel, IRC Activity could
>> show all hilights since user's last visit, of course with reasonable
>> time/messages limit.
>
>
> This is a really nice idea. Definitely worth implementing. But I would deem
> it as secondary, if time permits we could probably work on this. The most
> important features to work on will be:
>
> 1) Multithreading: The IRC Activity very slow when compared to other IRC
> clients.
> 2) Alert on highlight
> 3) Whois info
> 4) Backlog
> 5) Multiple connections (presently you can only connect to one server, so if
> I want to connect to 2 channels say one on mibbit and one on freenode. I
> can't do that in IRC.)
> 6) Theming (would like to add, but again its secondary)
> 7) Encoding options. Not everyone speaks english on IRC, try going to a
> chinese channel using the IRC activity and see what happens. Does it shows
> the chinese characters properly? I haven't tested this myself, but I reckon
> it won't work.
> 8) Save chat history in journal. (Very very important)
>
> I would encourage you to open up your favorite IRC client and check what
> features it provides, and would it be useful if we add it in the IRC
> Activity?
>
>> I've found library[2] that could be used to replace deprecated Urk.
>> Also implementing notifications and improving performance will be my
>> priority.
>
>
> The library you suggested, although better than urk, hasn't been updated
> since 2012-09-29. Which makes me skeptical if this is the best alternate
> available? Libraries tend to later act as bottlenecks. For eg: Urk makes
> multithreading very difficult because it itself is single threaded. That's
> why I want you select the best all-python irc library out there.
>
>> I will be grateful if you could give me some feedback to ideas provided.
>>
>> Thanks,
>> Michal
>>
>> [1] http://dmpgsoc.azalayah.net/
>> [2] http://sourceforge.net/projects/python-irclib/files/
>>
>> dmp at freenode
>
>


More information about the Sugar-devel mailing list