piker/piker/data
Gud Boi ef3309adf9 Add timeout + shielding to `NoBsWs` reconnect logic
Add timeout param to `.reset()` and `.send_msg()` to prevent
indefinite blocking on reconnect attempts. Shield reconnect
sleeps from cancellation to ensure we avoid any "finally footgun" type
scenarios where `trio.Cancelled` masks an underlying exc per,
- https://github.com/goodboy/tractor/pull/387
- https://github.com/goodboy/tractor/pull/391

Deats,
- add `timeout` param to `.reset()`, return `bool` for success
- add `timeout=3` default to `.send_msg()` for reconnect wait
- shield `.reset()` call in `.send_msg()` error handler
- log warning when reconnect timeout exceeded
- shield throttled sleeps in `_reconnect_forever()` error paths

(this commit msg was generated in some part by [`claude-code`][claude-code-gh])
[claude-code-gh]: https://github.com/anthropics/claude-code
2026-02-04 20:09:35 -05:00
..
__init__.py Move `dedupe()` to `.data.tsp` (so it has pals) 2023-12-11 16:24:27 -05:00
_formatters.py Expose "bar gap margin" as `.ui._formatters.BGM: float` 2023-12-28 10:37:20 -05:00
_m4.py Add subsys log to new `.data._util` 2023-05-09 14:49:26 -04:00
_pathops.py .data._pathops: drop profiler imports, fix some naming to appease `ruff` 2023-07-20 15:27:22 -04:00
_sampling.py Handle `tractor.TransportClosed` as "stream-closed" 2026-02-04 20:02:28 -05:00
_sharedmem.py For claude, ignore no runtime for offline shm reading 2026-01-29 02:49:25 -05:00
_source.py Drop `bar_wap` from default ohlc field set 2023-06-27 13:41:47 -04:00
_symcache.py `data._symcache`, impl a summary `.__repr__()`, avoids `Asset` causality issues 2026-01-06 19:33:23 -05:00
_util.py Add subsys log to new `.data._util` 2023-05-09 14:49:26 -04:00
_web_bs.py Add timeout + shielding to `NoBsWs` reconnect logic 2026-02-04 20:09:35 -05:00
feed.py .data.feed: move `Flume` import to avoid cycle 2026-02-04 19:31:33 -05:00
flows.py Teensie `piker.data` styling tweaks 2026-01-06 19:33:23 -05:00
ingest.py Add subsys log to new `.data._util` 2023-05-09 14:49:26 -04:00
ticktools.py .data.ticktools: add reverse flag, better docs 2023-06-27 15:47:05 -04:00
validate.py Teensie `piker.data` styling tweaks 2026-01-06 19:33:23 -05:00