tractor/tractor/msg
Tyler Goodlet 28e32b8f85 Use `enable_transports: list[str]` parameter
Actually applying the input it in the root as well as all sub-actors by
passing it down to sub-actors through runtime-vars as delivered by the
initial `SpawnSpec` msg during child runtime init.

Impl deats,
- add a new `_state._runtime_vars['_enable_tpts']: list[str]` field set
  by the input param (if provided) to `.open_root_actor()`.
- mk `current_ipc_protos()` return the runtime-var entry with instead
  the default in the `_runtime_vars: dict` set to `[_def_tpt_proto]`.
- in `.open_root_actor()`, still error on this being a >1 `list[str]`
  until we have more testing infra/suites to audit multi-protos per
  actor.
- return the new value (as 3rd element) from `Actor._from_parent()` as
  per the todo note; means `_runtime.async_main()` will allocate
  `accept_addrs` as tpt-specific `Address` entries and pass them to
  `IPCServer.listen_on()`.

Also,
- also add a new `_state._runtime_vars['_root_addrs']: list = []` field
  with the intent of fully replacing the `'_root_mailbox'` field since,
  * it will need to be a collection to support multi-tpt,
  * it's a more cohesive field name alongside `_registry_addrs`,
  * the root actor of every tree needs to have a dedicated addr set
    (separate from any host-singleton registry actor) so that all its
    subs can contact it for capabilities mgmt including debugger
    access/locking.
- in the root, populate the field in `._runtime.async_main()` and for
  now just set '_root_mailbox' to the first entry in that list in
  anticipation of future multi-homing/transport support.
2025-07-10 18:12:28 -04:00
..
__init__.py Finally get type-extended `msgspec` fields workinn 2025-03-27 15:58:02 -04:00
_codec.py Tweak type-error messages for when `ext_types` is missing 2025-03-27 15:58:02 -04:00
_exts.py Offer a `mods: list` to `dec_type_union()`; drop importing this-mod 2025-03-27 15:58:02 -04:00
_ops.py Slight `PldRx` rework to simplify 2025-03-27 15:58:03 -04:00
pretty_struct.py Draft a (pretty)`Struct.fields_diff()` 2025-03-27 13:24:25 -04:00
ptr.py `NamespacePath._mk_fqnp()` handle `__mod__` for methods 2025-03-24 14:04:51 -04:00
types.py Use `enable_transports: list[str]` parameter 2025-07-10 18:12:28 -04:00