Check for valid python implementation
I'm thinking yaq-traits assert-python <entrypoint>
The only think I'm really looking for is that it has all of the methods that the protocol declares.
simple implementation:
import entrypoints
def assert_python(entrypoint):
cls = entrypoints.get_group_named("console_scripts")[entrypoint].__self__
for msg in cls._avro_protocol["messages"]:
assert hasattr(cls, msg)
this of course is specific to python implemented daemons, but serves as a reference that the daemon is implemented according to what it claims
A more advanced version of this could check type hints against the request/response fields of the protocol, but that gets complicated (and type hints are not at all required)