serai/message-queue
Luke Parker b9983bf133
Replace reqwest with simple-request
reqwest was replaced with hyper and hyper-rustls within monero-serai due to
reqwest *solely* offering a connection pool API. In the process, it was
demonstrated how quickly we can achieve equivalent functionality to reqwest for
our use cases with a fraction of the code.

This adds our own reqwest alternative to the tree, applying it to both
bitcoin-serai and message-queue. By doing so, bitcoin-serai decreases its tree
by 21 packages and the processor by 18. Cargo.lock decreases by 8 dependencies,
solely adding simple-request. Notably removed is openssl-sys and openssl.

One noted decrease functionality is the requirement on the system having
installed CA certificates. While we could fallback to the rustls certificates
if the system doesn't have any, that's blocked by
https://github.com/rustls/hyper-rustls/pulls/228.
2023-11-06 09:47:12 -05:00
..
src Replace reqwest with simple-request 2023-11-06 09:47:12 -05:00
Cargo.toml Replace reqwest with simple-request 2023-11-06 09:47:12 -05:00
LICENSE Add a message queue 2023-07-01 08:53:46 -04:00
README.md Add a message queue 2023-07-01 08:53:46 -04:00

Message Log

A message log for various services to communicate over.

Each message is checked to be of the claimed origin. Then, it's added to the recipient's message queue. This queue is sequentially handled, FIFO, only dropping messages once the recipient acknowledges it's been handled.

A client which publishes an event specifies its own ID for the publication. If multiple publications with the same ID occur, they are assumed repeats and dropped.

This library always panics as its error-cases should be unreachable, given its intranet status.