event 3.1.0RC1

Provides interface to libevent library


This is an extension to efficiently schedule I/O, time and signal based
events using the best I/O notification mechanism available for specific platform.
This is a port of libevent to the PHP infrastructure.

Version 1.0.0 introduces:
* new OO API breaking backwards compatibility
* support of libevent 2+ including HTTP, DNS, OpenSSL and the event listener.

Note, event-1.0.0 and greater is not compatible with previous versions.

License: PHP

Changes

- The loop will now be stopped if an event callback throws an exception.
This prevents user from losing control on the event loop.
- EventDnsBase::__construct() now accepts bool|int as its second parameter:
* false and true have the same meaning as before;
* EventDnsBase::DISABLE_WHEN_INACTIVE - Do not prevent the libevent event loop from exiting when we have no active DNS requests.
* EventDnsBase::INITIALIZE_NAMESERVERS - Process resolv.conf.
* EventDnsBase::NAMESERVERS_NO_DEFAULT - Do not add default nameserver if there are no nameservers in resolv.conf.
- Internally, a safer strlcpy() will be used instead of strcpy().
- Fixed a segmentation fault that might occur in the EventHttpRequest callback.
- Fixed a bug where the EventBuffer::copyout method didn't populate the output variable properly in PHP >= 8.2 (thanks to Joseph Tseng).