64 Commits (2fa63da081f31f64173452acb28a4a280c4952ae)

Author SHA1 Message Date
trivernis 2fa63da081
Change error events to be identified by event type and not by name
Signed-off-by: trivernis <trivernis@protonmail.com>
2 years ago
trivernis 4803a655d7
Introduce event types
Signed-off-by: trivernis <trivernis@protonmail.com>
2 years ago
Trivernis 6cf46322c4
Fix missing Send + Sync Markers on Metadata
Signed-off-by: Trivernis <trivernis@protonmail.com>
3 years ago
Trivernis bca5b90d57
Remove some dirty unwraps
Signed-off-by: Trivernis <trivernis@protonmail.com>
3 years ago
Trivernis 8685bcbab8
Shorten emitting and reply awaiting to implement Future for metadata
Signed-off-by: Trivernis <trivernis@protonmail.com>
3 years ago
Trivernis b4ab4fee80
Increment version
Signed-off-by: Trivernis <trivernis@protonmail.com>
3 years ago
Trivernis 248fb403d5
Add event based timeout support
Signed-off-by: Trivernis <trivernis@protonmail.com>
3 years ago
trivernis 5ab864006a
Fix PooledContext not implementing Clone
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis f189fe11f0
Add FromPayload implementation for DeserializeOwned
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 324a788031
Change how replies are emitted
All events that are emitted inside a handler function are seen
as replies to the event that called the handler.
The FromPayloadBytes and ToPayloadBytes traits have been renamed
to FromPayload and IntoPayload. The IntoPayload trait passes the
context in its arguments to allow serializable structures to be
serialized by the default serializer.

Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis f2606b4704
Add IntoSerdePayload trait
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis fb62135f86
Add tests for all payloads
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 6299f9be02
Change serialization to be able to use multiple formats
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis d1b426e10b
Add event format version validation
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 67f9ae2b6b
Add json serde support
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis bb7534d333
Add postcard serde support
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 2cc956f1e9
Add bincode serde support
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis bf5a593377
Move serialization implementation and rename messagepack feature to serialize_rmp
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 38fb1ee16a
Add tests for payloads
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 9e7cd26f6a
Add integration tests with custom protocol
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis be869a7faa
Move messagepack to features and implement raw byte protocol for serialisation
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 005a4bfc68
Remove generic bounds from Context, Namespace and EventEmitter
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis f6a0bd7d7c
Merge branch 'main' of github.com:Trivernis/bromine
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis b96119429e
Rename project to bromine
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 904a93d78f
Change tandem payload to support payloads greater than 4 GiB
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 628573f051
Add reply listen timeouts
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 7b0413704c
Remove debug requirement for emitted payloads since its not used anyway
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 9497990fb7
Add more restritions to protocol trait to be Send + Sync
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis bccbb7e087
Fix test imports being os-specific without conditional compilation
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 32883a98db
Add implementation for unix sockets
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 4fe9ed16db
Change all explicit protocols to generic trait bindings
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis cff9b07e76
Add protocol impelemtation for tcp
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis b55c6e526b
Add AsyncStreamProtocol trait with subtraits
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis f35908815c
Add TandemPayload to store multiple payloads
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 73e5a672b8
Fix problem with counting the PoolGuard
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 66c81605fc
Fix typo and add tracing
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 94c1a7471a
Add connection pooling by creating multiple clients
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis cfc158dcb8
Change to return Err when an awaited response is an error response
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis d8cf7427da
Remove another tracing of the full events
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 1152c949e4
Remove tracing of raw event data
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 3b7dd510d8
Replace log with tracing crate
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis a76e41850d
Change event serialization to not serialize the data twice
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 27a4f4db85
Implement EventReceivePayload for BytePayload
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 2e1fdfa5ac
Remove unused import
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis a485f664a0
Add EventReceivePayload trait and BytePayload wrapper
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 0d8d66100d
Introduce EventSendPayload for more flexibility of payload serialisation
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 98b13a5934
Fix path issue in tests
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis f57b683cb4
Add events macro and change provider to provide static strings
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 21d8f7afcd
Add namespaces from structs and restructure exports
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 6509b6619d
Add callback macro
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago