Package: zenoh
Version: 1.0.0~alpha.1-1
Architecture: armhf
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 40
Depends: zenoh-plugin-storage-manager (=1.0.0~alpha.1-1), zenohd (=1.0.0~alpha.1-1), zenoh-plugin-rest (=1.0.0~alpha.1-1)
Filename: 1.0.0-alpha.1/zenoh_1.0.0~alpha.1-1_armhf.deb
Size: 17508
MD5sum: 2132eea152136dacb3cc525794e202ff
SHA1: 87d941478d9f52199cfda356cd49241b64d42687
SHA256: d6542d7a1675ab3a744ac5b1f249c3aec370551285a6cdb3e92b28c20335b6c8
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: Zenoh: Zero Overhead Pub/sub, Store/Query and Compute.
 <img
 src="https://raw.githubusercontent.com/eclipse-zenoh/zenoh/master/zenoh-dragon.png"
 height="150">
 .
 [![CI](https://github.com/eclipse-zenoh/zenoh/workflows/CI/badge.svg)](https://github.com/eclipse-zenoh/zenoh/actions?query=workflow%3A%22CI%22)
 [![Documentation
 Status](https://readthedocs.org/projects/zenoh-rust/badge/?version=latest)](https://zenoh-rust.readthedocs.io/en/latest/?badge=latest)
 [![Discussion](https://img.shields.io/badge/discussion-on%20github-blue)](https://github.com/eclipse-zenoh/roadmap/discussions)
 [![Discord](https://img.shields.io/badge/chat-on%20discord-blue)](https://discord.gg/2GJ958VuHs)
 [![License](https://img.shields.io/badge/License-EPL%202.0-blue)](https://choosealicense.com/licenses/epl-2.0/)
 [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
 .
 # 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](http://zenoh.io) and the
 [roadmap](https://github.com/eclipse-zenoh/roadmap) for more detailed
 information.
 .
 -------------------------------
 ## Getting Started
 .
 Zenoh is extremely easy to learn, the best place to master the fundamentals is
 our [getting started guide](https://zenoh.io/docs/getting-started/first-app/).
 .
 -------------------------------
 ## How to install it
 .
 To install the latest release of the Zenoh router (`zenohd`) and its default
 plugins (REST API plugin and Storages Manager plugin) you can do as follows:
 .
 ### Manual installation (all platforms)
 .
 All release packages can be downloaded from:
  - https://download.eclipse.org/zenoh/zenoh/latest/
 .
 Each subdirectory has the name of the Rust target. See the platforms each
 target corresponds to on
 https://doc.rust-lang.org/stable/rustc/platform-support.html
 .
 Choose your platform and download the `.zip` file.
 Unzip it where you want, and run the extracted `zenohd` binary.
 .
 ### Linux Debian
 .
 Add Eclipse Zenoh private repository to the sources list, and install the
 `zenoh` package:
 .
 ```bash
 echo "deb [trusted=yes] https://download.eclipse.org/zenoh/debian-repo/ /" |
 sudo tee -a /etc/apt/sources.list.d/zenoh.list > /dev/null
 sudo apt update
 sudo apt install zenoh
 ```
 Then you can start run `zenohd`.
 .
 ### MacOS
 .
 Tap our brew package repository and install the `zenoh` formula:
 .
 ```bash
 brew tap eclipse-zenoh/homebrew-zenoh
 brew install zenoh
 ```
 Then you can start run `zenohd`.
 .
 .
 ### Rust API
 .
 -------------------------------
 ## How to build it
 .
 > [!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 maintaining compatibility between the
 various git repositories in the Zenoh project.
 .
 Install [Cargo and
 Rust](https://doc.rust-lang.org/cargo/getting-started/installation.html). Zenoh
 can be successfully compiled with Rust stable (>= 1.71.0), so no special
 configuration is required from your side. If you already have the Rust
 toolchain installed, make sure it is up-to-date with:
 .
 ```bash
 $ rustup update
 ```
 .
 To build Zenoh, just type the following command after having followed the
 previous instructions:
 .
 ```bash
 $ cargo build --release --all-targets
 ```
 .
 Zenoh's router is built as `target/release/zenohd`. All the examples are built
 into the `target/release/examples` directory. They can all work in
 peer-to-peer, or interconnected via the zenoh router.
 .
 -------------------------------
 ## Quick tests of your build:
 .
 **Peer-to-peer tests:**
 .
  - **pub/sub**
     - run: `./target/release/examples/z_sub`
     - in another shell run: `./target/release/examples/z_put`
     - the subscriber should receive the publication.
 .
  - **get/queryable**
     - run: `./target/release/examples/z_queryable`
     - in another shell run: `./target/release/examples/z_get`
     - the queryable should display the log in its listener, and the get should
 receive the queryable result.
 .
 **Routed tests:**
 .
 > [!NOTE]
 > **Windows users**: to properly execute the commands below in PowerShell you
 need to escape `"` characters as `\"`.
 .
  - **put/store/get**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell run: `./target/release/examples/z_put`
     - then run `./target/release/examples/z_get`
     - the get should receive the stored publication.
 .
  - **REST API using `curl` tool**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, do a publication via the REST API:
       `curl -X PUT -d '"Hello World!"' http://localhost:8000/demo/example/test`
     - get it back via the REST API:
       `curl http://localhost:8000/demo/example/test`
 .
   - **router admin space via the REST API**
     - run the Zenoh router with permission to perform config changes via the
 admin space, and with a memory storage:
       `./target/release/zenohd --adminspace-permissions=rw
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, get info of the zenoh router via the zenoh admin space:
       `curl http://localhost:8000/@/router/local`
     - get the volumes of the router (only memory by default):
       `curl 'http://localhost:8000/@/router/local/**/volumes/*'`
     - get the storages of the local router (the memory storage configured at
 startup on '/demo/example/**' should be present):
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
     - add another memory storage on `/demo/mystore/**`:
       `curl -X PUT -H 'content-type:application/json' -d
 '{"key_expr":"demo/mystore/**","volume":"memory"}'
 http://localhost:8000/@/router/local/config/plugins/storage_manager/storages/mystore`
     - check it has been created:
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
 .
 **Configuration options:**
 .
 A Zenoh configuration file can be provided via CLI to all Zenoh examples and
 the Zenoh router.
 .
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file and
 the available options.
 .
 .
 See other examples of Zenoh usage in [examples/](examples)
 .
 > [!NOTE]
 > **Zenoh Runtime Configuration**: Starting from version 0.11.0-rc, Zenoh
 allows for configuring the number of worker threads and other advanced options
 of the runtime. For guidance on utilizing it, please refer to the
 [doc](https://docs.rs/zenoh-runtime/latest/zenoh_runtime/enum.ZRuntime.html).
 .
 -------------------------------
 ## Zenoh router command line arguments
 `zenohd` accepts the following arguments:
 .
   * `--adminspace-permissions <[r|w|rw|none]>`: Configure the read and/or write
 permissions on the admin space. Default is read only.
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file. All
 properties of this configuration are optional, so you may not need such a large
 configuration for your use-case.
   * `--cfg <KEY>:<VALUE>`: allows you to change specific parts of the
 configuration right after it has been constructed. VALUE must be a valid JSON5
 value, and key must be a path through the configuration file, where each
 element is separated by a `/`. When inserting in parts of the config that are
 arrays, you may use indexes, or may use `+` to indicate that you want to append
 your value to the array. `--cfg` passed values will always override any
 previously existing value for their key in the configuration.
   * `-l, --listen <ENDPOINT>...`: An endpoint on which this router will listen
 for incoming sessions.
     Repeat this option to open several listeners. By default, `tcp/[::]:7447`
 is used. The following endpoints are currently supported:
       - TCP: `tcp/<host_name_or_IPv4_or_IPv6>:<port>`
       - UDP: `udp/<host_name_or_IPv4_or_IPv6>:<port>`
       - [TCP+TLS](https://zenoh.io/docs/manual/tls/): `tls/<host_name>:<port>`
       - [QUIC](https://zenoh.io/docs/manual/quic/): `quic/<host_name>:<port>`
   * `-e, --connect <ENDPOINT>...`: An endpoint this router will try to connect
 to. Repeat this option to connect to several peers or routers.
   * `--no-multicast-scouting`: By default zenohd replies to multicast scouting
 messages for being discovered by peers and clients.
     This option disables this feature.
   * `-i, --id <hex_string>`: The identifier (as an hexadecimal string - e.g.:
 A0B23...) that zenohd must use.
      **WARNING**: this identifier must be unique in the system! If not set, a
 random unsigned 128bit integer will be used.
   * `--no-timestamp`: By default zenohd adds a HLC-generated Timestamp to each
 routed Data if there isn't already one.
     This option disables this feature.
   * `-P, --plugin [<PLUGIN_NAME> | <PLUGIN_NAME>:<LIBRARY_PATH>]...`: A
 [plugin](https://zenoh.io/docs/manual/plugins/) that must be loaded. Accepted
 values:
      - a plugin name; zenohd will search for a library named
 `libzenoh_plugin_<name>.so` on Unix, `libzenoh_plugin_<PLUGIN_NAME>.dylib` on
 MacOS or `zenoh_plugin_<PLUGIN_NAME>.dll` on Windows.
      - `"<PLUGIN_NAME>:<LIBRARY_PATH>"`; the plugin will be loaded from library
 file at `<LIBRARY_PATH>`.
 .
     Repeat this option to load several plugins.
   * `--plugin-search-dir <DIRECTORY>...`: A directory where to search for
 [plugins](https://zenoh.io/docs/manual/plugins/) libraries to load.
     Repeat this option to specify several search directories'. By default, the
 plugins libraries will be searched in:
     `'/usr/local/lib:/usr/lib:~/.zenoh/lib:.'`
   * `--rest-http-port <rest-http-port>`: Configures the [REST
 plugin](https://zenoh.io/docs/manual/plugin-http/)'s HTTP port. Accepted
 values:
       - a port number
       - a string with format `<local_ip>:<port_number>` (to bind the HTTP
 server to a specific interface)
       - `"None"` to deactivate the REST plugin
 .
     If not specified, the REST plugin will be active on any interface (`[::]`)
 and port `8000`.
 .
 > [!WARNING]
 > The following documentation pertains to the v0.6+ API, which comes many
 changes to the behaviour and configuration of Zenoh.
 To access the v0.5 version of the code and matching README, please go to the
 [0.5.0-beta.9](https://github.com/eclipse-zenoh/zenoh/tree/0.5.0-beta.9) tagged
 version.
 .
 -------------------------------
 ## Plugins
 .
 > [!WARNING]
 > As Rust doesn't have a stable ABI, the plugins should be
 built with the exact same Rust version than `zenohd`, and using for `zenoh`
 dependency the same version (or commit number) than 'zenohd'.
 Otherwise, incompatibilities in memory mapping of shared types between `zenohd`
 and the library can lead to a `"SIGSEV"` crash.
 .
 By default the Zenoh router is delivered or built with 2 plugins. These may be
 configured through a configuration file, or through individual changes to the
 configuration via the `--cfg` CLI option or via zenoh puts on individual parts
 of the configuration.
 .
 > [!WARNING]
 > Since `v0.6`, `zenohd` no longer loads every available plugin at startup.
 Instead, only configured plugins are loaded (after processing `--cfg` and
 `--plugin` options). Once `zenohd` is running, plugins can be hot-loaded and,
 if they support it, reconfigured at runtime by editing their configuration
 through the adminspace.
 .
 Note that the REST plugin is added to the configuration by the default value of
 the `--rest-http-port` CLI argument.
 .
 **[REST plugin](https://zenoh.io/docs/manual/plugin-http/)** (exposing a REST
 API):
 This plugin converts GET and PUT REST requests into Zenoh gets and puts
 respectively.
 .
 **[Storages plugin](https://zenoh.io/docs/manual/plugin-storage-manager/)**
 (managing [backends and
 storages](https://zenoh.io/docs/manual/plugin-storage-manager/#backends-and-volumes))
 This plugin allows you to easily define storages. These will store key-value
 pairs they subscribed to, and send the most recent ones when queried. Check out
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) for info on how to configure them.
 .
 -------------------------------
 ## Troubleshooting
 .
 In case of troubles, please first check on [this
 page](https://zenoh.io/docs/getting-started/troubleshooting/) if the trouble
 and cause are already known.
 Otherwise, you can ask a question on the [zenoh Discord
 server](https://discord.gg/vSDSpqnbkm), or [create an
 issue](https://github.com/eclipse-zenoh/zenoh/issues).
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

Package: zenoh
Version: 1.0.0~alpha.1-1
Architecture: armel
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 40
Depends: zenohd (=1.0.0~alpha.1-1), zenoh-plugin-storage-manager (=1.0.0~alpha.1-1), zenoh-plugin-rest (=1.0.0~alpha.1-1)
Filename: 1.0.0-alpha.1/zenoh_1.0.0~alpha.1-1_armel.deb
Size: 17508
MD5sum: 03394ecb1addba63990585b5819aed84
SHA1: cbff6aa08fc9afa84748474650a68af7dbabfdcb
SHA256: 2259b0081fc48f39eda1616e8462554551b7a6cf7efa932661d274b70469d517
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: Zenoh: Zero Overhead Pub/sub, Store/Query and Compute.
 <img
 src="https://raw.githubusercontent.com/eclipse-zenoh/zenoh/master/zenoh-dragon.png"
 height="150">
 .
 [![CI](https://github.com/eclipse-zenoh/zenoh/workflows/CI/badge.svg)](https://github.com/eclipse-zenoh/zenoh/actions?query=workflow%3A%22CI%22)
 [![Documentation
 Status](https://readthedocs.org/projects/zenoh-rust/badge/?version=latest)](https://zenoh-rust.readthedocs.io/en/latest/?badge=latest)
 [![Discussion](https://img.shields.io/badge/discussion-on%20github-blue)](https://github.com/eclipse-zenoh/roadmap/discussions)
 [![Discord](https://img.shields.io/badge/chat-on%20discord-blue)](https://discord.gg/2GJ958VuHs)
 [![License](https://img.shields.io/badge/License-EPL%202.0-blue)](https://choosealicense.com/licenses/epl-2.0/)
 [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
 .
 # 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](http://zenoh.io) and the
 [roadmap](https://github.com/eclipse-zenoh/roadmap) for more detailed
 information.
 .
 -------------------------------
 ## Getting Started
 .
 Zenoh is extremely easy to learn, the best place to master the fundamentals is
 our [getting started guide](https://zenoh.io/docs/getting-started/first-app/).
 .
 -------------------------------
 ## How to install it
 .
 To install the latest release of the Zenoh router (`zenohd`) and its default
 plugins (REST API plugin and Storages Manager plugin) you can do as follows:
 .
 ### Manual installation (all platforms)
 .
 All release packages can be downloaded from:
  - https://download.eclipse.org/zenoh/zenoh/latest/
 .
 Each subdirectory has the name of the Rust target. See the platforms each
 target corresponds to on
 https://doc.rust-lang.org/stable/rustc/platform-support.html
 .
 Choose your platform and download the `.zip` file.
 Unzip it where you want, and run the extracted `zenohd` binary.
 .
 ### Linux Debian
 .
 Add Eclipse Zenoh private repository to the sources list, and install the
 `zenoh` package:
 .
 ```bash
 echo "deb [trusted=yes] https://download.eclipse.org/zenoh/debian-repo/ /" |
 sudo tee -a /etc/apt/sources.list.d/zenoh.list > /dev/null
 sudo apt update
 sudo apt install zenoh
 ```
 Then you can start run `zenohd`.
 .
 ### MacOS
 .
 Tap our brew package repository and install the `zenoh` formula:
 .
 ```bash
 brew tap eclipse-zenoh/homebrew-zenoh
 brew install zenoh
 ```
 Then you can start run `zenohd`.
 .
 .
 ### Rust API
 .
 -------------------------------
 ## How to build it
 .
 > [!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 maintaining compatibility between the
 various git repositories in the Zenoh project.
 .
 Install [Cargo and
 Rust](https://doc.rust-lang.org/cargo/getting-started/installation.html). Zenoh
 can be successfully compiled with Rust stable (>= 1.71.0), so no special
 configuration is required from your side. If you already have the Rust
 toolchain installed, make sure it is up-to-date with:
 .
 ```bash
 $ rustup update
 ```
 .
 To build Zenoh, just type the following command after having followed the
 previous instructions:
 .
 ```bash
 $ cargo build --release --all-targets
 ```
 .
 Zenoh's router is built as `target/release/zenohd`. All the examples are built
 into the `target/release/examples` directory. They can all work in
 peer-to-peer, or interconnected via the zenoh router.
 .
 -------------------------------
 ## Quick tests of your build:
 .
 **Peer-to-peer tests:**
 .
  - **pub/sub**
     - run: `./target/release/examples/z_sub`
     - in another shell run: `./target/release/examples/z_put`
     - the subscriber should receive the publication.
 .
  - **get/queryable**
     - run: `./target/release/examples/z_queryable`
     - in another shell run: `./target/release/examples/z_get`
     - the queryable should display the log in its listener, and the get should
 receive the queryable result.
 .
 **Routed tests:**
 .
 > [!NOTE]
 > **Windows users**: to properly execute the commands below in PowerShell you
 need to escape `"` characters as `\"`.
 .
  - **put/store/get**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell run: `./target/release/examples/z_put`
     - then run `./target/release/examples/z_get`
     - the get should receive the stored publication.
 .
  - **REST API using `curl` tool**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, do a publication via the REST API:
       `curl -X PUT -d '"Hello World!"' http://localhost:8000/demo/example/test`
     - get it back via the REST API:
       `curl http://localhost:8000/demo/example/test`
 .
   - **router admin space via the REST API**
     - run the Zenoh router with permission to perform config changes via the
 admin space, and with a memory storage:
       `./target/release/zenohd --adminspace-permissions=rw
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, get info of the zenoh router via the zenoh admin space:
       `curl http://localhost:8000/@/router/local`
     - get the volumes of the router (only memory by default):
       `curl 'http://localhost:8000/@/router/local/**/volumes/*'`
     - get the storages of the local router (the memory storage configured at
 startup on '/demo/example/**' should be present):
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
     - add another memory storage on `/demo/mystore/**`:
       `curl -X PUT -H 'content-type:application/json' -d
 '{"key_expr":"demo/mystore/**","volume":"memory"}'
 http://localhost:8000/@/router/local/config/plugins/storage_manager/storages/mystore`
     - check it has been created:
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
 .
 **Configuration options:**
 .
 A Zenoh configuration file can be provided via CLI to all Zenoh examples and
 the Zenoh router.
 .
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file and
 the available options.
 .
 .
 See other examples of Zenoh usage in [examples/](examples)
 .
 > [!NOTE]
 > **Zenoh Runtime Configuration**: Starting from version 0.11.0-rc, Zenoh
 allows for configuring the number of worker threads and other advanced options
 of the runtime. For guidance on utilizing it, please refer to the
 [doc](https://docs.rs/zenoh-runtime/latest/zenoh_runtime/enum.ZRuntime.html).
 .
 -------------------------------
 ## Zenoh router command line arguments
 `zenohd` accepts the following arguments:
 .
   * `--adminspace-permissions <[r|w|rw|none]>`: Configure the read and/or write
 permissions on the admin space. Default is read only.
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file. All
 properties of this configuration are optional, so you may not need such a large
 configuration for your use-case.
   * `--cfg <KEY>:<VALUE>`: allows you to change specific parts of the
 configuration right after it has been constructed. VALUE must be a valid JSON5
 value, and key must be a path through the configuration file, where each
 element is separated by a `/`. When inserting in parts of the config that are
 arrays, you may use indexes, or may use `+` to indicate that you want to append
 your value to the array. `--cfg` passed values will always override any
 previously existing value for their key in the configuration.
   * `-l, --listen <ENDPOINT>...`: An endpoint on which this router will listen
 for incoming sessions.
     Repeat this option to open several listeners. By default, `tcp/[::]:7447`
 is used. The following endpoints are currently supported:
       - TCP: `tcp/<host_name_or_IPv4_or_IPv6>:<port>`
       - UDP: `udp/<host_name_or_IPv4_or_IPv6>:<port>`
       - [TCP+TLS](https://zenoh.io/docs/manual/tls/): `tls/<host_name>:<port>`
       - [QUIC](https://zenoh.io/docs/manual/quic/): `quic/<host_name>:<port>`
   * `-e, --connect <ENDPOINT>...`: An endpoint this router will try to connect
 to. Repeat this option to connect to several peers or routers.
   * `--no-multicast-scouting`: By default zenohd replies to multicast scouting
 messages for being discovered by peers and clients.
     This option disables this feature.
   * `-i, --id <hex_string>`: The identifier (as an hexadecimal string - e.g.:
 A0B23...) that zenohd must use.
      **WARNING**: this identifier must be unique in the system! If not set, a
 random unsigned 128bit integer will be used.
   * `--no-timestamp`: By default zenohd adds a HLC-generated Timestamp to each
 routed Data if there isn't already one.
     This option disables this feature.
   * `-P, --plugin [<PLUGIN_NAME> | <PLUGIN_NAME>:<LIBRARY_PATH>]...`: A
 [plugin](https://zenoh.io/docs/manual/plugins/) that must be loaded. Accepted
 values:
      - a plugin name; zenohd will search for a library named
 `libzenoh_plugin_<name>.so` on Unix, `libzenoh_plugin_<PLUGIN_NAME>.dylib` on
 MacOS or `zenoh_plugin_<PLUGIN_NAME>.dll` on Windows.
      - `"<PLUGIN_NAME>:<LIBRARY_PATH>"`; the plugin will be loaded from library
 file at `<LIBRARY_PATH>`.
 .
     Repeat this option to load several plugins.
   * `--plugin-search-dir <DIRECTORY>...`: A directory where to search for
 [plugins](https://zenoh.io/docs/manual/plugins/) libraries to load.
     Repeat this option to specify several search directories'. By default, the
 plugins libraries will be searched in:
     `'/usr/local/lib:/usr/lib:~/.zenoh/lib:.'`
   * `--rest-http-port <rest-http-port>`: Configures the [REST
 plugin](https://zenoh.io/docs/manual/plugin-http/)'s HTTP port. Accepted
 values:
       - a port number
       - a string with format `<local_ip>:<port_number>` (to bind the HTTP
 server to a specific interface)
       - `"None"` to deactivate the REST plugin
 .
     If not specified, the REST plugin will be active on any interface (`[::]`)
 and port `8000`.
 .
 > [!WARNING]
 > The following documentation pertains to the v0.6+ API, which comes many
 changes to the behaviour and configuration of Zenoh.
 To access the v0.5 version of the code and matching README, please go to the
 [0.5.0-beta.9](https://github.com/eclipse-zenoh/zenoh/tree/0.5.0-beta.9) tagged
 version.
 .
 -------------------------------
 ## Plugins
 .
 > [!WARNING]
 > As Rust doesn't have a stable ABI, the plugins should be
 built with the exact same Rust version than `zenohd`, and using for `zenoh`
 dependency the same version (or commit number) than 'zenohd'.
 Otherwise, incompatibilities in memory mapping of shared types between `zenohd`
 and the library can lead to a `"SIGSEV"` crash.
 .
 By default the Zenoh router is delivered or built with 2 plugins. These may be
 configured through a configuration file, or through individual changes to the
 configuration via the `--cfg` CLI option or via zenoh puts on individual parts
 of the configuration.
 .
 > [!WARNING]
 > Since `v0.6`, `zenohd` no longer loads every available plugin at startup.
 Instead, only configured plugins are loaded (after processing `--cfg` and
 `--plugin` options). Once `zenohd` is running, plugins can be hot-loaded and,
 if they support it, reconfigured at runtime by editing their configuration
 through the adminspace.
 .
 Note that the REST plugin is added to the configuration by the default value of
 the `--rest-http-port` CLI argument.
 .
 **[REST plugin](https://zenoh.io/docs/manual/plugin-http/)** (exposing a REST
 API):
 This plugin converts GET and PUT REST requests into Zenoh gets and puts
 respectively.
 .
 **[Storages plugin](https://zenoh.io/docs/manual/plugin-storage-manager/)**
 (managing [backends and
 storages](https://zenoh.io/docs/manual/plugin-storage-manager/#backends-and-volumes))
 This plugin allows you to easily define storages. These will store key-value
 pairs they subscribed to, and send the most recent ones when queried. Check out
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) for info on how to configure them.
 .
 -------------------------------
 ## Troubleshooting
 .
 In case of troubles, please first check on [this
 page](https://zenoh.io/docs/getting-started/troubleshooting/) if the trouble
 and cause are already known.
 Otherwise, you can ask a question on the [zenoh Discord
 server](https://discord.gg/vSDSpqnbkm), or [create an
 issue](https://github.com/eclipse-zenoh/zenoh/issues).
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

Package: zenoh
Version: 1.0.0~alpha.1-1
Architecture: amd64
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 40
Depends: zenoh-plugin-rest (=1.0.0~alpha.1-1), zenoh-plugin-storage-manager (=1.0.0~alpha.1-1), zenohd (=1.0.0~alpha.1-1)
Filename: 1.0.0-alpha.1/zenoh_1.0.0~alpha.1-1_amd64.deb
Size: 17504
MD5sum: 613253f030f22015486c912417a15aff
SHA1: e19a431c4d8538a84f1c6a7ea680320ebd91ea4d
SHA256: 59ca8623c57b2a222c238475e62f4af931563c4ddd2ae73e97ed348609bffd0e
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: Zenoh: Zero Overhead Pub/sub, Store/Query and Compute.
 <img
 src="https://raw.githubusercontent.com/eclipse-zenoh/zenoh/master/zenoh-dragon.png"
 height="150">
 .
 [![CI](https://github.com/eclipse-zenoh/zenoh/workflows/CI/badge.svg)](https://github.com/eclipse-zenoh/zenoh/actions?query=workflow%3A%22CI%22)
 [![Documentation
 Status](https://readthedocs.org/projects/zenoh-rust/badge/?version=latest)](https://zenoh-rust.readthedocs.io/en/latest/?badge=latest)
 [![Discussion](https://img.shields.io/badge/discussion-on%20github-blue)](https://github.com/eclipse-zenoh/roadmap/discussions)
 [![Discord](https://img.shields.io/badge/chat-on%20discord-blue)](https://discord.gg/2GJ958VuHs)
 [![License](https://img.shields.io/badge/License-EPL%202.0-blue)](https://choosealicense.com/licenses/epl-2.0/)
 [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
 .
 # 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](http://zenoh.io) and the
 [roadmap](https://github.com/eclipse-zenoh/roadmap) for more detailed
 information.
 .
 -------------------------------
 ## Getting Started
 .
 Zenoh is extremely easy to learn, the best place to master the fundamentals is
 our [getting started guide](https://zenoh.io/docs/getting-started/first-app/).
 .
 -------------------------------
 ## How to install it
 .
 To install the latest release of the Zenoh router (`zenohd`) and its default
 plugins (REST API plugin and Storages Manager plugin) you can do as follows:
 .
 ### Manual installation (all platforms)
 .
 All release packages can be downloaded from:
  - https://download.eclipse.org/zenoh/zenoh/latest/
 .
 Each subdirectory has the name of the Rust target. See the platforms each
 target corresponds to on
 https://doc.rust-lang.org/stable/rustc/platform-support.html
 .
 Choose your platform and download the `.zip` file.
 Unzip it where you want, and run the extracted `zenohd` binary.
 .
 ### Linux Debian
 .
 Add Eclipse Zenoh private repository to the sources list, and install the
 `zenoh` package:
 .
 ```bash
 echo "deb [trusted=yes] https://download.eclipse.org/zenoh/debian-repo/ /" |
 sudo tee -a /etc/apt/sources.list.d/zenoh.list > /dev/null
 sudo apt update
 sudo apt install zenoh
 ```
 Then you can start run `zenohd`.
 .
 ### MacOS
 .
 Tap our brew package repository and install the `zenoh` formula:
 .
 ```bash
 brew tap eclipse-zenoh/homebrew-zenoh
 brew install zenoh
 ```
 Then you can start run `zenohd`.
 .
 .
 ### Rust API
 .
 -------------------------------
 ## How to build it
 .
 > [!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 maintaining compatibility between the
 various git repositories in the Zenoh project.
 .
 Install [Cargo and
 Rust](https://doc.rust-lang.org/cargo/getting-started/installation.html). Zenoh
 can be successfully compiled with Rust stable (>= 1.71.0), so no special
 configuration is required from your side. If you already have the Rust
 toolchain installed, make sure it is up-to-date with:
 .
 ```bash
 $ rustup update
 ```
 .
 To build Zenoh, just type the following command after having followed the
 previous instructions:
 .
 ```bash
 $ cargo build --release --all-targets
 ```
 .
 Zenoh's router is built as `target/release/zenohd`. All the examples are built
 into the `target/release/examples` directory. They can all work in
 peer-to-peer, or interconnected via the zenoh router.
 .
 -------------------------------
 ## Quick tests of your build:
 .
 **Peer-to-peer tests:**
 .
  - **pub/sub**
     - run: `./target/release/examples/z_sub`
     - in another shell run: `./target/release/examples/z_put`
     - the subscriber should receive the publication.
 .
  - **get/queryable**
     - run: `./target/release/examples/z_queryable`
     - in another shell run: `./target/release/examples/z_get`
     - the queryable should display the log in its listener, and the get should
 receive the queryable result.
 .
 **Routed tests:**
 .
 > [!NOTE]
 > **Windows users**: to properly execute the commands below in PowerShell you
 need to escape `"` characters as `\"`.
 .
  - **put/store/get**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell run: `./target/release/examples/z_put`
     - then run `./target/release/examples/z_get`
     - the get should receive the stored publication.
 .
  - **REST API using `curl` tool**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, do a publication via the REST API:
       `curl -X PUT -d '"Hello World!"' http://localhost:8000/demo/example/test`
     - get it back via the REST API:
       `curl http://localhost:8000/demo/example/test`
 .
   - **router admin space via the REST API**
     - run the Zenoh router with permission to perform config changes via the
 admin space, and with a memory storage:
       `./target/release/zenohd --adminspace-permissions=rw
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, get info of the zenoh router via the zenoh admin space:
       `curl http://localhost:8000/@/router/local`
     - get the volumes of the router (only memory by default):
       `curl 'http://localhost:8000/@/router/local/**/volumes/*'`
     - get the storages of the local router (the memory storage configured at
 startup on '/demo/example/**' should be present):
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
     - add another memory storage on `/demo/mystore/**`:
       `curl -X PUT -H 'content-type:application/json' -d
 '{"key_expr":"demo/mystore/**","volume":"memory"}'
 http://localhost:8000/@/router/local/config/plugins/storage_manager/storages/mystore`
     - check it has been created:
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
 .
 **Configuration options:**
 .
 A Zenoh configuration file can be provided via CLI to all Zenoh examples and
 the Zenoh router.
 .
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file and
 the available options.
 .
 .
 See other examples of Zenoh usage in [examples/](examples)
 .
 > [!NOTE]
 > **Zenoh Runtime Configuration**: Starting from version 0.11.0-rc, Zenoh
 allows for configuring the number of worker threads and other advanced options
 of the runtime. For guidance on utilizing it, please refer to the
 [doc](https://docs.rs/zenoh-runtime/latest/zenoh_runtime/enum.ZRuntime.html).
 .
 -------------------------------
 ## Zenoh router command line arguments
 `zenohd` accepts the following arguments:
 .
   * `--adminspace-permissions <[r|w|rw|none]>`: Configure the read and/or write
 permissions on the admin space. Default is read only.
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file. All
 properties of this configuration are optional, so you may not need such a large
 configuration for your use-case.
   * `--cfg <KEY>:<VALUE>`: allows you to change specific parts of the
 configuration right after it has been constructed. VALUE must be a valid JSON5
 value, and key must be a path through the configuration file, where each
 element is separated by a `/`. When inserting in parts of the config that are
 arrays, you may use indexes, or may use `+` to indicate that you want to append
 your value to the array. `--cfg` passed values will always override any
 previously existing value for their key in the configuration.
   * `-l, --listen <ENDPOINT>...`: An endpoint on which this router will listen
 for incoming sessions.
     Repeat this option to open several listeners. By default, `tcp/[::]:7447`
 is used. The following endpoints are currently supported:
       - TCP: `tcp/<host_name_or_IPv4_or_IPv6>:<port>`
       - UDP: `udp/<host_name_or_IPv4_or_IPv6>:<port>`
       - [TCP+TLS](https://zenoh.io/docs/manual/tls/): `tls/<host_name>:<port>`
       - [QUIC](https://zenoh.io/docs/manual/quic/): `quic/<host_name>:<port>`
   * `-e, --connect <ENDPOINT>...`: An endpoint this router will try to connect
 to. Repeat this option to connect to several peers or routers.
   * `--no-multicast-scouting`: By default zenohd replies to multicast scouting
 messages for being discovered by peers and clients.
     This option disables this feature.
   * `-i, --id <hex_string>`: The identifier (as an hexadecimal string - e.g.:
 A0B23...) that zenohd must use.
      **WARNING**: this identifier must be unique in the system! If not set, a
 random unsigned 128bit integer will be used.
   * `--no-timestamp`: By default zenohd adds a HLC-generated Timestamp to each
 routed Data if there isn't already one.
     This option disables this feature.
   * `-P, --plugin [<PLUGIN_NAME> | <PLUGIN_NAME>:<LIBRARY_PATH>]...`: A
 [plugin](https://zenoh.io/docs/manual/plugins/) that must be loaded. Accepted
 values:
      - a plugin name; zenohd will search for a library named
 `libzenoh_plugin_<name>.so` on Unix, `libzenoh_plugin_<PLUGIN_NAME>.dylib` on
 MacOS or `zenoh_plugin_<PLUGIN_NAME>.dll` on Windows.
      - `"<PLUGIN_NAME>:<LIBRARY_PATH>"`; the plugin will be loaded from library
 file at `<LIBRARY_PATH>`.
 .
     Repeat this option to load several plugins.
   * `--plugin-search-dir <DIRECTORY>...`: A directory where to search for
 [plugins](https://zenoh.io/docs/manual/plugins/) libraries to load.
     Repeat this option to specify several search directories'. By default, the
 plugins libraries will be searched in:
     `'/usr/local/lib:/usr/lib:~/.zenoh/lib:.'`
   * `--rest-http-port <rest-http-port>`: Configures the [REST
 plugin](https://zenoh.io/docs/manual/plugin-http/)'s HTTP port. Accepted
 values:
       - a port number
       - a string with format `<local_ip>:<port_number>` (to bind the HTTP
 server to a specific interface)
       - `"None"` to deactivate the REST plugin
 .
     If not specified, the REST plugin will be active on any interface (`[::]`)
 and port `8000`.
 .
 > [!WARNING]
 > The following documentation pertains to the v0.6+ API, which comes many
 changes to the behaviour and configuration of Zenoh.
 To access the v0.5 version of the code and matching README, please go to the
 [0.5.0-beta.9](https://github.com/eclipse-zenoh/zenoh/tree/0.5.0-beta.9) tagged
 version.
 .
 -------------------------------
 ## Plugins
 .
 > [!WARNING]
 > As Rust doesn't have a stable ABI, the plugins should be
 built with the exact same Rust version than `zenohd`, and using for `zenoh`
 dependency the same version (or commit number) than 'zenohd'.
 Otherwise, incompatibilities in memory mapping of shared types between `zenohd`
 and the library can lead to a `"SIGSEV"` crash.
 .
 By default the Zenoh router is delivered or built with 2 plugins. These may be
 configured through a configuration file, or through individual changes to the
 configuration via the `--cfg` CLI option or via zenoh puts on individual parts
 of the configuration.
 .
 > [!WARNING]
 > Since `v0.6`, `zenohd` no longer loads every available plugin at startup.
 Instead, only configured plugins are loaded (after processing `--cfg` and
 `--plugin` options). Once `zenohd` is running, plugins can be hot-loaded and,
 if they support it, reconfigured at runtime by editing their configuration
 through the adminspace.
 .
 Note that the REST plugin is added to the configuration by the default value of
 the `--rest-http-port` CLI argument.
 .
 **[REST plugin](https://zenoh.io/docs/manual/plugin-http/)** (exposing a REST
 API):
 This plugin converts GET and PUT REST requests into Zenoh gets and puts
 respectively.
 .
 **[Storages plugin](https://zenoh.io/docs/manual/plugin-storage-manager/)**
 (managing [backends and
 storages](https://zenoh.io/docs/manual/plugin-storage-manager/#backends-and-volumes))
 This plugin allows you to easily define storages. These will store key-value
 pairs they subscribed to, and send the most recent ones when queried. Check out
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) for info on how to configure them.
 .
 -------------------------------
 ## Troubleshooting
 .
 In case of troubles, please first check on [this
 page](https://zenoh.io/docs/getting-started/troubleshooting/) if the trouble
 and cause are already known.
 Otherwise, you can ask a question on the [zenoh Discord
 server](https://discord.gg/vSDSpqnbkm), or [create an
 issue](https://github.com/eclipse-zenoh/zenoh/issues).
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

Package: zenoh
Version: 1.0.0~alpha.1-1
Architecture: arm64
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 40
Depends: zenoh-plugin-rest (=1.0.0~alpha.1-1), zenoh-plugin-storage-manager (=1.0.0~alpha.1-1), zenohd (=1.0.0~alpha.1-1)
Filename: 1.0.0-alpha.1/zenoh_1.0.0~alpha.1-1_arm64.deb
Size: 17504
MD5sum: 8e3eeb809497e0e206e33feaae845537
SHA1: 8940562956c677814d5fab9c716b850c29f161ad
SHA256: e1d162fb983e79e86bf26077aa9c0db6f2c53322033357d860c5c7678253f79a
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: Zenoh: Zero Overhead Pub/sub, Store/Query and Compute.
 <img
 src="https://raw.githubusercontent.com/eclipse-zenoh/zenoh/master/zenoh-dragon.png"
 height="150">
 .
 [![CI](https://github.com/eclipse-zenoh/zenoh/workflows/CI/badge.svg)](https://github.com/eclipse-zenoh/zenoh/actions?query=workflow%3A%22CI%22)
 [![Documentation
 Status](https://readthedocs.org/projects/zenoh-rust/badge/?version=latest)](https://zenoh-rust.readthedocs.io/en/latest/?badge=latest)
 [![Discussion](https://img.shields.io/badge/discussion-on%20github-blue)](https://github.com/eclipse-zenoh/roadmap/discussions)
 [![Discord](https://img.shields.io/badge/chat-on%20discord-blue)](https://discord.gg/2GJ958VuHs)
 [![License](https://img.shields.io/badge/License-EPL%202.0-blue)](https://choosealicense.com/licenses/epl-2.0/)
 [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
 .
 # 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](http://zenoh.io) and the
 [roadmap](https://github.com/eclipse-zenoh/roadmap) for more detailed
 information.
 .
 -------------------------------
 ## Getting Started
 .
 Zenoh is extremely easy to learn, the best place to master the fundamentals is
 our [getting started guide](https://zenoh.io/docs/getting-started/first-app/).
 .
 -------------------------------
 ## How to install it
 .
 To install the latest release of the Zenoh router (`zenohd`) and its default
 plugins (REST API plugin and Storages Manager plugin) you can do as follows:
 .
 ### Manual installation (all platforms)
 .
 All release packages can be downloaded from:
  - https://download.eclipse.org/zenoh/zenoh/latest/
 .
 Each subdirectory has the name of the Rust target. See the platforms each
 target corresponds to on
 https://doc.rust-lang.org/stable/rustc/platform-support.html
 .
 Choose your platform and download the `.zip` file.
 Unzip it where you want, and run the extracted `zenohd` binary.
 .
 ### Linux Debian
 .
 Add Eclipse Zenoh private repository to the sources list, and install the
 `zenoh` package:
 .
 ```bash
 echo "deb [trusted=yes] https://download.eclipse.org/zenoh/debian-repo/ /" |
 sudo tee -a /etc/apt/sources.list.d/zenoh.list > /dev/null
 sudo apt update
 sudo apt install zenoh
 ```
 Then you can start run `zenohd`.
 .
 ### MacOS
 .
 Tap our brew package repository and install the `zenoh` formula:
 .
 ```bash
 brew tap eclipse-zenoh/homebrew-zenoh
 brew install zenoh
 ```
 Then you can start run `zenohd`.
 .
 .
 ### Rust API
 .
 -------------------------------
 ## How to build it
 .
 > [!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 maintaining compatibility between the
 various git repositories in the Zenoh project.
 .
 Install [Cargo and
 Rust](https://doc.rust-lang.org/cargo/getting-started/installation.html). Zenoh
 can be successfully compiled with Rust stable (>= 1.71.0), so no special
 configuration is required from your side. If you already have the Rust
 toolchain installed, make sure it is up-to-date with:
 .
 ```bash
 $ rustup update
 ```
 .
 To build Zenoh, just type the following command after having followed the
 previous instructions:
 .
 ```bash
 $ cargo build --release --all-targets
 ```
 .
 Zenoh's router is built as `target/release/zenohd`. All the examples are built
 into the `target/release/examples` directory. They can all work in
 peer-to-peer, or interconnected via the zenoh router.
 .
 -------------------------------
 ## Quick tests of your build:
 .
 **Peer-to-peer tests:**
 .
  - **pub/sub**
     - run: `./target/release/examples/z_sub`
     - in another shell run: `./target/release/examples/z_put`
     - the subscriber should receive the publication.
 .
  - **get/queryable**
     - run: `./target/release/examples/z_queryable`
     - in another shell run: `./target/release/examples/z_get`
     - the queryable should display the log in its listener, and the get should
 receive the queryable result.
 .
 **Routed tests:**
 .
 > [!NOTE]
 > **Windows users**: to properly execute the commands below in PowerShell you
 need to escape `"` characters as `\"`.
 .
  - **put/store/get**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell run: `./target/release/examples/z_put`
     - then run `./target/release/examples/z_get`
     - the get should receive the stored publication.
 .
  - **REST API using `curl` tool**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, do a publication via the REST API:
       `curl -X PUT -d '"Hello World!"' http://localhost:8000/demo/example/test`
     - get it back via the REST API:
       `curl http://localhost:8000/demo/example/test`
 .
   - **router admin space via the REST API**
     - run the Zenoh router with permission to perform config changes via the
 admin space, and with a memory storage:
       `./target/release/zenohd --adminspace-permissions=rw
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, get info of the zenoh router via the zenoh admin space:
       `curl http://localhost:8000/@/router/local`
     - get the volumes of the router (only memory by default):
       `curl 'http://localhost:8000/@/router/local/**/volumes/*'`
     - get the storages of the local router (the memory storage configured at
 startup on '/demo/example/**' should be present):
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
     - add another memory storage on `/demo/mystore/**`:
       `curl -X PUT -H 'content-type:application/json' -d
 '{"key_expr":"demo/mystore/**","volume":"memory"}'
 http://localhost:8000/@/router/local/config/plugins/storage_manager/storages/mystore`
     - check it has been created:
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
 .
 **Configuration options:**
 .
 A Zenoh configuration file can be provided via CLI to all Zenoh examples and
 the Zenoh router.
 .
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file and
 the available options.
 .
 .
 See other examples of Zenoh usage in [examples/](examples)
 .
 > [!NOTE]
 > **Zenoh Runtime Configuration**: Starting from version 0.11.0-rc, Zenoh
 allows for configuring the number of worker threads and other advanced options
 of the runtime. For guidance on utilizing it, please refer to the
 [doc](https://docs.rs/zenoh-runtime/latest/zenoh_runtime/enum.ZRuntime.html).
 .
 -------------------------------
 ## Zenoh router command line arguments
 `zenohd` accepts the following arguments:
 .
   * `--adminspace-permissions <[r|w|rw|none]>`: Configure the read and/or write
 permissions on the admin space. Default is read only.
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file. All
 properties of this configuration are optional, so you may not need such a large
 configuration for your use-case.
   * `--cfg <KEY>:<VALUE>`: allows you to change specific parts of the
 configuration right after it has been constructed. VALUE must be a valid JSON5
 value, and key must be a path through the configuration file, where each
 element is separated by a `/`. When inserting in parts of the config that are
 arrays, you may use indexes, or may use `+` to indicate that you want to append
 your value to the array. `--cfg` passed values will always override any
 previously existing value for their key in the configuration.
   * `-l, --listen <ENDPOINT>...`: An endpoint on which this router will listen
 for incoming sessions.
     Repeat this option to open several listeners. By default, `tcp/[::]:7447`
 is used. The following endpoints are currently supported:
       - TCP: `tcp/<host_name_or_IPv4_or_IPv6>:<port>`
       - UDP: `udp/<host_name_or_IPv4_or_IPv6>:<port>`
       - [TCP+TLS](https://zenoh.io/docs/manual/tls/): `tls/<host_name>:<port>`
       - [QUIC](https://zenoh.io/docs/manual/quic/): `quic/<host_name>:<port>`
   * `-e, --connect <ENDPOINT>...`: An endpoint this router will try to connect
 to. Repeat this option to connect to several peers or routers.
   * `--no-multicast-scouting`: By default zenohd replies to multicast scouting
 messages for being discovered by peers and clients.
     This option disables this feature.
   * `-i, --id <hex_string>`: The identifier (as an hexadecimal string - e.g.:
 A0B23...) that zenohd must use.
      **WARNING**: this identifier must be unique in the system! If not set, a
 random unsigned 128bit integer will be used.
   * `--no-timestamp`: By default zenohd adds a HLC-generated Timestamp to each
 routed Data if there isn't already one.
     This option disables this feature.
   * `-P, --plugin [<PLUGIN_NAME> | <PLUGIN_NAME>:<LIBRARY_PATH>]...`: A
 [plugin](https://zenoh.io/docs/manual/plugins/) that must be loaded. Accepted
 values:
      - a plugin name; zenohd will search for a library named
 `libzenoh_plugin_<name>.so` on Unix, `libzenoh_plugin_<PLUGIN_NAME>.dylib` on
 MacOS or `zenoh_plugin_<PLUGIN_NAME>.dll` on Windows.
      - `"<PLUGIN_NAME>:<LIBRARY_PATH>"`; the plugin will be loaded from library
 file at `<LIBRARY_PATH>`.
 .
     Repeat this option to load several plugins.
   * `--plugin-search-dir <DIRECTORY>...`: A directory where to search for
 [plugins](https://zenoh.io/docs/manual/plugins/) libraries to load.
     Repeat this option to specify several search directories'. By default, the
 plugins libraries will be searched in:
     `'/usr/local/lib:/usr/lib:~/.zenoh/lib:.'`
   * `--rest-http-port <rest-http-port>`: Configures the [REST
 plugin](https://zenoh.io/docs/manual/plugin-http/)'s HTTP port. Accepted
 values:
       - a port number
       - a string with format `<local_ip>:<port_number>` (to bind the HTTP
 server to a specific interface)
       - `"None"` to deactivate the REST plugin
 .
     If not specified, the REST plugin will be active on any interface (`[::]`)
 and port `8000`.
 .
 > [!WARNING]
 > The following documentation pertains to the v0.6+ API, which comes many
 changes to the behaviour and configuration of Zenoh.
 To access the v0.5 version of the code and matching README, please go to the
 [0.5.0-beta.9](https://github.com/eclipse-zenoh/zenoh/tree/0.5.0-beta.9) tagged
 version.
 .
 -------------------------------
 ## Plugins
 .
 > [!WARNING]
 > As Rust doesn't have a stable ABI, the plugins should be
 built with the exact same Rust version than `zenohd`, and using for `zenoh`
 dependency the same version (or commit number) than 'zenohd'.
 Otherwise, incompatibilities in memory mapping of shared types between `zenohd`
 and the library can lead to a `"SIGSEV"` crash.
 .
 By default the Zenoh router is delivered or built with 2 plugins. These may be
 configured through a configuration file, or through individual changes to the
 configuration via the `--cfg` CLI option or via zenoh puts on individual parts
 of the configuration.
 .
 > [!WARNING]
 > Since `v0.6`, `zenohd` no longer loads every available plugin at startup.
 Instead, only configured plugins are loaded (after processing `--cfg` and
 `--plugin` options). Once `zenohd` is running, plugins can be hot-loaded and,
 if they support it, reconfigured at runtime by editing their configuration
 through the adminspace.
 .
 Note that the REST plugin is added to the configuration by the default value of
 the `--rest-http-port` CLI argument.
 .
 **[REST plugin](https://zenoh.io/docs/manual/plugin-http/)** (exposing a REST
 API):
 This plugin converts GET and PUT REST requests into Zenoh gets and puts
 respectively.
 .
 **[Storages plugin](https://zenoh.io/docs/manual/plugin-storage-manager/)**
 (managing [backends and
 storages](https://zenoh.io/docs/manual/plugin-storage-manager/#backends-and-volumes))
 This plugin allows you to easily define storages. These will store key-value
 pairs they subscribed to, and send the most recent ones when queried. Check out
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) for info on how to configure them.
 .
 -------------------------------
 ## Troubleshooting
 .
 In case of troubles, please first check on [this
 page](https://zenoh.io/docs/getting-started/troubleshooting/) if the trouble
 and cause are already known.
 Otherwise, you can ask a question on the [zenoh Discord
 server](https://discord.gg/vSDSpqnbkm), or [create an
 issue](https://github.com/eclipse-zenoh/zenoh/issues).
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

Package: zenoh-plugin-rest
Version: 1.0.0~alpha.1-1
Architecture: armhf
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 8455
Depends: zenohd (=1.0.0~alpha.1-1)
Filename: 1.0.0-alpha.1/zenoh-plugin-rest_1.0.0~alpha.1-1_armhf.deb
Size: 1864180
MD5sum: dea9e078042875afd3fe504d454969d7
SHA1: d97bc9fd30cc0c87cb34c56b4895501d45988359
SHA256: 138446169cdba1200ac5a24d74a2e4caae98d2ceaab102cb6bd042fc5feaa7e9
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: The zenoh REST plugin
 # ⚠️ WARNING ⚠️
 .
 This crate is intended for Zenoh's internal use.
 .
 - [Click here for Zenoh's main
 repository](https://github.com/eclipse-zenoh/zenoh)
 - [Click here for Zenoh's documentation](https://zenoh.io)
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

Package: zenoh-plugin-rest
Version: 1.0.0~alpha.1-1
Architecture: armel
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 8576
Depends: zenohd (=1.0.0~alpha.1-1)
Filename: 1.0.0-alpha.1/zenoh-plugin-rest_1.0.0~alpha.1-1_armel.deb
Size: 1875688
MD5sum: d1fc11118d65cb870d0b27cabf640159
SHA1: 70c22dc887ec214a841bc18a6c6641af961b58c6
SHA256: 1f5de4b5bed728e24e7e58607bb683be05bc93b2b443057a4abd5cffdfd45014
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: The zenoh REST plugin
 # ⚠️ WARNING ⚠️
 .
 This crate is intended for Zenoh's internal use.
 .
 - [Click here for Zenoh's main
 repository](https://github.com/eclipse-zenoh/zenoh)
 - [Click here for Zenoh's documentation](https://zenoh.io)
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

Package: zenoh-plugin-rest
Version: 1.0.0~alpha.1-1
Architecture: arm64
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 10398
Depends: zenohd (=1.0.0~alpha.1-1)
Filename: 1.0.0-alpha.1/zenoh-plugin-rest_1.0.0~alpha.1-1_arm64.deb
Size: 2000872
MD5sum: 143f021d0a0273eb62069ae11f342dd5
SHA1: 112af4f23f8fedff496756e78883a277fb2849da
SHA256: 085c1818853417256a79ad312223837eb801ff268197401d2501dfcd87bb1290
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: The zenoh REST plugin
 # ⚠️ WARNING ⚠️
 .
 This crate is intended for Zenoh's internal use.
 .
 - [Click here for Zenoh's main
 repository](https://github.com/eclipse-zenoh/zenoh)
 - [Click here for Zenoh's documentation](https://zenoh.io)
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

Package: zenoh-plugin-rest
Version: 1.0.0~alpha.1-1
Architecture: amd64
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 11596
Depends: zenohd (=1.0.0~alpha.1-1)
Filename: 1.0.0-alpha.1/zenoh-plugin-rest_1.0.0~alpha.1-1_amd64.deb
Size: 2207132
MD5sum: 2f361a49e4d4c5079d454a3833e93d8d
SHA1: 9d92df08f5492a6ec0586a474b9168324444b64e
SHA256: 95e2a268bcd3642130ef1172808899c4d94f56a72ceda07e9c8cf35004b85172
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: The zenoh REST plugin
 # ⚠️ WARNING ⚠️
 .
 This crate is intended for Zenoh's internal use.
 .
 - [Click here for Zenoh's main
 repository](https://github.com/eclipse-zenoh/zenoh)
 - [Click here for Zenoh's documentation](https://zenoh.io)
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

Package: zenoh-plugin-storage-manager
Version: 1.0.0~alpha.1-1
Architecture: amd64
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 11954
Depends: zenohd (=1.0.0~alpha.1-1)
Filename: 1.0.0-alpha.1/zenoh-plugin-storage-manager_1.0.0~alpha.1-1_amd64.deb
Size: 2279948
MD5sum: 4cfe4886bfa111f35a911abfc1024a83
SHA1: 66bf33b197c13aced38de88246cb29f6f0885792
SHA256: cfb9c8eb1cb93db3b2eb2a3720aa6bb37709f62c888ea3daee57774aa6ebf172
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: The zenoh storages plugin.
 # ⚠️ WARNING ⚠️
 .
 This crate is intended for Zenoh's internal use.
 .
 - [Click here for Zenoh's main
 repository](https://github.com/eclipse-zenoh/zenoh)
 - [Click here for Zenoh's documentation](https://zenoh.io)
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

Package: zenoh-plugin-storage-manager
Version: 1.0.0~alpha.1-1
Architecture: arm64
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 10710
Depends: zenohd (=1.0.0~alpha.1-1)
Filename: 1.0.0-alpha.1/zenoh-plugin-storage-manager_1.0.0~alpha.1-1_arm64.deb
Size: 2064280
MD5sum: 56dbdcc33f4800540ce9bae4195e8162
SHA1: 2e3aaef429da269da746dc2d706da5288fad893d
SHA256: 457db9276033952da5ba8d862c1d92ef64ee857055cb8b7fd8d0ad0d42ece71f
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: The zenoh storages plugin.
 # ⚠️ WARNING ⚠️
 .
 This crate is intended for Zenoh's internal use.
 .
 - [Click here for Zenoh's main
 repository](https://github.com/eclipse-zenoh/zenoh)
 - [Click here for Zenoh's documentation](https://zenoh.io)
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

Package: zenoh-plugin-storage-manager
Version: 1.0.0~alpha.1-1
Architecture: armel
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 8958
Depends: zenohd (=1.0.0~alpha.1-1)
Filename: 1.0.0-alpha.1/zenoh-plugin-storage-manager_1.0.0~alpha.1-1_armel.deb
Size: 1962484
MD5sum: 1c6cfb99d3ad08ce49f020ba9631ce58
SHA1: ac1fafb3cda0d1b4e12359471f7b93e273cc15a7
SHA256: ced71fc79770a1c3c031b3990b87405f51351c9c62b668b9269b39a6524bfc48
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: The zenoh storages plugin.
 # ⚠️ WARNING ⚠️
 .
 This crate is intended for Zenoh's internal use.
 .
 - [Click here for Zenoh's main
 repository](https://github.com/eclipse-zenoh/zenoh)
 - [Click here for Zenoh's documentation](https://zenoh.io)
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

Package: zenoh-plugin-storage-manager
Version: 1.0.0~alpha.1-1
Architecture: armhf
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 8829
Depends: zenohd (=1.0.0~alpha.1-1)
Filename: 1.0.0-alpha.1/zenoh-plugin-storage-manager_1.0.0~alpha.1-1_armhf.deb
Size: 1950980
MD5sum: 123e1a7707c4511df2144c0c889ef544
SHA1: 12ae2abc003d99fded1204a5b5bc272ef36a9abb
SHA256: 63253b9d7569bbcd9167d1f7a96895658d233dd3b65854ee623a2cd11d71ad83
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: The zenoh storages plugin.
 # ⚠️ WARNING ⚠️
 .
 This crate is intended for Zenoh's internal use.
 .
 - [Click here for Zenoh's main
 repository](https://github.com/eclipse-zenoh/zenoh)
 - [Click here for Zenoh's documentation](https://zenoh.io)
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

Package: zenohd
Version: 1.0.0~alpha.1-1
Architecture: armel
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 17676
Filename: 1.0.0-alpha.1/zenohd_1.0.0~alpha.1-1_armel.deb
Size: 4353260
MD5sum: c8defa035b849baf27062aa897838603
SHA1: 28da2fbed95ea7e436f5c31130a32eb5a9a7f173
SHA256: c4dffed6f93978ebb18a6f15365ec2bf80d9920b76d835e78bc223f9dfcaabf3
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: Zenoh: Zero Overhead Pub/sub, Store/Query and Compute.
 <img
 src="https://raw.githubusercontent.com/eclipse-zenoh/zenoh/master/zenoh-dragon.png"
 height="150">
 .
 [![CI](https://github.com/eclipse-zenoh/zenoh/workflows/CI/badge.svg)](https://github.com/eclipse-zenoh/zenoh/actions?query=workflow%3A%22CI%22)
 [![Documentation
 Status](https://readthedocs.org/projects/zenoh-rust/badge/?version=latest)](https://zenoh-rust.readthedocs.io/en/latest/?badge=latest)
 [![Discussion](https://img.shields.io/badge/discussion-on%20github-blue)](https://github.com/eclipse-zenoh/roadmap/discussions)
 [![Discord](https://img.shields.io/badge/chat-on%20discord-blue)](https://discord.gg/2GJ958VuHs)
 [![License](https://img.shields.io/badge/License-EPL%202.0-blue)](https://choosealicense.com/licenses/epl-2.0/)
 [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
 .
 # 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](http://zenoh.io) and the
 [roadmap](https://github.com/eclipse-zenoh/roadmap) for more detailed
 information.
 .
 -------------------------------
 ## Getting Started
 .
 Zenoh is extremely easy to learn, the best place to master the fundamentals is
 our [getting started guide](https://zenoh.io/docs/getting-started/first-app/).
 .
 -------------------------------
 ## How to install it
 .
 To install the latest release of the Zenoh router (`zenohd`) and its default
 plugins (REST API plugin and Storages Manager plugin) you can do as follows:
 .
 ### Manual installation (all platforms)
 .
 All release packages can be downloaded from:
  - https://download.eclipse.org/zenoh/zenoh/latest/
 .
 Each subdirectory has the name of the Rust target. See the platforms each
 target corresponds to on
 https://doc.rust-lang.org/stable/rustc/platform-support.html
 .
 Choose your platform and download the `.zip` file.
 Unzip it where you want, and run the extracted `zenohd` binary.
 .
 ### Linux Debian
 .
 Add Eclipse Zenoh private repository to the sources list, and install the
 `zenoh` package:
 .
 ```bash
 echo "deb [trusted=yes] https://download.eclipse.org/zenoh/debian-repo/ /" |
 sudo tee -a /etc/apt/sources.list.d/zenoh.list > /dev/null
 sudo apt update
 sudo apt install zenoh
 ```
 Then you can start run `zenohd`.
 .
 ### MacOS
 .
 Tap our brew package repository and install the `zenoh` formula:
 .
 ```bash
 brew tap eclipse-zenoh/homebrew-zenoh
 brew install zenoh
 ```
 Then you can start run `zenohd`.
 .
 .
 ### Rust API
 .
 -------------------------------
 ## How to build it
 .
 > [!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 maintaining compatibility between the
 various git repositories in the Zenoh project.
 .
 Install [Cargo and
 Rust](https://doc.rust-lang.org/cargo/getting-started/installation.html). Zenoh
 can be successfully compiled with Rust stable (>= 1.71.0), so no special
 configuration is required from your side. If you already have the Rust
 toolchain installed, make sure it is up-to-date with:
 .
 ```bash
 $ rustup update
 ```
 .
 To build Zenoh, just type the following command after having followed the
 previous instructions:
 .
 ```bash
 $ cargo build --release --all-targets
 ```
 .
 Zenoh's router is built as `target/release/zenohd`. All the examples are built
 into the `target/release/examples` directory. They can all work in
 peer-to-peer, or interconnected via the zenoh router.
 .
 -------------------------------
 ## Quick tests of your build:
 .
 **Peer-to-peer tests:**
 .
  - **pub/sub**
     - run: `./target/release/examples/z_sub`
     - in another shell run: `./target/release/examples/z_put`
     - the subscriber should receive the publication.
 .
  - **get/queryable**
     - run: `./target/release/examples/z_queryable`
     - in another shell run: `./target/release/examples/z_get`
     - the queryable should display the log in its listener, and the get should
 receive the queryable result.
 .
 **Routed tests:**
 .
 > [!NOTE]
 > **Windows users**: to properly execute the commands below in PowerShell you
 need to escape `"` characters as `\"`.
 .
  - **put/store/get**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell run: `./target/release/examples/z_put`
     - then run `./target/release/examples/z_get`
     - the get should receive the stored publication.
 .
  - **REST API using `curl` tool**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, do a publication via the REST API:
       `curl -X PUT -d '"Hello World!"' http://localhost:8000/demo/example/test`
     - get it back via the REST API:
       `curl http://localhost:8000/demo/example/test`
 .
   - **router admin space via the REST API**
     - run the Zenoh router with permission to perform config changes via the
 admin space, and with a memory storage:
       `./target/release/zenohd --adminspace-permissions=rw
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, get info of the zenoh router via the zenoh admin space:
       `curl http://localhost:8000/@/router/local`
     - get the volumes of the router (only memory by default):
       `curl 'http://localhost:8000/@/router/local/**/volumes/*'`
     - get the storages of the local router (the memory storage configured at
 startup on '/demo/example/**' should be present):
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
     - add another memory storage on `/demo/mystore/**`:
       `curl -X PUT -H 'content-type:application/json' -d
 '{"key_expr":"demo/mystore/**","volume":"memory"}'
 http://localhost:8000/@/router/local/config/plugins/storage_manager/storages/mystore`
     - check it has been created:
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
 .
 **Configuration options:**
 .
 A Zenoh configuration file can be provided via CLI to all Zenoh examples and
 the Zenoh router.
 .
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file and
 the available options.
 .
 .
 See other examples of Zenoh usage in [examples/](examples)
 .
 > [!NOTE]
 > **Zenoh Runtime Configuration**: Starting from version 0.11.0-rc, Zenoh
 allows for configuring the number of worker threads and other advanced options
 of the runtime. For guidance on utilizing it, please refer to the
 [doc](https://docs.rs/zenoh-runtime/latest/zenoh_runtime/enum.ZRuntime.html).
 .
 -------------------------------
 ## Zenoh router command line arguments
 `zenohd` accepts the following arguments:
 .
   * `--adminspace-permissions <[r|w|rw|none]>`: Configure the read and/or write
 permissions on the admin space. Default is read only.
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file. All
 properties of this configuration are optional, so you may not need such a large
 configuration for your use-case.
   * `--cfg <KEY>:<VALUE>`: allows you to change specific parts of the
 configuration right after it has been constructed. VALUE must be a valid JSON5
 value, and key must be a path through the configuration file, where each
 element is separated by a `/`. When inserting in parts of the config that are
 arrays, you may use indexes, or may use `+` to indicate that you want to append
 your value to the array. `--cfg` passed values will always override any
 previously existing value for their key in the configuration.
   * `-l, --listen <ENDPOINT>...`: An endpoint on which this router will listen
 for incoming sessions.
     Repeat this option to open several listeners. By default, `tcp/[::]:7447`
 is used. The following endpoints are currently supported:
       - TCP: `tcp/<host_name_or_IPv4_or_IPv6>:<port>`
       - UDP: `udp/<host_name_or_IPv4_or_IPv6>:<port>`
       - [TCP+TLS](https://zenoh.io/docs/manual/tls/): `tls/<host_name>:<port>`
       - [QUIC](https://zenoh.io/docs/manual/quic/): `quic/<host_name>:<port>`
   * `-e, --connect <ENDPOINT>...`: An endpoint this router will try to connect
 to. Repeat this option to connect to several peers or routers.
   * `--no-multicast-scouting`: By default zenohd replies to multicast scouting
 messages for being discovered by peers and clients.
     This option disables this feature.
   * `-i, --id <hex_string>`: The identifier (as an hexadecimal string - e.g.:
 A0B23...) that zenohd must use.
      **WARNING**: this identifier must be unique in the system! If not set, a
 random unsigned 128bit integer will be used.
   * `--no-timestamp`: By default zenohd adds a HLC-generated Timestamp to each
 routed Data if there isn't already one.
     This option disables this feature.
   * `-P, --plugin [<PLUGIN_NAME> | <PLUGIN_NAME>:<LIBRARY_PATH>]...`: A
 [plugin](https://zenoh.io/docs/manual/plugins/) that must be loaded. Accepted
 values:
      - a plugin name; zenohd will search for a library named
 `libzenoh_plugin_<name>.so` on Unix, `libzenoh_plugin_<PLUGIN_NAME>.dylib` on
 MacOS or `zenoh_plugin_<PLUGIN_NAME>.dll` on Windows.
      - `"<PLUGIN_NAME>:<LIBRARY_PATH>"`; the plugin will be loaded from library
 file at `<LIBRARY_PATH>`.
 .
     Repeat this option to load several plugins.
   * `--plugin-search-dir <DIRECTORY>...`: A directory where to search for
 [plugins](https://zenoh.io/docs/manual/plugins/) libraries to load.
     Repeat this option to specify several search directories'. By default, the
 plugins libraries will be searched in:
     `'/usr/local/lib:/usr/lib:~/.zenoh/lib:.'`
   * `--rest-http-port <rest-http-port>`: Configures the [REST
 plugin](https://zenoh.io/docs/manual/plugin-http/)'s HTTP port. Accepted
 values:
       - a port number
       - a string with format `<local_ip>:<port_number>` (to bind the HTTP
 server to a specific interface)
       - `"None"` to deactivate the REST plugin
 .
     If not specified, the REST plugin will be active on any interface (`[::]`)
 and port `8000`.
 .
 > [!WARNING]
 > The following documentation pertains to the v0.6+ API, which comes many
 changes to the behaviour and configuration of Zenoh.
 To access the v0.5 version of the code and matching README, please go to the
 [0.5.0-beta.9](https://github.com/eclipse-zenoh/zenoh/tree/0.5.0-beta.9) tagged
 version.
 .
 -------------------------------
 ## Plugins
 .
 > [!WARNING]
 > As Rust doesn't have a stable ABI, the plugins should be
 built with the exact same Rust version than `zenohd`, and using for `zenoh`
 dependency the same version (or commit number) than 'zenohd'.
 Otherwise, incompatibilities in memory mapping of shared types between `zenohd`
 and the library can lead to a `"SIGSEV"` crash.
 .
 By default the Zenoh router is delivered or built with 2 plugins. These may be
 configured through a configuration file, or through individual changes to the
 configuration via the `--cfg` CLI option or via zenoh puts on individual parts
 of the configuration.
 .
 > [!WARNING]
 > Since `v0.6`, `zenohd` no longer loads every available plugin at startup.
 Instead, only configured plugins are loaded (after processing `--cfg` and
 `--plugin` options). Once `zenohd` is running, plugins can be hot-loaded and,
 if they support it, reconfigured at runtime by editing their configuration
 through the adminspace.
 .
 Note that the REST plugin is added to the configuration by the default value of
 the `--rest-http-port` CLI argument.
 .
 **[REST plugin](https://zenoh.io/docs/manual/plugin-http/)** (exposing a REST
 API):
 This plugin converts GET and PUT REST requests into Zenoh gets and puts
 respectively.
 .
 **[Storages plugin](https://zenoh.io/docs/manual/plugin-storage-manager/)**
 (managing [backends and
 storages](https://zenoh.io/docs/manual/plugin-storage-manager/#backends-and-volumes))
 This plugin allows you to easily define storages. These will store key-value
 pairs they subscribed to, and send the most recent ones when queried. Check out
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) for info on how to configure them.
 .
 -------------------------------
 ## Troubleshooting
 .
 In case of troubles, please first check on [this
 page](https://zenoh.io/docs/getting-started/troubleshooting/) if the trouble
 and cause are already known.
 Otherwise, you can ask a question on the [zenoh Discord
 server](https://discord.gg/vSDSpqnbkm), or [create an
 issue](https://github.com/eclipse-zenoh/zenoh/issues).
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

Package: zenohd
Version: 1.0.0~alpha.1-1
Architecture: armhf
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 17447
Filename: 1.0.0-alpha.1/zenohd_1.0.0~alpha.1-1_armhf.deb
Size: 4395940
MD5sum: 66ede2ea996464dab333710b70e3af7f
SHA1: 38d40ea6106289c92cace0d0dde61cdc1ff00700
SHA256: a13339bdb94232aca71dd7b1c58b10ae16d29adec1f02826f480e47725218cd3
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: Zenoh: Zero Overhead Pub/sub, Store/Query and Compute.
 <img
 src="https://raw.githubusercontent.com/eclipse-zenoh/zenoh/master/zenoh-dragon.png"
 height="150">
 .
 [![CI](https://github.com/eclipse-zenoh/zenoh/workflows/CI/badge.svg)](https://github.com/eclipse-zenoh/zenoh/actions?query=workflow%3A%22CI%22)
 [![Documentation
 Status](https://readthedocs.org/projects/zenoh-rust/badge/?version=latest)](https://zenoh-rust.readthedocs.io/en/latest/?badge=latest)
 [![Discussion](https://img.shields.io/badge/discussion-on%20github-blue)](https://github.com/eclipse-zenoh/roadmap/discussions)
 [![Discord](https://img.shields.io/badge/chat-on%20discord-blue)](https://discord.gg/2GJ958VuHs)
 [![License](https://img.shields.io/badge/License-EPL%202.0-blue)](https://choosealicense.com/licenses/epl-2.0/)
 [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
 .
 # 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](http://zenoh.io) and the
 [roadmap](https://github.com/eclipse-zenoh/roadmap) for more detailed
 information.
 .
 -------------------------------
 ## Getting Started
 .
 Zenoh is extremely easy to learn, the best place to master the fundamentals is
 our [getting started guide](https://zenoh.io/docs/getting-started/first-app/).
 .
 -------------------------------
 ## How to install it
 .
 To install the latest release of the Zenoh router (`zenohd`) and its default
 plugins (REST API plugin and Storages Manager plugin) you can do as follows:
 .
 ### Manual installation (all platforms)
 .
 All release packages can be downloaded from:
  - https://download.eclipse.org/zenoh/zenoh/latest/
 .
 Each subdirectory has the name of the Rust target. See the platforms each
 target corresponds to on
 https://doc.rust-lang.org/stable/rustc/platform-support.html
 .
 Choose your platform and download the `.zip` file.
 Unzip it where you want, and run the extracted `zenohd` binary.
 .
 ### Linux Debian
 .
 Add Eclipse Zenoh private repository to the sources list, and install the
 `zenoh` package:
 .
 ```bash
 echo "deb [trusted=yes] https://download.eclipse.org/zenoh/debian-repo/ /" |
 sudo tee -a /etc/apt/sources.list.d/zenoh.list > /dev/null
 sudo apt update
 sudo apt install zenoh
 ```
 Then you can start run `zenohd`.
 .
 ### MacOS
 .
 Tap our brew package repository and install the `zenoh` formula:
 .
 ```bash
 brew tap eclipse-zenoh/homebrew-zenoh
 brew install zenoh
 ```
 Then you can start run `zenohd`.
 .
 .
 ### Rust API
 .
 -------------------------------
 ## How to build it
 .
 > [!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 maintaining compatibility between the
 various git repositories in the Zenoh project.
 .
 Install [Cargo and
 Rust](https://doc.rust-lang.org/cargo/getting-started/installation.html). Zenoh
 can be successfully compiled with Rust stable (>= 1.71.0), so no special
 configuration is required from your side. If you already have the Rust
 toolchain installed, make sure it is up-to-date with:
 .
 ```bash
 $ rustup update
 ```
 .
 To build Zenoh, just type the following command after having followed the
 previous instructions:
 .
 ```bash
 $ cargo build --release --all-targets
 ```
 .
 Zenoh's router is built as `target/release/zenohd`. All the examples are built
 into the `target/release/examples` directory. They can all work in
 peer-to-peer, or interconnected via the zenoh router.
 .
 -------------------------------
 ## Quick tests of your build:
 .
 **Peer-to-peer tests:**
 .
  - **pub/sub**
     - run: `./target/release/examples/z_sub`
     - in another shell run: `./target/release/examples/z_put`
     - the subscriber should receive the publication.
 .
  - **get/queryable**
     - run: `./target/release/examples/z_queryable`
     - in another shell run: `./target/release/examples/z_get`
     - the queryable should display the log in its listener, and the get should
 receive the queryable result.
 .
 **Routed tests:**
 .
 > [!NOTE]
 > **Windows users**: to properly execute the commands below in PowerShell you
 need to escape `"` characters as `\"`.
 .
  - **put/store/get**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell run: `./target/release/examples/z_put`
     - then run `./target/release/examples/z_get`
     - the get should receive the stored publication.
 .
  - **REST API using `curl` tool**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, do a publication via the REST API:
       `curl -X PUT -d '"Hello World!"' http://localhost:8000/demo/example/test`
     - get it back via the REST API:
       `curl http://localhost:8000/demo/example/test`
 .
   - **router admin space via the REST API**
     - run the Zenoh router with permission to perform config changes via the
 admin space, and with a memory storage:
       `./target/release/zenohd --adminspace-permissions=rw
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, get info of the zenoh router via the zenoh admin space:
       `curl http://localhost:8000/@/router/local`
     - get the volumes of the router (only memory by default):
       `curl 'http://localhost:8000/@/router/local/**/volumes/*'`
     - get the storages of the local router (the memory storage configured at
 startup on '/demo/example/**' should be present):
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
     - add another memory storage on `/demo/mystore/**`:
       `curl -X PUT -H 'content-type:application/json' -d
 '{"key_expr":"demo/mystore/**","volume":"memory"}'
 http://localhost:8000/@/router/local/config/plugins/storage_manager/storages/mystore`
     - check it has been created:
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
 .
 **Configuration options:**
 .
 A Zenoh configuration file can be provided via CLI to all Zenoh examples and
 the Zenoh router.
 .
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file and
 the available options.
 .
 .
 See other examples of Zenoh usage in [examples/](examples)
 .
 > [!NOTE]
 > **Zenoh Runtime Configuration**: Starting from version 0.11.0-rc, Zenoh
 allows for configuring the number of worker threads and other advanced options
 of the runtime. For guidance on utilizing it, please refer to the
 [doc](https://docs.rs/zenoh-runtime/latest/zenoh_runtime/enum.ZRuntime.html).
 .
 -------------------------------
 ## Zenoh router command line arguments
 `zenohd` accepts the following arguments:
 .
   * `--adminspace-permissions <[r|w|rw|none]>`: Configure the read and/or write
 permissions on the admin space. Default is read only.
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file. All
 properties of this configuration are optional, so you may not need such a large
 configuration for your use-case.
   * `--cfg <KEY>:<VALUE>`: allows you to change specific parts of the
 configuration right after it has been constructed. VALUE must be a valid JSON5
 value, and key must be a path through the configuration file, where each
 element is separated by a `/`. When inserting in parts of the config that are
 arrays, you may use indexes, or may use `+` to indicate that you want to append
 your value to the array. `--cfg` passed values will always override any
 previously existing value for their key in the configuration.
   * `-l, --listen <ENDPOINT>...`: An endpoint on which this router will listen
 for incoming sessions.
     Repeat this option to open several listeners. By default, `tcp/[::]:7447`
 is used. The following endpoints are currently supported:
       - TCP: `tcp/<host_name_or_IPv4_or_IPv6>:<port>`
       - UDP: `udp/<host_name_or_IPv4_or_IPv6>:<port>`
       - [TCP+TLS](https://zenoh.io/docs/manual/tls/): `tls/<host_name>:<port>`
       - [QUIC](https://zenoh.io/docs/manual/quic/): `quic/<host_name>:<port>`
   * `-e, --connect <ENDPOINT>...`: An endpoint this router will try to connect
 to. Repeat this option to connect to several peers or routers.
   * `--no-multicast-scouting`: By default zenohd replies to multicast scouting
 messages for being discovered by peers and clients.
     This option disables this feature.
   * `-i, --id <hex_string>`: The identifier (as an hexadecimal string - e.g.:
 A0B23...) that zenohd must use.
      **WARNING**: this identifier must be unique in the system! If not set, a
 random unsigned 128bit integer will be used.
   * `--no-timestamp`: By default zenohd adds a HLC-generated Timestamp to each
 routed Data if there isn't already one.
     This option disables this feature.
   * `-P, --plugin [<PLUGIN_NAME> | <PLUGIN_NAME>:<LIBRARY_PATH>]...`: A
 [plugin](https://zenoh.io/docs/manual/plugins/) that must be loaded. Accepted
 values:
      - a plugin name; zenohd will search for a library named
 `libzenoh_plugin_<name>.so` on Unix, `libzenoh_plugin_<PLUGIN_NAME>.dylib` on
 MacOS or `zenoh_plugin_<PLUGIN_NAME>.dll` on Windows.
      - `"<PLUGIN_NAME>:<LIBRARY_PATH>"`; the plugin will be loaded from library
 file at `<LIBRARY_PATH>`.
 .
     Repeat this option to load several plugins.
   * `--plugin-search-dir <DIRECTORY>...`: A directory where to search for
 [plugins](https://zenoh.io/docs/manual/plugins/) libraries to load.
     Repeat this option to specify several search directories'. By default, the
 plugins libraries will be searched in:
     `'/usr/local/lib:/usr/lib:~/.zenoh/lib:.'`
   * `--rest-http-port <rest-http-port>`: Configures the [REST
 plugin](https://zenoh.io/docs/manual/plugin-http/)'s HTTP port. Accepted
 values:
       - a port number
       - a string with format `<local_ip>:<port_number>` (to bind the HTTP
 server to a specific interface)
       - `"None"` to deactivate the REST plugin
 .
     If not specified, the REST plugin will be active on any interface (`[::]`)
 and port `8000`.
 .
 > [!WARNING]
 > The following documentation pertains to the v0.6+ API, which comes many
 changes to the behaviour and configuration of Zenoh.
 To access the v0.5 version of the code and matching README, please go to the
 [0.5.0-beta.9](https://github.com/eclipse-zenoh/zenoh/tree/0.5.0-beta.9) tagged
 version.
 .
 -------------------------------
 ## Plugins
 .
 > [!WARNING]
 > As Rust doesn't have a stable ABI, the plugins should be
 built with the exact same Rust version than `zenohd`, and using for `zenoh`
 dependency the same version (or commit number) than 'zenohd'.
 Otherwise, incompatibilities in memory mapping of shared types between `zenohd`
 and the library can lead to a `"SIGSEV"` crash.
 .
 By default the Zenoh router is delivered or built with 2 plugins. These may be
 configured through a configuration file, or through individual changes to the
 configuration via the `--cfg` CLI option or via zenoh puts on individual parts
 of the configuration.
 .
 > [!WARNING]
 > Since `v0.6`, `zenohd` no longer loads every available plugin at startup.
 Instead, only configured plugins are loaded (after processing `--cfg` and
 `--plugin` options). Once `zenohd` is running, plugins can be hot-loaded and,
 if they support it, reconfigured at runtime by editing their configuration
 through the adminspace.
 .
 Note that the REST plugin is added to the configuration by the default value of
 the `--rest-http-port` CLI argument.
 .
 **[REST plugin](https://zenoh.io/docs/manual/plugin-http/)** (exposing a REST
 API):
 This plugin converts GET and PUT REST requests into Zenoh gets and puts
 respectively.
 .
 **[Storages plugin](https://zenoh.io/docs/manual/plugin-storage-manager/)**
 (managing [backends and
 storages](https://zenoh.io/docs/manual/plugin-storage-manager/#backends-and-volumes))
 This plugin allows you to easily define storages. These will store key-value
 pairs they subscribed to, and send the most recent ones when queried. Check out
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) for info on how to configure them.
 .
 -------------------------------
 ## Troubleshooting
 .
 In case of troubles, please first check on [this
 page](https://zenoh.io/docs/getting-started/troubleshooting/) if the trouble
 and cause are already known.
 Otherwise, you can ask a question on the [zenoh Discord
 server](https://discord.gg/vSDSpqnbkm), or [create an
 issue](https://github.com/eclipse-zenoh/zenoh/issues).
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

Package: zenohd
Version: 1.0.0~alpha.1-1
Architecture: amd64
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 18298
Depends: libc6 (>= 2.29)
Filename: 1.0.0-alpha.1/zenohd_1.0.0~alpha.1-1_amd64.deb
Size: 4471768
MD5sum: 500c6967630baeec01fbacbd5d004908
SHA1: 84942d7bbde58f2895aedcbc6f3df53563674481
SHA256: e50ca647fedf018a04b4a2fa6e35f0bf95f1ae8b6434a4ec1326e6212ca7a4b6
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: Zenoh: Zero Overhead Pub/sub, Store/Query and Compute.
 <img
 src="https://raw.githubusercontent.com/eclipse-zenoh/zenoh/master/zenoh-dragon.png"
 height="150">
 .
 [![CI](https://github.com/eclipse-zenoh/zenoh/workflows/CI/badge.svg)](https://github.com/eclipse-zenoh/zenoh/actions?query=workflow%3A%22CI%22)
 [![Documentation
 Status](https://readthedocs.org/projects/zenoh-rust/badge/?version=latest)](https://zenoh-rust.readthedocs.io/en/latest/?badge=latest)
 [![Discussion](https://img.shields.io/badge/discussion-on%20github-blue)](https://github.com/eclipse-zenoh/roadmap/discussions)
 [![Discord](https://img.shields.io/badge/chat-on%20discord-blue)](https://discord.gg/2GJ958VuHs)
 [![License](https://img.shields.io/badge/License-EPL%202.0-blue)](https://choosealicense.com/licenses/epl-2.0/)
 [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
 .
 # 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](http://zenoh.io) and the
 [roadmap](https://github.com/eclipse-zenoh/roadmap) for more detailed
 information.
 .
 -------------------------------
 ## Getting Started
 .
 Zenoh is extremely easy to learn, the best place to master the fundamentals is
 our [getting started guide](https://zenoh.io/docs/getting-started/first-app/).
 .
 -------------------------------
 ## How to install it
 .
 To install the latest release of the Zenoh router (`zenohd`) and its default
 plugins (REST API plugin and Storages Manager plugin) you can do as follows:
 .
 ### Manual installation (all platforms)
 .
 All release packages can be downloaded from:
  - https://download.eclipse.org/zenoh/zenoh/latest/
 .
 Each subdirectory has the name of the Rust target. See the platforms each
 target corresponds to on
 https://doc.rust-lang.org/stable/rustc/platform-support.html
 .
 Choose your platform and download the `.zip` file.
 Unzip it where you want, and run the extracted `zenohd` binary.
 .
 ### Linux Debian
 .
 Add Eclipse Zenoh private repository to the sources list, and install the
 `zenoh` package:
 .
 ```bash
 echo "deb [trusted=yes] https://download.eclipse.org/zenoh/debian-repo/ /" |
 sudo tee -a /etc/apt/sources.list.d/zenoh.list > /dev/null
 sudo apt update
 sudo apt install zenoh
 ```
 Then you can start run `zenohd`.
 .
 ### MacOS
 .
 Tap our brew package repository and install the `zenoh` formula:
 .
 ```bash
 brew tap eclipse-zenoh/homebrew-zenoh
 brew install zenoh
 ```
 Then you can start run `zenohd`.
 .
 .
 ### Rust API
 .
 -------------------------------
 ## How to build it
 .
 > [!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 maintaining compatibility between the
 various git repositories in the Zenoh project.
 .
 Install [Cargo and
 Rust](https://doc.rust-lang.org/cargo/getting-started/installation.html). Zenoh
 can be successfully compiled with Rust stable (>= 1.71.0), so no special
 configuration is required from your side. If you already have the Rust
 toolchain installed, make sure it is up-to-date with:
 .
 ```bash
 $ rustup update
 ```
 .
 To build Zenoh, just type the following command after having followed the
 previous instructions:
 .
 ```bash
 $ cargo build --release --all-targets
 ```
 .
 Zenoh's router is built as `target/release/zenohd`. All the examples are built
 into the `target/release/examples` directory. They can all work in
 peer-to-peer, or interconnected via the zenoh router.
 .
 -------------------------------
 ## Quick tests of your build:
 .
 **Peer-to-peer tests:**
 .
  - **pub/sub**
     - run: `./target/release/examples/z_sub`
     - in another shell run: `./target/release/examples/z_put`
     - the subscriber should receive the publication.
 .
  - **get/queryable**
     - run: `./target/release/examples/z_queryable`
     - in another shell run: `./target/release/examples/z_get`
     - the queryable should display the log in its listener, and the get should
 receive the queryable result.
 .
 **Routed tests:**
 .
 > [!NOTE]
 > **Windows users**: to properly execute the commands below in PowerShell you
 need to escape `"` characters as `\"`.
 .
  - **put/store/get**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell run: `./target/release/examples/z_put`
     - then run `./target/release/examples/z_get`
     - the get should receive the stored publication.
 .
  - **REST API using `curl` tool**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, do a publication via the REST API:
       `curl -X PUT -d '"Hello World!"' http://localhost:8000/demo/example/test`
     - get it back via the REST API:
       `curl http://localhost:8000/demo/example/test`
 .
   - **router admin space via the REST API**
     - run the Zenoh router with permission to perform config changes via the
 admin space, and with a memory storage:
       `./target/release/zenohd --adminspace-permissions=rw
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, get info of the zenoh router via the zenoh admin space:
       `curl http://localhost:8000/@/router/local`
     - get the volumes of the router (only memory by default):
       `curl 'http://localhost:8000/@/router/local/**/volumes/*'`
     - get the storages of the local router (the memory storage configured at
 startup on '/demo/example/**' should be present):
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
     - add another memory storage on `/demo/mystore/**`:
       `curl -X PUT -H 'content-type:application/json' -d
 '{"key_expr":"demo/mystore/**","volume":"memory"}'
 http://localhost:8000/@/router/local/config/plugins/storage_manager/storages/mystore`
     - check it has been created:
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
 .
 **Configuration options:**
 .
 A Zenoh configuration file can be provided via CLI to all Zenoh examples and
 the Zenoh router.
 .
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file and
 the available options.
 .
 .
 See other examples of Zenoh usage in [examples/](examples)
 .
 > [!NOTE]
 > **Zenoh Runtime Configuration**: Starting from version 0.11.0-rc, Zenoh
 allows for configuring the number of worker threads and other advanced options
 of the runtime. For guidance on utilizing it, please refer to the
 [doc](https://docs.rs/zenoh-runtime/latest/zenoh_runtime/enum.ZRuntime.html).
 .
 -------------------------------
 ## Zenoh router command line arguments
 `zenohd` accepts the following arguments:
 .
   * `--adminspace-permissions <[r|w|rw|none]>`: Configure the read and/or write
 permissions on the admin space. Default is read only.
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file. All
 properties of this configuration are optional, so you may not need such a large
 configuration for your use-case.
   * `--cfg <KEY>:<VALUE>`: allows you to change specific parts of the
 configuration right after it has been constructed. VALUE must be a valid JSON5
 value, and key must be a path through the configuration file, where each
 element is separated by a `/`. When inserting in parts of the config that are
 arrays, you may use indexes, or may use `+` to indicate that you want to append
 your value to the array. `--cfg` passed values will always override any
 previously existing value for their key in the configuration.
   * `-l, --listen <ENDPOINT>...`: An endpoint on which this router will listen
 for incoming sessions.
     Repeat this option to open several listeners. By default, `tcp/[::]:7447`
 is used. The following endpoints are currently supported:
       - TCP: `tcp/<host_name_or_IPv4_or_IPv6>:<port>`
       - UDP: `udp/<host_name_or_IPv4_or_IPv6>:<port>`
       - [TCP+TLS](https://zenoh.io/docs/manual/tls/): `tls/<host_name>:<port>`
       - [QUIC](https://zenoh.io/docs/manual/quic/): `quic/<host_name>:<port>`
   * `-e, --connect <ENDPOINT>...`: An endpoint this router will try to connect
 to. Repeat this option to connect to several peers or routers.
   * `--no-multicast-scouting`: By default zenohd replies to multicast scouting
 messages for being discovered by peers and clients.
     This option disables this feature.
   * `-i, --id <hex_string>`: The identifier (as an hexadecimal string - e.g.:
 A0B23...) that zenohd must use.
      **WARNING**: this identifier must be unique in the system! If not set, a
 random unsigned 128bit integer will be used.
   * `--no-timestamp`: By default zenohd adds a HLC-generated Timestamp to each
 routed Data if there isn't already one.
     This option disables this feature.
   * `-P, --plugin [<PLUGIN_NAME> | <PLUGIN_NAME>:<LIBRARY_PATH>]...`: A
 [plugin](https://zenoh.io/docs/manual/plugins/) that must be loaded. Accepted
 values:
      - a plugin name; zenohd will search for a library named
 `libzenoh_plugin_<name>.so` on Unix, `libzenoh_plugin_<PLUGIN_NAME>.dylib` on
 MacOS or `zenoh_plugin_<PLUGIN_NAME>.dll` on Windows.
      - `"<PLUGIN_NAME>:<LIBRARY_PATH>"`; the plugin will be loaded from library
 file at `<LIBRARY_PATH>`.
 .
     Repeat this option to load several plugins.
   * `--plugin-search-dir <DIRECTORY>...`: A directory where to search for
 [plugins](https://zenoh.io/docs/manual/plugins/) libraries to load.
     Repeat this option to specify several search directories'. By default, the
 plugins libraries will be searched in:
     `'/usr/local/lib:/usr/lib:~/.zenoh/lib:.'`
   * `--rest-http-port <rest-http-port>`: Configures the [REST
 plugin](https://zenoh.io/docs/manual/plugin-http/)'s HTTP port. Accepted
 values:
       - a port number
       - a string with format `<local_ip>:<port_number>` (to bind the HTTP
 server to a specific interface)
       - `"None"` to deactivate the REST plugin
 .
     If not specified, the REST plugin will be active on any interface (`[::]`)
 and port `8000`.
 .
 > [!WARNING]
 > The following documentation pertains to the v0.6+ API, which comes many
 changes to the behaviour and configuration of Zenoh.
 To access the v0.5 version of the code and matching README, please go to the
 [0.5.0-beta.9](https://github.com/eclipse-zenoh/zenoh/tree/0.5.0-beta.9) tagged
 version.
 .
 -------------------------------
 ## Plugins
 .
 > [!WARNING]
 > As Rust doesn't have a stable ABI, the plugins should be
 built with the exact same Rust version than `zenohd`, and using for `zenoh`
 dependency the same version (or commit number) than 'zenohd'.
 Otherwise, incompatibilities in memory mapping of shared types between `zenohd`
 and the library can lead to a `"SIGSEV"` crash.
 .
 By default the Zenoh router is delivered or built with 2 plugins. These may be
 configured through a configuration file, or through individual changes to the
 configuration via the `--cfg` CLI option or via zenoh puts on individual parts
 of the configuration.
 .
 > [!WARNING]
 > Since `v0.6`, `zenohd` no longer loads every available plugin at startup.
 Instead, only configured plugins are loaded (after processing `--cfg` and
 `--plugin` options). Once `zenohd` is running, plugins can be hot-loaded and,
 if they support it, reconfigured at runtime by editing their configuration
 through the adminspace.
 .
 Note that the REST plugin is added to the configuration by the default value of
 the `--rest-http-port` CLI argument.
 .
 **[REST plugin](https://zenoh.io/docs/manual/plugin-http/)** (exposing a REST
 API):
 This plugin converts GET and PUT REST requests into Zenoh gets and puts
 respectively.
 .
 **[Storages plugin](https://zenoh.io/docs/manual/plugin-storage-manager/)**
 (managing [backends and
 storages](https://zenoh.io/docs/manual/plugin-storage-manager/#backends-and-volumes))
 This plugin allows you to easily define storages. These will store key-value
 pairs they subscribed to, and send the most recent ones when queried. Check out
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) for info on how to configure them.
 .
 -------------------------------
 ## Troubleshooting
 .
 In case of troubles, please first check on [this
 page](https://zenoh.io/docs/getting-started/troubleshooting/) if the trouble
 and cause are already known.
 Otherwise, you can ask a question on the [zenoh Discord
 server](https://discord.gg/vSDSpqnbkm), or [create an
 issue](https://github.com/eclipse-zenoh/zenoh/issues).
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

Package: zenohd
Version: 1.0.0~alpha.1-1
Architecture: arm64
Maintainer: zenoh-dev@eclipse.org
Installed-Size: 16251
Filename: 1.0.0-alpha.1/zenohd_1.0.0~alpha.1-1_arm64.deb
Size: 4006984
MD5sum: 2db25bb2ae5a52a68aa547d34ccd99e1
SHA1: c566f1672c2156bfe756946bc63ffc43f4d9ae02
SHA256: 2cb4235923bb0c08000491e14e1fabe8caf8ca89d294d98d94787b31d65635c6
Section: net
Priority: optional
Homepage: http://zenoh.io
Description: Zenoh: Zero Overhead Pub/sub, Store/Query and Compute.
 <img
 src="https://raw.githubusercontent.com/eclipse-zenoh/zenoh/master/zenoh-dragon.png"
 height="150">
 .
 [![CI](https://github.com/eclipse-zenoh/zenoh/workflows/CI/badge.svg)](https://github.com/eclipse-zenoh/zenoh/actions?query=workflow%3A%22CI%22)
 [![Documentation
 Status](https://readthedocs.org/projects/zenoh-rust/badge/?version=latest)](https://zenoh-rust.readthedocs.io/en/latest/?badge=latest)
 [![Discussion](https://img.shields.io/badge/discussion-on%20github-blue)](https://github.com/eclipse-zenoh/roadmap/discussions)
 [![Discord](https://img.shields.io/badge/chat-on%20discord-blue)](https://discord.gg/2GJ958VuHs)
 [![License](https://img.shields.io/badge/License-EPL%202.0-blue)](https://choosealicense.com/licenses/epl-2.0/)
 [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
 .
 # 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](http://zenoh.io) and the
 [roadmap](https://github.com/eclipse-zenoh/roadmap) for more detailed
 information.
 .
 -------------------------------
 ## Getting Started
 .
 Zenoh is extremely easy to learn, the best place to master the fundamentals is
 our [getting started guide](https://zenoh.io/docs/getting-started/first-app/).
 .
 -------------------------------
 ## How to install it
 .
 To install the latest release of the Zenoh router (`zenohd`) and its default
 plugins (REST API plugin and Storages Manager plugin) you can do as follows:
 .
 ### Manual installation (all platforms)
 .
 All release packages can be downloaded from:
  - https://download.eclipse.org/zenoh/zenoh/latest/
 .
 Each subdirectory has the name of the Rust target. See the platforms each
 target corresponds to on
 https://doc.rust-lang.org/stable/rustc/platform-support.html
 .
 Choose your platform and download the `.zip` file.
 Unzip it where you want, and run the extracted `zenohd` binary.
 .
 ### Linux Debian
 .
 Add Eclipse Zenoh private repository to the sources list, and install the
 `zenoh` package:
 .
 ```bash
 echo "deb [trusted=yes] https://download.eclipse.org/zenoh/debian-repo/ /" |
 sudo tee -a /etc/apt/sources.list.d/zenoh.list > /dev/null
 sudo apt update
 sudo apt install zenoh
 ```
 Then you can start run `zenohd`.
 .
 ### MacOS
 .
 Tap our brew package repository and install the `zenoh` formula:
 .
 ```bash
 brew tap eclipse-zenoh/homebrew-zenoh
 brew install zenoh
 ```
 Then you can start run `zenohd`.
 .
 .
 ### Rust API
 .
 -------------------------------
 ## How to build it
 .
 > [!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 maintaining compatibility between the
 various git repositories in the Zenoh project.
 .
 Install [Cargo and
 Rust](https://doc.rust-lang.org/cargo/getting-started/installation.html). Zenoh
 can be successfully compiled with Rust stable (>= 1.71.0), so no special
 configuration is required from your side. If you already have the Rust
 toolchain installed, make sure it is up-to-date with:
 .
 ```bash
 $ rustup update
 ```
 .
 To build Zenoh, just type the following command after having followed the
 previous instructions:
 .
 ```bash
 $ cargo build --release --all-targets
 ```
 .
 Zenoh's router is built as `target/release/zenohd`. All the examples are built
 into the `target/release/examples` directory. They can all work in
 peer-to-peer, or interconnected via the zenoh router.
 .
 -------------------------------
 ## Quick tests of your build:
 .
 **Peer-to-peer tests:**
 .
  - **pub/sub**
     - run: `./target/release/examples/z_sub`
     - in another shell run: `./target/release/examples/z_put`
     - the subscriber should receive the publication.
 .
  - **get/queryable**
     - run: `./target/release/examples/z_queryable`
     - in another shell run: `./target/release/examples/z_get`
     - the queryable should display the log in its listener, and the get should
 receive the queryable result.
 .
 **Routed tests:**
 .
 > [!NOTE]
 > **Windows users**: to properly execute the commands below in PowerShell you
 need to escape `"` characters as `\"`.
 .
  - **put/store/get**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell run: `./target/release/examples/z_put`
     - then run `./target/release/examples/z_get`
     - the get should receive the stored publication.
 .
  - **REST API using `curl` tool**
     - run the Zenoh router with a memory storage:
       `./target/release/zenohd
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, do a publication via the REST API:
       `curl -X PUT -d '"Hello World!"' http://localhost:8000/demo/example/test`
     - get it back via the REST API:
       `curl http://localhost:8000/demo/example/test`
 .
   - **router admin space via the REST API**
     - run the Zenoh router with permission to perform config changes via the
 admin space, and with a memory storage:
       `./target/release/zenohd --adminspace-permissions=rw
 --cfg='plugins/storage_manager/storages/demo:{key_expr:"demo/example/**",volume:"memory"}'`
     - in another shell, get info of the zenoh router via the zenoh admin space:
       `curl http://localhost:8000/@/router/local`
     - get the volumes of the router (only memory by default):
       `curl 'http://localhost:8000/@/router/local/**/volumes/*'`
     - get the storages of the local router (the memory storage configured at
 startup on '/demo/example/**' should be present):
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
     - add another memory storage on `/demo/mystore/**`:
       `curl -X PUT -H 'content-type:application/json' -d
 '{"key_expr":"demo/mystore/**","volume":"memory"}'
 http://localhost:8000/@/router/local/config/plugins/storage_manager/storages/mystore`
     - check it has been created:
       `curl 'http://localhost:8000/@/router/local/**/storages/*'`
 .
 **Configuration options:**
 .
 A Zenoh configuration file can be provided via CLI to all Zenoh examples and
 the Zenoh router.
 .
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file and
 the available options.
 .
 .
 See other examples of Zenoh usage in [examples/](examples)
 .
 > [!NOTE]
 > **Zenoh Runtime Configuration**: Starting from version 0.11.0-rc, Zenoh
 allows for configuring the number of worker threads and other advanced options
 of the runtime. For guidance on utilizing it, please refer to the
 [doc](https://docs.rs/zenoh-runtime/latest/zenoh_runtime/enum.ZRuntime.html).
 .
 -------------------------------
 ## Zenoh router command line arguments
 `zenohd` accepts the following arguments:
 .
   * `--adminspace-permissions <[r|w|rw|none]>`: Configure the read and/or write
 permissions on the admin space. Default is read only.
   * `-c, --config <FILE>`: a [JSON5](https://json5.org) configuration file.
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) shows the schema of this file. All
 properties of this configuration are optional, so you may not need such a large
 configuration for your use-case.
   * `--cfg <KEY>:<VALUE>`: allows you to change specific parts of the
 configuration right after it has been constructed. VALUE must be a valid JSON5
 value, and key must be a path through the configuration file, where each
 element is separated by a `/`. When inserting in parts of the config that are
 arrays, you may use indexes, or may use `+` to indicate that you want to append
 your value to the array. `--cfg` passed values will always override any
 previously existing value for their key in the configuration.
   * `-l, --listen <ENDPOINT>...`: An endpoint on which this router will listen
 for incoming sessions.
     Repeat this option to open several listeners. By default, `tcp/[::]:7447`
 is used. The following endpoints are currently supported:
       - TCP: `tcp/<host_name_or_IPv4_or_IPv6>:<port>`
       - UDP: `udp/<host_name_or_IPv4_or_IPv6>:<port>`
       - [TCP+TLS](https://zenoh.io/docs/manual/tls/): `tls/<host_name>:<port>`
       - [QUIC](https://zenoh.io/docs/manual/quic/): `quic/<host_name>:<port>`
   * `-e, --connect <ENDPOINT>...`: An endpoint this router will try to connect
 to. Repeat this option to connect to several peers or routers.
   * `--no-multicast-scouting`: By default zenohd replies to multicast scouting
 messages for being discovered by peers and clients.
     This option disables this feature.
   * `-i, --id <hex_string>`: The identifier (as an hexadecimal string - e.g.:
 A0B23...) that zenohd must use.
      **WARNING**: this identifier must be unique in the system! If not set, a
 random unsigned 128bit integer will be used.
   * `--no-timestamp`: By default zenohd adds a HLC-generated Timestamp to each
 routed Data if there isn't already one.
     This option disables this feature.
   * `-P, --plugin [<PLUGIN_NAME> | <PLUGIN_NAME>:<LIBRARY_PATH>]...`: A
 [plugin](https://zenoh.io/docs/manual/plugins/) that must be loaded. Accepted
 values:
      - a plugin name; zenohd will search for a library named
 `libzenoh_plugin_<name>.so` on Unix, `libzenoh_plugin_<PLUGIN_NAME>.dylib` on
 MacOS or `zenoh_plugin_<PLUGIN_NAME>.dll` on Windows.
      - `"<PLUGIN_NAME>:<LIBRARY_PATH>"`; the plugin will be loaded from library
 file at `<LIBRARY_PATH>`.
 .
     Repeat this option to load several plugins.
   * `--plugin-search-dir <DIRECTORY>...`: A directory where to search for
 [plugins](https://zenoh.io/docs/manual/plugins/) libraries to load.
     Repeat this option to specify several search directories'. By default, the
 plugins libraries will be searched in:
     `'/usr/local/lib:/usr/lib:~/.zenoh/lib:.'`
   * `--rest-http-port <rest-http-port>`: Configures the [REST
 plugin](https://zenoh.io/docs/manual/plugin-http/)'s HTTP port. Accepted
 values:
       - a port number
       - a string with format `<local_ip>:<port_number>` (to bind the HTTP
 server to a specific interface)
       - `"None"` to deactivate the REST plugin
 .
     If not specified, the REST plugin will be active on any interface (`[::]`)
 and port `8000`.
 .
 > [!WARNING]
 > The following documentation pertains to the v0.6+ API, which comes many
 changes to the behaviour and configuration of Zenoh.
 To access the v0.5 version of the code and matching README, please go to the
 [0.5.0-beta.9](https://github.com/eclipse-zenoh/zenoh/tree/0.5.0-beta.9) tagged
 version.
 .
 -------------------------------
 ## Plugins
 .
 > [!WARNING]
 > As Rust doesn't have a stable ABI, the plugins should be
 built with the exact same Rust version than `zenohd`, and using for `zenoh`
 dependency the same version (or commit number) than 'zenohd'.
 Otherwise, incompatibilities in memory mapping of shared types between `zenohd`
 and the library can lead to a `"SIGSEV"` crash.
 .
 By default the Zenoh router is delivered or built with 2 plugins. These may be
 configured through a configuration file, or through individual changes to the
 configuration via the `--cfg` CLI option or via zenoh puts on individual parts
 of the configuration.
 .
 > [!WARNING]
 > Since `v0.6`, `zenohd` no longer loads every available plugin at startup.
 Instead, only configured plugins are loaded (after processing `--cfg` and
 `--plugin` options). Once `zenohd` is running, plugins can be hot-loaded and,
 if they support it, reconfigured at runtime by editing their configuration
 through the adminspace.
 .
 Note that the REST plugin is added to the configuration by the default value of
 the `--rest-http-port` CLI argument.
 .
 **[REST plugin](https://zenoh.io/docs/manual/plugin-http/)** (exposing a REST
 API):
 This plugin converts GET and PUT REST requests into Zenoh gets and puts
 respectively.
 .
 **[Storages plugin](https://zenoh.io/docs/manual/plugin-storage-manager/)**
 (managing [backends and
 storages](https://zenoh.io/docs/manual/plugin-storage-manager/#backends-and-volumes))
 This plugin allows you to easily define storages. These will store key-value
 pairs they subscribed to, and send the most recent ones when queried. Check out
 [DEFAULT_CONFIG.json5](DEFAULT_CONFIG.json5) for info on how to configure them.
 .
 -------------------------------
 ## Troubleshooting
 .
 In case of troubles, please first check on [this
 page](https://zenoh.io/docs/getting-started/troubleshooting/) if the trouble
 and cause are already known.
 Otherwise, you can ask a question on the [zenoh Discord
 server](https://discord.gg/vSDSpqnbkm), or [create an
 issue](https://github.com/eclipse-zenoh/zenoh/issues).
Vcs-Browser: https://github.com/eclipse-zenoh/zenoh
Vcs-Git: https://github.com/eclipse-zenoh/zenoh

