Philipp Oppermann
2e0419b100
Add basic log forwarding from daemon to CLI
Forwarded by coordinator
1 year ago
haixuanTao
83779045e6
Add schema generator
1 year ago
haixuanTao
8a210637f9
Adding `schemars` to generate json schema for vscode yaml autocompletion
1 year ago
haixuanTao
f0db125499
Use `Uuid::v7` to have chronological Uuid
2 years ago
Philipp Oppermann
e701eb4182
Fix: enable sync module of tokio
2 years ago
haixuanTao
0568656ef0
Remove unused dependencies for faster compile time
2 years ago
haixuanTao
ea1259da20
Bump which version
2 years ago
haixuanTao
0a60246038
Make `run` a helper function and use OsStr to search for path
2 years ago
Philipp Oppermann
ad3f0482ac
Avoid alignment errors by aligning raw data on deseralization
Ensures that all raw data has at least an alignment of 128.
2 years ago
haixuanTao
504910c350
Use `serde_bytes` to serialize `Vec<u8>`
Seializing Vec<u8> by default iterate over each element instead of copying
the byte array.
See: https://github.com/rust-lang/rust/issues/31844
2 years ago
haixuanTao
db92865c3f
Remove duplicated `read_descriptor` function
3 years ago
haixuanTao
7a7a20a298
Add missing licenses and centralise license definition
test new crates version release
3 years ago
haixuanTao
101ddd2092
add documentation and description to all crates
test rc 2 version
fix version typo
Test crates.io new dora tag release
3 years ago
Philipp Oppermann
3309151c4f
Remove zenoh dependency from dora node API to speed up build
We can do the parsing in the coordinator later.
3 years ago
haixuanTao
f1cf0864a4
Remove static path from workspace dependency
Removing those path make it easier to move package, reduce path management
reduce complexity and make it easier to export crates to `crates.io`
3 years ago
haixuanTao
e341a6d1a0
remove zenoh git dependencies
3 years ago
Philipp Oppermann
1e07a73a64
Merge branch 'main' into unify-nodes-and-operators
3 years ago
haixuanTao
933dadc68b
Expand `env` value when possible
This commit enables users to pass environment variable as composition
of env variable such as:
```yaml
- id: yolov5
operator:
outputs:
- bbox
- ready
inputs:
image: oasis_agent/image
check: oasis_agent/yolov5_check
python: ../../operators/yolov5_op.py
env:
YOLOV5_PATH: $HOME/Documents/dependencies/yolov5
YOLOV5_WEIGHT_PATH: $DORA_DEP_HOME/dependencies/yolov5/yolov5n.pt
```
Note that this is only for the env field. Expanding env variable for
source path might conflict with using url as source path.
3 years ago
Philipp Oppermann
cf95078ca1
Extract shared memory server/client into separate crate
To allow for individual testing and benchmarking. This will also enable reuse of the library in other projects.
3 years ago
Philipp Oppermann
70298d836f
Start migrating the daemon control channel to shared memory
The goal is to avoid the latency of the TCP socket.
3 years ago
Philipp Oppermann
df5dcfb342
Merge branch 'main' into unify-nodes-and-operators
3 years ago
Philipp Oppermann
433b7b4ed7
Merge branch 'main' into unify-nodes-and-operators
3 years ago
Philipp Oppermann
d8260d5d2c
Inherit package version from workspace root
This way, we don't need to update the version manually in all sub-crates on every release.
3 years ago
Philipp Oppermann
2e7ef8b630
Implement shared memory mapping in node API
3 years ago
haixuanTao
9a0b303e98
Replace all versions to `v0.1.1`
3 years ago
Philipp Oppermann
c2e4948dd5
Update Rust node API to communicate through dora-daemon
3 years ago
Philipp Oppermann
03d9c05eab
Use TCP-based request/reply communication layer for control messages
Use the new request/reply communcation layer and its TCP-based implementation for sending control messages from the CLI to the dora coordinator.
3 years ago
haixuanTao
03b86518a8
Make command line argument program usable as custom node source.
This PR makes it possible to use command line argument as custom node source.
This is very useful when the program is dependant on some environment variable
to be run. Exemples are: ROS/setup.bash and Python/Conda activate.
Custom node source can now be:
- a path: `./target/debut/abcd`
- a program in path: `rosrun`
- a url: `https://github.com/dora-rs/dora/releases/download/v0.0.0-test.4/rust-dataflow-example-node `
- or at the last resort a command line program: `source setup.bash && roslaunch velodyne_pointcloud VLP16_points.launch`
All those sources can have arguments `args` passed through the `args` field of the node. This args field
is recommanded when using a path as it will better manage the different OS.
3 years ago
haixuanTao
ffe686a10d
Pin zenoh git commit
Pinning zenoh git version to fix recompilation of the `dora-api-operator` when it
is a user dependency.
3 years ago
Philipp Oppermann
c4da2cbdad
Refactor: Move configuration to `core` crate
3 years ago
Philipp Oppermann
d57cafadc4
Implement `dora graph` subcommand based on coordinator visualization code
3 years ago
haixuanTao
251fe6b20f
Replaced `dora-common` with `dora-core`
3 years ago
haixuanTao
28a902d83a
Moving folders in correspondance with #41
Simply moving crate to mirror our discussion without touching at names
3 years ago