- Bump MSRV to 1.71. (#251)
- Update to
windows-sysv0.61. (#251)
- Add
wait_deadlinefunction. (#226)
- Add a new optional
tracingfeature. When enabled, this feature adds logging to the implementation. By default it is disabled. (#238) - Update to
windows-sysv0.60. (#239)
- Implement
AsRawFdandAsFdforPolleron Redox OS. (#235) - Update
hermit-abito v0.5.0. (#229) - Update
rustixto 1.0 (#230). This also fixed a bug inwaitwhich (contradicting docs) cleared the events vector instead of appending to it. - Add support for QNX. (#201)
- Add support for visionOS. (#217)
- Fix typos in documentation. (#216)
- Update to
windows-sysv0.59. (#214)
- Update
hermit-abito v0.4.0. (#209)
- Fix a typo in
Event::is_err(). (#204)
- Add support for the PS Vita as a platform. (#160)
- Add an
is_errmethod toEventto tell when an error has occurred. (#189) - Deprecate the
is_connect_failedfunction. (#189) - Add support for HermitOS to
polling. (#194)
- Use the
epollbackend when RedoxOS is enabled. (#190)
- Add the ability to identify whether socket connection has failed. (#185)
- On BSD, add the ability to wait on a process by its PID. Previously, it was
only possible to wait on a process by a
Childobject. (#180) - On ESP-IDF, annotate
eventfdinitialization failures with a message indicating the source of those failures. (#186)
- When AFD fails to initialize, the resulting error now references the underlying system error. (#174)
- Bump
windows-systo v0.52.0. (#169)
- Automatically restarts polling when
ErrorKind::Interruptedis returned, rather than relying on the user to handle it. (#164) - Fix bad link in documentation for
Poller::wait(). (#163)
- The
kqueuebackend previously allowed the following operations that other backends forbid. Now these operations result in an error: (#153)- Inserting a source that was already inserted.
- Modifying/deleting a source that was not already inserted.
- Add support for Haiku OS. (#154)
- Add an
Event::new()constructor to simplify creatingEvents. (#149)
- Replace
libcin all backends with therustixcrate (#108). - Use
tracinginstead oflogfor logging (#119). - Breaking: Rework the API to use I/O safety. Note that this makes several previously safe functions unsafe. (#123)
- Add support for the ESP-IDF platform. (#128)
- Breaking: Make
Eventpartially opaque, and create a newEventsstruct for holding events. (#133) - Add support for running
pollingin Linux containers withouteventfdavailable. (#134) - Specify the behavior when registered in multiple
Pollers. (#136) - Breaking: Use
c_intfrom the standard library inpolling::os::kqueueinstead of defining our own. (#143) - Breaking: Remove the useless
stdfeature. (#147)
- Add functionality for posting events to the IOCP. (#101)
- Add edge/oneshot combination mode. (#96)
- Update windows-sys requirement from 0.45 to 0.48. (#103)
- Add level and edge triggered modes to the poller (#59)
- Support tvOS and watchOS (#60)
- Prevent large timeouts from causing panics on certain backends (#71)
- For certain BSDs, use
EVFILT_USERto wake up the poller instead of a pipe (#73) - For Solaris/illumos, use
port_sendto wake up the poller instead of a pipe (#74) - Update
windows_sysfrom 0.42 to 0.45 (#80) - Expose other
kqueuefilter types (#83) - Replace the Windows backend with a hand-written version, rather than bringing in a C dependency (#88)
- Update use of
libc::timespecto prepare for future libc version (#55) - Update use of
libc::keventto prepare for future libc version (#56) - Add error message for Wepoll (#54)
- Fix the build error with MSRV on Windows
- Switch from
winapitowindows-sys(#47)
- Fix the build error on illumos and Solaris (#43)
- Bump MSRV to 1.47 (#40)
- Optimize
Pollerinternal representation (#40)
- Implement
AsRawFdforPolleron most Unix systems (#39) - Implement
AsRawHandleforPolleron Windows (#39) - Implement I/O safety traits on Rust 1.63+ (#39)
- Support VxWorks, Fuchsia and other Unix systems by using poll. (#26)
- Switch from
wepoll-systowepoll-ffi.
- Update
cfg-ifdependency to 1.
- Replace manual pointer conversion with
as_ptr()andas_mut_ptr().
- Minor docs improvements.
- Add
Eventargument toPoller::insert(). - Don't put fd/socket in non-blocking mode upon insertion.
- Rename
insert()/interest()/remove()toadd()/modify()/delete(). - Replace
wepoll-sys-stjepangwith anwepoll-sys.
- Add "std" cargo feature.
- Remove
libcdependency on Windows.
- Bump MSRV to 1.40.0
- Replace the
epoll_create1hack with a cleaner solution. - Pass timeout to
epoll_waitto support systems withouttimerfd.
- Fix a typo in the readme.
- Stabilize.
- Fix compilation on x86_64-unknown-linux-gnux32
- Replace
log::debug!withlog::trace!.
- Specify oneshot mode in epoll/wepoll at insert.
- Add logging.
- Fix a bug where epoll would block when the timeout is set to zero.
- More tests.
- Optimize notifications.
- Fix a bug in timeouts on Windows where it would trigger too early.
- Support sub-nanosecond precision on Linux/Android.
- Improve error handling around event ports fcntl
- Add support for event ports (illumos and Solaris)
- Improve documentation
- Fix a bug in
Event::none().
- Initial version