IRC Client Library 0.2.0 released!
21 Mar 2015Version 0.2.0 of the Kitteh IRC Client Library has been released, bringing with it a pile of features.
As this is the first post on the matter, this changelog will be slightly less useful.
Changes
- [BREAKING] Migrate to MBassador for event handling.
- Subclasses, interfaces, etc. can now be registered.
- A new annotation,
@Handler
, is used for designating you wish to listen.
- [BREAKING] Migrate from custom
Consumer
to the Java 8 one. - IRCv3's
CAP
command is now supported.- 3.2-deprecated sticky and ack-required modifiers not supported.
- SASL is now in theory doable, but API is not yet ready.
- New events:
NickRejectedEvent
CapabilitiesAcknowledgedEvent
CapabilitiesListEvent
CapabilitiesRejectedEvent
CapabilitiesSupportedListEvent
- All events fired by the library are now subclasses of
ClientEvent
.- You may now acquire the
Client
from any of its events.
- You may now acquire the
- You may now define the client's key/cert used for SSL connections.
- See
ClientBuilder
for the new methods.
- See
- Netty upgraded to 4.0.26.
- Utility methods
Channel#getUser(String)
Channel#join()
Client#addChannel(Channel...)
to supplement theString...
method.Client#getChannel(String)
- Other changes:
- Acquire a new
Channel
snapshot viaChannel#getLatest()
ChannelModeEvent
now provides information on prefixes being set as well as the user receiving.- Provide the server's version via
ServerInfo#getServerVersion()
. UserQuitEvent
fires before removing theUser
.ChannelKickEvent
now assumes the actor is aUser
.Client#setMessageDelay
now requires a non-zero positive number.Channel#equals
fixed.UserNickChangeEvent
now provides the new and oldUser
- Acquire a new
Known bugs
ChannelModeEvent
doesn't fire. A fix is already available in 0.2.1-SNAPSHOT.