15 releases

Uses old Rust 2015

0.12.0 Nov 4, 2022
0.11.0 Sep 21, 2019
0.9.1 May 30, 2019
0.9.0 Dec 14, 2018
0.6.0 Dec 9, 2014

#1941 in Network programming

Download history 10210/week @ 2024-01-14 11428/week @ 2024-01-21 12073/week @ 2024-01-28 13632/week @ 2024-02-04 13320/week @ 2024-02-11 12098/week @ 2024-02-18 12106/week @ 2024-02-25 12058/week @ 2024-03-03 12016/week @ 2024-03-10 11634/week @ 2024-03-17 12712/week @ 2024-03-24 12392/week @ 2024-03-31 11510/week @ 2024-04-07 12284/week @ 2024-04-14 12362/week @ 2024-04-21 12470/week @ 2024-04-28

49,381 downloads per month
Used in 351 crates (5 directly)

MIT/Apache

34KB
958 lines

Rust ZeroMQ bindings.

Travis Build Status Appveyor Build status Coverage Status Apache 2.0 licensed MIT licensed docs

Documentation

Release Notes

About

The zmq crate provides bindings for the libzmq library from the ZeroMQ project. The API exposed by zmq should be safe (in the usual Rust sense), but it follows the C API closely, so it is not very idiomatic.

Compatibility

The aim of this project is to track latest zmq releases as close as possible.

Regarding the minimum Rust version required, zmq is CI-tested on current stable channels of Rust.

Usage

zmq is a pretty straight forward port of the C API into Rust:

fn main() {
    let ctx = zmq::Context::new();

    let socket = ctx.socket(zmq::REQ).unwrap();
    socket.connect("tcp://127.0.0.1:1234").unwrap();
    socket.send("hello world!", 0).unwrap();
}

You can find more usage examples in https://github.com/erickt/rust-zmq/tree/master/examples.

Contributing

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed under the terms of both the Apache License, Version 2.0 and the MIT license without any additional terms or conditions.

See the contribution guidelines for what to watch out for when submitting a pull request.

Dependencies

~0–1.7MB
~24K SLoC