Releases: stream-labs/lib-streamlabs-ipc
Releases · stream-labs/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)