IRC Client Library 2.0.0 released!
10 Jul 2016Version 2.0.0 of the Kitteh IRC Client Library has been released!
This is quite the update, with many changes including several breaks.
Mode Changes
- Mode elements are moved to a subpackage.
- Created
UserMode
class to describe user modes. - Created a base
Mode
class. ChannelModeStatus
becomesModeStatus<ModeType extends Mode>
.- And
ChannelModeStatusList
toModeStatusList<ModeType extends Mode>
.- And the
from
method is nowfromChannel
andfromUser
.
- And the
- And
ModeCommand
becomesChannelModeCommand
.- Now supports querying by not adding any mode changes.
UserModeCommand
for querying/setting your own modes.
- User modes are now tracked.
Client#getUserModes()
for your modes.
- ISUPPORT MODES now parsed as an int value.
- Supported user modes available in
ServerInfo
.
Event Filters
- The
EventManager
now supports registering custom annotation-based filters. - The already existing
@CommandFilter
and@NumericFilter
no longer require additional@Handler
information. - Added new filters:
@ToSelfOnly
for private messages.@EchoMessage
to only receive messages/notices that were sent by the client.
Other Changes
- New actor
Server
, extendsActor
. - New event
ServerNoticeEvent
for those pesky server-sent notices. - Private message target is now available in those events.
- Private messages to non-Client-nick targets are now sent in the relevant events.
- See
@ToSelfOnly
to continue previous functionality.
- See
- Added some operator functionality:
- New commands
OperCommand
andWallopsCommand
. - New event
WallopsEvent
.
- New commands
- Capabilities echo-message and invite-notify no longer automatically requested.
Channel#getUserModes
now explicitly provides aSortedSet
Client.Builder#toString
no longer exposes passwords or SSL data.- A WHOIS is called right after join to ensure
Client#getUser()
is available ASAP. - Fixed bug where
ServerInfo
could provide mutable lists.