Changes for version 0.6 - 2008-09-23

  • deprecated Net::IRC3, use this module in future!
  • connect is done non blocking
  • major semantic change: you can't reuse a connection object, after the 'disconnect' event has been issued you have to recreate it and reconnect the new object. All event handlers are cleared after the 'disconnect' event has been issued too.
  • major api change for channel_add and channel_remove
  • added CTCP support
  • implemented automatic pinging (on user request) see Net::IRC3::Client::Connection::enable_ping
  • Changed mk_msg, send_msg and send_srv and parse_irc_msg considerably, no reversed arguments anymore!
  • Added support for ISUPPORT and CASEMAPPING
  • Renamed from Net::IRC3 to AnyEvent::IRC
  • Using Object::Event, AnyEvent::Socket and AnyEvent::Handle
  • added buffer_empty event, to detect when the write buffer is empty.
  • changed send_msg() in that way that the prefix can't be given anymore, as AnyEvent::IRC is specialized on clients anyway.
  • Renamed AnyEvent::IRC::Client::Connection to AnyEvent::IRC::Client
  • Implemented prefix<=>mode mapping for nicks
  • Added test utility module and first automated connect test
  • Added debug_console example
  • Added mode tracking for users on channels, with NAMESX support
  • channel_list() now also optionally accepts the channel as first argument
  • the connect method of AnyEvent::IRC::Client now accepts an additional parameter where you can pass the register information for automatic registration.
  • the 'registered' event is now only emitted when the irc commands 376 or 422 have been seen.
  • added ctcp_auto_reply() method to AnyEvent::IRC::Client interface.
  • Util::mk_msg does NOT append "\015\012" anymore.
  • send_srv queue is now flushed in an event callback.

Modules

An event system independend IRC protocol module
A highlevel IRC connection
An IRC connection abstraction
A test helper module
Common utilities that help with IRC protocol handling