You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

Changelog.md 20 kB

1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334
  1. # Changelog
  2. ## v0.3.4 (2024-05-17)
  3. ## What's Changed
  4. - Remove `cxx_build` call, which is no longer used by @phil-opp in https://github.com/dora-rs/dora/pull/470
  5. - Update `ros2-client` to latest version by @phil-opp in https://github.com/dora-rs/dora/pull/457
  6. - Configurable bind addrs by @Michael-J-Ward in https://github.com/dora-rs/dora/pull/471
  7. - Simple warning fixes by @Michael-J-Ward in https://github.com/dora-rs/dora/pull/477
  8. - Adding `dora-rerun` as a visualization tool by @haixuanTao in https://github.com/dora-rs/dora/pull/479
  9. - Fix Clippy and RERUN_MEMORY_LIMIT env variable default by @haixuanTao in https://github.com/dora-rs/dora/pull/490
  10. - Fix CI build errors by @phil-opp in https://github.com/dora-rs/dora/pull/491
  11. - Use `resolver = 2` for in workspace in Rust template by @phil-opp in https://github.com/dora-rs/dora/pull/492
  12. - Add grace duration and kill process by @haixuanTao in https://github.com/dora-rs/dora/pull/487
  13. - Simplify parsing of `AMENT_PREFIX_PATH` by @haixuanTao in https://github.com/dora-rs/dora/pull/489
  14. - Convert rust example to node by @Michael-J-Ward in https://github.com/dora-rs/dora/pull/494
  15. - Adding python IDE typing by @haixuanTao in https://github.com/dora-rs/dora/pull/493
  16. - Fix: Wait until dora daemon is connected to coordinator on `dora up` by @phil-opp in https://github.com/dora-rs/dora/pull/496
  17. ## New Contributors
  18. - @Michael-J-Ward made their first contribution in https://github.com/dora-rs/dora/pull/471
  19. **Full Changelog**: https://github.com/dora-rs/dora/compare/v0.3.3...v0.3.4
  20. ## v0.3.3 (2024-04-08)
  21. ## What's Changed
  22. - Metrics refactoring by @haixuanTao in https://github.com/dora-rs/dora/pull/423
  23. - Add ROS2 bridge support for C++ nodes by @phil-opp in https://github.com/dora-rs/dora/pull/425
  24. - Provide function to create empty `CombinedEvents` stream by @phil-opp in https://github.com/dora-rs/dora/pull/432
  25. - Expose ROS2 constants in generated bindings (Rust and C++) by @phil-opp in https://github.com/dora-rs/dora/pull/428
  26. - Add option to send `stdout` as node/operator output by @haixuanTao in https://github.com/dora-rs/dora/pull/388
  27. - Fix warning about `#pragma once` in main file by @phil-opp in https://github.com/dora-rs/dora/pull/433
  28. - Send runs artefacts into a dedicated `out` folder by @haixuanTao in https://github.com/dora-rs/dora/pull/429
  29. - Create README.md for cxx-ros2-example by @bobd988 in https://github.com/dora-rs/dora/pull/431
  30. - Use Async Parquet Writer for `dora-record` by @haixuanTao in https://github.com/dora-rs/dora/pull/434
  31. - Update mio to fix security vulnerability by @phil-opp in https://github.com/dora-rs/dora/pull/440
  32. - Add initial support for calling ROS2 services from Rust nodes by @phil-opp in https://github.com/dora-rs/dora/pull/439
  33. - Enable ROS2 service calls from C++ nodes by @phil-opp in https://github.com/dora-rs/dora/pull/441
  34. - Use `Debug` formatting for eyre errors when returning to C++ by @phil-opp in https://github.com/dora-rs/dora/pull/450
  35. - Fix out-of-tree builds in cmake example by @phil-opp in https://github.com/dora-rs/dora/pull/453
  36. - Fix broken link in README by @mshr-h in https://github.com/dora-rs/dora/pull/462
  37. - fix cargo run --example cmake-dataflow compile bugs by @XxChang in https://github.com/dora-rs/dora/pull/460
  38. - Llm example by @haixuanTao in https://github.com/dora-rs/dora/pull/451
  39. - Fix meter conflict by @haixuanTao in https://github.com/dora-rs/dora/pull/461
  40. - Update README.md by @bobd988 in https://github.com/dora-rs/dora/pull/458
  41. - Refactor `README` by @haixuanTao in https://github.com/dora-rs/dora/pull/463
  42. - Specify conda env for Python Operators by @haixuanTao in https://github.com/dora-rs/dora/pull/468
  43. ## Minor
  44. - Bump h2 from 0.3.24 to 0.3.26 by @dependabot in https://github.com/dora-rs/dora/pull/456
  45. - Update `bat` dependency to v0.24 by @phil-opp in https://github.com/dora-rs/dora/pull/424
  46. ## New Contributors
  47. - @bobd988 made their first contribution in https://github.com/dora-rs/dora/pull/431
  48. * @mshr-h made their first contribution in https://github.com/dora-rs/dora/pull/462
  49. **Full Changelog**: https://github.com/dora-rs/dora/compare/v0.3.2...v0.3.3
  50. ## v0.3.2 (2024-01-26)
  51. ## Features
  52. - Wait until `DestroyResult` is sent before exiting dora-daemon by @phil-opp in https://github.com/dora-rs/dora/pull/413
  53. - Reduce dora-rs to a single binary by @haixuanTao in https://github.com/dora-rs/dora/pull/410
  54. - Rework python ROS2 (de)serialization using parsed ROS2 messages directly by @phil-opp in https://github.com/dora-rs/dora/pull/415
  55. - Fix ros2 array bug by @haixuanTao in https://github.com/dora-rs/dora/pull/412
  56. - Test ros2 type info by @haixuanTao in https://github.com/dora-rs/dora/pull/418
  57. - Use forward slash as it is default way of defining ros2 topic by @haixuanTao in https://github.com/dora-rs/dora/pull/419
  58. ## Minor
  59. - Bump h2 from 0.3.21 to 0.3.24 by @dependabot in https://github.com/dora-rs/dora/pull/414
  60. ## v0.3.1 (2024-01-09)
  61. ## Features
  62. - Support legacy python by @haixuanTao in https://github.com/dora-rs/dora/pull/382
  63. - Add an error catch in python `on_event` when using hot-reloading by @haixuanTao in https://github.com/dora-rs/dora/pull/372
  64. - add cmake example by @XxChang in https://github.com/dora-rs/dora/pull/381
  65. - Bump opentelemetry metrics to 0.21 by @haixuanTao in https://github.com/dora-rs/dora/pull/383
  66. - Trace send_output as it can be a big source of overhead for large messages by @haixuanTao in https://github.com/dora-rs/dora/pull/384
  67. - Adding a timeout method to not block indefinitely next event by @haixuanTao in https://github.com/dora-rs/dora/pull/386
  68. - Adding `Vec<u8>` conversion by @haixuanTao in https://github.com/dora-rs/dora/pull/387
  69. - Dora cli renaming by @haixuanTao in https://github.com/dora-rs/dora/pull/399
  70. - Update `ros2-client` and `rustdds` dependencies to latest fork version by @phil-opp in https://github.com/dora-rs/dora/pull/397
  71. ## Fix
  72. - Fix window path error by @haixuanTao in https://github.com/dora-rs/dora/pull/398
  73. - Fix read error in C++ node input by @haixuanTao in https://github.com/dora-rs/dora/pull/406
  74. - Bump unsafe-libyaml from 0.2.9 to 0.2.10 by @dependabot in https://github.com/dora-rs/dora/pull/400
  75. ## New Contributors
  76. - @XxChang made their first contribution in https://github.com/dora-rs/dora/pull/381
  77. **Full Changelog**: https://github.com/dora-rs/dora/compare/v0.3.0...v0.3.1
  78. ## v0.3.0 (2023-11-01)
  79. ## Features
  80. - Rust node API typed using arrow by @phil-opp in https://github.com/dora-rs/dora/pull/353
  81. - Dora record by @haixuanTao in https://github.com/dora-rs/dora/pull/365
  82. - beautify graph visualisation by @haixuanTao in https://github.com/dora-rs/dora/pull/370
  83. - Remove `Ros2Value` encapsulation of `ArrayData` by @haixuanTao in https://github.com/dora-rs/dora/pull/359
  84. - Refactor python typing by @haixuanTao in https://github.com/dora-rs/dora/pull/369
  85. - Update README discord link by @Felixhuangsiling in https://github.com/dora-rs/dora/pull/361
  86. ### Other
  87. - Update `rustix` v0.38 dependency by @phil-opp in https://github.com/dora-rs/dora/pull/366
  88. - Bump rustix from 0.37.24 to 0.37.25 by @dependabot in https://github.com/dora-rs/dora/pull/364
  89. - Bump quinn-proto from 0.9.3 to 0.9.5 by @dependabot in https://github.com/dora-rs/dora/pull/357
  90. - Bump webpki from 0.22.1 to 0.22.2 by @dependabot in https://github.com/dora-rs/dora/pull/358
  91. - Update README discord link by @Felixhuangsiling in https://github.com/dora-rs/dora/pull/361
  92. ## New Contributors
  93. - @Felixhuangsiling made their first contribution in https://github.com/dora-rs/dora/pull/361
  94. ## v0.2.6 (2023-09-14)
  95. - Update dependencies to fix some security advisories by @phil-opp in https://github.com/dora-rs/dora/pull/354
  96. - Fixes `cargo install dora-daemon`
  97. ## v0.2.5 (2023-09-06)
  98. ### Features
  99. - Use cargo instead of git in Rust `Cargo.toml` template by @haixuanTao in https://github.com/dora-rs/dora/pull/326
  100. - Use read_line instead of next_line in stderr by @haixuanTao in https://github.com/dora-rs/dora/pull/325
  101. - Add a `rust-ros2-dataflow` example using the dora-ros2-bridge by @phil-opp in https://github.com/dora-rs/dora/pull/324
  102. - Removing patchelf by @haixuanTao in https://github.com/dora-rs/dora/pull/333
  103. - Improving python example readibility by @haixuanTao in https://github.com/dora-rs/dora/pull/334
  104. - Use `serde_bytes` to serialize `Vec<u8>` by @haixuanTao in https://github.com/dora-rs/dora/pull/336
  105. - Adding support for `Arrow List(*)` for Python by @haixuanTao in https://github.com/dora-rs/dora/pull/337
  106. - Bump rustls-webpki from 0.100.1 to 0.100.2 by @dependabot in https://github.com/dora-rs/dora/pull/340
  107. - Add support for event stream merging for Python node API by @phil-opp in https://github.com/dora-rs/dora/pull/339
  108. - Merge `dora-ros2-bridge` by @phil-opp in https://github.com/dora-rs/dora/pull/341
  109. - Update dependencies by @phil-opp in https://github.com/dora-rs/dora/pull/345
  110. - Add support for arbitrary Arrow types in Python API by @phil-opp in https://github.com/dora-rs/dora/pull/343
  111. - Use typed inputs in Python ROS2 example by @phil-opp in https://github.com/dora-rs/dora/pull/346
  112. - Use struct type instead of array for ros2 messages by @haixuanTao in https://github.com/dora-rs/dora/pull/349
  113. ### Other
  114. - Add Discord :speech_balloon: by @haixuanTao in https://github.com/dora-rs/dora/pull/348
  115. - Small refactoring by @haixuanTao in https://github.com/dora-rs/dora/pull/342
  116. ## v0.2.4 (2023-07-18)
  117. ### Features
  118. - Return dataflow result to CLI on `dora stop` by @phil-opp in https://github.com/dora-rs/dora/pull/300
  119. - Make dataflow descriptor available to Python nodes and operators by @phil-opp in https://github.com/dora-rs/dora/pull/301
  120. - Create a `CONTRIBUTING.md` guide by @phil-opp in https://github.com/dora-rs/dora/pull/307
  121. - Distribute prebuilt arm macos dora-rs by @haixuanTao in https://github.com/dora-rs/dora/pull/308
  122. ### Other
  123. - Fix the typos and add dora code branch by @meua in https://github.com/dora-rs/dora/pull/290
  124. - For consistency with other examples, modify python -> python3 by @meua in https://github.com/dora-rs/dora/pull/299
  125. - Add timestamps generated by hybrid logical clocks to all sent events by @phil-opp in https://github.com/dora-rs/dora/pull/302
  126. - Don't recompile the `dora-operator-api-c` crate on every build/run by @phil-opp in https://github.com/dora-rs/dora/pull/304
  127. - Remove deprecated `proc_macros` feature from `safer-ffi` dependency by @phil-opp in https://github.com/dora-rs/dora/pull/305
  128. - Update to Rust v1.70 by @phil-opp in https://github.com/dora-rs/dora/pull/303
  129. - Fix issue with not finding a custom nodes path by @haixuanTao in https://github.com/dora-rs/dora/pull/315
  130. - Implement `Stream` for `EventStream` by @phil-opp in https://github.com/dora-rs/dora/pull/309
  131. - Replace unmaintained `atty` crate with `std::io::IsTerminal` by @phil-opp in https://github.com/dora-rs/dora/pull/318
  132. **Full Changelog**: https://github.com/dora-rs/dora/compare/v0.2.3...v0.2.4
  133. ## v0.2.3 (2023-05-24)
  134. ## What's Changed
  135. - Check that coordinator, daemon, and node versions match by @phil-opp in https://github.com/dora-rs/dora/pull/245
  136. - Share events to Python without copying via `arrow` crate by @phil-opp in https://github.com/dora-rs/dora/pull/228
  137. - Upgrading the operator example to use `dora-arrow` by @haixuanTao in https://github.com/dora-rs/dora/pull/251
  138. - [Python] Show node name in process and put Traceback before the actual Error for more natural error by @haixuanTao in https://github.com/dora-rs/dora/pull/255
  139. - CLI: Improve error messages when coordinator is not running by @phil-opp in https://github.com/dora-rs/dora/pull/254
  140. - Integrate `dora-runtime` into `dora-daemon` by @phil-opp in https://github.com/dora-rs/dora/pull/257
  141. - Filter default log level at `warn` for `tokio::tracing` by @haixuanTao in https://github.com/dora-rs/dora/pull/269
  142. - Make log level filtering be `WARN` or below by @haixuanTao in https://github.com/dora-rs/dora/pull/274
  143. - Add support for distributed deployments with multiple daemons by @phil-opp in https://github.com/dora-rs/dora/pull/256
  144. - Provide a way to access logs through the CLI by @haixuanTao in https://github.com/dora-rs/dora/pull/259
  145. - Handle node errors during initialization phase by @phil-opp in https://github.com/dora-rs/dora/pull/275
  146. - Replace watchdog by asynchronous heartbeat messages by @phil-opp in https://github.com/dora-rs/dora/pull/278
  147. - Remove pyo3 in runtime and daemon as it generates `libpython` depende… by @haixuanTao in https://github.com/dora-rs/dora/pull/281
  148. - Release v0.2.3 with aarch64 support by @haixuanTao in https://github.com/dora-rs/dora/pull/279
  149. ## Fix
  150. - Fix yolov5 dependency issue by @haixuanTao in https://github.com/dora-rs/dora/pull/291
  151. - To solve this bug https://github.com/dora-rs/dora/issues/283, unify t… by @meua in https://github.com/dora-rs/dora/pull/285
  152. - Fix: Don't try to create two global tracing subscribers when using bundled runtime by @phil-opp in https://github.com/dora-rs/dora/pull/277
  153. - CI: Increase timeout for 'build CLI and binaries' step by @phil-opp in https://github.com/dora-rs/dora/pull/282
  154. ## Other
  155. - Update `pyo3` to `v0.18` by @phil-opp in https://github.com/dora-rs/dora/pull/246
  156. - Bump h2 from 0.3.13 to 0.3.17 by @dependabot in https://github.com/dora-rs/dora/pull/249
  157. - Add automatic issue labeler to organize opened issues by @haixuanTao in https://github.com/dora-rs/dora/pull/265
  158. - Allow the issue labeler to write issues by @phil-opp in https://github.com/dora-rs/dora/pull/272
  159. - Add a support matrix with planned feature to clarify dora status by @haixuanTao in https://github.com/dora-rs/dora/pull/264
  160. **Full Changelog**: https://github.com/dora-rs/dora/compare/v0.2.2...v0.2.3
  161. ## v0.2.2 (2023-04-01)
  162. ### Features
  163. - Make queue length configurable through the dataflow file by @phil-opp in https://github.com/dora-rs/dora/pull/231
  164. - Hot reloading Python Operator by @haixuanTao in https://github.com/dora-rs/dora/pull/239
  165. - Synchronize node and operator start by @phil-opp in https://github.com/dora-rs/dora/pull/236
  166. - Add opentelemetry capability at runtime instead of compile time by @haixuanTao in https://github.com/dora-rs/dora/pull/234
  167. ### Others
  168. - Wait on events and messages simultaneously to prevent queue buildup by @phil-opp in https://github.com/dora-rs/dora/pull/235
  169. - Fix looping in daemon listener loop by @phil-opp in https://github.com/dora-rs/dora/pull/244
  170. - Validate shell command as source and url source by @haixuanTao in https://github.com/dora-rs/dora/pull/243
  171. - Push error into the `init_done` channel for debugging context by @haixuanTao in https://github.com/dora-rs/dora/pull/238
  172. - Option communication config by @haixuanTao in https://github.com/dora-rs/dora/pull/241
  173. - Validate yaml when reading by @haixuanTao in https://github.com/dora-rs/dora/pull/237
  174. **Full Changelog**: https://github.com/dora-rs/dora/compare/v0.2.1...v0.2.2
  175. ## v0.2.1 (2023-03-22)
  176. ### Features
  177. - [Make dora-rs publishable on crates.io](https://github.com/dora-rs/dora/pull/211)
  178. ### Fixes
  179. - [Avoid blocking the daemon main loop by using unbounded queue](https://github.com/dora-rs/dora/pull/230)
  180. - [Inject YAML declared env variable into the runtime](https://github.com/dora-rs/dora/pull/227)
  181. - [Use rustls instead of system SSL implementation](https://github.com/dora-rs/dora/pull/216)
  182. ### Other
  183. - [Refactor python error](https://github.com/dora-rs/dora/pull/229)
  184. - [The first letter of rust should be lowercase in the command](https://github.com/dora-rs/dora/pull/226)
  185. - [Add documentation to the cli within the helper mode](https://github.com/dora-rs/dora/pull/225)
  186. - [Update to safer-ffi v0.1.0-rc1](https://github.com/dora-rs/dora/pull/218)
  187. - [remove unused variable: data_bytes](https://github.com/dora-rs/dora/pull/215)
  188. - [Clean up: Remove workspace path](https://github.com/dora-rs/dora/pull/210)
  189. - [Decouple opentelemetry from tracing](https://github.com/dora-rs/dora/pull/222)
  190. - [Remove zenoh dependency from dora node API to speed up build](https://github.com/dora-rs/dora/pull/220)
  191. - [Update to Rust v1.68](https://github.com/dora-rs/dora/pull/221)
  192. - [Deny unknown fields to avoid typos](https://github.com/dora-rs/dora/pull/223)
  193. - [Add an internal cli argument to create template with path dependencies](https://github.com/dora-rs/dora/pull/212)
  194. ## v0.2.0 (2023-03-14)
  195. ### Breaking
  196. - [Redesign: Create a `dora-daemon` as a communication broker](https://github.com/dora-rs/dora/pull/162)
  197. - New `dora-daemon` executable that acts as a communication hub for all local nodes
  198. - Large messages are passed through shared memory without any copying
  199. - [Replaces the previous `iceoryx` communication layer](https://github.com/dora-rs/dora/pull/201)
  200. - Small API change: Nodes and operators now receive _events_ instead of just inputs
  201. - Inputs are one type of event
  202. - Other supported events: `InputClosed` when an input stream is closed and `Stop` when the user stops the dataflow (e.g. through the CLI)
  203. ### Features
  204. - Better Error handling when operator fails
  205. - [Send small messages directly without shared memory](https://github.com/dora-rs/dora/pull/193)
  206. - [Send all queued incoming events at once on `NextEvent` request](https://github.com/dora-rs/dora/pull/194)
  207. - [Don't send replies for `SendMessage` requests when using TCP](https://github.com/dora-rs/dora/pull/195)
  208. - [Allocate shared memory in nodes to improve throughput](https://github.com/dora-rs/dora/pull/200)
  209. ### Fixes
  210. - [Manage node failure: Await all nodes to finish before marking dataflow as finished](https://github.com/dora-rs/dora/pull/183)
  211. ### Other
  212. - [Use `DoraStatus` from dora library in template](https://github.com/dora-rs/dora/pull/182)
  213. - [Simplify: Replace `library_filename` function with `format!` call](https://github.com/dora-rs/dora/pull/191)
  214. - [Refactor Rust node API implementation](https://github.com/dora-rs/dora/pull/196)
  215. - [Remove code duplicate for tracing subscriber and use env variable to manage log level.](https://github.com/dora-rs/dora/pull/197)
  216. - [Add daemon to the release archive](https://github.com/dora-rs/dora/pull/199)
  217. - [Remove `remove_dir_all` from `Cargo.lock`as it is vulnerable to a race condition according to dependabot](https://github.com/dora-rs/dora/pull/202)
  218. - [Update the documentation to the new daemon format](https://github.com/dora-rs/dora/pull/198)
  219. - [Removing legacy `libacl` which was required by Iceoryx](https://github.com/dora-rs/dora/pull/205)
  220. - [Remove unimplemented CLI arguments for now](https://github.com/dora-rs/dora/pull/207)
  221. - [Update zenoh to remove git dependencies](https://github.com/dora-rs/dora/pull/203)
  222. - [Fix cli template to new daemon API](https://github.com/dora-rs/dora/pull/204)
  223. - [Cleanup warnings](https://github.com/dora-rs/dora/pull/208)
  224. - Dependency updates
  225. ## v0.1.3 (2023-01-18)
  226. - Package `DoraStatus` into dora python package: https://github.com/dora-rs/dora/pull/172
  227. - Force removal of Pyo3 Object to avoid memory leak: https://github.com/dora-rs/dora/pull/168
  228. - Bump tokio from 1.21.2 to 1.23.1: https://github.com/dora-rs/dora/pull/171
  229. - Create a changelog file: https://github.com/dora-rs/dora/pull/174
  230. ## v0.1.2 (2022-12-15)
  231. - Fix infinite loop in the coordinator: https://github.com/dora-rs/dora/pull/155
  232. - Simplify the release process: https://github.com/dora-rs/dora/pull/157
  233. - Use generic linux distribution: https://github.com/dora-rs/dora/pull/159
  234. ## v0.1.1 (2022-12-05)
  235. This release contains fixes for:
  236. - 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`.
  237. - A deployment separation for `ubuntu` as the `20.04` version of `dora` and `22.04` version of dora are non-compatible.
  238. - A better tagging of api for `dora` Rust API.
  239. ## v0.1.0 (2022-11-15)
  240. This is our first release of `dora-rs`!
  241. The current release includes:
  242. - `dora-cli` which enables creating, starting and stopping dataflow.
  243. - `dora-coordinator` which is our control plane.
  244. - `dora-runtime` which is manage the runtime of operators.
  245. - `custom-nodes` API which enables bridges from different languages.