Skip to content

Latest commit

 

History

History
498 lines (390 loc) · 33 KB

Changelog.md

File metadata and controls

498 lines (390 loc) · 33 KB

Changelog

Breaking Change

Inputs are now schedule fairly meaning that they will be now be received equally and not necessarily in chronological order. This enables to always be able to refresh input with the least latency between input.

v0.3.8 (2024-12-06)

  • Make node hub CI/CD cross platform by @haixuanTao in #714
  • Make node hub CI/CD cross architecture by @haixuanTao in #716
  • Make list an available type for metadata by @haixuanTao in #721
  • Add stdout logging by @haixuanTao in #720
  • Add an error when a node fails when using dora run by @haixuanTao in #719
  • Add pyarrow cuda zero copy helper by @haixuanTao in #722
  • feat: Add Dora-kit car Control in node-hub by @LyonRust in #715
  • Add yuv420 encoding to opencv-video-capture by @haixuanTao in #725
  • Change macOS CI runner to macos-13 by @phil-opp in #729
  • Add eyre to pyo3 node by @haixuanTao in #730
  • Moving queue size and making node flume queue bigger by @haixuanTao in #724
  • Make python default for macos by @haixuanTao in #731
  • Modify the node queue Scheduler to make it able to schedule input fairly by @haixuanTao in #728

Full Changelog: https://github.com/dora-rs/dora/compare/v0.3.7...v0.3.8

v0.3.7 (2024-11-15)

What's Changed

  • Post release 0.3.6 small fix by @haixuanTao in #638
  • Changes to template by @XxChang in #639
  • Add appending to PATH instruction inside installation script by @Hennzau in #641
  • Make the benchmark run in release and at full speed by @Hennzau in #644
  • Use the new node syntax for examples dataflow by @Hennzau in #643
  • Improve beginner experience by @Hennzau in #645
  • improve node-hub pytest by @haixuanTao in #640
  • Fix not-null terminated string print within C template by @haixuanTao in #654
  • Raise error if dora-coordinator is not connected when calling dora destroy by @haixuanTao in #655
  • Coordinator stopped on bad control command by @Hennzau in #650
  • Add support for Qwenvl2 by @haixuanTao in #646
  • Fix distributed node by @haixuanTao in #658
  • Small install script update for bash by @haixuanTao in #657
  • Add additional image encoding by @haixuanTao in #661
  • dora-echo replicate the topic received with the topic send by @haixuanTao in #663
  • Update dependencies by @renovate in #656
  • Bump pyo3 and arrow versions by @haixuanTao in #667
  • Fix ros2 bridge incompatibility with CI Ubuntu 24 and with pyo3 22 by @haixuanTao in #670
  • Add transformers version pinning for qwenvl2 by @haixuanTao in #665
  • Remove cli dataflow path check by @haixuanTao in #662
  • Better error handling for unknown output by @haixuanTao in #675
  • Fix llama recorder multi image recorder by @haixuanTao in #677
  • Dora openai server example by @haixuanTao in #676
  • Update dependencies by @renovate in #674
  • Create Rust-based openai api proxy server in node hub by @phil-opp in #678
  • Update dependencies by @renovate in #679
  • Update Rust crate hyper to v0.14.30 by @renovate in #680
  • Fix hanged coordinator when failing to connect to the daemon on destroy command by @haixuanTao in #664
  • Small example improvement using pyarrow assertion by @haixuanTao in #669
  • Fix dora list listing twice a stopping dataflow when using multiple daemon. by @haixuanTao in #668
  • Add package flake by @Ben-PH in #685
  • Add jpeg format to qwenvl2 by @haixuanTao in #684
  • Enable downloading remote dataflow by @haixuanTao in #682
  • Enable multiline build for better packaging of dora node. by @haixuanTao in #683
  • Bump rerun version to 0.18 by @haixuanTao in #686
  • Temporary fix qwenvl2 queue error by @haixuanTao in #688
  • Make daemon loop over coordinator connection to make it possible to create a system service awaiting coordinator connection by @haixuanTao in #689
  • Add translation example from chinese, french to english by @haixuanTao in #681
  • Update dependencies by @renovate in #690
  • Fix macos 14 yolo error by @haixuanTao in #696
  • Update dependencies by @renovate in #692
  • Publish rust project on pip to make it simpler to deploy dora node on different machine without requiring installing cargo by @haixuanTao in #695
  • Docs: README by @Radovenchyk in #697
  • Update README.md by @pucedoteth in #705
  • Bump rust toolchains 1.81 by @haixuanTao in #707
  • Make dora cli pip installable by @haixuanTao in #706
  • Add urdf visualization in rerun by @haixuanTao in #704
  • Fix child process receiving ctrl-c by setting own process group by @haixuanTao in #712
  • Move more types from dora-core to dora-message to avoid dependency by @phil-opp in #711
  • Implement dora run command by @phil-opp in #703
  • Adding Agilex Piper node, PyOrbbeckSDK node, Agilex UGV node by @haixuanTao in #709
  • Make the node hub CI/CD parallel for faster testing as well as having more granular integration control by @haixuanTao in #710
  • Add time series to dora rerun by @haixuanTao in #713

New Contributors

  • @Ben-PH made their first contribution in #685
  • @Radovenchyk made their first contribution in #697
  • @pucedoteth made their first contribution in #705

v0.3.6 (2024-08-17)

What's Changed

  • Update dependencies by @renovate in #579
  • Don't wait for non-started dynamic nodes on stop by @phil-opp in #583
  • add a comment on read_dora_input_id by @XxChang in #580
  • Update dependencies by @renovate in #584
  • Update dependencies by @renovate in #585
  • Add domain unix socket supports by @XxChang in #594
  • Check build for cross-compiled targets on CI by @phil-opp in #597
  • Test pip release creation as part of normal CI by @phil-opp in #596
  • Add-armv7-musleabihf-prebuilt-release by @haixuanTao in #578
  • Update dependencies by @renovate in #602
  • Delay dropping of DoraNode in Python until all event data is freed by @phil-opp in #601
  • Add install script by @haixuanTao in #600
  • Nodes hub to store and reuse commonly used node by @haixuanTao in #569
  • Ros2-bridge action attempt by @starlitxiling in #567
  • Update dependencies by @renovate in #605
  • Add a CI/CD for the node-hub by @haixuanTao in #604
  • Update dependencies by @renovate in #608
  • Remove dynamic node from pending nodes before starting a dataflow by @haixuanTao in #606
  • Fix alignment of atomics in shared memory communication channel by @phil-opp in #612
  • Update dependencies by @renovate in #622
  • Refactor: Move message definitions to dora-message crate by @phil-opp in #613
  • Update README.md by @heyong4725 in #623
  • Update Rust crate serde to v1.0.207 by @renovate in #624
  • fix clippy warnings by @Michael-J-Ward in #626

v0.3.5 (2024-07-03)

What's Changed

  • chore: Support RISCV64 by @LyonRust in #505
  • Json schemas for VSCode YAML Support by @haixuanTao in #497
  • Pretty Print Rust object when called from Python print by @haixuanTao in #503
  • Fix Cargo.lock by @phil-opp in #506
  • Use dependabot for automatic lockfile updates by @phil-opp in #507
  • Run cargo update by @phil-opp in #508
  • Allow top-level fields in node declaration by @phil-opp in #478
  • Configure Renovate by @renovate in #509
  • Make non-UTF8 stdout/stderr from nodes non-fatal by @phil-opp in #510
  • Make dora cli connect to remote coordinator by @Gege-Wang in #513
  • Provide help messages for CLI by @phil-opp in #519
  • Renovate: group all dependency updates in single PR by @phil-opp in #524
  • chore(deps): update dependencies by @renovate in #529
  • Improve coordinator port config by @phil-opp in #520
  • Fix some typos and add automatic typos check to CI by @EricLBuehler in #539
  • Update Pyo3 bounds by @Michael-J-Ward in #472
  • chore(deps): update dependencies by @renovate in #543
  • Small logging improvements by @phil-opp in #537
  • Refuse relative path for remote in coordinator by @XxChang in #538
  • chore(deps): update rust crate clap to v4.5.7 by @renovate in #546
  • Add --quiet flag to daemon and coordinator by @phil-opp in #548
  • Implement file-based logging in daemon and coordinator by @phil-opp in #549
  • Spawn daemon and coordinator in quiet mode on dora up by @phil-opp in #550
  • Run dynamic node by @haixuanTao in #517
  • Update dora new by @XxChang in #553
  • fix event_as_input bug by @XxChang in #556
  • Transform custom PyEvent into standard python dictionary for easier d… by @haixuanTao in #557
  • Update dependencies by @renovate in #558
  • Update dependencies by @renovate in #560
  • Update dependencies by @renovate in #563
  • Print only first node error and report more metadata in dataflow results by @phil-opp in #552
  • Make dora start attach by default, add --detach to opt-out by @phil-opp in #561
  • List failed and finished dataflows in dora list by @phil-opp in #554
  • Ignore-quicker-pending-drop-token by @haixuanTao in #568
  • Increasing grace duration to 2 seconds so that drop token get well returned in #576

New Contributors

  • @LyonRust made their first contribution in #505
  • @renovate made their first contribution in #509
  • @Gege-Wang made their first contribution in #513
  • @EricLBuehler made their first contribution in #539

Full Changelog: https://github.com/dora-rs/dora/compare/v0.3.4...v0.3.5

v0.3.4 (2024-05-17)

What's Changed

  • Remove cxx_build call, which is no longer used by @phil-opp in #470
  • Update ros2-client to latest version by @phil-opp in #457
  • Configurable bind addrs by @Michael-J-Ward in #471
  • Simple warning fixes by @Michael-J-Ward in #477
  • Adding dora-rerun as a visualization tool by @haixuanTao in #479
  • Fix Clippy and RERUN_MEMORY_LIMIT env variable default by @haixuanTao in #490
  • Fix CI build errors by @phil-opp in #491
  • Use resolver = 2 for in workspace in Rust template by @phil-opp in #492
  • Add grace duration and kill process by @haixuanTao in #487
  • Simplify parsing of AMENT_PREFIX_PATH by @haixuanTao in #489
  • Convert rust example to node by @Michael-J-Ward in #494
  • Adding python IDE typing by @haixuanTao in #493
  • Fix: Wait until dora daemon is connected to coordinator on dora up by @phil-opp in #496

New Contributors

  • @Michael-J-Ward made their first contribution in #471

Full Changelog: https://github.com/dora-rs/dora/compare/v0.3.3...v0.3.4

v0.3.3 (2024-04-08)

What's Changed

  • Metrics refactoring by @haixuanTao in #423
  • Add ROS2 bridge support for C++ nodes by @phil-opp in #425
  • Provide function to create empty CombinedEvents stream by @phil-opp in #432
  • Expose ROS2 constants in generated bindings (Rust and C++) by @phil-opp in #428
  • Add option to send stdout as node/operator output by @haixuanTao in #388
  • Fix warning about #pragma once in main file by @phil-opp in #433
  • Send runs artefacts into a dedicated out folder by @haixuanTao in #429
  • Create README.md for cxx-ros2-example by @bobd988 in #431
  • Use Async Parquet Writer for dora-record by @haixuanTao in #434
  • Update mio to fix security vulnerability by @phil-opp in #440
  • Add initial support for calling ROS2 services from Rust nodes by @phil-opp in #439
  • Enable ROS2 service calls from C++ nodes by @phil-opp in #441
  • Use Debug formatting for eyre errors when returning to C++ by @phil-opp in #450
  • Fix out-of-tree builds in cmake example by @phil-opp in #453
  • Fix broken link in README by @mshr-h in #462
  • fix cargo run --example cmake-dataflow compile bugs by @XxChang in #460
  • Llm example by @haixuanTao in #451
  • Fix meter conflict by @haixuanTao in #461
  • Update README.md by @bobd988 in #458
  • Refactor README by @haixuanTao in #463
  • Specify conda env for Python Operators by @haixuanTao in #468

Minor

  • Bump h2 from 0.3.24 to 0.3.26 by @dependabot in #456
  • Update bat dependency to v0.24 by @phil-opp in #424

New Contributors

  • @bobd988 made their first contribution in #431
  • @mshr-h made their first contribution in #462

Full Changelog: https://github.com/dora-rs/dora/compare/v0.3.2...v0.3.3

v0.3.2 (2024-01-26)

Features

  • Wait until DestroyResult is sent before exiting dora-daemon by @phil-opp in #413
  • Reduce dora-rs to a single binary by @haixuanTao in #410
  • Rework python ROS2 (de)serialization using parsed ROS2 messages directly by @phil-opp in #415
  • Fix ros2 array bug by @haixuanTao in #412
  • Test ros2 type info by @haixuanTao in #418
  • Use forward slash as it is default way of defining ros2 topic by @haixuanTao in #419

Minor

  • Bump h2 from 0.3.21 to 0.3.24 by @dependabot in #414

v0.3.1 (2024-01-09)

Features

  • Support legacy python by @haixuanTao in #382
  • Add an error catch in python on_event when using hot-reloading by @haixuanTao in #372
  • add cmake example by @XxChang in #381
  • Bump opentelemetry metrics to 0.21 by @haixuanTao in #383
  • Trace send_output as it can be a big source of overhead for large messages by @haixuanTao in #384
  • Adding a timeout method to not block indefinitely next event by @haixuanTao in #386
  • Adding Vec<u8> conversion by @haixuanTao in #387
  • Dora cli renaming by @haixuanTao in #399
  • Update ros2-client and rustdds dependencies to latest fork version by @phil-opp in #397

Fix

  • Fix window path error by @haixuanTao in #398
  • Fix read error in C++ node input by @haixuanTao in #406
  • Bump unsafe-libyaml from 0.2.9 to 0.2.10 by @dependabot in #400

New Contributors

  • @XxChang made their first contribution in #381

Full Changelog: https://github.com/dora-rs/dora/compare/v0.3.0...v0.3.1

v0.3.0 (2023-11-01)

Features

  • Rust node API typed using arrow by @phil-opp in #353
  • Dora record by @haixuanTao in #365
  • beautify graph visualisation by @haixuanTao in #370
  • Remove Ros2Value encapsulation of ArrayData by @haixuanTao in #359
  • Refactor python typing by @haixuanTao in #369
  • Update README discord link by @Felixhuangsiling in #361

Other

  • Update rustix v0.38 dependency by @phil-opp in #366
  • Bump rustix from 0.37.24 to 0.37.25 by @dependabot in #364
  • Bump quinn-proto from 0.9.3 to 0.9.5 by @dependabot in #357
  • Bump webpki from 0.22.1 to 0.22.2 by @dependabot in #358
  • Update README discord link by @Felixhuangsiling in #361

New Contributors

  • @Felixhuangsiling made their first contribution in #361

v0.2.6 (2023-09-14)

  • Update dependencies to fix some security advisories by @phil-opp in #354
    • Fixes cargo install dora-daemon

v0.2.5 (2023-09-06)

Features

  • Use cargo instead of git in Rust Cargo.toml template by @haixuanTao in #326
  • Use read_line instead of next_line in stderr by @haixuanTao in #325
  • Add a rust-ros2-dataflow example using the dora-ros2-bridge by @phil-opp in #324
  • Removing patchelf by @haixuanTao in #333
  • Improving python example readability by @haixuanTao in #334
  • Use serde_bytes to serialize Vec<u8> by @haixuanTao in #336
  • Adding support for Arrow List(*) for Python by @haixuanTao in #337
  • Bump rustls-webpki from 0.100.1 to 0.100.2 by @dependabot in #340
  • Add support for event stream merging for Python node API by @phil-opp in #339
  • Merge dora-ros2-bridge by @phil-opp in #341
  • Update dependencies by @phil-opp in #345
  • Add support for arbitrary Arrow types in Python API by @phil-opp in #343
  • Use typed inputs in Python ROS2 example by @phil-opp in #346
  • Use struct type instead of array for ros2 messages by @haixuanTao in #349

Other

  • Add Discord 💬 by @haixuanTao in #348
  • Small refactoring by @haixuanTao in #342

v0.2.4 (2023-07-18)

Features

  • Return dataflow result to CLI on dora stop by @phil-opp in #300
  • Make dataflow descriptor available to Python nodes and operators by @phil-opp in #301
  • Create a CONTRIBUTING.md guide by @phil-opp in #307
  • Distribute prebuilt arm macos dora-rs by @haixuanTao in #308

Other

  • Fix the typos and add dora code branch by @meua in #290
  • For consistency with other examples, modify python -> python3 by @meua in #299
  • Add timestamps generated by hybrid logical clocks to all sent events by @phil-opp in #302
  • Don't recompile the dora-operator-api-c crate on every build/run by @phil-opp in #304
  • Remove deprecated proc_macros feature from safer-ffi dependency by @phil-opp in #305
  • Update to Rust v1.70 by @phil-opp in #303
  • Fix issue with not finding a custom nodes path by @haixuanTao in #315
  • Implement Stream for EventStream by @phil-opp in #309
  • Replace unmaintained atty crate with std::io::IsTerminal by @phil-opp in #318

Full Changelog: https://github.com/dora-rs/dora/compare/v0.2.3...v0.2.4

v0.2.3 (2023-05-24)

What's Changed

  • Check that coordinator, daemon, and node versions match by @phil-opp in #245
  • Share events to Python without copying via arrow crate by @phil-opp in #228
  • Upgrading the operator example to use dora-arrow by @haixuanTao in #251
  • [Python] Show node name in process and put Traceback before the actual Error for more natural error by @haixuanTao in #255
  • CLI: Improve error messages when coordinator is not running by @phil-opp in #254
  • Integrate dora-runtime into dora-daemon by @phil-opp in #257
  • Filter default log level at warn for tokio::tracing by @haixuanTao in #269
  • Make log level filtering be WARN or below by @haixuanTao in #274
  • Add support for distributed deployments with multiple daemons by @phil-opp in #256
  • Provide a way to access logs through the CLI by @haixuanTao in #259
  • Handle node errors during initialization phase by @phil-opp in #275
  • Replace watchdog by asynchronous heartbeat messages by @phil-opp in #278
  • Remove pyo3 in runtime and daemon as it generates libpython depende… by @haixuanTao in #281
  • Release v0.2.3 with aarch64 support by @haixuanTao in #279

Fix

  • Fix yolov5 dependency issue by @haixuanTao in #291
  • To solve this bug #283, unify t… by @meua in #285
  • Fix: Don't try to create two global tracing subscribers when using bundled runtime by @phil-opp in #277
  • CI: Increase timeout for 'build CLI and binaries' step by @phil-opp in #282

Other

  • Update pyo3 to v0.18 by @phil-opp in #246
  • Bump h2 from 0.3.13 to 0.3.17 by @dependabot in #249
  • Add automatic issue labeler to organize opened issues by @haixuanTao in #265
  • Allow the issue labeler to write issues by @phil-opp in #272
  • Add a support matrix with planned feature to clarify dora status by @haixuanTao in #264

Full Changelog: https://github.com/dora-rs/dora/compare/v0.2.2...v0.2.3

v0.2.2 (2023-04-01)

Features

  • Make queue length configurable through the dataflow file by @phil-opp in #231
  • Hot reloading Python Operator by @haixuanTao in #239
  • Synchronize node and operator start by @phil-opp in #236
  • Add opentelemetry capability at runtime instead of compile time by @haixuanTao in #234

Others

  • Wait on events and messages simultaneously to prevent queue buildup by @phil-opp in #235
  • Fix looping in daemon listener loop by @phil-opp in #244
  • Validate shell command as source and url source by @haixuanTao in #243
  • Push error into the init_done channel for debugging context by @haixuanTao in #238
  • Option communication config by @haixuanTao in #241
  • Validate yaml when reading by @haixuanTao in #237

Full Changelog: https://github.com/dora-rs/dora/compare/v0.2.1...v0.2.2

v0.2.1 (2023-03-22)

Features

Fixes

Other

v0.2.0 (2023-03-14)

Breaking

Features

Fixes

Other

v0.1.3 (2023-01-18)

  • Package DoraStatus into dora python package: #172
  • Force removal of Pyo3 Object to avoid memory leak: #168
  • Bump tokio from 1.21.2 to 1.23.1: #171
  • Create a changelog file: #174

v0.1.2 (2022-12-15)

  • Fix infinite loop in the coordinator: #155
  • Simplify the release process: #157
  • Use generic linux distribution: #159

v0.1.1 (2022-12-05)

This release contains fixes for:

  • Python linking using pypi release but also a redesigned python thread model within the runtime to avoid deadlock of the GIL. This also fix an issue with patchelf.
  • A deployment separation for ubuntu as the 20.04 version of dora and 22.04 version of dora are non-compatible.
  • A better tagging of api for dora Rust API.

v0.1.0 (2022-11-15)

This is our first release of dora-rs!

The current release includes:

  • dora-cli which enables creating, starting and stopping dataflow.
  • dora-coordinator which is our control plane.
  • dora-runtime which is manage the runtime of operators.
  • custom-nodes API which enables bridges from different languages.