Skip to main content

The python API for Eclipse zenoh

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

CI Documentation Status Discussion Discord License License

Eclipse Zenoh

The Eclipse Zenoh: Zero Overhead Pub/sub, Store/Query and Compute.

Zenoh (pronounce /zeno/) unifies data in motion, data at rest and computations. It carefully blends traditional pub/sub with geo-distributed storages, queries and computations, while retaining a level of time and space efficiency that is well beyond any of the mainstream stacks.

Check the website zenoh.io and the roadmap for more detailed information.


Python API

This repository provides a Python binding based on the main Zenoh implementation written in Rust.


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 (Linux x86_64, i686, ARMs, MacOS universal2 and Windows amd64). But also a source distribution package for other platforms. However, for pip to be able to build this source distribution, there are 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.7, 3.8, 3.9 and 3.10.

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

:warning: WARNING :warning: : Zenoh and its ecosystem are under active development. When you build from git, make sure you also build from git any other Zenoh repository you plan to use (e.g. binding, plugin, backend, etc.). It may happen that some changes in git are not compatible with the most recent packaged Zenoh release (e.g. deb, docker, pip). We put particular effort in mantaining compatibility between the various git repositories in the Zenoh project.

Requirements:

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

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

eclipse_zenoh_nightly-0.7.0rc20230203.tar.gz (115.8 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-win_amd64.whl (4.5 MB view details)

Uploaded CPython 3.7+Windows x86-64

eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.2 MB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ x86-64

eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (7.5 MB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ i686

eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (6.8 MB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ ARMv7l

eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (7.0 MB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ ARM64

eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (10.6 MB view details)

Uploaded CPython 3.7+macOS 10.9+ universal2 (ARM64, x86-64)macOS 10.9+ x86-64macOS 11.0+ ARM64

eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-macosx_10_7_x86_64.whl (5.5 MB view details)

Uploaded CPython 3.7+macOS 10.7+ x86-64

File details

Details for the file eclipse_zenoh_nightly-0.7.0rc20230203.tar.gz.

File metadata

File hashes

Hashes for eclipse_zenoh_nightly-0.7.0rc20230203.tar.gz
Algorithm Hash digest
SHA256 41d592af1721dfba1898de39263f800ee7d8a32214791c4bc4966d204951ac67
MD5 0564599a06ffda5eba56fe00f472a08d
BLAKE2b-256 4b00299a9fb5efb40650376bcb7d80203480aa622f60ec4b87e00c7e3a307700

See more details on using hashes here.

File details

Details for the file eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 ae1fc03f4ca1b92c1709204ba32ac0a167ff177b4c245ee528e2c3c9dd5d910b
MD5 1488416e5a752731333ecd190f397536
BLAKE2b-256 61da184d35bb4f65519996a0282e5778a57d515b9f700cfeac7a6bac5702edee

See more details on using hashes here.

File details

Details for the file eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6497923ddce01f20d72d173dd572f5944a234a5613f6fe89df3d5b785ffceb2f
MD5 4fbc28ce52c40d1fc552a8ea5360c47f
BLAKE2b-256 2314b08d30e8e63f830d79966db9af1a92d016a09a4268f38a75fdc66d86f72c

See more details on using hashes here.

File details

Details for the file eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 a06bfe2678f587884acdd0dc6a417bb82f919e5a5e8fc3ef797253668f484bae
MD5 5cbc9cc5ba47e8931aeb696df1832d1b
BLAKE2b-256 5da6fb79daa924394dc51a9605450a8597bd347816a37e0f7577eb7061c8498d

See more details on using hashes here.

File details

Details for the file eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 244de3423c4f06d55ee5e654287ec8a9aa6bf436d5cdb5315378bb620b42998d
MD5 a7649e1355573a9121787e8d9db207a7
BLAKE2b-256 3da25a5f283bb17d31e5080041dcbd71453d135b60c7fd678f3618fc804d2e26

See more details on using hashes here.

File details

Details for the file eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ade50f4d413f1fb92bb989dc0c22a827f5ee4c3f5e64235b7e88e098a76ee592
MD5 afafea4a930b74a3c0d37c1df798580b
BLAKE2b-256 32a542d32c781b0266fa69c5fc2ea3cd6d65efbc4bfa073a57d98586c84f337a

See more details on using hashes here.

File details

Details for the file eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 3691bac885090383c2cd321e4e9459b05a1e06401bbe7a9be6c65e822174f7ce
MD5 0a5310fe7bc01e9888ad3cc858809d77
BLAKE2b-256 2cda6782fba3c65d37a05eb0b08e9465002605af22e6f3543c9794603cb04c0f

See more details on using hashes here.

File details

Details for the file eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 95753216f32d8b4b0146b025d09ab8e50a653058146207b724eb09391604415e
MD5 76a11fe0b6e83a7ea0d45f2ff296a7e8
BLAKE2b-256 e11ccebc89f631067123643987b0479f66bf30c37ca2b33b970f7a54b41cfcea

See more details on using hashes here.

File details

Details for the file eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-linux_armv6l.whl.

File metadata

File hashes

Hashes for eclipse_zenoh_nightly-0.7.0rc20230203-cp37-abi3-linux_armv6l.whl
Algorithm Hash digest
SHA256 a3959426acbd5aa37bbb75595b323153da585ff3f069e739104baddaa0b0428a
MD5 18299eeefae3713b8bda996cb9918d44
BLAKE2b-256 db56ce86ceadbbaa8a157f07c89301530b9b47be591c99699e2add0dff625921

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page