| @@ -711,7 +711,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "benchmark-example-node" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "dora-node-api", | |||
| "eyre", | |||
| @@ -724,7 +724,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "benchmark-example-sink" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "dora-node-api", | |||
| "eyre", | |||
| @@ -1071,7 +1071,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "communication-layer-pub-sub" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "flume 0.10.14", | |||
| "zenoh", | |||
| @@ -1079,7 +1079,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "communication-layer-request-reply" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| [[package]] | |||
| name = "concurrent-queue" | |||
| @@ -1461,7 +1461,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-arrow-convert" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "arrow", | |||
| "eyre", | |||
| @@ -1469,7 +1469,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-cli" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "bat", | |||
| "clap 4.4.6", | |||
| @@ -1499,7 +1499,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-coordinator" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "ctrlc", | |||
| "dora-core", | |||
| @@ -1517,7 +1517,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-core" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "aligned-vec", | |||
| "dora-message", | |||
| @@ -1534,7 +1534,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-daemon" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "aligned-vec", | |||
| "async-trait", | |||
| @@ -1562,7 +1562,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-download" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "eyre", | |||
| "reqwest", | |||
| @@ -1590,7 +1590,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-message" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "arrow-data", | |||
| "arrow-schema", | |||
| @@ -1601,7 +1601,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-metrics" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "eyre", | |||
| "opentelemetry 0.22.0", | |||
| @@ -1612,7 +1612,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-node-api" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "aligned-vec", | |||
| "arrow", | |||
| @@ -1634,7 +1634,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-node-api-c" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "arrow-array", | |||
| "dora-node-api", | |||
| @@ -1644,7 +1644,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-node-api-cxx" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "cxx", | |||
| "cxx-build", | |||
| @@ -1661,7 +1661,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-node-api-python" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "arrow", | |||
| "dora-node-api", | |||
| @@ -1678,7 +1678,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-operator-api" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "dora-arrow-convert", | |||
| "dora-operator-api-macros", | |||
| @@ -1687,14 +1687,14 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-operator-api-c" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "dora-operator-api-types", | |||
| ] | |||
| [[package]] | |||
| name = "dora-operator-api-cxx" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "cxx", | |||
| "cxx-build", | |||
| @@ -1703,7 +1703,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-operator-api-macros" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "proc-macro2", | |||
| "quote", | |||
| @@ -1712,7 +1712,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-operator-api-python" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "aligned-vec", | |||
| "arrow", | |||
| @@ -1726,7 +1726,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-operator-api-types" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "arrow", | |||
| "dora-arrow-convert", | |||
| @@ -1735,7 +1735,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-record" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "chrono", | |||
| "dora-node-api", | |||
| @@ -1798,7 +1798,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-runtime" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "aligned-vec", | |||
| "arrow", | |||
| @@ -1825,7 +1825,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "dora-tracing" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "eyre", | |||
| "opentelemetry 0.18.0", | |||
| @@ -3285,7 +3285,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "multiple-daemons-example-node" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "dora-node-api", | |||
| "eyre", | |||
| @@ -3296,14 +3296,14 @@ dependencies = [ | |||
| [[package]] | |||
| name = "multiple-daemons-example-operator" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "dora-operator-api", | |||
| ] | |||
| [[package]] | |||
| name = "multiple-daemons-example-sink" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "dora-node-api", | |||
| "eyre", | |||
| @@ -4742,7 +4742,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "rust-dataflow-example-node" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "dora-node-api", | |||
| "eyre", | |||
| @@ -4753,14 +4753,14 @@ dependencies = [ | |||
| [[package]] | |||
| name = "rust-dataflow-example-operator" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "dora-operator-api", | |||
| ] | |||
| [[package]] | |||
| name = "rust-dataflow-example-sink" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "dora-node-api", | |||
| "eyre", | |||
| @@ -4779,7 +4779,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "rust-ros2-dataflow-example-node" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "dora-node-api", | |||
| "dora-ros2-bridge", | |||
| @@ -5190,7 +5190,7 @@ dependencies = [ | |||
| [[package]] | |||
| name = "shared-memory-server" | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| dependencies = [ | |||
| "bincode", | |||
| "eyre", | |||
| @@ -37,31 +37,31 @@ members = [ | |||
| [workspace.package] | |||
| # Make sure to also bump `apis/node/python/__init__.py` version. | |||
| version = "0.3.2" | |||
| version = "0.3.3-rc1" | |||
| description = "`dora` goal is to be a low latency, composable, and distributed data flow." | |||
| documentation = "https://dora.carsmos.ai" | |||
| license = "Apache-2.0" | |||
| [workspace.dependencies] | |||
| dora-node-api = { version = "0.3.2", path = "apis/rust/node", default-features = false } | |||
| dora-node-api-python = { version = "0.3.2", path = "apis/python/node", default-features = false } | |||
| dora-operator-api = { version = "0.3.2", path = "apis/rust/operator", default-features = false } | |||
| dora-operator-api-macros = { version = "0.3.2", path = "apis/rust/operator/macros" } | |||
| dora-operator-api-types = { version = "0.3.2", path = "apis/rust/operator/types" } | |||
| dora-operator-api-python = { version = "0.3.2", path = "apis/python/operator" } | |||
| dora-operator-api-c = { version = "0.3.2", path = "apis/c/operator" } | |||
| dora-node-api-c = { version = "0.3.2", path = "apis/c/node" } | |||
| dora-core = { version = "0.3.2", path = "libraries/core" } | |||
| dora-arrow-convert = { version = "0.3.2", path = "libraries/arrow-convert" } | |||
| dora-tracing = { version = "0.3.2", path = "libraries/extensions/telemetry/tracing" } | |||
| dora-metrics = { version = "0.3.2", path = "libraries/extensions/telemetry/metrics" } | |||
| dora-download = { version = "0.3.2", path = "libraries/extensions/download" } | |||
| shared-memory-server = { version = "0.3.2", path = "libraries/shared-memory-server" } | |||
| communication-layer-request-reply = { version = "0.3.2", path = "libraries/communication-layer/request-reply" } | |||
| dora-message = { version = "0.3.2", path = "libraries/message" } | |||
| dora-runtime = { version = "0.3.2", path = "binaries/runtime" } | |||
| dora-daemon = { version = "0.3.2", path = "binaries/daemon" } | |||
| dora-coordinator = { version = "0.3.2", path = "binaries/coordinator" } | |||
| dora-node-api = { version = "0.3.3-rc1", path = "apis/rust/node", default-features = false } | |||
| dora-node-api-python = { version = "0.3.3-rc1", path = "apis/python/node", default-features = false } | |||
| dora-operator-api = { version = "0.3.3-rc1", path = "apis/rust/operator", default-features = false } | |||
| dora-operator-api-macros = { version = "0.3.3-rc1", path = "apis/rust/operator/macros" } | |||
| dora-operator-api-types = { version = "0.3.3-rc1", path = "apis/rust/operator/types" } | |||
| dora-operator-api-python = { version = "0.3.3-rc1", path = "apis/python/operator" } | |||
| dora-operator-api-c = { version = "0.3.3-rc1", path = "apis/c/operator" } | |||
| dora-node-api-c = { version = "0.3.3-rc1", path = "apis/c/node" } | |||
| dora-core = { version = "0.3.3-rc1", path = "libraries/core" } | |||
| dora-arrow-convert = { version = "0.3.3-rc1", path = "libraries/arrow-convert" } | |||
| dora-tracing = { version = "0.3.3-rc1", path = "libraries/extensions/telemetry/tracing" } | |||
| dora-metrics = { version = "0.3.3-rc1", path = "libraries/extensions/telemetry/metrics" } | |||
| dora-download = { version = "0.3.3-rc1", path = "libraries/extensions/download" } | |||
| shared-memory-server = { version = "0.3.3-rc1", path = "libraries/shared-memory-server" } | |||
| communication-layer-request-reply = { version = "0.3.3-rc1", path = "libraries/communication-layer/request-reply" } | |||
| dora-message = { version = "0.3.3-rc1", path = "libraries/message" } | |||
| dora-runtime = { version = "0.3.3-rc1", path = "binaries/runtime" } | |||
| dora-daemon = { version = "0.3.3-rc1", path = "binaries/daemon" } | |||
| dora-coordinator = { version = "0.3.3-rc1", path = "binaries/coordinator" } | |||
| dora-ros2-bridge = { path = "libraries/extensions/ros2-bridge" } | |||
| dora-ros2-bridge-msg-gen = { path = "libraries/extensions/ros2-bridge/msg-gen" } | |||
| dora-ros2-bridge-python = { path = "libraries/extensions/ros2-bridge/python" } | |||
| @@ -94,7 +94,7 @@ dunce = "1.0.2" | |||
| serde_yaml = "0.8.23" | |||
| uuid = { version = "1.7", features = ["v7", "serde"] } | |||
| tracing = "0.1.36" | |||
| futures = "0.3.25" | |||
| futures = "0.3.3-rc15" | |||
| tokio-stream = "0.1.11" | |||
| [[example]] | |||
| @@ -1,5 +1,36 @@ | |||
| # Changelog | |||
| ## v0.3.3 (2024-04-08) | |||
| ## What's Changed | |||
| - Metrics refactoring by @haixuanTao in https://github.com/dora-rs/dora/pull/423 | |||
| - Add ROS2 bridge support for C++ nodes by @phil-opp in https://github.com/dora-rs/dora/pull/425 | |||
| - Provide function to create empty `CombinedEvents` stream by @phil-opp in https://github.com/dora-rs/dora/pull/432 | |||
| - Expose ROS2 constants in generated bindings (Rust and C++) by @phil-opp in https://github.com/dora-rs/dora/pull/428 | |||
| - Add option to send `stdout` as node/operator output by @haixuanTao in https://github.com/dora-rs/dora/pull/388 | |||
| - Fix warning about `#pragma once` in main file by @phil-opp in https://github.com/dora-rs/dora/pull/433 | |||
| - Send runs artefacts into a dedicated `out` folder by @haixuanTao in https://github.com/dora-rs/dora/pull/429 | |||
| - Create README.md for cxx-ros2-example by @bobd988 in https://github.com/dora-rs/dora/pull/431 | |||
| - Use Async Parquet Writer for `dora-record` by @haixuanTao in https://github.com/dora-rs/dora/pull/434 | |||
| - Update mio to fix security vulnerability by @phil-opp in https://github.com/dora-rs/dora/pull/440 | |||
| - Add initial support for calling ROS2 services from Rust nodes by @phil-opp in https://github.com/dora-rs/dora/pull/439 | |||
| - Enable ROS2 service calls from C++ nodes by @phil-opp in https://github.com/dora-rs/dora/pull/441 | |||
| - Use `Debug` formatting for eyre errors when returning to C++ by @phil-opp in https://github.com/dora-rs/dora/pull/450 | |||
| - Fix out-of-tree builds in cmake example by @phil-opp in https://github.com/dora-rs/dora/pull/453 | |||
| - Llm example by @haixuanTao in https://github.com/dora-rs/dora/pull/451 | |||
| ## Minor | |||
| - Bump h2 from 0.3.24 to 0.3.26 by @dependabot in https://github.com/dora-rs/dora/pull/456 | |||
| - Update `bat` dependency to v0.24 by @phil-opp in https://github.com/dora-rs/dora/pull/424 | |||
| ## New Contributors | |||
| - @bobd988 made their first contribution in https://github.com/dora-rs/dora/pull/431 | |||
| **Full Changelog**: https://github.com/dora-rs/dora/compare/v0.3.2...v0.3.3 | |||
| ## v0.3.2 (2024-01-26) | |||
| ## Features | |||
| @@ -123,17 +123,17 @@ For more info on installation, check out [our guide](https://dora.carsmos.ai/doc | |||
| 1. Install the example python dependencies: | |||
| ```bash | |||
| pip install -r raw.githubusercontent.com/dora-rs/dora/v0.3.2/examples/python-operator-dataflow/requirements.txt | |||
| pip install -r https://raw.githubusercontent.com/dora-rs/dora/v0.3.3/examples/python-operator-dataflow/requirements.txt | |||
| ``` | |||
| 2. Get some example operators: | |||
| ```bash | |||
| wget raw.githubusercontent.com/dora-rs/dora/v0.3.2/examples/python-operator-dataflow/webcam.py | |||
| wget raw.githubusercontent.com/dora-rs/dora/v0.3.2/examples/python-operator-dataflow/plot.py | |||
| wget raw.githubusercontent.com/dora-rs/dora/v0.3.2/examples/python-operator-dataflow/utils.py | |||
| wget raw.githubusercontent.com/dora-rs/dora/v0.3.2/examples/python-operator-dataflow/object_detection.py | |||
| wget raw.githubusercontent.com/dora-rs/dora/v0.3.2/examples/python-operator-dataflow/dataflow.yml | |||
| wget https://raw.githubusercontent.com/dora-rs/dora/v0.3.3/examples/python-operator-dataflow/webcam.py | |||
| wget https://raw.githubusercontent.com/dora-rs/dora/v0.3.3/examples/python-operator-dataflow/plot.py | |||
| wget https://raw.githubusercontent.com/dora-rs/dora/v0.3.3/examples/python-operator-dataflow/utils.py | |||
| wget https://raw.githubusercontent.com/dora-rs/dora/v0.3.3/examples/python-operator-dataflow/object_detection.py | |||
| wget https://raw.githubusercontent.com/dora-rs/dora/v0.3.3/examples/python-operator-dataflow/dataflow.yml | |||
| ``` | |||
| 3. Start the dataflow | |||
| @@ -15,7 +15,7 @@ from enum import Enum | |||
| from .dora import * | |||
| __author__ = "Dora-rs Authors" | |||
| __version__ = "0.3.2" | |||
| __version__ = "0.3.3-rc1" | |||
| class DoraStatus(Enum): | |||