haixuanTao
bc68de3bbd
Change `MetadataParameters` into a `BTreeMap` to allow user defined metadata as well as enable more flexibility in managing metadata
1 year ago
Haixuan Xavier Tao
16ef29ab80
Merge pull request #601 from dora-rs/delay-node-drop
Delay dropping of `DoraNode` in Python until all event data is freed
1 year ago
Philipp Oppermann
328fd7ecf6
Fix accidental infinite self-recursion
1 year ago
Philipp Oppermann
9cec8df1cc
Delay dropping of `DoraNode` in Python until all event data is freed
When dropping the `DoraNode`, it waits for the remaining drop tokens. This only works if all the dora events were already dropped before. With the Python GC, this is not guaranteed as some events might still be live on the heap (the user might even use them later). In such cases, we waited until we ran into a timeout, which resulted in very long exit times (see https://github.com/dora-rs/dora/issues/598 ).
This commit fixes this issue by adding a reference-counted copy of the `DoraNode` and `EventStream` to every event given to Python. This way, we can ensure that the underlying `DoraNode` is only dropped after the last event reference has been freed.
1 year ago
chang xu
bccb1ae27d
Add domain unix socket supports ( #594 )
1 year ago
XxChang
2e426e5133
add safety
1 year ago
XxChang
8ee80cac6b
fix fmt
1 year ago
XxChang
e590b2e029
add a comment on read_dora_input_id
1 year ago
Haixuan Xavier Tao
110ce99795
Merge pull request #566 from dora-rs/v0.3.5
V0.3.5
1 year ago
XxChang
ab2ea3e169
fix fmt
1 year ago
XxChang
ac65b0fc09
minor
1 year ago
XxChang
1f23470d8b
minor
1 year ago
XxChang
7904a3ee55
add a timestamp method to c-node-api
1 year ago
XxChang
fb362b7f27
add a timestamp method to c-node-api
1 year ago
XxChang
3f1185fd34
add a timestamp method to c-node-api
1 year ago
haixuanTao
2b1299deba
Derive Node special method
1 year ago
haixuanTao
329844358a
Reduce timeout time and increase grace duration so that node exit gracefully within one second
1 year ago
haixuanTao
5b7a614c14
Reduce drop token time from 30s to 1s as most of the time the drop token is having a race condition with the GIL in python.
1 year ago
EricLBuehler
233192f41e
Update deps
1 year ago
Eric Buehler
61d12274fb
Merge pull request #1 from haixuanTao/improve-eric-pyo3-derive-special-method
Add derivation fo python ros2 bridge
1 year ago
EricLBuehler
65b71810b6
Merge remote-tracking branch 'upstream/main' into proc_macro_dir
1 year ago
haixuanTao
42dcb07237
Add derivation fo rpython ros2 bridge
1 year ago
Haixuan Xavier Tao
42255f5a70
Merge pull request #557 from dora-rs/convert-pyevent-into-dictionary
Transform custom PyEvent into standard python dictionary for easier d…
1 year ago
haixuanTao
c4263e6c8f
Remove bound from definition of .to_py_dict
1 year ago
haixuanTao
525dfa19e3
Make kind generic for both type
1 year ago
haixuanTao
ae9aea24e0
update stubs definition
1 year ago
haixuanTao
b2eace277d
Transform custom PyEvent into standard python dictionary for easier debuggability.
Currently having a custom PyEvent make debugging very hard as fields are hidden within the class PyEvent that is defined within Rust Code.
Python user are getting really confused about this obscure class.
This PR transforms the class into a standard python dictionary.
1 year ago
XxChang
2488d0916c
fix event_as_input bug
1 year ago
EricLBuehler
8ff6d39a84
Use the new crate
1 year ago
Haixuan Xavier Tao
f34cbe2ffc
Merge pull request #517 from dora-rs/detached-python-process
Run dynamic node
1 year ago
haixuanTao
7d3a5de1c5
Make rust flexible logic and make sure to always use env variables DORA_NODE_CONFIG if it exists.
This remove the complexity of having to rename the node id when used within a yaml configuration.
1 year ago
EricLBuehler
19e26358b6
Rename and use multiple_pymethods trait
1 year ago
EricLBuehler
c40204d4d6
Format
1 year ago
EricLBuehler
5995ac28de
PoC in Node
1 year ago
haixuanTao
3f2f274036
Remove unnecessary condition on dynamic node
1 year ago
haixuanTao
a0a95b730c
Rename dynamic node listener -> local listener
1 year ago
Haixuan Xavier Tao
d7be6a49e3
Merge pull request #472 from Michael-J-Ward/pyo3-bounds
Update Pyo3 bounds
1 year ago
haixuanTao
3ad402ce45
Add dynamic node event loop and dynamic node connection
1 year ago
Michael-J-Ward
bf088fc1eb
lint: fix clippy lint
1 year ago
Michael-J-Ward
25884b658a
update pyo3 to new bounds api
1 year ago
Michael-J-Ward
cd8ed19620
deps: upgrade pyo3 and arrow deps
Arrow needs to be upgraded alongside pyo3 because they both link to python.
NOTE: Arrow marked `ffi::from_ffi` unsafe.
https://github.com/apache/arrow-rs/pull/5080
1 year ago
EricLBuehler
6c62246e53
Fix typos
1 year ago
Philipp Oppermann
c7de69ac9c
Merge pull request #503 from dora-rs/pretty-print-event
Pretty Print Rust object when called from Python print
1 year ago
haixuanTao
b5de93e5f5
Pretty Print Rust object when called from Python print
1 year ago
haixuantao
0f530906aa
Add dataflow_id getter in python
1 year ago
haixuanTao
ef3f087682
Adding additional ros2 bridge warnings in the documentation
1 year ago
haixuanTao
bdf90f7219
Fix positional argument typing
1 year ago
haixuanTao
9f80dbf0c4
Adding warnings in the docsctring
1 year ago
haixuanTao
597ee41428
Improving typing by adding dora prefix
1 year ago
haixuanTao
102198a25c
Add wildcard import in case an import is missing
1 year ago