Releases: streamlabs/lib-streamlabs-ipc
Releases · streamlabs/lib-streamlabs-ipc
v0.5.0: - Refactored internal functionality to use lib-datalane
v0.4.3 - Updated Protobuf and Core Code
This is a release for a newer protobuf binary required for future builds. It should fix a few compiler warnings and other issues that happen in protobuf code.
0.2.0 - Improvements, Fixes and Changes
Project Changes:
- Entire project is now snake_case, any new code will have to adhere to this.
 - As such, IPC::Class is now ipc::collection to avoid collision with reserved keywords.
 
Server Changes:
- Multiple return values are now supported.
 - Added std::shared_ptr support to register_collection.
 - Final result message is now slightly smaller.
 - Returned values are now properly encoded instead of encoding the last argument over and over again.
 - Improved worker loop to reduce errors and improve code cleanness.
 
Client Changes:
- Binary return values no longer crash the client.
 - Improved worker loop to fix permanent freeze and improve code cleanness.
 
OS::NamedSocket Changes:
- Improved performance by re-using Events for write() and read() interactions, reducing total Kernel time.
 - write() and read() should no longer incorrectly return failure when they actually succeeded.
 - write() and read() should no longer incorrectly return success when they actually failed.
 
Test Changes:
- Added a test for the underlying os::namedsocket code with multiple clients.
 - Added a test for the ipc code with multiple clients.
 
Version 0.1.0 - Initial Version
Initial version, no special optimizations yet, just raw performance.
Cpp <-> Cpp Timings
- Client 100k Message Send: 10140465190 ns (Avg 101404 ns)
 - Server 100k Message Receive: 10238087522 ns (Avg 102380 ns)
 - Server 100k Response Send: 149015628 ns (Avg 1490 ns)
 - Client 100k Response Receive: 98384232 ns (Avg 983 ns)