tractor/tractor
Gud Boi bed975ffbc Harden `TIPC` socket setup races
Reject TIPC availability outside Linux before probing the fallback
socket-family integer, which can alias an unrelated family on
another OS.

Keep dialled sockets under setup ownership through transport
construction, then reuse the constructor's tolerant peer
observation. A peer withdrawing after `.connect()` can no longer
trigger a second raw `getpeername()` or leak setup resources.

Review: PR #493 (copilot-pull-request-reviewer[bot],goodboy)
https://github.com/goodboy/tractor/pull/493

(this patch was generated in some part by `opencode` using
`gpt-5.6-sol` (`openai`))
2026-08-29 23:00:35 -04:00
..
_testing Register `tipc` in the tpt tables + test harness 2026-08-29 22:58:46 -04:00
devx Fix `pformat_caller_frame()`s bogus `indent` kwarg 2026-08-18 20:13:07 -04:00
discovery Tighten `TIPC` address-shape dispatch 2026-08-29 23:00:35 -04:00
experimental Reap the `@pub` example daemon on stream exit 2026-08-25 20:03:18 -04:00
ipc Harden `TIPC` socket setup races 2026-08-29 23:00:35 -04:00
msg Widen `UnwrappedAddress` to admit proto-keyed addrs 2026-08-29 22:55:38 -04:00
runtime Register `tipc` in the tpt tables + test harness 2026-08-29 22:58:46 -04:00
spawn Remove `run_in_actor()` + the ria reap cluster 2026-08-25 19:16:32 -04:00
to_actor Remove `run_in_actor()` + the ria reap cluster 2026-08-25 19:16:32 -04:00
trionics Reject concurrent `BroadcastReceiver.receive()` calls 2026-08-27 22:11:55 -04:00
__init__.py Add `tractor.to_actor` one-shot task API subpkg 2026-08-21 15:03:34 -04:00
_child.py Add per-actor `setproctitle` via `devx._proctitle` 2026-06-17 17:39:44 -04:00
_clustering.py Use `.aid.uid` to avoid deprecation warns 2026-03-13 21:10:52 -04:00
_code_load.py Mv `load_module_from_path()` to a new `._code_load` submod 2026-02-11 21:03:29 -05:00
_context.py Remove `run_in_actor()` + the ria reap cluster 2026-08-25 19:16:32 -04:00
_exceptions.py Remove `run_in_actor()` + the ria reap cluster 2026-08-25 19:16:32 -04:00
_root.py Move registrar probes to `discovery._api` 2026-08-14 18:43:36 -04:00
_streaming.py Clean broadcast cancellation diagnostics 2026-08-27 21:18:00 -04:00
log.py Retain dynamic logger caller discovery 2026-08-12 20:52:47 -04:00
to_asyncio.py Clean broadcast cancellation diagnostics 2026-08-27 21:18:00 -04:00