The crate was renamed to Gaea, which comes with a complete redesign of the crate's API.
- Now supports OpenBSD and NetBSD (properly).
- Supports
no_std
environments. - New
event::Sink
trait that allows for a custom containers for events.Events
was removed. - New
event::Source
trait to allow polling for events from different event sources. Queue
, anevent::Source
for user space queue for events.Timers
, anevent::Source
for deadlines and timeouts.poll
polls one or more event sources.- Add
os::Signals
, allows for handling of Unix signals. - Support for vectored I/O, when the "nightly" feature is enabled.
- Renamed
EventedId
toevent::Id
(in theevent
module). - Renamed
Poller
toOsQueue
and moved it to a newos
module. - Renamed
PollOption
toRegisterOption
and moved it to theos
module. - Moved
Evented
to theos
module. - Moved
Awakener
to theos
module.
EventedIo
, useEventedFd
instead.ConnectedUdpSocket
, useUdpSocket
instead.Events
, useevent::Sink
instead, for example withVec<Event>
.
- Fix kqueue backed Awakener, previously it would always trigger an event when polled.
- BREAKING Remove
Awakener.drain
,Awakener
automatically drains itself now.
- Minimum Rust version is now 1.31.
- New
Awakener
type, used to awaken the poller from another thread. EPOLLPRI
andEPOLLRDHUP
are now set by default for epoll.Ready::Readable
is not set whenEPOLLPRI
is received.- Derived
Hash
forPollOption
andEvent
.
SO_REUSEPORT
andSO_REUSEADDR
options are now set onTcpListener
.
- Re-exported common types in the root of the crate.
- Documented
Evented
handles that don't need to be deregistered. - Added new
Interests
type. - Added
INTERETS
associated constants to mostEvented
handles, for easy use in registering.
- Removed
Into<std::net::TcpStream>
implementation fromTcpStream
. - Manually implemented
Ready
type, dropping thebitflags
dependency, also dropping some methods in the process. - Replaced
Ready
argument withInterests
when registeringEvented
handles withPoller
and in theEvented
trait. - Removed
PollCalled
type fromEvented
trait. - Removed return argument from
Poller.notify
. - Removed return argument from
Poller.add_deadline
andPoller.remove_deadline
. - All
EventedId
values are now valid. - Swap around
sys::unix::new_pipe
returned types to matchmspc
module in the standard library. - Removed the following
TcpStream
methods:set_keepalive
,keepalive
,connect_stream
andfrom_std_stream
.
- Removed the following
TcpSListener
methods:accept_std
andfrom_std_listener
.
- Removed the
UdpSocket.from_std_socket
method. - Removed the
ConnectedUdpSocket.from_connected_std_socket
method. - Updated code to Rust 2018 edition.
- Expanded testing of all types.
- Dropped
net2
dependency. - Cleaned up logging.
- Various improvements of documentation in the entire crate.
Initial release.