Skip to content

Releases: kotauskas/interprocess

1.0.1 – signals on Windows, macOS support and bugfixes

15 Dec 13:59
a25657e
Compare
Choose a tag to compare
  • 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 to spinning because the former is unmaintained and has a RustSec entry for that reason. Stay safe, friends.

1.0.0 – asynchronous local sockets and bugfixes

01 Dec 16:09
5750eaf
Compare
Choose a tag to compare
  • The nonblocking module now houses an asynchronous wrapper around local sockets. Currently, the implementation simply spawns additional threads using the blocking 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

20 Aug 12:44
Compare
Choose a tag to compare
  • Signal handler setters can now report errors (breaking)
  • Added set_unsafe_handler and HandlerOptions::set_unsafe because ignoring SegmentationFault and MemoryBusError 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

05 Aug 11:19
Compare
Choose a tag to compare
Pre-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