This repository has been archived by the owner on Mar 12, 2020. It is now read-only.
1.1.0
- Issues with iteration of the event queue causing it to be emptied and use of multiple connections causing incorrect routing of events were fixed; see upgrade notes below for more details (@Renegade334, @PSchwisow, @elazar, h/t @weierophinney)
- The Composer configuration now allows for the latest available version of Monolog between 1.6 and 2.0 to be used (@hason)
- The Travis CI configuraton now include PHP 7 nightly builds (@PSchwisow)
- The default plugin processors for
Bot
now includeClientInjector
, which injects theClientInterface
instance used by the bot into any plugins implementingClientAwareInterface
to support things like re-connecting when a connection is terminated (@hashworks) AbstractPlugin
now has anescapeParam()
method for handling newline and null bytes that may be contained in values intended to be used as IRC command parameters (@sitedyno)- Legacy
@license
docblock tags inconsistent with the actual license were updated (@Renegade334) - The non-standard
PROTOCTL
command, which is supported by several major servers, is now supported (@Renegade334)
Upgrade Notes
This release introduces a few minor BC breaks that may affect a small number of users.
If you are using a custom EventQueueInterface
implementation:
EventQueueInterface
now implements\IteratorAggregate
instead of\Iterator
- Note that your implementation can no longer be directly injected into
Bot
using configuration. Instead, you must create an implementation ofEventQueueFactoryInterface
that returns instances of yourEventQueueInterface
implementation and inject the former using the new'eventQueueFactory'
configuration setting. This change was made to facilitate use of a separate event queue per connection in order to correctly route outgoing events when multiple connections are in use.
Also, note that the default EventQueueInterface
implementation, EventQueue
, no longer extends \SplPriorityQueue
directly. This change was made to fix an issue with iteration of the event queue causing it to be emptied.