zenoh-flow icon indicating copy to clipboard operation
zenoh-flow copied to clipboard

Extensions should accept a configuration

Open J-Loudet opened this issue 1 year ago • 0 comments

In order to not require users to install globally (via the --break-system-packages flag) the Python library of Zenoh-Flow, the path to this library should be provided in the extension.

At the same time, we want the extension to remain generic. Hence we propose to change its structure and accept, much like the nodes, an optional "configuration": a set of key value pairs.

Extensions would then be written as:

extensions:
- py:
  libraries:
    - source: path/to/shared.so
    - operator: path/to/shared.so
    - sink: path/to/shared.so
  configuration:
    wheel: path/to/python.whl

The one drawback of this proposal is that, in its current state, when validating the libraries Zenoh-Flow only verifies if they were compiled with the same version of the rust compiler and Zenoh-Flow. An incomplete configuration would only be detected at runtime.

J-Loudet avatar May 03 '24 14:05 J-Loudet