The python API for Eclipse zenoh
Project description
Eclipse zenoh Python API
Eclipse zenoh is an extremely efficient and fault-tolerant Named Data Networking (NDN) protocol that is able to scale down to extremely constrainded devices and networks.
Check the website zenoh.io and the roadmap for more detailed information.
How to install it
The Eclipse zenoh-python library is available on Pypi.org.
Install the latest available version using pip
:
pip install eclipse-zenoh
To install the latest nightly build of the development version do:
pip install eclipse-zenoh-nightly
:warning:WARNING:warning: zenoh-python is developped in Rust.
On Pypi.org we provide binary wheels for the most common platforms (MacOS, Linux x86). But also a source distribution package for other platforms.
However, for pip
to be able to build this source distribution, there some prerequisites:
pip
version 19.3.1 minimum (for full support of PEP 517). (if necessary upgrade it with command:'sudo pip install --upgrade pip'
)- Have a Rust toolchain installed (instructions at https://rustup.rs/)
Supported Python versions and platforms
zenoh-python has been tested with Python 3.6, 3.7, 3.8 and 3.9.
It relies on the zenoh Rust API which require the full std
library. See the list Rust supported platforms here: https://doc.rust-lang.org/nightly/rustc/platform-support.html .
How to build it
Requirements:
- Python >= 3.7
- pip >= 19.3.1
- (Optional) A Python virtual environment (for instance virtualenv or miniconda)
- Rust and Cargo.
Steps:
-
Install developments requirements:
pip install -r requirements-dev.txt
-
Ensure your system can find the building tool
maturin
(installed by previous step). For example, it is placed at $HOME/.local/bin/maturin by default on Ubuntu 20.04.export PATH="$HOME/.local/bin:$PATH"
-
Build and install zenoh-python:
- With a virtual environment active:
maturin develop --release
- Without one:
maturin build --release pip install ./target/wheels/<there should only be one .whl file here>
Running the Examples
The simplest way to run some of the example is to get a Docker image of the zenoh network router (see https://github.com/eclipse-zenoh/zenoh#how-to-test-it) and then to run the examples on your machine.
Then, run the zenoh-python examples following the instructions in examples/zenoh/README.md
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for eclipse_zenoh_nightly-0.6.0_beta.120221004.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2689a56373306991f79c9815e6fc5087f522e30b916d571e6fcc2d43c1fff9ab |
|
MD5 | 4249a255060705a9442a6ad6b2e1dfe0 |
|
BLAKE2b-256 | 5685330e5d51d675ac7d6110d03aeb5b409e939548dc680557a11b1ab671e7cb |
Hashes for eclipse_zenoh_nightly-0.6.0b120221004-cp37-abi3-linux_armv6l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 63740a357ed6c566e2b1f54a311e73c9ceb9f41aa6cd2430f865e30aeabb4c8c |
|
MD5 | eca3c7465c5e02486b607ff20c6b072c |
|
BLAKE2b-256 | ce619e24db36dd2a14d2597fc1d3e21d501a98a2ed63ee4aecb20f20907e762d |
Hashes for eclipse_zenoh_nightly-0.6.0_beta.120221004-cp37-abi3-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 705f58889b5d24327bdc161dc5fa23fe038ecf053553123ae811a2ab89a5d38e |
|
MD5 | ce11bca437bbdd1691690947db2ae21c |
|
BLAKE2b-256 | 82d78999a66fe7da5b942ba2fb9d68b77ecb1115b7cf50e05ede7a1bb3f399f5 |
Hashes for eclipse_zenoh_nightly-0.6.0_beta.120221004-cp37-abi3-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cee0fe9b1aba3df9b142717ad11f73c3ae900bbb5e1872ee59349da37f22fab5 |
|
MD5 | 1726ccd83d2ee07a52276e784ecb0f42 |
|
BLAKE2b-256 | 58711f64c00c8436494575a631be5d229b147a290fb76958de087d97fca84955 |
Hashes for eclipse_zenoh_nightly-0.6.0_beta.120221004-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ec45b8743307485d1f5a79cdc9d25011d6147ffcf6bf3015c3875e3295f3abc4 |
|
MD5 | 1d6fadd2b10e33c0a226597ecb6b705a |
|
BLAKE2b-256 | 80adfa586415e9ee7ca2de55c2547f06a8d876d1aaf6fd001d3b72a3a609e0f3 |
Hashes for eclipse_zenoh_nightly-0.6.0_beta.120221004-cp37-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dad3b6efc0192f2aedf83fb95c289d010180ee202770c6a166a5d51870708907 |
|
MD5 | c37e1178926e278f4ed281c04decb629 |
|
BLAKE2b-256 | 6554311456cb2e16ae752dcf1acaf1adea5edb9406af90f25aea2031cdce4b33 |
Hashes for eclipse_zenoh_nightly-0.6.0_beta.120221004-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 76793791c309b38e419475ab0312c14dc6a0fb65e685aaa87ea085770957ae5f |
|
MD5 | 7a057696fa41834a42c7c8cdf805fe17 |
|
BLAKE2b-256 | 870a6d268912af9c0c9604ef7f7fc58adbd1be10e9899daecc0de43305428bd5 |
Hashes for eclipse_zenoh_nightly-0.6.0_beta.120221004-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cbe1d9354cee61e39a009b70e42fb1c3dda7b235712b7ffd99efc1701b22bef7 |
|
MD5 | fcb634850e70f7ca742174c442fd7d29 |
|
BLAKE2b-256 | 3aa8669ff516ddc4266a084b1affcfa083ecc3e92d678fd3eb703ce1876a85b9 |
Hashes for eclipse_zenoh_nightly-0.6.0_beta.120221004-cp37-abi3-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 947f1e0c2cb2cb284e565e10fba570a6611a196c40473a43d97bdb48b2ad0de4 |
|
MD5 | bb3ba73eb155434606d9de11f3a6349b |
|
BLAKE2b-256 | 4d548fa472345e429a6bb12a316bfd469e2f19f5aa7afee5d18d6d66477af82e |
Hashes for eclipse_zenoh_nightly-0.6.0_beta.120221004-cp37-abi3-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5955b88409ac408e4f9c4eed372660b9be3963bffa04825bef0a5004c734725b |
|
MD5 | 03c1685f19d7aea472678db8e427fc0d |
|
BLAKE2b-256 | 123e68f25c3113b3eb49b2bf5480c9e50bc91da98a584f3c37a9404311faf47b |