Compare commits
No commits in common. "84a888f38130f2a38430cbfb99f5200d8eb6141a" and "e904af679ba74e3bc4de187cdbbbb20ecd735b21" have entirely different histories.
84a888f381
...
e904af679b
|
@ -46,7 +46,6 @@ dependencies = [
|
||||||
# typed IPC msging
|
# typed IPC msging
|
||||||
"msgspec>=0.19.0",
|
"msgspec>=0.19.0",
|
||||||
"cffi>=1.17.1",
|
"cffi>=1.17.1",
|
||||||
"bidict>=0.23.1",
|
|
||||||
]
|
]
|
||||||
|
|
||||||
# ------ project ------
|
# ------ project ------
|
||||||
|
|
|
@ -50,8 +50,8 @@ if __name__ == "__main__":
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
|
|
||||||
subactor = Actor(
|
subactor = Actor(
|
||||||
name=args.uid[0],
|
args.uid[0],
|
||||||
uuid=args.uid[1],
|
uid=args.uid[1],
|
||||||
loglevel=args.loglevel,
|
loglevel=args.loglevel,
|
||||||
spawn_method="trio"
|
spawn_method="trio"
|
||||||
)
|
)
|
||||||
|
|
|
@ -107,10 +107,6 @@ class Portal:
|
||||||
# point.
|
# point.
|
||||||
self._expect_result_ctx: Context|None = None
|
self._expect_result_ctx: Context|None = None
|
||||||
self._streams: set[MsgStream] = set()
|
self._streams: set[MsgStream] = set()
|
||||||
|
|
||||||
# TODO, this should be PRIVATE (and never used publicly)! since it's just
|
|
||||||
# a cached ref to the local runtime instead of calling
|
|
||||||
# `current_actor()` everywhere.. XD
|
|
||||||
self.actor: Actor = current_actor()
|
self.actor: Actor = current_actor()
|
||||||
|
|
||||||
@property
|
@property
|
||||||
|
@ -508,12 +504,8 @@ class LocalPortal:
|
||||||
return it's result.
|
return it's result.
|
||||||
|
|
||||||
'''
|
'''
|
||||||
obj = (
|
obj = self.actor if ns == 'self' else importlib.import_module(ns)
|
||||||
self.actor
|
func = getattr(obj, func_name)
|
||||||
if ns == 'self'
|
|
||||||
else importlib.import_module(ns)
|
|
||||||
)
|
|
||||||
func: Callable = getattr(obj, func_name)
|
|
||||||
return await func(**kwargs)
|
return await func(**kwargs)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -595,17 +595,8 @@ class MsgStream(trio.abc.Channel):
|
||||||
trio.ClosedResourceError,
|
trio.ClosedResourceError,
|
||||||
trio.BrokenResourceError,
|
trio.BrokenResourceError,
|
||||||
BrokenPipeError,
|
BrokenPipeError,
|
||||||
) as _trans_err:
|
) as trans_err:
|
||||||
trans_err = _trans_err
|
if hide_tb:
|
||||||
if (
|
|
||||||
hide_tb
|
|
||||||
and
|
|
||||||
self._ctx.chan._exc is trans_err
|
|
||||||
# ^XXX, IOW, only if the channel is marked errored
|
|
||||||
# for the same reason as whatever its underlying
|
|
||||||
# transport raised, do we keep the full low-level tb
|
|
||||||
# suppressed from the user.
|
|
||||||
):
|
|
||||||
raise type(trans_err)(
|
raise type(trans_err)(
|
||||||
*trans_err.args
|
*trans_err.args
|
||||||
) from trans_err
|
) from trans_err
|
||||||
|
|
|
@ -478,6 +478,7 @@ async def attach_to_ringbuf_stream(
|
||||||
yield trio.StapledStream(sender, receiver)
|
yield trio.StapledStream(sender, receiver)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class RingBuffBytesSender(trio.abc.SendChannel[bytes]):
|
class RingBuffBytesSender(trio.abc.SendChannel[bytes]):
|
||||||
'''
|
'''
|
||||||
In order to guarantee full messages are received, all bytes
|
In order to guarantee full messages are received, all bytes
|
||||||
|
@ -521,6 +522,7 @@ class RingBuffBytesSender(trio.abc.SendChannel[bytes]):
|
||||||
if self._batch_msg_len == self.batch_size:
|
if self._batch_msg_len == self.batch_size:
|
||||||
await self.flush()
|
await self.flush()
|
||||||
|
|
||||||
|
|
||||||
async def aclose(self) -> None:
|
async def aclose(self) -> None:
|
||||||
await self._sender.aclose()
|
await self._sender.aclose()
|
||||||
|
|
||||||
|
|
|
@ -50,10 +50,7 @@ if _USE_POSIX:
|
||||||
try:
|
try:
|
||||||
import numpy as np
|
import numpy as np
|
||||||
from numpy.lib import recfunctions as rfn
|
from numpy.lib import recfunctions as rfn
|
||||||
# TODO ruff complains with,
|
import nptyping
|
||||||
# warning| F401: `nptyping` imported but unused; consider using
|
|
||||||
# `importlib.util.find_spec` to test for availability
|
|
||||||
import nptyping # noqa
|
|
||||||
except ImportError:
|
except ImportError:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
|
@ -157,10 +157,7 @@ class MsgpackTransport(MsgTransport):
|
||||||
|
|
||||||
) -> None:
|
) -> None:
|
||||||
self.stream = stream
|
self.stream = stream
|
||||||
(
|
self._laddr, self._raddr = self.get_stream_addrs(stream)
|
||||||
self._laddr,
|
|
||||||
self._raddr,
|
|
||||||
) = self.get_stream_addrs(stream)
|
|
||||||
|
|
||||||
# create read loop instance
|
# create read loop instance
|
||||||
self._aiter_pkts = self._iter_packets()
|
self._aiter_pkts = self._iter_packets()
|
||||||
|
|
|
@ -76,7 +76,7 @@ def transport_from_stream(
|
||||||
'''
|
'''
|
||||||
transport = None
|
transport = None
|
||||||
if isinstance(stream, trio.SocketStream):
|
if isinstance(stream, trio.SocketStream):
|
||||||
sock: socket.socket = stream.socket
|
sock = stream.socket
|
||||||
match sock.family:
|
match sock.family:
|
||||||
case socket.AF_INET | socket.AF_INET6:
|
case socket.AF_INET | socket.AF_INET6:
|
||||||
transport = 'tcp'
|
transport = 'tcp'
|
||||||
|
|
11
uv.lock
11
uv.lock
|
@ -11,15 +11,6 @@ wheels = [
|
||||||
{ url = "https://files.pythonhosted.org/packages/89/aa/ab0f7891a01eeb2d2e338ae8fecbe57fcebea1a24dbb64d45801bfab481d/attrs-24.3.0-py3-none-any.whl", hash = "sha256:ac96cd038792094f438ad1f6ff80837353805ac950cd2aa0e0625ef19850c308", size = 63397 },
|
{ url = "https://files.pythonhosted.org/packages/89/aa/ab0f7891a01eeb2d2e338ae8fecbe57fcebea1a24dbb64d45801bfab481d/attrs-24.3.0-py3-none-any.whl", hash = "sha256:ac96cd038792094f438ad1f6ff80837353805ac950cd2aa0e0625ef19850c308", size = 63397 },
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "bidict"
|
|
||||||
version = "0.23.1"
|
|
||||||
source = { registry = "https://pypi.org/simple" }
|
|
||||||
sdist = { url = "https://files.pythonhosted.org/packages/9a/6e/026678aa5a830e07cd9498a05d3e7e650a4f56a42f267a53d22bcda1bdc9/bidict-0.23.1.tar.gz", hash = "sha256:03069d763bc387bbd20e7d49914e75fc4132a41937fa3405417e1a5a2d006d71", size = 29093 }
|
|
||||||
wheels = [
|
|
||||||
{ url = "https://files.pythonhosted.org/packages/99/37/e8730c3587a65eb5645d4aba2d27aae48e8003614d6aaf15dda67f702f1f/bidict-0.23.1-py3-none-any.whl", hash = "sha256:5dae8d4d79b552a71cbabc7deb25dfe8ce710b17ff41711e13010ead2abfc3e5", size = 32764 },
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "cffi"
|
name = "cffi"
|
||||||
version = "1.17.1"
|
version = "1.17.1"
|
||||||
|
@ -358,7 +349,6 @@ name = "tractor"
|
||||||
version = "0.1.0a6.dev0"
|
version = "0.1.0a6.dev0"
|
||||||
source = { editable = "." }
|
source = { editable = "." }
|
||||||
dependencies = [
|
dependencies = [
|
||||||
{ name = "bidict" },
|
|
||||||
{ name = "cffi" },
|
{ name = "cffi" },
|
||||||
{ name = "colorlog" },
|
{ name = "colorlog" },
|
||||||
{ name = "msgspec" },
|
{ name = "msgspec" },
|
||||||
|
@ -381,7 +371,6 @@ dev = [
|
||||||
|
|
||||||
[package.metadata]
|
[package.metadata]
|
||||||
requires-dist = [
|
requires-dist = [
|
||||||
{ name = "bidict", specifier = ">=0.23.1" },
|
|
||||||
{ name = "cffi", specifier = ">=1.17.1" },
|
{ name = "cffi", specifier = ">=1.17.1" },
|
||||||
{ name = "colorlog", specifier = ">=6.8.2,<7" },
|
{ name = "colorlog", specifier = ">=6.8.2,<7" },
|
||||||
{ name = "msgspec", specifier = ">=0.19.0" },
|
{ name = "msgspec", specifier = ">=0.19.0" },
|
||||||
|
|
Loading…
Reference in New Issue