Releases: erdos-project/erdos
Releases · erdos-project/erdos
v0.4.0
Major API Changes
- New operator API in which operators implement either
Source
,Sink
OneInOneOut
,OneInTwoOut
, orTwoInOneOut
. - New API for connecting streams which uses functions (e.g.
connect_one_in_one_out
) instead of macros.
New Features
- [Rust] ROS bridge operators (via @objorkman).
- [Rust] LINQ-style API for streams (via @sguduguntla).
- [Rust] Support for time-versioned state.
- [Rust] Experimental deadline support.
- [Rust] use clippy for linting.
- [Python] use black and isort for code formatting.
Implementation Changes
- New worker architecture for processing events generated by operators.
- Switch logging from
slog
totracing
.
New Contributors
- @objorkman made their first contribution in #173
- @sguduguntla made their first contribution in #170
v0.3.2
ERDOS v0.3.1
ERDOS v0.3.0
New Features
- Visualize dataflow graph using DOT files (#71).
- Add general dataflow operators (#85, #93).
- Time-versioned state (#95).
- Shut down and reset nodes and dataflows (#74, #114)
- Profiling in python (#78).
Major API Changes
- Operators must implement the
Operator
trait (#77). - Expose
name
andid
properties in Python operators (#79). - Must provide operator configs (#81).
Implementation Changes
- Zero-copy communication for sending messages within a node, and faster message sending across nodes (#119).
- Order events created upon message receipt with a lattice to control parallelism and safe execution (#103).
- Introduce a control plane connecting nodes for internal communication (#59, #62).
- Use control plane to ensure that all operators are set up before executing dataflow (#59).
- Enable processing callbacks in parallel (#108).
- Verify that corresponding types in
new()
andconnect()
match (#67). - Avoid busy-looping (#103).
ERDOS 0.2.0
First release of the Rust-based ERDOS execution engine.