#rabbitmq #async #messaging

no-std my-awesome-rabbitmq-lib

A Rust library for working with RabbitMQ and asynchronous operations

18 releases

new 0.2.7 Nov 22, 2024
0.2.6 Nov 12, 2024
0.2.3 Oct 28, 2024
0.1.9 Oct 17, 2024

#288 in Asynchronous

Download history 470/week @ 2024-10-05 527/week @ 2024-10-12 436/week @ 2024-10-19 310/week @ 2024-10-26 252/week @ 2024-11-02 170/week @ 2024-11-09 121/week @ 2024-11-16

864 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
~128K SLoC