Releases: kotauskas/interprocess
Releases · kotauskas/interprocess
1.0.1 – signals on Windows, macOS support and bugfixes
- Implemented ANSI C signals for Windows. The interface is as close to Unix signals as possible, but has some intricate differences which prevent a common API from existing.
- Fixed some minor issues in the documentation.
- Fixed a non-UB race condition in the implementation of Unix signals. Caused rare panics if a signal is received before its handler is put into the handler table, since it was being registered before it got added to the global table. (The panics never caused UB, since we have panic safety in signal handlers.)
- Switched from
spin
tospinning
because the former is unmaintained and has a RustSec entry for that reason. Stay safe, friends.
1.0.0 – asynchronous local sockets and bugfixes
- The
nonblocking
module now houses an asynchronous wrapper around local sockets. Currently, the implementation simply spawns additional threads using theblocking
crate. - Documentation now shows platform-specific modules on all platforms, and, if the
doc_cfg
feature is enabled, displays blue notice badges on all platform-specific items. - Unix domain sockets have been broken before and are now fixed.
- Unit tests have been added.
- Standalone examples have been introduced.
- Minor documentation fixes and improvements.
0.2.0 – fixed signal soundness and credential passing on Unix
- Signal handler setters can now report errors (breaking)
- Added
set_unsafe_handler
andHandlerOptions::set_unsafe
because ignoringSegmentationFault
andMemoryBusError
signals is unsound - Removed Tokio from dependencies because it's not supported just yet
- Added methods to
SignalType
for checking for unblockable and unsafe signal types
0.1.0 – initial release
A pre-release with most of the originally planned features. Not thoroughly tested, some parts might be broken or non-functional. Currently the following features are implemented:
- Unix domain sockets with ancillary data
- Windows named pipes
- Local sockets, wrapping the above two
- Unnamed pipes
- FIFO files on Unix
- Signals on Unix
The following are planned to be implemented shortly:
- Minimal signal support on Windows
- Mailslots on Windows
- Better documentation for Windows named pipes
- Shared memory