forked from goodboy/tractor
In order to match a very significant and coming-soon patch set to the
IPC `Context` and `Channel` cancellation semantics with significant but
subtle changes to the primitives and runtime logic:
- a new set of `Context` state pub meth APIs for checking exact
inter-actor-linked-task outcomes such as `.outcome`, `.maybe_error`,
and `.cancel_acked`.
- trying to move away from `Context.cancelled_caught` usage since the
semantics from `trio` don't really map well (in terms of cancel
requests and how they result in cancel-scope graceful closure) and
`.cancel_acked: bool` is a better approach for IPC req-resp msging.
- change test usage to access `._scope.cancelled_caught` directly.
- more pedantic ctxc-raising expects around the "type of self
cancellation" and final outcome in ctxc cases:
- `ContextCancelled` is raised by ctx (`Context.result()`) consumer
methods when `Portal.cancel_actor()` is called (since it's an
out-of-band request) despite `Channel._cancel_called` being set.
- also raised by `.open_context().__aexit__()` on close.
- `.outcome` is always `.maybe_error` is always one of
`._local/remote_error`.
|
||
|---|---|---|
| .. | ||
| conftest.py | ||
| test_2way.py | ||
| test_advanced_faults.py | ||
| test_advanced_streaming.py | ||
| test_cancellation.py | ||
| test_child_manages_service_nursery.py | ||
| test_clustering.py | ||
| test_context_stream_semantics.py | ||
| test_debugger.py | ||
| test_discovery.py | ||
| test_docs_examples.py | ||
| test_infected_asyncio.py | ||
| test_inter_peer_cancellation.py | ||
| test_legacy_one_way_streaming.py | ||
| test_local.py | ||
| test_multi_program.py | ||
| test_pubsub.py | ||
| test_resource_cache.py | ||
| test_rpc.py | ||
| test_runtime.py | ||
| test_shm.py | ||
| test_spawning.py | ||
| test_task_broadcasting.py | ||
| test_trioisms.py | ||