├── .gitignore ├── .travis.yml ├── LICENSE ├── README.rst ├── docs ├── Makefile ├── conf.py ├── converters.rst ├── index.rst └── message_format.rst ├── examples ├── aiohttp │ ├── client.py │ ├── hello.py │ └── server.py ├── api-gateway │ ├── __init__.py │ ├── gateway.py │ └── stubs │ │ ├── __init__.py │ │ └── hello.py └── grpc │ ├── client.py │ ├── hello.py │ └── server.py ├── setup.cfg ├── setup.py ├── tests ├── __init__.py ├── common │ ├── __init__.py │ └── test_converters.py ├── protocol │ ├── __init__.py │ ├── test_json_protocol.py │ └── test_uri_string_transcoder.py ├── rpc │ ├── __init__.py │ ├── comms │ │ ├── __init__.py │ │ ├── test_aiohttp_client.py │ │ └── test_aiohttp_server.py │ ├── data │ │ └── openapi_simple.json │ ├── test_inspection.py │ ├── test_method.py │ ├── test_openapi.py │ ├── test_reflect_service.py │ ├── test_service.py │ ├── test_service_proxy.py │ └── test_stub.py ├── test_fields.py ├── test_message.py └── test_validation.py └── venom ├── __init__.py ├── common ├── __init__.py ├── converters.py ├── fields.py ├── messages.py └── types.py ├── converter.py ├── exceptions.py ├── fields.py ├── message.py ├── protocol ├── __init__.py ├── protocol.py └── transcode.py ├── rpc ├── __init__.py ├── comms │ ├── __init__.py │ ├── aiohttp.py │ └── grpc.py ├── context.py ├── inspection.py ├── method.py ├── proxy.py ├── reflect │ ├── __init__.py │ ├── openapi.py │ ├── reflect.py │ ├── service.py │ └── stubs.py ├── resolver.py ├── service.py ├── stub.py └── test_utils │ └── __init__.py ├── util.py └── validation ├── __init__.py ├── _validators.py └── schema.py /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/.travis.yml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/LICENSE -------------------------------------------------------------------------------- /README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/README.rst -------------------------------------------------------------------------------- /docs/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/docs/Makefile -------------------------------------------------------------------------------- /docs/conf.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/docs/conf.py -------------------------------------------------------------------------------- /docs/converters.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/docs/converters.rst -------------------------------------------------------------------------------- /docs/index.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/docs/index.rst -------------------------------------------------------------------------------- /docs/message_format.rst: -------------------------------------------------------------------------------- 1 | 2 | Todo proper name -------------------------------------------------------------------------------- /examples/aiohttp/client.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/examples/aiohttp/client.py -------------------------------------------------------------------------------- /examples/aiohttp/hello.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/examples/aiohttp/hello.py -------------------------------------------------------------------------------- /examples/aiohttp/server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/examples/aiohttp/server.py -------------------------------------------------------------------------------- /examples/api-gateway/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /examples/api-gateway/gateway.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/examples/api-gateway/gateway.py -------------------------------------------------------------------------------- /examples/api-gateway/stubs/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/api-gateway/stubs/hello.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/examples/api-gateway/stubs/hello.py -------------------------------------------------------------------------------- /examples/grpc/client.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/examples/grpc/client.py -------------------------------------------------------------------------------- /examples/grpc/hello.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/examples/grpc/hello.py -------------------------------------------------------------------------------- /examples/grpc/server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/examples/grpc/server.py -------------------------------------------------------------------------------- /setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/setup.cfg -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/setup.py -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/common/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/common/test_converters.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/common/test_converters.py -------------------------------------------------------------------------------- /tests/protocol/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/protocol/test_json_protocol.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/protocol/test_json_protocol.py -------------------------------------------------------------------------------- /tests/protocol/test_uri_string_transcoder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/protocol/test_uri_string_transcoder.py -------------------------------------------------------------------------------- /tests/rpc/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/rpc/comms/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/rpc/comms/test_aiohttp_client.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/rpc/comms/test_aiohttp_client.py -------------------------------------------------------------------------------- /tests/rpc/comms/test_aiohttp_server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/rpc/comms/test_aiohttp_server.py -------------------------------------------------------------------------------- /tests/rpc/data/openapi_simple.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/rpc/data/openapi_simple.json -------------------------------------------------------------------------------- /tests/rpc/test_inspection.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/rpc/test_inspection.py -------------------------------------------------------------------------------- /tests/rpc/test_method.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/rpc/test_method.py -------------------------------------------------------------------------------- /tests/rpc/test_openapi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/rpc/test_openapi.py -------------------------------------------------------------------------------- /tests/rpc/test_reflect_service.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/rpc/test_reflect_service.py -------------------------------------------------------------------------------- /tests/rpc/test_service.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/rpc/test_service.py -------------------------------------------------------------------------------- /tests/rpc/test_service_proxy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/rpc/test_service_proxy.py -------------------------------------------------------------------------------- /tests/rpc/test_stub.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/rpc/test_stub.py -------------------------------------------------------------------------------- /tests/test_fields.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/test_fields.py -------------------------------------------------------------------------------- /tests/test_message.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/test_message.py -------------------------------------------------------------------------------- /tests/test_validation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/tests/test_validation.py -------------------------------------------------------------------------------- /venom/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/__init__.py -------------------------------------------------------------------------------- /venom/common/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/common/__init__.py -------------------------------------------------------------------------------- /venom/common/converters.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/common/converters.py -------------------------------------------------------------------------------- /venom/common/fields.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/common/fields.py -------------------------------------------------------------------------------- /venom/common/messages.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/common/messages.py -------------------------------------------------------------------------------- /venom/common/types.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/common/types.py -------------------------------------------------------------------------------- /venom/converter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/converter.py -------------------------------------------------------------------------------- /venom/exceptions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/exceptions.py -------------------------------------------------------------------------------- /venom/fields.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/fields.py -------------------------------------------------------------------------------- /venom/message.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/message.py -------------------------------------------------------------------------------- /venom/protocol/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/protocol/__init__.py -------------------------------------------------------------------------------- /venom/protocol/protocol.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/protocol/protocol.py -------------------------------------------------------------------------------- /venom/protocol/transcode.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/protocol/transcode.py -------------------------------------------------------------------------------- /venom/rpc/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/__init__.py -------------------------------------------------------------------------------- /venom/rpc/comms/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/comms/__init__.py -------------------------------------------------------------------------------- /venom/rpc/comms/aiohttp.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/comms/aiohttp.py -------------------------------------------------------------------------------- /venom/rpc/comms/grpc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/comms/grpc.py -------------------------------------------------------------------------------- /venom/rpc/context.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/context.py -------------------------------------------------------------------------------- /venom/rpc/inspection.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/inspection.py -------------------------------------------------------------------------------- /venom/rpc/method.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/method.py -------------------------------------------------------------------------------- /venom/rpc/proxy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/proxy.py -------------------------------------------------------------------------------- /venom/rpc/reflect/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /venom/rpc/reflect/openapi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/reflect/openapi.py -------------------------------------------------------------------------------- /venom/rpc/reflect/reflect.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/reflect/reflect.py -------------------------------------------------------------------------------- /venom/rpc/reflect/service.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/reflect/service.py -------------------------------------------------------------------------------- /venom/rpc/reflect/stubs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/reflect/stubs.py -------------------------------------------------------------------------------- /venom/rpc/resolver.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/resolver.py -------------------------------------------------------------------------------- /venom/rpc/service.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/service.py -------------------------------------------------------------------------------- /venom/rpc/stub.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/stub.py -------------------------------------------------------------------------------- /venom/rpc/test_utils/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/rpc/test_utils/__init__.py -------------------------------------------------------------------------------- /venom/util.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/util.py -------------------------------------------------------------------------------- /venom/validation/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/validation/__init__.py -------------------------------------------------------------------------------- /venom/validation/_validators.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/validation/_validators.py -------------------------------------------------------------------------------- /venom/validation/schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biosustain/venom/HEAD/venom/validation/schema.py --------------------------------------------------------------------------------