Task: ID 28 Title: Circle, Tangence, Net::Async::IRC Tags : CPAN, Perl -- Tangence: * Considerations on POD docs sometime * Allow servers/connections on UNIX sockets on filesystem. Consider unix:///path/to/sock. Open question on "how to do unix+ssh:"? * chmod 600 for security * CHANGE_MOVE operation on hash properties (do we need it?) * Some XS/C rewrites of at least the boring lower-level bits of serialisation * Nullable types * Structure types - use them for metadata - interesting bootstrapping * Consideration on how to make available to other languages. Needs more compiler --- Net::Async::IRC: * Delegated objects * Attempt to classify target of numerics similar to basic commands - generic approach? + Or perhaps using an irssi style system of submitting a list of possible replies to a command, collecting them up as required. * CAP * ISUPPORT: http://www.irc.org/tech_docs/005.html * STARTTLS: http://www.inspircd.org/wiki/STARTTLS_Documentation --- Circle - BE * More commands: /reconnect, /cycle - fix /disconnect bug /whois /quit - just leave IRC? Quitting is more interesting here - one network, all networks... FE/BE split too... * Consider /away management. Session attach/detach hooks in root obj or somewhere. Count active sessions. * Expand the rules core: + More conditions: - IRC event source / type / target / ... - match formatting + More actions: - surpress event log printing - log to file? + More rulechains, more integration of rules into core code + More chains, or more tests of events? Consider a typical autoop: /rules add input cmd("JOIN") fromhost("someone@somewhere"): mode(user "+o") /rules add chan.join fromhost("someone@somewhere"): mode(user "+o") + Highlight action should do more than just set level(3). Consider a session broadcast "highlight_item" - FE could ping speaker, or whatever. Also gives a chance to think about highlights on hidden items. * Use Widgets to implement more details about IRC channels, users, connections... etc... * Tab-complete Circle - GTK FE * Tab rightclick menu? * Consider inchannel NAMES list display as GTK widgets * New GTK scroller custom code - do direct Pango operations on client window.