#rabbitmq #async #messaging

no-std my-awesome-rabbitmq-lib

A Rust library for working with RabbitMQ and asynchronous operations

20 releases

new 0.2.9 Nov 26, 2024
0.2.8 Nov 26, 2024
0.2.3 Oct 28, 2024
0.1.9 Oct 17, 2024

#290 in Asynchronous

Download history 534/week @ 2024-10-08 709/week @ 2024-10-15 426/week @ 2024-10-22 95/week @ 2024-10-29 268/week @ 2024-11-05 149/week @ 2024-11-12 171/week @ 2024-11-19

793 downloads per month

MIT/Apache

125KB
3K SLoC

rust-library


To generate the file

fd -e go . ./golang_library | xargs -I {} sh -c 'echo "// {}"; cat "{}"' | tee library.go
fd -e ts . ./packages/legend-transac/src/ | xargs -I {} sh -c 'echo "// {}"; cat "{}"' | tee library.ts
fd -e rs . ./src/ | xargs -I {} sh -c 'echo "// {}"; cat "{}"' | tee library.rs

Finishing the app

Steps to publish the app

  • cargo login ---> Se necesita una cuenta en crates.io, generar el token con permissos sufientes para publicar y actualizar versiones, luego verificar el email
  • cargo package -p my-awesome-rabbitmq-lib
  • cargo publish -p my-awesome-rabbitmq-lib

Pendientes:

Features

It has std y eventsfeatures flags, std is the main app, events = ["serde", "strum", "strum_macros"] is used to handle types, payloads, enum, struct of the app

Test

Due to global vars like the connection and the publish-channel, the test can have different behaviors when are tested alone or with other tests. The global vars cannot be unset/reset, implies a mut static var, which is not allowed in Rust.

Dependencies

~0–11MB
~127K SLoC